@@ -17,10 +17,10 @@ const ERROR_UX = {
17
17
//#endregion
18
18
//#region utils
19
19
/**
20
- * @typedef { NonNullable<NonNullable<(Awaited<ReturnType<import('@socketsecurity/sdk').SocketSdk['postSettings']>> & {success: true})['data']['entries'][number]['settings'][string]['issueRules']>>[string] | boolean } NonNormalizedIssueRule
20
+ * @typedef { NonNullable<NonNullable<NonNullable< (Awaited<ReturnType<import('@socketsecurity/sdk').SocketSdk['postSettings']>> & {success: true})['data']['entries'][number]['settings'][string]> ['issueRules']>>[string] | boolean } NonNormalizedIssueRule
21
21
*/
22
22
/**
23
- * @typedef { NonNullable<NonNullable<(Awaited<ReturnType<import('@socketsecurity/sdk').SocketSdk['postSettings']>> & {success: true})['data']['defaults']['issueRules']>[string]> | boolean } NonNormalizedResolvedIssueRule
23
+ * @typedef { ( NonNullable<NonNullable<(Awaited<ReturnType<import('@socketsecurity/sdk').SocketSdk['postSettings']>> & {success: true})['data']['defaults']['issueRules']>[string]> & { action: string }) | boolean } NonNormalizedResolvedIssueRule
24
24
*/
25
25
/**
26
26
* Iterates over all entries with ordered issue rule for deferal
@@ -32,6 +32,15 @@ const ERROR_UX = {
32
32
* @returns {RuleActionUX }
33
33
*/
34
34
function resolveIssueRuleUX ( entriesOrderedIssueRules , defaultValue ) {
35
+ if ( defaultValue === true || defaultValue == null ) {
36
+ defaultValue = {
37
+ action : 'error'
38
+ }
39
+ } else if ( defaultValue === false ) {
40
+ defaultValue = {
41
+ action : 'ignore'
42
+ }
43
+ }
35
44
let block = false
36
45
let display = false
37
46
let needDefault = true
@@ -145,7 +154,24 @@ module.exports = {
145
154
entriesOrderedIssueRules . push ( orderedIssueRules )
146
155
}
147
156
const defaultValue = settings . defaults . issueRules [ key ]
148
- ux = resolveIssueRuleUX ( entriesOrderedIssueRules , defaultValue ?? { action : 'error' } )
157
+ /**
158
+ * @type {NonNormalizedResolvedIssueRule }
159
+ */
160
+ let resolvedDefaultValue = {
161
+ action : 'error'
162
+ }
163
+ // @ts -ignore backcompat, cover with tests
164
+ if ( defaultValue === false ) {
165
+ resolvedDefaultValue = {
166
+ action : 'ignore'
167
+ }
168
+ // @ts -ignore backcompat, cover with tests
169
+ } else if ( defaultValue && defaultValue !== true ) {
170
+ resolvedDefaultValue = {
171
+ action : defaultValue . action ?? 'error'
172
+ }
173
+ }
174
+ ux = resolveIssueRuleUX ( entriesOrderedIssueRules , resolvedDefaultValue )
149
175
cachedUX . set ( key , ux )
150
176
return ux
151
177
}
0 commit comments