diff options
Diffstat (limited to 'ext')
-rw-r--r-- | ext/js/data/json-schema.js | 18 | ||||
-rw-r--r-- | ext/js/display/display-generator.js | 21 | ||||
-rw-r--r-- | ext/js/general/object-property-accessor.js | 41 |
3 files changed, 50 insertions, 30 deletions
diff --git a/ext/js/data/json-schema.js b/ext/js/data/json-schema.js index 08414164..ee58976e 100644 --- a/ext/js/data/json-schema.js +++ b/ext/js/data/json-schema.js @@ -1343,12 +1343,18 @@ class JsonSchemaProxyHandler { * @returns {?number} */ _getArrayIndex(property) { - if (typeof property === 'string' && this._numberPattern.test(property)) { - return Number.parseInt(property, 10); - } else if (typeof property === 'number' && Math.floor(property) === property && property >= 0) { - return property; - } else { - return null; + switch (typeof property) { + case 'string': + if (this._numberPattern.test(property)) { + return Number.parseInt(property, 10); + } + break; + case 'number': + if (Math.floor(property) === property && property >= 0) { + return property; + } + break; } + return null; } } diff --git a/ext/js/display/display-generator.js b/ext/js/display/display-generator.js index 920d2c94..b91d0ce9 100644 --- a/ext/js/display/display-generator.js +++ b/ext/js/display/display-generator.js @@ -401,14 +401,19 @@ export class DisplayGenerator { * @returns {?HTMLElement} */ _createTermDefinitionEntry(entry, dictionary) { - if (typeof entry === 'string') { - return this._createTermDefinitionEntryText(entry); - } else if (typeof entry === 'object' && entry !== null) { - switch (entry.type) { - case 'image': - return this._createTermDefinitionEntryImage(entry, dictionary); - case 'structured-content': - return this._createTermDefinitionEntryStructuredContent(entry.content, dictionary); + switch (typeof entry) { + case 'string': + return this._createTermDefinitionEntryText(entry); + case 'object': { + switch (entry.type) { + case 'image': + return this._createTermDefinitionEntryImage(entry, dictionary); + case 'structured-content': + return this._createTermDefinitionEntryStructuredContent(entry.content, dictionary); + case 'text': + break; + } + break; } } diff --git a/ext/js/general/object-property-accessor.js b/ext/js/general/object-property-accessor.js index d818c9d1..b8d6ddc5 100644 --- a/ext/js/general/object-property-accessor.js +++ b/ext/js/general/object-property-accessor.js @@ -207,16 +207,21 @@ export class ObjectPropertyAccessor { v === 0x5f // '_' ) { value += c; - } else if (v === 0x5b) { // '[' - pathArray.push(value); - value = ''; - state = 'open-bracket'; - } else if (v === 0x2e) { // '.' - pathArray.push(value); - value = ''; - state = 'id-start'; } else { - throw new Error(`Unexpected character: ${c}`); + switch (v) { + case 0x5b: // '[' + pathArray.push(value); + value = ''; + state = 'open-bracket'; + break; + case 0x2e: // '.' + pathArray.push(value); + value = ''; + state = 'id-start'; + break; + default: + throw new Error(`Unexpected character: ${c}`); + } } break; case 'open-bracket': // Open bracket @@ -262,15 +267,19 @@ export class ObjectPropertyAccessor { throw new Error(`Unexpected character: ${c}`); } break; - case 'next': // Expecting . or [ - if (v === 0x5b) { // '[' - state = 'open-bracket'; - } else if (v === 0x2e) { // '.' - state = 'id-start'; - } else { - throw new Error(`Unexpected character: ${c}`); + case 'next': { // Expecting . or [ + switch (v) { + case 0x5b: // '[' + state = 'open-bracket'; + break; + case 0x2e: // '.' + state = 'id-start'; + break; + default: + throw new Error(`Unexpected character: ${c}`); } break; + } } } switch (state) { |