From a9cb4d8dac492530854ae273fb9df0cb7ce2ce34 Mon Sep 17 00:00:00 2001 From: "mac.homelab" Date: Tue, 28 Jan 2025 10:20:55 -0500 Subject: [PATCH] updated sasjslint-schema --- sasjslint-schema.json | 31 +++++++++++++++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) diff --git a/sasjslint-schema.json b/sasjslint-schema.json index 1deed47..954ea18 100644 --- a/sasjslint-schema.json +++ b/sasjslint-schema.json @@ -22,7 +22,9 @@ "noTrailingSpaces": true, "lineEndings": "off", "strictMacroDefinition": true, - "ignoreList": ["sajsbuild", "sasjsresults"] + "ignoreList": ["sajsbuild", "sasjsresults"], + "hasRequiredMacroOptions": false, + "requiredMacroOptions": [] }, "examples": [ { @@ -43,7 +45,9 @@ "hasMacroParentheses": true, "lineEndings": "crlf", "strictMacroDefinition": true, - "ignoreList": ["sajsbuild", "sasjsresults"] + "ignoreList": ["sajsbuild", "sasjsresults"], + "hasRequiredMacroOptions": false, + "requiredMacroOptions": [] } ], "properties": { @@ -204,6 +208,22 @@ "default": ["sasjsbuild/", "sasjsresults/"], "examples": ["sasjs/tests", "tmp/scratch.sas"] }, + "hasRequiredMacroOptions": { + "$id": "#/properties/hasRequiredMacroOptions", + "type": "boolean", + "title": "hasRequiredMacroOptions", + "description": "Enforces required macro options as defined by requiredMacroOptions", + "default": false, + "examples": [true, false] + }, + "requiredMacroOptions": { + "$id": "#/properties/requiredMacroOptions", + "type": "array", + "title": "requiredMacroOptions", + "description": "An array of macro options to require all macros to include.", + "default": [], + "examples": ["['SECURE']", "['SRC', 'STMT']"] + }, "severityLevel": { "$id": "#/properties/severityLevel", "type": "object", @@ -320,6 +340,13 @@ "type": "string", "enum": ["error", "warn"], "default": "warn" + }, + "hasRequiredMacroOptions": { + "$id": "#/properties/severityLevel/hasRequiredMacroOptions", + "title": "hasRequiredMacroOptions", + "type": "string", + "enum": ["error", "warn"], + "default": "warn" } } }