From 73169f06dff767020718a5715eba97d3575ba7e1 Mon Sep 17 00:00:00 2001 From: toasted-nutbread Date: Sat, 24 Feb 2024 23:47:57 -0500 Subject: Turn on @typescript-eslint/no-unsafe-argument (#728) --- ext/js/data/options-util.js | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'ext/js/data/options-util.js') diff --git a/ext/js/data/options-util.js b/ext/js/data/options-util.js index 8ef52972..de30f52a 100644 --- a/ext/js/data/options-util.js +++ b/ext/js/data/options-util.js @@ -22,6 +22,11 @@ import {escapeRegExp, isObject} from '../core/utilities.js'; import {TemplatePatcher} from '../templates/template-patcher.js'; import {JsonSchema} from './json-schema.js'; +// Some type safety rules are disabled for this file since it deals with upgrading an older format +// of the options object to a newer format. SafeAny is used for much of this, since every single +// legacy format does not contain type definitions. +/* eslint-disable @typescript-eslint/no-unsafe-argument */ + export class OptionsUtil { constructor() { /** @type {?TemplatePatcher} */ @@ -119,6 +124,9 @@ export class OptionsUtil { } }); }); + if (typeof optionsStr !== 'string') { + throw new Error('Invalid value for options'); + } options = parseJson(optionsStr); } catch (e) { // NOP @@ -1197,3 +1205,5 @@ export class OptionsUtil { }); } } + +/* eslint-enable @typescript-eslint/no-unsafe-argument */ -- cgit v1.2.3