EmbyCrackedClient/web/modules/css-vars-ponyfill/css-vars-ponyfill.js

1 line
23 KiB
JavaScript
Raw Permalink Normal View History

2025-06-25 11:46:04 +08:00
function getUrls(urls){var options=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{},settings={mimeType:options.mimeType||null,onBeforeSend:options.onBeforeSend||Function.prototype,onSuccess:options.onSuccess||Function.prototype,onError:options.onError||Function.prototype,onComplete:options.onComplete||Function.prototype},urlArray=Array.isArray(urls)?urls:[urls],urlQueue=Array.apply(null,Array(urlArray.length)).map(function(x){return null});function isValidCss(text){var isString="string"==typeof text,text=isString&&"<"===text.trim().charAt(0);return isString&&!text}function onSuccess(responseText,urlIndex){var returnVal=settings.onSuccess(responseText,urlArray[urlIndex],urlIndex);urlQueue[urlIndex]=responseText=!1===returnVal?"":returnVal||responseText,-1===urlQueue.indexOf(null)&&settings.onComplete(urlQueue)}var parser=document.createElement("a");urlArray.forEach(function(url,i){parser.setAttribute("href",url),parser.href=String(parser.href);var xhr=new XMLHttpRequest;xhr.open("GET",url),settings.mimeType&&xhr.overrideMimeType&&xhr.overrideMimeType(settings.mimeType),settings.onBeforeSend(xhr,url,i),xhr.onreadystatechange=function(){var text;4===xhr.readyState&&(text=xhr.responseText,xhr.status<400&&isValidCss(text)||0===xhr.status&&isValidCss(text)?onSuccess(text,i):((xhr,urlIndex)=>{settings.onError(xhr,urlArray[urlIndex],urlIndex)})(xhr,i))},xhr.send()})}function getCssData(options){var regex={cssComments:/\/\*[\s\S]+?\*\//g,cssImports:/(?:@import\s*)(?:url\(\s*)?(?:['"])([^'"]*)(?:['"])(?:\s*\))?(?:[^;]*;)/g},settings={rootElement:options.rootElement||document,include:options.include||'style,link[rel="stylesheet"]',skipDisabled:!1!==options.skipDisabled,useCSSOM:options.useCSSOM||!1,onBeforeSend:options.onBeforeSend||Function.prototype,onSuccess:options.onSuccess||Function.prototype,onError:options.onError||Function.prototype,onComplete:options.onComplete||Function.prototype},sourceNodes=settings.include,cssArray=Array.apply(null,Array(sourceNodes.length)).map(function(x){return null});function handleComplete(){var cssText;-1===cssArray.indexOf(null)&&(cssArray.reduce(function(skipIndices,value,i){return""===value&&skipIndices.push(i),skipIndices},[]).reverse().forEach(function(skipIndex){return[sourceNodes,cssArray].forEach(function(arr){return arr.splice(skipIndex,1)})}),cssText=cssArray.join(""),settings.onComplete(cssText,cssArray,sourceNodes))}function handleSuccess(cssText,cssIndex,node,sourceUrl){var returnVal=settings.onSuccess(cssText,node,sourceUrl);!function resolveImports(cssText,node,baseUrl,callbackFn){var __errorData=4<arguments.length&&void 0!==arguments[4]?arguments[4]:[];var __errorRules=5<arguments.length&&void 0!==arguments[5]?arguments[5]:[];var importData=parseImportData(cssText,baseUrl,__errorRules);importData.rules.length?getUrls(importData.absoluteUrls,{onBeforeSend:function(xhr,url,urlIndex){settings.onBeforeSend(xhr,node,url)},onSuccess:function(cssText,url,urlIndex){var returnVal=settings.onSuccess(cssText,node,url),responseImportData=parseImportData(cssText=!1===returnVal?"":returnVal||cssText,url,__errorRules);return responseImportData.rules.forEach(function(rule,i){cssText=cssText.replace(rule,responseImportData.absoluteRules[i])}),cssText},onError:function(xhr,url,urlIndex){__errorData.push({xhr:xhr,url:url}),__errorRules.push(importData.rules[urlIndex]),resolveImports(cssText,node,baseUrl,callbackFn,__errorData,__errorRules)},onComplete:function(responseArray){responseArray.forEach(function(importText,i){cssText=cssText.replace(importData.rules[i],importText)}),resolveImports(cssText,node,baseUrl,callbackFn,__errorData,__errorRules)}}):callbackFn(cssText,__errorData)}(cssText=void 0!==returnVal&&!1===Boolean(returnVal)?"":returnVal||cssText,node,sourceUrl,function(resolvedCssText,errorData){null===cssArray[cssIndex]&&(errorData.forEach(function(data){return settings.onError(data.xhr,node,data.url)}),cssArray[cssIndex]=resolvedCssText,handleComplete())})}function parseImportData(cssText,baseUrl,argument_2){var ignoreRules=2<arguments.length&&void 0!==argument_2?argument_2:[]