import{r as e,t}from"./chunk-CilyBKbf.js";import{E as n,M as r,N as i,P as a,S as o,T as s,b as c,d as l,j as u,k as d,t as f,u as p,v as m,x as h}from"./index-Cg_J6o2b.js";import{t as g}from"./RuneCanvas-BsnSoPng.js";var _=t(((e,t)=>{t.exports=function(){return typeof Promise==`function`&&Promise.prototype&&Promise.prototype.then}})),v=t((e=>{var t,n=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];e.getSymbolSize=function(e){if(!e)throw Error(`"version" cannot be null or undefined`);if(e<1||e>40)throw Error(`"version" should be in range from 1 to 40`);return e*4+17},e.getSymbolTotalCodewords=function(e){return n[e]},e.getBCHDigit=function(e){let t=0;for(;e!==0;)t++,e>>>=1;return t},e.setToSJISFunction=function(e){if(typeof e!=`function`)throw Error(`"toSJISFunc" is not a valid function.`);t=e},e.isKanjiModeEnabled=function(){return t!==void 0},e.toSJIS=function(e){return t(e)}})),y=t((e=>{e.L={bit:1},e.M={bit:0},e.Q={bit:3},e.H={bit:2};function t(t){if(typeof t!=`string`)throw Error(`Param is not a string`);switch(t.toLowerCase()){case`l`:case`low`:return e.L;case`m`:case`medium`:return e.M;case`q`:case`quartile`:return e.Q;case`h`:case`high`:return e.H;default:throw Error(`Unknown EC Level: `+t)}}e.isValid=function(e){return e&&e.bit!==void 0&&e.bit>=0&&e.bit<4},e.from=function(n,r){if(e.isValid(n))return n;try{return t(n)}catch{return r}}})),b=t(((e,t)=>{function n(){this.buffer=[],this.length=0}n.prototype={get:function(e){let t=Math.floor(e/8);return(this.buffer[t]>>>7-e%8&1)==1},put:function(e,t){for(let n=0;n>>t-n-1&1)==1)},getLengthInBits:function(){return this.length},putBit:function(e){let t=Math.floor(this.length/8);this.buffer.length<=t&&this.buffer.push(0),e&&(this.buffer[t]|=128>>>this.length%8),this.length++}},t.exports=n})),x=t(((e,t)=>{function n(e){if(!e||e<1)throw Error(`BitMatrix size must be defined and greater than 0`);this.size=e,this.data=new Uint8Array(e*e),this.reservedBit=new Uint8Array(e*e)}n.prototype.set=function(e,t,n,r){let i=e*this.size+t;this.data[i]=n,r&&(this.reservedBit[i]=!0)},n.prototype.get=function(e,t){return this.data[e*this.size+t]},n.prototype.xor=function(e,t,n){this.data[e*this.size+t]^=n},n.prototype.isReserved=function(e,t){return this.reservedBit[e*this.size+t]},t.exports=n})),S=t((e=>{var t=v().getSymbolSize;e.getRowColCoords=function(e){if(e===1)return[];let n=Math.floor(e/7)+2,r=t(e),i=r===145?26:Math.ceil((r-13)/(2*n-2))*2,a=[r-7];for(let e=1;e{var t=v().getSymbolSize,n=7;e.getPositions=function(e){let r=t(e);return[[0,0],[r-n,0],[0,r-n]]}})),w=t((e=>{e.Patterns={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7};var t={N1:3,N2:3,N3:40,N4:10};e.isValid=function(e){return e!=null&&e!==``&&!isNaN(e)&&e>=0&&e<=7},e.from=function(t){return e.isValid(t)?parseInt(t,10):void 0},e.getPenaltyN1=function(e){let n=e.size,r=0,i=0,a=0,o=null,s=null;for(let c=0;c=5&&(r+=t.N1+(i-5)),o=n,i=1),n=e.get(l,c),n===s?a++:(a>=5&&(r+=t.N1+(a-5)),s=n,a=1)}i>=5&&(r+=t.N1+(i-5)),a>=5&&(r+=t.N1+(a-5))}return r},e.getPenaltyN2=function(e){let n=e.size,r=0;for(let t=0;t=10&&(i===1488||i===93)&&r++,a=a<<1&2047|e.get(o,t),o>=10&&(a===1488||a===93)&&r++}return r*t.N3},e.getPenaltyN4=function(e){let n=0,r=e.data.length;for(let t=0;t{var t=y(),n=[1,1,1,1,1,1,1,1,1,1,2,2,1,2,2,4,1,2,4,4,2,4,4,4,2,4,6,5,2,4,6,6,2,5,8,8,4,5,8,8,4,5,8,11,4,8,10,11,4,9,12,16,4,9,16,16,6,10,12,18,6,10,17,16,6,11,16,19,6,13,18,21,7,14,21,25,8,16,20,25,8,17,23,25,9,17,23,34,9,18,25,30,10,20,27,32,12,21,29,35,12,23,34,37,12,25,34,40,13,26,35,42,14,28,38,45,15,29,40,48,16,31,43,51,17,33,45,54,18,35,48,57,19,37,51,60,19,38,53,63,20,40,56,66,21,43,59,70,22,45,62,74,24,47,65,77,25,49,68,81],r=[7,10,13,17,10,16,22,28,15,26,36,44,20,36,52,64,26,48,72,88,36,64,96,112,40,72,108,130,48,88,132,156,60,110,160,192,72,130,192,224,80,150,224,264,96,176,260,308,104,198,288,352,120,216,320,384,132,240,360,432,144,280,408,480,168,308,448,532,180,338,504,588,196,364,546,650,224,416,600,700,224,442,644,750,252,476,690,816,270,504,750,900,300,560,810,960,312,588,870,1050,336,644,952,1110,360,700,1020,1200,390,728,1050,1260,420,784,1140,1350,450,812,1200,1440,480,868,1290,1530,510,924,1350,1620,540,980,1440,1710,570,1036,1530,1800,570,1064,1590,1890,600,1120,1680,1980,630,1204,1770,2100,660,1260,1860,2220,720,1316,1950,2310,750,1372,2040,2430];e.getBlocksCount=function(e,r){switch(r){case t.L:return n[(e-1)*4+0];case t.M:return n[(e-1)*4+1];case t.Q:return n[(e-1)*4+2];case t.H:return n[(e-1)*4+3];default:return}},e.getTotalCodewordsCount=function(e,n){switch(n){case t.L:return r[(e-1)*4+0];case t.M:return r[(e-1)*4+1];case t.Q:return r[(e-1)*4+2];case t.H:return r[(e-1)*4+3];default:return}}})),E=t((e=>{var t=new Uint8Array(512),n=new Uint8Array(256);(function(){let e=1;for(let r=0;r<255;r++)t[r]=e,n[e]=r,e<<=1,e&256&&(e^=285);for(let e=255;e<512;e++)t[e]=t[e-255]})(),e.log=function(e){if(e<1)throw Error(`log(`+e+`)`);return n[e]},e.exp=function(e){return t[e]},e.mul=function(e,r){return e===0||r===0?0:t[n[e]+n[r]]}})),D=t((e=>{var t=E();e.mul=function(e,n){let r=new Uint8Array(e.length+n.length-1);for(let i=0;i=0;){let e=r[0];for(let i=0;i{var n=D();function r(e){this.genPoly=void 0,this.degree=e,this.degree&&this.initialize(this.degree)}r.prototype.initialize=function(e){this.degree=e,this.genPoly=n.generateECPolynomial(this.degree)},r.prototype.encode=function(e){if(!this.genPoly)throw Error(`Encoder not initialized`);let t=new Uint8Array(e.length+this.degree);t.set(e);let r=n.mod(t,this.genPoly),i=this.degree-r.length;if(i>0){let e=new Uint8Array(this.degree);return e.set(r,i),e}return r},t.exports=r})),k=t((e=>{e.isValid=function(e){return!isNaN(e)&&e>=1&&e<=40}})),A=t((e=>{var t=`[0-9]+`,n=`[A-Z $%*+\\-./:]+`,r=`(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+`;r=r.replace(/u/g,`\\u`);var i=`(?:(?![A-Z0-9 $%*+\\-./:]|`+r+`)(?:.|[\r ]))+`;e.KANJI=new RegExp(r,`g`),e.BYTE_KANJI=RegExp(`[^A-Z0-9 $%*+\\-./:]+`,`g`),e.BYTE=new RegExp(i,`g`),e.NUMERIC=new RegExp(t,`g`),e.ALPHANUMERIC=new RegExp(n,`g`);var a=RegExp(`^`+r+`$`),o=RegExp(`^`+t+`$`),s=RegExp(`^[A-Z0-9 $%*+\\-./:]+$`);e.testKanji=function(e){return a.test(e)},e.testNumeric=function(e){return o.test(e)},e.testAlphanumeric=function(e){return s.test(e)}})),j=t((e=>{var t=k(),n=A();e.NUMERIC={id:`Numeric`,bit:1,ccBits:[10,12,14]},e.ALPHANUMERIC={id:`Alphanumeric`,bit:2,ccBits:[9,11,13]},e.BYTE={id:`Byte`,bit:4,ccBits:[8,16,16]},e.KANJI={id:`Kanji`,bit:8,ccBits:[8,10,12]},e.MIXED={bit:-1},e.getCharCountIndicator=function(e,n){if(!e.ccBits)throw Error(`Invalid mode: `+e);if(!t.isValid(n))throw Error(`Invalid version: `+n);return n>=1&&n<10?e.ccBits[0]:n<27?e.ccBits[1]:e.ccBits[2]},e.getBestModeForData=function(t){return n.testNumeric(t)?e.NUMERIC:n.testAlphanumeric(t)?e.ALPHANUMERIC:n.testKanji(t)?e.KANJI:e.BYTE},e.toString=function(e){if(e&&e.id)return e.id;throw Error(`Invalid mode`)},e.isValid=function(e){return e&&e.bit&&e.ccBits};function r(t){if(typeof t!=`string`)throw Error(`Param is not a string`);switch(t.toLowerCase()){case`numeric`:return e.NUMERIC;case`alphanumeric`:return e.ALPHANUMERIC;case`kanji`:return e.KANJI;case`byte`:return e.BYTE;default:throw Error(`Unknown mode: `+t)}}e.from=function(t,n){if(e.isValid(t))return t;try{return r(t)}catch{return n}}})),M=t((e=>{var t=v(),n=T(),r=y(),i=j(),a=k(),o=7973,s=t.getBCHDigit(o);function c(t,n,r){for(let i=1;i<=40;i++)if(n<=e.getCapacity(i,r,t))return i}function l(e,t){return i.getCharCountIndicator(e,t)+4}function u(e,t){let n=0;return e.forEach(function(e){let r=l(e.mode,t);n+=r+e.getBitsLength()}),n}function d(t,n){for(let r=1;r<=40;r++)if(u(t,r)<=e.getCapacity(r,n,i.MIXED))return r}e.from=function(e,t){return a.isValid(e)?parseInt(e,10):t},e.getCapacity=function(e,r,o){if(!a.isValid(e))throw Error(`Invalid QR Code version`);o===void 0&&(o=i.BYTE);let s=(t.getSymbolTotalCodewords(e)-n.getTotalCodewordsCount(e,r))*8;if(o===i.MIXED)return s;let c=s-l(o,e);switch(o){case i.NUMERIC:return Math.floor(c/10*3);case i.ALPHANUMERIC:return Math.floor(c/11*2);case i.KANJI:return Math.floor(c/13);case i.BYTE:default:return Math.floor(c/8)}},e.getBestVersionForData=function(e,t){let n,i=r.from(t,r.M);if(Array.isArray(e)){if(e.length>1)return d(e,i);if(e.length===0)return 1;n=e[0]}else n=e;return c(n.mode,n.getLength(),i)},e.getEncodedBits=function(e){if(!a.isValid(e)||e<7)throw Error(`Invalid QR Code version`);let n=e<<12;for(;t.getBCHDigit(n)-s>=0;)n^=o<{var t=v(),n=1335,r=21522,i=t.getBCHDigit(n);e.getEncodedBits=function(e,a){let o=e.bit<<3|a,s=o<<10;for(;t.getBCHDigit(s)-i>=0;)s^=n<{var n=j();function r(e){this.mode=n.NUMERIC,this.data=e.toString()}r.getBitsLength=function(e){return 10*Math.floor(e/3)+(e%3?e%3*3+1:0)},r.prototype.getLength=function(){return this.data.length},r.prototype.getBitsLength=function(){return r.getBitsLength(this.data.length)},r.prototype.write=function(e){let t,n,r;for(t=0;t+3<=this.data.length;t+=3)n=this.data.substr(t,3),r=parseInt(n,10),e.put(r,10);let i=this.data.length-t;i>0&&(n=this.data.substr(t),r=parseInt(n,10),e.put(r,i*3+1))},t.exports=r})),P=t(((e,t)=>{var n=j(),r=`0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:`.split(``);function i(e){this.mode=n.ALPHANUMERIC,this.data=e}i.getBitsLength=function(e){return 11*Math.floor(e/2)+e%2*6},i.prototype.getLength=function(){return this.data.length},i.prototype.getBitsLength=function(){return i.getBitsLength(this.data.length)},i.prototype.write=function(e){let t;for(t=0;t+2<=this.data.length;t+=2){let n=r.indexOf(this.data[t])*45;n+=r.indexOf(this.data[t+1]),e.put(n,11)}this.data.length%2&&e.put(r.indexOf(this.data[t]),6)},t.exports=i})),F=t(((e,t)=>{var n=j();function r(e){this.mode=n.BYTE,typeof e==`string`?this.data=new TextEncoder().encode(e):this.data=new Uint8Array(e)}r.getBitsLength=function(e){return e*8},r.prototype.getLength=function(){return this.data.length},r.prototype.getBitsLength=function(){return r.getBitsLength(this.data.length)},r.prototype.write=function(e){for(let t=0,n=this.data.length;t{var n=j(),r=v();function i(e){this.mode=n.KANJI,this.data=e}i.getBitsLength=function(e){return e*13},i.prototype.getLength=function(){return this.data.length},i.prototype.getBitsLength=function(){return i.getBitsLength(this.data.length)},i.prototype.write=function(e){let t;for(t=0;t=33088&&n<=40956)n-=33088;else if(n>=57408&&n<=60351)n-=49472;else throw Error(`Invalid SJIS character: `+this.data[t]+` Make sure your charset is UTF-8`);n=(n>>>8&255)*192+(n&255),e.put(n,13)}},t.exports=i})),ne=t(((e,t)=>{var n={single_source_shortest_paths:function(e,t,r){var i={},a={};a[t]=0;var o=n.PriorityQueue.make();o.push(t,0);for(var s,c,l,u,d,f,p,m,h;!o.empty();)for(l in s=o.pop(),c=s.value,u=s.cost,d=e[c]||{},d)d.hasOwnProperty(l)&&(f=d[l],p=u+f,m=a[l],h=a[l]===void 0,(h||m>p)&&(a[l]=p,o.push(l,p),i[l]=c));if(r!==void 0&&a[r]===void 0){var g=[`Could not find a path from `,t,` to `,r,`.`].join(``);throw Error(g)}return i},extract_shortest_path_from_predecessor_list:function(e,t){for(var n=[],r=t;r;)n.push(r),e[r],r=e[r];return n.reverse(),n},find_path:function(e,t,r){var i=n.single_source_shortest_paths(e,t,r);return n.extract_shortest_path_from_predecessor_list(i,r)},PriorityQueue:{make:function(e){var t=n.PriorityQueue,r={},i;for(i in e||={},t)t.hasOwnProperty(i)&&(r[i]=t[i]);return r.queue=[],r.sorter=e.sorter||t.default_sorter,r},default_sorter:function(e,t){return e.cost-t.cost},push:function(e,t){var n={value:e,cost:t};this.queue.push(n),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return this.queue.length===0}}};t!==void 0&&(t.exports=n)})),re=t((e=>{var t=j(),n=N(),r=P(),i=F(),a=te(),o=A(),s=v(),c=ne();function l(e){return unescape(encodeURIComponent(e)).length}function u(e,t,n){let r=[],i;for(;(i=e.exec(n))!==null;)r.push({data:i[0],index:i.index,mode:t,length:i[0].length});return r}function d(e){let n=u(o.NUMERIC,t.NUMERIC,e),r=u(o.ALPHANUMERIC,t.ALPHANUMERIC,e),i,a;return s.isKanjiModeEnabled()?(i=u(o.BYTE,t.BYTE,e),a=u(o.KANJI,t.KANJI,e)):(i=u(o.BYTE_KANJI,t.BYTE,e),a=[]),n.concat(r,i,a).sort(function(e,t){return e.index-t.index}).map(function(e){return{data:e.data,mode:e.mode,length:e.length}})}function f(e,o){switch(o){case t.NUMERIC:return n.getBitsLength(e);case t.ALPHANUMERIC:return r.getBitsLength(e);case t.KANJI:return a.getBitsLength(e);case t.BYTE:return i.getBitsLength(e)}}function p(e){return e.reduce(function(e,t){let n=e.length-1>=0?e[e.length-1]:null;return n&&n.mode===t.mode?(e[e.length-1].data+=t.data,e):(e.push(t),e)},[])}function m(e){let n=[];for(let r=0;r{var t=v(),n=y(),r=b(),i=x(),a=S(),o=C(),s=w(),c=T(),l=O(),u=M(),d=ee(),f=j(),p=re();function m(e,t){let n=e.size,r=o.getPositions(t);for(let t=0;t=0&&t<=6&&(r===0||r===6)||r>=0&&r<=6&&(t===0||t===6)||t>=2&&t<=4&&r>=2&&r<=4?e.set(i+t,a+r,!0,!0):e.set(i+t,a+r,!1,!0))}}function h(e){let t=e.size;for(let n=8;n>t&1)==1,e.set(i,a,o,!0),e.set(a,i,o,!0)}function E(e,t,n){let r=e.size,i=d.getEncodedBits(t,n),a,o;for(a=0;a<15;a++)o=(i>>a&1)==1,a<6?e.set(a,8,o,!0):a<8?e.set(a+1,8,o,!0):e.set(r-15+a,8,o,!0),a<8?e.set(8,r-a-1,o,!0):a<9?e.set(8,15-a-1+1,o,!0):e.set(8,15-a-1,o,!0);e.set(r-8,8,1,!0)}function D(e,t){let n=e.size,r=-1,i=n-1,a=7,o=0;for(let s=n-1;s>0;s-=2)for(s===6&&s--;;){for(let n=0;n<2;n++)if(!e.isReserved(i,s-n)){let r=!1;o>>a&1)==1),e.set(i,s-n,r),a--,a===-1&&(o++,a=7)}if(i+=r,i<0||n<=i){i-=r,r=-r;break}}}function k(e,n,i){let a=new r;i.forEach(function(t){a.put(t.mode.bit,4),a.put(t.getLength(),f.getCharCountIndicator(t.mode,e)),t.write(a)});let o=(t.getSymbolTotalCodewords(e)-c.getTotalCodewordsCount(e,n))*8;for(a.getLengthInBits()+4<=o&&a.put(0,4);a.getLengthInBits()%8!=0;)a.putBit(0);let s=(o-a.getLengthInBits())/8;for(let e=0;e=7&&_(d,n),D(d,l),isNaN(a)&&(a=s.getBestMask(d,E.bind(null,d,r))),s.applyMask(a,d),E(d,r,a),{modules:d,version:n,errorCorrectionLevel:r,maskPattern:a,segments:o}}e.create=function(e,r){if(e===void 0||e===``)throw Error(`No input text`);let i=n.M,a,o;return r!==void 0&&(i=n.from(r.errorCorrectionLevel,n.M),a=u.from(r.version),o=s.from(r.maskPattern),r.toSJISFunc&&t.setToSJISFunction(r.toSJISFunc)),N(e,a,i,o)}})),I=t((e=>{function t(e){if(typeof e==`number`&&(e=e.toString()),typeof e!=`string`)throw Error(`Color should be defined as hex string`);let t=e.slice().replace(`#`,``).split(``);if(t.length<3||t.length===5||t.length>8)throw Error(`Invalid hex color: `+e);(t.length===3||t.length===4)&&(t=Array.prototype.concat.apply([],t.map(function(e){return[e,e]}))),t.length===6&&t.push(`F`,`F`);let n=parseInt(t.join(``),16);return{r:n>>24&255,g:n>>16&255,b:n>>8&255,a:n&255,hex:`#`+t.slice(0,6).join(``)}}e.getOptions=function(e){e||={},e.color||={};let n=e.margin===void 0||e.margin===null||e.margin<0?4:e.margin,r=e.width&&e.width>=21?e.width:void 0,i=e.scale||4;return{width:r,scale:r?4:i,margin:n,color:{dark:t(e.color.dark||`#000000ff`),light:t(e.color.light||`#ffffffff`)},type:e.type,rendererOpts:e.rendererOpts||{}}},e.getScale=function(e,t){return t.width&&t.width>=e+t.margin*2?t.width/(e+t.margin*2):t.scale},e.getImageWidth=function(t,n){let r=e.getScale(t,n);return Math.floor((t+n.margin*2)*r)},e.qrToImageData=function(t,n,r){let i=n.modules.size,a=n.modules.data,o=e.getScale(i,r),s=Math.floor((i+r.margin*2)*o),c=r.margin*o,l=[r.color.light,r.color.dark];for(let e=0;e=c&&n>=c&&e{var t=I();function n(e,t,n){e.clearRect(0,0,t.width,t.height),t.style||={},t.height=n,t.width=n,t.style.height=n+`px`,t.style.width=n+`px`}function r(){try{return document.createElement(`canvas`)}catch{throw Error(`You need to specify a canvas element`)}}e.render=function(e,i,a){let o=a,s=i;o===void 0&&(!i||!i.getContext)&&(o=i,i=void 0),i||(s=r()),o=t.getOptions(o);let c=t.getImageWidth(e.modules.size,o),l=s.getContext(`2d`),u=l.createImageData(c,c);return t.qrToImageData(u.data,e,o),n(l,s,c),l.putImageData(u,0,0),s},e.renderToDataURL=function(t,n,r){let i=r;i===void 0&&(!n||!n.getContext)&&(i=n,n=void 0),i||={};let a=e.render(t,n,i),o=i.type||`image/png`,s=i.rendererOpts||{};return a.toDataURL(o,s.quality)}})),L=t((e=>{var t=I();function n(e,t){let n=e.a/255,r=t+`="`+e.hex+`"`;return n<1?r+` `+t+`-opacity="`+n.toFixed(2).slice(1)+`"`:r}function r(e,t,n){let r=e+t;return n!==void 0&&(r+=` `+n),r}function i(e,t,n){let i=``,a=0,o=!1,s=0;for(let c=0;c0&&l>0&&e[c-1]||(i+=o?r(`M`,l+n,.5+u+n):r(`m`,a,0),a=0,o=!1),l+1`:``,d=``,f=`viewBox="0 0 `+l+` `+l+`"`,p=``+u+d+` `;return typeof a==`function`&&a(null,p),p}})),R=e(t((e=>{var t=_(),n=ie(),r=ae(),i=L();function a(e,r,i,a,o){let s=[].slice.call(arguments,1),c=s.length,l=typeof s[c-1]==`function`;if(!l&&!t())throw Error(`Callback required as last argument`);if(l){if(c<2)throw Error(`Too few arguments provided`);c===2?(o=i,i=r,r=a=void 0):c===3&&(r.getContext&&o===void 0?(o=a,a=void 0):(o=a,a=i,i=r,r=void 0))}else{if(c<1)throw Error(`Too few arguments provided`);return c===1?(i=r,r=a=void 0):c===2&&!r.getContext&&(a=i,i=r,r=void 0),new Promise(function(t,o){try{t(e(n.create(i,a),r,a))}catch(e){o(e)}})}try{let t=n.create(i,a);o(null,e(t,r,a))}catch(e){o(e)}}e.create=n.create,e.toCanvas=a.bind(null,r.render),e.toDataURL=a.bind(null,r.renderToDataURL),e.toString=a.bind(null,function(e,t,n){return i.render(e,n)})}))(),1);async function z(e,t={}){if(e.length>2953)throw Error(`QR_PAYLOAD_TOO_LARGE`);let n=document.createElement(`canvas`);return await R.toCanvas(n,[{data:e,mode:`byte`}],{errorCorrectionLevel:`L`,margin:t.margin??4,scale:t.scale??6,color:{dark:`#000000`,light:`#ffffff`}}),n}async function B(e,t={}){if(e.length>2953)throw Error(`QR_PAYLOAD_TOO_LARGE`);return R.toDataURL([{data:e,mode:`byte`}],{errorCorrectionLevel:`L`,margin:t.margin??4,scale:t.scale??6,color:{dark:`#000000`,light:`#ffffff`}})}var V=s(`
`),H=s(`

peachscript

Your vault as a string of Peach symbols you can paste into Peach on another device. Designed for Peach-to-Peach transfer.

print backup

Save a Mayan code you can print and store. Scan it with Peach on any device to restore.

CSV (leaving peach)

Plain-text export for moving into another password manager. Anyone with the file can read your passwords.

Paste the script — or import the .peach file — into Peach on your other device to restore your vault. Won't work anywhere else.`),W=s(`

`),G=s(`
`),K=s(`

Passwords don't match`),q=s(`

At least 8 characters`),J=s(`

backup password

Choose a password to lock this PeachScript. You'll need it to restore on another device.

Print this and keep it somewhere safe. Scan it with Peach to restore your vault on any device.`),se=s(`

backup password

Set a password to lock this Mayan code backup. You'll need it to restore — without it the printed code is unreadable.

`),Y=8;function pe(e){let[t,n]=a(`menu`);return(()=>{var r=V();return h(r,u(d,{get when(){return t()===`menu`},get children(){return u(me,{get onBack(){return e.onBack},onPick:e=>n(e)})}}),null),h(r,u(d,{get when(){return t()===`peachscript`},get children(){return u(he,{onBack:()=>n(`menu`)})}}),null),h(r,u(d,{get when(){return t()===`qr`},get children(){return u(ge,{onBack:()=>n(`menu`)})}}),null),h(r,u(d,{get when(){return t()===`csv`},get children(){return u(X,{onBack:()=>n(`menu`)})}}),null),r})()}function me(e){return[u(Z,{title:`export`,get onBack(){return e.onBack}}),(()=>{var t=H(),n=t.firstChild,r=n.firstChild.nextSibling.nextSibling,i=n.nextSibling,a=i.firstChild.nextSibling.nextSibling,o=i.nextSibling.firstChild.nextSibling.nextSibling;return r.$$click=()=>e.onPick(`peachscript`),a.$$click=()=>e.onPick(`qr`),o.$$click=()=>e.onPick(`csv`),t})()]}function he(e){let[t,s]=a(``),[c,f]=a(``),[p,m]=a(!1),[_,v]=a(null),[y,b]=a(null),[x,S]=a(0),[C,w]=a({cards:0,passkeys:0,notes:0,logins:0}),[T,E]=a(!1),D=r(()=>t().length>=Y&&t()===c());async function O(){if(b(null),v(null),E(!1),!D()){b(`Backup passwords don't match or are too short.`);return}m(!0);try{let e=await Q(t());S(e.entryCount),w(e.stats),v(l(e.bytes))}catch(e){b(e instanceof Error?e.message:String(e))}finally{m(!1)}}async function k(){let e=_();if(e)try{await navigator.clipboard.writeText(e),E(!0),setTimeout(()=>E(!1),2e3)}catch(e){b(e instanceof Error?e.message:`Couldn't copy to clipboard.`)}}function A(){let e=_();if(!e)return;let t=new Blob([e],{type:`application/x-peach;charset=utf-8`}),n=URL.createObjectURL(t),r=new Date().toISOString().slice(0,10),i=document.createElement(`a`);i.href=n,i.download=`peach-backup-${r}.peach`,document.body.appendChild(i),i.click(),document.body.removeChild(i),setTimeout(()=>URL.revokeObjectURL(n),5e3)}return[u(Z,{title:`peachscript`,get onBack(){return e.onBack}}),(()=>{var e=G();return h(e,u(d,{get when(){return _()},get fallback(){return(()=>{var e=J(),r=e.firstChild.nextSibling.nextSibling,a=r.firstChild,l=a.nextSibling,m=r.nextSibling;return a.$$keydown=e=>{e.key===`Enter`&&D()&&!p()&&(e.preventDefault(),O())},a.$$input=e=>s(e.target.value),n(e=>queueMicrotask(()=>e.focus()),a),l.$$keydown=e=>{e.key===`Enter`&&D()&&!p()&&(e.preventDefault(),O())},l.$$input=e=>f(e.target.value),h(r,u(d,{get when(){return o(()=>c().length>0)()&&t()!==c()},get children(){return K()}}),null),h(r,u(d,{get when(){return o(()=>t().length>0)()&&t().lengthvoid O(),h(m,()=>p()?`encoding…`:`Generate PeachScript`),i(()=>m.disabled=p()||!D()),i(()=>a.value=t()),i(()=>l.value=c()),e})()},get children(){var e=U(),t=e.firstChild.nextSibling,n=t.firstChild,r=t.nextSibling.firstChild,i=r.nextSibling;return h(e,u(g,{get runeString(){return _()??``},width:288,height:240}),t),h(t,x,n),h(t,()=>x()===1?`y`:`ies`,null),h(t,(()=>{var e=o(()=>C().cards>0);return()=>e()?` · ${C().cards} card${C().cards===1?``:`s`}`:``})(),null),h(t,(()=>{var e=o(()=>C().passkeys>0);return()=>e()?` · ${C().passkeys} passkey${C().passkeys===1?``:`s`}`:``})(),null),h(t,(()=>{var e=o(()=>C().notes>0);return()=>e()?` · ${C().notes} note${C().notes===1?``:`s`}`:``})(),null),r.$$click=()=>void k(),h(r,()=>T()?`copied ✓`:`Copy`),i.$$click=A,e}}),null),h(e,u(d,{get when(){return y()},get children(){var e=W(),t=e.firstChild;return h(t,y),e}}),null),e})()]}function ge(e){let[t,o]=a(``),[s,c]=a(``),[l,f]=a(!1),[p,m]=a(null),[g,_]=a(null),[v,y]=a(0),b,x=r(()=>t().length>=Y&&t()===s());async function S(){if(_(null),m(null),!x()){_(`Backup passwords don't match or are too short.`);return}f(!0);try{let e=await Q(t());if(e.bytes.length>2953){_(`This vault is too large for a Mayan code backup (${e.bytes.length} bytes). Use PeachScript instead.`);return}y(e.entryCount);let n=await z(e.bytes),r=await B(e.bytes);b&&(b.innerHTML=``,b.appendChild(n)),m(r)}catch(e){_(e instanceof Error?e.message:String(e))}finally{f(!1)}}function C(){let e=p();if(!e)return;let t=document.createElement(`a`);t.href=e,t.download=`peach-mayan-backup-${$()}.png`,document.body.appendChild(t),t.click(),document.body.removeChild(t)}return[u(Z,{title:`print backup`,get onBack(){return e.onBack}}),(()=>{var e=G();return h(e,u(d,{get when(){return p()},get fallback(){return(()=>{var e=se(),r=e.firstChild.nextSibling.nextSibling,a=r.firstChild,u=a.nextSibling,d=r.nextSibling;return a.$$keydown=e=>{e.key===`Enter`&&x()&&!l()&&(e.preventDefault(),S())},a.$$input=e=>o(e.target.value),n(e=>queueMicrotask(()=>e.focus()),a),u.$$keydown=e=>{e.key===`Enter`&&x()&&!l()&&(e.preventDefault(),S())},u.$$input=e=>c(e.target.value),d.$$click=()=>void S(),h(d,()=>l()?`encoding…`:`Generate Mayan code`),i(()=>d.disabled=l()||!x()),i(()=>a.value=t()),i(()=>u.value=s()),e})()},get children(){var e=oe(),t=e.firstChild,r=t.nextSibling,i=r.firstChild,a=i.nextSibling;a.nextSibling;var o=r.nextSibling,s=b;return typeof s==`function`?n(s,t):b=t,h(r,v,i),h(r,()=>v()===1?`y`:`ies`,a),h(r,ye,null),o.$$click=C,e}}),null),h(e,u(d,{get when(){return g()},get children(){var e=W(),t=e.firstChild;return h(t,g),e}}),null),e})()]}function X(e){let[t,n]=a(!1),[r,o]=a(!1),[s,c]=a(null),[l,p]=a(null);async function m(){c(null),p(null),o(!0);try{let e=(await f({type:`GET_ENTRIES`})).data??[],t=e.filter(e=>e.deletedAt===void 0).filter(e=>!(e.passkey&&!e.password)).map(e=>e.passkey?{...e,passkey:void 0}:e),n=e.filter(e=>e.deletedAt===void 0&&e.passkey).length;if(t.length===0){c(`Your vault has no entries to export.`);return}let r=ve(t),i=`peach-export-${$()}.csv`;be(r,`text/csv`,i);let a=n>0?` ${n} passkey${n===1?``:`s`} excluded — passkeys can't be represented in CSV.`:``;p(`Exported ${t.length} entr${t.length===1?`y`:`ies`} to ${i}.${a}`)}catch(e){c(e instanceof Error?e.message:String(e))}finally{o(!1)}}return[u(Z,{title:`export as CSV`,get onBack(){return e.onBack}}),(()=>{var e=de(),a=e.firstChild;return a.firstChild,h(a,u(d,{get when(){return!t()},get children(){var e=ce();return e.$$click=()=>n(!0),e}}),null),h(a,u(d,{get when(){return t()},get children(){var e=le();return e.$$click=()=>void m(),h(e,()=>r()?`exporting…`:`Download CSV`),i(()=>e.disabled=r()),e}}),null),h(e,u(d,{get when(){return s()},get children(){var e=W(),t=e.firstChild;return h(t,s),e}}),null),h(e,u(d,{get when(){return l()},get children(){var e=ue(),t=e.firstChild.firstChild.nextSibling;return h(t,l),e}}),null),e})()]}function Z(e){return(()=>{var t=fe(),n=t.firstChild,r=n.nextSibling;return m(n,`click`,e.onBack,!0),h(r,()=>e.title),t})()}async function Q(e){let t=(await f({type:`GET_ENTRIES`})).data??[],n=(await f({type:`GET_SETTINGS`})).data??{},r;try{let e=(await f({type:`GET_LICENSE`})).data;if(e?.valid&&e.plan===`pro`){let t=(await f({type:`GET_LICENSE_KEY`})).data;t&&(r={key:t,...e.issued?{activatedAt:new Date(e.issued).getTime()}:{}})}}catch{}let i=_e(t);return{bytes:await p({entries:t,settings:n,license:r,passphrase:e}),entryCount:t.length,stats:i}}function _e(e){let t=0,n=0,r=0,i=0;for(let a of e)if(!a.deletedAt){if(a.passkey){n++,a.type===`login`&&a.password&&i++;continue}a.type===`card`?t++:a.type===`note`?r++:i++}return{cards:t,passkeys:n,notes:r,logins:i}}function ve(e){let t=[`name`,`url`,`username`,`password`,`notes`,`type`,`tags`,`totp`],n=e.map(e=>{let t=e.type===`note`?`note`:e.type===`card`?`card`:`login`,n=e.type===`card`?e.cardholderName??``:e.username??``,r=e.type===`card`?e.cardNumber??``:e.password??``;return[e.title,e.url??``,n,r,e.notes??``,t,Array.isArray(e.tags)?e.tags.join(`|`):``,e.totp??``].map(e=>`"${String(e).replace(/\r?\n/g,` `).replace(/"/g,`""`)}"`).join(`,`)});return[t.join(`,`),...n].join(` `)}function $(){return new Date().toISOString().split(`T`)[0]}function ye(){let e=new Date;return`${[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`][e.getMonth()]} ${e.getFullYear()}`}function be(e,t,n){let r=URL.createObjectURL(new Blob([e],{type:t})),i=document.createElement(`a`);i.href=r,i.download=n,document.body.appendChild(i),i.click(),document.body.removeChild(i),URL.revokeObjectURL(r)}c([`click`,`input`,`keydown`]);export{pe as ExportView};