@synapsmedia/ghost-theme-editor 0.2.2 → 0.3.0

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.
@@ -1,4 +1,4 @@
1
- (function(){var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),s=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},c=(n,r,a)=>(a=n==null?{}:e(i(n)),s(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n)),l=`http://www.w3.org/2000/svg`;function u(e,t){let n=document.createElementNS(l,`svg`);n.setAttribute(`xmlns`,l),n.setAttribute(`width`,`16`),n.setAttribute(`height`,`16`),n.setAttribute(`viewBox`,`0 0 16 16`),n.setAttribute(`fill`,`none`),n.setAttribute(`stroke`,`currentColor`),n.setAttribute(`stroke-width`,`1.5`),n.setAttribute(`stroke-linecap`,`round`),n.setAttribute(`stroke-linejoin`,`round`),n.setAttribute(`aria-hidden`,`true`);for(let[t,r]of Object.entries(e||{}))n.setAttribute(t,r);for(let e of t||[])n.appendChild(e);return n}function d(e){let t=document.createElementNS(l,`path`);return t.setAttribute(`d`,e),t}function f(e,t,n,r){let i=document.createElementNS(l,`circle`);return i.setAttribute(`cx`,String(e)),i.setAttribute(`cy`,String(t)),i.setAttribute(`r`,String(n)),r&&i.setAttribute(`fill`,`currentColor`),i}var p={folderClosed:()=>u({},[d(`M1.5 4.5 A1 1 0 0 1 2.5 3.5 H6 l2 2 H13.5 A1 1 0 0 1 14.5 6.5 V12 A1 1 0 0 1 13.5 13 H2.5 A1 1 0 0 1 1.5 12 Z`)]),folderOpen:()=>u({},[d(`M1.5 12.5 V4.5 A1 1 0 0 1 2.5 3.5 H6 l2 2 H13.5 A1 1 0 0 1 14.5 6.5 V7.5 M1.5 12.5 L3 7.5 H15 L13.5 12.5 Z`)]),file:()=>u({},[d(`M4 1.5 H9 L12.5 5 V14 A0.5 0.5 0 0 1 12 14.5 H4 A0.5 0.5 0 0 1 3.5 14 V2 A0.5 0.5 0 0 1 4 1.5 Z`),d(`M9 1.5 V5 H12.5`)]),fileText:()=>u({},[d(`M4 1.5 H9 L12.5 5 V14 A0.5 0.5 0 0 1 12 14.5 H4 A0.5 0.5 0 0 1 3.5 14 V2 A0.5 0.5 0 0 1 4 1.5 Z`),d(`M9 1.5 V5 H12.5`),d(`M5.5 8 H10.5`),d(`M5.5 10.5 H10.5`),d(`M5.5 13 H8.5`)]),close:()=>u({},[d(`M3 3 L13 13`),d(`M13 3 L3 13`)]),chevronRight:()=>u({},[d(`M6 4 L10 8 L6 12`)]),chevronDown:()=>u({},[d(`M4 6 L8 10 L12 6`)]),dot:()=>u({},[f(8,8,3,!0)]),edit:()=>u({},[d(`M2 14 L5 13 L13 5 L11 3 L3 11 Z`),d(`M10 4 L12 6`)])},m=class{constructor({files:e,onSelect:t,isActive:n,onCreateFile:r,onCreateFolder:i,onRename:a,onDelete:o}){this.files=e,this.onSelect=t,this.isActive=n,this.onCreateFile=r,this.onCreateFolder=i,this.onRename=a,this.onDelete=o,this.expanded=new Set([``]),this._contextMenu=null,this._onDocMouseDown=this._onDocMouseDown.bind(this),this.el=document.createElement(`nav`),this.el.className=`gte-tree`,this.el.setAttribute(`aria-label`,`Theme files`),this.el.addEventListener(`contextmenu`,e=>{e.target.closest(`.gte-tree__node`)||this._showContextMenu(e,[{label:`New File`,action:()=>{var e;return(e=this.onCreateFile)==null?void 0:e.call(this,``)}},{label:`New Folder`,action:()=>{var e;return(e=this.onCreateFolder)==null?void 0:e.call(this,``)}}])})}_showContextMenu(e,t){e.preventDefault(),e.stopPropagation(),this._dismissMenu();let n=document.createElement(`ul`);n.className=`gte-context-menu`;for(let{label:e,action:r,danger:i}of t){let t=document.createElement(`li`);t.className=`gte-context-menu__item`+(i?` gte-context-menu__item--danger`:``),t.textContent=e,t.addEventListener(`mousedown`,e=>{e.preventDefault(),e.stopPropagation(),this._dismissMenu(),r()}),n.appendChild(t)}document.body.appendChild(n),this._contextMenu=n;let r=window.innerWidth,i=window.innerHeight,a=t.length*34+8,o=Math.max(4,Math.min(e.clientX,r-188)),s=Math.max(4,Math.min(e.clientY,i-a-4));n.style.left=`${o}px`,n.style.top=`${s}px`,setTimeout(()=>{document.addEventListener(`mousedown`,this._onDocMouseDown,!0)},0)}_onDocMouseDown(e){this._contextMenu&&!this._contextMenu.contains(e.target)&&this._dismissMenu()}_dismissMenu(){this._contextMenu&&(this._contextMenu.remove(),this._contextMenu=null),document.removeEventListener(`mousedown`,this._onDocMouseDown,!0)}buildTree(){let e={type:`dir`,name:``,path:``,children:new Map},t=Object.keys(this.files).sort();for(let n of t){let t=n.split(`/`),r=e;for(let e=0;e<t.length;e++){let i=t[e];if(e===t.length-1)r.children.set(i,{type:`file`,name:i,path:n,file:this.files[n]});else{let n=r.children.get(i);n||(n={type:`dir`,name:i,path:t.slice(0,e+1).join(`/`)+`/`,children:new Map},r.children.set(i,n)),r=n}}}if(this.expanded.size===1)for(let t of e.children.values())t.type===`dir`&&this.expanded.add(t.path);return e}render(){if(this.el.innerHTML=``,Object.keys(this.files).length===0){let e=document.createElement(`div`);e.className=`gte-tree__empty`,e.textContent=`No files.`,this.el.appendChild(e);return}let e=this.buildTree(),t=document.createElement(`ul`);this.renderChildren(e,t,0),this.el.appendChild(t)}renderChildren(e,t,n){let r=[...e.children.values()].sort((e,t)=>e.type===t.type?e.name.localeCompare(t.name):e.type===`dir`?-1:1);for(let e of r){let r=document.createElement(`li`),i=document.createElement(`div`);i.className=`gte-tree__node`,i.style.paddingLeft=`${8+n*12}px`;let a=document.createElement(`span`);a.className=`gte-tree__chev`;let o=document.createElement(`span`);o.className=`gte-tree__icon`;let s=document.createElement(`span`);if(s.className=`gte-tree__label`,s.textContent=e.name,e.type===`dir`){let t=this.expanded.has(e.path);if(a.appendChild(t?p.chevronDown():p.chevronRight()),o.appendChild(t?p.folderOpen():p.folderClosed()),i.appendChild(a),i.appendChild(o),i.appendChild(s),i.addEventListener(`click`,()=>{this.expanded.has(e.path)?this.expanded.delete(e.path):this.expanded.add(e.path),this.render()}),i.addEventListener(`contextmenu`,t=>{this._showContextMenu(t,[{label:`New File`,action:()=>{var t;return(t=this.onCreateFile)==null?void 0:t.call(this,e.path)}},{label:`New Folder`,action:()=>{var t;return(t=this.onCreateFolder)==null?void 0:t.call(this,e.path)}},{label:`Rename`,action:()=>{var t;return(t=this.onRename)==null?void 0:t.call(this,e.path,`dir`)}},{label:`Delete`,action:()=>{var t;return(t=this.onDelete)==null?void 0:t.call(this,e.path,`dir`)},danger:!0}])}),r.appendChild(i),t){let t=document.createElement(`ul`);this.renderChildren(e,t,n+1),r.appendChild(t)}}else{a.className=`gte-tree__chev gte-tree__chev--leaf`;let t=e.file,n=t.editable;if(o.appendChild(n?p.fileText():p.file()),i.appendChild(a),i.appendChild(o),i.appendChild(s),t.modified){let e=document.createElement(`span`);e.className=`gte-tree__dirty`,e.title=`Modified`,i.appendChild(e)}n||(i.classList.add(`gte-tree__node--binary`),i.title=`Binary file (preserved unchanged)`),this.isActive&&this.isActive(t.path)&&i.classList.add(`gte-tree__node--active`),i.addEventListener(`click`,()=>{n&&this.onSelect&&this.onSelect(t.path)}),i.addEventListener(`contextmenu`,t=>{this._showContextMenu(t,[{label:`Rename`,action:()=>{var t;return(t=this.onRename)==null?void 0:t.call(this,e.path,`file`)}},{label:`Delete`,action:()=>{var t;return(t=this.onDelete)==null?void 0:t.call(this,e.path,`file`)},danger:!0}])}),r.appendChild(i)}t.appendChild(r)}}refresh(){this.render()}},h=new Set([`hbs`,`handlebars`,`html`,`htm`,`css`,`scss`,`sass`,`less`,`js`,`mjs`,`cjs`,`json`,`md`,`markdown`,`txt`,`yml`,`yaml`,`svg`,`xml`]);function g(e){let t=e.lastIndexOf(`.`);return t<0||t<Math.max(e.lastIndexOf(`/`),e.lastIndexOf(`\\`))?``:e.slice(t+1).toLowerCase()}function _(e){return h.has(g(e))}function v(e){switch(g(e)){case`hbs`:case`handlebars`:return`handlebars`;case`html`:case`htm`:return`html`;case`css`:case`scss`:case`sass`:case`less`:return`css`;case`js`:case`mjs`:case`cjs`:return`javascript`;case`json`:return`json`;case`md`:case`markdown`:return`markdown`;case`yml`:case`yaml`:return`yaml`;case`svg`:case`xml`:return`xml`;default:return`plaintext`}}var y=`https://cdn.jsdelivr.net/npm/monaco-editor@0.55.1/min/vs`,b=null;function x(){return b||(b=S(),b)}async function S(){if(window.monaco)return window.monaco;let e=window.require;window.MonacoEnvironment={getWorker(e,t){let n;n=t===`json`?`${y}/language/json/json.worker.js`:t===`css`||t===`scss`||t===`less`?`${y}/language/css/css.worker.js`:t===`html`||t===`handlebars`||t===`razor`?`${y}/language/html/html.worker.js`:t===`typescript`||t===`javascript`?`${y}/language/typescript/ts.worker.js`:`${y}/editor/editor.worker.js`;let r=new Blob([`importScripts('${n}');`],{type:`application/javascript`});return new Worker(URL.createObjectURL(r))}},await C(`${y}/loader.js`);let t=window.require;return t.config({paths:{vs:y}}),await new Promise((e,n)=>{t([`vs/editor/editor.main`],e,n)}),e&&(window.require=function(n,r,i){return Array.isArray(n)?t(n,r,i):e(n)},Object.assign(window.require,e)),window.monaco}function C(e){return new Promise((t,n)=>{if(document.querySelector(`script[src="${e}"]`)){t();return}let r=document.createElement(`script`);r.src=e,r.onload=t,r.onerror=()=>n(Error(`Failed to load Monaco from CDN: ${e}`)),document.head.appendChild(r)})}var w=class{constructor({onChange:e}){this.onChange=e,this.currentPath=null,this._editor=null,this._models=new Map,this._creating=!1,this.el=document.createElement(`div`),this.el.className=`gte-editor`,this.breadcrumb=document.createElement(`div`),this.breadcrumb.className=`gte-editor__breadcrumb`,this.el.appendChild(this.breadcrumb),this.body=document.createElement(`div`),this.body.className=`gte-editor__body`,this.body.style.display=`flex`,this.body.style.flex=`1`,this.body.style.minHeight=`0`,this.el.appendChild(this.body),this.placeholder=document.createElement(`div`),this.placeholder.className=`gte-editor__placeholder`,this.placeholder.textContent=`Select a file from the tree to start editing.`,this.body.appendChild(this.placeholder),this.monacoContainer=document.createElement(`div`),this.monacoContainer.className=`gte-editor__monaco`,this.monacoContainer.style.display=`none`,this.body.appendChild(this.monacoContainer),this.renderBreadcrumb(null),x().catch(()=>{})}async _createEditor(){if(!(this._editor||this._creating)){this._creating=!0;try{let e=await x();if(this._editor)return;this._editor=e.editor.create(this.monacoContainer,{automaticLayout:!0,minimap:{enabled:!1},scrollBeyondLastLine:!1,wordWrap:`off`,theme:`vs-dark`,fontSize:13,lineHeight:20,fontFamily:`ui-monospace, "SF Mono", Menlo, Consolas, "Roboto Mono", monospace`,tabSize:2,insertSpaces:!0,renderLineHighlight:`gutter`,smoothScrolling:!0,scrollbar:{verticalScrollbarSize:8,horizontalScrollbarSize:8}}),this._editor.onDidChangeModelContent(()=>{this.currentPath&&this.onChange&&this.onChange(this.currentPath,this._editor.getValue())})}finally{this._creating=!1}}}_applyFile(e,t){let n=window.monaco,r=v(e),i=this._models.get(e);i?i.getValue()!==(t==null?``:t)&&i.setValue(t==null?``:t):(i=n.editor.createModel(t==null?``:t,r),this._models.set(e,i)),this._editor.setModel(i),this._editor.focus()}renderBreadcrumb(e){if(this.breadcrumb.innerHTML=``,!e){let e=document.createElement(`span`);e.textContent=`No file selected`,this.breadcrumb.appendChild(e);return}let t=document.createElement(`span`),n=document.createElement(`strong`);n.textContent=e,t.appendChild(n),this.breadcrumb.appendChild(t);let r=document.createElement(`span`);r.className=`gte-lang`,r.textContent=v(e),this.breadcrumb.appendChild(r)}async setFile(e,t){if(this.currentPath=e,e===null){this.monacoContainer.style.display=`none`,this.placeholder.style.display=`flex`,this.renderBreadcrumb(null);return}this.monacoContainer.style.display=`block`,this.placeholder.style.display=`none`,this.renderBreadcrumb(e),await this._createEditor(),this.currentPath!==null&&this._applyFile(this.currentPath,t)}getValue(){return this._editor?this._editor.getValue():``}dispose(){for(let e of this._models.values())e.dispose();this._models.clear(),this._editor&&(this._editor.dispose(),this._editor=null)}},T=c(o(((e,t)=>{(function(n){typeof e==`object`&&t!==void 0?t.exports=n():typeof define==`function`&&define.amd?define([],n):(typeof window<`u`?window:typeof global<`u`?global:typeof self<`u`?self:this).JSZip=n()})(function(){return function e(t,n,r){function i(o,s){if(!n[o]){if(!t[o]){var c=typeof require==`function`&&require;if(!s&&c)return c(o,!0);if(a)return a(o,!0);var l=Error(`Cannot find module '`+o+`'`);throw l.code=`MODULE_NOT_FOUND`,l}var u=n[o]={exports:{}};t[o][0].call(u.exports,function(e){var n=t[o][1][e];return i(n||e)},u,u.exports,e,t,n,r)}return n[o].exports}for(var a=typeof require==`function`&&require,o=0;o<r.length;o++)i(r[o]);return i}({1:[function(e,t,n){"use strict";var r=e(`./utils`),i=e(`./support`),a=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=`;n.encode=function(e){for(var t,n,i,o,s,c,l,u=[],d=0,f=e.length,p=f,m=r.getTypeOf(e)!==`string`;d<e.length;)p=f-d,i=m?(t=e[d++],n=d<f?e[d++]:0,d<f?e[d++]:0):(t=e.charCodeAt(d++),n=d<f?e.charCodeAt(d++):0,d<f?e.charCodeAt(d++):0),o=t>>2,s=(3&t)<<4|n>>4,c=1<p?(15&n)<<2|i>>6:64,l=2<p?63&i:64,u.push(a.charAt(o)+a.charAt(s)+a.charAt(c)+a.charAt(l));return u.join(``)},n.decode=function(e){var t,n,r,o,s,c,l=0,u=0,d=`data:`;if(e.substr(0,d.length)===d)throw Error(`Invalid base64 input, it looks like a data url.`);var f,p=3*(e=e.replace(/[^A-Za-z0-9+/=]/g,``)).length/4;if(e.charAt(e.length-1)===a.charAt(64)&&p--,e.charAt(e.length-2)===a.charAt(64)&&p--,p%1!=0)throw Error(`Invalid base64 input, bad content length.`);for(f=i.uint8array?new Uint8Array(0|p):Array(0|p);l<e.length;)t=a.indexOf(e.charAt(l++))<<2|(o=a.indexOf(e.charAt(l++)))>>4,n=(15&o)<<4|(s=a.indexOf(e.charAt(l++)))>>2,r=(3&s)<<6|(c=a.indexOf(e.charAt(l++))),f[u++]=t,s!==64&&(f[u++]=n),c!==64&&(f[u++]=r);return f}},{"./support":30,"./utils":32}],2:[function(e,t,n){"use strict";var r=e(`./external`),i=e(`./stream/DataWorker`),a=e(`./stream/Crc32Probe`),o=e(`./stream/DataLengthProbe`);function s(e,t,n,r,i){this.compressedSize=e,this.uncompressedSize=t,this.crc32=n,this.compression=r,this.compressedContent=i}s.prototype={getContentWorker:function(){var e=new i(r.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new o(`data_length`)),t=this;return e.on(`end`,function(){if(this.streamInfo.data_length!==t.uncompressedSize)throw Error(`Bug : uncompressed data size mismatch`)}),e},getCompressedWorker:function(){return new i(r.Promise.resolve(this.compressedContent)).withStreamInfo(`compressedSize`,this.compressedSize).withStreamInfo(`uncompressedSize`,this.uncompressedSize).withStreamInfo(`crc32`,this.crc32).withStreamInfo(`compression`,this.compression)}},s.createWorkerFrom=function(e,t,n){return e.pipe(new a).pipe(new o(`uncompressedSize`)).pipe(t.compressWorker(n)).pipe(new o(`compressedSize`)).withStreamInfo(`compression`,t)},t.exports=s},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(e,t,n){"use strict";var r=e(`./stream/GenericWorker`);n.STORE={magic:`\0\0`,compressWorker:function(){return new r(`STORE compression`)},uncompressWorker:function(){return new r(`STORE decompression`)}},n.DEFLATE=e(`./flate`)},{"./flate":7,"./stream/GenericWorker":28}],4:[function(e,t,n){"use strict";var r=e(`./utils`),i=function(){for(var e,t=[],n=0;n<256;n++){e=n;for(var r=0;r<8;r++)e=1&e?3988292384^e>>>1:e>>>1;t[n]=e}return t}();t.exports=function(e,t){return e!==void 0&&e.length?r.getTypeOf(e)===`string`?function(e,t,n,r){var a=i,o=r+n;e^=-1;for(var s=r;s<o;s++)e=e>>>8^a[255&(e^t.charCodeAt(s))];return-1^e}(0|t,e,e.length,0):function(e,t,n,r){var a=i,o=r+n;e^=-1;for(var s=r;s<o;s++)e=e>>>8^a[255&(e^t[s])];return-1^e}(0|t,e,e.length,0):0}},{"./utils":32}],5:[function(e,t,n){"use strict";n.base64=!1,n.binary=!1,n.dir=!1,n.createFolders=!0,n.date=null,n.compression=null,n.compressionOptions=null,n.comment=null,n.unixPermissions=null,n.dosPermissions=null},{}],6:[function(e,t,n){"use strict";var r=null;r=typeof Promise<`u`?Promise:e(`lie`),t.exports={Promise:r}},{lie:37}],7:[function(e,t,n){"use strict";var r=typeof Uint8Array<`u`&&typeof Uint16Array<`u`&&typeof Uint32Array<`u`,i=e(`pako`),a=e(`./utils`),o=e(`./stream/GenericWorker`),s=r?`uint8array`:`array`;function c(e,t){o.call(this,`FlateWorker/`+e),this._pako=null,this._pakoAction=e,this._pakoOptions=t,this.meta={}}n.magic=`\b\0`,a.inherits(c,o),c.prototype.processChunk=function(e){this.meta=e.meta,this._pako===null&&this._createPako(),this._pako.push(a.transformTo(s,e.data),!1)},c.prototype.flush=function(){o.prototype.flush.call(this),this._pako===null&&this._createPako(),this._pako.push([],!0)},c.prototype.cleanUp=function(){o.prototype.cleanUp.call(this),this._pako=null},c.prototype._createPako=function(){this._pako=new i[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var e=this;this._pako.onData=function(t){e.push({data:t,meta:e.meta})}},n.compressWorker=function(e){return new c(`Deflate`,e)},n.uncompressWorker=function(){return new c(`Inflate`,{})}},{"./stream/GenericWorker":28,"./utils":32,pako:38}],8:[function(e,t,n){"use strict";function r(e,t){var n,r=``;for(n=0;n<t;n++)r+=String.fromCharCode(255&e),e>>>=8;return r}function i(e,t,n,i,o,u){var d,f,p=e.file,m=e.compression,h=u!==s.utf8encode,g=a.transformTo(`string`,u(p.name)),_=a.transformTo(`string`,s.utf8encode(p.name)),v=p.comment,y=a.transformTo(`string`,u(v)),b=a.transformTo(`string`,s.utf8encode(v)),x=_.length!==p.name.length,S=b.length!==v.length,C=``,w=``,T=``,E=p.dir,D=p.date,O={crc32:0,compressedSize:0,uncompressedSize:0};t&&!n||(O.crc32=e.crc32,O.compressedSize=e.compressedSize,O.uncompressedSize=e.uncompressedSize);var k=0;t&&(k|=8),h||!x&&!S||(k|=2048);var A=0,j=0;E&&(A|=16),o===`UNIX`?(j=798,A|=function(e,t){var n=e;return e||(n=t?16893:33204),(65535&n)<<16}(p.unixPermissions,E)):(j=20,A|=function(e){return 63&(e||0)}(p.dosPermissions)),d=D.getUTCHours(),d<<=6,d|=D.getUTCMinutes(),d<<=5,d|=D.getUTCSeconds()/2,f=D.getUTCFullYear()-1980,f<<=4,f|=D.getUTCMonth()+1,f<<=5,f|=D.getUTCDate(),x&&(w=r(1,1)+r(c(g),4)+_,C+=`up`+r(w.length,2)+w),S&&(T=r(1,1)+r(c(y),4)+b,C+=`uc`+r(T.length,2)+T);var M=``;return M+=`
1
+ (function(){var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),s=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},c=(n,r,a)=>(a=n==null?{}:e(i(n)),s(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n)),l=`http://www.w3.org/2000/svg`;function u(e,t){let n=document.createElementNS(l,`svg`);n.setAttribute(`xmlns`,l),n.setAttribute(`width`,`16`),n.setAttribute(`height`,`16`),n.setAttribute(`viewBox`,`0 0 16 16`),n.setAttribute(`fill`,`none`),n.setAttribute(`stroke`,`currentColor`),n.setAttribute(`stroke-width`,`1.5`),n.setAttribute(`stroke-linecap`,`round`),n.setAttribute(`stroke-linejoin`,`round`),n.setAttribute(`aria-hidden`,`true`);for(let[t,r]of Object.entries(e||{}))n.setAttribute(t,r);for(let e of t||[])n.appendChild(e);return n}function d(e){let t=document.createElementNS(l,`path`);return t.setAttribute(`d`,e),t}function f(e,t,n,r){let i=document.createElementNS(l,`circle`);return i.setAttribute(`cx`,String(e)),i.setAttribute(`cy`,String(t)),i.setAttribute(`r`,String(n)),r&&i.setAttribute(`fill`,`currentColor`),i}var p={folderClosed:()=>u({},[d(`M1.5 4.5 A1 1 0 0 1 2.5 3.5 H6 l2 2 H13.5 A1 1 0 0 1 14.5 6.5 V12 A1 1 0 0 1 13.5 13 H2.5 A1 1 0 0 1 1.5 12 Z`)]),folderOpen:()=>u({},[d(`M1.5 12.5 V4.5 A1 1 0 0 1 2.5 3.5 H6 l2 2 H13.5 A1 1 0 0 1 14.5 6.5 V7.5 M1.5 12.5 L3 7.5 H15 L13.5 12.5 Z`)]),file:()=>u({},[d(`M4 1.5 H9 L12.5 5 V14 A0.5 0.5 0 0 1 12 14.5 H4 A0.5 0.5 0 0 1 3.5 14 V2 A0.5 0.5 0 0 1 4 1.5 Z`),d(`M9 1.5 V5 H12.5`)]),fileText:()=>u({},[d(`M4 1.5 H9 L12.5 5 V14 A0.5 0.5 0 0 1 12 14.5 H4 A0.5 0.5 0 0 1 3.5 14 V2 A0.5 0.5 0 0 1 4 1.5 Z`),d(`M9 1.5 V5 H12.5`),d(`M5.5 8 H10.5`),d(`M5.5 10.5 H10.5`),d(`M5.5 13 H8.5`)]),close:()=>u({},[d(`M3 3 L13 13`),d(`M13 3 L3 13`)]),chevronRight:()=>u({},[d(`M6 4 L10 8 L6 12`)]),chevronDown:()=>u({},[d(`M4 6 L8 10 L12 6`)]),dot:()=>u({},[f(8,8,3,!0)]),edit:()=>u({},[d(`M2 14 L5 13 L13 5 L11 3 L3 11 Z`),d(`M10 4 L12 6`)])},m=class{constructor({files:e,onSelect:t,isActive:n,onCreateFile:r,onCreateFolder:i,onRename:a,onDelete:o}){this.files=e,this.onSelect=t,this.isActive=n,this.onCreateFile=r,this.onCreateFolder=i,this.onRename=a,this.onDelete=o,this.expanded=new Set([``]),this.selectedPath=null,this.selectedType=null,this._contextMenu=null,this._onDocMouseDown=this._onDocMouseDown.bind(this),this._onKeyDown=this._onKeyDown.bind(this),this.el=document.createElement(`nav`),this.el.className=`gte-tree`,this.el.setAttribute(`aria-label`,`Theme files`),this.el.setAttribute(`tabindex`,`0`),this.el.setAttribute(`role`,`tree`),this.el.addEventListener(`keydown`,this._onKeyDown),this.el.addEventListener(`contextmenu`,e=>{e.target.closest(`.gte-tree__node`)||this._showContextMenu(e,[{label:`New File`,action:()=>{var e;return(e=this.onCreateFile)==null?void 0:e.call(this,``)}},{label:`New Folder`,action:()=>{var e;return(e=this.onCreateFolder)==null?void 0:e.call(this,``)}}])})}_showContextMenu(e,t){e.preventDefault(),e.stopPropagation(),this._dismissMenu();let n=document.createElement(`ul`);n.className=`gte-context-menu`;for(let{label:e,action:r,danger:i}of t){let t=document.createElement(`li`);t.className=`gte-context-menu__item`+(i?` gte-context-menu__item--danger`:``),t.textContent=e,t.addEventListener(`mousedown`,e=>{e.preventDefault(),e.stopPropagation(),this._dismissMenu(),r()}),n.appendChild(t)}document.body.appendChild(n),this._contextMenu=n;let r=window.innerWidth,i=window.innerHeight,a=t.length*34+8,o=Math.max(4,Math.min(e.clientX,r-188)),s=Math.max(4,Math.min(e.clientY,i-a-4));n.style.left=`${o}px`,n.style.top=`${s}px`,setTimeout(()=>{document.addEventListener(`mousedown`,this._onDocMouseDown,!0)},0)}_onDocMouseDown(e){this._contextMenu&&!this._contextMenu.contains(e.target)&&this._dismissMenu()}_dismissMenu(){this._contextMenu&&(this._contextMenu.remove(),this._contextMenu=null),document.removeEventListener(`mousedown`,this._onDocMouseDown,!0)}_dirExists(e){for(let t of Object.keys(this.files))if(t.startsWith(e))return!0;return!1}_findActivePath(){if(!this.isActive)return null;for(let e of Object.keys(this.files))if(this.isActive(e))return e;return null}_ensureSelection(){let e=this.selectedType===`file`&&this.selectedPath&&this.files[this.selectedPath],t=this.selectedType===`dir`&&this.selectedPath&&this._dirExists(this.selectedPath);if(e||t)return;this.selectedPath=null,this.selectedType=null;let n=this._findActivePath();n&&(this.selectedPath=n,this.selectedType=`file`)}_setSelection(e,t){this.selectedPath=e,this.selectedType=t}_selectedRowElement(){return!this.selectedPath||!this.selectedType?null:this.el.querySelector(`.gte-tree__node[data-path="${CSS.escape(this.selectedPath)}"][data-type="${this.selectedType}"]`)}_visibleRows(){return Array.from(this.el.querySelectorAll(`.gte-tree__node`))}_selectRowAtIndex(e,t){var n;let r=e[t];r&&(this._setSelection(r.dataset.path,r.dataset.type),this.render(),(n=this._selectedRowElement())==null||n.scrollIntoView({block:`nearest`}))}_onKeyDown(e){if(e.defaultPrevented)return;let t=this._visibleRows();if(!t.length)return;let n=this.selectedPath&&this.selectedType?t.findIndex(e=>e.dataset.path===this.selectedPath&&e.dataset.type===this.selectedType):-1;if(e.key===`ArrowDown`){e.preventDefault();let r=n<0?0:Math.min(t.length-1,n+1);this._selectRowAtIndex(t,r);return}if(e.key===`ArrowUp`){e.preventDefault();let r=n<0?t.length-1:Math.max(0,n-1);this._selectRowAtIndex(t,r);return}if(e.key===`ArrowRight`){if(this.selectedType!==`dir`||!this.selectedPath)return;e.preventDefault(),this.expanded.has(this.selectedPath)||(this.expanded.add(this.selectedPath),this.render());return}if(e.key===`ArrowLeft`){if(this.selectedType!==`dir`||!this.selectedPath)return;e.preventDefault(),this.expanded.has(this.selectedPath)&&(this.expanded.delete(this.selectedPath),this.render());return}if(e.key===`Enter`||e.key===` `){var r;if(e.preventDefault(),!this.selectedPath||!this.selectedType)return;if(this.selectedType===`dir`){this.expanded.has(this.selectedPath)?this.expanded.delete(this.selectedPath):this.expanded.add(this.selectedPath),this.render();return}let t=this.files[this.selectedPath];t!=null&&t.editable&&((r=this.onSelect)==null||r.call(this,this.selectedPath));return}if(e.key===`F2`){var i;if(!this.selectedPath||!this.selectedType)return;e.preventDefault(),(i=this.onRename)==null||i.call(this,this.selectedPath,this.selectedType);return}if(e.key===`Delete`){var a;if(!this.selectedPath||!this.selectedType)return;e.preventDefault(),(a=this.onDelete)==null||a.call(this,this.selectedPath,this.selectedType)}}buildTree(){let e={type:`dir`,name:``,path:``,children:new Map},t=Object.keys(this.files).sort();for(let n of t){let t=n.split(`/`),r=e;for(let e=0;e<t.length;e++){let i=t[e];if(e===t.length-1)r.children.set(i,{type:`file`,name:i,path:n,file:this.files[n]});else{let n=r.children.get(i);n||(n={type:`dir`,name:i,path:t.slice(0,e+1).join(`/`)+`/`,children:new Map},r.children.set(i,n)),r=n}}}if(this.expanded.size===1)for(let t of e.children.values())t.type===`dir`&&this.expanded.add(t.path);return e}render(){if(this._ensureSelection(),this.el.innerHTML=``,Object.keys(this.files).length===0){let e=document.createElement(`div`);e.className=`gte-tree__empty`,e.textContent=`No files.`,this.el.appendChild(e);return}let e=this.buildTree(),t=document.createElement(`ul`);this.renderChildren(e,t,0),this.el.appendChild(t)}renderChildren(e,t,n){let r=[...e.children.values()].sort((e,t)=>e.type===t.type?e.name.localeCompare(t.name):e.type===`dir`?-1:1);for(let e of r){let r=document.createElement(`li`),i=document.createElement(`div`);i.className=`gte-tree__node`,i.style.paddingLeft=`${8+n*12}px`,i.dataset.path=e.path,i.dataset.type=e.type,i.setAttribute(`role`,`treeitem`),i.setAttribute(`aria-selected`,this.selectedPath===e.path&&this.selectedType===e.type?`true`:`false`),this.selectedPath===e.path&&this.selectedType===e.type&&i.classList.add(`gte-tree__node--selected`);let a=document.createElement(`span`);a.className=`gte-tree__chev`;let o=document.createElement(`span`);o.className=`gte-tree__icon`;let s=document.createElement(`span`);if(s.className=`gte-tree__label`,s.textContent=e.name,e.type===`dir`){let t=this.expanded.has(e.path);if(a.appendChild(t?p.chevronDown():p.chevronRight()),o.appendChild(t?p.folderOpen():p.folderClosed()),i.appendChild(a),i.appendChild(o),i.appendChild(s),i.setAttribute(`aria-expanded`,t?`true`:`false`),i.addEventListener(`mousedown`,()=>this.el.focus()),i.addEventListener(`click`,()=>{this._setSelection(e.path,`dir`),this.expanded.has(e.path)?this.expanded.delete(e.path):this.expanded.add(e.path),this.render()}),i.addEventListener(`contextmenu`,t=>{this._setSelection(e.path,`dir`),this.render(),this._showContextMenu(t,[{label:`New File`,action:()=>{var t;return(t=this.onCreateFile)==null?void 0:t.call(this,e.path)}},{label:`New Folder`,action:()=>{var t;return(t=this.onCreateFolder)==null?void 0:t.call(this,e.path)}},{label:`Rename`,action:()=>{var t;return(t=this.onRename)==null?void 0:t.call(this,e.path,`dir`)}},{label:`Delete`,action:()=>{var t;return(t=this.onDelete)==null?void 0:t.call(this,e.path,`dir`)},danger:!0}])}),r.appendChild(i),t){let t=document.createElement(`ul`);this.renderChildren(e,t,n+1),r.appendChild(t)}}else{a.className=`gte-tree__chev gte-tree__chev--leaf`;let t=e.file,n=t.editable;if(o.appendChild(n?p.fileText():p.file()),i.appendChild(a),i.appendChild(o),i.appendChild(s),i.removeAttribute(`aria-expanded`),t.modified){let e=document.createElement(`span`);e.className=`gte-tree__dirty`,e.title=`Modified`,i.appendChild(e)}n||(i.classList.add(`gte-tree__node--binary`),i.title=`Binary file (preserved unchanged)`),this.isActive&&this.isActive(t.path)&&i.classList.add(`gte-tree__node--active`),i.addEventListener(`mousedown`,()=>this.el.focus()),i.addEventListener(`click`,()=>{this._setSelection(t.path,`file`),n&&this.onSelect&&this.onSelect(t.path),this.render()}),i.addEventListener(`contextmenu`,n=>{this._setSelection(t.path,`file`),this.render(),this._showContextMenu(n,[{label:`Rename`,action:()=>{var t;return(t=this.onRename)==null?void 0:t.call(this,e.path,`file`)}},{label:`Delete`,action:()=>{var t;return(t=this.onDelete)==null?void 0:t.call(this,e.path,`file`)},danger:!0}])}),r.appendChild(i)}t.appendChild(r)}}refresh(){this.render()}},h=new Set([`hbs`,`handlebars`,`html`,`htm`,`css`,`scss`,`sass`,`less`,`js`,`mjs`,`cjs`,`json`,`md`,`markdown`,`txt`,`yml`,`yaml`,`svg`,`xml`]);function g(e){let t=e.lastIndexOf(`.`);return t<0||t<Math.max(e.lastIndexOf(`/`),e.lastIndexOf(`\\`))?``:e.slice(t+1).toLowerCase()}function _(e){return h.has(g(e))}function v(e){switch(g(e)){case`hbs`:case`handlebars`:return`handlebars`;case`html`:case`htm`:return`html`;case`css`:case`scss`:case`sass`:case`less`:return`css`;case`js`:case`mjs`:case`cjs`:return`javascript`;case`json`:return`json`;case`md`:case`markdown`:return`markdown`;case`yml`:case`yaml`:return`yaml`;case`svg`:case`xml`:return`xml`;default:return`plaintext`}}var y=`https://cdn.jsdelivr.net/npm/monaco-editor@0.55.1/min/vs`,b=null;function x(){return b||(b=S(),b)}async function S(){if(window.monaco)return window.monaco;let e=window.require;window.MonacoEnvironment={getWorker(e,t){let n;n=t===`json`?`${y}/language/json/json.worker.js`:t===`css`||t===`scss`||t===`less`?`${y}/language/css/css.worker.js`:t===`html`||t===`handlebars`||t===`razor`?`${y}/language/html/html.worker.js`:t===`typescript`||t===`javascript`?`${y}/language/typescript/ts.worker.js`:`${y}/editor/editor.worker.js`;let r=new Blob([`importScripts('${n}');`],{type:`application/javascript`});return new Worker(URL.createObjectURL(r))}},await C(`${y}/loader.js`);let t=window.require;return t.config({paths:{vs:y}}),await new Promise((e,n)=>{t([`vs/editor/editor.main`],e,n)}),e&&(window.require=function(n,r,i){return Array.isArray(n)?t(n,r,i):e(n)},Object.assign(window.require,e)),window.monaco}function C(e){return new Promise((t,n)=>{if(document.querySelector(`script[src="${e}"]`)){t();return}let r=document.createElement(`script`);r.src=e,r.onload=t,r.onerror=()=>n(Error(`Failed to load Monaco from CDN: ${e}`)),document.head.appendChild(r)})}var w=class{constructor({onChange:e}){this.onChange=e,this.currentPath=null,this._editor=null,this._models=new Map,this._creating=!1,this.el=document.createElement(`div`),this.el.className=`gte-editor`,this.breadcrumb=document.createElement(`div`),this.breadcrumb.className=`gte-editor__breadcrumb`,this.el.appendChild(this.breadcrumb),this.body=document.createElement(`div`),this.body.className=`gte-editor__body`,this.body.style.display=`flex`,this.body.style.flex=`1`,this.body.style.minHeight=`0`,this.el.appendChild(this.body),this.placeholder=document.createElement(`div`),this.placeholder.className=`gte-editor__placeholder`,this.placeholder.textContent=`Select a file from the tree to start editing.`,this.body.appendChild(this.placeholder),this.monacoContainer=document.createElement(`div`),this.monacoContainer.className=`gte-editor__monaco`,this.monacoContainer.style.display=`none`,this.body.appendChild(this.monacoContainer),this.renderBreadcrumb(null),x().catch(()=>{})}async _createEditor(){if(!(this._editor||this._creating)){this._creating=!0;try{let e=await x();if(this._editor)return;this._editor=e.editor.create(this.monacoContainer,{automaticLayout:!0,minimap:{enabled:!1},scrollBeyondLastLine:!1,wordWrap:`off`,theme:`vs-dark`,fontSize:13,lineHeight:20,fontFamily:`ui-monospace, "SF Mono", Menlo, Consolas, "Roboto Mono", monospace`,tabSize:2,insertSpaces:!0,renderLineHighlight:`gutter`,smoothScrolling:!0,scrollbar:{verticalScrollbarSize:8,horizontalScrollbarSize:8}}),this._editor.onDidChangeModelContent(()=>{this.currentPath&&this.onChange&&this.onChange(this.currentPath,this._editor.getValue())})}finally{this._creating=!1}}}_applyFile(e,t){let n=window.monaco,r=v(e),i=this._models.get(e);i?i.getValue()!==(t==null?``:t)&&i.setValue(t==null?``:t):(i=n.editor.createModel(t==null?``:t,r),this._models.set(e,i)),this._editor.setModel(i)}renderBreadcrumb(e){if(this.breadcrumb.innerHTML=``,!e){let e=document.createElement(`span`);e.textContent=`No file selected`,this.breadcrumb.appendChild(e);return}let t=document.createElement(`span`),n=document.createElement(`strong`);n.textContent=e,t.appendChild(n),this.breadcrumb.appendChild(t);let r=document.createElement(`span`);r.className=`gte-lang`,r.textContent=v(e),this.breadcrumb.appendChild(r)}async setFile(e,t,{focus:n=!1}={}){if(this.currentPath=e,e===null){this.monacoContainer.style.display=`none`,this.placeholder.style.display=`flex`,this.renderBreadcrumb(null);return}this.monacoContainer.style.display=`block`,this.placeholder.style.display=`none`,this.renderBreadcrumb(e),await this._createEditor(),this.currentPath!==null&&(this._applyFile(this.currentPath,t),n&&this._editor.focus())}getValue(){return this._editor?this._editor.getValue():``}dispose(){for(let e of this._models.values())e.dispose();this._models.clear(),this._editor&&(this._editor.dispose(),this._editor=null)}},T=c(o(((e,t)=>{(function(n){typeof e==`object`&&t!==void 0?t.exports=n():typeof define==`function`&&define.amd?define([],n):(typeof window<`u`?window:typeof global<`u`?global:typeof self<`u`?self:this).JSZip=n()})(function(){return function e(t,n,r){function i(o,s){if(!n[o]){if(!t[o]){var c=typeof require==`function`&&require;if(!s&&c)return c(o,!0);if(a)return a(o,!0);var l=Error(`Cannot find module '`+o+`'`);throw l.code=`MODULE_NOT_FOUND`,l}var u=n[o]={exports:{}};t[o][0].call(u.exports,function(e){var n=t[o][1][e];return i(n||e)},u,u.exports,e,t,n,r)}return n[o].exports}for(var a=typeof require==`function`&&require,o=0;o<r.length;o++)i(r[o]);return i}({1:[function(e,t,n){"use strict";var r=e(`./utils`),i=e(`./support`),a=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=`;n.encode=function(e){for(var t,n,i,o,s,c,l,u=[],d=0,f=e.length,p=f,m=r.getTypeOf(e)!==`string`;d<e.length;)p=f-d,i=m?(t=e[d++],n=d<f?e[d++]:0,d<f?e[d++]:0):(t=e.charCodeAt(d++),n=d<f?e.charCodeAt(d++):0,d<f?e.charCodeAt(d++):0),o=t>>2,s=(3&t)<<4|n>>4,c=1<p?(15&n)<<2|i>>6:64,l=2<p?63&i:64,u.push(a.charAt(o)+a.charAt(s)+a.charAt(c)+a.charAt(l));return u.join(``)},n.decode=function(e){var t,n,r,o,s,c,l=0,u=0,d=`data:`;if(e.substr(0,d.length)===d)throw Error(`Invalid base64 input, it looks like a data url.`);var f,p=3*(e=e.replace(/[^A-Za-z0-9+/=]/g,``)).length/4;if(e.charAt(e.length-1)===a.charAt(64)&&p--,e.charAt(e.length-2)===a.charAt(64)&&p--,p%1!=0)throw Error(`Invalid base64 input, bad content length.`);for(f=i.uint8array?new Uint8Array(0|p):Array(0|p);l<e.length;)t=a.indexOf(e.charAt(l++))<<2|(o=a.indexOf(e.charAt(l++)))>>4,n=(15&o)<<4|(s=a.indexOf(e.charAt(l++)))>>2,r=(3&s)<<6|(c=a.indexOf(e.charAt(l++))),f[u++]=t,s!==64&&(f[u++]=n),c!==64&&(f[u++]=r);return f}},{"./support":30,"./utils":32}],2:[function(e,t,n){"use strict";var r=e(`./external`),i=e(`./stream/DataWorker`),a=e(`./stream/Crc32Probe`),o=e(`./stream/DataLengthProbe`);function s(e,t,n,r,i){this.compressedSize=e,this.uncompressedSize=t,this.crc32=n,this.compression=r,this.compressedContent=i}s.prototype={getContentWorker:function(){var e=new i(r.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new o(`data_length`)),t=this;return e.on(`end`,function(){if(this.streamInfo.data_length!==t.uncompressedSize)throw Error(`Bug : uncompressed data size mismatch`)}),e},getCompressedWorker:function(){return new i(r.Promise.resolve(this.compressedContent)).withStreamInfo(`compressedSize`,this.compressedSize).withStreamInfo(`uncompressedSize`,this.uncompressedSize).withStreamInfo(`crc32`,this.crc32).withStreamInfo(`compression`,this.compression)}},s.createWorkerFrom=function(e,t,n){return e.pipe(new a).pipe(new o(`uncompressedSize`)).pipe(t.compressWorker(n)).pipe(new o(`compressedSize`)).withStreamInfo(`compression`,t)},t.exports=s},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(e,t,n){"use strict";var r=e(`./stream/GenericWorker`);n.STORE={magic:`\0\0`,compressWorker:function(){return new r(`STORE compression`)},uncompressWorker:function(){return new r(`STORE decompression`)}},n.DEFLATE=e(`./flate`)},{"./flate":7,"./stream/GenericWorker":28}],4:[function(e,t,n){"use strict";var r=e(`./utils`),i=function(){for(var e,t=[],n=0;n<256;n++){e=n;for(var r=0;r<8;r++)e=1&e?3988292384^e>>>1:e>>>1;t[n]=e}return t}();t.exports=function(e,t){return e!==void 0&&e.length?r.getTypeOf(e)===`string`?function(e,t,n,r){var a=i,o=r+n;e^=-1;for(var s=r;s<o;s++)e=e>>>8^a[255&(e^t.charCodeAt(s))];return-1^e}(0|t,e,e.length,0):function(e,t,n,r){var a=i,o=r+n;e^=-1;for(var s=r;s<o;s++)e=e>>>8^a[255&(e^t[s])];return-1^e}(0|t,e,e.length,0):0}},{"./utils":32}],5:[function(e,t,n){"use strict";n.base64=!1,n.binary=!1,n.dir=!1,n.createFolders=!0,n.date=null,n.compression=null,n.compressionOptions=null,n.comment=null,n.unixPermissions=null,n.dosPermissions=null},{}],6:[function(e,t,n){"use strict";var r=null;r=typeof Promise<`u`?Promise:e(`lie`),t.exports={Promise:r}},{lie:37}],7:[function(e,t,n){"use strict";var r=typeof Uint8Array<`u`&&typeof Uint16Array<`u`&&typeof Uint32Array<`u`,i=e(`pako`),a=e(`./utils`),o=e(`./stream/GenericWorker`),s=r?`uint8array`:`array`;function c(e,t){o.call(this,`FlateWorker/`+e),this._pako=null,this._pakoAction=e,this._pakoOptions=t,this.meta={}}n.magic=`\b\0`,a.inherits(c,o),c.prototype.processChunk=function(e){this.meta=e.meta,this._pako===null&&this._createPako(),this._pako.push(a.transformTo(s,e.data),!1)},c.prototype.flush=function(){o.prototype.flush.call(this),this._pako===null&&this._createPako(),this._pako.push([],!0)},c.prototype.cleanUp=function(){o.prototype.cleanUp.call(this),this._pako=null},c.prototype._createPako=function(){this._pako=new i[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var e=this;this._pako.onData=function(t){e.push({data:t,meta:e.meta})}},n.compressWorker=function(e){return new c(`Deflate`,e)},n.uncompressWorker=function(){return new c(`Inflate`,{})}},{"./stream/GenericWorker":28,"./utils":32,pako:38}],8:[function(e,t,n){"use strict";function r(e,t){var n,r=``;for(n=0;n<t;n++)r+=String.fromCharCode(255&e),e>>>=8;return r}function i(e,t,n,i,o,u){var d,f,p=e.file,m=e.compression,h=u!==s.utf8encode,g=a.transformTo(`string`,u(p.name)),_=a.transformTo(`string`,s.utf8encode(p.name)),v=p.comment,y=a.transformTo(`string`,u(v)),b=a.transformTo(`string`,s.utf8encode(v)),x=_.length!==p.name.length,S=b.length!==v.length,C=``,w=``,T=``,E=p.dir,D=p.date,O={crc32:0,compressedSize:0,uncompressedSize:0};t&&!n||(O.crc32=e.crc32,O.compressedSize=e.compressedSize,O.uncompressedSize=e.uncompressedSize);var k=0;t&&(k|=8),h||!x&&!S||(k|=2048);var A=0,j=0;E&&(A|=16),o===`UNIX`?(j=798,A|=function(e,t){var n=e;return e||(n=t?16893:33204),(65535&n)<<16}(p.unixPermissions,E)):(j=20,A|=function(e){return 63&(e||0)}(p.dosPermissions)),d=D.getUTCHours(),d<<=6,d|=D.getUTCMinutes(),d<<=5,d|=D.getUTCSeconds()/2,f=D.getUTCFullYear()-1980,f<<=4,f|=D.getUTCMonth()+1,f<<=5,f|=D.getUTCDate(),x&&(w=r(1,1)+r(c(g),4)+_,C+=`up`+r(w.length,2)+w),S&&(T=r(1,1)+r(c(y),4)+b,C+=`uc`+r(T.length,2)+T);var M=``;return M+=`
2
2
  \0`,M+=r(k,2),M+=m.magic,M+=r(d,2),M+=r(f,2),M+=r(O.crc32,4),M+=r(O.compressedSize,4),M+=r(O.uncompressedSize,4),M+=r(g.length,2),M+=r(C.length,2),{fileRecord:l.LOCAL_FILE_HEADER+M+g+C,dirRecord:l.CENTRAL_FILE_HEADER+r(j,2)+M+r(y.length,2)+`\0\0\0\0`+r(A,4)+r(i,4)+g+C+y}}var a=e(`../utils`),o=e(`../stream/GenericWorker`),s=e(`../utf8`),c=e(`../crc32`),l=e(`../signature`);function u(e,t,n,r){o.call(this,`ZipFileWorker`),this.bytesWritten=0,this.zipComment=t,this.zipPlatform=n,this.encodeFileName=r,this.streamFiles=e,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}a.inherits(u,o),u.prototype.push=function(e){var t=e.meta.percent||0,n=this.entriesCount,r=this._sources.length;this.accumulate?this.contentBuffer.push(e):(this.bytesWritten+=e.data.length,o.prototype.push.call(this,{data:e.data,meta:{currentFile:this.currentFile,percent:n?(t+100*(n-r-1))/n:100}}))},u.prototype.openedSource=function(e){this.currentSourceOffset=this.bytesWritten,this.currentFile=e.file.name;var t=this.streamFiles&&!e.file.dir;if(t){var n=i(e,t,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:n.fileRecord,meta:{percent:0}})}else this.accumulate=!0},u.prototype.closedSource=function(e){this.accumulate=!1;var t=this.streamFiles&&!e.file.dir,n=i(e,t,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(n.dirRecord),t)this.push({data:function(e){return l.DATA_DESCRIPTOR+r(e.crc32,4)+r(e.compressedSize,4)+r(e.uncompressedSize,4)}(e),meta:{percent:100}});else for(this.push({data:n.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},u.prototype.flush=function(){for(var e=this.bytesWritten,t=0;t<this.dirRecords.length;t++)this.push({data:this.dirRecords[t],meta:{percent:100}});var n=this.bytesWritten-e,i=function(e,t,n,i,o){var s=a.transformTo(`string`,o(i));return l.CENTRAL_DIRECTORY_END+`\0\0\0\0`+r(e,2)+r(e,2)+r(t,4)+r(n,4)+r(s.length,2)+s}(this.dirRecords.length,n,e,this.zipComment,this.encodeFileName);this.push({data:i,meta:{percent:100}})},u.prototype.prepareNextSource=function(){this.previous=this._sources.shift(),this.openedSource(this.previous.streamInfo),this.isPaused?this.previous.pause():this.previous.resume()},u.prototype.registerPrevious=function(e){this._sources.push(e);var t=this;return e.on(`data`,function(e){t.processChunk(e)}),e.on(`end`,function(){t.closedSource(t.previous.streamInfo),t._sources.length?t.prepareNextSource():t.end()}),e.on(`error`,function(e){t.error(e)}),this},u.prototype.resume=function(){return!!o.prototype.resume.call(this)&&(!this.previous&&this._sources.length?(this.prepareNextSource(),!0):this.previous||this._sources.length||this.generatedError?void 0:(this.end(),!0))},u.prototype.error=function(e){var t=this._sources;if(!o.prototype.error.call(this,e))return!1;for(var n=0;n<t.length;n++)try{t[n].error(e)}catch{}return!0},u.prototype.lock=function(){o.prototype.lock.call(this);for(var e=this._sources,t=0;t<e.length;t++)e[t].lock()},t.exports=u},{"../crc32":4,"../signature":23,"../stream/GenericWorker":28,"../utf8":31,"../utils":32}],9:[function(e,t,n){"use strict";var r=e(`../compressions`),i=e(`./ZipFileWorker`);n.generateWorker=function(e,t,n){var a=new i(t.streamFiles,n,t.platform,t.encodeFileName),o=0;try{e.forEach(function(e,n){o++;var i=function(e,t){var n=e||t,i=r[n];if(!i)throw Error(n+` is not a valid compression method !`);return i}(n.options.compression,t.compression),s=n.options.compressionOptions||t.compressionOptions||{},c=n.dir,l=n.date;n._compressWorker(i,s).withStreamInfo(`file`,{name:e,dir:c,date:l,comment:n.comment||``,unixPermissions:n.unixPermissions,dosPermissions:n.dosPermissions}).pipe(a)}),a.entriesCount=o}catch(e){a.error(e)}return a}},{"../compressions":3,"./ZipFileWorker":8}],10:[function(e,t,n){"use strict";function r(){if(!(this instanceof r))return new r;if(arguments.length)throw Error(`The constructor with parameters has been removed in JSZip 3.0, please check the upgrade guide.`);this.files=Object.create(null),this.comment=null,this.root=``,this.clone=function(){var e=new r;for(var t in this)typeof this[t]!=`function`&&(e[t]=this[t]);return e}}(r.prototype=e(`./object`)).loadAsync=e(`./load`),r.support=e(`./support`),r.defaults=e(`./defaults`),r.version=`3.10.1`,r.loadAsync=function(e,t){return new r().loadAsync(e,t)},r.external=e(`./external`),t.exports=r},{"./defaults":5,"./external":6,"./load":11,"./object":15,"./support":30}],11:[function(e,t,n){"use strict";var r=e(`./utils`),i=e(`./external`),a=e(`./utf8`),o=e(`./zipEntries`),s=e(`./stream/Crc32Probe`),c=e(`./nodejsUtils`);function l(e){return new i.Promise(function(t,n){var r=e.decompressed.getContentWorker().pipe(new s);r.on(`error`,function(e){n(e)}).on(`end`,function(){r.streamInfo.crc32===e.decompressed.crc32?t():n(Error(`Corrupted zip : CRC32 mismatch`))}).resume()})}t.exports=function(e,t){var n=this;return t=r.extend(t||{},{base64:!1,checkCRC32:!1,optimizedBinaryString:!1,createFolders:!1,decodeFileName:a.utf8decode}),c.isNode&&c.isStream(e)?i.Promise.reject(Error(`JSZip can't accept a stream when loading a zip file.`)):r.prepareContent(`the loaded zip file`,e,!0,t.optimizedBinaryString,t.base64).then(function(e){var n=new o(t);return n.load(e),n}).then(function(e){var n=[i.Promise.resolve(e)],r=e.files;if(t.checkCRC32)for(var a=0;a<r.length;a++)n.push(l(r[a]));return i.Promise.all(n)}).then(function(e){for(var i=e.shift(),a=i.files,o=0;o<a.length;o++){var s=a[o],c=s.fileNameStr,l=r.resolve(s.fileNameStr);n.file(l,s.decompressed,{binary:!0,optimizedBinaryString:!0,date:s.date,dir:s.dir,comment:s.fileCommentStr.length?s.fileCommentStr:null,unixPermissions:s.unixPermissions,dosPermissions:s.dosPermissions,createFolders:t.createFolders}),s.dir||(n.file(l).unsafeOriginalName=c)}return i.zipComment.length&&(n.comment=i.zipComment),n})}},{"./external":6,"./nodejsUtils":14,"./stream/Crc32Probe":25,"./utf8":31,"./utils":32,"./zipEntries":33}],12:[function(e,t,n){"use strict";var r=e(`../utils`),i=e(`../stream/GenericWorker`);function a(e,t){i.call(this,`Nodejs stream input adapter for `+e),this._upstreamEnded=!1,this._bindStream(t)}r.inherits(a,i),a.prototype._bindStream=function(e){var t=this;(this._stream=e).pause(),e.on(`data`,function(e){t.push({data:e,meta:{percent:0}})}).on(`error`,function(e){t.isPaused?this.generatedError=e:t.error(e)}).on(`end`,function(){t.isPaused?t._upstreamEnded=!0:t.end()})},a.prototype.pause=function(){return!!i.prototype.pause.call(this)&&(this._stream.pause(),!0)},a.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(this._upstreamEnded?this.end():this._stream.resume(),!0)},t.exports=a},{"../stream/GenericWorker":28,"../utils":32}],13:[function(e,t,n){"use strict";var r=e(`readable-stream`).Readable;function i(e,t,n){r.call(this,t),this._helper=e;var i=this;e.on(`data`,function(e,t){i.push(e)||i._helper.pause(),n&&n(t)}).on(`error`,function(e){i.emit(`error`,e)}).on(`end`,function(){i.push(null)})}e(`../utils`).inherits(i,r),i.prototype._read=function(){this._helper.resume()},t.exports=i},{"../utils":32,"readable-stream":16}],14:[function(e,t,n){"use strict";t.exports={isNode:typeof Buffer<`u`,newBufferFrom:function(e,t){if(Buffer.from&&Buffer.from!==Uint8Array.from)return Buffer.from(e,t);if(typeof e==`number`)throw Error(`The "data" argument must not be a number`);return new Buffer(e,t)},allocBuffer:function(e){if(Buffer.alloc)return Buffer.alloc(e);var t=new Buffer(e);return t.fill(0),t},isBuffer:function(e){return Buffer.isBuffer(e)},isStream:function(e){return e&&typeof e.on==`function`&&typeof e.pause==`function`&&typeof e.resume==`function`}}},{}],15:[function(e,t,n){"use strict";function r(e,t,n){var r,i=a.getTypeOf(t),s=a.extend(n||{},c);s.date=s.date||new Date,s.compression!==null&&(s.compression=s.compression.toUpperCase()),typeof s.unixPermissions==`string`&&(s.unixPermissions=parseInt(s.unixPermissions,8)),s.unixPermissions&&16384&s.unixPermissions&&(s.dir=!0),s.dosPermissions&&16&s.dosPermissions&&(s.dir=!0),s.dir&&(e=h(e)),s.createFolders&&(r=m(e))&&g.call(this,r,!0);var d=i===`string`&&!1===s.binary&&!1===s.base64;n&&n.binary!==void 0||(s.binary=!d),(t instanceof l&&t.uncompressedSize===0||s.dir||!t||t.length===0)&&(s.base64=!1,s.binary=!0,t=``,s.compression=`STORE`,i=`string`);var _=null;_=t instanceof l||t instanceof o?t:f.isNode&&f.isStream(t)?new p(e,t):a.prepareContent(e,t,s.binary,s.optimizedBinaryString,s.base64);var v=new u(e,_,s);this.files[e]=v}var i=e(`./utf8`),a=e(`./utils`),o=e(`./stream/GenericWorker`),s=e(`./stream/StreamHelper`),c=e(`./defaults`),l=e(`./compressedObject`),u=e(`./zipObject`),d=e(`./generate`),f=e(`./nodejsUtils`),p=e(`./nodejs/NodejsStreamInputAdapter`),m=function(e){e.slice(-1)===`/`&&(e=e.substring(0,e.length-1));var t=e.lastIndexOf(`/`);return 0<t?e.substring(0,t):``},h=function(e){return e.slice(-1)!==`/`&&(e+=`/`),e},g=function(e,t){return t=t===void 0?c.createFolders:t,e=h(e),this.files[e]||r.call(this,e,null,{dir:!0,createFolders:t}),this.files[e]};function _(e){return Object.prototype.toString.call(e)===`[object RegExp]`}t.exports={load:function(){throw Error(`This method has been removed in JSZip 3.0, please check the upgrade guide.`)},forEach:function(e){var t,n,r;for(t in this.files)r=this.files[t],(n=t.slice(this.root.length,t.length))&&t.slice(0,this.root.length)===this.root&&e(n,r)},filter:function(e){var t=[];return this.forEach(function(n,r){e(n,r)&&t.push(r)}),t},file:function(e,t,n){if(arguments.length!==1)return e=this.root+e,r.call(this,e,t,n),this;if(_(e)){var i=e;return this.filter(function(e,t){return!t.dir&&i.test(e)})}var a=this.files[this.root+e];return a&&!a.dir?a:null},folder:function(e){if(!e)return this;if(_(e))return this.filter(function(t,n){return n.dir&&e.test(t)});var t=this.root+e,n=g.call(this,t),r=this.clone();return r.root=n.name,r},remove:function(e){e=this.root+e;var t=this.files[e];if(t||(e.slice(-1)!==`/`&&(e+=`/`),t=this.files[e]),t&&!t.dir)delete this.files[e];else for(var n=this.filter(function(t,n){return n.name.slice(0,e.length)===e}),r=0;r<n.length;r++)delete this.files[n[r].name];return this},generate:function(){throw Error(`This method has been removed in JSZip 3.0, please check the upgrade guide.`)},generateInternalStream:function(e){var t,n={};try{if((n=a.extend(e||{},{streamFiles:!1,compression:`STORE`,compressionOptions:null,type:``,platform:`DOS`,comment:null,mimeType:`application/zip`,encodeFileName:i.utf8encode})).type=n.type.toLowerCase(),n.compression=n.compression.toUpperCase(),n.type===`binarystring`&&(n.type=`string`),!n.type)throw Error(`No output type specified.`);a.checkSupport(n.type),n.platform!==`darwin`&&n.platform!==`freebsd`&&n.platform!==`linux`&&n.platform!==`sunos`||(n.platform=`UNIX`),n.platform===`win32`&&(n.platform=`DOS`);var r=n.comment||this.comment||``;t=d.generateWorker(this,n,r)}catch(e){(t=new o(`error`)).error(e)}return new s(t,n.type||`string`,n.mimeType)},generateAsync:function(e,t){return this.generateInternalStream(e).accumulate(t)},generateNodeStream:function(e,t){return(e=e||{}).type||(e.type=`nodebuffer`),this.generateInternalStream(e).toNodejsStream(t)}}},{"./compressedObject":2,"./defaults":5,"./generate":9,"./nodejs/NodejsStreamInputAdapter":12,"./nodejsUtils":14,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31,"./utils":32,"./zipObject":35}],16:[function(e,t,n){"use strict";t.exports=e(`stream`)},{stream:void 0}],17:[function(e,t,n){"use strict";var r=e(`./DataReader`);function i(e){r.call(this,e);for(var t=0;t<this.data.length;t++)e[t]=255&e[t]}e(`../utils`).inherits(i,r),i.prototype.byteAt=function(e){return this.data[this.zero+e]},i.prototype.lastIndexOfSignature=function(e){for(var t=e.charCodeAt(0),n=e.charCodeAt(1),r=e.charCodeAt(2),i=e.charCodeAt(3),a=this.length-4;0<=a;--a)if(this.data[a]===t&&this.data[a+1]===n&&this.data[a+2]===r&&this.data[a+3]===i)return a-this.zero;return-1},i.prototype.readAndCheckSignature=function(e){var t=e.charCodeAt(0),n=e.charCodeAt(1),r=e.charCodeAt(2),i=e.charCodeAt(3),a=this.readData(4);return t===a[0]&&n===a[1]&&r===a[2]&&i===a[3]},i.prototype.readData=function(e){if(this.checkOffset(e),e===0)return[];var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./DataReader":18}],18:[function(e,t,n){"use strict";var r=e(`../utils`);function i(e){this.data=e,this.length=e.length,this.index=0,this.zero=0}i.prototype={checkOffset:function(e){this.checkIndex(this.index+e)},checkIndex:function(e){if(this.length<this.zero+e||e<0)throw Error(`End of data reached (data length = `+this.length+`, asked index = `+e+`). Corrupted zip ?`)},setIndex:function(e){this.checkIndex(e),this.index=e},skip:function(e){this.setIndex(this.index+e)},byteAt:function(){},readInt:function(e){var t,n=0;for(this.checkOffset(e),t=this.index+e-1;t>=this.index;t--)n=(n<<8)+this.byteAt(t);return this.index+=e,n},readString:function(e){return r.transformTo(`string`,this.readData(e))},readData:function(){},lastIndexOfSignature:function(){},readAndCheckSignature:function(){},readDate:function(){var e=this.readInt(4);return new Date(Date.UTC(1980+(e>>25&127),(e>>21&15)-1,e>>16&31,e>>11&31,e>>5&63,(31&e)<<1))}},t.exports=i},{"../utils":32}],19:[function(e,t,n){"use strict";var r=e(`./Uint8ArrayReader`);function i(e){r.call(this,e)}e(`../utils`).inherits(i,r),i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(e,t,n){"use strict";var r=e(`./DataReader`);function i(e){r.call(this,e)}e(`../utils`).inherits(i,r),i.prototype.byteAt=function(e){return this.data.charCodeAt(this.zero+e)},i.prototype.lastIndexOfSignature=function(e){return this.data.lastIndexOf(e)-this.zero},i.prototype.readAndCheckSignature=function(e){return e===this.readData(4)},i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./DataReader":18}],21:[function(e,t,n){"use strict";var r=e(`./ArrayReader`);function i(e){r.call(this,e)}e(`../utils`).inherits(i,r),i.prototype.readData=function(e){if(this.checkOffset(e),e===0)return new Uint8Array;var t=this.data.subarray(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./ArrayReader":17}],22:[function(e,t,n){"use strict";var r=e(`../utils`),i=e(`../support`),a=e(`./ArrayReader`),o=e(`./StringReader`),s=e(`./NodeBufferReader`),c=e(`./Uint8ArrayReader`);t.exports=function(e){var t=r.getTypeOf(e);return r.checkSupport(t),t!==`string`||i.uint8array?t===`nodebuffer`?new s(e):i.uint8array?new c(r.transformTo(`uint8array`,e)):new a(r.transformTo(`array`,e)):new o(e)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(e,t,n){"use strict";n.LOCAL_FILE_HEADER=`PK`,n.CENTRAL_FILE_HEADER=`PK`,n.CENTRAL_DIRECTORY_END=`PK`,n.ZIP64_CENTRAL_DIRECTORY_LOCATOR=`PK\x07`,n.ZIP64_CENTRAL_DIRECTORY_END=`PK`,n.DATA_DESCRIPTOR=`PK\x07\b`},{}],24:[function(e,t,n){"use strict";var r=e(`./GenericWorker`),i=e(`../utils`);function a(e){r.call(this,`ConvertWorker to `+e),this.destType=e}i.inherits(a,r),a.prototype.processChunk=function(e){this.push({data:i.transformTo(this.destType,e.data),meta:e.meta})},t.exports=a},{"../utils":32,"./GenericWorker":28}],25:[function(e,t,n){"use strict";var r=e(`./GenericWorker`),i=e(`../crc32`);function a(){r.call(this,`Crc32Probe`),this.withStreamInfo(`crc32`,0)}e(`../utils`).inherits(a,r),a.prototype.processChunk=function(e){this.streamInfo.crc32=i(e.data,this.streamInfo.crc32||0),this.push(e)},t.exports=a},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(e,t,n){"use strict";var r=e(`../utils`),i=e(`./GenericWorker`);function a(e){i.call(this,`DataLengthProbe for `+e),this.propName=e,this.withStreamInfo(e,0)}r.inherits(a,i),a.prototype.processChunk=function(e){if(e){var t=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=t+e.data.length}i.prototype.processChunk.call(this,e)},t.exports=a},{"../utils":32,"./GenericWorker":28}],27:[function(e,t,n){"use strict";var r=e(`../utils`),i=e(`./GenericWorker`);function a(e){i.call(this,`DataWorker`);var t=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type=``,this._tickScheduled=!1,e.then(function(e){t.dataIsReady=!0,t.data=e,t.max=e&&e.length||0,t.type=r.getTypeOf(e),t.isPaused||t._tickAndRepeat()},function(e){t.error(e)})}r.inherits(a,i),a.prototype.cleanUp=function(){i.prototype.cleanUp.call(this),this.data=null},a.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,r.delay(this._tickAndRepeat,[],this)),!0)},a.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(r.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},a.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var e=null,t=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case`string`:e=this.data.substring(this.index,t);break;case`uint8array`:e=this.data.subarray(this.index,t);break;case`array`:case`nodebuffer`:e=this.data.slice(this.index,t)}return this.index=t,this.push({data:e,meta:{percent:this.max?this.index/this.max*100:0}})},t.exports=a},{"../utils":32,"./GenericWorker":28}],28:[function(e,t,n){"use strict";function r(e){this.name=e||`default`,this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}r.prototype={push:function(e){this.emit(`data`,e)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit(`end`),this.cleanUp(),this.isFinished=!0}catch(e){this.emit(`error`,e)}return!0},error:function(e){return!this.isFinished&&(this.isPaused?this.generatedError=e:(this.isFinished=!0,this.emit(`error`,e),this.previous&&this.previous.error(e),this.cleanUp()),!0)},on:function(e,t){return this._listeners[e].push(t),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(e,t){if(this._listeners[e])for(var n=0;n<this._listeners[e].length;n++)this._listeners[e][n].call(this,t)},pipe:function(e){return e.registerPrevious(this)},registerPrevious:function(e){if(this.isLocked)throw Error(`The stream '`+this+`' has already been used.`);this.streamInfo=e.streamInfo,this.mergeStreamInfo(),this.previous=e;var t=this;return e.on(`data`,function(e){t.processChunk(e)}),e.on(`end`,function(){t.end()}),e.on(`error`,function(e){t.error(e)}),this},pause:function(){return!this.isPaused&&!this.isFinished&&(this.isPaused=!0,this.previous&&this.previous.pause(),!0)},resume:function(){if(!this.isPaused||this.isFinished)return!1;var e=this.isPaused=!1;return this.generatedError&&(this.error(this.generatedError),e=!0),this.previous&&this.previous.resume(),!e},flush:function(){},processChunk:function(e){this.push(e)},withStreamInfo:function(e,t){return this.extraStreamInfo[e]=t,this.mergeStreamInfo(),this},mergeStreamInfo:function(){for(var e in this.extraStreamInfo)Object.prototype.hasOwnProperty.call(this.extraStreamInfo,e)&&(this.streamInfo[e]=this.extraStreamInfo[e])},lock:function(){if(this.isLocked)throw Error(`The stream '`+this+`' has already been used.`);this.isLocked=!0,this.previous&&this.previous.lock()},toString:function(){var e=`Worker `+this.name;return this.previous?this.previous+` -> `+e:e}},t.exports=r},{}],29:[function(e,t,n){"use strict";var r=e(`../utils`),i=e(`./ConvertWorker`),a=e(`./GenericWorker`),o=e(`../base64`),s=e(`../support`),c=e(`../external`),l=null;if(s.nodestream)try{l=e(`../nodejs/NodejsStreamOutputAdapter`)}catch{}function u(e,t){return new c.Promise(function(n,i){var a=[],s=e._internalType,c=e._outputType,l=e._mimeType;e.on(`data`,function(e,n){a.push(e),t&&t(n)}).on(`error`,function(e){a=[],i(e)}).on(`end`,function(){try{n(function(e,t,n){switch(e){case`blob`:return r.newBlob(r.transformTo(`arraybuffer`,t),n);case`base64`:return o.encode(t);default:return r.transformTo(e,t)}}(c,function(e,t){var n,r=0,i=null,a=0;for(n=0;n<t.length;n++)a+=t[n].length;switch(e){case`string`:return t.join(``);case`array`:return Array.prototype.concat.apply([],t);case`uint8array`:for(i=new Uint8Array(a),n=0;n<t.length;n++)i.set(t[n],r),r+=t[n].length;return i;case`nodebuffer`:return Buffer.concat(t);default:throw Error(`concat : unsupported type '`+e+`'`)}}(s,a),l))}catch(e){i(e)}a=[]}).resume()})}function d(e,t,n){var o=t;switch(t){case`blob`:case`arraybuffer`:o=`uint8array`;break;case`base64`:o=`string`}try{this._internalType=o,this._outputType=t,this._mimeType=n,r.checkSupport(o),this._worker=e.pipe(new i(o)),e.lock()}catch(e){this._worker=new a(`error`),this._worker.error(e)}}d.prototype={accumulate:function(e){return u(this,e)},on:function(e,t){var n=this;return e===`data`?this._worker.on(e,function(e){t.call(n,e.data,e.meta)}):this._worker.on(e,function(){r.delay(t,arguments,n)}),this},resume:function(){return r.delay(this._worker.resume,[],this._worker),this},pause:function(){return this._worker.pause(),this},toNodejsStream:function(e){if(r.checkSupport(`nodestream`),this._outputType!==`nodebuffer`)throw Error(this._outputType+` is not supported by this method`);return new l(this,{objectMode:this._outputType!==`nodebuffer`},e)}},t.exports=d},{"../base64":1,"../external":6,"../nodejs/NodejsStreamOutputAdapter":13,"../support":30,"../utils":32,"./ConvertWorker":24,"./GenericWorker":28}],30:[function(e,t,n){"use strict";if(n.base64=!0,n.array=!0,n.string=!0,n.arraybuffer=typeof ArrayBuffer<`u`&&typeof Uint8Array<`u`,n.nodebuffer=typeof Buffer<`u`,n.uint8array=typeof Uint8Array<`u`,typeof ArrayBuffer>`u`)n.blob=!1;else{var r=new ArrayBuffer(0);try{n.blob=new Blob([r],{type:`application/zip`}).size===0}catch{try{var i=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);i.append(r),n.blob=i.getBlob(`application/zip`).size===0}catch{n.blob=!1}}}try{n.nodestream=!!e(`readable-stream`).Readable}catch{n.nodestream=!1}},{"readable-stream":16}],31:[function(e,t,n){"use strict";for(var r=e(`./utils`),i=e(`./support`),a=e(`./nodejsUtils`),o=e(`./stream/GenericWorker`),s=Array(256),c=0;c<256;c++)s[c]=252<=c?6:248<=c?5:240<=c?4:224<=c?3:192<=c?2:1;s[254]=s[254]=1;function l(){o.call(this,`utf-8 decode`),this.leftOver=null}function u(){o.call(this,`utf-8 encode`)}n.utf8encode=function(e){return i.nodebuffer?a.newBufferFrom(e,`utf-8`):function(e){var t,n,r,a,o,s=e.length,c=0;for(a=0;a<s;a++)(64512&(n=e.charCodeAt(a)))==55296&&a+1<s&&(64512&(r=e.charCodeAt(a+1)))==56320&&(n=65536+(n-55296<<10)+(r-56320),a++),c+=n<128?1:n<2048?2:n<65536?3:4;for(t=i.uint8array?new Uint8Array(c):Array(c),a=o=0;o<c;a++)(64512&(n=e.charCodeAt(a)))==55296&&a+1<s&&(64512&(r=e.charCodeAt(a+1)))==56320&&(n=65536+(n-55296<<10)+(r-56320),a++),n<128?t[o++]=n:(n<2048?t[o++]=192|n>>>6:(n<65536?t[o++]=224|n>>>12:(t[o++]=240|n>>>18,t[o++]=128|n>>>12&63),t[o++]=128|n>>>6&63),t[o++]=128|63&n);return t}(e)},n.utf8decode=function(e){return i.nodebuffer?r.transformTo(`nodebuffer`,e).toString(`utf-8`):function(e){var t,n,i,a,o=e.length,c=Array(2*o);for(t=n=0;t<o;)if((i=e[t++])<128)c[n++]=i;else if(4<(a=s[i]))c[n++]=65533,t+=a-1;else{for(i&=a===2?31:a===3?15:7;1<a&&t<o;)i=i<<6|63&e[t++],a--;1<a?c[n++]=65533:i<65536?c[n++]=i:(i-=65536,c[n++]=55296|i>>10&1023,c[n++]=56320|1023&i)}return c.length!==n&&(c.subarray?c=c.subarray(0,n):c.length=n),r.applyFromCharCode(c)}(e=r.transformTo(i.uint8array?`uint8array`:`array`,e))},r.inherits(l,o),l.prototype.processChunk=function(e){var t=r.transformTo(i.uint8array?`uint8array`:`array`,e.data);if(this.leftOver&&this.leftOver.length){if(i.uint8array){var a=t;(t=new Uint8Array(a.length+this.leftOver.length)).set(this.leftOver,0),t.set(a,this.leftOver.length)}else t=this.leftOver.concat(t);this.leftOver=null}var o=function(e,t){var n;for((t=t||e.length)>e.length&&(t=e.length),n=t-1;0<=n&&(192&e[n])==128;)n--;return n<0||n===0?t:n+s[e[n]]>t?n:t}(t),c=t;o!==t.length&&(i.uint8array?(c=t.subarray(0,o),this.leftOver=t.subarray(o,t.length)):(c=t.slice(0,o),this.leftOver=t.slice(o,t.length))),this.push({data:n.utf8decode(c),meta:e.meta})},l.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:n.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},n.Utf8DecodeWorker=l,r.inherits(u,o),u.prototype.processChunk=function(e){this.push({data:n.utf8encode(e.data),meta:e.meta})},n.Utf8EncodeWorker=u},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(e,t,n){"use strict";var r=e(`./support`),i=e(`./base64`),a=e(`./nodejsUtils`),o=e(`./external`);function s(e){return e}function c(e,t){for(var n=0;n<e.length;++n)t[n]=255&e.charCodeAt(n);return t}e(`setimmediate`),n.newBlob=function(e,t){n.checkSupport(`blob`);try{return new Blob([e],{type:t})}catch{try{var r=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);return r.append(e),r.getBlob(t)}catch{throw Error(`Bug : can't construct the Blob.`)}}};var l={stringifyByChunk:function(e,t,n){var r=[],i=0,a=e.length;if(a<=n)return String.fromCharCode.apply(null,e);for(;i<a;)t===`array`||t===`nodebuffer`?r.push(String.fromCharCode.apply(null,e.slice(i,Math.min(i+n,a)))):r.push(String.fromCharCode.apply(null,e.subarray(i,Math.min(i+n,a)))),i+=n;return r.join(``)},stringifyByChar:function(e){for(var t=``,n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return t},applyCanBeUsed:{uint8array:function(){try{return r.uint8array&&String.fromCharCode.apply(null,new Uint8Array(1)).length===1}catch{return!1}}(),nodebuffer:function(){try{return r.nodebuffer&&String.fromCharCode.apply(null,a.allocBuffer(1)).length===1}catch{return!1}}()}};function u(e){var t=65536,r=n.getTypeOf(e),i=!0;if(r===`uint8array`?i=l.applyCanBeUsed.uint8array:r===`nodebuffer`&&(i=l.applyCanBeUsed.nodebuffer),i)for(;1<t;)try{return l.stringifyByChunk(e,r,t)}catch{t=Math.floor(t/2)}return l.stringifyByChar(e)}function d(e,t){for(var n=0;n<e.length;n++)t[n]=e[n];return t}n.applyFromCharCode=u;var f={};f.string={string:s,array:function(e){return c(e,Array(e.length))},arraybuffer:function(e){return f.string.uint8array(e).buffer},uint8array:function(e){return c(e,new Uint8Array(e.length))},nodebuffer:function(e){return c(e,a.allocBuffer(e.length))}},f.array={string:u,array:s,arraybuffer:function(e){return new Uint8Array(e).buffer},uint8array:function(e){return new Uint8Array(e)},nodebuffer:function(e){return a.newBufferFrom(e)}},f.arraybuffer={string:function(e){return u(new Uint8Array(e))},array:function(e){return d(new Uint8Array(e),Array(e.byteLength))},arraybuffer:s,uint8array:function(e){return new Uint8Array(e)},nodebuffer:function(e){return a.newBufferFrom(new Uint8Array(e))}},f.uint8array={string:u,array:function(e){return d(e,Array(e.length))},arraybuffer:function(e){return e.buffer},uint8array:s,nodebuffer:function(e){return a.newBufferFrom(e)}},f.nodebuffer={string:u,array:function(e){return d(e,Array(e.length))},arraybuffer:function(e){return f.nodebuffer.uint8array(e).buffer},uint8array:function(e){return d(e,new Uint8Array(e.length))},nodebuffer:s},n.transformTo=function(e,t){return t=t||``,e?(n.checkSupport(e),f[n.getTypeOf(t)][e](t)):t},n.resolve=function(e){for(var t=e.split(`/`),n=[],r=0;r<t.length;r++){var i=t[r];i===`.`||i===``&&r!==0&&r!==t.length-1||(i===`..`?n.pop():n.push(i))}return n.join(`/`)},n.getTypeOf=function(e){return typeof e==`string`?`string`:Object.prototype.toString.call(e)===`[object Array]`?`array`:r.nodebuffer&&a.isBuffer(e)?`nodebuffer`:r.uint8array&&e instanceof Uint8Array?`uint8array`:r.arraybuffer&&e instanceof ArrayBuffer?`arraybuffer`:void 0},n.checkSupport=function(e){if(!r[e.toLowerCase()])throw Error(e+` is not supported by this platform`)},n.MAX_VALUE_16BITS=65535,n.MAX_VALUE_32BITS=-1,n.pretty=function(e){var t,n,r=``;for(n=0;n<(e||``).length;n++)r+=`\\x`+((t=e.charCodeAt(n))<16?`0`:``)+t.toString(16).toUpperCase();return r},n.delay=function(e,t,n){setImmediate(function(){e.apply(n||null,t||[])})},n.inherits=function(e,t){function n(){}n.prototype=t.prototype,e.prototype=new n},n.extend=function(){var e,t,n={};for(e=0;e<arguments.length;e++)for(t in arguments[e])Object.prototype.hasOwnProperty.call(arguments[e],t)&&n[t]===void 0&&(n[t]=arguments[e][t]);return n},n.prepareContent=function(e,t,a,s,l){return o.Promise.resolve(t).then(function(e){return r.blob&&(e instanceof Blob||[`[object File]`,`[object Blob]`].indexOf(Object.prototype.toString.call(e))!==-1)&&typeof FileReader<`u`?new o.Promise(function(t,n){var r=new FileReader;r.onload=function(e){t(e.target.result)},r.onerror=function(e){n(e.target.error)},r.readAsArrayBuffer(e)}):e}).then(function(t){var u=n.getTypeOf(t);return u?(u===`arraybuffer`?t=n.transformTo(`uint8array`,t):u===`string`&&(l?t=i.decode(t):a&&!0!==s&&(t=function(e){return c(e,r.uint8array?new Uint8Array(e.length):Array(e.length))}(t))),t):o.Promise.reject(Error(`Can't read the data of '`+e+`'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?`))})}},{"./base64":1,"./external":6,"./nodejsUtils":14,"./support":30,setimmediate:54}],33:[function(e,t,n){"use strict";var r=e(`./reader/readerFor`),i=e(`./utils`),a=e(`./signature`),o=e(`./zipEntry`),s=e(`./support`);function c(e){this.files=[],this.loadOptions=e}c.prototype={checkSignature:function(e){if(!this.reader.readAndCheckSignature(e)){this.reader.index-=4;var t=this.reader.readString(4);throw Error(`Corrupted zip or bug: unexpected signature (`+i.pretty(t)+`, expected `+i.pretty(e)+`)`)}},isSignature:function(e,t){var n=this.reader.index;this.reader.setIndex(e);var r=this.reader.readString(4)===t;return this.reader.setIndex(n),r},readBlockEndOfCentral:function(){this.diskNumber=this.reader.readInt(2),this.diskWithCentralDirStart=this.reader.readInt(2),this.centralDirRecordsOnThisDisk=this.reader.readInt(2),this.centralDirRecords=this.reader.readInt(2),this.centralDirSize=this.reader.readInt(4),this.centralDirOffset=this.reader.readInt(4),this.zipCommentLength=this.reader.readInt(2);var e=this.reader.readData(this.zipCommentLength),t=s.uint8array?`uint8array`:`array`,n=i.transformTo(t,e);this.zipComment=this.loadOptions.decodeFileName(n)},readBlockZip64EndOfCentral:function(){this.zip64EndOfCentralSize=this.reader.readInt(8),this.reader.skip(4),this.diskNumber=this.reader.readInt(4),this.diskWithCentralDirStart=this.reader.readInt(4),this.centralDirRecordsOnThisDisk=this.reader.readInt(8),this.centralDirRecords=this.reader.readInt(8),this.centralDirSize=this.reader.readInt(8),this.centralDirOffset=this.reader.readInt(8),this.zip64ExtensibleData={};for(var e,t,n,r=this.zip64EndOfCentralSize-44;0<r;)e=this.reader.readInt(2),t=this.reader.readInt(4),n=this.reader.readData(t),this.zip64ExtensibleData[e]={id:e,length:t,value:n}},readBlockZip64EndOfCentralLocator:function(){if(this.diskWithZip64CentralDirStart=this.reader.readInt(4),this.relativeOffsetEndOfZip64CentralDir=this.reader.readInt(8),this.disksCount=this.reader.readInt(4),1<this.disksCount)throw Error(`Multi-volumes zip are not supported`)},readLocalFiles:function(){var e,t;for(e=0;e<this.files.length;e++)t=this.files[e],this.reader.setIndex(t.localHeaderOffset),this.checkSignature(a.LOCAL_FILE_HEADER),t.readLocalPart(this.reader),t.handleUTF8(),t.processAttributes()},readCentralDir:function(){var e;for(this.reader.setIndex(this.centralDirOffset);this.reader.readAndCheckSignature(a.CENTRAL_FILE_HEADER);)(e=new o({zip64:this.zip64},this.loadOptions)).readCentralPart(this.reader),this.files.push(e);if(this.centralDirRecords!==this.files.length&&this.centralDirRecords!==0&&this.files.length===0)throw Error(`Corrupted zip or bug: expected `+this.centralDirRecords+` records in central dir, got `+this.files.length)},readEndOfCentral:function(){var e=this.reader.lastIndexOfSignature(a.CENTRAL_DIRECTORY_END);if(e<0)throw this.isSignature(0,a.LOCAL_FILE_HEADER)?Error(`Corrupted zip: can't find end of central directory`):Error(`Can't find end of central directory : is this a zip file ? If it is, see https://stuk.github.io/jszip/documentation/howto/read_zip.html`);this.reader.setIndex(e);var t=e;if(this.checkSignature(a.CENTRAL_DIRECTORY_END),this.readBlockEndOfCentral(),this.diskNumber===i.MAX_VALUE_16BITS||this.diskWithCentralDirStart===i.MAX_VALUE_16BITS||this.centralDirRecordsOnThisDisk===i.MAX_VALUE_16BITS||this.centralDirRecords===i.MAX_VALUE_16BITS||this.centralDirSize===i.MAX_VALUE_32BITS||this.centralDirOffset===i.MAX_VALUE_32BITS){if(this.zip64=!0,(e=this.reader.lastIndexOfSignature(a.ZIP64_CENTRAL_DIRECTORY_LOCATOR))<0)throw Error(`Corrupted zip: can't find the ZIP64 end of central directory locator`);if(this.reader.setIndex(e),this.checkSignature(a.ZIP64_CENTRAL_DIRECTORY_LOCATOR),this.readBlockZip64EndOfCentralLocator(),!this.isSignature(this.relativeOffsetEndOfZip64CentralDir,a.ZIP64_CENTRAL_DIRECTORY_END)&&(this.relativeOffsetEndOfZip64CentralDir=this.reader.lastIndexOfSignature(a.ZIP64_CENTRAL_DIRECTORY_END),this.relativeOffsetEndOfZip64CentralDir<0))throw Error(`Corrupted zip: can't find the ZIP64 end of central directory`);this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir),this.checkSignature(a.ZIP64_CENTRAL_DIRECTORY_END),this.readBlockZip64EndOfCentral()}var n=this.centralDirOffset+this.centralDirSize;this.zip64&&(n+=20,n+=12+this.zip64EndOfCentralSize);var r=t-n;if(0<r)this.isSignature(t,a.CENTRAL_FILE_HEADER)||(this.reader.zero=r);else if(r<0)throw Error(`Corrupted zip: missing `+Math.abs(r)+` bytes.`)},prepareReader:function(e){this.reader=r(e)},load:function(e){this.prepareReader(e),this.readEndOfCentral(),this.readCentralDir(),this.readLocalFiles()}},t.exports=c},{"./reader/readerFor":22,"./signature":23,"./support":30,"./utils":32,"./zipEntry":34}],34:[function(e,t,n){"use strict";var r=e(`./reader/readerFor`),i=e(`./utils`),a=e(`./compressedObject`),o=e(`./crc32`),s=e(`./utf8`),c=e(`./compressions`),l=e(`./support`);function u(e,t){this.options=e,this.loadOptions=t}u.prototype={isEncrypted:function(){return(1&this.bitFlag)==1},useUTF8:function(){return(2048&this.bitFlag)==2048},readLocalPart:function(e){var t,n;if(e.skip(22),this.fileNameLength=e.readInt(2),n=e.readInt(2),this.fileName=e.readData(this.fileNameLength),e.skip(n),this.compressedSize===-1||this.uncompressedSize===-1)throw Error(`Bug or corrupted zip : didn't get enough information from the central directory (compressedSize === -1 || uncompressedSize === -1)`);if((t=function(e){for(var t in c)if(Object.prototype.hasOwnProperty.call(c,t)&&c[t].magic===e)return c[t];return null}(this.compressionMethod))===null)throw Error(`Corrupted zip : compression `+i.pretty(this.compressionMethod)+` unknown (inner file : `+i.transformTo(`string`,this.fileName)+`)`);this.decompressed=new a(this.compressedSize,this.uncompressedSize,this.crc32,t,e.readData(this.compressedSize))},readCentralPart:function(e){this.versionMadeBy=e.readInt(2),e.skip(2),this.bitFlag=e.readInt(2),this.compressionMethod=e.readString(2),this.date=e.readDate(),this.crc32=e.readInt(4),this.compressedSize=e.readInt(4),this.uncompressedSize=e.readInt(4);var t=e.readInt(2);if(this.extraFieldsLength=e.readInt(2),this.fileCommentLength=e.readInt(2),this.diskNumberStart=e.readInt(2),this.internalFileAttributes=e.readInt(2),this.externalFileAttributes=e.readInt(4),this.localHeaderOffset=e.readInt(4),this.isEncrypted())throw Error(`Encrypted zip are not supported`);e.skip(t),this.readExtraFields(e),this.parseZIP64ExtraField(e),this.fileComment=e.readData(this.fileCommentLength)},processAttributes:function(){this.unixPermissions=null,this.dosPermissions=null;var e=this.versionMadeBy>>8;this.dir=!!(16&this.externalFileAttributes),e==0&&(this.dosPermissions=63&this.externalFileAttributes),e==3&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||this.fileNameStr.slice(-1)!==`/`||(this.dir=!0)},parseZIP64ExtraField:function(){if(this.extraFields[1]){var e=r(this.extraFields[1].value);this.uncompressedSize===i.MAX_VALUE_32BITS&&(this.uncompressedSize=e.readInt(8)),this.compressedSize===i.MAX_VALUE_32BITS&&(this.compressedSize=e.readInt(8)),this.localHeaderOffset===i.MAX_VALUE_32BITS&&(this.localHeaderOffset=e.readInt(8)),this.diskNumberStart===i.MAX_VALUE_32BITS&&(this.diskNumberStart=e.readInt(4))}},readExtraFields:function(e){var t,n,r,i=e.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});e.index+4<i;)t=e.readInt(2),n=e.readInt(2),r=e.readData(n),this.extraFields[t]={id:t,length:n,value:r};e.setIndex(i)},handleUTF8:function(){var e=l.uint8array?`uint8array`:`array`;if(this.useUTF8())this.fileNameStr=s.utf8decode(this.fileName),this.fileCommentStr=s.utf8decode(this.fileComment);else{var t=this.findExtraFieldUnicodePath();if(t!==null)this.fileNameStr=t;else{var n=i.transformTo(e,this.fileName);this.fileNameStr=this.loadOptions.decodeFileName(n)}var r=this.findExtraFieldUnicodeComment();if(r!==null)this.fileCommentStr=r;else{var a=i.transformTo(e,this.fileComment);this.fileCommentStr=this.loadOptions.decodeFileName(a)}}},findExtraFieldUnicodePath:function(){var e=this.extraFields[28789];if(e){var t=r(e.value);return t.readInt(1)===1&&o(this.fileName)===t.readInt(4)?s.utf8decode(t.readData(e.length-5)):null}return null},findExtraFieldUnicodeComment:function(){var e=this.extraFields[25461];if(e){var t=r(e.value);return t.readInt(1)===1&&o(this.fileComment)===t.readInt(4)?s.utf8decode(t.readData(e.length-5)):null}return null}},t.exports=u},{"./compressedObject":2,"./compressions":3,"./crc32":4,"./reader/readerFor":22,"./support":30,"./utf8":31,"./utils":32}],35:[function(e,t,n){"use strict";function r(e,t,n){this.name=e,this.dir=n.dir,this.date=n.date,this.comment=n.comment,this.unixPermissions=n.unixPermissions,this.dosPermissions=n.dosPermissions,this._data=t,this._dataBinary=n.binary,this.options={compression:n.compression,compressionOptions:n.compressionOptions}}var i=e(`./stream/StreamHelper`),a=e(`./stream/DataWorker`),o=e(`./utf8`),s=e(`./compressedObject`),c=e(`./stream/GenericWorker`);r.prototype={internalStream:function(e){var t=null,n=`string`;try{if(!e)throw Error(`No output type specified.`);var r=(n=e.toLowerCase())===`string`||n===`text`;n!==`binarystring`&&n!==`text`||(n=`string`),t=this._decompressWorker();var a=!this._dataBinary;a&&!r&&(t=t.pipe(new o.Utf8EncodeWorker)),!a&&r&&(t=t.pipe(new o.Utf8DecodeWorker))}catch(e){(t=new c(`error`)).error(e)}return new i(t,n,``)},async:function(e,t){return this.internalStream(e).accumulate(t)},nodeStream:function(e,t){return this.internalStream(e||`nodebuffer`).toNodejsStream(t)},_compressWorker:function(e,t){if(this._data instanceof s&&this._data.compression.magic===e.magic)return this._data.getCompressedWorker();var n=this._decompressWorker();return this._dataBinary||(n=n.pipe(new o.Utf8EncodeWorker)),s.createWorkerFrom(n,e,t)},_decompressWorker:function(){return this._data instanceof s?this._data.getContentWorker():this._data instanceof c?this._data:new a(this._data)}};for(var l=[`asText`,`asBinary`,`asNodeBuffer`,`asUint8Array`,`asArrayBuffer`],u=function(){throw Error(`This method has been removed in JSZip 3.0, please check the upgrade guide.`)},d=0;d<l.length;d++)r.prototype[l[d]]=u;t.exports=r},{"./compressedObject":2,"./stream/DataWorker":27,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31}],36:[function(e,t,n){(function(e){"use strict";var n,r,i=e.MutationObserver||e.WebKitMutationObserver;if(i){var a=0,o=new i(u),s=e.document.createTextNode(``);o.observe(s,{characterData:!0}),n=function(){s.data=a=++a%2}}else if(e.setImmediate||e.MessageChannel===void 0)n=`document`in e&&`onreadystatechange`in e.document.createElement(`script`)?function(){var t=e.document.createElement(`script`);t.onreadystatechange=function(){u(),t.onreadystatechange=null,t.parentNode.removeChild(t),t=null},e.document.documentElement.appendChild(t)}:function(){setTimeout(u,0)};else{var c=new e.MessageChannel;c.port1.onmessage=u,n=function(){c.port2.postMessage(0)}}var l=[];function u(){var e,t;r=!0;for(var n=l.length;n;){for(t=l,l=[],e=-1;++e<n;)t[e]();n=l.length}r=!1}t.exports=function(e){l.push(e)!==1||r||n()}}).call(this,typeof global<`u`?global:typeof self<`u`?self:typeof window<`u`?window:{})},{}],37:[function(e,t,n){"use strict";var r=e(`immediate`);function i(){}var a={},o=[`REJECTED`],s=[`FULFILLED`],c=[`PENDING`];function l(e){if(typeof e!=`function`)throw TypeError(`resolver must be a function`);this.state=c,this.queue=[],this.outcome=void 0,e!==i&&p(this,e)}function u(e,t,n){this.promise=e,typeof t==`function`&&(this.onFulfilled=t,this.callFulfilled=this.otherCallFulfilled),typeof n==`function`&&(this.onRejected=n,this.callRejected=this.otherCallRejected)}function d(e,t,n){r(function(){var r;try{r=t(n)}catch(t){return a.reject(e,t)}r===e?a.reject(e,TypeError(`Cannot resolve promise with itself`)):a.resolve(e,r)})}function f(e){var t=e&&e.then;if(e&&(typeof e==`object`||typeof e==`function`)&&typeof t==`function`)return function(){t.apply(e,arguments)}}function p(e,t){var n=!1;function r(t){n||(n=!0,a.reject(e,t))}function i(t){n||(n=!0,a.resolve(e,t))}var o=m(function(){t(i,r)});o.status===`error`&&r(o.value)}function m(e,t){var n={};try{n.value=e(t),n.status=`success`}catch(e){n.status=`error`,n.value=e}return n}(t.exports=l).prototype.finally=function(e){if(typeof e!=`function`)return this;var t=this.constructor;return this.then(function(n){return t.resolve(e()).then(function(){return n})},function(n){return t.resolve(e()).then(function(){throw n})})},l.prototype.catch=function(e){return this.then(null,e)},l.prototype.then=function(e,t){if(typeof e!=`function`&&this.state===s||typeof t!=`function`&&this.state===o)return this;var n=new this.constructor(i);return this.state===c?this.queue.push(new u(n,e,t)):d(n,this.state===s?e:t,this.outcome),n},u.prototype.callFulfilled=function(e){a.resolve(this.promise,e)},u.prototype.otherCallFulfilled=function(e){d(this.promise,this.onFulfilled,e)},u.prototype.callRejected=function(e){a.reject(this.promise,e)},u.prototype.otherCallRejected=function(e){d(this.promise,this.onRejected,e)},a.resolve=function(e,t){var n=m(f,t);if(n.status===`error`)return a.reject(e,n.value);var r=n.value;if(r)p(e,r);else{e.state=s,e.outcome=t;for(var i=-1,o=e.queue.length;++i<o;)e.queue[i].callFulfilled(t)}return e},a.reject=function(e,t){e.state=o,e.outcome=t;for(var n=-1,r=e.queue.length;++n<r;)e.queue[n].callRejected(t);return e},l.resolve=function(e){return e instanceof this?e:a.resolve(new this(i),e)},l.reject=function(e){var t=new this(i);return a.reject(t,e)},l.all=function(e){var t=this;if(Object.prototype.toString.call(e)!==`[object Array]`)return this.reject(TypeError(`must be an array`));var n=e.length,r=!1;if(!n)return this.resolve([]);for(var o=Array(n),s=0,c=-1,l=new this(i);++c<n;)u(e[c],c);return l;function u(e,i){t.resolve(e).then(function(e){o[i]=e,++s!==n||r||(r=!0,a.resolve(l,o))},function(e){r||(r=!0,a.reject(l,e))})}},l.race=function(e){var t=this;if(Object.prototype.toString.call(e)!==`[object Array]`)return this.reject(TypeError(`must be an array`));var n=e.length,r=!1;if(!n)return this.resolve([]);for(var o=-1,s=new this(i);++o<n;)c=e[o],t.resolve(c).then(function(e){r||(r=!0,a.resolve(s,e))},function(e){r||(r=!0,a.reject(s,e))});var c;return s}},{immediate:36}],38:[function(e,t,n){"use strict";var r={};(0,e(`./lib/utils/common`).assign)(r,e(`./lib/deflate`),e(`./lib/inflate`),e(`./lib/zlib/constants`)),t.exports=r},{"./lib/deflate":39,"./lib/inflate":40,"./lib/utils/common":41,"./lib/zlib/constants":44}],39:[function(e,t,n){"use strict";var r=e(`./zlib/deflate`),i=e(`./utils/common`),a=e(`./utils/strings`),o=e(`./zlib/messages`),s=e(`./zlib/zstream`),c=Object.prototype.toString,l=0,u=-1,d=0,f=8;function p(e){if(!(this instanceof p))return new p(e);this.options=i.assign({level:u,method:f,chunkSize:16384,windowBits:15,memLevel:8,strategy:d,to:``},e||{});var t=this.options;t.raw&&0<t.windowBits?t.windowBits=-t.windowBits:t.gzip&&0<t.windowBits&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg=``,this.ended=!1,this.chunks=[],this.strm=new s,this.strm.avail_out=0;var n=r.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(n!==l)throw Error(o[n]);if(t.header&&r.deflateSetHeader(this.strm,t.header),t.dictionary){var m;if(m=typeof t.dictionary==`string`?a.string2buf(t.dictionary):c.call(t.dictionary)===`[object ArrayBuffer]`?new Uint8Array(t.dictionary):t.dictionary,(n=r.deflateSetDictionary(this.strm,m))!==l)throw Error(o[n]);this._dict_set=!0}}function m(e,t){var n=new p(t);if(n.push(e,!0),n.err)throw n.msg||o[n.err];return n.result}p.prototype.push=function(e,t){var n,o,s=this.strm,u=this.options.chunkSize;if(this.ended)return!1;o=t===~~t?t:!0===t?4:0,typeof e==`string`?s.input=a.string2buf(e):c.call(e)===`[object ArrayBuffer]`?s.input=new Uint8Array(e):s.input=e,s.next_in=0,s.avail_in=s.input.length;do{if(s.avail_out===0&&(s.output=new i.Buf8(u),s.next_out=0,s.avail_out=u),(n=r.deflate(s,o))!==1&&n!==l)return this.onEnd(n),!(this.ended=!0);s.avail_out!==0&&(s.avail_in!==0||o!==4&&o!==2)||(this.options.to===`string`?this.onData(a.buf2binstring(i.shrinkBuf(s.output,s.next_out))):this.onData(i.shrinkBuf(s.output,s.next_out)))}while((0<s.avail_in||s.avail_out===0)&&n!==1);return o===4?(n=r.deflateEnd(this.strm),this.onEnd(n),this.ended=!0,n===l):o!==2||(this.onEnd(l),!(s.avail_out=0))},p.prototype.onData=function(e){this.chunks.push(e)},p.prototype.onEnd=function(e){e===l&&(this.options.to===`string`?this.result=this.chunks.join(``):this.result=i.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},n.Deflate=p,n.deflate=m,n.deflateRaw=function(e,t){return(t=t||{}).raw=!0,m(e,t)},n.gzip=function(e,t){return(t=t||{}).gzip=!0,m(e,t)}},{"./utils/common":41,"./utils/strings":42,"./zlib/deflate":46,"./zlib/messages":51,"./zlib/zstream":53}],40:[function(e,t,n){"use strict";var r=e(`./zlib/inflate`),i=e(`./utils/common`),a=e(`./utils/strings`),o=e(`./zlib/constants`),s=e(`./zlib/messages`),c=e(`./zlib/zstream`),l=e(`./zlib/gzheader`),u=Object.prototype.toString;function d(e){if(!(this instanceof d))return new d(e);this.options=i.assign({chunkSize:16384,windowBits:0,to:``},e||{});var t=this.options;t.raw&&0<=t.windowBits&&t.windowBits<16&&(t.windowBits=-t.windowBits,t.windowBits===0&&(t.windowBits=-15)),!(0<=t.windowBits&&t.windowBits<16)||e&&e.windowBits||(t.windowBits+=32),15<t.windowBits&&t.windowBits<48&&!(15&t.windowBits)&&(t.windowBits|=15),this.err=0,this.msg=``,this.ended=!1,this.chunks=[],this.strm=new c,this.strm.avail_out=0;var n=r.inflateInit2(this.strm,t.windowBits);if(n!==o.Z_OK)throw Error(s[n]);this.header=new l,r.inflateGetHeader(this.strm,this.header)}function f(e,t){var n=new d(t);if(n.push(e,!0),n.err)throw n.msg||s[n.err];return n.result}d.prototype.push=function(e,t){var n,s,c,l,d,f,p=this.strm,m=this.options.chunkSize,h=this.options.dictionary,g=!1;if(this.ended)return!1;s=t===~~t?t:!0===t?o.Z_FINISH:o.Z_NO_FLUSH,typeof e==`string`?p.input=a.binstring2buf(e):u.call(e)===`[object ArrayBuffer]`?p.input=new Uint8Array(e):p.input=e,p.next_in=0,p.avail_in=p.input.length;do{if(p.avail_out===0&&(p.output=new i.Buf8(m),p.next_out=0,p.avail_out=m),(n=r.inflate(p,o.Z_NO_FLUSH))===o.Z_NEED_DICT&&h&&(f=typeof h==`string`?a.string2buf(h):u.call(h)===`[object ArrayBuffer]`?new Uint8Array(h):h,n=r.inflateSetDictionary(this.strm,f)),n===o.Z_BUF_ERROR&&!0===g&&(n=o.Z_OK,g=!1),n!==o.Z_STREAM_END&&n!==o.Z_OK)return this.onEnd(n),!(this.ended=!0);p.next_out&&(p.avail_out!==0&&n!==o.Z_STREAM_END&&(p.avail_in!==0||s!==o.Z_FINISH&&s!==o.Z_SYNC_FLUSH)||(this.options.to===`string`?(c=a.utf8border(p.output,p.next_out),l=p.next_out-c,d=a.buf2string(p.output,c),p.next_out=l,p.avail_out=m-l,l&&i.arraySet(p.output,p.output,c,l,0),this.onData(d)):this.onData(i.shrinkBuf(p.output,p.next_out)))),p.avail_in===0&&p.avail_out===0&&(g=!0)}while((0<p.avail_in||p.avail_out===0)&&n!==o.Z_STREAM_END);return n===o.Z_STREAM_END&&(s=o.Z_FINISH),s===o.Z_FINISH?(n=r.inflateEnd(this.strm),this.onEnd(n),this.ended=!0,n===o.Z_OK):s!==o.Z_SYNC_FLUSH||(this.onEnd(o.Z_OK),!(p.avail_out=0))},d.prototype.onData=function(e){this.chunks.push(e)},d.prototype.onEnd=function(e){e===o.Z_OK&&(this.options.to===`string`?this.result=this.chunks.join(``):this.result=i.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},n.Inflate=d,n.inflate=f,n.inflateRaw=function(e,t){return(t=t||{}).raw=!0,f(e,t)},n.ungzip=f},{"./utils/common":41,"./utils/strings":42,"./zlib/constants":44,"./zlib/gzheader":47,"./zlib/inflate":49,"./zlib/messages":51,"./zlib/zstream":53}],41:[function(e,t,n){"use strict";var r=typeof Uint8Array<`u`&&typeof Uint16Array<`u`&&typeof Int32Array<`u`;n.assign=function(e){for(var t=Array.prototype.slice.call(arguments,1);t.length;){var n=t.shift();if(n){if(typeof n!=`object`)throw TypeError(n+`must be non-object`);for(var r in n)n.hasOwnProperty(r)&&(e[r]=n[r])}}return e},n.shrinkBuf=function(e,t){return e.length===t?e:e.subarray?e.subarray(0,t):(e.length=t,e)};var i={arraySet:function(e,t,n,r,i){if(t.subarray&&e.subarray)e.set(t.subarray(n,n+r),i);else for(var a=0;a<r;a++)e[i+a]=t[n+a]},flattenChunks:function(e){var t,n,r,i,a,o;for(t=r=0,n=e.length;t<n;t++)r+=e[t].length;for(o=new Uint8Array(r),t=i=0,n=e.length;t<n;t++)a=e[t],o.set(a,i),i+=a.length;return o}},a={arraySet:function(e,t,n,r,i){for(var a=0;a<r;a++)e[i+a]=t[n+a]},flattenChunks:function(e){return[].concat.apply([],e)}};n.setTyped=function(e){e?(n.Buf8=Uint8Array,n.Buf16=Uint16Array,n.Buf32=Int32Array,n.assign(n,i)):(n.Buf8=Array,n.Buf16=Array,n.Buf32=Array,n.assign(n,a))},n.setTyped(r)},{}],42:[function(e,t,n){"use strict";var r=e(`./common`),i=!0,a=!0;try{String.fromCharCode.apply(null,[0])}catch{i=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch{a=!1}for(var o=new r.Buf8(256),s=0;s<256;s++)o[s]=252<=s?6:248<=s?5:240<=s?4:224<=s?3:192<=s?2:1;function c(e,t){if(t<65537&&(e.subarray&&a||!e.subarray&&i))return String.fromCharCode.apply(null,r.shrinkBuf(e,t));for(var n=``,o=0;o<t;o++)n+=String.fromCharCode(e[o]);return n}o[254]=o[254]=1,n.string2buf=function(e){var t,n,i,a,o,s=e.length,c=0;for(a=0;a<s;a++)(64512&(n=e.charCodeAt(a)))==55296&&a+1<s&&(64512&(i=e.charCodeAt(a+1)))==56320&&(n=65536+(n-55296<<10)+(i-56320),a++),c+=n<128?1:n<2048?2:n<65536?3:4;for(t=new r.Buf8(c),a=o=0;o<c;a++)(64512&(n=e.charCodeAt(a)))==55296&&a+1<s&&(64512&(i=e.charCodeAt(a+1)))==56320&&(n=65536+(n-55296<<10)+(i-56320),a++),n<128?t[o++]=n:(n<2048?t[o++]=192|n>>>6:(n<65536?t[o++]=224|n>>>12:(t[o++]=240|n>>>18,t[o++]=128|n>>>12&63),t[o++]=128|n>>>6&63),t[o++]=128|63&n);return t},n.buf2binstring=function(e){return c(e,e.length)},n.binstring2buf=function(e){for(var t=new r.Buf8(e.length),n=0,i=t.length;n<i;n++)t[n]=e.charCodeAt(n);return t},n.buf2string=function(e,t){var n,r,i,a,s=t||e.length,l=Array(2*s);for(n=r=0;n<s;)if((i=e[n++])<128)l[r++]=i;else if(4<(a=o[i]))l[r++]=65533,n+=a-1;else{for(i&=a===2?31:a===3?15:7;1<a&&n<s;)i=i<<6|63&e[n++],a--;1<a?l[r++]=65533:i<65536?l[r++]=i:(i-=65536,l[r++]=55296|i>>10&1023,l[r++]=56320|1023&i)}return c(l,r)},n.utf8border=function(e,t){var n;for((t=t||e.length)>e.length&&(t=e.length),n=t-1;0<=n&&(192&e[n])==128;)n--;return n<0||n===0?t:n+o[e[n]]>t?n:t}},{"./common":41}],43:[function(e,t,n){"use strict";t.exports=function(e,t,n,r){for(var i=65535&e|0,a=e>>>16&65535|0,o=0;n!==0;){for(n-=o=2e3<n?2e3:n;a=a+(i=i+t[r++]|0)|0,--o;);i%=65521,a%=65521}return i|a<<16|0}},{}],44:[function(e,t,n){"use strict";t.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},{}],45:[function(e,t,n){"use strict";var r=function(){for(var e,t=[],n=0;n<256;n++){e=n;for(var r=0;r<8;r++)e=1&e?3988292384^e>>>1:e>>>1;t[n]=e}return t}();t.exports=function(e,t,n,i){var a=r,o=i+n;e^=-1;for(var s=i;s<o;s++)e=e>>>8^a[255&(e^t[s])];return-1^e}},{}],46:[function(e,t,n){"use strict";var r,i=e(`../utils/common`),a=e(`./trees`),o=e(`./adler32`),s=e(`./crc32`),c=e(`./messages`),l=0,u=4,d=0,f=-2,p=-1,m=4,h=2,g=8,_=9,v=286,y=30,b=19,x=2*v+1,S=15,C=3,w=258,T=w+C+1,E=42,D=113,O=1,k=2,A=3,j=4;function M(e,t){return e.msg=c[t],t}function N(e){return(e<<1)-(4<e?9:0)}function P(e){for(var t=e.length;0<=--t;)e[t]=0}function F(e){var t=e.state,n=t.pending;n>e.avail_out&&(n=e.avail_out),n!==0&&(i.arraySet(e.output,t.pending_buf,t.pending_out,n,e.next_out),e.next_out+=n,t.pending_out+=n,e.total_out+=n,e.avail_out-=n,t.pending-=n,t.pending===0&&(t.pending_out=0))}function I(e,t){a._tr_flush_block(e,0<=e.block_start?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,F(e.strm)}function L(e,t){e.pending_buf[e.pending++]=t}function R(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function z(e,t){var n,r,i=e.max_chain_length,a=e.strstart,o=e.prev_length,s=e.nice_match,c=e.strstart>e.w_size-T?e.strstart-(e.w_size-T):0,l=e.window,u=e.w_mask,d=e.prev,f=e.strstart+w,p=l[a+o-1],m=l[a+o];e.prev_length>=e.good_match&&(i>>=2),s>e.lookahead&&(s=e.lookahead);do if(l[(n=t)+o]===m&&l[n+o-1]===p&&l[n]===l[a]&&l[++n]===l[a+1]){a+=2,n++;do;while(l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&a<f);if(r=w-(f-a),a=f-w,o<r){if(e.match_start=t,s<=(o=r))break;p=l[a+o-1],m=l[a+o]}}while((t=d[t&u])>c&&--i!=0);return o<=e.lookahead?o:e.lookahead}function B(e){var t,n,r,a,c,l,u,d,f,p,m=e.w_size;do{if(a=e.window_size-e.lookahead-e.strstart,e.strstart>=m+(m-T)){for(i.arraySet(e.window,e.window,m,m,0),e.match_start-=m,e.strstart-=m,e.block_start-=m,t=n=e.hash_size;r=e.head[--t],e.head[t]=m<=r?r-m:0,--n;);for(t=n=m;r=e.prev[--t],e.prev[t]=m<=r?r-m:0,--n;);a+=m}if(e.strm.avail_in===0)break;if(l=e.strm,u=e.window,d=e.strstart+e.lookahead,f=a,p=void 0,p=l.avail_in,f<p&&(p=f),n=p===0?0:(l.avail_in-=p,i.arraySet(u,l.input,l.next_in,p,d),l.state.wrap===1?l.adler=o(l.adler,u,p,d):l.state.wrap===2&&(l.adler=s(l.adler,u,p,d)),l.next_in+=p,l.total_in+=p,p),e.lookahead+=n,e.lookahead+e.insert>=C)for(c=e.strstart-e.insert,e.ins_h=e.window[c],e.ins_h=(e.ins_h<<e.hash_shift^e.window[c+1])&e.hash_mask;e.insert&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[c+C-1])&e.hash_mask,e.prev[c&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=c,c++,e.insert--,!(e.lookahead+e.insert<C)););}while(e.lookahead<T&&e.strm.avail_in!==0)}function V(e,t){for(var n,r;;){if(e.lookahead<T){if(B(e),e.lookahead<T&&t===l)return O;if(e.lookahead===0)break}if(n=0,e.lookahead>=C&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+C-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),n!==0&&e.strstart-n<=e.w_size-T&&(e.match_length=z(e,n)),e.match_length>=C)if(r=a._tr_tally(e,e.strstart-e.match_start,e.match_length-C),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=C){for(e.match_length--;e.strstart++,e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+C-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart,--e.match_length!=0;);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+1])&e.hash_mask;else r=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(r&&(I(e,!1),e.strm.avail_out===0))return O}return e.insert=e.strstart<C-1?e.strstart:C-1,t===u?(I(e,!0),e.strm.avail_out===0?A:j):e.last_lit&&(I(e,!1),e.strm.avail_out===0)?O:k}function H(e,t){for(var n,r,i;;){if(e.lookahead<T){if(B(e),e.lookahead<T&&t===l)return O;if(e.lookahead===0)break}if(n=0,e.lookahead>=C&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+C-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=C-1,n!==0&&e.prev_length<e.max_lazy_match&&e.strstart-n<=e.w_size-T&&(e.match_length=z(e,n),e.match_length<=5&&(e.strategy===1||e.match_length===C&&4096<e.strstart-e.match_start)&&(e.match_length=C-1)),e.prev_length>=C&&e.match_length<=e.prev_length){for(i=e.strstart+e.lookahead-C,r=a._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-C),e.lookahead-=e.prev_length-1,e.prev_length-=2;++e.strstart<=i&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+C-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),--e.prev_length!=0;);if(e.match_available=0,e.match_length=C-1,e.strstart++,r&&(I(e,!1),e.strm.avail_out===0))return O}else if(e.match_available){if((r=a._tr_tally(e,0,e.window[e.strstart-1]))&&I(e,!1),e.strstart++,e.lookahead--,e.strm.avail_out===0)return O}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(r=a._tr_tally(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart<C-1?e.strstart:C-1,t===u?(I(e,!0),e.strm.avail_out===0?A:j):e.last_lit&&(I(e,!1),e.strm.avail_out===0)?O:k}function U(e,t,n,r,i){this.good_length=e,this.max_lazy=t,this.nice_length=n,this.max_chain=r,this.func=i}function W(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=g,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new i.Buf16(2*x),this.dyn_dtree=new i.Buf16(2*(2*y+1)),this.bl_tree=new i.Buf16(2*(2*b+1)),P(this.dyn_ltree),P(this.dyn_dtree),P(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new i.Buf16(S+1),this.heap=new i.Buf16(2*v+1),P(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new i.Buf16(2*v+1),P(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function G(e){var t;return e&&e.state?(e.total_in=e.total_out=0,e.data_type=h,(t=e.state).pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap?E:D,e.adler=t.wrap===2?0:1,t.last_flush=l,a._tr_init(t),d):M(e,f)}function K(e){var t=G(e);return t===d&&function(e){e.window_size=2*e.w_size,P(e.head),e.max_lazy_match=r[e.level].max_lazy,e.good_match=r[e.level].good_length,e.nice_match=r[e.level].nice_length,e.max_chain_length=r[e.level].max_chain,e.strstart=0,e.block_start=0,e.lookahead=0,e.insert=0,e.match_length=e.prev_length=C-1,e.match_available=0,e.ins_h=0}(e.state),t}function q(e,t,n,r,a,o){if(!e)return f;var s=1;if(t===p&&(t=6),r<0?(s=0,r=-r):15<r&&(s=2,r-=16),a<1||_<a||n!==g||r<8||15<r||t<0||9<t||o<0||m<o)return M(e,f);r===8&&(r=9);var c=new W;return(e.state=c).strm=e,c.wrap=s,c.gzhead=null,c.w_bits=r,c.w_size=1<<c.w_bits,c.w_mask=c.w_size-1,c.hash_bits=a+7,c.hash_size=1<<c.hash_bits,c.hash_mask=c.hash_size-1,c.hash_shift=~~((c.hash_bits+C-1)/C),c.window=new i.Buf8(2*c.w_size),c.head=new i.Buf16(c.hash_size),c.prev=new i.Buf16(c.w_size),c.lit_bufsize=1<<a+6,c.pending_buf_size=4*c.lit_bufsize,c.pending_buf=new i.Buf8(c.pending_buf_size),c.d_buf=1*c.lit_bufsize,c.l_buf=3*c.lit_bufsize,c.level=t,c.strategy=o,c.method=n,K(e)}r=[new U(0,0,0,0,function(e,t){var n=65535;for(n>e.pending_buf_size-5&&(n=e.pending_buf_size-5);;){if(e.lookahead<=1){if(B(e),e.lookahead===0&&t===l)return O;if(e.lookahead===0)break}e.strstart+=e.lookahead,e.lookahead=0;var r=e.block_start+n;if((e.strstart===0||e.strstart>=r)&&(e.lookahead=e.strstart-r,e.strstart=r,I(e,!1),e.strm.avail_out===0)||e.strstart-e.block_start>=e.w_size-T&&(I(e,!1),e.strm.avail_out===0))return O}return e.insert=0,t===u?(I(e,!0),e.strm.avail_out===0?A:j):(e.strstart>e.block_start&&(I(e,!1),e.strm.avail_out),O)}),new U(4,4,8,4,V),new U(4,5,16,8,V),new U(4,6,32,32,V),new U(4,4,16,16,H),new U(8,16,32,32,H),new U(8,16,128,128,H),new U(8,32,128,256,H),new U(32,128,258,1024,H),new U(32,258,258,4096,H)],n.deflateInit=function(e,t){return q(e,t,g,15,8,0)},n.deflateInit2=q,n.deflateReset=K,n.deflateResetKeep=G,n.deflateSetHeader=function(e,t){return e&&e.state&&e.state.wrap===2?(e.state.gzhead=t,d):f},n.deflate=function(e,t){var n,i,o,c;if(!e||!e.state||5<t||t<0)return e?M(e,f):f;if(i=e.state,!e.output||!e.input&&e.avail_in!==0||i.status===666&&t!==u)return M(e,e.avail_out===0?-5:f);if(i.strm=e,n=i.last_flush,i.last_flush=t,i.status===E)if(i.wrap===2)e.adler=0,L(i,31),L(i,139),L(i,8),i.gzhead?(L(i,+!!i.gzhead.text+(i.gzhead.hcrc?2:0)+(i.gzhead.extra?4:0)+(i.gzhead.name?8:0)+(i.gzhead.comment?16:0)),L(i,255&i.gzhead.time),L(i,i.gzhead.time>>8&255),L(i,i.gzhead.time>>16&255),L(i,i.gzhead.time>>24&255),L(i,i.level===9?2:2<=i.strategy||i.level<2?4:0),L(i,255&i.gzhead.os),i.gzhead.extra&&i.gzhead.extra.length&&(L(i,255&i.gzhead.extra.length),L(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(e.adler=s(e.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=69):(L(i,0),L(i,0),L(i,0),L(i,0),L(i,0),L(i,i.level===9?2:2<=i.strategy||i.level<2?4:0),L(i,3),i.status=D);else{var p=g+(i.w_bits-8<<4)<<8;p|=(2<=i.strategy||i.level<2?0:i.level<6?1:i.level===6?2:3)<<6,i.strstart!==0&&(p|=32),p+=31-p%31,i.status=D,R(i,p),i.strstart!==0&&(R(i,e.adler>>>16),R(i,65535&e.adler)),e.adler=1}if(i.status===69)if(i.gzhead.extra){for(o=i.pending;i.gzindex<(65535&i.gzhead.extra.length)&&(i.pending!==i.pending_buf_size||(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),F(e),o=i.pending,i.pending!==i.pending_buf_size));)L(i,255&i.gzhead.extra[i.gzindex]),i.gzindex++;i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),i.gzindex===i.gzhead.extra.length&&(i.gzindex=0,i.status=73)}else i.status=73;if(i.status===73)if(i.gzhead.name){o=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),F(e),o=i.pending,i.pending===i.pending_buf_size)){c=1;break}c=i.gzindex<i.gzhead.name.length?255&i.gzhead.name.charCodeAt(i.gzindex++):0,L(i,c)}while(c!==0);i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),c===0&&(i.gzindex=0,i.status=91)}else i.status=91;if(i.status===91)if(i.gzhead.comment){o=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),F(e),o=i.pending,i.pending===i.pending_buf_size)){c=1;break}c=i.gzindex<i.gzhead.comment.length?255&i.gzhead.comment.charCodeAt(i.gzindex++):0,L(i,c)}while(c!==0);i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),c===0&&(i.status=103)}else i.status=103;if(i.status===103&&(i.gzhead.hcrc?(i.pending+2>i.pending_buf_size&&F(e),i.pending+2<=i.pending_buf_size&&(L(i,255&e.adler),L(i,e.adler>>8&255),e.adler=0,i.status=D)):i.status=D),i.pending!==0){if(F(e),e.avail_out===0)return i.last_flush=-1,d}else if(e.avail_in===0&&N(t)<=N(n)&&t!==u)return M(e,-5);if(i.status===666&&e.avail_in!==0)return M(e,-5);if(e.avail_in!==0||i.lookahead!==0||t!==l&&i.status!==666){var m=i.strategy===2?function(e,t){for(var n;;){if(e.lookahead===0&&(B(e),e.lookahead===0)){if(t===l)return O;break}if(e.match_length=0,n=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,n&&(I(e,!1),e.strm.avail_out===0))return O}return e.insert=0,t===u?(I(e,!0),e.strm.avail_out===0?A:j):e.last_lit&&(I(e,!1),e.strm.avail_out===0)?O:k}(i,t):i.strategy===3?function(e,t){for(var n,r,i,o,s=e.window;;){if(e.lookahead<=w){if(B(e),e.lookahead<=w&&t===l)return O;if(e.lookahead===0)break}if(e.match_length=0,e.lookahead>=C&&0<e.strstart&&(r=s[i=e.strstart-1])===s[++i]&&r===s[++i]&&r===s[++i]){o=e.strstart+w;do;while(r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&i<o);e.match_length=w-(o-i),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=C?(n=a._tr_tally(e,1,e.match_length-C),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(n=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),n&&(I(e,!1),e.strm.avail_out===0))return O}return e.insert=0,t===u?(I(e,!0),e.strm.avail_out===0?A:j):e.last_lit&&(I(e,!1),e.strm.avail_out===0)?O:k}(i,t):r[i.level].func(i,t);if(m!==A&&m!==j||(i.status=666),m===O||m===A)return e.avail_out===0&&(i.last_flush=-1),d;if(m===k&&(t===1?a._tr_align(i):t!==5&&(a._tr_stored_block(i,0,0,!1),t===3&&(P(i.head),i.lookahead===0&&(i.strstart=0,i.block_start=0,i.insert=0))),F(e),e.avail_out===0))return i.last_flush=-1,d}return t===u?i.wrap<=0?1:(i.wrap===2?(L(i,255&e.adler),L(i,e.adler>>8&255),L(i,e.adler>>16&255),L(i,e.adler>>24&255),L(i,255&e.total_in),L(i,e.total_in>>8&255),L(i,e.total_in>>16&255),L(i,e.total_in>>24&255)):(R(i,e.adler>>>16),R(i,65535&e.adler)),F(e),0<i.wrap&&(i.wrap=-i.wrap),i.pending===0?1:d):d},n.deflateEnd=function(e){var t;return e&&e.state?(t=e.state.status)!==E&&t!==69&&t!==73&&t!==91&&t!==103&&t!==D&&t!==666?M(e,f):(e.state=null,t===D?M(e,-3):d):f},n.deflateSetDictionary=function(e,t){var n,r,a,s,c,l,u,p,m=t.length;if(!e||!e.state||(s=(n=e.state).wrap)===2||s===1&&n.status!==E||n.lookahead)return f;for(s===1&&(e.adler=o(e.adler,t,m,0)),n.wrap=0,m>=n.w_size&&(s===0&&(P(n.head),n.strstart=0,n.block_start=0,n.insert=0),p=new i.Buf8(n.w_size),i.arraySet(p,t,m-n.w_size,n.w_size,0),t=p,m=n.w_size),c=e.avail_in,l=e.next_in,u=e.input,e.avail_in=m,e.next_in=0,e.input=t,B(n);n.lookahead>=C;){for(r=n.strstart,a=n.lookahead-(C-1);n.ins_h=(n.ins_h<<n.hash_shift^n.window[r+C-1])&n.hash_mask,n.prev[r&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=r,r++,--a;);n.strstart=r,n.lookahead=C-1,B(n)}return n.strstart+=n.lookahead,n.block_start=n.strstart,n.insert=n.lookahead,n.lookahead=0,n.match_length=n.prev_length=C-1,n.match_available=0,e.next_in=l,e.input=u,e.avail_in=c,n.wrap=s,d},n.deflateInfo=`pako deflate (from Nodeca project)`},{"../utils/common":41,"./adler32":43,"./crc32":45,"./messages":51,"./trees":52}],47:[function(e,t,n){"use strict";t.exports=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name=``,this.comment=``,this.hcrc=0,this.done=!1}},{}],48:[function(e,t,n){"use strict";t.exports=function(e,t){var n=e.state,r=e.next_in,i,a,o,s,c,l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T=e.input,E;i=r+(e.avail_in-5),a=e.next_out,E=e.output,o=a-(t-e.avail_out),s=a+(e.avail_out-257),c=n.dmax,l=n.wsize,u=n.whave,d=n.wnext,f=n.window,p=n.hold,m=n.bits,h=n.lencode,g=n.distcode,_=(1<<n.lenbits)-1,v=(1<<n.distbits)-1;e:do{m<15&&(p+=T[r++]<<m,m+=8,p+=T[r++]<<m,m+=8),y=h[p&_];t:for(;;){if(p>>>=b=y>>>24,m-=b,(b=y>>>16&255)==0)E[a++]=65535&y;else{if(!(16&b)){if(!(64&b)){y=h[(65535&y)+(p&(1<<b)-1)];continue t}if(32&b){n.mode=12;break e}e.msg=`invalid literal/length code`,n.mode=30;break e}x=65535&y,(b&=15)&&(m<b&&(p+=T[r++]<<m,m+=8),x+=p&(1<<b)-1,p>>>=b,m-=b),m<15&&(p+=T[r++]<<m,m+=8,p+=T[r++]<<m,m+=8),y=g[p&v];r:for(;;){if(p>>>=b=y>>>24,m-=b,!(16&(b=y>>>16&255))){if(!(64&b)){y=g[(65535&y)+(p&(1<<b)-1)];continue r}e.msg=`invalid distance code`,n.mode=30;break e}if(S=65535&y,m<(b&=15)&&(p+=T[r++]<<m,(m+=8)<b&&(p+=T[r++]<<m,m+=8)),c<(S+=p&(1<<b)-1)){e.msg=`invalid distance too far back`,n.mode=30;break e}if(p>>>=b,m-=b,(b=a-o)<S){if(u<(b=S-b)&&n.sane){e.msg=`invalid distance too far back`,n.mode=30;break e}if(w=f,(C=0)===d){if(C+=l-b,b<x){for(x-=b;E[a++]=f[C++],--b;);C=a-S,w=E}}else if(d<b){if(C+=l+d-b,(b-=d)<x){for(x-=b;E[a++]=f[C++],--b;);if(C=0,d<x){for(x-=b=d;E[a++]=f[C++],--b;);C=a-S,w=E}}}else if(C+=d-b,b<x){for(x-=b;E[a++]=f[C++],--b;);C=a-S,w=E}for(;2<x;)E[a++]=w[C++],E[a++]=w[C++],E[a++]=w[C++],x-=3;x&&(E[a++]=w[C++],1<x&&(E[a++]=w[C++]))}else{for(C=a-S;E[a++]=E[C++],E[a++]=E[C++],E[a++]=E[C++],2<(x-=3););x&&(E[a++]=E[C++],1<x&&(E[a++]=E[C++]))}break}}break}}while(r<i&&a<s);r-=x=m>>3,p&=(1<<(m-=x<<3))-1,e.next_in=r,e.next_out=a,e.avail_in=r<i?i-r+5:5-(r-i),e.avail_out=a<s?s-a+257:257-(a-s),n.hold=p,n.bits=m}},{}],49:[function(e,t,n){"use strict";var r=e(`../utils/common`),i=e(`./adler32`),a=e(`./crc32`),o=e(`./inffast`),s=e(`./inftrees`),c=1,l=2,u=0,d=-2,f=1,p=852,m=592;function h(e){return(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function g(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new r.Buf16(320),this.work=new r.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function _(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg=``,t.wrap&&(e.adler=1&t.wrap),t.mode=f,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new r.Buf32(p),t.distcode=t.distdyn=new r.Buf32(m),t.sane=1,t.back=-1,u):d}function v(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,_(e)):d}function y(e,t){var n,r;return e&&e.state?(r=e.state,t<0?(n=0,t=-t):(n=1+(t>>4),t<48&&(t&=15)),t&&(t<8||15<t)?d:(r.window!==null&&r.wbits!==t&&(r.window=null),r.wrap=n,r.wbits=t,v(e))):d}function b(e,t){var n,r;return e?(r=new g,(e.state=r).window=null,(n=y(e,t))!==u&&(e.state=null),n):d}var x,S,C=!0;function w(e){if(C){var t;for(x=new r.Buf32(512),S=new r.Buf32(32),t=0;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(s(c,e.lens,0,288,x,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;s(l,e.lens,0,32,S,0,e.work,{bits:5}),C=!1}e.lencode=x,e.lenbits=9,e.distcode=S,e.distbits=5}function T(e,t,n,i){var a,o=e.state;return o.window===null&&(o.wsize=1<<o.wbits,o.wnext=0,o.whave=0,o.window=new r.Buf8(o.wsize)),i>=o.wsize?(r.arraySet(o.window,t,n-o.wsize,o.wsize,0),o.wnext=0,o.whave=o.wsize):(i<(a=o.wsize-o.wnext)&&(a=i),r.arraySet(o.window,t,n-i,a,o.wnext),(i-=a)?(r.arraySet(o.window,t,n-i,i,0),o.wnext=i,o.whave=o.wsize):(o.wnext+=a,o.wnext===o.wsize&&(o.wnext=0),o.whave<o.wsize&&(o.whave+=a))),0}n.inflateReset=v,n.inflateReset2=y,n.inflateResetKeep=_,n.inflateInit=function(e){return b(e,15)},n.inflateInit2=b,n.inflate=function(e,t){var n,p,m,g,_,v,y,b,x,S,C,E,D,O,k,A,j,M,N,P,F,I,L,R,z=0,B=new r.Buf8(4),V=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!e||!e.state||!e.output||!e.input&&e.avail_in!==0)return d;(n=e.state).mode===12&&(n.mode=13),_=e.next_out,m=e.output,y=e.avail_out,g=e.next_in,p=e.input,v=e.avail_in,b=n.hold,x=n.bits,S=v,C=y,I=u;e:for(;;)switch(n.mode){case f:if(n.wrap===0){n.mode=13;break}for(;x<16;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}if(2&n.wrap&&b===35615){B[n.check=0]=255&b,B[1]=b>>>8&255,n.check=a(n.check,B,2,0),x=b=0,n.mode=2;break}if(n.flags=0,n.head&&(n.head.done=!1),!(1&n.wrap)||(((255&b)<<8)+(b>>8))%31){e.msg=`incorrect header check`,n.mode=30;break}if((15&b)!=8){e.msg=`unknown compression method`,n.mode=30;break}if(x-=4,F=8+(15&(b>>>=4)),n.wbits===0)n.wbits=F;else if(F>n.wbits){e.msg=`invalid window size`,n.mode=30;break}n.dmax=1<<F,e.adler=n.check=1,n.mode=512&b?10:12,x=b=0;break;case 2:for(;x<16;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}if(n.flags=b,(255&n.flags)!=8){e.msg=`unknown compression method`,n.mode=30;break}if(57344&n.flags){e.msg=`unknown header flags set`,n.mode=30;break}n.head&&(n.head.text=b>>8&1),512&n.flags&&(B[0]=255&b,B[1]=b>>>8&255,n.check=a(n.check,B,2,0)),x=b=0,n.mode=3;case 3:for(;x<32;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}n.head&&(n.head.time=b),512&n.flags&&(B[0]=255&b,B[1]=b>>>8&255,B[2]=b>>>16&255,B[3]=b>>>24&255,n.check=a(n.check,B,4,0)),x=b=0,n.mode=4;case 4:for(;x<16;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}n.head&&(n.head.xflags=255&b,n.head.os=b>>8),512&n.flags&&(B[0]=255&b,B[1]=b>>>8&255,n.check=a(n.check,B,2,0)),x=b=0,n.mode=5;case 5:if(1024&n.flags){for(;x<16;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}n.length=b,n.head&&(n.head.extra_len=b),512&n.flags&&(B[0]=255&b,B[1]=b>>>8&255,n.check=a(n.check,B,2,0)),x=b=0}else n.head&&(n.head.extra=null);n.mode=6;case 6:if(1024&n.flags&&(v<(E=n.length)&&(E=v),E&&(n.head&&(F=n.head.extra_len-n.length,n.head.extra||(n.head.extra=Array(n.head.extra_len)),r.arraySet(n.head.extra,p,g,E,F)),512&n.flags&&(n.check=a(n.check,p,E,g)),v-=E,g+=E,n.length-=E),n.length))break e;n.length=0,n.mode=7;case 7:if(2048&n.flags){if(v===0)break e;for(E=0;F=p[g+ E++],n.head&&F&&n.length<65536&&(n.head.name+=String.fromCharCode(F)),F&&E<v;);if(512&n.flags&&(n.check=a(n.check,p,E,g)),v-=E,g+=E,F)break e}else n.head&&(n.head.name=null);n.length=0,n.mode=8;case 8:if(4096&n.flags){if(v===0)break e;for(E=0;F=p[g+ E++],n.head&&F&&n.length<65536&&(n.head.comment+=String.fromCharCode(F)),F&&E<v;);if(512&n.flags&&(n.check=a(n.check,p,E,g)),v-=E,g+=E,F)break e}else n.head&&(n.head.comment=null);n.mode=9;case 9:if(512&n.flags){for(;x<16;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}if(b!==(65535&n.check)){e.msg=`header crc mismatch`,n.mode=30;break}x=b=0}n.head&&(n.head.hcrc=n.flags>>9&1,n.head.done=!0),e.adler=n.check=0,n.mode=12;break;case 10:for(;x<32;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}e.adler=n.check=h(b),x=b=0,n.mode=11;case 11:if(n.havedict===0)return e.next_out=_,e.avail_out=y,e.next_in=g,e.avail_in=v,n.hold=b,n.bits=x,2;e.adler=n.check=1,n.mode=12;case 12:if(t===5||t===6)break e;case 13:if(n.last){b>>>=7&x,x-=7&x,n.mode=27;break}for(;x<3;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}switch(n.last=1&b,--x,3&(b>>>=1)){case 0:n.mode=14;break;case 1:if(w(n),n.mode=20,t!==6)break;b>>>=2,x-=2;break e;case 2:n.mode=17;break;case 3:e.msg=`invalid block type`,n.mode=30}b>>>=2,x-=2;break;case 14:for(b>>>=7&x,x-=7&x;x<32;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}if((65535&b)!=(b>>>16^65535)){e.msg=`invalid stored block lengths`,n.mode=30;break}if(n.length=65535&b,x=b=0,n.mode=15,t===6)break e;case 15:n.mode=16;case 16:if(E=n.length){if(v<E&&(E=v),y<E&&(E=y),E===0)break e;r.arraySet(m,p,g,E,_),v-=E,g+=E,y-=E,_+=E,n.length-=E;break}n.mode=12;break;case 17:for(;x<14;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}if(n.nlen=257+(31&b),b>>>=5,x-=5,n.ndist=1+(31&b),b>>>=5,x-=5,n.ncode=4+(15&b),b>>>=4,x-=4,286<n.nlen||30<n.ndist){e.msg=`too many length or distance symbols`,n.mode=30;break}n.have=0,n.mode=18;case 18:for(;n.have<n.ncode;){for(;x<3;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}n.lens[V[n.have++]]=7&b,b>>>=3,x-=3}for(;n.have<19;)n.lens[V[n.have++]]=0;if(n.lencode=n.lendyn,n.lenbits=7,L={bits:n.lenbits},I=s(0,n.lens,0,19,n.lencode,0,n.work,L),n.lenbits=L.bits,I){e.msg=`invalid code lengths set`,n.mode=30;break}n.have=0,n.mode=19;case 19:for(;n.have<n.nlen+n.ndist;){for(;A=(z=n.lencode[b&(1<<n.lenbits)-1])>>>16&255,j=65535&z,!((k=z>>>24)<=x);){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}if(j<16)b>>>=k,x-=k,n.lens[n.have++]=j;else{if(j===16){for(R=k+2;x<R;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}if(b>>>=k,x-=k,n.have===0){e.msg=`invalid bit length repeat`,n.mode=30;break}F=n.lens[n.have-1],E=3+(3&b),b>>>=2,x-=2}else if(j===17){for(R=k+3;x<R;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}x-=k,F=0,E=3+(7&(b>>>=k)),b>>>=3,x-=3}else{for(R=k+7;x<R;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}x-=k,F=0,E=11+(127&(b>>>=k)),b>>>=7,x-=7}if(n.have+E>n.nlen+n.ndist){e.msg=`invalid bit length repeat`,n.mode=30;break}for(;E--;)n.lens[n.have++]=F}}if(n.mode===30)break;if(n.lens[256]===0){e.msg=`invalid code -- missing end-of-block`,n.mode=30;break}if(n.lenbits=9,L={bits:n.lenbits},I=s(c,n.lens,0,n.nlen,n.lencode,0,n.work,L),n.lenbits=L.bits,I){e.msg=`invalid literal/lengths set`,n.mode=30;break}if(n.distbits=6,n.distcode=n.distdyn,L={bits:n.distbits},I=s(l,n.lens,n.nlen,n.ndist,n.distcode,0,n.work,L),n.distbits=L.bits,I){e.msg=`invalid distances set`,n.mode=30;break}if(n.mode=20,t===6)break e;case 20:n.mode=21;case 21:if(6<=v&&258<=y){e.next_out=_,e.avail_out=y,e.next_in=g,e.avail_in=v,n.hold=b,n.bits=x,o(e,C),_=e.next_out,m=e.output,y=e.avail_out,g=e.next_in,p=e.input,v=e.avail_in,b=n.hold,x=n.bits,n.mode===12&&(n.back=-1);break}for(n.back=0;A=(z=n.lencode[b&(1<<n.lenbits)-1])>>>16&255,j=65535&z,!((k=z>>>24)<=x);){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}if(A&&!(240&A)){for(M=k,N=A,P=j;A=(z=n.lencode[P+((b&(1<<M+N)-1)>>M)])>>>16&255,j=65535&z,!(M+(k=z>>>24)<=x);){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}b>>>=M,x-=M,n.back+=M}if(b>>>=k,x-=k,n.back+=k,n.length=j,A===0){n.mode=26;break}if(32&A){n.back=-1,n.mode=12;break}if(64&A){e.msg=`invalid literal/length code`,n.mode=30;break}n.extra=15&A,n.mode=22;case 22:if(n.extra){for(R=n.extra;x<R;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}n.length+=b&(1<<n.extra)-1,b>>>=n.extra,x-=n.extra,n.back+=n.extra}n.was=n.length,n.mode=23;case 23:for(;A=(z=n.distcode[b&(1<<n.distbits)-1])>>>16&255,j=65535&z,!((k=z>>>24)<=x);){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}if(!(240&A)){for(M=k,N=A,P=j;A=(z=n.distcode[P+((b&(1<<M+N)-1)>>M)])>>>16&255,j=65535&z,!(M+(k=z>>>24)<=x);){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}b>>>=M,x-=M,n.back+=M}if(b>>>=k,x-=k,n.back+=k,64&A){e.msg=`invalid distance code`,n.mode=30;break}n.offset=j,n.extra=15&A,n.mode=24;case 24:if(n.extra){for(R=n.extra;x<R;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}n.offset+=b&(1<<n.extra)-1,b>>>=n.extra,x-=n.extra,n.back+=n.extra}if(n.offset>n.dmax){e.msg=`invalid distance too far back`,n.mode=30;break}n.mode=25;case 25:if(y===0)break e;if(E=C-y,n.offset>E){if((E=n.offset-E)>n.whave&&n.sane){e.msg=`invalid distance too far back`,n.mode=30;break}D=E>n.wnext?(E-=n.wnext,n.wsize-E):n.wnext-E,E>n.length&&(E=n.length),O=n.window}else O=m,D=_-n.offset,E=n.length;for(y<E&&(E=y),y-=E,n.length-=E;m[_++]=O[D++],--E;);n.length===0&&(n.mode=21);break;case 26:if(y===0)break e;m[_++]=n.length,y--,n.mode=21;break;case 27:if(n.wrap){for(;x<32;){if(v===0)break e;v--,b|=p[g++]<<x,x+=8}if(C-=y,e.total_out+=C,n.total+=C,C&&(e.adler=n.check=n.flags?a(n.check,m,C,_-C):i(n.check,m,C,_-C)),C=y,(n.flags?b:h(b))!==n.check){e.msg=`incorrect data check`,n.mode=30;break}x=b=0}n.mode=28;case 28:if(n.wrap&&n.flags){for(;x<32;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}if(b!==(4294967295&n.total)){e.msg=`incorrect length check`,n.mode=30;break}x=b=0}n.mode=29;case 29:I=1;break e;case 30:I=-3;break e;case 31:return-4;case 32:default:return d}return e.next_out=_,e.avail_out=y,e.next_in=g,e.avail_in=v,n.hold=b,n.bits=x,(n.wsize||C!==e.avail_out&&n.mode<30&&(n.mode<27||t!==4))&&T(e,e.output,e.next_out,C-e.avail_out)?(n.mode=31,-4):(S-=e.avail_in,C-=e.avail_out,e.total_in+=S,e.total_out+=C,n.total+=C,n.wrap&&C&&(e.adler=n.check=n.flags?a(n.check,m,C,e.next_out-C):i(n.check,m,C,e.next_out-C)),e.data_type=n.bits+(n.last?64:0)+(n.mode===12?128:0)+(n.mode===20||n.mode===15?256:0),(S==0&&C===0||t===4)&&I===u&&(I=-5),I)},n.inflateEnd=function(e){if(!e||!e.state)return d;var t=e.state;return t.window&&(t.window=null),e.state=null,u},n.inflateGetHeader=function(e,t){var n;return e&&e.state&&2&(n=e.state).wrap?((n.head=t).done=!1,u):d},n.inflateSetDictionary=function(e,t){var n,r=t.length;return e&&e.state?(n=e.state).wrap!==0&&n.mode!==11?d:n.mode===11&&i(1,t,r,0)!==n.check?-3:T(e,t,r,r)?(n.mode=31,-4):(n.havedict=1,u):d},n.inflateInfo=`pako inflate (from Nodeca project)`},{"../utils/common":41,"./adler32":43,"./crc32":45,"./inffast":48,"./inftrees":50}],50:[function(e,t,n){"use strict";var r=e(`../utils/common`),i=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],a=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],o=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],s=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];t.exports=function(e,t,n,c,l,u,d,f){var p,m,h,g,_,v,y,b,x,S=f.bits,C=0,w=0,T=0,E=0,D=0,O=0,k=0,A=0,j=0,M=0,N=null,P=0,F=new r.Buf16(16),I=new r.Buf16(16),L=null,R=0;for(C=0;C<=15;C++)F[C]=0;for(w=0;w<c;w++)F[t[n+w]]++;for(D=S,E=15;1<=E&&F[E]===0;E--);if(E<D&&(D=E),E===0)return l[u++]=20971520,l[u++]=20971520,f.bits=1,0;for(T=1;T<E&&F[T]===0;T++);for(D<T&&(D=T),C=A=1;C<=15;C++)if(A<<=1,(A-=F[C])<0)return-1;if(0<A&&(e===0||E!==1))return-1;for(I[1]=0,C=1;C<15;C++)I[C+1]=I[C]+F[C];for(w=0;w<c;w++)t[n+w]!==0&&(d[I[t[n+w]]++]=w);if(v=e===0?(N=L=d,19):e===1?(N=i,P-=257,L=a,R-=257,256):(N=o,L=s,-1),C=T,_=u,k=w=M=0,h=-1,g=(j=1<<(O=D))-1,e===1&&852<j||e===2&&592<j)return 1;for(;;){for(y=C-k,x=d[w]<v?(b=0,d[w]):d[w]>v?(b=L[R+d[w]],N[P+d[w]]):(b=96,0),p=1<<C-k,T=m=1<<O;l[_+(M>>k)+(m-=p)]=y<<24|b<<16|x|0,m!==0;);for(p=1<<C-1;M&p;)p>>=1;if(p===0?M=0:(M&=p-1,M+=p),w++,--F[C]==0){if(C===E)break;C=t[n+d[w]]}if(D<C&&(M&g)!==h){for(k===0&&(k=D),_+=T,A=1<<(O=C-k);O+k<E&&!((A-=F[O+k])<=0);)O++,A<<=1;if(j+=1<<O,e===1&&852<j||e===2&&592<j)return 1;l[h=M&g]=D<<24|O<<16|_-u|0}}return M!==0&&(l[_+M]=C-k<<24|4194304),f.bits=D,0}},{"../utils/common":41}],51:[function(e,t,n){"use strict";t.exports={2:`need dictionary`,1:`stream end`,0:``,"-1":`file error`,"-2":`stream error`,"-3":`data error`,"-4":`insufficient memory`,"-5":`buffer error`,"-6":`incompatible version`}},{}],52:[function(e,t,n){"use strict";var r=e(`../utils/common`),i=0,a=1;function o(e){for(var t=e.length;0<=--t;)e[t]=0}var s=0,c=29,l=256,u=l+1+c,d=30,f=19,p=2*u+1,m=15,h=16,g=7,_=256,v=16,y=17,b=18,x=[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],S=[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],C=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],w=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],T=Array(2*(u+2));o(T);var E=Array(2*d);o(E);var D=Array(512);o(D);var O=Array(256);o(O);var k=Array(c);o(k);var A,j,M,N=Array(d);function P(e,t,n,r,i){this.static_tree=e,this.extra_bits=t,this.extra_base=n,this.elems=r,this.max_length=i,this.has_stree=e&&e.length}function F(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function I(e){return e<256?D[e]:D[256+(e>>>7)]}function L(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function R(e,t,n){e.bi_valid>h-n?(e.bi_buf|=t<<e.bi_valid&65535,L(e,e.bi_buf),e.bi_buf=t>>h-e.bi_valid,e.bi_valid+=n-h):(e.bi_buf|=t<<e.bi_valid&65535,e.bi_valid+=n)}function z(e,t,n){R(e,n[2*t],n[2*t+1])}function B(e,t){for(var n=0;n|=1&e,e>>>=1,n<<=1,0<--t;);return n>>>1}function V(e,t,n){var r,i,a=Array(m+1),o=0;for(r=1;r<=m;r++)a[r]=o=o+n[r-1]<<1;for(i=0;i<=t;i++){var s=e[2*i+1];s!==0&&(e[2*i]=B(a[s]++,s))}}function H(e){var t;for(t=0;t<u;t++)e.dyn_ltree[2*t]=0;for(t=0;t<d;t++)e.dyn_dtree[2*t]=0;for(t=0;t<f;t++)e.bl_tree[2*t]=0;e.dyn_ltree[2*_]=1,e.opt_len=e.static_len=0,e.last_lit=e.matches=0}function U(e){8<e.bi_valid?L(e,e.bi_buf):0<e.bi_valid&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function W(e,t,n,r){var i=2*t,a=2*n;return e[i]<e[a]||e[i]===e[a]&&r[t]<=r[n]}function G(e,t,n){for(var r=e.heap[n],i=n<<1;i<=e.heap_len&&(i<e.heap_len&&W(t,e.heap[i+1],e.heap[i],e.depth)&&i++,!W(t,r,e.heap[i],e.depth));)e.heap[n]=e.heap[i],n=i,i<<=1;e.heap[n]=r}function K(e,t,n){var r,i,a,o,s=0;if(e.last_lit!==0)for(;r=e.pending_buf[e.d_buf+2*s]<<8|e.pending_buf[e.d_buf+2*s+1],i=e.pending_buf[e.l_buf+s],s++,r===0?z(e,i,t):(z(e,(a=O[i])+l+1,t),(o=x[a])!==0&&R(e,i-=k[a],o),z(e,a=I(--r),n),(o=S[a])!==0&&R(e,r-=N[a],o)),s<e.last_lit;);z(e,_,t)}function q(e,t){var n,r,i,a=t.dyn_tree,o=t.stat_desc.static_tree,s=t.stat_desc.has_stree,c=t.stat_desc.elems,l=-1;for(e.heap_len=0,e.heap_max=p,n=0;n<c;n++)a[2*n]===0?a[2*n+1]=0:(e.heap[++e.heap_len]=l=n,e.depth[n]=0);for(;e.heap_len<2;)a[2*(i=e.heap[++e.heap_len]=l<2?++l:0)]=1,e.depth[i]=0,e.opt_len--,s&&(e.static_len-=o[2*i+1]);for(t.max_code=l,n=e.heap_len>>1;1<=n;n--)G(e,a,n);for(i=c;n=e.heap[1],e.heap[1]=e.heap[e.heap_len--],G(e,a,1),r=e.heap[1],e.heap[--e.heap_max]=n,e.heap[--e.heap_max]=r,a[2*i]=a[2*n]+a[2*r],e.depth[i]=(e.depth[n]>=e.depth[r]?e.depth[n]:e.depth[r])+1,a[2*n+1]=a[2*r+1]=i,e.heap[1]=i++,G(e,a,1),2<=e.heap_len;);e.heap[--e.heap_max]=e.heap[1],function(e,t){var n,r,i,a,o,s,c=t.dyn_tree,l=t.max_code,u=t.stat_desc.static_tree,d=t.stat_desc.has_stree,f=t.stat_desc.extra_bits,h=t.stat_desc.extra_base,g=t.stat_desc.max_length,_=0;for(a=0;a<=m;a++)e.bl_count[a]=0;for(c[2*e.heap[e.heap_max]+1]=0,n=e.heap_max+1;n<p;n++)g<(a=c[2*c[2*(r=e.heap[n])+1]+1]+1)&&(a=g,_++),c[2*r+1]=a,l<r||(e.bl_count[a]++,o=0,h<=r&&(o=f[r-h]),s=c[2*r],e.opt_len+=s*(a+o),d&&(e.static_len+=s*(u[2*r+1]+o)));if(_!==0){do{for(a=g-1;e.bl_count[a]===0;)a--;e.bl_count[a]--,e.bl_count[a+1]+=2,e.bl_count[g]--,_-=2}while(0<_);for(a=g;a!==0;a--)for(r=e.bl_count[a];r!==0;)l<(i=e.heap[--n])||(c[2*i+1]!==a&&(e.opt_len+=(a-c[2*i+1])*c[2*i],c[2*i+1]=a),r--)}}(e,t),V(a,l,e.bl_count)}function J(e,t,n){var r,i,a=-1,o=t[1],s=0,c=7,l=4;for(o===0&&(c=138,l=3),t[2*(n+1)+1]=65535,r=0;r<=n;r++)i=o,o=t[2*(r+1)+1],++s<c&&i===o||(s<l?e.bl_tree[2*i]+=s:i===0?s<=10?e.bl_tree[2*y]++:e.bl_tree[2*b]++:(i!==a&&e.bl_tree[2*i]++,e.bl_tree[2*v]++),a=i,l=(s=0)===o?(c=138,3):i===o?(c=6,3):(c=7,4))}function Y(e,t,n){var r,i,a=-1,o=t[1],s=0,c=7,l=4;for(o===0&&(c=138,l=3),r=0;r<=n;r++)if(i=o,o=t[2*(r+1)+1],!(++s<c&&i===o)){if(s<l)for(;z(e,i,e.bl_tree),--s!=0;);else i===0?s<=10?(z(e,y,e.bl_tree),R(e,s-3,3)):(z(e,b,e.bl_tree),R(e,s-11,7)):(i!==a&&(z(e,i,e.bl_tree),s--),z(e,v,e.bl_tree),R(e,s-3,2));a=i,l=(s=0)===o?(c=138,3):i===o?(c=6,3):(c=7,4)}}o(N);var X=!1;function Z(e,t,n,i){R(e,(s<<1)+ +!!i,3),function(e,t,n,i){U(e),i&&(L(e,n),L(e,~n)),r.arraySet(e.pending_buf,e.window,t,n,e.pending),e.pending+=n}(e,t,n,!0)}n._tr_init=function(e){X||(function(){var e,t,n,r,i,a=Array(m+1);for(r=n=0;r<c-1;r++)for(k[r]=n,e=0;e<1<<x[r];e++)O[n++]=r;for(O[n-1]=r,r=i=0;r<16;r++)for(N[r]=i,e=0;e<1<<S[r];e++)D[i++]=r;for(i>>=7;r<d;r++)for(N[r]=i<<7,e=0;e<1<<S[r]-7;e++)D[256+ i++]=r;for(t=0;t<=m;t++)a[t]=0;for(e=0;e<=143;)T[2*e+1]=8,e++,a[8]++;for(;e<=255;)T[2*e+1]=9,e++,a[9]++;for(;e<=279;)T[2*e+1]=7,e++,a[7]++;for(;e<=287;)T[2*e+1]=8,e++,a[8]++;for(V(T,u+1,a),e=0;e<d;e++)E[2*e+1]=5,E[2*e]=B(e,5);A=new P(T,x,l+1,u,m),j=new P(E,S,0,d,m),M=new P([],C,0,f,g)}(),X=!0),e.l_desc=new F(e.dyn_ltree,A),e.d_desc=new F(e.dyn_dtree,j),e.bl_desc=new F(e.bl_tree,M),e.bi_buf=0,e.bi_valid=0,H(e)},n._tr_stored_block=Z,n._tr_flush_block=function(e,t,n,r){var o,s,c=0;0<e.level?(e.strm.data_type===2&&(e.strm.data_type=function(e){var t,n=4093624447;for(t=0;t<=31;t++,n>>>=1)if(1&n&&e.dyn_ltree[2*t]!==0)return i;if(e.dyn_ltree[18]!==0||e.dyn_ltree[20]!==0||e.dyn_ltree[26]!==0)return a;for(t=32;t<l;t++)if(e.dyn_ltree[2*t]!==0)return a;return i}(e)),q(e,e.l_desc),q(e,e.d_desc),c=function(e){var t;for(J(e,e.dyn_ltree,e.l_desc.max_code),J(e,e.dyn_dtree,e.d_desc.max_code),q(e,e.bl_desc),t=f-1;3<=t&&e.bl_tree[2*w[t]+1]===0;t--);return e.opt_len+=3*(t+1)+5+5+4,t}(e),o=e.opt_len+3+7>>>3,(s=e.static_len+3+7>>>3)<=o&&(o=s)):o=s=n+5,n+4<=o&&t!==-1?Z(e,t,n,r):e.strategy===4||s===o?(R(e,2+ +!!r,3),K(e,T,E)):(R(e,4+ +!!r,3),function(e,t,n,r){var i;for(R(e,t-257,5),R(e,n-1,5),R(e,r-4,4),i=0;i<r;i++)R(e,e.bl_tree[2*w[i]+1],3);Y(e,e.dyn_ltree,t-1),Y(e,e.dyn_dtree,n-1)}(e,e.l_desc.max_code+1,e.d_desc.max_code+1,c+1),K(e,e.dyn_ltree,e.dyn_dtree)),H(e),r&&U(e)},n._tr_tally=function(e,t,n){return e.pending_buf[e.d_buf+2*e.last_lit]=t>>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&n,e.last_lit++,t===0?e.dyn_ltree[2*n]++:(e.matches++,t--,e.dyn_ltree[2*(O[n]+l+1)]++,e.dyn_dtree[2*I(t)]++),e.last_lit===e.lit_bufsize-1},n._tr_align=function(e){R(e,2,3),z(e,_,T),function(e){e.bi_valid===16?(L(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):8<=e.bi_valid&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}},{"../utils/common":41}],53:[function(e,t,n){"use strict";t.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg=``,this.state=null,this.data_type=2,this.adler=0}},{}],54:[function(e,t,n){(function(e){(function(e,t){"use strict";if(!e.setImmediate){var n,r,i,a,o=1,s={},c=!1,l=e.document,u=Object.getPrototypeOf&&Object.getPrototypeOf(e);u=u&&u.setTimeout?u:e,n={}.toString.call(e.process)===`[object process]`?function(e){process.nextTick(function(){f(e)})}:function(){if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage(``,`*`),e.onmessage=n,t}}()?(a=`setImmediate$`+Math.random()+`$`,e.addEventListener?e.addEventListener(`message`,p,!1):e.attachEvent(`onmessage`,p),function(t){e.postMessage(a+t,`*`)}):e.MessageChannel?((i=new MessageChannel).port1.onmessage=function(e){f(e.data)},function(e){i.port2.postMessage(e)}):l&&`onreadystatechange`in l.createElement(`script`)?(r=l.documentElement,function(e){var t=l.createElement(`script`);t.onreadystatechange=function(){f(e),t.onreadystatechange=null,r.removeChild(t),t=null},r.appendChild(t)}):function(e){setTimeout(f,0,e)},u.setImmediate=function(e){typeof e!=`function`&&(e=Function(``+e));for(var t=Array(arguments.length-1),r=0;r<t.length;r++)t[r]=arguments[r+1];return s[o]={callback:e,args:t},n(o),o++},u.clearImmediate=d}function d(e){delete s[e]}function f(e){if(c)setTimeout(f,0,e);else{var n=s[e];if(n){c=!0;try{(function(e){var n=e.callback,r=e.args;switch(r.length){case 0:n();break;case 1:n(r[0]);break;case 2:n(r[0],r[1]);break;case 3:n(r[0],r[1],r[2]);break;default:n.apply(t,r)}})(n)}finally{d(e),c=!1}}}}function p(t){t.source===e&&typeof t.data==`string`&&t.data.indexOf(a)===0&&f(+t.data.slice(a.length))}})(typeof self>`u`?e===void 0?this:e:self)}).call(this,typeof global<`u`?global:typeof self<`u`?self:typeof window<`u`?window:{})},{}]},{},[10])(10)})}))(),1);async function E(e){let t=await T.default.loadAsync(e),n={},r=[];t.forEach((e,t)=>{t.dir||r.push([e,t])});let i=D(r.map(([e])=>e));for(let[e,t]of r){var a,o;let r=i?e.slice(i.length):e;if(!r)continue;let s=_(r),c={path:r,zipPath:e,editable:s,modified:!1,date:t.date||new Date,unixPermissions:(a=t.unixPermissions)==null?null:a,dosPermissions:(o=t.dosPermissions)==null?null:o};if(s){let e;try{e=await t.async(`string`)}catch{let e=await t.async(`uint8array`);n[r]={...c,editable:!1,content:null,original:null,binary:e};continue}n[r]={...c,content:e,original:e,binary:null}}else{let e=await t.async(`uint8array`);n[r]={...c,content:null,original:null,binary:e}}}return{files:n,rootPrefix:i,createdAt:new Date}}function D(e){if(e.length===0)return``;let t=e[0],n=t.indexOf(`/`);if(n<=0)return``;let r=t.slice(0,n+1);for(let t of e)if(!t.startsWith(r))return``;return r}async function O(e){let t=new T.default,n=e.rootPrefix||``;for(let[i,a]of Object.entries(e.files)){let e=n+i,o={date:a.date,createFolders:!0};if(a.unixPermissions!=null&&(o.unixPermissions=a.unixPermissions),a.dosPermissions!=null&&(o.dosPermissions=a.dosPermissions),a.editable){var r;t.file(e,(r=a.content)==null?``:r,o)}else t.file(e,a.binary,{...o,binary:!0})}return t.generateAsync({type:`blob`,mimeType:`application/zip`,compression:`DEFLATE`,compressionOptions:{level:6}})}function k(){let e=window.location.pathname,t=e.indexOf(`/ghost/`),n=t>=0?e.slice(0,t):``;return{subdir:n,adminRoot:`${n}/ghost/`,apiRoot:`${n}/ghost/api/admin`}}async function A(e){let{apiRoot:t}=k(),n=`${t}/themes/${encodeURIComponent(e)}/download`,r;try{r=await fetch(n,{method:`GET`,credentials:`same-origin`,headers:{Accept:`application/zip, application/octet-stream, */*`}})}catch(t){throw new M(`Network error while downloading "${e}": ${t.message}`,0,t)}if(!r.ok)throw new M(j(r.status,`download`,e),r.status);return r.arrayBuffer()}function j(e,t,n){switch(e){case 401:return`Not authorized to ${t} "${n}". Your Ghost session may have expired — reload the page and sign in again.`;case 403:return`Forbidden: your Ghost account does not have permission to ${t} themes.`;case 404:return`Theme "${n}" was not found on this Ghost install.`;case 413:return`The theme ZIP is too large for Ghost to accept.`;case 500:case 502:case 503:case 504:return`Ghost returned a ${e} error while trying to ${t} "${n}". Try again in a moment.`;default:return`Ghost returned HTTP ${e} while trying to ${t} "${n}".`}}var M=class extends Error{constructor(e,t=0,n){super(e),this.name=`GhostApiError`,this.status=t,n&&(this.cause=n)}};async function N(e,t){let{apiRoot:n}=k(),r=`${n}/themes/upload`,i=new FormData,a=`${e}.zip`;i.append(`file`,t,a);let o;try{o=await fetch(r,{method:`POST`,credentials:`same-origin`,headers:{Accept:`application/json`},body:i})}catch(t){throw new M(`Network error while uploading "${e}": ${t.message}`,0,t)}let s=null;try{s=await o.json()}catch{}if(!o.ok)throw new M(P(s)||j(o.status,`upload`,e),o.status,s);return s}function P(e){if(!e||!Array.isArray(e.errors)||e.errors.length===0)return null;let t=e.errors[0];return[t.message,t.context,t.help].filter(Boolean).join(` — `)}var F=`/*
3
3
  * All selectors are scoped under .gte-modal-root so we never leak styles into
4
4
  * Ghost Admin's Ember or admin-x React trees. Colors are picked to read well
@@ -118,6 +118,17 @@
118
118
  .gte-btn--ghost:hover {
119
119
  background: #1f2228;
120
120
  }
121
+ .gte-btn--icon {
122
+ width: 28px;
123
+ height: 28px;
124
+ padding: 0;
125
+ border-radius: 999px;
126
+ font-size: 14px;
127
+ font-weight: 700;
128
+ display: inline-flex;
129
+ align-items: center;
130
+ justify-content: center;
131
+ }
121
132
  .gte-btn[disabled] {
122
133
  opacity: 0.5;
123
134
  cursor: not-allowed;
@@ -141,6 +152,11 @@
141
152
  font-size: 13px;
142
153
  }
143
154
 
155
+ .gte-tree:focus-visible {
156
+ outline: 2px solid #4a9eff;
157
+ outline-offset: -2px;
158
+ }
159
+
144
160
  .gte-tree__empty {
145
161
  padding: 16px;
146
162
  color: #8a8f98;
@@ -172,6 +188,9 @@
172
188
  background: #243043;
173
189
  color: #ffffff;
174
190
  }
191
+ .gte-tree__node--selected {
192
+ background: #202630;
193
+ }
175
194
  .gte-tree__node--binary {
176
195
  color: #6a6f78;
177
196
  cursor: not-allowed;
@@ -286,6 +305,76 @@
286
305
  color: #a5e8c8;
287
306
  }
288
307
 
308
+ /* ---------- Shortcuts overlay ---------- */
309
+
310
+ .gte-shortcuts {
311
+ position: absolute;
312
+ inset: 0;
313
+ z-index: 2;
314
+ display: flex;
315
+ align-items: center;
316
+ justify-content: center;
317
+ background: rgba(8, 10, 14, 0.64);
318
+ }
319
+
320
+ .gte-shortcuts__panel {
321
+ width: min(520px, calc(100% - 32px));
322
+ background: #171a20;
323
+ border: 1px solid #2b3038;
324
+ border-radius: 10px;
325
+ padding: 16px;
326
+ box-shadow: 0 24px 64px rgba(0, 0, 0, 0.45);
327
+ }
328
+
329
+ .gte-shortcuts__title {
330
+ margin: 0 0 12px;
331
+ font-size: 16px;
332
+ font-weight: 600;
333
+ color: #f4f5f7;
334
+ }
335
+
336
+ .gte-shortcuts__list {
337
+ display: grid;
338
+ grid-template-columns: auto 1fr;
339
+ gap: 8px 14px;
340
+ margin: 0;
341
+ }
342
+
343
+ .gte-shortcuts__list dt {
344
+ color: #f0c674;
345
+ font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
346
+ font-size: 12px;
347
+ white-space: nowrap;
348
+ }
349
+
350
+ .gte-shortcuts__list dd {
351
+ margin: 0;
352
+ color: #c8ccd3;
353
+ font-size: 13px;
354
+ }
355
+
356
+ .gte-shortcuts__note {
357
+ margin: 12px 0 14px;
358
+ color: #8f95a1;
359
+ font-size: 12px;
360
+ }
361
+
362
+ .gte-shortcuts__copyright {
363
+ margin: 0 0 14px;
364
+ color: #7a808b;
365
+ font-size: 11px;
366
+ }
367
+
368
+ .gte-shortcuts__copyright-link {
369
+ color: #9cbdf4;
370
+ text-decoration: none;
371
+ }
372
+
373
+ .gte-shortcuts__copyright-link:hover,
374
+ .gte-shortcuts__copyright-link:focus-visible {
375
+ text-decoration: underline;
376
+ }
377
+
289
378
  /* ---------- Loading state ---------- */
290
379
 
291
380
  .gte-loading {
@@ -407,4 +496,4 @@
407
496
  border-bottom: 1px solid #23262c;
408
497
  }
409
498
  }
410
- `,I=!1;function L(){if(I||typeof document>`u`)return;let e=document.createElement(`style`);e.setAttribute(`data-gte-styles`,`1`),e.textContent=F,document.head.appendChild(e),I=!0}var R=null;function z(e,t=`info`,n=4e3){if(typeof document>`u`)return;R&&(R.remove(),R=null);let r=document.createElement(`div`);r.className=`gte-toast gte-toast--${t}`,r.setAttribute(`role`,`status`),r.textContent=e,document.body.appendChild(r),r.offsetWidth,r.classList.add(`gte-toast--visible`),R=r,window.setTimeout(()=>{r.isConnected&&(r.classList.remove(`gte-toast--visible`),window.setTimeout(()=>r.remove(),220),R===r&&(R=null))},n)}function B(e){"@babel/helpers - typeof";return B=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},B(e)}function V(e,t){if(B(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(B(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function H(e){var t=V(e,`string`);return B(t)==`symbol`?t:t+``}function U(e,t,n){return(t=H(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var W=class e{constructor({themeName:e}){this.themeName=e,this.tree=null,this.activePath=null,this.status=`idle`,this.error=null,this.deletedCount=0,this.previousFocus=document.activeElement,L(),this.buildDom()}buildDom(){this.root=document.createElement(`div`),this.root.className=`gte-modal-root`,this.root.setAttribute(`role`,`dialog`),this.root.setAttribute(`aria-modal`,`true`),this.root.setAttribute(`aria-label`,`Edit theme ${this.themeName}`),this.modal=document.createElement(`div`),this.modal.className=`gte-modal`,this.root.appendChild(this.modal),this.toolbar=document.createElement(`div`),this.toolbar.className=`gte-toolbar`,this.modal.appendChild(this.toolbar);let e=document.createElement(`div`);e.className=`gte-toolbar__title`,e.innerHTML=``,this.titleName=document.createElement(`span`),this.titleName.textContent=this.themeName,e.appendChild(this.titleName);let t=document.createElement(`span`);t.className=`gte-toolbar__subtitle`,t.textContent=`— Ghost theme`,e.appendChild(t),this.toolbar.appendChild(e),this.dirtyBadge=document.createElement(`span`),this.dirtyBadge.className=`gte-toolbar__badge`,this.dirtyBadge.textContent=`0 files modified`,this.toolbar.appendChild(this.dirtyBadge);let n=document.createElement(`div`);n.className=`gte-toolbar__spacer`,this.toolbar.appendChild(n),this.cancelBtn=document.createElement(`button`),this.cancelBtn.type=`button`,this.cancelBtn.className=`gte-btn gte-btn--ghost`,this.cancelBtn.textContent=`Cancel`,this.cancelBtn.addEventListener(`click`,()=>this.requestClose()),this.toolbar.appendChild(this.cancelBtn),this.saveBtn=document.createElement(`button`),this.saveBtn.type=`button`,this.saveBtn.className=`gte-btn gte-btn--primary`,this.saveBtn.textContent=`Save & Upload`,this.saveBtn.disabled=!0,this.saveBtn.addEventListener(`click`,()=>this.handleSave()),this.toolbar.appendChild(this.saveBtn),this.body=document.createElement(`div`),this.body.className=`gte-body`,this.modal.appendChild(this.body),this.loading=document.createElement(`div`),this.loading.className=`gte-loading`;let r=document.createElement(`div`);r.className=`gte-spinner`,this.loading.appendChild(r);let i=document.createElement(`div`);i.textContent=`Downloading "${this.themeName}"…`,this.loading.appendChild(i),this.body.appendChild(this.loading),this.banner=document.createElement(`div`),this.banner.className=`gte-banner`,this.banner.style.display=`none`,this.modal.appendChild(this.banner),this.onKeydown=e=>{e.key===`Escape`&&(e.stopPropagation(),this.requestClose())},this.root.addEventListener(`keydown`,this.onKeydown),this.root.addEventListener(`click`,e=>{e.target===this.root&&this.requestClose()})}async mount(){document.body.appendChild(this.root),this.prevBodyOverflow=document.body.style.overflow,document.body.style.overflow=`hidden`;try{var e,t;(e=(t=this.modal).focus)==null||e.call(t)}catch{}await this.loadTheme()}async loadTheme(){this.status=`loading`;try{this.tree=await E(await A(this.themeName)),this.status=`ready`,this.renderReady()}catch(e){this.status=`error`,this.error=e,this.renderError(e)}}renderReady(){this.loading.remove(),this.fileTree=new m({files:this.tree.files,onSelect:e=>this.selectFile(e),isActive:e=>e===this.activePath,onCreateFile:e=>this.handleCreateFile(e),onCreateFolder:e=>this.handleCreateFolder(e),onRename:(e,t)=>this.handleRenameNode(e,t),onDelete:(e,t)=>this.handleDeleteNode(e,t)}),this.fileEditor=new w({onChange:(e,t)=>this.handleEdit(e,t)}),this.body.appendChild(this.fileTree.el),this.body.appendChild(this.fileEditor.el),this.fileTree.render();let e=this.pickDefaultFile();e&&this.selectFile(e),this.updateDirtyBadge()}pickDefaultFile(){let e=this.tree.files;if(e[`package.json`])return`package.json`;let t=Object.keys(e).sort();for(let n of t)if(e[n].editable)return n;return null}renderError(e){this.loading.remove(),this.banner.style.display=`block`,this.banner.className=`gte-banner gte-banner--error`,this.banner.textContent=e instanceof M?e.message:`Something went wrong: ${(e==null?void 0:e.message)||e}`;let t=document.createElement(`div`);t.style.marginTop=`8px`;let n=document.createElement(`button`);n.type=`button`,n.className=`gte-btn`,n.textContent=`Retry`,n.addEventListener(`click`,()=>{this.banner.style.display=`none`;let e=document.createElement(`div`);e.className=`gte-loading`;let t=document.createElement(`div`);t.className=`gte-spinner`,e.appendChild(t);let n=document.createElement(`div`);n.textContent=`Downloading "${this.themeName}"…`,e.appendChild(n),this.body.appendChild(e),this.loading=e,this.loadTheme()}),t.appendChild(n),this.banner.appendChild(t)}selectFile(e){var t;if(!this.tree)return;let n=this.tree.files[e];!n||!n.editable||(this.activePath=e,this.fileEditor.setFile(e,(t=n.content)==null?``:t),this.fileTree.refresh())}handleEdit(e,t){let n=this.tree.files[e];if(!n||!n.editable)return;n.content=t;let r=n.modified;n.modified=n.content!==n.original,n.modified!==r&&this.fileTree.refresh(),this.updateDirtyBadge()}dirtyCount(){if(!this.tree)return 0;let e=this.deletedCount;for(let t of Object.values(this.tree.files))t.modified&&e++;return e}updateDirtyBadge(){let e=this.dirtyCount();this.dirtyBadge.textContent=e===1?`1 file modified`:`${e} files modified`,this.dirtyBadge.classList.toggle(`gte-toolbar__badge--dirty`,e>0),this.saveBtn.disabled=e===0||this.status===`saving`}resolveUploadName(){return e.DEFAULT_THEMES.has(this.themeName)?`${this.themeName}-edited`:this.themeName}async handleSave(){if(this.status===`saving`)return;let e=this.dirtyCount();if(e===0)return;let t=this.resolveUploadName(),n=t!==this.themeName,r=n?`"${this.themeName}" is a built-in Ghost theme and cannot be overwritten.\n\nYour changes will be uploaded as a new theme called "${t}".\n\nDo you want to continue?`:`Upload ${e} modified file${e===1?``:`s`} and replace the "${this.themeName}" theme on this Ghost install?\n\nGhost will keep a backup of the previous version automatically.`;if(window.confirm(r)){this.status=`saving`,this.saveBtn.disabled=!0,this.cancelBtn.disabled=!0,this.showBanner(`Packing and uploading theme…`,`info`);try{await N(t,await O(this.tree)),n&&(this.themeName=t,this.titleName.textContent=t,this.root.setAttribute(`aria-label`,`Edit theme ${t}`));for(let e of Object.values(this.tree.files))e.editable&&(e.original=e.content,e.modified=!1);this.deletedCount=0,this.status=`ready`,this.updateDirtyBadge(),this.fileTree.refresh(),this.hideBanner(),z(`Theme "${t}" uploaded successfully.`,`success`),this.cancelBtn.disabled=!1,this.close()}catch(e){this.status=`ready`,this.cancelBtn.disabled=!1,this.saveBtn.disabled=!1;let t=e instanceof M?e.message:`Upload failed: ${(e==null?void 0:e.message)||e}`;this.showBanner(t,`error`)}}}handleCreateFile(e){let t=window.prompt(`New file name:`);if(!t)return;let n=t.trim();if(!n||n.includes(`..`)||n.startsWith(`/`)){z(`Invalid file name.`,`error`);return}let r=e?`${e}${n}`:n;if(this.tree.files[r]){z(`"${r}" already exists.`,`error`);return}let i=_(r);this.tree.files[r]={path:r,zipPath:(this.tree.rootPrefix||``)+r,editable:i,content:i?``:null,original:i?``:null,binary:i?null:new Uint8Array,modified:!0,date:new Date,unixPermissions:null,dosPermissions:null},e&&this.fileTree.expanded.add(e),this.fileTree.refresh(),this.updateDirtyBadge(),i&&this.selectFile(r)}handleCreateFolder(e){let t=window.prompt(`New folder name:`);if(!t)return;let n=t.trim();if(!n||n.includes(`..`)||n.includes(`/`)||n.startsWith(`.`)){z(`Invalid folder name.`,`error`);return}let r=e?`${e}${n}/`:`${n}/`,i=`${r}.gitkeep`;if(this.tree.files[i]){z(`Folder "${n}" already exists.`,`error`);return}this.tree.files[i]={path:i,zipPath:(this.tree.rootPrefix||``)+i,editable:!1,content:null,original:null,binary:new Uint8Array,modified:!0,date:new Date,unixPermissions:null,dosPermissions:null},e&&this.fileTree.expanded.add(e),this.fileTree.expanded.add(r),this.fileTree.refresh(),this.updateDirtyBadge()}handleRenameNode(e,t){if(t===`file`){let t=e.split(`/`),r=t[t.length-1],i=window.prompt(`Rename to:`,r);if(!i)return;let a=i.trim();if(!a||a===r)return;if(a.includes(`/`)||a.includes(`..`)){z(`Invalid file name.`,`error`);return}let o=[...t.slice(0,-1),a].join(`/`);if(this.tree.files[o]){z(`"${o}" already exists.`,`error`);return}let s=this.tree.files[e];if(s.path=o,s.zipPath=(this.tree.rootPrefix||``)+o,s.modified=!0,this.tree.files[o]=s,delete this.tree.files[e],this.activePath===e){var n;this.activePath=o,this.fileEditor.setFile(o,(n=s.content)==null?``:n)}}else{let t=e.slice(0,-1).split(`/`),n=t[t.length-1],i=window.prompt(`Rename folder to:`,n);if(!i)return;let a=i.trim();if(!a||a===n)return;if(a.includes(`/`)||a.includes(`..`)){z(`Invalid folder name.`,`error`);return}let o=[...t.slice(0,-1),a].join(`/`)+`/`,s=Object.keys(this.tree.files).filter(t=>t.startsWith(e));for(let t of s){let n=this.tree.files[t],i=o+t.slice(e.length);if(n.path=i,n.zipPath=(this.tree.rootPrefix||``)+i,n.modified=!0,this.tree.files[i]=n,delete this.tree.files[t],this.activePath===t){var r;this.activePath=i,this.fileEditor.setFile(i,(r=n.content)==null?``:r)}}this.fileTree.expanded.has(e)&&(this.fileTree.expanded.delete(e),this.fileTree.expanded.add(o))}this.fileTree.refresh(),this.updateDirtyBadge()}handleDeleteNode(e,t){if(t===`file`){let t=e.split(`/`).pop();if(!window.confirm(`Delete "${t}"?`))return;delete this.tree.files[e],this.deletedCount++,this.activePath===e&&(this.activePath=null,this.fileEditor.setFile(null))}else{let t=Object.keys(this.tree.files).filter(t=>t.startsWith(e)),n=e.slice(0,-1).split(`/`).pop(),r=t.length===1?`file`:`files`;if(!window.confirm(`Delete folder "${n}" and all ${t.length} ${r} inside?`))return;let i=!1;for(let e of t)delete this.tree.files[e],this.deletedCount++,this.activePath===e&&(i=!0);i&&(this.activePath=null,this.fileEditor.setFile(null))}this.fileTree.refresh(),this.updateDirtyBadge()}showBanner(e,t=`info`){this.banner.style.display=`block`,this.banner.className=`gte-banner${t===`error`?` gte-banner--error`:t===`success`?` gte-banner--success`:``}`,this.banner.textContent=e}hideBanner(){this.banner.style.display=`none`,this.banner.textContent=``}requestClose(){if(this.status===`saving`)return;let e=this.dirtyCount();e>0&&!window.confirm(`You have ${e} unsaved file${e===1?``:`s`}. Discard changes and close?`)||this.close()}close(){var e,t;this.root.removeEventListener(`keydown`,this.onKeydown),this.root.remove(),document.body.style.overflow=(e=this.prevBodyOverflow)==null?``:e,(t=this.fileEditor)==null||t.dispose();try{var n,r;(n=this.previousFocus)==null||(r=n.focus)==null||r.call(n)}catch{}}};U(W,`DEFAULT_THEMES`,new Set([`source`,`casper`]));function G(){window.__gteInjectorStarted||(window.__gteInjectorStarted=!0,new MutationObserver(e=>{for(let t of e)for(let e of t.addedNodes){if(!(e instanceof Element))continue;let t=K(e);for(let e of t)q(e)}}).observe(document.body,{childList:!0,subtree:!0}),document.querySelectorAll(`[data-testid="popover-content"]`).forEach(q))}function K(e){let t=[];return e.matches&&e.matches(`[data-testid="popover-content"]`)&&t.push(e),e.querySelectorAll&&e.querySelectorAll(`[data-testid="popover-content"]`).forEach(e=>t.push(e)),t}function q(e){if(e.querySelector(`[data-gte-edit-button]`))return;let t=J(e);if(!t)return;let n=Y(e);if(!n)return;let r=X(t,n);t.parentNode.insertBefore(r,t)}function J(e){let t=e.querySelectorAll(`button`);for(let e of t)if((e.textContent||``).trim()===`Download`)return e;return null}function Y(e){let t=e.id,n=null;if(t&&(n=document.querySelector(`[aria-controls="${CSS.escape(t)}"]`)),!n)return null;let r=n.parentElement;for(;r&&r!==document.body;){let e=r.querySelector(`[id^="theme-"]`);if(e){let t=e.getAttribute(`id`)||``;return t.startsWith(`theme-`)&&t.slice(6)||null}r=r.parentElement}return null}function X(e,t){let n=document.createElement(`button`);return n.type=`button`,n.className=`${e.className} gte-injected-item`,n.dataset.gteEditButton=`1`,n.dataset.gteThemeName=t,n.textContent=`Edit in Browser`,n.addEventListener(`click`,e=>{e.preventDefault(),e.stopPropagation(),Z(t)}),n}function Z(e){try{new W({themeName:e}).mount()}catch(e){console.error(`[ghost-theme-editor] Failed to open editor:`,e),window.alert(`Could not open the theme editor: ${(e==null?void 0:e.message)||e}`)}}var Q=`0.2.1`;function $(){if(window.location.pathname.includes(`/ghost/`))try{G(),console.info(`%c[ghost-theme-editor] ${Q} ready — open a theme's "…" menu to see the editor.`,`color:#14b886`)}catch(e){console.error(`[ghost-theme-editor] failed to start:`,e)}}document.readyState===`loading`?document.addEventListener(`DOMContentLoaded`,$,{once:!0}):$()})();
499
+ `,I=!1;function L(){if(I||typeof document>`u`)return;let e=document.createElement(`style`);e.setAttribute(`data-gte-styles`,`1`),e.textContent=F,document.head.appendChild(e),I=!0}var R=null;function z(e,t=`info`,n=4e3){if(typeof document>`u`)return;R&&(R.remove(),R=null);let r=document.createElement(`div`);r.className=`gte-toast gte-toast--${t}`,r.setAttribute(`role`,`status`),r.textContent=e,document.body.appendChild(r),r.offsetWidth,r.classList.add(`gte-toast--visible`),R=r,window.setTimeout(()=>{r.isConnected&&(r.classList.remove(`gte-toast--visible`),window.setTimeout(()=>r.remove(),220),R===r&&(R=null))},n)}function B(e){"@babel/helpers - typeof";return B=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},B(e)}function V(e,t){if(B(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(B(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function H(e){var t=V(e,`string`);return B(t)==`symbol`?t:t+``}function U(e,t,n){return(t=H(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var W=class e{constructor({themeName:e}){this.themeName=e,this.tree=null,this.activePath=null,this.status=`idle`,this.error=null,this.deletedCount=0,this.previousFocus=document.activeElement,L(),this.buildDom()}buildDom(){this.root=document.createElement(`div`),this.root.className=`gte-modal-root`,this.root.setAttribute(`role`,`dialog`),this.root.setAttribute(`aria-modal`,`true`),this.root.setAttribute(`aria-label`,`Edit theme ${this.themeName}`),this.modal=document.createElement(`div`),this.modal.className=`gte-modal`,this.root.appendChild(this.modal),this.toolbar=document.createElement(`div`),this.toolbar.className=`gte-toolbar`,this.modal.appendChild(this.toolbar);let e=document.createElement(`div`);e.className=`gte-toolbar__title`,e.innerHTML=``,this.titleName=document.createElement(`span`),this.titleName.textContent=this.themeName,e.appendChild(this.titleName);let t=document.createElement(`span`);t.className=`gte-toolbar__subtitle`,t.textContent=`— Ghost theme`,e.appendChild(t),this.toolbar.appendChild(e),this.dirtyBadge=document.createElement(`span`),this.dirtyBadge.className=`gte-toolbar__badge`,this.dirtyBadge.textContent=`0 files modified`,this.toolbar.appendChild(this.dirtyBadge);let n=document.createElement(`div`);n.className=`gte-toolbar__spacer`,this.toolbar.appendChild(n),this.shortcutsBtn=document.createElement(`button`),this.shortcutsBtn.type=`button`,this.shortcutsBtn.className=`gte-btn gte-btn--ghost gte-btn--icon`,this.shortcutsBtn.textContent=`?`,this.shortcutsBtn.title=`Keyboard shortcuts`,this.shortcutsBtn.setAttribute(`aria-label`,`Keyboard shortcuts`),this.shortcutsBtn.addEventListener(`click`,()=>this.toggleShortcuts()),this.toolbar.appendChild(this.shortcutsBtn),this.cancelBtn=document.createElement(`button`),this.cancelBtn.type=`button`,this.cancelBtn.className=`gte-btn gte-btn--ghost`,this.cancelBtn.textContent=`Cancel`,this.cancelBtn.addEventListener(`click`,()=>this.requestClose()),this.toolbar.appendChild(this.cancelBtn),this.saveBtn=document.createElement(`button`),this.saveBtn.type=`button`,this.saveBtn.className=`gte-btn gte-btn--primary`,this.saveBtn.textContent=`Save & Upload`,this.saveBtn.disabled=!0,this.saveBtn.addEventListener(`click`,()=>this.handleSave()),this.toolbar.appendChild(this.saveBtn),this.body=document.createElement(`div`),this.body.className=`gte-body`,this.modal.appendChild(this.body),this.loading=document.createElement(`div`),this.loading.className=`gte-loading`;let r=document.createElement(`div`);r.className=`gte-spinner`,this.loading.appendChild(r);let i=document.createElement(`div`);i.textContent=`Downloading "${this.themeName}"…`,this.loading.appendChild(i),this.body.appendChild(this.loading),this.banner=document.createElement(`div`),this.banner.className=`gte-banner`,this.banner.style.display=`none`,this.modal.appendChild(this.banner),this.shortcutOverlay=document.createElement(`div`),this.shortcutOverlay.className=`gte-shortcuts`,this.shortcutOverlay.style.display=`none`,this.shortcutOverlay.addEventListener(`click`,e=>{e.target===this.shortcutOverlay&&this.hideShortcuts()}),this.shortcutPanel=document.createElement(`div`),this.shortcutPanel.className=`gte-shortcuts__panel`,this.shortcutPanel.setAttribute(`role`,`dialog`),this.shortcutPanel.setAttribute(`aria-modal`,`true`),this.shortcutPanel.setAttribute(`aria-label`,`Keyboard shortcuts`);let a=document.createElement(`h3`);a.className=`gte-shortcuts__title`,a.textContent=`Keyboard shortcuts`,this.shortcutPanel.appendChild(a);let o=document.createElement(`dl`);o.className=`gte-shortcuts__list`;for(let[e,t]of[[`Cmd/Ctrl + S`,`Save and upload changes`],[`Esc`,`Close modal (asks before discarding changes)`],[`Arrow Up/Down`,`Move selection in file tree`],[`Arrow Right`,`Open selected folder in file tree`],[`Arrow Left`,`Close selected folder in file tree`],[`Enter / Space`,`Toggle selected folder or open selected file`],[`F2`,`Rename selected tree item`],[`Delete`,`Delete selected tree item`]]){let n=document.createElement(`dt`);n.textContent=e;let r=document.createElement(`dd`);r.textContent=t,o.appendChild(n),o.appendChild(r)}this.shortcutPanel.appendChild(o);let s=document.createElement(`p`);s.className=`gte-shortcuts__note`,s.textContent=`Tree shortcuts work when the file tree is focused.`,this.shortcutPanel.appendChild(s);let c=document.createElement(`p`);c.className=`gte-shortcuts__copyright`,c.appendChild(document.createTextNode(`Copyright (c) 2026 Synaps Media. Licensed under the MIT License. `));let l=document.createElement(`a`);l.className=`gte-shortcuts__copyright-link`,l.href=`https://github.com/synapsmedia/ghost-theme-editor/blob/main/LICENSE`,l.target=`_blank`,l.rel=`noopener noreferrer`,l.textContent=`View license`,c.appendChild(l),this.shortcutPanel.appendChild(c);let u=document.createElement(`button`);u.type=`button`,u.className=`gte-btn gte-btn--ghost`,u.textContent=`Close`,u.addEventListener(`click`,()=>this.hideShortcuts()),this.shortcutPanel.appendChild(u),this.shortcutOverlay.appendChild(this.shortcutPanel),this.modal.appendChild(this.shortcutOverlay),this.onKeydown=e=>{if((e.metaKey||e.ctrlKey)&&!e.shiftKey&&!e.altKey&&e.key.toLowerCase()===`s`){e.preventDefault(),e.stopPropagation(),this.handleSave();return}if(e.key===`Escape`){if(e.stopPropagation(),this.shortcutOverlay.style.display!==`none`){this.hideShortcuts();return}this.requestClose()}},this.root.addEventListener(`keydown`,this.onKeydown),this.root.addEventListener(`click`,e=>{e.target===this.root&&this.requestClose()})}async mount(){document.body.appendChild(this.root),this.prevBodyOverflow=document.body.style.overflow,document.body.style.overflow=`hidden`;try{var e,t;(e=(t=this.modal).focus)==null||e.call(t)}catch{}await this.loadTheme()}async loadTheme(){this.status=`loading`;try{this.tree=await E(await A(this.themeName)),this.status=`ready`,this.renderReady()}catch(e){this.status=`error`,this.error=e,this.renderError(e)}}renderReady(){this.loading.remove(),this.fileTree=new m({files:this.tree.files,onSelect:e=>this.selectFile(e),isActive:e=>e===this.activePath,onCreateFile:e=>this.handleCreateFile(e),onCreateFolder:e=>this.handleCreateFolder(e),onRename:(e,t)=>this.handleRenameNode(e,t),onDelete:(e,t)=>this.handleDeleteNode(e,t)}),this.fileEditor=new w({onChange:(e,t)=>this.handleEdit(e,t)}),this.body.appendChild(this.fileTree.el),this.body.appendChild(this.fileEditor.el),this.fileTree.render();let e=this.pickDefaultFile();e&&this.selectFile(e,{focusEditor:!0}),this.updateDirtyBadge()}pickDefaultFile(){let e=this.tree.files;if(e[`package.json`])return`package.json`;let t=Object.keys(e).sort();for(let n of t)if(e[n].editable)return n;return null}renderError(e){this.loading.remove(),this.banner.style.display=`block`,this.banner.className=`gte-banner gte-banner--error`,this.banner.textContent=e instanceof M?e.message:`Something went wrong: ${(e==null?void 0:e.message)||e}`;let t=document.createElement(`div`);t.style.marginTop=`8px`;let n=document.createElement(`button`);n.type=`button`,n.className=`gte-btn`,n.textContent=`Retry`,n.addEventListener(`click`,()=>{this.banner.style.display=`none`;let e=document.createElement(`div`);e.className=`gte-loading`;let t=document.createElement(`div`);t.className=`gte-spinner`,e.appendChild(t);let n=document.createElement(`div`);n.textContent=`Downloading "${this.themeName}"…`,e.appendChild(n),this.body.appendChild(e),this.loading=e,this.loadTheme()}),t.appendChild(n),this.banner.appendChild(t)}selectFile(e,{focusEditor:t=!1}={}){var n;if(!this.tree)return;let r=this.tree.files[e];!r||!r.editable||(this.activePath=e,this.fileEditor.setFile(e,(n=r.content)==null?``:n,{focus:t}),this.fileTree.refresh())}handleEdit(e,t){let n=this.tree.files[e];if(!n||!n.editable)return;n.content=t;let r=n.modified;n.modified=n.content!==n.original,n.modified!==r&&this.fileTree.refresh(),this.updateDirtyBadge()}dirtyCount(){if(!this.tree)return 0;let e=this.deletedCount;for(let t of Object.values(this.tree.files))t.modified&&e++;return e}updateDirtyBadge(){let e=this.dirtyCount();this.dirtyBadge.textContent=e===1?`1 file modified`:`${e} files modified`,this.dirtyBadge.classList.toggle(`gte-toolbar__badge--dirty`,e>0),this.saveBtn.disabled=e===0||this.status===`saving`}resolveUploadName(){return e.DEFAULT_THEMES.has(this.themeName)?`${this.themeName}-edited`:this.themeName}async handleSave(){if(this.status===`saving`)return;let e=this.dirtyCount();if(e===0)return;let t=this.resolveUploadName(),n=t!==this.themeName,r=n?`"${this.themeName}" is a built-in Ghost theme and cannot be overwritten.\n\nYour changes will be uploaded as a new theme called "${t}".\n\nDo you want to continue?`:`Upload ${e} modified file${e===1?``:`s`} and replace the "${this.themeName}" theme on this Ghost install?\n\nGhost will keep a backup of the previous version automatically.`;if(window.confirm(r)){this.status=`saving`,this.saveBtn.disabled=!0,this.cancelBtn.disabled=!0,this.showBanner(`Packing and uploading theme…`,`info`);try{await N(t,await O(this.tree)),n&&(this.themeName=t,this.titleName.textContent=t,this.root.setAttribute(`aria-label`,`Edit theme ${t}`));for(let e of Object.values(this.tree.files))e.editable&&(e.original=e.content),e.modified=!1;this.deletedCount=0,this.status=`ready`,this.updateDirtyBadge(),this.fileTree.refresh(),this.hideBanner(),z(`Theme "${t}" uploaded successfully.`,`success`),this.cancelBtn.disabled=!1}catch(e){this.status=`ready`,this.cancelBtn.disabled=!1,this.saveBtn.disabled=!1;let t=e instanceof M?e.message:`Upload failed: ${(e==null?void 0:e.message)||e}`;this.showBanner(t,`error`)}}}handleCreateFile(e){let t=window.prompt(`New file name:`);if(!t)return;let n=t.trim();if(!n||n.includes(`..`)||n.startsWith(`/`)){z(`Invalid file name.`,`error`);return}let r=e?`${e}${n}`:n;if(this.tree.files[r]){z(`"${r}" already exists.`,`error`);return}let i=_(r);this.tree.files[r]={path:r,zipPath:(this.tree.rootPrefix||``)+r,editable:i,content:i?``:null,original:i?``:null,binary:i?null:new Uint8Array,modified:!0,date:new Date,unixPermissions:null,dosPermissions:null},e&&this.fileTree.expanded.add(e),this.fileTree.refresh(),this.updateDirtyBadge(),i&&this.selectFile(r)}handleCreateFolder(e){let t=window.prompt(`New folder name:`);if(!t)return;let n=t.trim();if(!n||n.includes(`..`)||n.includes(`/`)||n.startsWith(`.`)){z(`Invalid folder name.`,`error`);return}let r=e?`${e}${n}/`:`${n}/`,i=`${r}.gitkeep`;if(this.tree.files[i]){z(`Folder "${n}" already exists.`,`error`);return}this.tree.files[i]={path:i,zipPath:(this.tree.rootPrefix||``)+i,editable:!1,content:null,original:null,binary:new Uint8Array,modified:!0,date:new Date,unixPermissions:null,dosPermissions:null},e&&this.fileTree.expanded.add(e),this.fileTree.expanded.add(r),this.fileTree.refresh(),this.updateDirtyBadge()}handleRenameNode(e,t){if(t===`file`){let t=e.split(`/`),r=t[t.length-1],i=window.prompt(`Rename to:`,r);if(!i)return;let a=i.trim();if(!a||a===r)return;if(a.includes(`/`)||a.includes(`..`)){z(`Invalid file name.`,`error`);return}let o=[...t.slice(0,-1),a].join(`/`);if(this.tree.files[o]){z(`"${o}" already exists.`,`error`);return}let s=this.tree.files[e];if(s.path=o,s.zipPath=(this.tree.rootPrefix||``)+o,s.modified=!0,this.tree.files[o]=s,delete this.tree.files[e],this.activePath===e){var n;this.activePath=o,this.fileEditor.setFile(o,(n=s.content)==null?``:n)}}else{let t=e.slice(0,-1).split(`/`),n=t[t.length-1],i=window.prompt(`Rename folder to:`,n);if(!i)return;let a=i.trim();if(!a||a===n)return;if(a.includes(`/`)||a.includes(`..`)){z(`Invalid folder name.`,`error`);return}let o=[...t.slice(0,-1),a].join(`/`)+`/`,s=Object.keys(this.tree.files).filter(t=>t.startsWith(e));for(let t of s){let n=this.tree.files[t],i=o+t.slice(e.length);if(n.path=i,n.zipPath=(this.tree.rootPrefix||``)+i,n.modified=!0,this.tree.files[i]=n,delete this.tree.files[t],this.activePath===t){var r;this.activePath=i,this.fileEditor.setFile(i,(r=n.content)==null?``:r)}}this.fileTree.expanded.has(e)&&(this.fileTree.expanded.delete(e),this.fileTree.expanded.add(o))}this.fileTree.refresh(),this.updateDirtyBadge()}handleDeleteNode(e,t){if(t===`file`){let t=e.split(`/`).pop();if(!window.confirm(`Delete "${t}"?`))return;delete this.tree.files[e],this.deletedCount++,this.activePath===e&&(this.activePath=null,this.fileEditor.setFile(null))}else{let t=Object.keys(this.tree.files).filter(t=>t.startsWith(e)),n=e.slice(0,-1).split(`/`).pop(),r=t.length===1?`file`:`files`;if(!window.confirm(`Delete folder "${n}" and all ${t.length} ${r} inside?`))return;let i=!1;for(let e of t)delete this.tree.files[e],this.deletedCount++,this.activePath===e&&(i=!0);i&&(this.activePath=null,this.fileEditor.setFile(null))}this.fileTree.refresh(),this.updateDirtyBadge()}showBanner(e,t=`info`){this.banner.style.display=`block`,this.banner.className=`gte-banner${t===`error`?` gte-banner--error`:t===`success`?` gte-banner--success`:``}`,this.banner.textContent=e}hideBanner(){this.banner.style.display=`none`,this.banner.textContent=``}toggleShortcuts(){this.shortcutOverlay.style.display===`none`?this.showShortcuts():this.hideShortcuts()}showShortcuts(){this.shortcutOverlay.style.display=`flex`}hideShortcuts(){this.shortcutOverlay.style.display=`none`}requestClose(){if(this.status===`saving`)return;let e=this.dirtyCount();e>0&&!window.confirm(`You have ${e} unsaved file${e===1?``:`s`}. Discard changes and close?`)||this.close()}close(){var e,t;this.hideShortcuts(),this.root.removeEventListener(`keydown`,this.onKeydown),this.root.remove(),document.body.style.overflow=(e=this.prevBodyOverflow)==null?``:e,(t=this.fileEditor)==null||t.dispose();try{var n,r;(n=this.previousFocus)==null||(r=n.focus)==null||r.call(n)}catch{}}};U(W,`DEFAULT_THEMES`,new Set([`source`,`casper`]));function G(){window.__gteInjectorStarted||(window.__gteInjectorStarted=!0,new MutationObserver(e=>{for(let t of e)for(let e of t.addedNodes){if(!(e instanceof Element))continue;let t=K(e);for(let e of t)q(e)}}).observe(document.body,{childList:!0,subtree:!0}),document.querySelectorAll(`[data-testid="popover-content"]`).forEach(q))}function K(e){let t=[];return e.matches&&e.matches(`[data-testid="popover-content"]`)&&t.push(e),e.querySelectorAll&&e.querySelectorAll(`[data-testid="popover-content"]`).forEach(e=>t.push(e)),t}function q(e){if(e.querySelector(`[data-gte-edit-button]`))return;let t=J(e);if(!t)return;let n=Y(e);if(!n)return;let r=X(t,n);t.parentNode.insertBefore(r,t)}function J(e){let t=e.querySelectorAll(`button`);for(let e of t)if((e.textContent||``).trim()===`Download`)return e;return null}function Y(e){let t=e.id,n=null;if(t&&(n=document.querySelector(`[aria-controls="${CSS.escape(t)}"]`)),!n)return null;let r=n.parentElement;for(;r&&r!==document.body;){let e=r.querySelector(`[id^="theme-"]`);if(e){let t=e.getAttribute(`id`)||``;return t.startsWith(`theme-`)&&t.slice(6)||null}r=r.parentElement}return null}function X(e,t){let n=document.createElement(`button`);return n.type=`button`,n.className=`${e.className} gte-injected-item`,n.dataset.gteEditButton=`1`,n.dataset.gteThemeName=t,n.textContent=`Edit in Browser`,n.addEventListener(`click`,e=>{e.preventDefault(),e.stopPropagation(),Z(t)}),n}function Z(e){try{new W({themeName:e}).mount()}catch(e){console.error(`[ghost-theme-editor] Failed to open editor:`,e),window.alert(`Could not open the theme editor: ${(e==null?void 0:e.message)||e}`)}}var Q=`0.2.2`;function $(){if(window.location.pathname.includes(`/ghost/`))try{G(),console.info(`%c[ghost-theme-editor] ${Q} ready — open a theme's "…" menu to see the editor.`,`color:#14b886`)}catch(e){console.error(`[ghost-theme-editor] failed to start:`,e)}}document.readyState===`loading`?document.addEventListener(`DOMContentLoaded`,$,{once:!0}):$()})();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@synapsmedia/ghost-theme-editor",
3
- "version": "0.2.2",
3
+ "version": "0.3.0",
4
4
  "description": "A browser-based Ghost theme editor injected into Ghost Admin via clientExtensions.",
5
5
  "license": "MIT",
6
6
  "private": false,