diff --git a/assets/resources/scriptlets.js b/assets/resources/scriptlets.js index 425e11be6..ea9945b0e 100644 --- a/assets/resources/scriptlets.js +++ b/assets/resources/scriptlets.js @@ -130,18 +130,13 @@ builtinScriptlets.push({ }); function runAt(fn, when) { const intFromReadyState = state => { - const targets = { - 'loading': 1, - 'interactive': 2, 'end': 2, '2': 2, - 'complete': 3, 'idle': 3, '3': 3, - }; - const tokens = Array.isArray(state) ? state : [ state ]; - for ( const token of tokens ) { - const prop = `${token}`; - if ( targets.hasOwnProperty(prop) === false ) { continue; } - return targets[prop]; - } - return 0; + return ({ + loading: 1, + interactive: 2, + end: 2, + complete: 3, + idle: 3, + })[`${state}`] || 0; }; const runAt = intFromReadyState(when); if ( intFromReadyState(document.readyState) >= runAt ) { @@ -1035,22 +1030,14 @@ builtinScriptlets.push({ function setConstant( arg1 = '', arg2 = '', - arg3 = '' + arg3 = 0 ) { const details = typeof arg1 !== 'object' - ? { prop: arg1, value: arg2 } + ? { prop: arg1, value: arg2, runAt: parseInt(arg3, 10) || 0 } : arg1; - if ( arg3 !== '' ) { - if ( /^\d$/.test(arg3) ) { - details.options = [ arg3 ]; - } else { - details.options = Array.from(arguments).slice(2); - } - } const { prop: chain = '', value: cValue = '' } = details; if ( typeof chain !== 'string' ) { return; } if ( chain === '' ) { return; } - const options = details.options || []; function setConstant(chain, cValue) { const trappedProp = (( ) => { const pos = chain.lastIndexOf('.'); @@ -1106,20 +1093,13 @@ function setConstant( cValue = cloakFunc(function(){ return true; }); } else if ( cValue === 'falseFunc' ) { cValue = cloakFunc(function(){ return false; }); - } else if ( /^-?\d+$/.test(cValue) ) { - cValue = parseInt(cValue); + } else if ( /^\d+$/.test(cValue) ) { + cValue = parseFloat(cValue); if ( isNaN(cValue) ) { return; } if ( Math.abs(cValue) > 0x7FFF ) { return; } } else { return; } - if ( options.includes('asCallback') ) { - cValue = ( ) => cValue; - } else if ( options.includes('asResolve') ) { - cValue = Promise.resolve(cValue); - } else if ( options.includes('asReject') ) { - cValue = Promise.reject(cValue); - } let aborted = false; const mustAbort = function(v) { if ( aborted ) { return true; } @@ -1213,7 +1193,7 @@ function setConstant( } runAt(( ) => { setConstant(chain, cValue); - }, options); + }, details.runAt); } /******************************************************************************/ diff --git a/src/js/3p-filters.js b/src/js/3p-filters.js index 682a83c8d..ee2856d39 100644 --- a/src/js/3p-filters.js +++ b/src/js/3p-filters.js @@ -182,12 +182,6 @@ const renderFilterLists = ( ) => { } for ( const [ listkey, listDetails ] of treeEntries ) { const listEntry = createListEntry(listDetails, depth); - if ( dom.cl.has(dom.root, 'mobile') ) { - const leafStats = qs$(listEntry, '.leafstats'); - if ( leafStats ) { - listEntry.append(leafStats); - } - } listEntry.dataset.key = listkey; listEntry.dataset.parent = parentkey; dom.text(qs$(listEntry, '.listname'), listDetails.title);