@tindtechnologies/universalviewer
Version:
The Universal Viewer is a community-developed open source project on a mission to help you share your 📚📜📰📽️📻🗿 with the 🌎
2 lines (1 loc) • 8.21 kB
JavaScript
import"./chunk-YAXTLTJC.js";var d=function(){function e(){this.start=0,this.end=0,this.previous=null,this.parent=null,this.rules=null,this.parsedCssText="",this.cssText="",this.atRule=!1,this.type=0,this.keyframesName="",this.selector="",this.parsedSelector=""}return e}();function N(e){return e=V(e),E(I(e),e)}function V(e){return e.replace(p.comments,"").replace(p.port,"")}function I(e){var t=new d;t.start=0,t.end=e.length;for(var r=t,n=0,a=e.length;n<a;n++)if(e[n]===k){r.rules||(r.rules=[]);var s=r,i=s.rules[s.rules.length-1]||null;r=new d,r.start=n+1,r.parent=s,r.previous=i,s.rules.push(r)}else e[n]===U&&(r.end=n+1,r=r.parent||t);return t}function E(e,t){var r=t.substring(e.start,e.end-1);if(e.parsedCssText=e.cssText=r.trim(),e.parent){var n=e.previous?e.previous.end:e.parent.start;r=t.substring(n,e.start-1),r=T(r),r=r.replace(p.multipleSpaces," "),r=r.substring(r.lastIndexOf(";")+1);var a=e.parsedSelector=e.selector=r.trim();e.atRule=a.indexOf(H)===0,e.atRule?a.indexOf(O)===0?e.type=c.MEDIA_RULE:a.match(p.keyframesRule)&&(e.type=c.KEYFRAMES_RULE,e.keyframesName=e.selector.split(p.multipleSpaces).pop()):a.indexOf(G)===0?e.type=c.MIXIN_RULE:e.type=c.STYLE_RULE}var s=e.rules;if(s)for(var i=0,o=s.length,u=void 0;i<o&&(u=s[i]);i++)E(u,t);return e}function T(e){return e.replace(/\\([0-9a-f]{1,6})\s/gi,function(){for(var t=arguments[1],r=6-t.length;r--;)t="0"+t;return"\\"+t})}var c={STYLE_RULE:1,KEYFRAMES_RULE:7,MEDIA_RULE:4,MIXIN_RULE:1e3},k="{",U="}",p={comments:/\/\*[^*]*\*+([^/*][^*]*\*+)*\//gim,port:/@import[^;]*;/gim,customProp:/(?:^[^;\-\s}]+)?--[^;{}]*?:[^{};]*?(?:[;\n]|$)/gim,mixinProp:/(?:^[^;\-\s}]+)?--[^;{}]*?:[^{};]*?{[^}]*?}(?:[;\n]|$)?/gim,mixinApply:/@apply\s*\(?[^);]*\)?\s*(?:[;\n]|$)?/gim,varApply:/[^;:]*?:[^;]*?var\([^;]*\)(?:[;\n]|$)?/gim,keyframesRule:/^@[^\s]*keyframes/,multipleSpaces:/\s+/g},G="--",O="@media",H="@";function b(e,t,r){e.lastIndex=0;var n=t.substring(r).match(e);if(n){var a=r+n.index;return{start:a,end:a+n[0].length}}return null}var D=/\bvar\(/,P=/\B--[\w-]+\s*:/,F=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//gim,$=/^[\t ]+\n/gm;function B(e,t,r){return e[t]?e[t]:r?f(r,e):""}function X(e,t){for(var r=0,n=t;n<e.length;n++){var a=e[n];if(a==="(")r++;else if(a===")"&&(r--,r<=0))return n+1}return n}function Y(e,t){var r=b(D,e,t);if(!r)return null;var n=X(e,r.start),a=e.substring(r.end,n-1),s=a.split(","),i=s[0],o=s.slice(1);return{start:r.start,end:n,propName:i.trim(),fallback:o.length>0?o.join(",").trim():void 0}}function j(e,t,r){var n=Y(e,r);if(!n)return t.push(e.substring(r,e.length)),e.length;var a=n.propName,s=n.fallback!=null?v(n.fallback):void 0;return t.push(e.substring(r,n.start),function(i){return B(i,a,s)}),n.end}function f(e,t){for(var r="",n=0;n<e.length;n++){var a=e[n];r+=typeof a=="string"?a:a(t)}return r}function q(e,t){for(var r=!1,n=!1,a=t;a<e.length;a++){var s=e[a];if(r)n&&s==='"'&&(r=!1),!n&&s==="'"&&(r=!1);else if(s==='"')r=!0,n=!0;else if(s==="'")r=!0,n=!1;else{if(s===";")return a+1;if(s==="}")return a}}return a}function W(e){for(var t="",r=0;;){var n=b(P,e,r),a=n?n.start:e.length;if(t+=e.substring(r,a),n)r=q(e,a);else break}return t}function v(e){var t=0;e=e.replace(F,""),e=W(e).replace($,"");for(var r=[];t<e.length;)t=j(e,r,t);return r}function R(e){var t={};e.forEach(function(o){o.declarations.forEach(function(u){t[u.prop]=u.value})});for(var r={},n=Object.entries(t),a=function(o){var u=!1;if(n.forEach(function(S){var g=S[0],w=S[1],y=f(w,r);y!==r[g]&&(r[g]=y,u=!0)}),!u)return"break"},s=0;s<10;s++){var i=a(s);if(i==="break")break}return r}function z(e,t){if(t===void 0&&(t=0),!e.rules)return[];var r=[];return e.rules.filter(function(n){return n.type===c.STYLE_RULE}).forEach(function(n){var a=J(n.cssText);a.length>0&&n.parsedSelector.split(",").forEach(function(s){s=s.trim(),r.push({selector:s,declarations:a,specificity:K(),nu:t})}),t++}),r}function K(e){return 1}var M="!important",Z=/(?:^|[;\s{]\s*)(--[\w-]*?)\s*:\s*(?:((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};{])+)|\{([^}]*)\}(?:(?=[;\s}])|$))/gm;function J(e){for(var t=[],r;r=Z.exec(e.trim());){var n=Q(r[2]),a=n.value,s=n.important;t.push({prop:r[1].trim(),value:v(a),important:s})}return t}function Q(e){var t=/\s+/gim;e=e.replace(t," ").trim();var r=e.endsWith(M);return r&&(e=e.substr(0,e.length-M.length).trim()),{value:e,important:r}}function x(e,t,r){var n=[],a=ee(t,e);r.forEach(function(o){return n.push(o)}),a.forEach(function(o){return n.push(o)});var s=A(n),i=s.filter(function(o){return te(e,o.selector)});return re(i)}function ee(e,t){for(var r=[];t;){var n=e.get(t);n&&r.push(n),t=t.parentElement}return r}function A(e){var t=[];return e.forEach(function(r){t.push.apply(t,r.selectors)}),t}function re(e){return e.sort(function(t,r){return t.specificity===r.specificity?t.nu-r.nu:t.specificity-r.specificity}),e}function te(e,t){return t===":root"||t==="html"||e.matches(t)}function _(e){var t=N(e),r=v(e),n=z(t);return{original:e,template:r,selectors:n,usesCssVars:r.length>1}}function h(e,t){var r=_(t.innerHTML);r.styleEl=t,e.push(r)}function ne(e){var t=A(e),r=R(t);e.forEach(function(n){n.usesCssVars&&(n.styleEl.innerHTML=f(n.template,r))})}function ae(e,t){var r=e.template.map(function(a){return typeof a=="string"?L(a,e.scopeId,t):a}),n=e.selectors.map(function(a){return Object.assign({},a,{selector:L(a.selector,e.scopeId,t)})});return Object.assign({},e,{template:r,selectors:n,scopeId:t})}function L(e,t,r){return e=se(e,"\\."+t,"."+r),e}function se(e,t,r){return e.replace(new RegExp(t,"g"),r)}function ie(e,t){return ue(e,t),oe(e,t)}function oe(e,t){for(var r=[],n=e.querySelectorAll('link[rel="stylesheet"][href]'),a=0;a<n.length;a++)r.push(C(e,t,n[a]));return Promise.all(r)}function ue(e,t){for(var r=e.querySelectorAll("style:not([data-styles])"),n=0;n<r.length;n++)h(t,r[n])}function C(e,t,r){var n=r.href;return fetch(n).then(function(a){return a.text()}).then(function(a){if(ce(a)&&r.parentNode){pe(a)&&(a=fe(a,n));var s=e.createElement("style");s.setAttribute("data-styles",""),s.innerHTML=a,h(t,s),r.parentNode.insertBefore(s,r),r.remove()}}).catch(function(a){console.error(a)})}var le=/[\s;{]--[-a-zA-Z0-9]+\s*:/m;function ce(e){return e.indexOf("var(")>-1||le.test(e)}var m=/url[\s]*\([\s]*['"]?(?![http|/])([^\'\"\)]*)[\s]*['"]?\)[\s]*/gim;function pe(e){return m.lastIndex=0,m.test(e)}function fe(e,t){var r=t.replace(/[^/]*$/,"");return e.replace(m,function(n,a){var s=r+a;return n.replace(a,s)})}var ve=function(){function e(t,r){this.win=t,this.doc=r,this.count=0,this.hostStyleMap=new WeakMap,this.hostScopeMap=new WeakMap,this.globalScopes=[],this.scopesMap=new Map}return e.prototype.initShim=function(){var t=this;return new Promise(function(r){t.win.requestAnimationFrame(function(){ie(t.doc,t.globalScopes).then(function(){return r()})})})},e.prototype.addLink=function(t){var r=this;return C(this.doc,this.globalScopes,t).then(function(){r.updateGlobal()})},e.prototype.addGlobalStyle=function(t){h(this.globalScopes,t),this.updateGlobal()},e.prototype.createHostStyle=function(t,r,n,a){if(this.hostScopeMap.has(t))throw new Error("host style already created");var s=this.registerHostTemplate(n,r,a),i=this.doc.createElement("style");return s.usesCssVars?a?(i["s-sc"]=r=s.scopeId+"-"+this.count,i.innerHTML="/*needs update*/",this.hostStyleMap.set(t,i),this.hostScopeMap.set(t,ae(s,r)),this.count++):(s.styleEl=i,s.usesCssVars||(i.innerHTML=f(s.template,{})),this.globalScopes.push(s),this.updateGlobal(),this.hostScopeMap.set(t,s)):i.innerHTML=n,i},e.prototype.removeHost=function(t){var r=this.hostStyleMap.get(t);r&&r.remove(),this.hostStyleMap.delete(t),this.hostScopeMap.delete(t)},e.prototype.updateHost=function(t){var r=this.hostScopeMap.get(t);if(r&&r.usesCssVars&&r.isScoped){var n=this.hostStyleMap.get(t);if(n){var a=x(t,this.hostScopeMap,this.globalScopes),s=R(a);n.innerHTML=f(r.template,s)}}},e.prototype.updateGlobal=function(){ne(this.globalScopes)},e.prototype.registerHostTemplate=function(t,r,n){var a=this.scopesMap.get(r);return a||(a=_(t),a.scopeId=r,a.isScoped=n,this.scopesMap.set(r,a)),a},e}(),l=window;function he(){return!(l.CSS&&l.CSS.supports&&l.CSS.supports("color","var(--c)"))}!l.__stencil_cssshim&&he()&&(l.__stencil_cssshim=new ve(l,document));