compressed-script-loader 1.3.7 → 1.3.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +18 -0
- package/bin/cslpack.js +3 -3
- package/csl-types.d.ts +41 -28
- package/import-map.d.ts +1 -1
- package/index.d.ts +3 -3
- package/package.json +1 -1
- package/umd/index.js +2 -2
- package/unzip-sync.d.ts +1 -1
- package/webpack/index.js +2 -2
- package/webpack-esm/index.mjs +2 -2
package/README.md
CHANGED
|
@@ -80,6 +80,24 @@ You can use `sha256`, `sha384`, and `sha512` in `script.integrity`, and the pref
|
|
|
80
80
|
></script>
|
|
81
81
|
```
|
|
82
82
|
|
|
83
|
+
+ vscode snippet
|
|
84
|
+
|
|
85
|
+
```json
|
|
86
|
+
"compressed script loader snippet": {
|
|
87
|
+
"prefix": "csl-script-tag",
|
|
88
|
+
"scope": "markdown,html,json,jsonc,snippets",
|
|
89
|
+
"description": "Insert compressed script loader script tag.",
|
|
90
|
+
"body": [
|
|
91
|
+
"<script data-csl-config='{",
|
|
92
|
+
" \"base\": \"${1:./lib}\",",
|
|
93
|
+
" \"load\": ${2|\"bundle\",[\"bundle\"]|},",
|
|
94
|
+
" ${3|\"callback\": \"cslCallback\",\"callback\": \"cslCallback\",\n\"cleanup\": true|}",
|
|
95
|
+
"}' src=\"https://cdn.jsdelivr.net/npm/compressed-script-loader/umd/index.js\" defer></script>"
|
|
96
|
+
]
|
|
97
|
+
}
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
|
|
83
101
|
+ Supports simple `data-csl-config` (since v1.2.6)
|
|
84
102
|
+ In this case, the packed zip file must be deployed in the same directory as the page and
|
|
85
103
|
If need a callback, define it as `cslCallback`.
|
package/bin/cslpack.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
/*! For license information please see cslpack.js.LICENSE.txt */
|
|
3
|
-
(()=>{var _wm_={274:module=>{const tinArgs=(acfg,dbg=!1)=>{dbg&&console.log("process.argv: ",process.argv),acfg=acfg||{};const pfix=acfg.prefix||"-",vIdx=pfix.length,eIdx=acfg.startIndex||2,pms={};if(process.argv.length>eIdx){const cArgs=process.argv;for(let idx=eIdx;idx<cArgs.length;){const opt=cArgs[idx++];if(opt)if(opt.startsWith(pfix)){let v=cArgs[idx];void 0===v||v.startsWith(pfix)?v=!0:(/^\[.+\]$/.test(v)||/^(?:re)?\/[^/]+\/[gimuys]{0,6}$/.test(v)?(/^re\//.test(v)&&(v=v.substring(2)),v=eval(v)):/\\,/.test(v)?v=v.replace(/\\,/g,","):/,/.test(v)?v=v.split(","):/^(?:-?\.?\d+(?:\.\d*)?|0x[\da-f]+)$/i.test(v)&&(v=+v),idx++),pms[opt.substring(vIdx)]=v}else(pms.args||(pms.args=[])).push(opt)}}return pms};module.exports=tinArgs}},_wmc_={};function _wr_(e){var r=_wmc_[e];if(void 0!==r)return r.exports;var t=_wmc_[e]={exports:{}};return _wm_[e](t,t.exports,_wr_),t.exports}_wr_.r=e=>{'undefined'!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:'Module'}),Object.defineProperty(e,'__esModule',{value:!0})};var _we_={};(()=>{"use strict";_wr_.r(_we_);const e=require("fs"),r=require("child_process");var t=_wr_(274);const n=require("path");var a=Uint8Array,o=Uint16Array,i=
|
|
4
|
-
|
|
5
|
-
;re||(console.log(`\n> ERROR: the file to pack is required\n\n$ cslpack
|
|
3
|
+
(()=>{var _wm_={274:module=>{const tinArgs=(acfg,dbg=!1)=>{dbg&&console.log("process.argv: ",process.argv),acfg=acfg||{};const pfix=acfg.prefix||"-",vIdx=pfix.length,eIdx=acfg.startIndex||2,pms={};if(process.argv.length>eIdx){const cArgs=process.argv;for(let idx=eIdx;idx<cArgs.length;){const opt=cArgs[idx++];if(opt)if(opt.startsWith(pfix)){let v=cArgs[idx];void 0===v||v.startsWith(pfix)?v=!0:(/^\[.+\]$/.test(v)||/^(?:re)?\/[^/]+\/[gimuys]{0,6}$/.test(v)?(/^re\//.test(v)&&(v=v.substring(2)),v=eval(v)):/\\,/.test(v)?v=v.replace(/\\,/g,","):/,/.test(v)?v=v.split(","):/^(?:-?\.?\d+(?:\.\d*)?|0x[\da-f]+)$/i.test(v)&&(v=+v),idx++),pms[opt.substring(vIdx)]=v}else(pms.args||(pms.args=[])).push(opt)}}return pms};module.exports=tinArgs}},_wmc_={};function _wr_(e){var r=_wmc_[e];if(void 0!==r)return r.exports;var t=_wmc_[e]={exports:{}};return _wm_[e](t,t.exports,_wr_),t.exports}_wr_.r=e=>{'undefined'!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:'Module'}),Object.defineProperty(e,'__esModule',{value:!0})};var _we_={};(()=>{"use strict";_wr_.r(_we_);const e=require("fs"),r=require("child_process");var t=_wr_(274);const n=require("path");var a=Uint8Array,o=Uint16Array,i=Int32Array,s=new a([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),f=new a([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),l=new a([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),c=function(e,r){for(var t=new o(31),n=0;n<31;++n)t[n]=r+=1<<e[n-1];var a=new i(t[30]);for(n=1;n<30;++n)for(var s=t[n];s<t[n+1];++s)a[s]=s-t[n]<<5|n;return{b:t,r:a}},u=c(s,2),v=u.b,h=u.r;v[28]=258,h[258]=28;for(var p=c(f,0),d=(p.b,p.r),g=new o(32768),m=0;m<32768;++m){var _=(43690&m)>>1|(21845&m)<<1;_=(61680&(_=(52428&_)>>2|(13107&_)<<2))>>4|(3855&_)<<4,g[m]=((65280&_)>>8|(255&_)<<8)>>1}var w=function(e,r,t){for(var n=e.length,a=0,i=new o(r);a<n;++a)e[a]&&++i[e[a]-1];var s,f=new o(r);for(a=1;a<r;++a)f[a]=f[a-1]+i[a-1]<<1;if(t){s=new o(1<<r);var l=15-r;for(a=0;a<n;++a)if(e[a])for(var c=a<<4|e[a],u=r-e[a],v=f[e[a]-1]++<<u,h=v|(1<<u)-1;v<=h;++v)s[g[v]>>l]=c}else for(s=new o(n),a=0;a<n;++a)e[a]&&(s[a]=g[f[e[a]-1]++]>>15-e[a]);return s},b=new a(288);for(m=0;m<144;++m)b[m]=8;for(m=144;m<256;++m)b[m]=9;for(m=256;m<280;++m)b[m]=7;for(m=280;m<288;++m)b[m]=8;var x=new a(32);for(m=0;m<32;++m)x[m]=5;var y=w(b,9,0),k=w(x,5,0),M=function(e){return(e+7)/8|0},A=function(e,r,t){return(null==r||r<0)&&(r=0),(null==t||t>e.length)&&(t=e.length),new a(e.subarray(r,t))},S=['unexpected EOF','invalid block type','invalid length/literal','invalid distance','stream finished','no stream handler',,'no callback','invalid UTF-8 data','extra field too long','date not in range 1980-2099','filename too long','stream finishing','invalid zip data'],T=function(e,r,t){var n=new Error(r||S[e]);if(n.code=e,Error.captureStackTrace&&Error.captureStackTrace(n,T),!t)throw n;return n},q=function(e,r,t){t<<=7&r;var n=r/8|0;e[n]|=t,e[n+1]|=t>>8},$=function(e,r,t){t<<=7&r;var n=r/8|0;e[n]|=t,e[n+1]|=t>>8,e[n+2]|=t>>16},E=function(e,r){for(var t=[],n=0;n<e.length;++n)e[n]&&t.push({s:n,f:e[n]});var i=t.length,s=t.slice();if(!i)return{t:C,l:0};if(1==i){var f=new a(t[0].s+1);return f[t[0].s]=1,{t:f,l:1}}t.sort((function(e,r){return e.f-r.f})),t.push({s:-1,f:25001});var l=t[0],c=t[1],u=0,v=1,h=2;for(t[0]={s:-1,f:l.f+c.f,l,r:c};v!=i-1;)l=t[t[u].f<t[h].f?u++:h++],c=t[u!=v&&t[u].f<t[h].f?u++:h++],t[v++]={s:-1,f:l.f+c.f,l,r:c};var p=s[0].s;for(n=1;n<i;++n)s[n].s>p&&(p=s[n].s);var d=new o(p+1),g=z(t[v-1],d,0);if(g>r){n=0;var m=0,_=g-r,w=1<<_;for(s.sort((function(e,r){return d[r.s]-d[e.s]||e.f-r.f}));n<i;++n){var b=s[n].s;if(!(d[b]>r))break;m+=w-(1<<g-d[b]),d[b]=r}for(m>>=_;m>0;){var x=s[n].s;d[x]<r?m-=1<<r-d[x]++-1:++n}for(;n>=0&&m;--n){var y=s[n].s;d[y]==r&&(--d[y],++m)}g=r}return{t:new a(d),l:g}},z=function(e,r,t){return-1==e.s?Math.max(z(e.l,r,t+1),z(e.r,r,t+1)):r[e.s]=t},I=function(e){for(var r=e.length;r&&!e[--r];);for(var t=new o(++r),n=0,a=e[0],i=1,s=function(e){t[n++]=e},f=1;f<=r;++f)if(e[f]==a&&f!=r)++i;else{if(!a&&i>2){for(;i>138;i-=138)s(32754);i>2&&(s(i>10?i-11<<5|28690:i-3<<5|12305),i=0)}else if(i>3){for(s(a),--i;i>6;i-=6)s(8304);i>2&&(s(i-3<<5|8208),i=0)}for(;i--;)s(a);i=1,a=e[f]}return{c:t.subarray(0,n),n:r}},j=function(e,r){for(var t=0,n=0;n<r.length;++n)t+=e[n]*r[n];return t},F=function(e,r,t){var n=t.length,a=M(r+2);e[a]=255&n,e[a+1]=n>>8,e[a+2]=255^e[a],e[a+3]=255^e[a+1];for(var o=0;o<n;++o)e[a+o+4]=t[o];return 8*(a+4+n)},O=function(e,r,t,n,a,i,c,u,v,h,p){q(r,p++,t),++a[256];for(var d=E(a,15),g=d.t,m=d.l,_=E(i,15),M=_.t,A=_.l,S=I(g),T=S.c,z=S.n,O=I(M),D=O.c,C=O.n,R=new o(19),U=0;U<T.length;++U)++R[31&T[U]];for(U=0;U<D.length;++U)++R[31&D[U]];for(var W=E(R,7),N=W.t,P=W.l,H=19;H>4&&!N[l[H-1]];--H);
|
|
4
|
+
var J,Y,B,G,K=h+5<<3,L=j(a,b)+j(i,x)+c,Q=j(a,g)+j(i,M)+c+14+3*H+j(R,N)+2*R[16]+3*R[17]+7*R[18];if(v>=0&&K<=L&&K<=Q)return F(r,p,e.subarray(v,v+h));if(q(r,p,1+(Q<L)),p+=2,Q<L){J=w(g,m,0),Y=g,B=w(M,A,0),G=M;var V=w(N,P,0);q(r,p,z-257),q(r,p+5,C-1),q(r,p+10,H-4),p+=14;for(U=0;U<H;++U)q(r,p+3*U,N[l[U]]);p+=3*H;for(var X=[T,D],Z=0;Z<2;++Z){var ee=X[Z];for(U=0;U<ee.length;++U){var re=31&ee[U];q(r,p,V[re]),p+=N[re],re>15&&(q(r,p,ee[U]>>5&127),p+=ee[U]>>12)}}}else J=y,Y=b,B=k,G=x;for(U=0;U<u;++U){var te=n[U];if(te>255){$(r,p,J[(re=te>>18&31)+257]),p+=Y[re+257],re>7&&(q(r,p,te>>23&31),p+=s[re]);var ne=31&te;$(r,p,B[ne]),p+=G[ne],ne>3&&($(r,p,te>>5&8191),p+=f[ne])}else $(r,p,J[te]),p+=Y[te]}return $(r,p,J[256]),p+Y[256]},D=new i([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),C=new a(0),R=function(e,r,t,n,l,c){var u=c.z||e.length,v=new a(n+u+5*(1+Math.ceil(u/7e3))+l),p=v.subarray(n,v.length-l),g=c.l,m=7&(c.r||0);if(r){m&&(p[0]=c.r>>3);for(var _=D[r-1],w=_>>13,b=8191&_,x=(1<<t)-1,y=c.p||new o(32768),k=c.h||new o(x+1),S=Math.ceil(t/3),T=2*S,q=function(r){return(e[r]^e[r+1]<<S^e[r+2]<<T)&x},$=new i(25e3),E=new o(288),z=new o(32),I=0,j=0,C=c.i||0,R=0,U=c.w||0,W=0;C+2<u;++C){var N=q(C),P=32767&C,H=k[N];if(y[P]=H,k[N]=P,U<=C){var J=u-C;if((I>7e3||R>24576)&&(J>423||!g)){m=O(e,p,0,$,E,z,j,R,W,C-W,m),R=I=j=0,W=C;for(var Y=0;Y<286;++Y)E[Y]=0;for(Y=0;Y<30;++Y)z[Y]=0}var B=2,G=0,K=b,L=P-H&32767;if(J>2&&N==q(C-L))for(var Q=Math.min(w,J)-1,V=Math.min(32767,C),X=Math.min(258,J);L<=V&&--K&&P!=H;){if(e[C+B]==e[C+B-L]){for(var Z=0;Z<X&&e[C+Z]==e[C+Z-L];++Z);if(Z>B){if(B=Z,G=L,Z>Q)break;var ee=Math.min(L,Z-2),re=0;for(Y=0;Y<ee;++Y){var te=C-L+Y&32767,ne=te-y[te]&32767;ne>re&&(re=ne,H=te)}}}L+=(P=H)-(H=y[P])&32767}if(G){$[R++]=268435456|h[B]<<18|d[G];var ae=31&h[B],oe=31&d[G];j+=s[ae]+f[oe],++E[257+ae],++z[oe],U=C+B,++I}else $[R++]=e[C],++E[e[C]]}}for(C=Math.max(C,U);C<u;++C)$[R++]=e[C],++E[e[C]];m=O(e,p,g,$,E,z,j,R,W,C-W,m),g||(c.r=7&m|p[m/8|0]<<3,m-=7,c.h=k,c.p=y,c.i=C,c.w=U)}else{for(C=c.w||0;C<u+g;C+=65535){var ie=C+65535;ie>=u&&(p[m/8|0]=g,ie=u),m=F(p,m+1,e.subarray(C,ie))}c.i=u}return A(v,0,n+M(m)+l)},U=function(){for(var e=new Int32Array(256),r=0;r<256;++r){for(var t=r,n=9;--n;)t=(1&t&&-306674912)^t>>>1;e[r]=t}return e}(),W=function(){var e=-1;return{p:function(r){for(var t=e,n=0;n<r.length;++n)t=U[255&t^r[n]]^t>>>8;e=t},d:function(){return~e}}},N=function(e,r,t,n,o){if(!o&&(o={l:1},r.dictionary)){var i=r.dictionary.subarray(-32768),s=new a(i.length+e.length);s.set(i),s.set(e,i.length),e=s,o.w=i.length}return R(e,null==r.level?6:r.level,null==r.mem?Math.ceil(1.5*Math.max(8,Math.min(13,Math.log(e.length)))):12+r.mem,t,n,o)},P=function(e,r){var t={};for(var n in e)t[n]=e[n];for(var n in r)t[n]=r[n];return t},H=function(e,r,t){for(;t;++r)e[r]=t,t>>>=8};function J(e,r){return N(e,r||{},0,0)}var Y=function(e,r,t,n){for(var o in e){var i=e[o],s=r+o,f=n;Array.isArray(i)&&(f=P(n,i[1]),i=i[0]),i instanceof a?t[s]=[i,f]:(t[s+='/']=[new a(0),f],Y(i,s,t,n))}},B='undefined'!=typeof TextEncoder&&new TextEncoder,G='undefined'!=typeof TextDecoder&&new TextDecoder;try{G.decode(C,{stream:!0}),1}catch(e){}function K(e,r){if(r){for(var t=new a(e.length),n=0;n<e.length;++n)t[n]=e.charCodeAt(n);return t}if(B)return B.encode(e);var o=e.length,i=new a(e.length+(e.length>>1)),s=0,f=function(e){i[s++]=e};for(n=0;n<o;++n){if(s+5>i.length){var l=new a(s+8+(o-n<<1));l.set(i),i=l}var c=e.charCodeAt(n);c<128||r?f(c):c<2048?(f(192|c>>6),f(128|63&c)):c>55295&&c<57344?(f(240|(c=65536+(1047552&c)|1023&e.charCodeAt(++n))>>18),f(128|c>>12&63),f(128|c>>6&63),f(128|63&c)):(f(224|c>>12),f(128|c>>6&63),f(128|63&c))}return A(i,0,s)}var L=function(e){var r=0;if(e)for(var t in e){var n=e[t].length;n>65535&&T(9),r+=n+4}return r},Q=function(e,r,t,n,a,o,i,s){var f=n.length,l=t.extra,c=s&&s.length,u=L(l);H(e,r,null!=i?33639248:67324752),r+=4,null!=i&&(e[r++]=20,e[r++]=t.os),e[r]=20,r+=2,e[r++]=t.flag<<1|(o<0&&8),e[r++]=a&&8,e[r++]=255&t.compression,e[r++]=t.compression>>8;var v=new Date(null==t.mtime?Date.now():t.mtime),h=v.getFullYear()-1980;if((h<0||h>119)&&T(10),H(e,r,h<<25|v.getMonth()+1<<21|v.getDate()<<16|v.getHours()<<11|v.getMinutes()<<5|v.getSeconds()>>1),r+=4,-1!=o&&(H(e,r,t.crc),H(e,r+4,o<0?-o-2:o),H(e,r+8,t.size)),H(e,r+12,f),H(e,r+14,u),r+=16,null!=i&&(H(e,r,c),H(e,r+6,t.attrs),H(e,r+10,i),r+=14),e.set(n,r),r+=f,u)for(var p in l){var d=l[p],g=d.length;H(e,r,+p),H(e,r+2,g),e.set(d,r+4),r+=4+g}return c&&(e.set(s,r),r+=c),r},V=function(e,r,t,n,a){H(e,r,101010256),H(e,r+8,t),H(e,r+10,t),H(e,r+12,n),H(e,r+16,a)};'function'==typeof queueMicrotask?queueMicrotask:'function'==typeof setTimeout&&setTimeout;const X=new(require("util").TextEncoder);let Z="./dist/bundle.zip",ee=t();console.log(ee);let re=ee.args
|
|
5
|
+
;re||(console.log(`\n> ERROR: the file to pack is required\n\n$ cslpack [-(d|dest) <output zip path>] [-sha <256|384|512>] [-m <main jsname>] <jspath> <jspath>...\n\n -(d|dest): zip output path. when omited will be output to ${Z}\n -sha : [256|384|512] when omited use 384 "sha384"\n -m : When packing the esm module, specify the script name that will be the entry point.\n The "importmap" is automatically generated and packed together.\n\n NOTE: \`cslpack\` doesn't keep directory path\n`),process.exit(1));const te=new class{list={};map;constructor(e){this.setModuleMain(e)}setModuleMain(e){"string"==typeof e&&e.length?this.map={main:e,map:{imports:{}}}:this.map=void 0}add(r,t){let a=n.parse(r),o=`${a.dir}/${a.base}`,i=e.readFileSync(o,"utf8");if(i){let e=this.map;e&&((e,r,t)=>{const n=/(?<!\/\/\s*)(?:import|export)\s*(?:|[\w_]+\s+from|(?:[\w_]+\s*,\s*)?\{[^}]+\}\s*from|\*\s*as\s+[\w_]+\s+from|\*\s*from)?\s*"(([.\/]+)?[^"]+(?:\.(?:c|m)?js)?)"\s*;?/gm;let a,o=r.imports;for(;a=n.exec(e);)t&&!a[2]||(o[a[1]]="")})(i,e.map),this.list[a.base]=[X.encode(i),{level:7,comment:t}]}}emit(r){let t=this.list,o=this.map;o&&(t["$importmap.dat"]=[X.encode(JSON.stringify(o,null,2)),{level:7}]);let i=`[fflate.zip:${r}]`;console.time(i);let s=function(e,r){r||(r={});var t={},n=[];Y(e,'',t,r);var o=0,i=0;for(var s in t){var f=t[s],l=f[0],c=f[1],u=0==c.level?0:8,v=(M=K(s)).length,h=c.comment,p=h&&K(h),d=p&&p.length,g=L(c.extra);v>65535&&T(11);var m=u?J(l,c):l,_=m.length,w=W();w.p(l),n.push(P(c,{size:l.length,crc:w.d(),c:m,f:M,m:p,u:v!=s.length||p&&h.length!=d,o,compression:u})),o+=30+v+g+_,i+=76+2*(v+g)+(d||0)+_}for(var b=new a(i+22),x=o,y=i-o,k=0;k<n.length;++k){var M=n[k];Q(b,M.o,M,M.f,M.u,M.c.length);var A=30+M.f.length+L(M.extra);b.set(M.c,M.o+A),Q(b,o,M,M.f,M.u,M.c.length,M.o,M.m),o+=16+A+(M.m?M.m.length:0)}return V(b,o,n.length,y,x),b}(t,{});(r=>{const t=n.dirname(r);e.existsSync(t)||e.mkdirSync(t,{recursive:!0})})(r),e.writeFile(r,s,"binary",(()=>{console.timeEnd(i),console.log(o),this.reset()}))}reset(){this.list={},this.map=void 0}}(ee.m);let ne=ee.sha;/256|384|512/.test(ne)||(ne="384");for(const t of re){if(e.statSync(t).isFile()){const e=r.execSync(`bash -c "echo -n $(openssl dgst -sha${ne} -binary ${t} | openssl base64 -A)"`,{encoding:"utf8"});te.add(t,e)}}te.emit(ee.d||ee.dest||Z)})(),module.exports=_we_})();
|
package/csl-types.d.ts
CHANGED
|
@@ -5,8 +5,46 @@
|
|
|
5
5
|
https://opensource.org/licenses/mit-license.php
|
|
6
6
|
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
|
7
7
|
*/
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
/**
|
|
9
|
+
* NOTE: `NsLoader` is only available in the umd module.
|
|
10
|
+
*
|
|
11
|
+
* ```html
|
|
12
|
+
* <script src="https://cdn.jsdelivr.net/npm/compressed-script-loader/umd/index.js"></script>
|
|
13
|
+
* <script>
|
|
14
|
+
* // global variable `NsLoader` is available (umd)
|
|
15
|
+
* (async () => {
|
|
16
|
+
* const ZIPNAME = "system-coordinate-map-mini";
|
|
17
|
+
* // If the packed zip file is located in the same directory as the page
|
|
18
|
+
* // and you don't care where the script is inserted, you can skip this step.
|
|
19
|
+
* NsLoader.setConfig(
|
|
20
|
+
* "./libs"
|
|
21
|
+
* //, "script[src*=css-2d-renderer]"
|
|
22
|
+
* );
|
|
23
|
+
*
|
|
24
|
+
* await NsLoader.loadCompressedScript(ZIPNAME);
|
|
25
|
+
* // If you don't use it anymore, this step will destroy the loader api
|
|
26
|
+
* NsLoader.cleanUp();
|
|
27
|
+
*
|
|
28
|
+
* runEVEWorld(() => {
|
|
29
|
+
* window.setTimeout(() => {
|
|
30
|
+
* document.querySelectorAll(
|
|
31
|
+
* "script[src^='./loader/'],script[src*='compressed-script-loader']"
|
|
32
|
+
* ).forEach(script => script.remove());
|
|
33
|
+
* delete window.NsLoader;
|
|
34
|
+
* }, 1000);
|
|
35
|
+
* });
|
|
36
|
+
* })();
|
|
37
|
+
* </script>
|
|
38
|
+
* ```
|
|
39
|
+
*/
|
|
40
|
+
declare var NsLoader: typeof import("./index.d.ts");
|
|
41
|
+
/**
|
|
42
|
+
* `cslCallback` is the callback function name called by default to notify the zip file load completion
|
|
43
|
+
* when `data-csl-config` is embedded in the script element.
|
|
44
|
+
*
|
|
45
|
+
* If `cslCallback` is determined not to be a function, an attempt will be made to notify the load completion
|
|
46
|
+
* using the callback function name set in `TCSLConfig.callback`.
|
|
47
|
+
*/
|
|
10
48
|
declare var cslCallback: TCSLCallbak;
|
|
11
49
|
declare interface Window {
|
|
12
50
|
cslCallback: TCSLCallbak;
|
|
@@ -85,29 +123,4 @@ type TCSLConfig = {
|
|
|
85
123
|
/**
|
|
86
124
|
* @internal
|
|
87
125
|
*/
|
|
88
|
-
|
|
89
|
-
/**
|
|
90
|
-
* specify `script` element type if need.
|
|
91
|
-
*/
|
|
92
|
-
type?: string;
|
|
93
|
-
integrity?: string;
|
|
94
|
-
/**
|
|
95
|
-
* Use the `url` already created from the `URL.createObjectURL`
|
|
96
|
-
*/
|
|
97
|
-
url?: string;
|
|
98
|
-
/**
|
|
99
|
-
* @deprecated currently unused
|
|
100
|
-
*/
|
|
101
|
-
insertTarget?: Element;
|
|
102
|
-
};
|
|
103
|
-
/**
|
|
104
|
-
* @internal
|
|
105
|
-
*/
|
|
106
|
-
type TProcessImportMapResult = {
|
|
107
|
-
entryMain: string;
|
|
108
|
-
imdata: TCSLImportMap;
|
|
109
|
-
};
|
|
110
|
-
/**
|
|
111
|
-
* @internal
|
|
112
|
-
*/
|
|
113
|
-
type TSRI = `sha${256 | 384 | 512}-${string}`;
|
|
126
|
+
type TSRI = `sha${256 | 384 | 512}-${string}`;
|
package/import-map.d.ts
CHANGED
package/index.d.ts
CHANGED
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
https://opensource.org/licenses/mit-license.php
|
|
6
6
|
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
|
7
7
|
*/
|
|
8
|
-
/// <reference types="./csl-types" />
|
|
9
|
-
/// <reference types="./import-map" />
|
|
8
|
+
/// <reference types="./csl-types.d.ts" />
|
|
9
|
+
/// <reference types="./import-map.d.ts" />
|
|
10
10
|
/**
|
|
11
11
|
* @file Load zipped javascript source to page by fetch API
|
|
12
12
|
* @author jeffy-g <hirotom1107@gmail.com>
|
|
@@ -34,7 +34,7 @@ declare let setConfig: (base: string, insertionSelector?: string) => void;
|
|
|
34
34
|
* @param {(msg: string) => void} [log] default: `console.log`
|
|
35
35
|
*/
|
|
36
36
|
declare let loadCompressedScript: (baseName: string, log?: (msg: string) => void) => Promise<void>;
|
|
37
|
-
declare const version = "v1.3.
|
|
37
|
+
declare const version = "v1.3.9";
|
|
38
38
|
/**
|
|
39
39
|
* `importmap` zip entry name
|
|
40
40
|
*/
|
package/package.json
CHANGED
package/umd/index.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
/*! For license information please see index.js.LICENSE.txt */
|
|
2
|
-
((e,t)=>{'object'==typeof exports&&'object'==typeof module?module.exports=t():'function'==typeof define&&define.amd?define([],t):'object'==typeof exports?exports.NsLoader=t():e.NsLoader=t()})(globalThis,(()=>(()=>{"use strict";var e={d:(t,n)=>{for(var o in n)e.o(n,o)&&!e.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:n[o]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{'undefined'!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:'Module'}),Object.defineProperty(e,'__esModule',{value:!0})}},t={};e.r(t),e.d(t,{IM_MAP_ID:()=>
|
|
3
|
-
|
|
2
|
+
((e,t)=>{'object'==typeof exports&&'object'==typeof module?module.exports=t():'function'==typeof define&&define.amd?define([],t):'object'==typeof exports?exports.NsLoader=t():e.NsLoader=t()})(globalThis,(()=>(()=>{"use strict";var e={d:(t,n)=>{for(var o in n)e.o(n,o)&&!e.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:n[o]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{'undefined'!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:'Module'}),Object.defineProperty(e,'__esModule',{value:!0})}},t={};e.r(t),e.d(t,{IM_MAP_ID:()=>te,cleanUp:()=>G,loadCompressedScript:()=>X,setConfig:()=>Q,unzipSync:()=>Y,version:()=>ee});const n=String.fromCharCode,o=Uint8Array,r=Uint16Array,l=Uint32Array,i=new o([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),a=new o([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),s=new o([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),c=(e,t)=>{const n=new r(31);for(let o=0;o<31;++o)n[o]=t+=1<<e[o-1];const o=new l(n[30]);for(let e=1;e<30;++e)for(let t=n[e];t<n[e+1];++t)o[t]=t-n[e]<<5|e;return[n,o]},[f,d]=c(i,2);f[28]=258,d[258]=28;const[u,p]=c(a,0),y=new r(32768);for(let e=0;e<32768;++e){let t=(43690&e)>>>1|(21845&e)<<1;t=(52428&t)>>>2|(13107&t)<<2,t=(61680&t)>>>4|(3855&t)<<4,y[e]=((65280&t)>>>8|(255&t)<<8)>>>1}const g=(e,t,n)=>{const o=e.length;let l=0;const i=new r(t);for(;l<o;++l)e[l]&&++i[e[l]-1];const a=new r(t);for(l=0;l<t;++l)a[l]=a[l-1]+i[l-1]<<1;let s;if(n){s=new r(1<<t);const n=15-t;for(l=0;l<o;++l)if(e[l]){const o=l<<4|e[l],r=t-e[l];let i=a[e[l]-1]++<<r;for(const e=i|(1<<r)-1;i<=e;++i)s[y[i]>>>n]=o}}else for(s=new r(o),l=0;l<o;++l)e[l]&&(s[l]=y[a[e[l]-1]++]>>>15-e[l]);return s},m=new o(288),b=new o(32);{let e=0;for(;e<144;)m[e++]=8;for(;e<256;)m[e++]=9;for(;e<280;)m[e++]=7;for(;e<288;)m[e++]=8;for(e=0;e<32;)b[e++]=5}const h=g(m,9,1),w=g(b,5,1),v=e=>{let t=e[0];for(let n=1;n<e.length;++n)e[n]>t&&(t=e[n]);return t},S=(e,t,n)=>{const o=t/8|0;return(e[o]|e[o+1]<<8)>>(7&t)&n},$=(e,t)=>{const n=t/8|0;return(e[n]|e[n+1]<<8|e[n+2]<<16)>>(7&t)},k=[,o,r,,l],x=(e,t,n)=>{(!t||t<0)&&(t=0),(!n||n>e.length)&&(n=e.length);const o=new k[e.BYTES_PER_ELEMENT](n-t);return o.set(e.subarray(t,n)),o},E=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"];let O=Error.captureStackTrace;const T=(e,t,n)=>{const o=new Error(t||E[e]);if(o.code=e,O&&O(o,T),!n)throw o;return o},j=(e,t,n)=>{const r=e.length;if(!r||n&&n.f&&!n.l)return t||new o(0);const l=!t||!!n,c=!n||n.i;!n&&(n={}),!t&&(t=new o(3*r));const d=e=>{let n=t.length;if(e>n){const r=new o(Math.max(2*n,e));r.set(t),t=r}};let p=n.f||0,y=n.p||0,m=n.b||0,b=n.l,k=n.d,E=n.m,O=n.n;const j=8*r;do{if(!b){p=S(e,y,1);const i=S(e,y+1,3);if(y+=3,!i){const o=4+((y+7)/8|0),i=e[o-4]|e[o-3]<<8,a=o+i;if(a>r){c&&T(0);break}l&&d(m+i),t.set(e.subarray(o,a),m),n.b=m+=i,n.p=y=8*a,n.f=p;continue}if(1===i)b=h,k=w,E=9,O=5;else if(2===i){const t=S(e,y,31)+257,n=S(e,y+10,15)+4,r=t+S(e,y+5,31)+1;y+=14;const l=new o(r),i=new o(19);for(let t=0;t<n;++t)i[s[t]]=S(e,y+3*t,7);y+=3*n;const a=v(i),c=(1<<a)-1,f=g(i,a,1);for(let t=0;t<r;){const n=f[S(e,y,c)];y+=15&n;const o=n>>>4;if(o<16)l[t++]=o;else{let n=0,r=0;for(16===o?(r=3+S(e,y,3),y+=2,n=l[t-1]):17===o?(r=3+S(e,y,7),y+=3):18===o&&(r=11+S(e,y,127),y+=7);r--;)l[t++]=n}}const d=l.subarray(0,t),u=l.subarray(t);E=v(d),O=v(u),b=g(d,E,1),k=g(u,O,1)}else T(1);if(y>j){c&&T(0);break}}l&&d(m+131072);const x=(1<<E)-1,C=(1<<O)-1;let A=y;for(;;A=y){const n=b[$(e,y)&x],o=n>>>4;if(y+=15&n,y>j){c&&T(0);break}if(n||T(2),o<256)t[m++]=o;else{if(256===o){A=y,b=void 0;break}{let n=o-254;if(o>264){const t=o-257,r=i[t];n=S(e,y,(1<<r)-1)+f[t],y+=r}const r=k[$(e,y)&C],s=r>>>4;r||T(3),y+=15&r;let p=u[s];if(s>3){const t=a[s];p+=$(e,y)&(1<<t)-1,y+=t}if(y>j){c&&T(0);break}l&&d(m+131072);const g=m+n;for(;m<g;m+=4)t[m]=t[m-p],t[m+1]=t[m+1-p],t[m+2]=t[m+2-p],t[m+3]=t[m+3-p];m=g}}}n.l=b,n.p=A,n.b=m,n.f=p,b&&(p=1,n.m=E,n.d=k,n.n=O)}while(!p);return m===t.length?t:x(t,0,m)},C=(e,t)=>e[t]|e[t+1]<<8,A=(e,t)=>(e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24)>>>0,M=(e,t)=>A(e,t)+4294967296*A(e,t+4),z=(e,t)=>t+30+C(e,t+26)+C(e,t+28),P=(e,t,n)=>{const o=!(2048&C(e,t+8)),r=C(e,t+28),l=R(e.subarray(t+46,t+46+r),o),i=t+46+r,a=A(e,t+20),[s,c,f]=n&&4294967295===a?U(e,i):[a,A(e,t+24),A(e,t+42)],d=i+C(e,t+30);return[C(e,t+10),s,c,l,i+C(e,t+30)+C(e,t+32),f,R(e.subarray(d,d+C(e,t+32)),o)]},U=(e,t)=>{for(;1!=C(e,t);t+=4+C(e,t+2));return[M(e,t+12),M(e,t+4),M(e,t+20)]};let L;const N=new o(0);try{const e=new TextDecoder;e.decode(N,{stream:!0}),L=e}catch{}const _=e=>{for(let t="",o=0;;){let r=e[o++];const l=+(r>127)+ +(r>223)+ +(r>239);if(o+l>e.length)return[t,x(e,o-1)];l?3===l?(r=((15&r)<<18|(63&e[o++])<<12|(63&e[o++])<<6|63&e[o++])-65536,
|
|
3
|
+
t+=n(55296|r>>10,56320|1023&r)):t+=n(1&l?(31&r)<<6|63&e[o++]:(15&r)<<12|(63&e[o++])<<6|63&e[o++]):t+=n(r)}};function R(e,t){if(t){let t="";for(let o=0;o<e.length;o+=16384)t+=n.apply(null,e.subarray(o,o+16384));return t}if(L)return L.decode(e);{const[t,n]=_(e);return n.length&&T(8),t}}let B,D,J=console.log,q=document,F=Object.keys,I=new TextDecoder,Y=function(e,t){const n={};let r=e.length-22;for(;101010256!=A(e,r);--r)(!r||e.length-r>65558)&&T(13);let l=C(e,r+8);if(!l)return{};let i=A(e,r+16);const a=4294967295===i;a&&(r=A(e,r-12),101075792!=A(e,r)&&T(13),l=A(e,r+32),i=A(e,r+48));const s=t&&t.filter;for(let t=0;t<l;++t){const[t,r,l,c,f,d,u]=P(e,i,a),p=z(e,d);if(i=f,!s||s({name:c,size:r,originalSize:l,compression:t,comment:u})){let i;t?8===t?i=j(e.subarray(p,p+r),new o(l)):T(14,"unknown compression type "+t):i=x(e,p,p+r),i&&(n[c]={data:i,comment:u})}}return n},G=()=>{I=void 0,V=Q=X=G=void 0,B=D=void 0,W=K=H=Y=void 0},H=e=>{let t=/^(?:sha\d{3}-)?([a-z0-9+/=]{44,88})$/i.exec(e);if(t){let n=(e=t[1]).length;if(!(88^n&&64^n&&44^n))return`sha${64==n?384:88==n?512:256}-${e}`}},K=(e,t="text/javascript")=>URL.createObjectURL(new Blob([e],{type:t})),Q=(e,t)=>{B=e,D=t||""},V=(e,t,n=(()=>{}),o={})=>{let r=()=>{n(),J(`script ${t} is ready`)},l=D?q.querySelector(D).nextElementSibling:void 0,i=q.head[l?"insertBefore":"appendChild"](q.createElement("script"),l);i.id=t,o.type&&(i.type=o.type);let a=o.integrity;a?(i.integrity=a,i.crossOrigin="",i.onload=r,i.src=o.url||K(e)):(i.text=e,r())},W=e=>{let t,n=F(e);if(n.includes(te)){n=n.filter((e=>e!==te));let o,r=I.decode(e[te].data),l=JSON.parse(r),i=l.map.imports,a=[],s=new Map;F(i).forEach((t=>{for(let r,c=0;r=n[c++];){let[n,c]=r.split(".");if(new RegExp(`.*\\/?${n}${c?`(?:\\.${c})?`:""}$`).test(t)){let n=s.get(r);n||s.set(r,n=K(I.decode(e[r].data))),i[t]=n,r!==l.main||o||(o=n),a.push(r);break}}})),V(JSON.stringify(l.map,null,2),te,void 0,{type:"importmap"}),n=n.filter((e=>!a.includes(e))),t={entryMain:o,imdata:l}}return[n,t]},X=async(e,t=J)=>{let n=e+".zip",o=await fetch(`${B||"."}/${n}`).then((async e=>{let n=!!e.headers.get("content-encoding"),o=e.body.getReader(),r=(l=+e.headers.get("content-length"),n?l<<1|0:l);var l;let i=new Uint8Array(r),a=0;for(;;){let{done:e,value:n}=await o.read();if(e)break;i.set(n,a),a+=n.length,t(`loading zip: ${a.toLocaleString()} bytes(${a/r*100|0}%)`)}return n?i.slice(0,a):i})).catch((e=>{console.error(e)}));if(o&&o.length){t(`loaded ${n}, decompressing binary...`);let e=`unzip: ${n}`;console.time(e);let r=Y(o);return console.timeEnd(e),t(`${n} decompressed 😃`),new Promise((e=>{let[t,{entryMain:n,imdata:o}={}]=W(r),l=t.length,i=o?.main,a=()=>{! --l&&e()};for(let e,o=0;e=t[o++];){let t=r[e],o=e===i;V(I.decode(t.data),e,a,{integrity:H(t.comment),url:o?n:void 0,type:o?"module":void 0})}}))}throw new Error(`Could not load "${n}"`)},Z=async()=>{Z=void 0;let e=q.querySelector("script[data-csl-config]");if(e){let t=e.dataset.cslConfig;if(t){t=JSON.parse(t);let e=t.load?(Q(t.base,t.selector),Array.isArray(t.load)?t.load:[t.load]):Array.isArray(t)?t:"string"==typeof t?[t]:[],n=[];for(let t of e)n.push(X(t).catch((e=>e)));let o=(await Promise.all(n)).filter((e=>e&&e.name));setTimeout((()=>{let e="function"==typeof cslCallback?cslCallback:window[t.callback||"cslCallback"];"function"==typeof e&&e(o.length?o:void 0)}),60),t.cleanup&&G()}}};setTimeout(Z,99);const ee="v1.3.9",te="$importmap.dat";return t})()));
|
package/unzip-sync.d.ts
CHANGED
|
@@ -41,7 +41,7 @@ export interface UnzipFileInfo {
|
|
|
41
41
|
* @param file The info for the current file being processed
|
|
42
42
|
* @returns Whether or not to extract the current file
|
|
43
43
|
*/
|
|
44
|
-
export
|
|
44
|
+
export type UnzipFileFilter = (file: UnzipFileInfo) => boolean;
|
|
45
45
|
/**
|
|
46
46
|
* Options for expanding a ZIP archive
|
|
47
47
|
*/
|
package/webpack/index.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
/*! For license information please see index.js.LICENSE.txt */
|
|
2
|
-
(()=>{"use strict";var e={d:(t,n)=>{for(var r in n)e.o(n,r)&&!e.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:n[r]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{'undefined'!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:'Module'}),Object.defineProperty(e,'__esModule',{value:!0})}},t={};e.r(t),e.d(t,{IM_MAP_ID:()=>
|
|
3
|
-
;return
|
|
2
|
+
(()=>{"use strict";var e={d:(t,n)=>{for(var r in n)e.o(n,r)&&!e.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:n[r]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{'undefined'!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:'Module'}),Object.defineProperty(e,'__esModule',{value:!0})}},t={};e.r(t),e.d(t,{IM_MAP_ID:()=>te,cleanUp:()=>G,loadCompressedScript:()=>X,setConfig:()=>Q,unzipSync:()=>Y,version:()=>ee});const n=String.fromCharCode,r=Uint8Array,o=Uint16Array,l=Uint32Array,i=new r([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),a=new r([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),s=new r([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),c=(e,t)=>{const n=new o(31);for(let r=0;r<31;++r)n[r]=t+=1<<e[r-1];const r=new l(n[30]);for(let e=1;e<30;++e)for(let t=n[e];t<n[e+1];++t)r[t]=t-n[e]<<5|e;return[n,r]},[d,f]=c(i,2);d[28]=258,f[258]=28;const[u,p]=c(a,0),y=new o(32768);for(let e=0;e<32768;++e){let t=(43690&e)>>>1|(21845&e)<<1;t=(52428&t)>>>2|(13107&t)<<2,t=(61680&t)>>>4|(3855&t)<<4,y[e]=((65280&t)>>>8|(255&t)<<8)>>>1}const g=(e,t,n)=>{const r=e.length;let l=0;const i=new o(t);for(;l<r;++l)e[l]&&++i[e[l]-1];const a=new o(t);for(l=0;l<t;++l)a[l]=a[l-1]+i[l-1]<<1;let s;if(n){s=new o(1<<t);const n=15-t;for(l=0;l<r;++l)if(e[l]){const r=l<<4|e[l],o=t-e[l];let i=a[e[l]-1]++<<o;for(const e=i|(1<<o)-1;i<=e;++i)s[y[i]>>>n]=r}}else for(s=new o(r),l=0;l<r;++l)e[l]&&(s[l]=y[a[e[l]-1]++]>>>15-e[l]);return s},m=new r(288),h=new r(32);{let e=0;for(;e<144;)m[e++]=8;for(;e<256;)m[e++]=9;for(;e<280;)m[e++]=7;for(;e<288;)m[e++]=8;for(e=0;e<32;)h[e++]=5}const b=g(m,9,1),w=g(h,5,1),v=e=>{let t=e[0];for(let n=1;n<e.length;++n)e[n]>t&&(t=e[n]);return t},S=(e,t,n)=>{const r=t/8|0;return(e[r]|e[r+1]<<8)>>(7&t)&n},$=(e,t)=>{const n=t/8|0;return(e[n]|e[n+1]<<8|e[n+2]<<16)>>(7&t)},k=[,r,o,,l],E=(e,t,n)=>{(!t||t<0)&&(t=0),(!n||n>e.length)&&(n=e.length);const r=new k[e.BYTES_PER_ELEMENT](n-t);return r.set(e.subarray(t,n)),r},O=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"];let x=Error.captureStackTrace;const C=(e,t,n)=>{const r=new Error(t||O[e]);if(r.code=e,x&&x(r,C),!n)throw r;return r},T=(e,t,n)=>{const o=e.length;if(!o||n&&n.f&&!n.l)return t||new r(0);const l=!t||!!n,c=!n||n.i;!n&&(n={}),!t&&(t=new r(3*o));const f=e=>{let n=t.length;if(e>n){const o=new r(Math.max(2*n,e));o.set(t),t=o}};let p=n.f||0,y=n.p||0,m=n.b||0,h=n.l,k=n.d,O=n.m,x=n.n;const T=8*o;do{if(!h){p=S(e,y,1);const i=S(e,y+1,3);if(y+=3,!i){const r=4+((y+7)/8|0),i=e[r-4]|e[r-3]<<8,a=r+i;if(a>o){c&&C(0);break}l&&f(m+i),t.set(e.subarray(r,a),m),n.b=m+=i,n.p=y=8*a,n.f=p;continue}if(1===i)h=b,k=w,O=9,x=5;else if(2===i){const t=S(e,y,31)+257,n=S(e,y+10,15)+4,o=t+S(e,y+5,31)+1;y+=14;const l=new r(o),i=new r(19);for(let t=0;t<n;++t)i[s[t]]=S(e,y+3*t,7);y+=3*n;const a=v(i),c=(1<<a)-1,d=g(i,a,1);for(let t=0;t<o;){const n=d[S(e,y,c)];y+=15&n;const r=n>>>4;if(r<16)l[t++]=r;else{let n=0,o=0;for(16===r?(o=3+S(e,y,3),y+=2,n=l[t-1]):17===r?(o=3+S(e,y,7),y+=3):18===r&&(o=11+S(e,y,127),y+=7);o--;)l[t++]=n}}const f=l.subarray(0,t),u=l.subarray(t);O=v(f),x=v(u),h=g(f,O,1),k=g(u,x,1)}else C(1);if(y>T){c&&C(0);break}}l&&f(m+131072);const E=(1<<O)-1,A=(1<<x)-1;let M=y;for(;;M=y){const n=h[$(e,y)&E],r=n>>>4;if(y+=15&n,y>T){c&&C(0);break}if(n||C(2),r<256)t[m++]=r;else{if(256===r){M=y,h=void 0;break}{let n=r-254;if(r>264){const t=r-257,o=i[t];n=S(e,y,(1<<o)-1)+d[t],y+=o}const o=k[$(e,y)&A],s=o>>>4;o||C(3),y+=15&o;let p=u[s];if(s>3){const t=a[s];p+=$(e,y)&(1<<t)-1,y+=t}if(y>T){c&&C(0);break}l&&f(m+131072);const g=m+n;for(;m<g;m+=4)t[m]=t[m-p],t[m+1]=t[m+1-p],t[m+2]=t[m+2-p],t[m+3]=t[m+3-p];m=g}}}n.l=h,n.p=M,n.b=m,n.f=p,h&&(p=1,n.m=O,n.d=k,n.n=x)}while(!p);return m===t.length?t:E(t,0,m)},A=(e,t)=>e[t]|e[t+1]<<8,M=(e,t)=>(e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24)>>>0,z=(e,t)=>M(e,t)+4294967296*M(e,t+4),P=(e,t)=>t+30+A(e,t+26)+A(e,t+28),U=(e,t,n)=>{const r=!(2048&A(e,t+8)),o=A(e,t+28),l=N(e.subarray(t+46,t+46+o),r),i=t+46+o,a=M(e,t+20),[s,c,d]=n&&4294967295===a?j(e,i):[a,M(e,t+24),M(e,t+42)],f=i+A(e,t+30);return[A(e,t+10),s,c,l,i+A(e,t+30)+A(e,t+32),d,N(e.subarray(f,f+A(e,t+32)),r)]},j=(e,t)=>{for(;1!=A(e,t);t+=4+A(e,t+2));return[z(e,t+12),z(e,t+4),z(e,t+20)]};let _;const R=new r(0);try{const e=new TextDecoder;e.decode(R,{stream:!0}),_=e}catch{}const L=e=>{for(let t="",r=0;;){let o=e[r++];const l=+(o>127)+ +(o>223)+ +(o>239);if(r+l>e.length)return[t,E(e,r-1)];l?3===l?(o=((15&o)<<18|(63&e[r++])<<12|(63&e[r++])<<6|63&e[r++])-65536,t+=n(55296|o>>10,56320|1023&o)):t+=n(1&l?(31&o)<<6|63&e[r++]:(15&o)<<12|(63&e[r++])<<6|63&e[r++]):t+=n(o)}};function N(e,t){if(t){let t="";for(let r=0;r<e.length;r+=16384)t+=n.apply(null,e.subarray(r,r+16384));return t}if(_)return _.decode(e);{const[t,n]=L(e)
|
|
3
|
+
;return n.length&&C(8),t}}let B,D,J=console.log,q=document,F=Object.keys,I=new TextDecoder,Y=function(e,t){const n={};let o=e.length-22;for(;101010256!=M(e,o);--o)(!o||e.length-o>65558)&&C(13);let l=A(e,o+8);if(!l)return{};let i=M(e,o+16);const a=4294967295===i;a&&(o=M(e,o-12),101075792!=M(e,o)&&C(13),l=M(e,o+32),i=M(e,o+48));const s=t&&t.filter;for(let t=0;t<l;++t){const[t,o,l,c,d,f,u]=U(e,i,a),p=P(e,f);if(i=d,!s||s({name:c,size:o,originalSize:l,compression:t,comment:u})){let i;t?8===t?i=T(e.subarray(p,p+o),new r(l)):C(14,"unknown compression type "+t):i=E(e,p,p+o),i&&(n[c]={data:i,comment:u})}}return n},G=()=>{I=void 0,V=Q=X=G=void 0,B=D=void 0,W=K=H=Y=void 0},H=e=>{let t=/^(?:sha\d{3}-)?([a-z0-9+/=]{44,88})$/i.exec(e);if(t){let n=(e=t[1]).length;if(!(88^n&&64^n&&44^n))return`sha${64==n?384:88==n?512:256}-${e}`}},K=(e,t="text/javascript")=>URL.createObjectURL(new Blob([e],{type:t})),Q=(e,t)=>{B=e,D=t||""},V=(e,t,n=(()=>{}),r={})=>{let o=()=>{n(),J(`script ${t} is ready`)},l=D?q.querySelector(D).nextElementSibling:void 0,i=q.head[l?"insertBefore":"appendChild"](q.createElement("script"),l);i.id=t,r.type&&(i.type=r.type);let a=r.integrity;a?(i.integrity=a,i.crossOrigin="",i.onload=o,i.src=r.url||K(e)):(i.text=e,o())},W=e=>{let t,n=F(e);if(n.includes(te)){n=n.filter((e=>e!==te));let r,o=I.decode(e[te].data),l=JSON.parse(o),i=l.map.imports,a=[],s=new Map;F(i).forEach((t=>{for(let o,c=0;o=n[c++];){let[n,c]=o.split(".");if(new RegExp(`.*\\/?${n}${c?`(?:\\.${c})?`:""}$`).test(t)){let n=s.get(o);n||s.set(o,n=K(I.decode(e[o].data))),i[t]=n,o!==l.main||r||(r=n),a.push(o);break}}})),V(JSON.stringify(l.map,null,2),te,void 0,{type:"importmap"}),n=n.filter((e=>!a.includes(e))),t={entryMain:r,imdata:l}}return[n,t]},X=async(e,t=J)=>{let n=e+".zip",r=await fetch(`${B||"."}/${n}`).then((async e=>{let n=!!e.headers.get("content-encoding"),r=e.body.getReader(),o=(l=+e.headers.get("content-length"),n?l<<1|0:l);var l;let i=new Uint8Array(o),a=0;for(;;){let{done:e,value:n}=await r.read();if(e)break;i.set(n,a),a+=n.length,t(`loading zip: ${a.toLocaleString()} bytes(${a/o*100|0}%)`)}return n?i.slice(0,a):i})).catch((e=>{console.error(e)}));if(r&&r.length){t(`loaded ${n}, decompressing binary...`);let e=`unzip: ${n}`;console.time(e);let o=Y(r);return console.timeEnd(e),t(`${n} decompressed 😃`),new Promise((e=>{let[t,{entryMain:n,imdata:r}={}]=W(o),l=t.length,i=r?.main,a=()=>{! --l&&e()};for(let e,r=0;e=t[r++];){let t=o[e],r=e===i;V(I.decode(t.data),e,a,{integrity:H(t.comment),url:r?n:void 0,type:r?"module":void 0})}}))}throw new Error(`Could not load "${n}"`)},Z=async()=>{Z=void 0;let e=q.querySelector("script[data-csl-config]");if(e){let t=e.dataset.cslConfig;if(t){t=JSON.parse(t);let e=t.load?(Q(t.base,t.selector),Array.isArray(t.load)?t.load:[t.load]):Array.isArray(t)?t:"string"==typeof t?[t]:[],n=[];for(let t of e)n.push(X(t).catch((e=>e)));let r=(await Promise.all(n)).filter((e=>e&&e.name));setTimeout((()=>{let e="function"==typeof cslCallback?cslCallback:window[t.callback||"cslCallback"];"function"==typeof e&&e(r.length?r:void 0)}),60),t.cleanup&&G()}}};setTimeout(Z,99);const ee="v1.3.9",te="$importmap.dat";module.exports=t})();
|
package/webpack-esm/index.mjs
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
/*! For license information please see index.mjs.LICENSE.txt */
|
|
2
|
-
var e={d:(t,n)=>{for(var r in n)e.o(n,r)&&!e.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:n[r]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t)},t={};e.d(t,{Hx:()=>
|
|
3
|
-
;const i=4294967295===a;i&&(o=
|
|
2
|
+
var e={d:(t,n)=>{for(var r in n)e.o(n,r)&&!e.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:n[r]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t)},t={};e.d(t,{Hx:()=>te,Lx:()=>I,aN:()=>W,v6:()=>K,GZ:()=>H,i8:()=>ee});const n=String.fromCharCode,r=Uint8Array,o=Uint16Array,l=Uint32Array,a=new r([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),i=new r([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),s=new r([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),c=(e,t)=>{const n=new o(31);for(let r=0;r<31;++r)n[r]=t+=1<<e[r-1];const r=new l(n[30]);for(let e=1;e<30;++e)for(let t=n[e];t<n[e+1];++t)r[t]=t-n[e]<<5|e;return[n,r]},[f,d]=c(a,2);f[28]=258,d[258]=28;const[u,p]=c(i,0),y=new o(32768);for(let e=0;e<32768;++e){let t=(43690&e)>>>1|(21845&e)<<1;t=(52428&t)>>>2|(13107&t)<<2,t=(61680&t)>>>4|(3855&t)<<4,y[e]=((65280&t)>>>8|(255&t)<<8)>>>1}const g=(e,t,n)=>{const r=e.length;let l=0;const a=new o(t);for(;l<r;++l)e[l]&&++a[e[l]-1];const i=new o(t);for(l=0;l<t;++l)i[l]=i[l-1]+a[l-1]<<1;let s;if(n){s=new o(1<<t);const n=15-t;for(l=0;l<r;++l)if(e[l]){const r=l<<4|e[l],o=t-e[l];let a=i[e[l]-1]++<<o;for(const e=a|(1<<o)-1;a<=e;++a)s[y[a]>>>n]=r}}else for(s=new o(r),l=0;l<r;++l)e[l]&&(s[l]=y[i[e[l]-1]++]>>>15-e[l]);return s},m=new r(288),h=new r(32);{let e=0;for(;e<144;)m[e++]=8;for(;e<256;)m[e++]=9;for(;e<280;)m[e++]=7;for(;e<288;)m[e++]=8;for(e=0;e<32;)h[e++]=5}const w=g(m,9,1),b=g(h,5,1),v=e=>{let t=e[0];for(let n=1;n<e.length;++n)e[n]>t&&(t=e[n]);return t},$=(e,t,n)=>{const r=t/8|0;return(e[r]|e[r+1]<<8)>>(7&t)&n},k=(e,t)=>{const n=t/8|0;return(e[n]|e[n+1]<<8|e[n+2]<<16)>>(7&t)},x=[,r,o,,l],E=(e,t,n)=>{(!t||t<0)&&(t=0),(!n||n>e.length)&&(n=e.length);const r=new x[e.BYTES_PER_ELEMENT](n-t);return r.set(e.subarray(t,n)),r},S=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"];let C=Error.captureStackTrace;const O=(e,t,n)=>{const r=new Error(t||S[e]);if(r.code=e,C&&C(r,O),!n)throw r;return r},A=(e,t,n)=>{const o=e.length;if(!o||n&&n.f&&!n.l)return t||new r(0);const l=!t||!!n,c=!n||n.i;!n&&(n={}),!t&&(t=new r(3*o));const d=e=>{let n=t.length;if(e>n){const o=new r(Math.max(2*n,e));o.set(t),t=o}};let p=n.f||0,y=n.p||0,m=n.b||0,h=n.l,x=n.d,S=n.m,C=n.n;const A=8*o;do{if(!h){p=$(e,y,1);const a=$(e,y+1,3);if(y+=3,!a){const r=4+((y+7)/8|0),a=e[r-4]|e[r-3]<<8,i=r+a;if(i>o){c&&O(0);break}l&&d(m+a),t.set(e.subarray(r,i),m),n.b=m+=a,n.p=y=8*i,n.f=p;continue}if(1===a)h=w,x=b,S=9,C=5;else if(2===a){const t=$(e,y,31)+257,n=$(e,y+10,15)+4,o=t+$(e,y+5,31)+1;y+=14;const l=new r(o),a=new r(19);for(let t=0;t<n;++t)a[s[t]]=$(e,y+3*t,7);y+=3*n;const i=v(a),c=(1<<i)-1,f=g(a,i,1);for(let t=0;t<o;){const n=f[$(e,y,c)];y+=15&n;const r=n>>>4;if(r<16)l[t++]=r;else{let n=0,o=0;for(16===r?(o=3+$(e,y,3),y+=2,n=l[t-1]):17===r?(o=3+$(e,y,7),y+=3):18===r&&(o=11+$(e,y,127),y+=7);o--;)l[t++]=n}}const d=l.subarray(0,t),u=l.subarray(t);S=v(d),C=v(u),h=g(d,S,1),x=g(u,C,1)}else O(1);if(y>A){c&&O(0);break}}l&&d(m+131072);const E=(1<<S)-1,z=(1<<C)-1;let T=y;for(;;T=y){const n=h[k(e,y)&E],r=n>>>4;if(y+=15&n,y>A){c&&O(0);break}if(n||O(2),r<256)t[m++]=r;else{if(256===r){T=y,h=void 0;break}{let n=r-254;if(r>264){const t=r-257,o=a[t];n=$(e,y,(1<<o)-1)+f[t],y+=o}const o=x[k(e,y)&z],s=o>>>4;o||O(3),y+=15&o;let p=u[s];if(s>3){const t=i[s];p+=k(e,y)&(1<<t)-1,y+=t}if(y>A){c&&O(0);break}l&&d(m+131072);const g=m+n;for(;m<g;m+=4)t[m]=t[m-p],t[m+1]=t[m+1-p],t[m+2]=t[m+2-p],t[m+3]=t[m+3-p];m=g}}}n.l=h,n.p=T,n.b=m,n.f=p,h&&(p=1,n.m=S,n.d=x,n.n=C)}while(!p);return m===t.length?t:E(t,0,m)},z=(e,t)=>e[t]|e[t+1]<<8,T=(e,t)=>(e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24)>>>0,U=(e,t)=>T(e,t)+4294967296*T(e,t+4),M=(e,t)=>t+30+z(e,t+26)+z(e,t+28),L=(e,t,n)=>{const r=!(2048&z(e,t+8)),o=z(e,t+28),l=_(e.subarray(t+46,t+46+o),r),a=t+46+o,i=T(e,t+20),[s,c,f]=n&&4294967295===i?N(e,a):[i,T(e,t+24),T(e,t+42)],d=a+z(e,t+30);return[z(e,t+10),s,c,l,a+z(e,t+30)+z(e,t+32),f,_(e.subarray(d,d+z(e,t+32)),r)]},N=(e,t)=>{for(;1!=z(e,t);t+=4+z(e,t+2));return[U(e,t+12),U(e,t+4),U(e,t+20)]};let P;const j=new r(0);try{const e=new TextDecoder;e.decode(j,{stream:!0}),P=e}catch{}const R=e=>{for(let t="",r=0;;){let o=e[r++];const l=+(o>127)+ +(o>223)+ +(o>239);if(r+l>e.length)return[t,E(e,r-1)];l?3===l?(o=((15&o)<<18|(63&e[r++])<<12|(63&e[r++])<<6|63&e[r++])-65536,t+=n(55296|o>>10,56320|1023&o)):t+=n(1&l?(31&o)<<6|63&e[r++]:(15&o)<<12|(63&e[r++])<<6|63&e[r++]):t+=n(o)}};function _(e,t){if(t){let t="";for(let r=0;r<e.length;r+=16384)t+=n.apply(null,e.subarray(r,r+16384));return t}if(P)return P.decode(e);{const[t,n]=R(e);return n.length&&O(8),t}}let B,D,J=console.log,q=document,F=Object.keys,G=new TextDecoder,H=function(e,t){const n={};let o=e.length-22;for(;101010256!=T(e,o);--o)(!o||e.length-o>65558)&&O(13);let l=z(e,o+8);if(!l)return{};let a=T(e,o+16)
|
|
3
|
+
;const i=4294967295===a;i&&(o=T(e,o-12),101075792!=T(e,o)&&O(13),l=T(e,o+32),a=T(e,o+48));const s=t&&t.filter;for(let t=0;t<l;++t){const[t,o,l,c,f,d,u]=L(e,a,i),p=M(e,d);if(a=f,!s||s({name:c,size:o,originalSize:l,compression:t,comment:u})){let a;t?8===t?a=A(e.subarray(p,p+o),new r(l)):O(14,"unknown compression type "+t):a=E(e,p,p+o),a&&(n[c]={data:a,comment:u})}}return n},I=()=>{G=void 0,Q=K=W=I=void 0,B=D=void 0,V=Y=Z=H=void 0},Z=e=>{let t=/^(?:sha\d{3}-)?([a-z0-9+/=]{44,88})$/i.exec(e);if(t){let n=(e=t[1]).length;if(!(88^n&&64^n&&44^n))return`sha${64==n?384:88==n?512:256}-${e}`}},Y=(e,t="text/javascript")=>URL.createObjectURL(new Blob([e],{type:t})),K=(e,t)=>{B=e,D=t||""},Q=(e,t,n=(()=>{}),r={})=>{let o=()=>{n(),J(`script ${t} is ready`)},l=D?q.querySelector(D).nextElementSibling:void 0,a=q.head[l?"insertBefore":"appendChild"](q.createElement("script"),l);a.id=t,r.type&&(a.type=r.type);let i=r.integrity;i?(a.integrity=i,a.crossOrigin="",a.onload=o,a.src=r.url||Y(e)):(a.text=e,o())},V=e=>{let t,n=F(e);if(n.includes(te)){n=n.filter((e=>e!==te));let r,o=G.decode(e[te].data),l=JSON.parse(o),a=l.map.imports,i=[],s=new Map;F(a).forEach((t=>{for(let o,c=0;o=n[c++];){let[n,c]=o.split(".");if(new RegExp(`.*\\/?${n}${c?`(?:\\.${c})?`:""}$`).test(t)){let n=s.get(o);n||s.set(o,n=Y(G.decode(e[o].data))),a[t]=n,o!==l.main||r||(r=n),i.push(o);break}}})),Q(JSON.stringify(l.map,null,2),te,void 0,{type:"importmap"}),n=n.filter((e=>!i.includes(e))),t={entryMain:r,imdata:l}}return[n,t]},W=async(e,t=J)=>{let n=e+".zip",r=await fetch(`${B||"."}/${n}`).then((async e=>{let n=!!e.headers.get("content-encoding"),r=e.body.getReader(),o=(l=+e.headers.get("content-length"),n?l<<1|0:l);var l;let a=new Uint8Array(o),i=0;for(;;){let{done:e,value:n}=await r.read();if(e)break;a.set(n,i),i+=n.length,t(`loading zip: ${i.toLocaleString()} bytes(${i/o*100|0}%)`)}return n?a.slice(0,i):a})).catch((e=>{console.error(e)}));if(r&&r.length){t(`loaded ${n}, decompressing binary...`);let e=`unzip: ${n}`;console.time(e);let o=H(r);return console.timeEnd(e),t(`${n} decompressed 😃`),new Promise((e=>{let[t,{entryMain:n,imdata:r}={}]=V(o),l=t.length,a=r?.main,i=()=>{! --l&&e()};for(let e,r=0;e=t[r++];){let t=o[e],r=e===a;Q(G.decode(t.data),e,i,{integrity:Z(t.comment),url:r?n:void 0,type:r?"module":void 0})}}))}throw new Error(`Could not load "${n}"`)},X=async()=>{X=void 0;let e=q.querySelector("script[data-csl-config]");if(e){let t=e.dataset.cslConfig;if(t){t=JSON.parse(t);let e=t.load?(K(t.base,t.selector),Array.isArray(t.load)?t.load:[t.load]):Array.isArray(t)?t:"string"==typeof t?[t]:[],n=[];for(let t of e)n.push(W(t).catch((e=>e)));let r=(await Promise.all(n)).filter((e=>e&&e.name));setTimeout((()=>{let e="function"==typeof cslCallback?cslCallback:window[t.callback||"cslCallback"];"function"==typeof e&&e(r.length?r:void 0)}),60),t.cleanup&&I()}}};setTimeout(X,99);const ee="v1.3.9",te="$importmap.dat";var ne=t.Hx,re=t.Lx,oe=t.aN,le=t.v6,ae=t.GZ,ie=t.i8;export{ne as IM_MAP_ID,re as cleanUp,oe as loadCompressedScript,le as setConfig,ae as unzipSync,ie as version};
|