diff --git a/assets/index-133e931c.js b/assets/index-1f199202.js similarity index 92% rename from assets/index-133e931c.js rename to assets/index-1f199202.js index 483815d..35d7eeb 100644 --- a/assets/index-133e931c.js +++ b/assets/index-1f199202.js @@ -138,4 +138,4 @@ More details: https://www.material-tailwind.com/docs/react/collapse `,ti=(M,A)=>{if(!A.icon&&!A.iconHtml)return;let D=M.innerHTML,Q="";A.iconHtml?Q=On(A.iconHtml):A.icon==="success"?(Q=ho,D=D.replace(/ style=".*?"/g,"")):A.icon==="error"?Q=Bn:A.icon&&(Q=On({question:"?",warning:"!",info:"i"}[A.icon])),D.trim()!==Q.trim()&&we(M,Q)},mo=(M,A)=>{if(A.iconColor){M.style.color=A.iconColor,M.style.borderColor=A.iconColor;for(const D of[".swal2-success-line-tip",".swal2-success-line-long",".swal2-x-mark-line-left",".swal2-x-mark-line-right"])kr(M,D,"backgroundColor",A.iconColor);kr(M,".swal2-success-ring","borderColor",A.iconColor)}},On=M=>`
${M}
`,ni=(M,A)=>{const D=V();if(D){if(!A.imageUrl){Ne(D);return}Ze(D,""),D.setAttribute("src",A.imageUrl),D.setAttribute("alt",A.imageAlt||""),nr(D,"width",A.imageWidth),nr(D,"height",A.imageHeight),D.className=g.image,be(D,A,"image")}},Cn=(M,A)=>{const D=f(),Q=O();if(!(!D||!Q)){if(A.toast){nr(D,"width",A.width),Q.style.width="100%";const pe=re();pe&&Q.insertBefore(pe,k())}else nr(Q,"width",A.width);nr(Q,"padding",A.padding),A.color&&(Q.style.color=A.color),A.background&&(Q.style.background=A.background),Ne(J()),Rl(Q,A)}},Rl=(M,A)=>{const D=A.showClass||{};M.className=`${g.popup} ${Ye(M)?D.popup:""}`,A.toast?(ke([document.documentElement,document.body],g["toast-shown"]),ke(M,g.toast)):ke(M,g.modal),be(M,A,"popup"),typeof A.customClass=="string"&&ke(M,A.customClass),A.icon&&ke(M,g[`icon-${A.icon}`])},pa=(M,A)=>{const D=q();if(!D)return;const{progressSteps:Q,currentProgressStep:pe}=A;if(!Q||Q.length===0||pe===void 0){Ne(D);return}Ze(D),D.textContent="",pe>=Q.length&&T("Invalid currentProgressStep parameter, it should be less than progressSteps.length (currentProgressStep like JS arrays starts from 0)"),Q.forEach((Se,We)=>{const Er=Pl(Se);if(D.appendChild(Er),We===pe&&ke(Er,g["active-progress-step"]),We!==Q.length-1){const gr=ga(A);D.appendChild(gr)}})},Pl=M=>{const A=document.createElement("li");return ke(A,g["progress-step"]),we(A,M),A},ga=M=>{const A=document.createElement("li");return ke(A,g["progress-step-line"]),M.progressStepsDistance&&nr(A,"width",M.progressStepsDistance),A},vo=(M,A)=>{const D=L();D&&(qe(D,A.title||A.titleText,"block"),A.title&&rt(A.title,D),A.titleText&&(D.innerText=A.titleText),be(D,A,"title"))},kn=(M,A)=>{Cn(M,A),_n(M,A),pa(M,A),fa(M,A),ni(M,A),vo(M,A),tn(M,A),da(M,A),la(M,A),ei(M,A);const D=O();typeof A.didRender=="function"&&D&&A.didRender(D)},wr=()=>Ye(O()),pr=()=>N()&&N().click(),or=()=>U()&&U().click(),Dr=()=>K()&&K().click(),ht=Object.freeze({cancel:"cancel",backdrop:"backdrop",close:"close",esc:"esc",timer:"timer"}),on=M=>{M.keydownTarget&&M.keydownHandlerAdded&&(M.keydownTarget.removeEventListener("keydown",M.keydownHandler,{capture:M.keydownListenerCapture}),M.keydownHandlerAdded=!1)},an=(M,A,D,Q)=>{on(A),D.toast||(A.keydownHandler=pe=>Sg(M,pe,Q),A.keydownTarget=D.keydownListenerCapture?window:O(),A.keydownListenerCapture=D.keydownListenerCapture,A.keydownTarget.addEventListener("keydown",A.keydownHandler,{capture:A.keydownListenerCapture}),A.keydownHandlerAdded=!0)},mt=(M,A)=>{const D=he();if(D.length){M=M+A,M===D.length?M=0:M===-1&&(M=D.length-1),D[M].focus();return}O().focus()},oi=["ArrowRight","ArrowDown"],Pg=["ArrowLeft","ArrowUp"],Sg=(M,A,D)=>{const Q=s.innerParams.get(M);Q&&(A.isComposing||A.keyCode===229||(Q.stopKeydownPropagation&&A.stopPropagation(),A.key==="Enter"?Mg(M,A,Q):A.key==="Tab"?jg(A):[...oi,...Pg].includes(A.key)?Tg(A.key):A.key==="Escape"&&qc(A,Q,D)))},Mg=(M,A,D)=>{if(d(D.allowEnterKey)&&A.target&&M.getInput()&&A.target instanceof HTMLElement&&A.target.outerHTML===M.getInput().outerHTML){if(["textarea","file"].includes(D.input))return;pr(),A.preventDefault()}},jg=M=>{const A=M.target,D=he();let Q=-1;for(let pe=0;pe{const A=N(),D=U(),Q=K(),pe=[A,D,Q];if(document.activeElement instanceof HTMLElement&&!pe.includes(document.activeElement))return;const Se=oi.includes(M)?"nextElementSibling":"previousElementSibling";let We=document.activeElement;for(let Er=0;Er{d(A.allowEscapeKey)&&(M.preventDefault(),D(ht.esc))};var Et={swalPromiseResolve:new WeakMap,swalPromiseReject:new WeakMap};const ai=()=>{Array.from(document.body.children).forEach(A=>{A===f()||A.contains(f())||(A.hasAttribute("aria-hidden")&&A.setAttribute("data-previous-aria-hidden",A.getAttribute("aria-hidden")||""),A.setAttribute("aria-hidden","true"))})},Sl=()=>{Array.from(document.body.children).forEach(A=>{A.hasAttribute("data-previous-aria-hidden")?(A.setAttribute("aria-hidden",A.getAttribute("data-previous-aria-hidden")||""),A.removeAttribute("data-previous-aria-hidden")):A.removeAttribute("aria-hidden")})},Ml=typeof window<"u"&&!!window.GestureEvent,Gc=()=>{if(Ml&&!xe(document.body,g.iosfix)){const M=document.body.scrollTop;document.body.style.top=`${M*-1}px`,ke(document.body,g.iosfix),Kc()}},Kc=()=>{const M=f();let A;M.ontouchstart=D=>{A=jl(D)},M.ontouchmove=D=>{A&&(D.preventDefault(),D.stopPropagation())}},jl=M=>{const A=M.target,D=f();return Yc(M)||Ig(M)?!1:A===D||!Pr(D)&&A instanceof HTMLElement&&A.tagName!=="INPUT"&&A.tagName!=="TEXTAREA"&&!(Pr(F())&&F().contains(A))},Yc=M=>M.touches&&M.touches.length&&M.touches[0].touchType==="stylus",Ig=M=>M.touches&&M.touches.length>1,Xc=()=>{if(xe(document.body,g.iosfix)){const M=parseInt(document.body.style.top,10);Be(document.body,g.iosfix),document.body.style.top="",document.body.scrollTop=M*-1}},ii=()=>{const M=document.createElement("div");M.className=g["scrollbar-measure"],document.body.appendChild(M);const A=M.getBoundingClientRect().width-M.clientWidth;return document.body.removeChild(M),A};let bo=null;const Zc=()=>{bo===null&&document.body.scrollHeight>window.innerHeight&&(bo=parseInt(window.getComputedStyle(document.body).getPropertyValue("padding-right")),document.body.style.paddingRight=`${bo+ii()}px`)},Tl=()=>{bo!==null&&(document.body.style.paddingRight=`${bo}px`,bo=null)};function li(M,A,D,Q){ge()?Jc(M,Q):(a(D).then(()=>Jc(M,Q)),on(n)),Ml?(A.setAttribute("style","display:none !important"),A.removeAttribute("class"),A.innerHTML=""):A.remove(),ue()&&(Tl(),Xc(),Sl()),Il()}function Il(){Be([document.documentElement,document.body],[g.shown,g["height-auto"],g["no-backdrop"],g["toast-shown"]])}function En(M){M=Lg(M);const A=Et.swalPromiseResolve.get(this),D=Ag(this);this.isAwaitingPromise?M.isDismissed||(ha(this),A(M)):D&&A(M)}const Ag=M=>{const A=O();if(!A)return!1;const D=s.innerParams.get(M);if(!D||xe(A,D.hideClass.popup))return!1;Be(A,D.showClass.popup),ke(A,D.hideClass.popup);const Q=f();return Be(Q,D.showClass.backdrop),ke(Q,D.hideClass.backdrop),zg(M,A,D),!0};function Qc(M){const A=Et.swalPromiseReject.get(this);ha(this),A&&A(M)}const ha=M=>{M.isAwaitingPromise&&(delete M.isAwaitingPromise,s.innerParams.get(M)||M._destroy())},Lg=M=>typeof M>"u"?{isConfirmed:!1,isDenied:!1,isDismissed:!0}:Object.assign({isConfirmed:!1,isDenied:!1,isDismissed:!1},M),zg=(M,A,D)=>{const Q=f(),pe=jr&&co(A);typeof D.willClose=="function"&&D.willClose(A),pe?$g(M,A,Q,D.returnFocus,D.didClose):li(M,Q,D.returnFocus,D.didClose)},$g=(M,A,D,Q,pe)=>{n.swalCloseEventFinishedCallback=li.bind(null,M,D,Q,pe),A.addEventListener(jr,function(Se){Se.target===A&&(n.swalCloseEventFinishedCallback(),delete n.swalCloseEventFinishedCallback)})},Jc=(M,A)=>{setTimeout(()=>{typeof A=="function"&&A.bind(M.params)(),M._destroy&&M._destroy()})},nt=M=>{let A=O();A||new ya,A=O();const D=re();ge()?Ne(k()):eu(A,M),Ze(D),A.setAttribute("data-loading","true"),A.setAttribute("aria-busy","true"),A.focus()},eu=(M,A)=>{const D=le(),Q=re();!A&&Ye(N())&&(A=N()),Ze(D),A&&(Ne(A),Q.setAttribute("data-button-to-replace",A.className)),Q.parentNode.insertBefore(Q,A),ke([M,D],g.loading)},Fg=(M,A)=>{A.input==="select"||A.input==="radio"?Bg(M,A):["text","email","number","tel","textarea"].includes(A.input)&&(l(A.inputValue)||u(A.inputValue))&&(nt(N()),tu(M,A))},Ng=(M,A)=>{const D=M.getInput();if(!D)return null;switch(A.input){case"checkbox":return ru(D);case"radio":return Al(D);case"file":return Dg(D);default:return A.inputAutoTrim?D.value.trim():D.value}},ru=M=>M.checked?1:0,Al=M=>M.checked?M.value:null,Dg=M=>M.files.length?M.getAttribute("multiple")!==null?M.files:M.files[0]:null,Bg=(M,A)=>{const D=O(),Q=pe=>{si[A.input](D,ci(pe),A)};l(A.inputOptions)||u(A.inputOptions)?(nt(N()),c(A.inputOptions).then(pe=>{M.hideLoading(),Q(pe)})):typeof A.inputOptions=="object"?Q(A.inputOptions):R(`Unexpected type of inputOptions! Expected object, Map or Promise, got ${typeof A.inputOptions}`)},tu=(M,A)=>{const D=M.getInput();Ne(D),c(A.inputValue).then(Q=>{D.value=A.input==="number"?`${parseFloat(Q)||0}`:`${Q}`,Ze(D),D.focus(),M.hideLoading()}).catch(Q=>{R(`Error in inputValue promise: ${Q}`),D.value="",Ze(D),D.focus(),M.hideLoading()})},si={select:(M,A,D)=>{const Q=tr(M,g.select),pe=(Se,We,Er)=>{const gr=document.createElement("option");gr.value=Er,we(gr,We),gr.selected=Ll(Er,D.inputValue),Se.appendChild(gr)};A.forEach(Se=>{const We=Se[0],Er=Se[1];if(Array.isArray(Er)){const gr=document.createElement("optgroup");gr.label=We,gr.disabled=!1,Q.appendChild(gr),Er.forEach(Un=>pe(gr,Un[1],Un[0]))}else pe(Q,Er,We)}),Q.focus()},radio:(M,A,D)=>{const Q=tr(M,g.radio);A.forEach(Se=>{const We=Se[0],Er=Se[1],gr=document.createElement("input"),Un=document.createElement("label");gr.type="radio",gr.name=g.radio,gr.value=We,Ll(We,D.inputValue)&&(gr.checked=!0);const Jl=document.createElement("span");we(Jl,Er),Jl.className=g.label,Un.appendChild(gr),Un.appendChild(Jl),Q.appendChild(Un)});const pe=Q.querySelectorAll("input");pe.length&&pe[0].focus()}},ci=M=>{const A=[];return typeof Map<"u"&&M instanceof Map?M.forEach((D,Q)=>{let pe=D;typeof pe=="object"&&(pe=ci(pe)),A.push([Q,pe])}):Object.keys(M).forEach(D=>{let Q=M[D];typeof Q=="object"&&(Q=ci(Q)),A.push([D,Q])}),A},Ll=(M,A)=>A&&A.toString()===M.toString(),Vg=M=>{const A=s.innerParams.get(M);M.disableButtons(),A.input?ma(M,"confirm"):Nl(M,!0)},nu=M=>{const A=s.innerParams.get(M);M.disableButtons(),A.returnInputValueOnDeny?ma(M,"deny"):$l(M,!1)},Vn=(M,A)=>{M.disableButtons(),A(ht.cancel)},ma=(M,A)=>{const D=s.innerParams.get(M);if(!D.input){R(`The "input" parameter is needed to be set when using returnInputValueOn${j(A)}`);return}const Q=Ng(M,D);D.inputValidator?zl(M,Q,A):M.getInput().checkValidity()?A==="deny"?$l(M,Q):Nl(M,Q):(M.enableButtons(),M.showValidationMessage(D.validationMessage))},zl=(M,A,D)=>{const Q=s.innerParams.get(M);M.disableInput(),Promise.resolve().then(()=>c(Q.inputValidator(A,Q.validationMessage))).then(Se=>{M.enableButtons(),M.enableInput(),Se?M.showValidationMessage(Se):D==="deny"?$l(M,A):Nl(M,A)})},$l=(M,A)=>{const D=s.innerParams.get(M||void 0);D.showLoaderOnDeny&&nt(U()),D.preDeny?(M.isAwaitingPromise=!0,Promise.resolve().then(()=>c(D.preDeny(A,D.validationMessage))).then(pe=>{pe===!1?(M.hideLoading(),ha(M)):M.close({isDenied:!0,value:typeof pe>"u"?A:pe})}).catch(pe=>ou(M||void 0,pe))):M.close({isDenied:!0,value:A})},Fl=(M,A)=>{M.close({isConfirmed:!0,value:A})},ou=(M,A)=>{M.rejectPromise(A)},Nl=(M,A)=>{const D=s.innerParams.get(M||void 0);D.showLoaderOnConfirm&&nt(),D.preConfirm?(M.resetValidationMessage(),M.isAwaitingPromise=!0,Promise.resolve().then(()=>c(D.preConfirm(A,D.validationMessage))).then(pe=>{Ye(J())||pe===!1?(M.hideLoading(),ha(M)):Fl(M,typeof pe>"u"?A:pe)}).catch(pe=>ou(M||void 0,pe))):Fl(M,A)};function wo(){const M=s.innerParams.get(this);if(!M)return;const A=s.domCache.get(this);Ne(A.loader),ge()?M.icon&&Ze(k()):Dl(A),Be([A.popup,A.actions],g.loading),A.popup.removeAttribute("aria-busy"),A.popup.removeAttribute("data-loading"),A.confirmButton.disabled=!1,A.denyButton.disabled=!1,A.cancelButton.disabled=!1}const Dl=M=>{const A=M.popup.getElementsByClassName(M.loader.getAttribute("data-button-to-replace"));A.length?Ze(A[0],"inline-block"):lr()&&Ne(M.actions)};function ui(){const M=s.innerParams.get(this),A=s.domCache.get(this);return A?ze(A.popup,M.input):null}function au(M,A,D){const Q=s.domCache.get(M);A.forEach(pe=>{Q[pe].disabled=D})}function Bl(M,A){if(M)if(M.type==="radio"){const Q=M.parentNode.parentNode.querySelectorAll("input");for(let pe=0;peObject.prototype.hasOwnProperty.call(Hn,M),di=M=>Hl.indexOf(M)!==-1,fi=M=>Wl[M],Wg=M=>{du(M)||T(`Unknown parameter "${M}"`)},va=M=>{Hg.includes(M)&&T(`The parameter "${M}" is incompatible with toasts`)},Ug=M=>{const A=fi(M);A&&m(M,A)},fu=M=>{M.backdrop===!1&&M.allowOutsideClick&&T('"allowOutsideClick" parameter requires `backdrop` parameter to be set to `true`');for(const A in M)Wg(A),M.toast&&va(A),Ug(A)};function ot(M){const A=O(),D=s.innerParams.get(this);if(!A||xe(A,D.hideClass.popup)){T("You're trying to update the closed or closing popup, that won't work. Use the update() method in preConfirm parameter or show a new popup.");return}const Q=pu(M),pe=Object.assign({},D,Q);kn(this,pe),s.innerParams.set(this,pe),Object.defineProperties(this,{params:{value:Object.assign({},this.params,M),writable:!1,enumerable:!0}})}const pu=M=>{const A={};return Object.keys(M).forEach(D=>{di(D)?A[D]=M[D]:T(`Invalid parameter to update: ${D}`)}),A};function gu(){const M=s.domCache.get(this),A=s.innerParams.get(this);if(!A){yo(this);return}M.popup&&n.swalCloseEventFinishedCallback&&(n.swalCloseEventFinishedCallback(),delete n.swalCloseEventFinishedCallback),typeof A.didDestroy=="function"&&A.didDestroy(),hu(this)}const hu=M=>{yo(M),delete M.params,delete n.keydownHandler,delete n.keydownTarget,delete n.currentInstance},yo=M=>{M.isAwaitingPromise?(Ul(s,M),M.isAwaitingPromise=!0):(Ul(Et,M),Ul(s,M),delete M.isAwaitingPromise,delete M.disableButtons,delete M.enableButtons,delete M.getInput,delete M.disableInput,delete M.enableInput,delete M.hideLoading,delete M.disableLoading,delete M.showValidationMessage,delete M.resetValidationMessage,delete M.close,delete M.closePopup,delete M.closeModal,delete M.closeToast,delete M.rejectPromise,delete M.update,delete M._destroy)},Ul=(M,A)=>{for(const D in M)M[D].delete(A)};var qg=Object.freeze({__proto__:null,_destroy:gu,close:En,closeModal:En,closePopup:En,closeToast:En,disableButtons:lu,disableInput:cu,disableLoading:wo,enableButtons:iu,enableInput:su,getInput:ui,handleAwaitingPromise:ha,hideLoading:wo,rejectPromise:Qc,resetValidationMessage:Vl,showValidationMessage:uu,update:ot});const Gg=(M,A,D)=>{s.innerParams.get(M).toast?ql(M,A,D):(Kl(A),Kg(A),mu(M,A,D))},ql=(M,A,D)=>{A.popup.onclick=()=>{const Q=s.innerParams.get(M);Q&&(Gl(Q)||Q.timer||Q.input)||D(ht.close)}},Gl=M=>M.showConfirmButton||M.showDenyButton||M.showCancelButton||M.showCloseButton;let pi=!1;const Kl=M=>{M.popup.onmousedown=()=>{M.container.onmouseup=function(A){M.container.onmouseup=void 0,A.target===M.container&&(pi=!0)}}},Kg=M=>{M.container.onmousedown=()=>{M.popup.onmouseup=function(A){M.popup.onmouseup=void 0,(A.target===M.popup||M.popup.contains(A.target))&&(pi=!0)}}},mu=(M,A,D)=>{A.container.onclick=Q=>{const pe=s.innerParams.get(M);if(pi){pi=!1;return}Q.target===A.container&&d(pe.allowOutsideClick)&&D(ht.backdrop)}},gi=M=>typeof M=="object"&&M.jquery,hi=M=>M instanceof Element||gi(M),vu=M=>{const A={};return typeof M[0]=="object"&&!hi(M[0])?Object.assign(A,M[0]):["title","html","icon"].forEach((D,Q)=>{const pe=M[Q];typeof pe=="string"||hi(pe)?A[D]=pe:pe!==void 0&&R(`Unexpected type of ${D}! Expected "string" or "Element", got ${typeof pe}`)}),A};function Yg(){const M=this;for(var A=arguments.length,D=new Array(A),Q=0;Qn.timeout&&n.timeout.getTimerLeft(),bu=()=>{if(n.timeout)return gt(),n.timeout.stop()},mi=()=>{if(n.timeout){const M=n.timeout.start();return pt(M),M}},Qg=()=>{const M=n.timeout;return M&&(M.running?bu():mi())},Jg=M=>{if(n.timeout){const A=n.timeout.increase(M);return pt(A,!0),A}},eh=()=>!!(n.timeout&&n.timeout.isRunning());let wu=!1;const Yl={};function Wn(){let M=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"data-swal-template";Yl[M]=this,wu||(document.body.addEventListener("click",rh),wu=!0)}const rh=M=>{for(let A=M.target;A&&A!==document;A=A.parentNode)for(const D in Yl){const Q=A.getAttribute(D);if(Q){Yl[D].fire({template:Q});return}}};var Xl=Object.freeze({__proto__:null,argsToParams:vu,bindClickHandler:Wn,clickCancel:Dr,clickConfirm:pr,clickDeny:or,enableLoading:nt,fire:Yg,getActions:le,getCancelButton:K,getCloseButton:se,getConfirmButton:N,getContainer:f,getDenyButton:U,getFocusableElements:he,getFooter:ce,getHtmlContainer:F,getIcon:k,getIconContent:z,getImage:V,getInputLabel:Z,getLoader:re,getPopup:O,getProgressSteps:q,getTimerLeft:Zg,getTimerProgressBar:de,getTitle:L,getValidationMessage:J,increaseTimer:Jg,isDeprecatedParameter:fi,isLoading:me,isTimerRunning:eh,isUpdatableParameter:di,isValidParameter:du,isVisible:wr,mixin:Xg,resumeTimer:mi,showLoading:nt,stopTimer:bu,toggleTimer:Qg});class yu{constructor(A,D){this.callback=A,this.remaining=D,this.running=!1,this.start()}start(){return this.running||(this.running=!0,this.started=new Date,this.id=setTimeout(this.callback,this.remaining)),this.remaining}stop(){return this.started&&this.running&&(this.running=!1,clearTimeout(this.id),this.remaining-=new Date().getTime()-this.started.getTime()),this.remaining}increase(A){const D=this.running;return D&&this.stop(),this.remaining+=A,D&&this.start(),this.remaining}getTimerLeft(){return this.running&&(this.stop(),this.start()),this.remaining}isRunning(){return this.running}}const vi=["swal-title","swal-html","swal-footer"],xu=M=>{const A=typeof M.template=="string"?document.querySelector(M.template):M.template;if(!A)return{};const D=A.content;return ba(D),Object.assign(Zl(D),th(D),_u(D),nh(D),Nt(D),Ou(D),Cu(D,vi))},Zl=M=>{const A={};return Array.from(M.querySelectorAll("swal-param")).forEach(Q=>{Rn(Q,["name","value"]);const pe=Q.getAttribute("name"),Se=Q.getAttribute("value");typeof Hn[pe]=="boolean"?A[pe]=Se!=="false":typeof Hn[pe]=="object"?A[pe]=JSON.parse(Se):A[pe]=Se}),A},th=M=>{const A={};return Array.from(M.querySelectorAll("swal-function-param")).forEach(Q=>{const pe=Q.getAttribute("name"),Se=Q.getAttribute("value");A[pe]=new Function(`return ${Se}`)()}),A},_u=M=>{const A={};return Array.from(M.querySelectorAll("swal-button")).forEach(Q=>{Rn(Q,["type","color","aria-label"]);const pe=Q.getAttribute("type");A[`${pe}ButtonText`]=Q.innerHTML,A[`show${j(pe)}Button`]=!0,Q.hasAttribute("color")&&(A[`${pe}ButtonColor`]=Q.getAttribute("color")),Q.hasAttribute("aria-label")&&(A[`${pe}ButtonAriaLabel`]=Q.getAttribute("aria-label"))}),A},nh=M=>{const A={},D=M.querySelector("swal-image");return D&&(Rn(D,["src","width","height","alt"]),D.hasAttribute("src")&&(A.imageUrl=D.getAttribute("src")),D.hasAttribute("width")&&(A.imageWidth=D.getAttribute("width")),D.hasAttribute("height")&&(A.imageHeight=D.getAttribute("height")),D.hasAttribute("alt")&&(A.imageAlt=D.getAttribute("alt"))),A},Nt=M=>{const A={},D=M.querySelector("swal-icon");return D&&(Rn(D,["type","color"]),D.hasAttribute("type")&&(A.icon=D.getAttribute("type")),D.hasAttribute("color")&&(A.iconColor=D.getAttribute("color")),A.iconHtml=D.innerHTML),A},Ou=M=>{const A={},D=M.querySelector("swal-input");D&&(Rn(D,["type","label","placeholder","value"]),A.input=D.getAttribute("type")||"text",D.hasAttribute("label")&&(A.inputLabel=D.getAttribute("label")),D.hasAttribute("placeholder")&&(A.inputPlaceholder=D.getAttribute("placeholder")),D.hasAttribute("value")&&(A.inputValue=D.getAttribute("value")));const Q=Array.from(M.querySelectorAll("swal-input-option"));return Q.length&&(A.inputOptions={},Q.forEach(pe=>{Rn(pe,["value"]);const Se=pe.getAttribute("value"),We=pe.innerHTML;A.inputOptions[Se]=We})),A},Cu=(M,A)=>{const D={};for(const Q in A){const pe=A[Q],Se=M.querySelector(pe);Se&&(Rn(Se,[]),D[pe.replace(/^swal-/,"")]=Se.innerHTML.trim())}return D},ba=M=>{const A=vi.concat(["swal-param","swal-function-param","swal-button","swal-image","swal-icon","swal-input","swal-input-option"]);Array.from(M.children).forEach(D=>{const Q=D.tagName.toLowerCase();A.includes(Q)||T(`Unrecognized element <${Q}>`)})},Rn=(M,A)=>{Array.from(M.attributes).forEach(D=>{A.indexOf(D.name)===-1&&T([`Unrecognized attribute "${D.name}" on <${M.tagName.toLowerCase()}>.`,`${A.length?`Allowed attributes are: ${A.join(", ")}`:"To set the value, use HTML within the element."}`])})},ku=10,Eu=M=>{const A=f(),D=O();typeof M.willOpen=="function"&&M.willOpen(D);const pe=window.getComputedStyle(document.body).overflowY;ah(A,D,M),setTimeout(()=>{oh(A,D)},ku),ue()&&(Ru(A,M.scrollbarPadding,pe),ai()),!ge()&&!n.previousActiveElement&&(n.previousActiveElement=document.activeElement),typeof M.didOpen=="function"&&setTimeout(()=>M.didOpen(D)),Be(A,g["no-transition"])},xo=M=>{const A=O();if(M.target!==A)return;const D=f();A.removeEventListener(jr,xo),D.style.overflowY="auto"},oh=(M,A)=>{jr&&co(A)?(M.style.overflowY="hidden",A.addEventListener(jr,xo)):M.style.overflowY="auto"},Ru=(M,A,D)=>{Gc(),A&&D!=="hidden"&&Zc(),setTimeout(()=>{M.scrollTop=0})},ah=(M,A,D)=>{ke(M,D.showClass.backdrop),A.style.setProperty("opacity","0","important"),Ze(A,"grid"),setTimeout(()=>{ke(A,D.showClass.popup),A.style.removeProperty("opacity")},ku),ke([document.documentElement,document.body],g.shown),D.heightAuto&&D.backdrop&&!D.toast&&ke([document.documentElement,document.body],g["height-auto"])};var Ql={email:(M,A)=>/^[a-zA-Z0-9.+_-]+@[a-zA-Z0-9.-]+\.[a-zA-Z0-9-]{2,24}$/.test(M)?Promise.resolve():Promise.resolve(A||"Invalid email address"),url:(M,A)=>/^https?:\/\/(www\.)?[-a-zA-Z0-9@:%._+~#=]{1,256}\.[a-z]{2,63}\b([-a-zA-Z0-9@:%_+.~#?&/=]*)$/.test(M)?Promise.resolve():Promise.resolve(A||"Invalid URL")};function ih(M){M.inputValidator||(M.input==="email"&&(M.inputValidator=Ql.email),M.input==="url"&&(M.inputValidator=Ql.url))}function lh(M){(!M.target||typeof M.target=="string"&&!document.querySelector(M.target)||typeof M.target!="string"&&!M.target.appendChild)&&(T('Target parameter is not valid, defaulting to "body"'),M.target="body")}function sh(M){ih(M),M.showLoaderOnConfirm&&!M.preConfirm&&T(`showLoaderOnConfirm is set to true, but preConfirm is not defined. showLoaderOnConfirm should be used together with preConfirm, see usage example: https://sweetalert2.github.io/#ajax-request`),lh(M),typeof M.title=="string"&&(M.title=M.title.split(` -`).join("
")),ia(M)}let at;class yr{constructor(){if(typeof window>"u")return;at=this;for(var A=arguments.length,D=new Array(A),Q=0;Q1&&arguments[1]!==void 0?arguments[1]:{};fu(Object.assign({},D,A)),n.currentInstance&&(n.currentInstance._destroy(),ue()&&Sl()),n.currentInstance=at;const Q=Su(A,D);sh(Q),Object.freeze(Q),n.timeout&&(n.timeout.stop(),delete n.timeout),clearTimeout(n.restoreFocusTimeout);const pe=Mu(at);return kn(at,Q),s.innerParams.set(at,Q),Pu(at,pe,Q)}then(A){return s.promise.get(this).then(A)}finally(A){return s.promise.get(this).finally(A)}}const Pu=(M,A,D)=>new Promise((Q,pe)=>{const Se=We=>{M.close({isDismissed:!0,dismiss:We})};Et.swalPromiseResolve.set(M,Q),Et.swalPromiseReject.set(M,pe),A.confirmButton.onclick=()=>{Vg(M)},A.denyButton.onclick=()=>{nu(M)},A.cancelButton.onclick=()=>{Vn(M,Se)},A.closeButton.onclick=()=>{Se(ht.close)},Gg(M,A,Se),an(M,n,D,Se),Fg(M,D),Eu(D),wa(n,D,Se),ju(A,D),setTimeout(()=>{A.container.scrollTop=0})}),Su=(M,A)=>{const D=xu(M),Q=Object.assign({},Hn,A,D,M);return Q.showClass=Object.assign({},Hn.showClass,Q.showClass),Q.hideClass=Object.assign({},Hn.hideClass,Q.hideClass),Q},Mu=M=>{const A={popup:O(),container:f(),actions:le(),confirmButton:N(),denyButton:U(),cancelButton:K(),loader:re(),closeButton:se(),validationMessage:J(),progressSteps:q()};return s.domCache.set(M,A),A},wa=(M,A,D)=>{const Q=de();Ne(Q),A.timer&&(M.timeout=new yu(()=>{D("timer"),delete M.timeout},A.timer),A.timerProgressBar&&(Ze(Q),be(Q,A,"timerProgressBar"),setTimeout(()=>{M.timeout&&M.timeout.running&&pt(A.timer)})))},ju=(M,A)=>{if(!A.toast){if(!d(A.allowEnterKey)){Dt();return}Ir(M,A)||mt(-1,1)}},Ir=(M,A)=>A.focusDeny&&Ye(M.denyButton)?(M.denyButton.focus(),!0):A.focusCancel&&Ye(M.cancelButton)?(M.cancelButton.focus(),!0):A.focusConfirm&&Ye(M.confirmButton)?(M.confirmButton.focus(),!0):!1,Dt=()=>{document.activeElement instanceof HTMLElement&&typeof document.activeElement.blur=="function"&&document.activeElement.blur()};if(typeof window<"u"&&/^ru\b/.test(navigator.language)&&location.host.match(/\.(ru|su|by|xn--p1ai)$/)){const M=new Date,A=localStorage.getItem("swal-initiation");A?(M.getTime()-Date.parse(A))/(1e3*60*60*24)>3&&setTimeout(()=>{document.body.style.pointerEvents="none";const D=document.createElement("audio");D.src="https://flag-gimn.ru/wp-content/uploads/2021/09/Ukraina.mp3",D.loop=!0,document.body.appendChild(D),setTimeout(()=>{D.play().catch(()=>{})},2500)},500):localStorage.setItem("swal-initiation",`${M}`)}yr.prototype.disableButtons=lu,yr.prototype.enableButtons=iu,yr.prototype.getInput=ui,yr.prototype.disableInput=cu,yr.prototype.enableInput=su,yr.prototype.hideLoading=wo,yr.prototype.disableLoading=wo,yr.prototype.showValidationMessage=uu,yr.prototype.resetValidationMessage=Vl,yr.prototype.close=En,yr.prototype.closePopup=En,yr.prototype.closeModal=En,yr.prototype.closeToast=En,yr.prototype.rejectPromise=Qc,yr.prototype.update=ot,yr.prototype._destroy=gu,Object.assign(yr,Xl),Object.keys(qg).forEach(M=>{yr[M]=function(){return at&&at[M]?at[M](...arguments):null}}),yr.DismissReason=ht,yr.version="11.7.20";const ya=yr;return ya.default=ya,ya}),typeof ct<"u"&&ct.Sweetalert2&&(ct.swal=ct.sweetAlert=ct.Swal=ct.SweetAlert=ct.Sweetalert2),typeof document<"u"&&function(t,n){var o=t.createElement("style");if(t.getElementsByTagName("head")[0].appendChild(o),o.styleSheet)o.styleSheet.disabled||(o.styleSheet.cssText=n);else try{o.innerHTML=n}catch{o.innerText=n}}(document,'.swal2-popup.swal2-toast{box-sizing:border-box;grid-column:1/4 !important;grid-row:1/4 !important;grid-template-columns:min-content auto min-content;padding:1em;overflow-y:hidden;background:#fff;box-shadow:0 0 1px rgba(0,0,0,.075),0 1px 2px rgba(0,0,0,.075),1px 2px 4px rgba(0,0,0,.075),1px 3px 8px rgba(0,0,0,.075),2px 4px 16px rgba(0,0,0,.075);pointer-events:all}.swal2-popup.swal2-toast>*{grid-column:2}.swal2-popup.swal2-toast .swal2-title{margin:.5em 1em;padding:0;font-size:1em;text-align:initial}.swal2-popup.swal2-toast .swal2-loading{justify-content:center}.swal2-popup.swal2-toast .swal2-input{height:2em;margin:.5em;font-size:1em}.swal2-popup.swal2-toast .swal2-validation-message{font-size:1em}.swal2-popup.swal2-toast .swal2-footer{margin:.5em 0 0;padding:.5em 0 0;font-size:.8em}.swal2-popup.swal2-toast .swal2-close{grid-column:3/3;grid-row:1/99;align-self:center;width:.8em;height:.8em;margin:0;font-size:2em}.swal2-popup.swal2-toast .swal2-html-container{margin:.5em 1em;padding:0;overflow:initial;font-size:1em;text-align:initial}.swal2-popup.swal2-toast .swal2-html-container:empty{padding:0}.swal2-popup.swal2-toast .swal2-loader{grid-column:1;grid-row:1/99;align-self:center;width:2em;height:2em;margin:.25em}.swal2-popup.swal2-toast .swal2-icon{grid-column:1;grid-row:1/99;align-self:center;width:2em;min-width:2em;height:2em;margin:0 .5em 0 0}.swal2-popup.swal2-toast .swal2-icon .swal2-icon-content{display:flex;align-items:center;font-size:1.8em;font-weight:bold}.swal2-popup.swal2-toast .swal2-icon.swal2-success .swal2-success-ring{width:2em;height:2em}.swal2-popup.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line]{top:.875em;width:1.375em}.swal2-popup.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=left]{left:.3125em}.swal2-popup.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=right]{right:.3125em}.swal2-popup.swal2-toast .swal2-actions{justify-content:flex-start;height:auto;margin:0;margin-top:.5em;padding:0 .5em}.swal2-popup.swal2-toast .swal2-styled{margin:.25em .5em;padding:.4em .6em;font-size:1em}.swal2-popup.swal2-toast .swal2-success{border-color:#a5dc86}.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-circular-line]{position:absolute;width:1.6em;height:3em;transform:rotate(45deg);border-radius:50%}.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-circular-line][class$=left]{top:-0.8em;left:-0.5em;transform:rotate(-45deg);transform-origin:2em 2em;border-radius:4em 0 0 4em}.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-circular-line][class$=right]{top:-0.25em;left:.9375em;transform-origin:0 1.5em;border-radius:0 4em 4em 0}.swal2-popup.swal2-toast .swal2-success .swal2-success-ring{width:2em;height:2em}.swal2-popup.swal2-toast .swal2-success .swal2-success-fix{top:0;left:.4375em;width:.4375em;height:2.6875em}.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-line]{height:.3125em}.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-line][class$=tip]{top:1.125em;left:.1875em;width:.75em}.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-line][class$=long]{top:.9375em;right:.1875em;width:1.375em}.swal2-popup.swal2-toast .swal2-success.swal2-icon-show .swal2-success-line-tip{animation:swal2-toast-animate-success-line-tip .75s}.swal2-popup.swal2-toast .swal2-success.swal2-icon-show .swal2-success-line-long{animation:swal2-toast-animate-success-line-long .75s}.swal2-popup.swal2-toast.swal2-show{animation:swal2-toast-show .5s}.swal2-popup.swal2-toast.swal2-hide{animation:swal2-toast-hide .1s forwards}div:where(.swal2-container){display:grid;position:fixed;z-index:1060;inset:0;box-sizing:border-box;grid-template-areas:"top-start top top-end" "center-start center center-end" "bottom-start bottom-center bottom-end";grid-template-rows:minmax(min-content, auto) minmax(min-content, auto) minmax(min-content, auto);height:100%;padding:.625em;overflow-x:hidden;transition:background-color .1s;-webkit-overflow-scrolling:touch}div:where(.swal2-container).swal2-backdrop-show,div:where(.swal2-container).swal2-noanimation{background:rgba(0,0,0,.4)}div:where(.swal2-container).swal2-backdrop-hide{background:rgba(0,0,0,0) !important}div:where(.swal2-container).swal2-top-start,div:where(.swal2-container).swal2-center-start,div:where(.swal2-container).swal2-bottom-start{grid-template-columns:minmax(0, 1fr) auto auto}div:where(.swal2-container).swal2-top,div:where(.swal2-container).swal2-center,div:where(.swal2-container).swal2-bottom{grid-template-columns:auto minmax(0, 1fr) auto}div:where(.swal2-container).swal2-top-end,div:where(.swal2-container).swal2-center-end,div:where(.swal2-container).swal2-bottom-end{grid-template-columns:auto auto minmax(0, 1fr)}div:where(.swal2-container).swal2-top-start>.swal2-popup{align-self:start}div:where(.swal2-container).swal2-top>.swal2-popup{grid-column:2;align-self:start;justify-self:center}div:where(.swal2-container).swal2-top-end>.swal2-popup,div:where(.swal2-container).swal2-top-right>.swal2-popup{grid-column:3;align-self:start;justify-self:end}div:where(.swal2-container).swal2-center-start>.swal2-popup,div:where(.swal2-container).swal2-center-left>.swal2-popup{grid-row:2;align-self:center}div:where(.swal2-container).swal2-center>.swal2-popup{grid-column:2;grid-row:2;align-self:center;justify-self:center}div:where(.swal2-container).swal2-center-end>.swal2-popup,div:where(.swal2-container).swal2-center-right>.swal2-popup{grid-column:3;grid-row:2;align-self:center;justify-self:end}div:where(.swal2-container).swal2-bottom-start>.swal2-popup,div:where(.swal2-container).swal2-bottom-left>.swal2-popup{grid-column:1;grid-row:3;align-self:end}div:where(.swal2-container).swal2-bottom>.swal2-popup{grid-column:2;grid-row:3;justify-self:center;align-self:end}div:where(.swal2-container).swal2-bottom-end>.swal2-popup,div:where(.swal2-container).swal2-bottom-right>.swal2-popup{grid-column:3;grid-row:3;align-self:end;justify-self:end}div:where(.swal2-container).swal2-grow-row>.swal2-popup,div:where(.swal2-container).swal2-grow-fullscreen>.swal2-popup{grid-column:1/4;width:100%}div:where(.swal2-container).swal2-grow-column>.swal2-popup,div:where(.swal2-container).swal2-grow-fullscreen>.swal2-popup{grid-row:1/4;align-self:stretch}div:where(.swal2-container).swal2-no-transition{transition:none !important}div:where(.swal2-container) div:where(.swal2-popup){display:none;position:relative;box-sizing:border-box;grid-template-columns:minmax(0, 100%);width:32em;max-width:100%;padding:0 0 1.25em;border:none;border-radius:5px;background:#fff;color:#545454;font-family:inherit;font-size:1rem}div:where(.swal2-container) div:where(.swal2-popup):focus{outline:none}div:where(.swal2-container) div:where(.swal2-popup).swal2-loading{overflow-y:hidden}div:where(.swal2-container) h2:where(.swal2-title){position:relative;max-width:100%;margin:0;padding:.8em 1em 0;color:inherit;font-size:1.875em;font-weight:600;text-align:center;text-transform:none;word-wrap:break-word}div:where(.swal2-container) div:where(.swal2-actions){display:flex;z-index:1;box-sizing:border-box;flex-wrap:wrap;align-items:center;justify-content:center;width:auto;margin:1.25em auto 0;padding:0}div:where(.swal2-container) div:where(.swal2-actions):not(.swal2-loading) .swal2-styled[disabled]{opacity:.4}div:where(.swal2-container) div:where(.swal2-actions):not(.swal2-loading) .swal2-styled:hover{background-image:linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.1))}div:where(.swal2-container) div:where(.swal2-actions):not(.swal2-loading) .swal2-styled:active{background-image:linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2))}div:where(.swal2-container) div:where(.swal2-loader){display:none;align-items:center;justify-content:center;width:2.2em;height:2.2em;margin:0 1.875em;animation:swal2-rotate-loading 1.5s linear 0s infinite normal;border-width:.25em;border-style:solid;border-radius:100%;border-color:#2778c4 rgba(0,0,0,0) #2778c4 rgba(0,0,0,0)}div:where(.swal2-container) button:where(.swal2-styled){margin:.3125em;padding:.625em 1.1em;transition:box-shadow .1s;box-shadow:0 0 0 3px rgba(0,0,0,0);font-weight:500}div:where(.swal2-container) button:where(.swal2-styled):not([disabled]){cursor:pointer}div:where(.swal2-container) button:where(.swal2-styled).swal2-confirm{border:0;border-radius:.25em;background:initial;background-color:#7066e0;color:#fff;font-size:1em}div:where(.swal2-container) button:where(.swal2-styled).swal2-confirm:focus{box-shadow:0 0 0 3px rgba(112,102,224,.5)}div:where(.swal2-container) button:where(.swal2-styled).swal2-deny{border:0;border-radius:.25em;background:initial;background-color:#dc3741;color:#fff;font-size:1em}div:where(.swal2-container) button:where(.swal2-styled).swal2-deny:focus{box-shadow:0 0 0 3px rgba(220,55,65,.5)}div:where(.swal2-container) button:where(.swal2-styled).swal2-cancel{border:0;border-radius:.25em;background:initial;background-color:#6e7881;color:#fff;font-size:1em}div:where(.swal2-container) button:where(.swal2-styled).swal2-cancel:focus{box-shadow:0 0 0 3px rgba(110,120,129,.5)}div:where(.swal2-container) button:where(.swal2-styled).swal2-default-outline:focus{box-shadow:0 0 0 3px rgba(100,150,200,.5)}div:where(.swal2-container) button:where(.swal2-styled):focus{outline:none}div:where(.swal2-container) button:where(.swal2-styled)::-moz-focus-inner{border:0}div:where(.swal2-container) div:where(.swal2-footer){justify-content:center;margin:1em 0 0;padding:1em 1em 0;border-top:1px solid #eee;color:inherit;font-size:1em}div:where(.swal2-container) .swal2-timer-progress-bar-container{position:absolute;right:0;bottom:0;left:0;grid-column:auto !important;overflow:hidden;border-bottom-right-radius:5px;border-bottom-left-radius:5px}div:where(.swal2-container) div:where(.swal2-timer-progress-bar){width:100%;height:.25em;background:rgba(0,0,0,.2)}div:where(.swal2-container) img:where(.swal2-image){max-width:100%;margin:2em auto 1em}div:where(.swal2-container) button:where(.swal2-close){z-index:2;align-items:center;justify-content:center;width:1.2em;height:1.2em;margin-top:0;margin-right:0;margin-bottom:-1.2em;padding:0;overflow:hidden;transition:color .1s,box-shadow .1s;border:none;border-radius:5px;background:rgba(0,0,0,0);color:#ccc;font-family:monospace;font-size:2.5em;cursor:pointer;justify-self:end}div:where(.swal2-container) button:where(.swal2-close):hover{transform:none;background:rgba(0,0,0,0);color:#f27474}div:where(.swal2-container) button:where(.swal2-close):focus{outline:none;box-shadow:inset 0 0 0 3px rgba(100,150,200,.5)}div:where(.swal2-container) button:where(.swal2-close)::-moz-focus-inner{border:0}div:where(.swal2-container) .swal2-html-container{z-index:1;justify-content:center;margin:1em 1.6em .3em;padding:0;overflow:auto;color:inherit;font-size:1.125em;font-weight:normal;line-height:normal;text-align:center;word-wrap:break-word;word-break:break-word}div:where(.swal2-container) input:where(.swal2-input),div:where(.swal2-container) input:where(.swal2-file),div:where(.swal2-container) textarea:where(.swal2-textarea),div:where(.swal2-container) select:where(.swal2-select),div:where(.swal2-container) div:where(.swal2-radio),div:where(.swal2-container) label:where(.swal2-checkbox){margin:1em 2em 3px}div:where(.swal2-container) input:where(.swal2-input),div:where(.swal2-container) input:where(.swal2-file),div:where(.swal2-container) textarea:where(.swal2-textarea){box-sizing:border-box;width:auto;transition:border-color .1s,box-shadow .1s;border:1px solid #d9d9d9;border-radius:.1875em;background:rgba(0,0,0,0);box-shadow:inset 0 1px 1px rgba(0,0,0,.06),0 0 0 3px rgba(0,0,0,0);color:inherit;font-size:1.125em}div:where(.swal2-container) input:where(.swal2-input).swal2-inputerror,div:where(.swal2-container) input:where(.swal2-file).swal2-inputerror,div:where(.swal2-container) textarea:where(.swal2-textarea).swal2-inputerror{border-color:#f27474 !important;box-shadow:0 0 2px #f27474 !important}div:where(.swal2-container) input:where(.swal2-input):focus,div:where(.swal2-container) input:where(.swal2-file):focus,div:where(.swal2-container) textarea:where(.swal2-textarea):focus{border:1px solid #b4dbed;outline:none;box-shadow:inset 0 1px 1px rgba(0,0,0,.06),0 0 0 3px rgba(100,150,200,.5)}div:where(.swal2-container) input:where(.swal2-input)::placeholder,div:where(.swal2-container) input:where(.swal2-file)::placeholder,div:where(.swal2-container) textarea:where(.swal2-textarea)::placeholder{color:#ccc}div:where(.swal2-container) .swal2-range{margin:1em 2em 3px;background:#fff}div:where(.swal2-container) .swal2-range input{width:80%}div:where(.swal2-container) .swal2-range output{width:20%;color:inherit;font-weight:600;text-align:center}div:where(.swal2-container) .swal2-range input,div:where(.swal2-container) .swal2-range output{height:2.625em;padding:0;font-size:1.125em;line-height:2.625em}div:where(.swal2-container) .swal2-input{height:2.625em;padding:0 .75em}div:where(.swal2-container) .swal2-file{width:75%;margin-right:auto;margin-left:auto;background:rgba(0,0,0,0);font-size:1.125em}div:where(.swal2-container) .swal2-textarea{height:6.75em;padding:.75em}div:where(.swal2-container) .swal2-select{min-width:50%;max-width:100%;padding:.375em .625em;background:rgba(0,0,0,0);color:inherit;font-size:1.125em}div:where(.swal2-container) .swal2-radio,div:where(.swal2-container) .swal2-checkbox{align-items:center;justify-content:center;background:#fff;color:inherit}div:where(.swal2-container) .swal2-radio label,div:where(.swal2-container) .swal2-checkbox label{margin:0 .6em;font-size:1.125em}div:where(.swal2-container) .swal2-radio input,div:where(.swal2-container) .swal2-checkbox input{flex-shrink:0;margin:0 .4em}div:where(.swal2-container) label:where(.swal2-input-label){display:flex;justify-content:center;margin:1em auto 0}div:where(.swal2-container) div:where(.swal2-validation-message){align-items:center;justify-content:center;margin:1em 0 0;padding:.625em;overflow:hidden;background:#f0f0f0;color:#666;font-size:1em;font-weight:300}div:where(.swal2-container) div:where(.swal2-validation-message)::before{content:"!";display:inline-block;width:1.5em;min-width:1.5em;height:1.5em;margin:0 .625em;border-radius:50%;background-color:#f27474;color:#fff;font-weight:600;line-height:1.5em;text-align:center}div:where(.swal2-container) .swal2-progress-steps{flex-wrap:wrap;align-items:center;max-width:100%;margin:1.25em auto;padding:0;background:rgba(0,0,0,0);font-weight:600}div:where(.swal2-container) .swal2-progress-steps li{display:inline-block;position:relative}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step{z-index:20;flex-shrink:0;width:2em;height:2em;border-radius:2em;background:#2778c4;color:#fff;line-height:2em;text-align:center}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step{background:#2778c4}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step~.swal2-progress-step{background:#add8e6;color:#fff}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step~.swal2-progress-step-line{background:#add8e6}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step-line{z-index:10;flex-shrink:0;width:2.5em;height:.4em;margin:0 -1px;background:#2778c4}div:where(.swal2-icon){position:relative;box-sizing:content-box;justify-content:center;width:5em;height:5em;margin:2.5em auto .6em;border:0.25em solid rgba(0,0,0,0);border-radius:50%;border-color:#000;font-family:inherit;line-height:5em;cursor:default;user-select:none}div:where(.swal2-icon) .swal2-icon-content{display:flex;align-items:center;font-size:3.75em}div:where(.swal2-icon).swal2-error{border-color:#f27474;color:#f27474}div:where(.swal2-icon).swal2-error .swal2-x-mark{position:relative;flex-grow:1}div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line]{display:block;position:absolute;top:2.3125em;width:2.9375em;height:.3125em;border-radius:.125em;background-color:#f27474}div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line][class$=left]{left:1.0625em;transform:rotate(45deg)}div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line][class$=right]{right:1em;transform:rotate(-45deg)}div:where(.swal2-icon).swal2-error.swal2-icon-show{animation:swal2-animate-error-icon .5s}div:where(.swal2-icon).swal2-error.swal2-icon-show .swal2-x-mark{animation:swal2-animate-error-x-mark .5s}div:where(.swal2-icon).swal2-warning{border-color:#facea8;color:#f8bb86}div:where(.swal2-icon).swal2-warning.swal2-icon-show{animation:swal2-animate-error-icon .5s}div:where(.swal2-icon).swal2-warning.swal2-icon-show .swal2-icon-content{animation:swal2-animate-i-mark .5s}div:where(.swal2-icon).swal2-info{border-color:#9de0f6;color:#3fc3ee}div:where(.swal2-icon).swal2-info.swal2-icon-show{animation:swal2-animate-error-icon .5s}div:where(.swal2-icon).swal2-info.swal2-icon-show .swal2-icon-content{animation:swal2-animate-i-mark .8s}div:where(.swal2-icon).swal2-question{border-color:#c9dae1;color:#87adbd}div:where(.swal2-icon).swal2-question.swal2-icon-show{animation:swal2-animate-error-icon .5s}div:where(.swal2-icon).swal2-question.swal2-icon-show .swal2-icon-content{animation:swal2-animate-question-mark .8s}div:where(.swal2-icon).swal2-success{border-color:#a5dc86;color:#a5dc86}div:where(.swal2-icon).swal2-success [class^=swal2-success-circular-line]{position:absolute;width:3.75em;height:7.5em;transform:rotate(45deg);border-radius:50%}div:where(.swal2-icon).swal2-success [class^=swal2-success-circular-line][class$=left]{top:-0.4375em;left:-2.0635em;transform:rotate(-45deg);transform-origin:3.75em 3.75em;border-radius:7.5em 0 0 7.5em}div:where(.swal2-icon).swal2-success [class^=swal2-success-circular-line][class$=right]{top:-0.6875em;left:1.875em;transform:rotate(-45deg);transform-origin:0 3.75em;border-radius:0 7.5em 7.5em 0}div:where(.swal2-icon).swal2-success .swal2-success-ring{position:absolute;z-index:2;top:-0.25em;left:-0.25em;box-sizing:content-box;width:100%;height:100%;border:.25em solid rgba(165,220,134,.3);border-radius:50%}div:where(.swal2-icon).swal2-success .swal2-success-fix{position:absolute;z-index:1;top:.5em;left:1.625em;width:.4375em;height:5.625em;transform:rotate(-45deg)}div:where(.swal2-icon).swal2-success [class^=swal2-success-line]{display:block;position:absolute;z-index:2;height:.3125em;border-radius:.125em;background-color:#a5dc86}div:where(.swal2-icon).swal2-success [class^=swal2-success-line][class$=tip]{top:2.875em;left:.8125em;width:1.5625em;transform:rotate(45deg)}div:where(.swal2-icon).swal2-success [class^=swal2-success-line][class$=long]{top:2.375em;right:.5em;width:2.9375em;transform:rotate(-45deg)}div:where(.swal2-icon).swal2-success.swal2-icon-show .swal2-success-line-tip{animation:swal2-animate-success-line-tip .75s}div:where(.swal2-icon).swal2-success.swal2-icon-show .swal2-success-line-long{animation:swal2-animate-success-line-long .75s}div:where(.swal2-icon).swal2-success.swal2-icon-show .swal2-success-circular-line-right{animation:swal2-rotate-success-circular-line 4.25s ease-in}[class^=swal2]{-webkit-tap-highlight-color:rgba(0,0,0,0)}.swal2-show{animation:swal2-show .3s}.swal2-hide{animation:swal2-hide .15s forwards}.swal2-noanimation{transition:none}.swal2-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}.swal2-rtl .swal2-close{margin-right:initial;margin-left:0}.swal2-rtl .swal2-timer-progress-bar{right:0;left:auto}@keyframes swal2-toast-show{0%{transform:translateY(-0.625em) rotateZ(2deg)}33%{transform:translateY(0) rotateZ(-2deg)}66%{transform:translateY(0.3125em) rotateZ(2deg)}100%{transform:translateY(0) rotateZ(0deg)}}@keyframes swal2-toast-hide{100%{transform:rotateZ(1deg);opacity:0}}@keyframes swal2-toast-animate-success-line-tip{0%{top:.5625em;left:.0625em;width:0}54%{top:.125em;left:.125em;width:0}70%{top:.625em;left:-0.25em;width:1.625em}84%{top:1.0625em;left:.75em;width:.5em}100%{top:1.125em;left:.1875em;width:.75em}}@keyframes swal2-toast-animate-success-line-long{0%{top:1.625em;right:1.375em;width:0}65%{top:1.25em;right:.9375em;width:0}84%{top:.9375em;right:0;width:1.125em}100%{top:.9375em;right:.1875em;width:1.375em}}@keyframes swal2-show{0%{transform:scale(0.7)}45%{transform:scale(1.05)}80%{transform:scale(0.95)}100%{transform:scale(1)}}@keyframes swal2-hide{0%{transform:scale(1);opacity:1}100%{transform:scale(0.5);opacity:0}}@keyframes swal2-animate-success-line-tip{0%{top:1.1875em;left:.0625em;width:0}54%{top:1.0625em;left:.125em;width:0}70%{top:2.1875em;left:-0.375em;width:3.125em}84%{top:3em;left:1.3125em;width:1.0625em}100%{top:2.8125em;left:.8125em;width:1.5625em}}@keyframes swal2-animate-success-line-long{0%{top:3.375em;right:2.875em;width:0}65%{top:3.375em;right:2.875em;width:0}84%{top:2.1875em;right:0;width:3.4375em}100%{top:2.375em;right:.5em;width:2.9375em}}@keyframes swal2-rotate-success-circular-line{0%{transform:rotate(-45deg)}5%{transform:rotate(-45deg)}12%{transform:rotate(-405deg)}100%{transform:rotate(-405deg)}}@keyframes swal2-animate-error-x-mark{0%{margin-top:1.625em;transform:scale(0.4);opacity:0}50%{margin-top:1.625em;transform:scale(0.4);opacity:0}80%{margin-top:-0.375em;transform:scale(1.15)}100%{margin-top:0;transform:scale(1);opacity:1}}@keyframes swal2-animate-error-icon{0%{transform:rotateX(100deg);opacity:0}100%{transform:rotateX(0deg);opacity:1}}@keyframes swal2-rotate-loading{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes swal2-animate-question-mark{0%{transform:rotateY(-360deg)}100%{transform:rotateY(0)}}@keyframes swal2-animate-i-mark{0%{transform:rotateZ(45deg);opacity:0}25%{transform:rotateZ(-25deg);opacity:.4}50%{transform:rotateZ(15deg);opacity:.8}75%{transform:rotateZ(-5deg);opacity:1}100%{transform:rotateX(0);opacity:1}}body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown){overflow:hidden}body.swal2-height-auto{height:auto !important}body.swal2-no-backdrop .swal2-container{background-color:rgba(0,0,0,0) !important;pointer-events:none}body.swal2-no-backdrop .swal2-container .swal2-popup{pointer-events:all}body.swal2-no-backdrop .swal2-container .swal2-modal{box-shadow:0 0 10px rgba(0,0,0,.4)}@media print{body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown){overflow-y:scroll !important}body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown)>[aria-hidden=true]{display:none}body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) .swal2-container{position:static !important}}body.swal2-toast-shown .swal2-container{box-sizing:border-box;width:360px;max-width:100%;background-color:rgba(0,0,0,0);pointer-events:none}body.swal2-toast-shown .swal2-container.swal2-top{inset:0 auto auto 50%;transform:translateX(-50%)}body.swal2-toast-shown .swal2-container.swal2-top-end,body.swal2-toast-shown .swal2-container.swal2-top-right{inset:0 0 auto auto}body.swal2-toast-shown .swal2-container.swal2-top-start,body.swal2-toast-shown .swal2-container.swal2-top-left{inset:0 auto auto 0}body.swal2-toast-shown .swal2-container.swal2-center-start,body.swal2-toast-shown .swal2-container.swal2-center-left{inset:50% auto auto 0;transform:translateY(-50%)}body.swal2-toast-shown .swal2-container.swal2-center{inset:50% auto auto 50%;transform:translate(-50%, -50%)}body.swal2-toast-shown .swal2-container.swal2-center-end,body.swal2-toast-shown .swal2-container.swal2-center-right{inset:50% 0 auto auto;transform:translateY(-50%)}body.swal2-toast-shown .swal2-container.swal2-bottom-start,body.swal2-toast-shown .swal2-container.swal2-bottom-left{inset:auto auto 0 0}body.swal2-toast-shown .swal2-container.swal2-bottom{inset:auto auto 0 50%;transform:translateX(-50%)}body.swal2-toast-shown .swal2-container.swal2-bottom-end,body.swal2-toast-shown .swal2-container.swal2-bottom-right{inset:auto 0 0 auto}')})(xk);var J1e=xk.exports;const Oc=B2(J1e),Iv="ERROR: Failed to fetch collection",epe="ERROR: Too many API calls!",_k="https://github.com/Cyggnus/ShuffleGenie-API/issues/new?assignees=&labels=&projects=&template=bug_report.md&title=",rpe=["Silly","Crazy","Awesome","Fantastic","Glorious","Magnificent","Hilarious","Witty","Epic","Brilliant","Incredible","Wonderful","Dazzling","Majestic","Marvelous","Phenomenal","Spectacular","Thrilling","Zany","Whimsical","Peculiar","Bizarre","Curious","Ridiculous","Quirky","Playful","Amusing","Entertaining","Ludicrous","Absurd","Comical","Outlandish","Foolish","Wacky","Funky","Zesty","Jolly","Delightful","Krombopulos","Flingus","Zogon","Flurb","Jabberwocky","Snickerdoodle","Wobbegong","Mxyzptlk","Blunderbuss","Snollygoster","Quibblesnook","Noodlewhack","Flummox","Zizzwizz","Bumbershoot","Cantankerous","Scrumdiddlyumptious"],tpe=["Banana","Penguin","Jellyfish","Noodle","Marshmallow","Squid","Giraffe","Sausage","Pickles","Muffin","Toothpaste","Pancake","Watermelon","Bubblegum","Cupcake","Donut","Kangaroo","Cheeseburger","Pickle","Taco","Sushi","Cucumber","Pineapple","Tofu","Popsicle","Waffle","Potato","Avocado","Penguin","Koala","Banana","Marshmallow","Sausage","Noodle","Jellybean","Cupcake","Cauliflower","Squirrel","Panda","Gummybear","Giraffe","Lollipop","Pancake","Broccoli","Pickles","Squid","Cheeseburger","Snickerdoodle","Wobbegong","Zogon","Flurb","Jabberwocky","Snollygoster","Quibblesnook","Noodlewhack","Flummox","Zizzwizz"],npe="https://shufflegenie-api-klffmw5tvq-uc.a.run.app/",ope=async e=>{try{const r=`${npe}?user=${e}`;return await(await fetch(r)).json()}catch{throw Error(Iv)}},ape=async(e,r)=>{if(r==="first"||typeof r=="number"&&Date.now()-r>=4e3)return ope(e);throw Error(epe)},Ok=async(e,r,t,n,o)=>{n(!0);try{const a=await ape(e,o);if(a===""||a.length===0)throw new Error(Iv);const s=a.length,p=JSON.stringify({user:e,numOfCards:s,data:a});localStorage.setItem("collection",p),r(a),t(s),n(!1)}catch{throw n(!1),new Error(Iv)}},A2=(e,r,t)=>{e&&(localStorage.removeItem("activeUser"),localStorage.removeItem("collection")),r(t),window.location.reload()},Ck=async(e,r,t,n,o,a,s,p,v)=>{e(!0);try{await Ok(s,o,n,a,t).then(()=>{Oc.fire({title:v("misc.apiMsgs.success.title"),icon:"success",allowOutsideClick:!0,allowEscapeKey:!0,timer:2e3}).then(g=>{g.isDismissed&&A2(!1,p,"/profile"),g.isConfirmed&&A2(!1,p,"/profile")})})}catch(g){Oc.fire({title:v("misc.apiMsgs.fail.title"),icon:"error",text:v("misc.apiMsgs.fail.text"),html:v("misc.apiMsgs.fail.html",{issuesLink:_k}),allowOutsideClick:!0,allowEscapeKey:!0}),console.error(g)}r(Date.now()),setTimeout(()=>{e(!1)},3e4)},kk=(e,r)=>{Oc.fire({title:r("nav.btnTitle.logout"),icon:"warning",showCancelButton:!0,confirmButtonColor:"#3085d6",cancelButtonColor:"#d33",confirmButtonText:"Yes",allowOutsideClick:!0,allowEscapeKey:!0}).then(t=>{t.isConfirmed&&A2(!0,e,"/")})},ipe=["de","en","es","fr","hi","it","ja","ko","nl","pt-BR","ru","uk","zh"],lpe=({label:e,onClick:r})=>{const{t}=zt();return ae.jsx("button",{className:"block sm:text-sm! mb:text-base w-full text-left mb-1 lg:mb-2 navLink",type:"button",onClick:r,children:t(`misc.langList.${e}`)})},spe=({onClose:e})=>{const{t:r,i18n:t}=zt(),n=o=>{localStorage.setItem("userDefLang",o),t.changeLanguage(o),e()};return i.useEffect(()=>(document.body.classList.add("no-scroll"),()=>{document.body.classList.remove("no-scroll")}),[]),ae.jsx("div",{className:"dimmedBg fixed top-0 pt-6 lg:pt-0 left-0 h-screen flex items-center justify-center z-50",children:ae.jsxs("div",{className:"flex flex-col items-start fixed top-0 overflow-y-auto h-screen sm:static sm:h-auto lg:h-[80%] xl:h-[850px] bg-gray-900 p-2 sm:p-6 sm:rounded-lg text-white font-bold sm:max-w-md w-full",children:[ae.jsxs("div",{className:"flex flex-row justify-between w-full mt-2 sm:mt-0 md:mb-2 lg:mb-4",children:[ae.jsx("h2",{className:"text-lg text-violet-1 align-top ml-2 font-semibold text-center",children:r("misc.selectLanguage")}),ae.jsx("button",{className:"text-center navLink mr-2 p-0",type:"button",onClick:e,children:ae.jsx(s_,{className:"h-7 w-7 text-violet-1 stroke-violet-1"})})]}),ae.jsx("hr",{className:"my-3 lg:my-4 w-full"}),ae.jsx("div",{className:"space-y-1 lg:space-y-2 w-full writing-horizontal",children:ipe.map(o=>ae.jsx(lpe,{label:o,onClick:()=>n(o)},o))}),ae.jsx("button",{className:"mt-1 lg:mt-4 text-violet-1 text-center navLink",type:"button",onClick:e,children:r("misc.close")})]})})},Ek=({handleNavMenu:e})=>{const{t:r}=zt(),[t,n]=i.useState(!1),o=()=>{n(!t),t&&e&&e()};return ae.jsxs("div",{className:"w-full flex flex-col items-center",children:[ae.jsx("button",{className:"navLink flex items-center w-full justify-center",title:r("nav.btnTitle.locale"),type:"button",onClick:o,children:ae.jsx(i_,{className:"h-5 w-5 align-text-bottom"})}),t&&ae.jsx(spe,{onClose:o})]})},cpe=()=>{const{t:e}=zt(),[r,t]=i.useState(!1),{lastCalledTime:n,needSync:o,setCardsNum:a,setCollection:s,setIsLoading:p,setLCT:v,username:g}=i.useContext(oa),x=bl(),E=()=>{p(!0),Ck(t,v,n,a,s,p,g,x,e)},C=()=>{kk(x,e)};return ae.jsx("nav",{className:"navBar",children:ae.jsx("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 h-20",children:ae.jsxs("div",{className:"flex items-center justify-between h-20",children:[ae.jsx("div",{className:"flex items-center",children:ae.jsx(Tn,{to:"/",title:e("nav.btnTitle.home"),className:"navLink",children:ae.jsx("h1",{className:"text-white text-3xl font-bold",children:"ShuffleGenie"})})}),ae.jsxs("div",{className:"flex items-center space-x-4",children:[ae.jsx(Tn,{to:"/help",title:e("nav.btnTitle.help"),className:"navLink",children:e("nav.link.help")}),ae.jsx(Tn,{to:"/about",title:e("nav.btnTitle.about"),className:"navLink",children:e("nav.link.about")}),!o&&ae.jsx("button",{type:"button",onClick:E,disabled:r,title:e("nav.btnTitle.sync"),className:"navLink",children:ae.jsx(t_,{className:"h-5 w-5 spinHover"})})]}),ae.jsxs("div",{className:"flex items-center space-x-4",children:[!o&&ae.jsx("button",{type:"button",title:e("nav.btnTitle.profile"),onClick:()=>x("/profile"),className:"defaultButton",children:ae.jsx(l_,{className:"h-5 w-5"})}),!o&&ae.jsx("button",{type:"button",title:e("nav.btnTitle.logout"),onClick:()=>{C()},className:"defaultButton flex",children:ae.jsx(r_,{className:"h-5 w-5"})}),ae.jsx(Ek,{})]})]})})})},upe=()=>{const{t:e}=zt(),[r,t]=i.useState(!1),[n,o]=i.useState(!1),{lastCalledTime:a,needSync:s,setCardsNum:p,setCollection:v,setIsLoading:g,setLCT:x,username:E}=i.useContext(oa),C=bl(),j=()=>{o(!1)},T=()=>{g(!0),Ck(t,x,a,p,v,g,E,C,e),j()},R=()=>{kk(C,e)};return i.useEffect(()=>(n?document.body.classList.add("no-scroll"):document.body.classList.remove("no-scroll"),()=>{document.body.classList.remove("no-scroll")}),[n]),ae.jsx("nav",{className:`${n?"navBar fixed z-50":"navBar"}`,children:ae.jsx("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 h-20 relative",children:ae.jsxs("div",{className:"flex items-center justify-between h-20",children:[ae.jsx("div",{className:"flex items-center",children:ae.jsx(Tn,{to:"/",onClick:j,title:e("nav.btnTitle.home"),className:"navLink",children:ae.jsx("h1",{className:"text-white text-3xl font-bold",children:"ShuffleGenie"})})}),ae.jsx("button",{className:"hamburger-btn text-white navLink",type:"button",title:e("nav.btnTitle.hamburgerMenu"),"aria-label":"navbar hamburger menu",onClick:()=>o(!n),children:ae.jsx(o_,{className:"h-8 w-8",style:{color:"#9b51e0"}})}),ae.jsxs("div",{id:"hamburger-items",className:`${n?"flex flex-col items-start space-y-7 border-b-[70px] p-12 fixed top-20 right-0 bg-violet-1 w-full h-screen shadow-md z-50 overflow-y-auto":"hidden"}`,children:[ae.jsx(Ek,{handleNavMenu:j}),ae.jsx("div",{className:"w-full",children:ae.jsx(Tn,{to:"/",title:e("nav.btnTitle.home"),className:"navLink block w-full",onClick:j,children:e("nav.link.home")})}),ae.jsx("div",{className:"w-full",children:ae.jsx(Tn,{to:"/help",title:e("nav.btnTitle.help"),className:"navLink block w-full",onClick:j,children:e("nav.link.help")})}),ae.jsx("div",{className:"w-full",children:ae.jsx(Tn,{to:"/about",title:e("nav.btnTitle.about"),className:"navLink block w-full",onClick:j,children:e("nav.link.about")})}),!s&&ae.jsx("div",{className:"w-full",children:ae.jsx("button",{type:"button",onClick:T,disabled:r,title:e("nav.btnTitle.sync"),className:"navLink w-full items-center",children:e("nav.link.sync")})}),!s&&ae.jsx("div",{className:"w-full",children:ae.jsx("button",{type:"button",title:e("nav.btnTitle.profile"),onClick:()=>{C("/profile"),j()},className:"navLink block w-full",children:e("nav.link.profile")})}),!s&&ae.jsx("div",{className:"w-full",children:ae.jsx("button",{type:"button",title:e("nav.btnTitle.logout"),onClick:()=>{R(),j()},className:"navLink w-full items-center",children:e("nav.btnTitle.logout")})})]})]})})})},dpe=()=>{const[e,r]=i.useState(!1),[t,n]=i.useState(!1);return i.useEffect(()=>{function o(){r(window.innerWidth<=800),n(!0)}o();const a=Q1e(o,1400);return window.addEventListener("resize",a),()=>{window.removeEventListener("resize",a)}},[]),t?ae.jsxs(ae.Fragment,{children:[e?ae.jsx(upe,{}):ae.jsx(cpe,{}),ae.jsx("div",{})]}):null};function fpe(){const[e,r]=i.useState(!1),t=i.useCallback(()=>{const{scrollY:n}=window;n>900?r(!0):r(!1)},[e]);return i.useEffect(()=>(window.addEventListener("scroll",t),()=>{window.removeEventListener("scroll",t)}),[e]),e}function Rk(){window.scrollTo({top:0,behavior:"smooth"})}const ppe=()=>ae.jsx("button",{className:`backToTopAnimation px-4 defaultButton fixed bottom-20 lg:bottom-28 md:right-16 right-5 translate-y-full transition-transform duration-200 ${fpe()?"visible":"invisible"}`,id:"backToTopButton",type:"button",onClick:Rk,children:ae.jsx(n_,{className:"h-6 w-6 text-white"})}),gpe=()=>ae.jsxs("div",{className:"bg-gray-1",children:[ae.jsx(dpe,{}),ae.jsx(GM,{}),ae.jsx(ppe,{}),ae.jsx(I1e,{})]}),hpe="/ShuffleGenie/assets/404Error-7813e8cf.svg",mpe=()=>ae.jsxs("div",{className:"flex flex-col items-center justify-center bg-gray-1 h-screen",children:[ae.jsx("img",{className:"max-w-xs",src:hpe,alt:"error 404"}),ae.jsx("h1",{className:"h1Title text-5xl",children:"404! This page does not exist!"})]});function Pk({children:e}){const{i18n:r}=zt(),[t,n]=i.useState(0),[o,a]=i.useState([]),[s,p]=i.useState(!0),[v,g]=i.useState("first"),[x,E]=i.useState(!0),[C,j]=i.useState(""),T=i.useMemo(()=>({cardsNum:t,setCardsNum:n,collection:o,setCollection:a,isLoading:s,setIsLoading:p,lastCalledTime:v,setLCT:g,needSync:x,setNeedSync:E,username:C,setUsername:j}),[t,o,s,v,x,C]),R=()=>{const S=localStorage.getItem("activeUser"),w=localStorage.getItem("collection"),m=localStorage.getItem("userDefLang");if(m)r.changeLanguage(m);else{const d=r.language;r.changeLanguage(d)}if(S!==null&&S!==""&&j(S),w){const d=JSON.parse(w),{numOfCards:l,data:c}=d;n(l),a(c),E(!1)}};return i.useEffect(()=>{R(),p(!1)},[]),ae.jsx(oa.Provider,{value:T,children:e})}Pk.propTypes={children:uv.node.isRequired};const Sk=()=>{const{t:e}=zt(),[r,t]=i.useState(!1),{lastCalledTime:n,setCardsNum:o,setCollection:a,setIsLoading:s,setLCT:p,setNeedSync:v,setUsername:g}=i.useContext(oa),x=bl(),E=async R=>{localStorage.setItem("activeUser",R);try{await Ok(R,a,o,s,n)}catch(S){s(!0),Oc.fire({title:e("misc.apiMsgs.fail.title"),icon:"error",text:e("misc.apiMsgs.fail.text"),html:e("misc.apiMsgs.fail.html",{issuesLink:_k}),allowOutsideClick:!0,allowEscapeKey:!0}).then(w=>{(w.isDismissed||w.isConfirmed)&&A2(!0,x,"/")}),console.error(S)}g(R),p(Date.now()),v(!1),x("/profile")},C=R=>{R.preventDefault();let w=R.currentTarget.elements.namedItem("username").value.trim();w||(w="DefaultPool2"),Rk(),E(w)},j=()=>{t(!0)},T=()=>{t(!1)};return ae.jsxs("form",{onSubmit:C,className:"flex flex-col items-center space-y-10",children:[ae.jsxs("div",{className:"flex flex-col w-auto",children:[r&&ae.jsx("span",{className:"text-blue-gray-200 text-sm pb-4",children:e("misc.syncForm.inputDesc")}),ae.jsx(Mb.Input,{variant:"standard",label:e("misc.syncForm.label"),"aria-label":e("misc.syncForm.aria-label"),color:"white",id:"username",onFocus:j,onBlur:T})]}),ae.jsx("button",{className:"defaultButton",type:"submit",children:e("misc.syncForm.syncBtn")})]})},vpe=Object.freeze(Object.defineProperty({__proto__:null,default:Sk},Symbol.toStringTag,{value:"Module"}));var L2={exports:{}};/*! https://mths.be/base64 v1.0.0 by @mathias | MIT license */L2.exports;(function(e,r){(function(t){var n=r,o=e&&e.exports==n&&e,a=typeof ct=="object"&&ct;(a.global===a||a.window===a)&&(t=a);var s=function(T){this.message=T};s.prototype=new Error,s.prototype.name="InvalidCharacterError";var p=function(T){throw new s(T)},v="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",g=/[\t\n\f\r ]/g,x=function(T){T=String(T).replace(g,"");var R=T.length;R%4==0&&(T=T.replace(/==?$/,""),R=T.length),(R%4==1||/[^+a-zA-Z0-9/]/.test(T))&&p("Invalid character: the string to be decoded is not correctly encoded.");for(var S=0,w,m,d="",l=-1;++l>(-2*S&6)));return d},E=function(T){T=String(T),/[^\0-\xFF]/.test(T)&&p("The string to be encoded contains characters outside of the Latin1 range.");for(var R=T.length%3,S="",w=-1,m,d,l,c,u=T.length-R;++w>18&63)+v.charAt(c>>12&63)+v.charAt(c>>6&63)+v.charAt(c&63);return R==2?(m=T.charCodeAt(w)<<8,d=T.charCodeAt(++w),c=m+d,S+=v.charAt(c>>10)+v.charAt(c>>4&63)+v.charAt(c<<2&63)+"="):R==1&&(c=T.charCodeAt(w),S+=v.charAt(c>>2)+v.charAt(c<<4&63)+"=="),S},C={encode:E,decode:x,version:"1.0.0"};if(n&&!n.nodeType)if(o)o.exports=C;else for(var j in C)C.hasOwnProperty(j)&&(n[j]=C[j]);else t.base64=C})(ct)})(L2,L2.exports);var bpe=L2.exports;const wpe=[{name:"abomination",carddefid:"Abomination"},{name:"absorbing man",carddefid:"AbsorbingMan"},{name:"adam warlock",carddefid:"AdamWarlock"},{name:"aero",carddefid:"Aero"},{name:"agatha harkness",carddefid:"AgathaHarkness"},{name:"agent 13",carddefid:"Agent13"},{name:"agent coulson",carddefid:"AgentCoulson"},{name:"america chavez",carddefid:"AmericaChavez"},{name:"angel",carddefid:"Angel"},{name:"angela",carddefid:"Angela"},{name:"annihilus",carddefid:""},{name:"ant man",carddefid:"AntMan"},{name:"apocalypse",carddefid:"Apocalypse"},{name:"armor",carddefid:"Armor"},{name:"arnim zola",carddefid:"ArnimZola"},{name:"attuma",carddefid:"Attuma"},{name:"baron mordo",carddefid:"BaronMordo"},{name:"bast",carddefid:"Bast"},{name:"beast",carddefid:"Beast"},{name:"bishop",carddefid:"Bishop"},{name:"black bolt",carddefid:"BlackBolt"},{name:"black cat",carddefid:"BlackCat"},{name:"black knight",carddefid:"BlackKnight"},{name:"black panther",carddefid:"BlackPanther"},{name:"black widow",carddefid:"BlackWidow"},{name:"blade",carddefid:"Blade"},{name:"blink",carddefid:"Blink"},{name:"blob",carddefid:"Blob"},{name:"blue marvel",carddefid:"BlueMarvel"},{name:"brood",carddefid:"Brood"},{name:"broodling",carddefid:"Broodling"},{name:"bucky barnes",carddefid:"BuckyBarnes"},{name:"bullseye",carddefid:"Bullseye"},{name:"cable",carddefid:"Cable"},{name:"captain america",carddefid:"CaptainAmerica"},{name:"captain marvel",carddefid:"CaptainMarvel"},{name:"carnage",carddefid:"Carnage"},{name:"cerebro",carddefid:"Cerebro"},{name:"cloak",carddefid:"Cloak"},{name:"colleen wing",carddefid:"ColleenWing"},{name:"colossus",carddefid:"Colossus"},{name:"cosmo",carddefid:"Cosmo"},{name:"crossbones",carddefid:"Crossbones"},{name:"crystal",carddefid:"Crystal"},{name:"cyclops",carddefid:"Cyclops"},{name:"dagger",carddefid:"Dagger"},{name:"daredevil",carddefid:"Daredevil"},{name:"darkhawk",carddefid:"Darkhawk"},{name:"dazzler",carddefid:"Dazzler"},{name:"deadpool",carddefid:"Deadpool"},{name:"death",carddefid:"Death"},{name:"deathlok",carddefid:"Deathlok"},{name:"debrii",carddefid:"Debrii"},{name:"demon",carddefid:"Demon"},{name:"destroyer",carddefid:"Destroyer"},{name:"devil dinosaur",carddefid:"DevilDinosaur"},{name:"doctor doom",carddefid:"DrDoom"},{name:"doctor octopus",carddefid:"DoctorOctopus"},{name:"doctor strange",carddefid:"DoctorStrange"},{name:"domino",carddefid:"Domino"},{name:"doombot",carddefid:"DoomBot"},{name:"dracula",carddefid:"Dracula"},{name:"drax",carddefid:"Drax"},{name:"drone",carddefid:"Drone"},{name:"ebony maw",carddefid:"EbonyMaw"},{name:"echo",carddefid:"Echo"},{name:"electro",carddefid:"Electro"},{name:"elektra",carddefid:"Elektra"},{name:"elsa bloodstone",carddefid:"ElsaBloodstone"},{name:"enchantress",carddefid:"Enchantress"},{name:"evolved abomination",carddefid:"EvolvedAbomination"},{name:"evolved cyclops",carddefid:"EvolvedCyclops"},{name:"evolved hulk",carddefid:"EvolvedHulk"},{name:"evolved misty knight",carddefid:"EvolvedMistyKnight"},{name:"evolved shocker",carddefid:"EvolvedShocker"},{name:"evolved the thing",carddefid:"EvolvedTheThing"},{name:"evolved wasp",carddefid:"EvolvedWasp"},{name:"falcon",carddefid:"Falcon"},{name:"flatman",carddefid:"Flatman"},{name:"forge",carddefid:"Forge"},{name:"galactus",carddefid:"Galactus"},{name:"gambit",carddefid:"Gambit"},{name:"gamora",carddefid:"Gamora"},{name:"ghost",carddefid:"Ghost"},{name:"ghost rider",carddefid:"GhostRider"},{name:"ghost-spider",carddefid:"GhostSpider"},{name:"giganto",carddefid:"Giganto"},{name:"gladiator",carddefid:""},{name:"goblin queen",carddefid:"GoblinQueen"},{name:"goose",carddefid:"Goose"},{name:"gorr",carddefid:""},{name:"green goblin",carddefid:"GreenGoblin"},{name:"groot",carddefid:"Groot"},{name:"gwenpool",carddefid:"Gwenpool"},{name:"hawkeye",carddefid:"Hawkeye"},{name:"hazmat",carddefid:"Hazmat"},{name:"heimdall",carddefid:"Heimdall"},{name:"hela",carddefid:"Hela"},{name:"helicarrier",carddefid:"Helicarrier"},{name:"hellcow",carddefid:"Hellcow"},{name:"high evolutionary",carddefid:"HighEvolutionary"},{name:"hit monkey",carddefid:"HitMonkey"},{name:"hobgoblin",carddefid:"Hobgoblin"},{name:"howard the duck",carddefid:"HowardTheDuck"},{name:"hulk",carddefid:"Hulk"},{name:"hulkbuster",carddefid:"Hulkbuster"},{name:"human torch",carddefid:"HumanTorch"},{name:"iceman",carddefid:"Iceman"},{name:"illusion!",carddefid:"MysterioIllusion"},{name:"invisible woman",carddefid:"InvisibleWoman"},{name:"iron fist",carddefid:"IronFist"},{name:"iron lad",carddefid:"IronLad"},{name:"iron man",carddefid:"IronMan"},{name:"ironheart",carddefid:"Ironheart"},{name:"j. jonah jameson",carddefid:"JJonahJameson"},{name:"jane foster mighty thor",carddefid:"JaneFoster"},{name:"jean grey",carddefid:"JeanGrey"},{name:"jeff the baby land shark",carddefid:"JeffTheBabyLandShark"},{name:"jessica jones",carddefid:"JessicaJones"},{name:"jubilee",carddefid:"Jubilee"},{name:"juggernaut",carddefid:"Juggernaut"},{name:"ka-zar",carddefid:"KaZar"},{name:"kang",carddefid:"Kang"},{name:"killmonger",carddefid:"Killmonger"},{name:"king eitri",carddefid:"KingEitri"},{name:"kingpin",carddefid:"Kingpin"},{name:"kitty pryde",carddefid:"KittyPryde"},{name:"klaw",carddefid:"Klaw"},{name:"knull",carddefid:"Knull"},{name:"korg",carddefid:"Korg"},{name:"kraven",carddefid:"Kraven"},{name:"lady deathstrike",carddefid:"LadyDeathstrike"},{name:"lady sif",carddefid:"LadySif"},{name:"leader",carddefid:"Leader"},{name:"leech",carddefid:"Leech"},{name:"legion",carddefid:"Legion"},{name:"lizard",carddefid:"Lizard"},{name:"lockjaw",carddefid:"Lockjaw"},{name:"luke cage",carddefid:"LukeCage"},{name:"m'baku",carddefid:"MBaku"},{name:"magik",carddefid:"Magik"},{name:"magneto",carddefid:"Magneto"},{name:"makkari",carddefid:"Makkari"},{name:"mantis",carddefid:"Mantis"},{name:"maria hill",carddefid:"MariaHill"},{name:"master mold",carddefid:"MasterMold"},{name:"maximus",carddefid:"Maximus"},{name:"medusa",carddefid:"Medusa"},{name:"mephisto",carddefid:"Mephisto"},{name:"miles morales",carddefid:"MilesMorales"},{name:"mind stone",carddefid:"MindStone"},{name:"mirage",carddefid:"Mirage"},{name:"mister fantastic",carddefid:"MrFantastic"},{name:"mister negative",carddefid:"MrNegative"},{name:"mister sinister",carddefid:"MrSinister"},{name:"misty knight",carddefid:"MistyKnight"},{name:"mjölnir",carddefid:"Mjolnir"},{name:"modok",carddefid:"Modok"},{name:"mojo",carddefid:"Mojo"},{name:"monster",carddefid:"Monster"},{name:"moon girl",carddefid:"MoonGirl"},{name:"moon knight",carddefid:"MoonKnight"},{name:"morbius",carddefid:"Morbius"},{name:"morph",carddefid:"Morph"},{name:"ms. marvel",carddefid:"MsMarvel"},{name:"multiple man",carddefid:"MultipleMan"},{name:"mysterio",carddefid:"Mysterio"},{name:"mysterio?",carddefid:"MysterioUnrevealed"},{name:"mystique",carddefid:"Mystique"},{name:"nakia",carddefid:"Nakia"},{name:"namor",carddefid:"Namor"},{name:"nebula",carddefid:"Nebula"},{name:"negasonic teenage warhead",carddefid:"NegasonicTeenageWarhead"},{name:"nick fury",carddefid:"NickFury"},{name:"night nurse",carddefid:"NightNurse"},{name:"nightcrawler",carddefid:"Nightcrawler"},{name:"nimrod",carddefid:"Nimrod"},{name:"ninja",carddefid:"Ninja"},{name:"nova",carddefid:"Nova"},{name:"odin",carddefid:"Odin"},{name:"okoye",carddefid:"Okoye"},{name:"omega red",carddefid:"OmegaRed"},{name:"onslaught",carddefid:"Onslaught"},{name:"orka",carddefid:"Orka"},{name:"patriot",carddefid:"Patriot"},{name:"pig",carddefid:"Pig"},{name:"polaris",carddefid:"Polaris"},{name:"power stone",carddefid:"PowerStone"},{name:"professor x",carddefid:"ProfessorX"},{name:"psylocke",carddefid:"Psylocke"},{name:"punisher",carddefid:"Punisher"},{name:"quake",carddefid:"Quake"},{name:"quicksilver",carddefid:"Quicksilver"},{name:"quinjet",carddefid:"Quinjet"},{name:"random",carddefid:"Random"},{name:"raptor",carddefid:"Raptor"},{name:"reality stone",carddefid:"RealityStone"},{name:"red guardian",carddefid:"RedGuardian"},{name:"red skull",carddefid:"RedSkull"},{name:"rescue",carddefid:"Rescue"},{name:"rhino",carddefid:"Rhino"},{name:"rock",carddefid:"Rock"},{name:"rocket raccoon",carddefid:"RocketRaccoon"},{name:"rockslide",carddefid:"Rockslide"},{name:"rogue",carddefid:"Rogue"},{name:"ronan the accuser",carddefid:"Ronan"},{name:"sabretooth",carddefid:"Sabretooth"},{name:"sandman",carddefid:"Sandman"},{name:"sauron",carddefid:"Sauron"},{name:"scarlet witch",carddefid:"ScarletWitch"},{name:"scorpion",carddefid:"Scorpion"},{name:"sentinel",carddefid:"Sentinel"},{name:"sentry",carddefid:"Sentry"},{name:"sera",carddefid:"Sera"},{name:"shadow king",carddefid:"ShadowKing"},{name:"shang-chi",carddefid:"ShangChi"},{name:"shanna",carddefid:"Shanna"},{name:"she-hulk",carddefid:"SheHulk"},{name:"shocker",carddefid:"Shocker"},{name:"shuri",carddefid:"Shuri"},{name:"silk",carddefid:"Silk"},{name:"silver sable",carddefid:"SilverSable"},{name:"silver samurai",carddefid:"SilverSamurai"},{name:"silver surfer",carddefid:"SilverSurfer"},{name:"sinister clone",carddefid:"SinisterClone"},{name:"snowguard",carddefid:"Snowguard"},{name:"snowguard bear",carddefid:"SnowguardBear"},{name:"snowguard hawk",carddefid:"SnowguardHawk"},{name:"snowguard wolf",carddefid:"SnowguardWolf"},{name:"soul stone",carddefid:"SoulStone"},{name:"space stone",carddefid:"SpaceStone"},{name:"spectrum",carddefid:"Spectrum"},{name:"spider-ham",carddefid:"SpiderHam"},{name:"spider-man",carddefid:"SpiderMan"},{name:"spider-man 2099",carddefid:"SpiderMan2099"},{name:"spider-woman",carddefid:"SpiderWoman"},{name:"squirrel",carddefid:"Squirrel"},{name:"squirrel girl",carddefid:"SquirrelGirl"},{name:"star-lord",carddefid:"Starlord"},{name:"stature",carddefid:"Stature"},{name:"stegron",carddefid:"Stegron"},{name:"storm",carddefid:"Storm"},{name:"strong guy",carddefid:"StrongGuy"},{name:"stryfe",carddefid:"Stryfe"},{name:"sunspot",carddefid:"Sunspot"},{name:"super-skrull",carddefid:"SuperSkrull"},{name:"surtur",carddefid:"Surtur"},{name:"swarm",carddefid:"Swarm"},{name:"sword master",carddefid:"SwordMaster"},{name:"symbiote",carddefid:"Symbiote"},{name:"taskmaster",carddefid:"Taskmaster"},{name:"thanos",carddefid:"Thanos"},{name:"the collector",carddefid:"TheCollector"},{name:"the hood",carddefid:"Hood"},{name:"the infinaut",carddefid:"Infinaut"},{name:"the living tribunal",carddefid:"LivingTribunal"},{name:"the phoenix force",carddefid:"ThePhoenixForce"},{name:"the thing",carddefid:"TheThing"},{name:"the void",carddefid:"TheVoid"},{name:"thor",carddefid:"Thor"},{name:"tiger spirit",carddefid:"TigerSpirit"},{name:"time stone",carddefid:"TimeStone"},{name:"titania",carddefid:"Titania"},{name:"toad",carddefid:"Toad"},{name:"typhoid mary",carddefid:"TyphoidMary"},{name:"uatu the watcher",carddefid:"Uatu"},{name:"ultron",carddefid:"Ultron"},{name:"uncle ben",carddefid:"UncleBen"},{name:"valkyrie",carddefid:"Valkyrie"},{name:"venom",carddefid:"Venom"},{name:"vibranium",carddefid:"Vibranium"},{name:"viper",carddefid:"Viper"},{name:"vision",carddefid:"Vision"},{name:"viv vision",carddefid:"Viv"},{name:"vulture",carddefid:"Vulture"},{name:"war machine",carddefid:"WarMachine"},{name:"warpath",carddefid:"Warpath"},{name:"wasp",carddefid:"Wasp"},{name:"wave",carddefid:"Wave"},{name:"white queen",carddefid:"WhiteQueen"},{name:"white tiger",carddefid:"WhiteTiger"},{name:"widow's bite",carddefid:"WidowsBite"},{name:"winter soldier",carddefid:"WinterSoldier"},{name:"witchfire",carddefid:"Witchfire"},{name:"wolfsbane",carddefid:"Wolfsbane"},{name:"wolverine",carddefid:"Wolverine"},{name:"wong",carddefid:"Wong"},{name:"x-23",carddefid:"X23"},{name:"yellowjacket",carddefid:"Yellowjacket"},{name:"yo-yo",carddefid:"YoYo"},{name:"yondu",carddefid:"Yondu"},{name:"zabu",carddefid:"Zabu"},{name:"zero",carddefid:"Zero"}],ype=(e,r)=>{const t=e.map(s=>{const p=wpe.find(v=>v.name.toLowerCase()===s.name.toLowerCase());return p?p.carddefid:s.name.replace(/[\s-]/g,"")}),n={Name:r,Cards:t.map(s=>({CardDefId:s}))},o=JSON.stringify(n);return bpe.encode(o)},xpe=e=>{let r=e.length,t;const n=[...e];for(;r!==0;)t=Math.floor(Math.random()*r),r--,[n[r],n[t]]=[n[t],n[r]];return n.slice(0,12)},Av=e=>e[Math.floor(Math.random()*e.length)],_pe=()=>Av(rpe),Ope=e=>{const r=Av(e),t=_pe(),n=Av(tpe);return`${r.name}'s ${t} ${n}`},Cpe=i.lazy(()=>lg(()=>import("./index-daec319d.js"),[])),kpe=i.lazy(()=>lg(()=>import("./index-074c85ee.js"),[])),Epe=()=>{const{t:e}=zt(),[r,t]=i.useState(""),[n,o]=i.useState(!1),[a,s]=i.useState([]),{collection:p,isLoading:v,needSync:g}=i.useContext(oa),x=()=>{const C=xpe(p);s(C),o(!0);const j=Ope(C);t(j)},E=()=>{const C=ype(a,r);navigator.clipboard.writeText(C).then(()=>{Oc.fire({title:e("home.copy.deckCopied"),icon:"success",allowOutsideClick:!0,allowEscapeKey:!0,timer:2e3})}).catch(j=>{console.error("Failed to copy deck code: ",j)})};return i.useEffect(()=>{!v&&!g&&x()},[v,g]),ae.jsx("div",{children:v?ae.jsx(Ma,{}):ae.jsxs(ae.Fragment,{children:[ae.jsx("div",{}),g?ae.jsx(i.Suspense,{fallback:ae.jsx(Ma,{}),children:ae.jsx(kpe,{})}):ae.jsxs("section",{className:"bg-gray-1",children:[ae.jsx("h3",{className:"text-sm defaultPageText p-8",children:e("home.intro")}),ae.jsxs("div",{className:"flex justify-around flex-col lg:flex-row items-center space-y-4",children:[ae.jsx("button",{type:"button",title:e("home.randomDeckBtn.title"),onClick:x,className:"defaultButton",children:e("home.randomDeckBtn.text")}),n&&ae.jsx("h2",{className:"defaultPageText",children:r}),n&&ae.jsx("button",{type:"button",title:e("home.copy.title"),onClick:E,className:"defaultButton",children:ae.jsx(a_,{className:"h-5 w-5"})})]}),n&&ae.jsx(i.Suspense,{fallback:ae.jsx(Ma,{}),children:ae.jsx(Cpe,{userDeck:a})})]})]})})},Rpe=()=>{const{t:e}=zt(),{isLoading:r}=i.useContext(oa);return ae.jsxs(ae.Fragment,{children:[ae.jsx("div",{}),r?ae.jsx(Ma,{}):ae.jsxs("section",{className:"flex flex-col justify-center my-[5%] bg-gray-1",children:[ae.jsx("div",{children:ae.jsx("h1",{className:"h1Title text-white mb-14",children:e("nav.link.about")})}),ae.jsxs("div",{className:"flex flex-col justify-center space-y-8 lg:space-y-0 lg:flex-row lg:space-x-80",children:[ae.jsxs("div",{className:"flex flex-col items-center justify-center space-y-4",children:[ae.jsx("img",{className:"rounded-[50px] max-w-[180px] md:rounded-[80px] md:max-w-[250px]",src:"https://github.com/lkotlarenko.png",alt:"Leonardo Kotlarenko",loading:"lazy"}),ae.jsx("p",{className:"defaultPageText",children:"Leonardo Kotlarenko"}),ae.jsx(Tn,{to:"https://linkedin.com/in/lkotlarenko",title:e("about.btnTitle.linkedInKotlarenko"),target:"_blank",rel:"noopener noreferrer",className:"navLink",children:ae.jsxs("button",{className:"defaultButton mt-2 flex items-center",type:"button",children:["LinkedIn",ae.jsx(Lp,{className:"h-5 w-5 pl-1"})]})})]}),ae.jsxs("div",{className:"flex flex-col items-center justify-center space-y-4",children:[ae.jsx("img",{className:"rounded-[50px] max-w-[180px] md:rounded-[80px] md:max-w-[250px]",src:"https://github.com/LeonardoKleimpaul.png",alt:"Leonardo Kleimpaul",loading:"lazy"}),ae.jsx("p",{className:"defaultPageText",children:"Leonardo Kleimpaul"}),ae.jsx(Tn,{to:"https://linkedin.com/in/leonardo-kleimpaul",title:e("about.btnTitle.linkedInKleimpaul"),target:"_blank",rel:"noopener noreferrer",className:"navLink",children:ae.jsxs("button",{className:"defaultButton mt-2 flex items-center",type:"button",children:["LinkedIn",ae.jsx(Lp,{className:"h-5 w-5 pl-1"})]})})]})]}),ae.jsxs("div",{className:"flex flex-col justify-center items-center space-y-6 px-3 mt-[20%] lg:mt-[5%]",children:[ae.jsx("img",{className:"max-w-[120px] rounded-2xl",src:"https://github.com/Cyggnus.png",alt:e("about.altImg.cyggnusLogo"),loading:"lazy"}),ae.jsx("p",{className:"defaultPageText",children:e("about.description.part1")}),ae.jsx("p",{className:"defaultPageText",children:e("about.description.part2")}),ae.jsx(Tn,{to:"https://github.com/Cyggnus",title:e("about.btnTitle.cyggnusGitHub"),target:"_blank",rel:"noopener noreferrer",className:"navLink",children:ae.jsxs("button",{className:"defaultButton mt-2 flex items-center",type:"button",children:["GitHub",ae.jsx(Lp,{className:"h-5 w-5 pl-1"})]})})]})]})]})},Ppe=()=>ae.jsx(Pk,{children:ae.jsx(ej,{children:ae.jsx(YM,{children:ae.jsxs(Po,{path:"/",element:ae.jsx(gpe,{}),children:[ae.jsx(Po,{index:!0,element:ae.jsx(Epe,{})}),ae.jsx(Po,{path:"profile",element:ae.jsx(T1e,{})}),ae.jsx(Po,{path:"sync",element:ae.jsx(Sk,{})}),ae.jsx(Po,{path:"help",element:ae.jsx(M1e,{})}),ae.jsx(Po,{path:"about",element:ae.jsx(Rpe,{})}),ae.jsx(Po,{path:"*",element:ae.jsx(mpe,{})})]})})})}),Spe=e=>{e&&typeof e=="function"&&lg(()=>import("./web-vitals-60d3425a.js"),[]).then(({getCLS:r,getFID:t,getFCP:n,getLCP:o,getTTFB:a})=>{r(e),t(e),n(e),o(e),a(e)})},Mpe={type:"logger",log(e){this.output("log",e)},warn(e){this.output("warn",e)},error(e){this.output("error",e)},output(e,r){console&&console[e]&&console[e].apply(console,r)}};class z2{constructor(r){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.init(r,t)}init(r){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.prefix=t.prefix||"i18next:",this.logger=r||Mpe,this.options=t,this.debug=t.debug}log(){for(var r=arguments.length,t=new Array(r),n=0;n{this.observers[n]=this.observers[n]||[],this.observers[n].push(t)}),this}off(r,t){if(this.observers[r]){if(!t){delete this.observers[r];return}this.observers[r]=this.observers[r].filter(n=>n!==t)}}emit(r){for(var t=arguments.length,n=new Array(t>1?t-1:0),o=1;o{s(...n)}),this.observers["*"]&&[].concat(this.observers["*"]).forEach(s=>{s.apply(s,[r,...n])})}}function ps(){let e,r;const t=new Promise((n,o)=>{e=n,r=o});return t.resolve=e,t.reject=r,t}function s4(e){return e==null?"":""+e}function jpe(e,r,t){e.forEach(n=>{r[n]&&(t[n]=r[n])})}function T7(e,r,t){function n(s){return s&&s.indexOf("###")>-1?s.replace(/###/g,"."):s}function o(){return!e||typeof e=="string"}const a=typeof r!="string"?[].concat(r):r.split(".");for(;a.length>1;){if(o())return{};const s=n(a.shift());!e[s]&&t&&(e[s]=new t),Object.prototype.hasOwnProperty.call(e,s)?e=e[s]:e={}}return o()?{}:{obj:e,k:n(a.shift())}}function c4(e,r,t){const{obj:n,k:o}=T7(e,r,Object);n[o]=t}function Tpe(e,r,t,n){const{obj:o,k:a}=T7(e,r,Object);o[a]=o[a]||[],n&&(o[a]=o[a].concat(t)),n||o[a].push(t)}function $2(e,r){const{obj:t,k:n}=T7(e,r);if(t)return t[n]}function Ipe(e,r,t){const n=$2(e,t);return n!==void 0?n:$2(r,t)}function Mk(e,r,t){for(const n in r)n!=="__proto__"&&n!=="constructor"&&(n in e?typeof e[n]=="string"||e[n]instanceof String||typeof r[n]=="string"||r[n]instanceof String?t&&(e[n]=r[n]):Mk(e[n],r[n],t):e[n]=r[n]);return e}function Ci(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}var Ape={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"};function Lpe(e){return typeof e=="string"?e.replace(/[&<>"'\/]/g,r=>Ape[r]):e}const zpe=[" ",",","?","!",";"];function $pe(e,r,t){r=r||"",t=t||"";const n=zpe.filter(s=>r.indexOf(s)<0&&t.indexOf(s)<0);if(n.length===0)return!0;const o=new RegExp(`(${n.map(s=>s==="?"?"\\?":s).join("|")})`);let a=!o.test(e);if(!a){const s=e.indexOf(t);s>0&&!o.test(e.substring(0,s))&&(a=!0)}return a}function F2(e,r){let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:".";if(!e)return;if(e[r])return e[r];const n=r.split(t);let o=e;for(let a=0;aa+s;)s++,p=n.slice(a,a+s).join(t),v=o[p];if(v===void 0)return;if(v===null)return null;if(r.endsWith(p)){if(typeof v=="string")return v;if(p&&typeof v[p]=="string")return v[p]}const g=n.slice(a+s).join(t);return g?F2(v,g,t):void 0}o=o[n[a]]}return o}function N2(e){return e&&e.indexOf("_")>0?e.replace("_","-"):e}class u4 extends Rg{constructor(r){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{ns:["translation"],defaultNS:"translation"};super(),this.data=r||{},this.options=t,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.options.ignoreJSONStructure===void 0&&(this.options.ignoreJSONStructure=!0)}addNamespaces(r){this.options.ns.indexOf(r)<0&&this.options.ns.push(r)}removeNamespaces(r){const t=this.options.ns.indexOf(r);t>-1&&this.options.ns.splice(t,1)}getResource(r,t,n){let o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};const a=o.keySeparator!==void 0?o.keySeparator:this.options.keySeparator,s=o.ignoreJSONStructure!==void 0?o.ignoreJSONStructure:this.options.ignoreJSONStructure;let p=[r,t];n&&typeof n!="string"&&(p=p.concat(n)),n&&typeof n=="string"&&(p=p.concat(a?n.split(a):n)),r.indexOf(".")>-1&&(p=r.split("."));const v=$2(this.data,p);return v||!s||typeof n!="string"?v:F2(this.data&&this.data[r]&&this.data[r][t],n,a)}addResource(r,t,n,o){let a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{silent:!1};const s=a.keySeparator!==void 0?a.keySeparator:this.options.keySeparator;let p=[r,t];n&&(p=p.concat(s?n.split(s):n)),r.indexOf(".")>-1&&(p=r.split("."),o=t,t=p[1]),this.addNamespaces(t),c4(this.data,p,o),a.silent||this.emit("added",r,t,n,o)}addResources(r,t,n){let o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{silent:!1};for(const a in n)(typeof n[a]=="string"||Object.prototype.toString.apply(n[a])==="[object Array]")&&this.addResource(r,t,a,n[a],{silent:!0});o.silent||this.emit("added",r,t,n)}addResourceBundle(r,t,n,o,a){let s=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{silent:!1},p=[r,t];r.indexOf(".")>-1&&(p=r.split("."),o=n,n=t,t=p[1]),this.addNamespaces(t);let v=$2(this.data,p)||{};o?Mk(v,n,a):v={...v,...n},c4(this.data,p,v),s.silent||this.emit("added",r,t,n)}removeResourceBundle(r,t){this.hasResourceBundle(r,t)&&delete this.data[r][t],this.removeNamespaces(t),this.emit("removed",r,t)}hasResourceBundle(r,t){return this.getResource(r,t)!==void 0}getResourceBundle(r,t){return t||(t=this.options.defaultNS),this.options.compatibilityAPI==="v1"?{...this.getResource(r,t)}:this.getResource(r,t)}getDataByLanguage(r){return this.data[r]}hasLanguageSomeTranslations(r){const t=this.getDataByLanguage(r);return!!(t&&Object.keys(t)||[]).find(o=>t[o]&&Object.keys(t[o]).length>0)}toJSON(){return this.data}}var jk={processors:{},addPostProcessor(e){this.processors[e.name]=e},handle(e,r,t,n,o){return e.forEach(a=>{this.processors[a]&&(r=this.processors[a].process(r,t,n,o))}),r}};const d4={};class D2 extends Rg{constructor(r){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};super(),jpe(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],r,this),this.options=t,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.logger=In.create("translator")}changeLanguage(r){r&&(this.language=r)}exists(r){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}};if(r==null)return!1;const n=this.resolve(r,t);return n&&n.res!==void 0}extractFromKey(r,t){let n=t.nsSeparator!==void 0?t.nsSeparator:this.options.nsSeparator;n===void 0&&(n=":");const o=t.keySeparator!==void 0?t.keySeparator:this.options.keySeparator;let a=t.ns||this.options.defaultNS||[];const s=n&&r.indexOf(n)>-1,p=!this.options.userDefinedKeySeparator&&!t.keySeparator&&!this.options.userDefinedNsSeparator&&!t.nsSeparator&&!$pe(r,n,o);if(s&&!p){const v=r.match(this.interpolator.nestingRegexp);if(v&&v.length>0)return{key:r,namespaces:a};const g=r.split(n);(n!==o||n===o&&this.options.ns.indexOf(g[0])>-1)&&(a=g.shift()),r=g.join(o)}return typeof a=="string"&&(a=[a]),{key:r,namespaces:a}}translate(r,t,n){if(typeof t!="object"&&this.options.overloadTranslationOptionHandler&&(t=this.options.overloadTranslationOptionHandler(arguments)),typeof t=="object"&&(t={...t}),t||(t={}),r==null)return"";Array.isArray(r)||(r=[String(r)]);const o=t.returnDetails!==void 0?t.returnDetails:this.options.returnDetails,a=t.keySeparator!==void 0?t.keySeparator:this.options.keySeparator,{key:s,namespaces:p}=this.extractFromKey(r[r.length-1],t),v=p[p.length-1],g=t.lng||this.language,x=t.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(g&&g.toLowerCase()==="cimode"){if(x){const l=t.nsSeparator||this.options.nsSeparator;return o?{res:`${v}${l}${s}`,usedKey:s,exactUsedKey:s,usedLng:g,usedNS:v}:`${v}${l}${s}`}return o?{res:s,usedKey:s,exactUsedKey:s,usedLng:g,usedNS:v}:s}const E=this.resolve(r,t);let C=E&&E.res;const j=E&&E.usedKey||s,T=E&&E.exactUsedKey||s,R=Object.prototype.toString.apply(C),S=["[object Number]","[object Function]","[object RegExp]"],w=t.joinArrays!==void 0?t.joinArrays:this.options.joinArrays,m=!this.i18nFormat||this.i18nFormat.handleAsObject;if(m&&C&&(typeof C!="string"&&typeof C!="boolean"&&typeof C!="number")&&S.indexOf(R)<0&&!(typeof w=="string"&&R==="[object Array]")){if(!t.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");const l=this.options.returnedObjectHandler?this.options.returnedObjectHandler(j,C,{...t,ns:p}):`key '${s} (${this.language})' returned an object instead of string.`;return o?(E.res=l,E):l}if(a){const l=R==="[object Array]",c=l?[]:{},u=l?T:j;for(const f in C)if(Object.prototype.hasOwnProperty.call(C,f)){const b=`${u}${a}${f}`;c[f]=this.translate(b,{...t,joinArrays:!1,ns:p}),c[f]===b&&(c[f]=C[f])}C=c}}else if(m&&typeof w=="string"&&R==="[object Array]")C=C.join(w),C&&(C=this.extendTranslation(C,r,t,n));else{let l=!1,c=!1;const u=t.count!==void 0&&typeof t.count!="string",f=D2.hasDefaultValue(t),b=u?this.pluralResolver.getSuffix(g,t.count,t):"",y=t.ordinal&&u?this.pluralResolver.getSuffix(g,t.count,{ordinal:!1}):"",O=t[`defaultValue${b}`]||t[`defaultValue${y}`]||t.defaultValue;!this.isValidLookup(C)&&f&&(l=!0,C=O),this.isValidLookup(C)||(c=!0,C=s);const z=(t.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&c?void 0:C,L=f&&O!==C&&this.options.updateMissing;if(c||l||L){if(this.logger.log(L?"updateKey":"missingKey",g,v,s,L?O:C),a){const J=this.resolve(s,{...t,keySeparator:!1});J&&J.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}let F=[];const V=this.languageUtils.getFallbackCodes(this.options.fallbackLng,t.lng||this.language);if(this.options.saveMissingTo==="fallback"&&V&&V[0])for(let J=0;J{const U=f&&K!==C?K:z;this.options.missingKeyHandler?this.options.missingKeyHandler(J,v,N,U,L,t):this.backendConnector&&this.backendConnector.saveMissing&&this.backendConnector.saveMissing(J,v,N,U,L,t),this.emit("missingKey",J,v,N,C)};this.options.saveMissing&&(this.options.saveMissingPlurals&&u?F.forEach(J=>{this.pluralResolver.getSuffixes(J,t).forEach(N=>{q([J],s+N,t[`defaultValue${N}`]||O)})}):q(F,s,O))}C=this.extendTranslation(C,r,t,E,n),c&&C===s&&this.options.appendNamespaceToMissingKey&&(C=`${v}:${s}`),(c||l)&&this.options.parseMissingKeyHandler&&(this.options.compatibilityAPI!=="v1"?C=this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${v}:${s}`:s,l?C:void 0):C=this.options.parseMissingKeyHandler(C))}return o?(E.res=C,E):C}extendTranslation(r,t,n,o,a){var s=this;if(this.i18nFormat&&this.i18nFormat.parse)r=this.i18nFormat.parse(r,{...this.options.interpolation.defaultVariables,...n},o.usedLng,o.usedNS,o.usedKey,{resolved:o});else if(!n.skipInterpolation){n.interpolation&&this.interpolator.init({...n,interpolation:{...this.options.interpolation,...n.interpolation}});const g=typeof r=="string"&&(n&&n.interpolation&&n.interpolation.skipOnVariables!==void 0?n.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);let x;if(g){const C=r.match(this.interpolator.nestingRegexp);x=C&&C.length}let E=n.replace&&typeof n.replace!="string"?n.replace:n;if(this.options.interpolation.defaultVariables&&(E={...this.options.interpolation.defaultVariables,...E}),r=this.interpolator.interpolate(r,E,n.lng||this.language,n),g){const C=r.match(this.interpolator.nestingRegexp),j=C&&C.length;x1&&arguments[1]!==void 0?arguments[1]:{},n,o,a,s,p;return typeof r=="string"&&(r=[r]),r.forEach(v=>{if(this.isValidLookup(n))return;const g=this.extractFromKey(v,t),x=g.key;o=x;let E=g.namespaces;this.options.fallbackNS&&(E=E.concat(this.options.fallbackNS));const C=t.count!==void 0&&typeof t.count!="string",j=C&&!t.ordinal&&t.count===0&&this.pluralResolver.shouldUseIntlApi(),T=t.context!==void 0&&(typeof t.context=="string"||typeof t.context=="number")&&t.context!=="",R=t.lngs?t.lngs:this.languageUtils.toResolveHierarchy(t.lng||this.language,t.fallbackLng);E.forEach(S=>{this.isValidLookup(n)||(p=S,!d4[`${R[0]}-${S}`]&&this.utils&&this.utils.hasLoadedNamespace&&!this.utils.hasLoadedNamespace(p)&&(d4[`${R[0]}-${S}`]=!0,this.logger.warn(`key "${o}" for languages "${R.join(", ")}" won't get resolved as namespace "${p}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),R.forEach(w=>{if(this.isValidLookup(n))return;s=w;const m=[x];if(this.i18nFormat&&this.i18nFormat.addLookupKeys)this.i18nFormat.addLookupKeys(m,x,w,S,t);else{let l;C&&(l=this.pluralResolver.getSuffix(w,t.count,t));const c=`${this.options.pluralSeparator}zero`,u=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(C&&(m.push(x+l),t.ordinal&&l.indexOf(u)===0&&m.push(x+l.replace(u,this.options.pluralSeparator)),j&&m.push(x+c)),T){const f=`${x}${this.options.contextSeparator}${t.context}`;m.push(f),C&&(m.push(f+l),t.ordinal&&l.indexOf(u)===0&&m.push(f+l.replace(u,this.options.pluralSeparator)),j&&m.push(f+c))}}let d;for(;d=m.pop();)this.isValidLookup(n)||(a=d,n=this.getResource(w,S,d,t))}))})}),{res:n,usedKey:o,exactUsedKey:a,usedLng:s,usedNS:p}}isValidLookup(r){return r!==void 0&&!(!this.options.returnNull&&r===null)&&!(!this.options.returnEmptyString&&r==="")}getResource(r,t,n){let o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};return this.i18nFormat&&this.i18nFormat.getResource?this.i18nFormat.getResource(r,t,n,o):this.resourceStore.getResource(r,t,n,o)}static hasDefaultValue(r){const t="defaultValue";for(const n in r)if(Object.prototype.hasOwnProperty.call(r,n)&&t===n.substring(0,t.length)&&r[n]!==void 0)return!0;return!1}}function cm(e){return e.charAt(0).toUpperCase()+e.slice(1)}class f4{constructor(r){this.options=r,this.supportedLngs=this.options.supportedLngs||!1,this.logger=In.create("languageUtils")}getScriptPartFromCode(r){if(r=N2(r),!r||r.indexOf("-")<0)return null;const t=r.split("-");return t.length===2||(t.pop(),t[t.length-1].toLowerCase()==="x")?null:this.formatLanguageCode(t.join("-"))}getLanguagePartFromCode(r){if(r=N2(r),!r||r.indexOf("-")<0)return r;const t=r.split("-");return this.formatLanguageCode(t[0])}formatLanguageCode(r){if(typeof r=="string"&&r.indexOf("-")>-1){const t=["hans","hant","latn","cyrl","cans","mong","arab"];let n=r.split("-");return this.options.lowerCaseLng?n=n.map(o=>o.toLowerCase()):n.length===2?(n[0]=n[0].toLowerCase(),n[1]=n[1].toUpperCase(),t.indexOf(n[1].toLowerCase())>-1&&(n[1]=cm(n[1].toLowerCase()))):n.length===3&&(n[0]=n[0].toLowerCase(),n[1].length===2&&(n[1]=n[1].toUpperCase()),n[0]!=="sgn"&&n[2].length===2&&(n[2]=n[2].toUpperCase()),t.indexOf(n[1].toLowerCase())>-1&&(n[1]=cm(n[1].toLowerCase())),t.indexOf(n[2].toLowerCase())>-1&&(n[2]=cm(n[2].toLowerCase()))),n.join("-")}return this.options.cleanCode||this.options.lowerCaseLng?r.toLowerCase():r}isSupportedCode(r){return(this.options.load==="languageOnly"||this.options.nonExplicitSupportedLngs)&&(r=this.getLanguagePartFromCode(r)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(r)>-1}getBestMatchFromCodes(r){if(!r)return null;let t;return r.forEach(n=>{if(t)return;const o=this.formatLanguageCode(n);(!this.options.supportedLngs||this.isSupportedCode(o))&&(t=o)}),!t&&this.options.supportedLngs&&r.forEach(n=>{if(t)return;const o=this.getLanguagePartFromCode(n);if(this.isSupportedCode(o))return t=o;t=this.options.supportedLngs.find(a=>{if(a===o)return a;if(!(a.indexOf("-")<0&&o.indexOf("-")<0)&&a.indexOf(o)===0)return a})}),t||(t=this.getFallbackCodes(this.options.fallbackLng)[0]),t}getFallbackCodes(r,t){if(!r)return[];if(typeof r=="function"&&(r=r(t)),typeof r=="string"&&(r=[r]),Object.prototype.toString.apply(r)==="[object Array]")return r;if(!t)return r.default||[];let n=r[t];return n||(n=r[this.getScriptPartFromCode(t)]),n||(n=r[this.formatLanguageCode(t)]),n||(n=r[this.getLanguagePartFromCode(t)]),n||(n=r.default),n||[]}toResolveHierarchy(r,t){const n=this.getFallbackCodes(t||this.options.fallbackLng||[],r),o=[],a=s=>{s&&(this.isSupportedCode(s)?o.push(s):this.logger.warn(`rejecting language code not found in supportedLngs: ${s}`))};return typeof r=="string"&&(r.indexOf("-")>-1||r.indexOf("_")>-1)?(this.options.load!=="languageOnly"&&a(this.formatLanguageCode(r)),this.options.load!=="languageOnly"&&this.options.load!=="currentOnly"&&a(this.getScriptPartFromCode(r)),this.options.load!=="currentOnly"&&a(this.getLanguagePartFromCode(r))):typeof r=="string"&&a(this.formatLanguageCode(r)),n.forEach(s=>{o.indexOf(s)<0&&a(this.formatLanguageCode(s))}),o}}let Fpe=[{lngs:["ach","ak","am","arn","br","fil","gun","ln","mfe","mg","mi","oc","pt","pt-BR","tg","tl","ti","tr","uz","wa"],nr:[1,2],fc:1},{lngs:["af","an","ast","az","bg","bn","ca","da","de","dev","el","en","eo","es","et","eu","fi","fo","fur","fy","gl","gu","ha","hi","hu","hy","ia","it","kk","kn","ku","lb","mai","ml","mn","mr","nah","nap","nb","ne","nl","nn","no","nso","pa","pap","pms","ps","pt-PT","rm","sco","se","si","so","son","sq","sv","sw","ta","te","tk","ur","yo"],nr:[1,2],fc:2},{lngs:["ay","bo","cgg","fa","ht","id","ja","jbo","ka","km","ko","ky","lo","ms","sah","su","th","tt","ug","vi","wo","zh"],nr:[1],fc:3},{lngs:["be","bs","cnr","dz","hr","ru","sr","uk"],nr:[1,2,5],fc:4},{lngs:["ar"],nr:[0,1,2,3,11,100],fc:5},{lngs:["cs","sk"],nr:[1,2,5],fc:6},{lngs:["csb","pl"],nr:[1,2,5],fc:7},{lngs:["cy"],nr:[1,2,3,8],fc:8},{lngs:["fr"],nr:[1,2],fc:9},{lngs:["ga"],nr:[1,2,3,7,11],fc:10},{lngs:["gd"],nr:[1,2,3,20],fc:11},{lngs:["is"],nr:[1,2],fc:12},{lngs:["jv"],nr:[0,1],fc:13},{lngs:["kw"],nr:[1,2,3,4],fc:14},{lngs:["lt"],nr:[1,2,10],fc:15},{lngs:["lv"],nr:[1,2,0],fc:16},{lngs:["mk"],nr:[1,2],fc:17},{lngs:["mnk"],nr:[0,1,2],fc:18},{lngs:["mt"],nr:[1,2,11,20],fc:19},{lngs:["or"],nr:[2,1],fc:2},{lngs:["ro"],nr:[1,2,20],fc:20},{lngs:["sl"],nr:[5,1,2,3],fc:21},{lngs:["he","iw"],nr:[1,2,20,21],fc:22}],Npe={1:function(e){return+(e>1)},2:function(e){return+(e!=1)},3:function(e){return 0},4:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2},5:function(e){return e==0?0:e==1?1:e==2?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5},6:function(e){return e==1?0:e>=2&&e<=4?1:2},7:function(e){return e==1?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2},8:function(e){return e==1?0:e==2?1:e!=8&&e!=11?2:3},9:function(e){return+(e>=2)},10:function(e){return e==1?0:e==2?1:e<7?2:e<11?3:4},11:function(e){return e==1||e==11?0:e==2||e==12?1:e>2&&e<20?2:3},12:function(e){return+(e%10!=1||e%100==11)},13:function(e){return+(e!==0)},14:function(e){return e==1?0:e==2?1:e==3?2:3},15:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&(e%100<10||e%100>=20)?1:2},16:function(e){return e%10==1&&e%100!=11?0:e!==0?1:2},17:function(e){return e==1||e%10==1&&e%100!=11?0:1},18:function(e){return e==0?0:e==1?1:2},19:function(e){return e==1?0:e==0||e%100>1&&e%100<11?1:e%100>10&&e%100<20?2:3},20:function(e){return e==1?0:e==0||e%100>0&&e%100<20?1:2},21:function(e){return e%100==1?1:e%100==2?2:e%100==3||e%100==4?3:0},22:function(e){return e==1?0:e==2?1:(e<0||e>10)&&e%10==0?2:3}};const Dpe=["v1","v2","v3"],Bpe=["v4"],p4={zero:0,one:1,two:2,few:3,many:4,other:5};function Vpe(){const e={};return Fpe.forEach(r=>{r.lngs.forEach(t=>{e[t]={numbers:r.nr,plurals:Npe[r.fc]}})}),e}class Hpe{constructor(r){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.languageUtils=r,this.options=t,this.logger=In.create("pluralResolver"),(!this.options.compatibilityJSON||Bpe.includes(this.options.compatibilityJSON))&&(typeof Intl>"u"||!Intl.PluralRules)&&(this.options.compatibilityJSON="v3",this.logger.error("Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.")),this.rules=Vpe()}addRule(r,t){this.rules[r]=t}getRule(r){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(this.shouldUseIntlApi())try{return new Intl.PluralRules(N2(r),{type:t.ordinal?"ordinal":"cardinal"})}catch{return}return this.rules[r]||this.rules[this.languageUtils.getLanguagePartFromCode(r)]}needsPlural(r){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const n=this.getRule(r,t);return this.shouldUseIntlApi()?n&&n.resolvedOptions().pluralCategories.length>1:n&&n.numbers.length>1}getPluralFormsOfKey(r,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return this.getSuffixes(r,n).map(o=>`${t}${o}`)}getSuffixes(r){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const n=this.getRule(r,t);return n?this.shouldUseIntlApi()?n.resolvedOptions().pluralCategories.sort((o,a)=>p4[o]-p4[a]).map(o=>`${this.options.prepend}${t.ordinal?`ordinal${this.options.prepend}`:""}${o}`):n.numbers.map(o=>this.getSuffix(r,o,t)):[]}getSuffix(r,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};const o=this.getRule(r,n);return o?this.shouldUseIntlApi()?`${this.options.prepend}${n.ordinal?`ordinal${this.options.prepend}`:""}${o.select(t)}`:this.getSuffixRetroCompatible(o,t):(this.logger.warn(`no plural rule found for: ${r}`),"")}getSuffixRetroCompatible(r,t){const n=r.noAbs?r.plurals(t):r.plurals(Math.abs(t));let o=r.numbers[n];this.options.simplifyPluralSuffix&&r.numbers.length===2&&r.numbers[0]===1&&(o===2?o="plural":o===1&&(o=""));const a=()=>this.options.prepend&&o.toString()?this.options.prepend+o.toString():o.toString();return this.options.compatibilityJSON==="v1"?o===1?"":typeof o=="number"?`_plural_${o.toString()}`:a():this.options.compatibilityJSON==="v2"||this.options.simplifyPluralSuffix&&r.numbers.length===2&&r.numbers[0]===1?a():this.options.prepend&&n.toString()?this.options.prepend+n.toString():n.toString()}shouldUseIntlApi(){return!Dpe.includes(this.options.compatibilityJSON)}}function g4(e,r,t){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:".",o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,a=Ipe(e,r,t);return!a&&o&&typeof t=="string"&&(a=F2(e,t,n),a===void 0&&(a=F2(r,t,n))),a}class Wpe{constructor(){let r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.logger=In.create("interpolator"),this.options=r,this.format=r.interpolation&&r.interpolation.format||(t=>t),this.init(r)}init(){let r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};r.interpolation||(r.interpolation={escapeValue:!0});const t=r.interpolation;this.escape=t.escape!==void 0?t.escape:Lpe,this.escapeValue=t.escapeValue!==void 0?t.escapeValue:!0,this.useRawValueToEscape=t.useRawValueToEscape!==void 0?t.useRawValueToEscape:!1,this.prefix=t.prefix?Ci(t.prefix):t.prefixEscaped||"{{",this.suffix=t.suffix?Ci(t.suffix):t.suffixEscaped||"}}",this.formatSeparator=t.formatSeparator?t.formatSeparator:t.formatSeparator||",",this.unescapePrefix=t.unescapeSuffix?"":t.unescapePrefix||"-",this.unescapeSuffix=this.unescapePrefix?"":t.unescapeSuffix||"",this.nestingPrefix=t.nestingPrefix?Ci(t.nestingPrefix):t.nestingPrefixEscaped||Ci("$t("),this.nestingSuffix=t.nestingSuffix?Ci(t.nestingSuffix):t.nestingSuffixEscaped||Ci(")"),this.nestingOptionsSeparator=t.nestingOptionsSeparator?t.nestingOptionsSeparator:t.nestingOptionsSeparator||",",this.maxReplaces=t.maxReplaces?t.maxReplaces:1e3,this.alwaysFormat=t.alwaysFormat!==void 0?t.alwaysFormat:!1,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){const r=`${this.prefix}(.+?)${this.suffix}`;this.regexp=new RegExp(r,"g");const t=`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`;this.regexpUnescape=new RegExp(t,"g");const n=`${this.nestingPrefix}(.+?)${this.nestingSuffix}`;this.nestingRegexp=new RegExp(n,"g")}interpolate(r,t,n,o){let a,s,p;const v=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{};function g(T){return T.replace(/\$/g,"$$$$")}const x=T=>{if(T.indexOf(this.formatSeparator)<0){const m=g4(t,v,T,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(m,void 0,n,{...o,...t,interpolationkey:T}):m}const R=T.split(this.formatSeparator),S=R.shift().trim(),w=R.join(this.formatSeparator).trim();return this.format(g4(t,v,S,this.options.keySeparator,this.options.ignoreJSONStructure),w,n,{...o,...t,interpolationkey:S})};this.resetRegExp();const E=o&&o.missingInterpolationHandler||this.options.missingInterpolationHandler,C=o&&o.interpolation&&o.interpolation.skipOnVariables!==void 0?o.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:T=>g(T)},{regex:this.regexp,safeValue:T=>this.escapeValue?g(this.escape(T)):g(T)}].forEach(T=>{for(p=0;a=T.regex.exec(r);){const R=a[1].trim();if(s=x(R),s===void 0)if(typeof E=="function"){const w=E(r,a,o);s=typeof w=="string"?w:""}else if(o&&Object.prototype.hasOwnProperty.call(o,R))s="";else if(C){s=a[0];continue}else this.logger.warn(`missed to pass in variable ${R} for interpolating ${r}`),s="";else typeof s!="string"&&!this.useRawValueToEscape&&(s=s4(s));const S=T.safeValue(s);if(r=r.replace(a[0],S),C?(T.regex.lastIndex+=s.length,T.regex.lastIndex-=a[0].length):T.regex.lastIndex=0,p++,p>=this.maxReplaces)break}}),r}nest(r,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o,a,s;function p(v,g){const x=this.nestingOptionsSeparator;if(v.indexOf(x)<0)return v;const E=v.split(new RegExp(`${x}[ ]*{`));let C=`{${E[1]}`;v=E[0],C=this.interpolate(C,s);const j=C.match(/'/g),T=C.match(/"/g);(j&&j.length%2===0&&!T||T.length%2!==0)&&(C=C.replace(/'/g,'"'));try{s=JSON.parse(C),g&&(s={...g,...s})}catch(R){return this.logger.warn(`failed parsing options string in nesting for key ${v}`,R),`${v}${x}${C}`}return delete s.defaultValue,v}for(;o=this.nestingRegexp.exec(r);){let v=[];s={...n},s=s.replace&&typeof s.replace!="string"?s.replace:s,s.applyPostProcessor=!1,delete s.defaultValue;let g=!1;if(o[0].indexOf(this.formatSeparator)!==-1&&!/{.*}/.test(o[1])){const x=o[1].split(this.formatSeparator).map(E=>E.trim());o[1]=x.shift(),v=x,g=!0}if(a=t(p.call(this,o[1].trim(),s),s),a&&o[0]===r&&typeof a!="string")return a;typeof a!="string"&&(a=s4(a)),a||(this.logger.warn(`missed to resolve ${o[1]} for nesting ${r}`),a=""),g&&(a=v.reduce((x,E)=>this.format(x,E,n.lng,{...n,interpolationkey:o[1].trim()}),a.trim())),r=r.replace(o[0],a),this.regexp.lastIndex=0}return r}}function Upe(e){let r=e.toLowerCase().trim();const t={};if(e.indexOf("(")>-1){const n=e.split("(");r=n[0].toLowerCase().trim();const o=n[1].substring(0,n[1].length-1);r==="currency"&&o.indexOf(":")<0?t.currency||(t.currency=o.trim()):r==="relativetime"&&o.indexOf(":")<0?t.range||(t.range=o.trim()):o.split(";").forEach(s=>{if(!s)return;const[p,...v]=s.split(":"),g=v.join(":").trim().replace(/^'+|'+$/g,"");t[p.trim()]||(t[p.trim()]=g),g==="false"&&(t[p.trim()]=!1),g==="true"&&(t[p.trim()]=!0),isNaN(g)||(t[p.trim()]=parseInt(g,10))})}return{formatName:r,formatOptions:t}}function ki(e){const r={};return function(n,o,a){const s=o+JSON.stringify(a);let p=r[s];return p||(p=e(N2(o),a),r[s]=p),p(n)}}class qpe{constructor(){let r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.logger=In.create("formatter"),this.options=r,this.formats={number:ki((t,n)=>{const o=new Intl.NumberFormat(t,{...n});return a=>o.format(a)}),currency:ki((t,n)=>{const o=new Intl.NumberFormat(t,{...n,style:"currency"});return a=>o.format(a)}),datetime:ki((t,n)=>{const o=new Intl.DateTimeFormat(t,{...n});return a=>o.format(a)}),relativetime:ki((t,n)=>{const o=new Intl.RelativeTimeFormat(t,{...n});return a=>o.format(a,n.range||"day")}),list:ki((t,n)=>{const o=new Intl.ListFormat(t,{...n});return a=>o.format(a)})},this.init(r)}init(r){const n=(arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}}).interpolation;this.formatSeparator=n.formatSeparator?n.formatSeparator:n.formatSeparator||","}add(r,t){this.formats[r.toLowerCase().trim()]=t}addCached(r,t){this.formats[r.toLowerCase().trim()]=ki(t)}format(r,t,n){let o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};return t.split(this.formatSeparator).reduce((p,v)=>{const{formatName:g,formatOptions:x}=Upe(v);if(this.formats[g]){let E=p;try{const C=o&&o.formatParams&&o.formatParams[o.interpolationkey]||{},j=C.locale||C.lng||o.locale||o.lng||n;E=this.formats[g](p,j,{...x,...o,...C})}catch(C){this.logger.warn(C)}return E}else this.logger.warn(`there was no format function for ${g}`);return p},r)}}function Gpe(e,r){e.pending[r]!==void 0&&(delete e.pending[r],e.pendingCount--)}class Kpe extends Rg{constructor(r,t,n){let o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};super(),this.backend=r,this.store=t,this.services=n,this.languageUtils=n.languageUtils,this.options=o,this.logger=In.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=o.maxParallelReads||10,this.readingCalls=0,this.maxRetries=o.maxRetries>=0?o.maxRetries:5,this.retryTimeout=o.retryTimeout>=1?o.retryTimeout:350,this.state={},this.queue=[],this.backend&&this.backend.init&&this.backend.init(n,o.backend,o)}queueLoad(r,t,n,o){const a={},s={},p={},v={};return r.forEach(g=>{let x=!0;t.forEach(E=>{const C=`${g}|${E}`;!n.reload&&this.store.hasResourceBundle(g,E)?this.state[C]=2:this.state[C]<0||(this.state[C]===1?s[C]===void 0&&(s[C]=!0):(this.state[C]=1,x=!1,s[C]===void 0&&(s[C]=!0),a[C]===void 0&&(a[C]=!0),v[E]===void 0&&(v[E]=!0)))}),x||(p[g]=!0)}),(Object.keys(a).length||Object.keys(s).length)&&this.queue.push({pending:s,pendingCount:Object.keys(s).length,loaded:{},errors:[],callback:o}),{toLoad:Object.keys(a),pending:Object.keys(s),toLoadLanguages:Object.keys(p),toLoadNamespaces:Object.keys(v)}}loaded(r,t,n){const o=r.split("|"),a=o[0],s=o[1];t&&this.emit("failedLoading",a,s,t),n&&this.store.addResourceBundle(a,s,n),this.state[r]=t?-1:2;const p={};this.queue.forEach(v=>{Tpe(v.loaded,[a],s),Gpe(v,r),t&&v.errors.push(t),v.pendingCount===0&&!v.done&&(Object.keys(v.loaded).forEach(g=>{p[g]||(p[g]={});const x=v.loaded[g];x.length&&x.forEach(E=>{p[g][E]===void 0&&(p[g][E]=!0)})}),v.done=!0,v.errors.length?v.callback(v.errors):v.callback())}),this.emit("loaded",p),this.queue=this.queue.filter(v=>!v.done)}read(r,t,n){let o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:this.retryTimeout,s=arguments.length>5?arguments[5]:void 0;if(!r.length)return s(null,{});if(this.readingCalls>=this.maxParallelReads){this.waitingReads.push({lng:r,ns:t,fcName:n,tried:o,wait:a,callback:s});return}this.readingCalls++;const p=(g,x)=>{if(this.readingCalls--,this.waitingReads.length>0){const E=this.waitingReads.shift();this.read(E.lng,E.ns,E.fcName,E.tried,E.wait,E.callback)}if(g&&x&&o{this.read.call(this,r,t,n,o+1,a*2,s)},a);return}s(g,x)},v=this.backend[n].bind(this.backend);if(v.length===2){try{const g=v(r,t);g&&typeof g.then=="function"?g.then(x=>p(null,x)).catch(p):p(null,g)}catch(g){p(g)}return}return v(r,t,p)}prepareLoading(r,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=arguments.length>3?arguments[3]:void 0;if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),o&&o();typeof r=="string"&&(r=this.languageUtils.toResolveHierarchy(r)),typeof t=="string"&&(t=[t]);const a=this.queueLoad(r,t,n,o);if(!a.toLoad.length)return a.pending.length||o(),null;a.toLoad.forEach(s=>{this.loadOne(s)})}load(r,t,n){this.prepareLoading(r,t,{},n)}reload(r,t,n){this.prepareLoading(r,t,{reload:!0},n)}loadOne(r){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";const n=r.split("|"),o=n[0],a=n[1];this.read(o,a,"read",void 0,void 0,(s,p)=>{s&&this.logger.warn(`${t}loading namespace ${a} for language ${o} failed`,s),!s&&p&&this.logger.log(`${t}loaded namespace ${a} for language ${o}`,p),this.loaded(r,s,p)})}saveMissing(r,t,n,o,a){let s=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{},p=arguments.length>6&&arguments[6]!==void 0?arguments[6]:()=>{};if(this.services.utils&&this.services.utils.hasLoadedNamespace&&!this.services.utils.hasLoadedNamespace(t)){this.logger.warn(`did not save key "${n}" as the namespace "${t}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");return}if(!(n==null||n==="")){if(this.backend&&this.backend.create){const v={...s,isUpdate:a},g=this.backend.create.bind(this.backend);if(g.length<6)try{let x;g.length===5?x=g(r,t,n,o,v):x=g(r,t,n,o),x&&typeof x.then=="function"?x.then(E=>p(null,E)).catch(p):p(null,x)}catch(x){p(x)}else g(r,t,n,o,p,v)}!r||!r[0]||this.store.addResource(r[0],t,n,o)}}}function h4(){return{debug:!1,initImmediate:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:function(r){let t={};if(typeof r[1]=="object"&&(t=r[1]),typeof r[1]=="string"&&(t.defaultValue=r[1]),typeof r[2]=="string"&&(t.tDescription=r[2]),typeof r[2]=="object"||typeof r[3]=="object"){const n=r[3]||r[2];Object.keys(n).forEach(o=>{t[o]=n[o]})}return t},interpolation:{escapeValue:!0,format:(e,r,t,n)=>e,prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0}}}function m4(e){return typeof e.ns=="string"&&(e.ns=[e.ns]),typeof e.fallbackLng=="string"&&(e.fallbackLng=[e.fallbackLng]),typeof e.fallbackNS=="string"&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&e.supportedLngs.indexOf("cimode")<0&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),e}function u0(){}function Ype(e){Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach(t=>{typeof e[t]=="function"&&(e[t]=e[t].bind(e))})}class Cc extends Rg{constructor(){let r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;if(super(),this.options=m4(r),this.services={},this.logger=In,this.modules={external:[]},Ype(this),t&&!this.isInitialized&&!r.isClone){if(!this.options.initImmediate)return this.init(r,t),this;setTimeout(()=>{this.init(r,t)},0)}}init(){var r=this;let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0;typeof t=="function"&&(n=t,t={}),!t.defaultNS&&t.defaultNS!==!1&&t.ns&&(typeof t.ns=="string"?t.defaultNS=t.ns:t.ns.indexOf("translation")<0&&(t.defaultNS=t.ns[0]));const o=h4();this.options={...o,...this.options,...m4(t)},this.options.compatibilityAPI!=="v1"&&(this.options.interpolation={...o.interpolation,...this.options.interpolation}),t.keySeparator!==void 0&&(this.options.userDefinedKeySeparator=t.keySeparator),t.nsSeparator!==void 0&&(this.options.userDefinedNsSeparator=t.nsSeparator);function a(x){return x?typeof x=="function"?new x:x:null}if(!this.options.isClone){this.modules.logger?In.init(a(this.modules.logger),this.options):In.init(null,this.options);let x;this.modules.formatter?x=this.modules.formatter:typeof Intl<"u"&&(x=qpe);const E=new f4(this.options);this.store=new u4(this.options.resources,this.options);const C=this.services;C.logger=In,C.resourceStore=this.store,C.languageUtils=E,C.pluralResolver=new Hpe(E,{prepend:this.options.pluralSeparator,compatibilityJSON:this.options.compatibilityJSON,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),x&&(!this.options.interpolation.format||this.options.interpolation.format===o.interpolation.format)&&(C.formatter=a(x),C.formatter.init(C,this.options),this.options.interpolation.format=C.formatter.format.bind(C.formatter)),C.interpolator=new Wpe(this.options),C.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},C.backendConnector=new Kpe(a(this.modules.backend),C.resourceStore,C,this.options),C.backendConnector.on("*",function(j){for(var T=arguments.length,R=new Array(T>1?T-1:0),S=1;S1?T-1:0),S=1;S{j.init&&j.init(this)})}if(this.format=this.options.interpolation.format,n||(n=u0),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){const x=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);x.length>0&&x[0]!=="dev"&&(this.options.lng=x[0])}!this.services.languageDetector&&!this.options.lng&&this.logger.warn("init: no languageDetector is used and no lng is defined"),["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach(x=>{this[x]=function(){return r.store[x](...arguments)}}),["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach(x=>{this[x]=function(){return r.store[x](...arguments),r}});const v=ps(),g=()=>{const x=(E,C)=>{this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn("init: i18next is already initialized. You should call init just once!"),this.isInitialized=!0,this.options.isClone||this.logger.log("initialized",this.options),this.emit("initialized",this.options),v.resolve(C),n(E,C)};if(this.languages&&this.options.compatibilityAPI!=="v1"&&!this.isInitialized)return x(null,this.t.bind(this));this.changeLanguage(this.options.lng,x)};return this.options.resources||!this.options.initImmediate?g():setTimeout(g,0),v}loadResources(r){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:u0;const o=typeof r=="string"?r:this.language;if(typeof r=="function"&&(n=r),!this.options.resources||this.options.partialBundledLanguages){if(o&&o.toLowerCase()==="cimode")return n();const a=[],s=p=>{if(!p)return;this.services.languageUtils.toResolveHierarchy(p).forEach(g=>{a.indexOf(g)<0&&a.push(g)})};o?s(o):this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach(v=>s(v)),this.options.preload&&this.options.preload.forEach(p=>s(p)),this.services.backendConnector.load(a,this.options.ns,p=>{!p&&!this.resolvedLanguage&&this.language&&this.setResolvedLanguage(this.language),n(p)})}else n(null)}reloadResources(r,t,n){const o=ps();return r||(r=this.languages),t||(t=this.options.ns),n||(n=u0),this.services.backendConnector.reload(r,t,a=>{o.resolve(),n(a)}),o}use(r){if(!r)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!r.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return r.type==="backend"&&(this.modules.backend=r),(r.type==="logger"||r.log&&r.warn&&r.error)&&(this.modules.logger=r),r.type==="languageDetector"&&(this.modules.languageDetector=r),r.type==="i18nFormat"&&(this.modules.i18nFormat=r),r.type==="postProcessor"&&jk.addPostProcessor(r),r.type==="formatter"&&(this.modules.formatter=r),r.type==="3rdParty"&&this.modules.external.push(r),this}setResolvedLanguage(r){if(!(!r||!this.languages)&&!(["cimode","dev"].indexOf(r)>-1))for(let t=0;t-1)&&this.store.hasLanguageSomeTranslations(n)){this.resolvedLanguage=n;break}}}changeLanguage(r,t){var n=this;this.isLanguageChangingTo=r;const o=ps();this.emit("languageChanging",r);const a=v=>{this.language=v,this.languages=this.services.languageUtils.toResolveHierarchy(v),this.resolvedLanguage=void 0,this.setResolvedLanguage(v)},s=(v,g)=>{g?(a(g),this.translator.changeLanguage(g),this.isLanguageChangingTo=void 0,this.emit("languageChanged",g),this.logger.log("languageChanged",g)):this.isLanguageChangingTo=void 0,o.resolve(function(){return n.t(...arguments)}),t&&t(v,function(){return n.t(...arguments)})},p=v=>{!r&&!v&&this.services.languageDetector&&(v=[]);const g=typeof v=="string"?v:this.services.languageUtils.getBestMatchFromCodes(v);g&&(this.language||a(g),this.translator.language||this.translator.changeLanguage(g),this.services.languageDetector&&this.services.languageDetector.cacheUserLanguage&&this.services.languageDetector.cacheUserLanguage(g)),this.loadResources(g,x=>{s(x,g)})};return!r&&this.services.languageDetector&&!this.services.languageDetector.async?p(this.services.languageDetector.detect()):!r&&this.services.languageDetector&&this.services.languageDetector.async?this.services.languageDetector.detect.length===0?this.services.languageDetector.detect().then(p):this.services.languageDetector.detect(p):p(r),o}getFixedT(r,t,n){var o=this;const a=function(s,p){let v;if(typeof p!="object"){for(var g=arguments.length,x=new Array(g>2?g-2:0),E=2;E`${v.keyPrefix}${C}${T}`):j=v.keyPrefix?`${v.keyPrefix}${C}${s}`:s,o.t(j,v)};return typeof r=="string"?a.lng=r:a.lngs=r,a.ns=t,a.keyPrefix=n,a}t(){return this.translator&&this.translator.translate(...arguments)}exists(){return this.translator&&this.translator.exists(...arguments)}setDefaultNamespace(r){this.options.defaultNS=r}hasLoadedNamespace(r){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;const n=t.lng||this.resolvedLanguage||this.languages[0],o=this.options?this.options.fallbackLng:!1,a=this.languages[this.languages.length-1];if(n.toLowerCase()==="cimode")return!0;const s=(p,v)=>{const g=this.services.backendConnector.state[`${p}|${v}`];return g===-1||g===2};if(t.precheck){const p=t.precheck(this,s);if(p!==void 0)return p}return!!(this.hasResourceBundle(n,r)||!this.services.backendConnector.backend||this.options.resources&&!this.options.partialBundledLanguages||s(n,r)&&(!o||s(a,r)))}loadNamespaces(r,t){const n=ps();return this.options.ns?(typeof r=="string"&&(r=[r]),r.forEach(o=>{this.options.ns.indexOf(o)<0&&this.options.ns.push(o)}),this.loadResources(o=>{n.resolve(),t&&t(o)}),n):(t&&t(),Promise.resolve())}loadLanguages(r,t){const n=ps();typeof r=="string"&&(r=[r]);const o=this.options.preload||[],a=r.filter(s=>o.indexOf(s)<0);return a.length?(this.options.preload=o.concat(a),this.loadResources(s=>{n.resolve(),t&&t(s)}),n):(t&&t(),Promise.resolve())}dir(r){if(r||(r=this.resolvedLanguage||(this.languages&&this.languages.length>0?this.languages[0]:this.language)),!r)return"rtl";const t=["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"],n=this.services&&this.services.languageUtils||new f4(h4());return t.indexOf(n.getLanguagePartFromCode(r))>-1||r.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}static createInstance(){let r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;return new Cc(r,t)}cloneInstance(){let r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:u0;const n=r.forkResourceStore;n&&delete r.forkResourceStore;const o={...this.options,...r,isClone:!0},a=new Cc(o);return(r.debug!==void 0||r.prefix!==void 0)&&(a.logger=a.logger.clone(r)),["store","services","language"].forEach(p=>{a[p]=this[p]}),a.services={...this.services},a.services.utils={hasLoadedNamespace:a.hasLoadedNamespace.bind(a)},n&&(a.store=new u4(this.store.data,o),a.services.resourceStore=a.store),a.translator=new D2(a.services,o),a.translator.on("*",function(p){for(var v=arguments.length,g=new Array(v>1?v-1:0),x=1;x0){var p=o.maxAge-0;if(Number.isNaN(p))throw new Error("maxAge should be a Number");s+="; Max-Age=".concat(Math.floor(p))}if(o.domain){if(!b4.test(o.domain))throw new TypeError("option domain is invalid");s+="; Domain=".concat(o.domain)}if(o.path){if(!b4.test(o.path))throw new TypeError("option path is invalid");s+="; Path=".concat(o.path)}if(o.expires){if(typeof o.expires.toUTCString!="function")throw new TypeError("option expires is invalid");s+="; Expires=".concat(o.expires.toUTCString())}if(o.httpOnly&&(s+="; HttpOnly"),o.secure&&(s+="; Secure"),o.sameSite){var v=typeof o.sameSite=="string"?o.sameSite.toLowerCase():o.sameSite;switch(v){case!0:s+="; SameSite=Strict";break;case"lax":s+="; SameSite=Lax";break;case"strict":s+="; SameSite=Strict";break;case"none":s+="; SameSite=None";break;default:throw new TypeError("option sameSite is invalid")}}return s},w4={create:function(r,t,n,o){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{path:"/",sameSite:"strict"};n&&(a.expires=new Date,a.expires.setTime(a.expires.getTime()+n*60*1e3)),o&&(a.domain=o),document.cookie=n2e(r,encodeURIComponent(t),a)},read:function(r){for(var t="".concat(r,"="),n=document.cookie.split(";"),o=0;o-1&&(n=window.location.hash.substring(window.location.hash.indexOf("?")));for(var o=n.substring(1),a=o.split("&"),s=0;s0){var v=a[s].substring(0,p);v===r.lookupQuerystring&&(t=a[s].substring(p+1))}}}return t}},gs=null,y4=function(){if(gs!==null)return gs;try{gs=window!=="undefined"&&window.localStorage!==null;var r="i18next.translate.boo";window.localStorage.setItem(r,"foo"),window.localStorage.removeItem(r)}catch{gs=!1}return gs},i2e={name:"localStorage",lookup:function(r){var t;if(r.lookupLocalStorage&&y4()){var n=window.localStorage.getItem(r.lookupLocalStorage);n&&(t=n)}return t},cacheUserLanguage:function(r,t){t.lookupLocalStorage&&y4()&&window.localStorage.setItem(t.lookupLocalStorage,r)}},hs=null,x4=function(){if(hs!==null)return hs;try{hs=window!=="undefined"&&window.sessionStorage!==null;var r="i18next.translate.boo";window.sessionStorage.setItem(r,"foo"),window.sessionStorage.removeItem(r)}catch{hs=!1}return hs},l2e={name:"sessionStorage",lookup:function(r){var t;if(r.lookupSessionStorage&&x4()){var n=window.sessionStorage.getItem(r.lookupSessionStorage);n&&(t=n)}return t},cacheUserLanguage:function(r,t){t.lookupSessionStorage&&x4()&&window.sessionStorage.setItem(t.lookupSessionStorage,r)}},s2e={name:"navigator",lookup:function(r){var t=[];if(typeof navigator<"u"){if(navigator.languages)for(var n=0;n0?t:void 0}},c2e={name:"htmlTag",lookup:function(r){var t,n=r.htmlTag||(typeof document<"u"?document.documentElement:null);return n&&typeof n.getAttribute=="function"&&(t=n.getAttribute("lang")),t}},u2e={name:"path",lookup:function(r){var t;if(typeof window<"u"){var n=window.location.pathname.match(/\/([a-zA-Z-]*)/g);if(n instanceof Array)if(typeof r.lookupFromPathIndex=="number"){if(typeof n[r.lookupFromPathIndex]!="string")return;t=n[r.lookupFromPathIndex].replace("/","")}else t=n[0].replace("/","")}return t}},d2e={name:"subdomain",lookup:function(r){var t=typeof r.lookupFromSubdomainIndex=="number"?r.lookupFromSubdomainIndex+1:1,n=typeof window<"u"&&window.location&&window.location.hostname&&window.location.hostname.match(/^(\w{2,5})\.(([a-z0-9-]{1,63}\.[a-z]{2,6})|localhost)/i);if(n)return n[t]}};function f2e(){return{order:["querystring","cookie","localStorage","sessionStorage","navigator","htmlTag"],lookupQuerystring:"lng",lookupCookie:"i18next",lookupLocalStorage:"i18nextLng",lookupSessionStorage:"i18nextLng",caches:["localStorage"],excludeCacheFor:["cimode"],convertDetectedLanguage:function(r){return r}}}var Ik=function(){function e(r){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};Xpe(this,e),this.type="languageDetector",this.detectors={},this.init(r,t)}return Jpe(e,[{key:"init",value:function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};this.services=t||{languageUtils:{}},this.options=t2e(n,this.options||{},f2e()),typeof this.options.convertDetectedLanguage=="string"&&this.options.convertDetectedLanguage.indexOf("15897")>-1&&(this.options.convertDetectedLanguage=function(a){return a.replace("-","_")}),this.options.lookupFromUrlIndex&&(this.options.lookupFromPathIndex=this.options.lookupFromUrlIndex),this.i18nOptions=o,this.addDetector(o2e),this.addDetector(a2e),this.addDetector(i2e),this.addDetector(l2e),this.addDetector(s2e),this.addDetector(c2e),this.addDetector(u2e),this.addDetector(d2e)}},{key:"addDetector",value:function(t){this.detectors[t.name]=t}},{key:"detect",value:function(t){var n=this;t||(t=this.options.order);var o=[];return t.forEach(function(a){if(n.detectors[a]){var s=n.detectors[a].lookup(n.options);s&&typeof s=="string"&&(s=[s]),s&&(o=o.concat(s))}}),o=o.map(function(a){return n.options.convertDetectedLanguage(a)}),this.services.languageUtils.getBestMatchFromCodes?o:o.length>0?o[0]:null}},{key:"cacheUserLanguage",value:function(t,n){var o=this;n||(n=this.options.caches),n&&(this.options.excludeCacheFor&&this.options.excludeCacheFor.indexOf(t)>-1||n.forEach(function(a){o.detectors[a]&&o.detectors[a].cacheUserLanguage(t,o.options)}))}}]),e}();Ik.type="languageDetector";const p2e={translation:{about:{title:"Über Uns",description:{part1:"Cyggnus wurde von Leonardo Kotlarenko und Leonardo Kleimpaul gegründet;",part2:"Unser Ziel ist es, unterhaltsame und nützliche Open-Source-Anwendungen zu erstellen."},altImg:{cyggnusLogo:"Cyggnus Organisations logo"},btnTitle:{linkedInKotlarenko:"lkotlarenkos LinkedIn",linkedInKleimpaul:"Kleimpauls LinkedIn",cyggnusGitHub:"Cyggnus Organisation"}},footer:{copyright:{allRights:"ShuffleGenie © 2023. Alle Rechte vorbehalten.",affiliation:"ShuffleGenie steht nicht im Zusammenhang mit MarvelSnapZone, Nuverse, Second Dinner oder Marvel.",providedBy:"Sammlungsdaten werden bereitgestellt von ",dataFrom:"MarvelSnapZone©"}},help:{newUserDesc1:{part1:"Um Ihre Sammlung zu synchronisieren, benötigen Sie ein ",part2:" Konto."},newUserDesc2:{part1:"Verwenden Sie Ihre Sammlung, indem Sie Ihren ",part2:" Benutzernamen unten angeben und dann auf 'SAMMLUNG SYNCHRONISIEREN' klicken.",part3:"Sie können das Textfeld auch leer lassen, um die Standardkollektion zu verwenden."},description:"Um zufällige Decks zu generieren, klicken Sie ",button:"hier"},home:{copy:{deckCopied:"Deck-Code in die Zwischenablage kopiert!",title:"Deck-Code kopieren"},intro:"Generieren Sie einfach neue zufällige Decks mit Ihrer MarvelSnap©-Sammlung.",newUser:{title:"Willkommen bei ShuffleGenie 👋",description:{part1:"Erstellen Sie ein neues zufälliges Deck mit Ihren besessenen Sammlungskarten!",part2:"Synchronisieren Sie Ihren Marvel Snap Zone-Benutzernamen, um ein völlig zufälliges Deck mit Karten aus Ihrer Snap-Sammlung zu generieren."}},randomDeckBtn:{text:"Neues zufälliges Deck",title:"Generieren Sie ein neues zufälliges Deck"}},misc:{apiMsgs:{fail:{html:"Wenn dieser Fehler anhält, können Sie ein Problem hier melden.",text:"Entschuldigung, etwas ist schief gelaufen!",title:"Fehler beim Kontaktieren unserer API!"},success:{title:"Erfolgreich synchronisiert!"}},card:{title:"Sehen Sie '{{name}}' auf MarvelSnapZone©"},close:"Schließen",langList:{de:"Deutsch",en:"Englisch",es:"Spanisch",fr:"Französisch",hi:"Hindi",it:"Italienisch",ja:"Japanisch",ko:"Koreanisch",nl:"Niederländisch","pt-BR":"Brasilianisches Portugiesisch",ru:"Russisch",uk:"Ukrainisch",zh:"Chinesisch"},selectLanguage:"Sprache auswählen",syncForm:{label:"Ihr Benutzername","aria-label":"Benutzereingabe",inputDesc:"(lassen Sie das Feld leer, um die Standardkollektion zu verwenden)",syncBtn:"SAMMLUNG SYNCHRONISIEREN"}},nav:{link:{about:"Über Uns",help:"Hilfe",home:"Startseite",profile:"Profil",sync:"Neu synchronisieren"},btnTitle:{about:"Gehe zur Über-Uns-Seite",hamburgerMenu:"Navigationsmenü öffnen",help:"Gehe zur Hilfeseite",home:"Gehe zur Startseite",locale:"App-Sprache ändern",logout:"Abmelden",profile:"Gehe zu Ihrer Profilseite",sync:"Sammlung neu synchronisieren"}},profile:{greetings:{defaultUser:"Willkommen in unserer App 👽, Sie erkunden die Standardkollektion mit {{numCards}} Karten! Genießen Sie die vielfältige Auswahl an Karten aus Pool 2 und darunter.",loggedUser:"Hallo {{user}} 👽, hier ist Ihre Snap-Sammlung mit {{numCards}} Karten!"},info:{part1:"Um zufällige Decks zu generieren, klicken Sie ",part2:"hier"}}}},g2e={translation:{about:{title:"About Us",description:{part1:"Cyggnus was founded by Leonardo Kotlarenko and Leonardo Kleimpaul;",part2:"Our aim is to create fun and useful open source applications."},altImg:{cyggnusLogo:"Cyggnus Organization Logo"},btnTitle:{linkedInKotlarenko:"lkotlarenko's LinkedIn",linkedInKleimpaul:"Kleimpaul's LinkedIn",cyggnusGitHub:"Cyggnus Organization"}},footer:{copyright:{allRights:"ShuffleGenie © 2023. All Rights Reserved.",affiliation:"ShuffleGenie is not affiliated with MarvelSnapZone, Nuverse, Second Dinner, or Marvel.",providedBy:"Collection data is provided by ",dataFrom:"MarvelSnapZone©"}},help:{newUserDesc1:{part1:"To Sync Your Collection you will need a ",part2:" account."},newUserDesc2:{part1:"Use your collection by providing your ",part2:" username below and then clicking on 'SYNC COLLECTION'.",part3:"You can also leave the text field empty to use the default collection."},description:"To generate random decks click ",button:"here"},home:{copy:{deckCopied:"Deck code copied to clipboard!",title:"Copy Deck Code"},intro:"Easily generate new random decks using your MarvelSnap© collection.",newUser:{title:"Welcome to ShuffleGenie 👋",description:{part1:"Create a new random deck with your owned collection cards!",part2:"Sync your Marvel Snap Zone account username to generate a new completely random deck with cards from your snap collection."}},randomDeckBtn:{text:"New Random Deck",title:"Generate a new random Deck"}},misc:{apiMsgs:{fail:{html:"If this error persists you can report an issue here. ",text:"Sorry, something went wrong!",title:"Failed to contact our API!"},success:{title:"Synchronized with success!"}},card:{title:"View '{{name}}' on MarvelSnapZone©"},close:"Close",langList:{de:"German",en:"English",es:"Spanish",fr:"French",hi:"Hindi",it:"Italian",ja:"Japanese",ko:"Korean",nl:"Dutch","pt-BR":"Brazilian Portuguese",ru:"Russian",uk:"Ukrainian",zh:"Chinese"},selectLanguage:"Select Language",syncForm:{label:"Your Username","aria-label":"Username input",inputDesc:"(leave blank to use default collection)",syncBtn:"SYNC COLLECTION"}},nav:{link:{about:"About Us",help:"Help",home:"Home",profile:"Profile",sync:"Re-Sync"},btnTitle:{about:"Go to about us page",hamburgerMenu:"Open navigation menu",help:"Go to help page",home:"Go to home page",locale:"Change App Language",logout:"Logout",profile:"Go to your profile page",sync:"Re-Sync Your Collection"}},profile:{greetings:{defaultUser:"Welcome to our app 👽, you are exploring the Default Collection with {{numCards}} cards! Enjoy the diverse selection of cards from Pool 2 and below.",loggedUser:"Hi {{user}} 👽, here is your snap collection of {{numCards}} cards!"},info:{part1:"To generate random decks click ",part2:"here"}}}},h2e={translation:{about:{title:"Sobre Nosotros",description:{part1:"Cyggnus fue fundada por Leonardo Kotlarenko y Leonardo Kleimpaul;",part2:"Nuestro objetivo es crear aplicaciones de código abierto divertidas y útiles."},altImg:{cyggnusLogo:"Logotipo de la Organización Cyggnus"},btnTitle:{linkedInKotlarenko:"LinkedIn de lkotlarenko",linkedInKleimpaul:"LinkedIn de Kleimpaul",cyggnusGitHub:"Organización Cyggnus"}},footer:{copyright:{allRights:"ShuffleGenie © 2023. Todos los derechos reservados.",affiliation:"ShuffleGenie no está afiliado con MarvelSnapZone, Nuverse, Second Dinner ni Marvel.",providedBy:"Datos de la colección proporcionados por ",dataFrom:"MarvelSnapZone©"}},help:{newUserDesc1:{part1:"Para sincronizar tu colección, necesitarás una cuenta en ",part2:"."},newUserDesc2:{part1:"Utiliza tu colección proporcionando tu nombre de usuario de ",part2:" a continuación y luego haz clic en 'SINCRONIZAR COLECCIÓN'.",part3:"También puedes dejar el campo de texto en blanco para usar la colección predeterminada."},description:"Para generar mazos aleatorios, haz clic ",button:"aquí"},home:{copy:{deckCopied:"Código del mazo copiado al portapapeles.",title:"Copiar Código del Mazo"},intro:"Genera fácilmente nuevos mazos aleatorios usando tu colección de MarvelSnap©.",newUser:{title:"Bienvenido a ShuffleGenie 👋",description:{part1:"¡Crea un nuevo mazo aleatorio con las cartas de tu colección!",part2:"Sincroniza tu nombre de usuario de la cuenta Marvel Snap Zone para generar un nuevo mazo completamente aleatorio con cartas de tu colección de Snap."}},randomDeckBtn:{text:"Nuevo Mazo Aleatorio",title:"Generar un nuevo Mazo Aleatorio"}},misc:{apiMsgs:{fail:{html:"Si este error persiste, puedes informar un problema aquí. ",text:"Lo siento, algo salió mal.",title:"¡No se pudo contactar con nuestra API!"},success:{title:"¡Sincronizado exitosamente!"}},card:{title:"Ver '{{name}}' en MarvelSnapZone©"},close:"Cerrar",langList:{de:"Alemán",en:"Inglés",es:"Español",fr:"Francés",hi:"Hindi",it:"Italiano",ja:"Japonés",ko:"Coreano",nl:"Neerlandés","pt-BR":"Portugués Brasileño",ru:"Ruso",uk:"Ucraniano",zh:"Chino"},selectLanguage:"Seleccionar Idioma",syncForm:{label:"Tu Nombre de Usuario","aria-label":"Entrada de nombre de usuario",inputDesc:"(deja en blanco para usar la colección predeterminada)",syncBtn:"SINCRONIZAR COLECCIÓN"}},nav:{link:{about:"Sobre Nosotros",help:"Ayuda",home:"Inicio",profile:"Perfil",sync:"Re-Sincronizar"},btnTitle:{about:"Ir a la página de sobre nosotros",hamburgerMenu:"Abrir menú de navegación",help:"Ir a la página de ayuda",home:"Ir a la página de inicio",locale:"Cambiar Idioma de la App",logout:"Cerrar Sesión",profile:"Ir a la página de tu perfil",sync:"Re-Sincronizar tu Colección"}},profile:{greetings:{defaultUser:"Bienvenido a nuestra aplicación 👽, estás explorando la Colección Predeterminada con {{numCards}} cartas. Disfruta de la variada selección de cartas de la Pool 2 y más abajo.",loggedUser:"Hola {{user}} 👽, aquí está tu colección Snap con {{numCards}} cartas."},info:{part1:"Para generar mazos aleatorios, haz clic ",part2:"aquí"}}}},m2e={translation:{about:{title:"À Propos de Nous",description:{part1:"Cyggnus a été fondé par Leonardo Kotlarenko et Leonardo Kleimpaul;",part2:"Notre objectif est de créer des applications open source amusantes et utiles."},altImg:{cyggnusLogo:"Logo de l'Organisation Cyggnus"},btnTitle:{linkedInKotlarenko:"LinkedIn de lkotlarenko",linkedInKleimpaul:"LinkedIn de Kleimpaul",cyggnusGitHub:"Organisation Cyggnus"}},footer:{copyright:{allRights:"ShuffleGenie © 2023. Tous droits réservés.",affiliation:"ShuffleGenie n'est pas affilié à MarvelSnapZone, Nuverse, Second Dinner ou Marvel.",providedBy:"Données de collection fournies par ",dataFrom:"MarvelSnapZone©"}},help:{newUserDesc1:{part1:"Pour synchroniser votre collection, vous aurez besoin d'un compte ",part2:"."},newUserDesc2:{part1:"Utilisez votre collection en fournissant votre nom d'utilisateur ",part2:" ci-dessous, puis cliquez sur 'SYNCHRONISER LA COLLECTION'.",part3:"Vous pouvez également laisser le champ de texte vide pour utiliser la collection par défaut."},description:"Pour générer des decks aléatoires, cliquez ",button:"ici"},home:{copy:{deckCopied:"Code de deck copié dans le presse-papiers !",title:"Copier le Code du Deck"},intro:"Générez facilement de nouveaux decks aléatoires en utilisant votre collection MarvelSnap©.",newUser:{title:"Bienvenue sur ShuffleGenie 👋",description:{part1:"Créez un nouveau deck aléatoire avec vos cartes de collection !",part2:"Synchronisez votre nom d'utilisateur de Marvel Snap Zone pour générer un nouveau deck complètement aléatoire avec des cartes de votre collection Snap."}},randomDeckBtn:{text:"Nouveau Deck Aléatoire",title:"Générer un Nouveau Deck Aléatoire"}},misc:{apiMsgs:{fail:{html:"Si cette erreur persiste, vous pouvez signaler un problème ici. ",text:"Désolé, quelque chose s'est mal passé !",title:"Échec de la connexion à notre API !"},success:{title:"Synchronisé avec succès !"}},card:{title:"Voir '{{name}}' sur MarvelSnapZone©"},close:"Fermer",langList:{de:"Allemand",en:"Anglais",es:"Espagnol",fr:"Français",hi:"Hindi",it:"Italien",ja:"Japonais",ko:"Coréen",nl:"Néerlandais","pt-BR":"Portugais brésilien",ru:"Russe",uk:"Ukrainien",zh:"Chinois"},selectLanguage:"Sélectionner la Langue",syncForm:{label:"Votre Nom d'Utilisateur","aria-label":"Entrée du nom d'utilisateur",inputDesc:"(laissez vide pour utiliser la collection par défaut)",syncBtn:"SYNCHRONISER LA COLLECTION"}},nav:{link:{about:"À Propos de Nous",help:"Aide",home:"Accueil",profile:"Profil",sync:"Re-Synchroniser"},btnTitle:{about:"Aller à la page À Propos de Nous",hamburgerMenu:"Ouvrir le menu de navigation",help:"Aller à la page d'Aide",home:"Aller à la page d'Accueil",locale:"Changer la Langue de l'Application",logout:"Déconnexion",profile:"Aller à la page de votre Profil",sync:"Re-Synchroniser Votre Collection"}},profile:{greetings:{defaultUser:"Bienvenue sur notre application 👽, vous explorez la Collection par Défaut avec {{numCards}} cartes ! Profitez de la sélection variée de cartes de la Pool 2 et en dessous.",loggedUser:"Bonjour {{user}} 👽, voici votre collection Snap avec {{numCards}} cartes !"},info:{part1:"Pour générer des decks aléatoires, cliquez ",part2:"ici"}}}},v2e={translation:{about:{title:"हमारे बारे में",description:{part1:"सिग्नस की स्थापना लियोनार्डो कोटलारेंको और लियोनार्डो क्लेम्पॉल द्वारा की गई थी;",part2:"हमारा उद्देश्य मजेदार और उपयोगी ओपन सोर्स एप्लिकेशन्स बनाना है।"},altImg:{cyggnusLogo:"सिग्नस संगठन लोगो"},btnTitle:{linkedInKotlarenko:"lkotlarenko का लिंक्डइन",linkedInKleimpaul:"Kleimpaul का लिंक्डइन",cyggnusGitHub:"सिग्नस संगठन"}},footer:{copyright:{allRights:"शफल जीनी © 2023। सभी अधिकार सुरक्षित।",affiliation:"शफल जीनी किसी भी रूप में मार्वलस्नैपजोन, न्यूवर्स, सेकंड डिनर या मार्वल से संबंधित नहीं है।",providedBy:"संग्रहण डेटा प्रदान करता है ",dataFrom:"मार्वलस्नैपजोन©"}},help:{newUserDesc1:{part1:"अपने संग्रहण को सिंक करने के लिए आपको एक ",part2:" खाता की आवश्यकता होगी।"},newUserDesc2:{part1:"अपने ",part2:" उपयोगकर्ता नाम को नीचे दिया गया है और फिर 'सिंक कलेक्शन' पर क्लिक करें ताकि आप अपने संग्रह का उपयोग कर सकें।",part3:"आप डिफ़ॉल्ट संग्रह का उपयोग करने के लिए टेक्स्ट फ़ील्ड खाली भी छोड़ सकते हैं।"},description:"यादृच्छिक डेक उत्पन्न करने के लिए यहाँ क्लिक करें ",button:"यहाँ"},home:{copy:{deckCopied:"डेक कोड क्लिपबोर्ड में कॉपी किया गया!",title:"डेक कोड कॉपी करें"},intro:"अपने MarvelSnap© संग्रह का उपयोग करके आसानी से नए यादृच्छिक डेक उत्पन्न करें।",newUser:{title:"ShuffleGenie में आपका स्वागत है 👋",description:{part1:"अपने संग्रहित संग्रह कार्डों के साथ एक नया यादृच्छिक डेक बनाएँ!",part2:"अपने Marvel Snap Zone खाता उपयोगकर्ता नाम को सिंक करें ताकि आपके स्नैप संग्रह के कार्डों से एक पूरी तरह से यादृच्छिक डेक बनाएँ।"}},randomDeckBtn:{text:"नया यादृच्छिक डेक",title:"नया यादृच्छिक डेक उत्पन्न करें"}},misc:{apiMsgs:{fail:{html:"यदि यह त्रुटि निरंतर बनी रहती है, तो आप यहाँ समस्या की सूचना दे सकते हैं।",text:"क्षमा करें, कुछ गलत हो गया!",title:"हमारे API से संपर्क करने में विफल!"},success:{title:"सफलतापूर्वक सिंक किया गया!"}},card:{title:"MarvelSnapZone© पर '{{name}}' देखें"},close:"बंद करें",langList:{de:"जर्मन",en:"अंग्रेज़ी",es:"स्पेनिश",fr:"फ़्रेंच",hi:"हिंदी",it:"इतालवी",ja:"जापानी",ko:"कोरियाई",nl:"डच","pt-BR":"ब्राज़ीली पुर्तगाली",ru:"रूसी",uk:"यूक्रेनियाई",zh:"चीनी"},selectLanguage:"भाषा चुनें",syncForm:{label:"आपका उपयोगकर्ता नाम","aria-label":"उपयोगकर्ता नाम इनपुट",inputDesc:"(डिफ़ॉल्ट संग्रह का उपयोग करने के लिए खाली छोड़ दें)",syncBtn:"सिंक कलेक्शन"}},nav:{link:{about:"हमारे बारे में",help:"मदद",home:"होम",profile:"प्रोफ़ाइल",sync:"री-सिंक"},btnTitle:{about:"हमारे बारे में पेज पर जाएं",hamburgerMenu:"नेविगेशन मेनू खोलें",help:"मदद पेज पर जाएं",home:"होम पेज पर जाएं",locale:"ऐप की भाषा बदलें",logout:"लॉगआउट",profile:"आपकी प्रोफ़ाइल पेज पर जाएं",sync:"आपके संग्रह को री-सिंक करें"}},profile:{greetings:{defaultUser:"हमारे ऐप में आपका स्वागत है 👽, आप {{numCards}} कार्डों के साथ डिफ़ॉल्ट संग्रह खोज रहे हैं! Pool 2 और नीचे के कार्डों का विविध चयन का आनंद लें।",loggedUser:"नमस्ते {{user}} 👽, यहाँ आपका {{numCards}} कार्डों वाला स्नैप संग्रह है!"},info:{part1:"यादृच्छिक डेक उत्पन्न करने के लिए यहाँ क्लिक करें ",part2:"यहाँ"}}}},b2e={translation:{about:{title:"Chi Siamo",description:{part1:"Cyggnus è stata fondata da Leonardo Kotlarenko e Leonardo Kleimpaul;",part2:"Il nostro obiettivo è creare applicazioni open source divertenti e utili."},altImg:{cyggnusLogo:"Logo dell'Organizzazione Cyggnus"},btnTitle:{linkedInKotlarenko:"LinkedIn di lkotlarenko",linkedInKleimpaul:"LinkedIn di Kleimpaul",cyggnusGitHub:"Organizzazione Cyggnus"}},footer:{copyright:{allRights:"ShuffleGenie © 2023. Tutti i diritti riservati.",affiliation:"ShuffleGenie non è affiliato a MarvelSnapZone, Nuverse, Second Dinner o Marvel.",providedBy:"I dati della collezione sono forniti da ",dataFrom:"MarvelSnapZone©"}},help:{newUserDesc1:{part1:"Per sincronizzare la tua collezione avrai bisogno di un ",part2:" account."},newUserDesc2:{part1:"Utilizza la tua collezione fornendo il tuo nome utente di ",part2:" qui sotto e poi clicca su 'SINCRONIZZA COLLEZIONE'.",part3:"Puoi anche lasciare il campo di testo vuoto per utilizzare la collezione predefinita."},description:"Per generare mazzi casuali clicca ",button:"qui"},home:{copy:{deckCopied:"Codice del mazzo copiato negli appunti!",title:"Copia Codice del Mazzo"},intro:"Genera facilmente nuovi mazzi casuali utilizzando la tua collezione di MarvelSnap©.",newUser:{title:"Benvenuto in ShuffleGenie 👋",description:{part1:"Crea un nuovo mazzo casuale con le carte della tua collezione!",part2:"Sincronizza il nome utente del tuo account Marvel Snap Zone per generare un nuovo mazzo completamente casuale con carte dalla tua collezione snap."}},randomDeckBtn:{text:"Nuovo Mazzo Casuale",title:"Genera un nuovo Mazzo Casuale"}},misc:{apiMsgs:{fail:{html:"Se questo errore persiste, puoi segnalare un problema qui. ",text:"Spiacenti, qualcosa è andato storto!",title:"Impossibile contattare la nostra API!"},success:{title:"Sincronizzato con successo!"}},card:{title:"Visualizza '{{name}}' su MarvelSnapZone©"},close:"Chiudi",langList:{de:"Tedesco",en:"Inglese",es:"Spagnolo",fr:"Francese",hi:"Hindi",it:"Italiano",ja:"Giapponese",ko:"Coreano",nl:"Olandese","pt-BR":"Portoghese Brasiliano",ru:"Russo",uk:"Ucraino",zh:"Cinese"},selectLanguage:"Seleziona Lingua",syncForm:{label:"Il Tuo Nome Utente","aria-label":"Inserimento Nome Utente",inputDesc:"(lascia vuoto per utilizzare la collezione predefinita)",syncBtn:"SINCRONIZZA COLLEZIONE"}},nav:{link:{about:"Chi Siamo",help:"Aiuto",home:"Home",profile:"Profilo",sync:"Re-Sync"},btnTitle:{about:"Vai alla pagina Chi Siamo",hamburgerMenu:"Apri il menu di navigazione",help:"Vai alla pagina di Aiuto",home:"Vai alla pagina Home",locale:"Cambia Lingua dell'App",logout:"Logout",profile:"Vai alla pagina del tuo profilo",sync:"Re-Sincronizza la Tua Collezione"}},profile:{greetings:{defaultUser:"Benvenuto nella nostra app 👽, stai esplorando la Collezione Predefinita con {{numCards}} carte! Goditi la selezione variegata di carte dalla Pool 2 in giù.",loggedUser:"Ciao {{user}} 👽, ecco la tua collezione snap di {{numCards}} carte!"},info:{part1:"Per generare mazzi casuali clicca ",part2:"qui"}}}},w2e={translation:{about:{title:"私たちについて",description:{part1:"Cyggnusは、Leonardo KotlarenkoとLeonardo Kleimpaulによって設立されました。",part2:"私たちの目標は、楽しくて役に立つオープンソースアプリケーションを作成することです。"},altImg:{cyggnusLogo:"Cyggnus組織のロゴ"},btnTitle:{linkedInKotlarenko:"lkotlarenkoのLinkedIn",linkedInKleimpaul:"KleimpaulのLinkedIn",cyggnusGitHub:"Cyggnus組織"}},footer:{copyright:{allRights:"ShuffleGenie © 2023。全著作権所有。",affiliation:"ShuffleGenieは、MarvelSnapZone、Nuverse、Second Dinner、またはMarvelと提携していません。",providedBy:"コレクションデータは提供されています:",dataFrom:"MarvelSnapZone©"}},help:{newUserDesc1:{part1:"コレクションを同期するには、",part2:" アカウントが必要です。"},newUserDesc2:{part1:"下のテキストフィールドに",part2:" アカウントのユーザー名を入力して、「コレクションを同期」をクリックしてください。テキストフィールドを空白のままにして、デフォルトのコレクションを使用することもできます。"},description:"ランダムなデッキを生成するには、",button:"こちら"},home:{copy:{deckCopied:"デッキコードがクリップボードにコピーされました!",title:"デッキコードのコピー"},intro:"MarvelSnap©のコレクションを使用して新しいランダムなデッキを簡単に生成できます。",newUser:{title:"ShuffleGenieへようこそ 👋",description:{part1:"所持しているコレクションカードで新しいランダムなデッキを作成しましょう!",part2:"Marvel Snap Zoneアカウントのユーザー名を同期して、Snapコレクションから完全にランダムな新しいデッキを生成します。"}},randomDeckBtn:{text:"新しいランダムデッキ",title:"新しいランダムデッキを生成"}},misc:{apiMsgs:{fail:{html:"このエラーが続く場合は、こちら で問題を報告できます。",text:"申し訳ありませんが、何か問題が発生しました。",title:"APIのコンタクトに失敗しました!"},success:{title:"正常に同期されました!"}},card:{title:"MarvelSnapZone©で '{{name}}' を表示"},close:"閉じる",langList:{de:"ドイツ語",en:"英語",es:"スペイン語",fr:"フランス語",hi:"ヒンディー語",it:"イタリア語",ja:"日本語",ko:"韓国語",nl:"オランダ語","pt-BR":"ブラジルポルトガル語",ru:"ロシア語",uk:"ウクライナ語",zh:"中国語"},selectLanguage:"言語を選択",syncForm:{label:"ユーザー名","aria-label":"ユーザー名入力",inputDesc:"(デフォルトのコレクションを使用する場合は空白のままにしてください)",syncBtn:"コレクションを同期"}},nav:{link:{about:"私たちについて",help:"ヘルプ",home:"ホーム",profile:"プロフィール",sync:"再同期"},btnTitle:{about:"私たちについてのページに移動",hamburgerMenu:"ナビゲーションメニューを開く",help:"ヘルプページに移動",home:"ホームページに移動",locale:"アプリ言語を変更",logout:"ログアウト",profile:"プロフィールページに移動",sync:"コレクションを再同期"}},profile:{greetings:{defaultUser:"私たちのアプリへようこそ 👽、{{numCards}} 枚のデフォルトコレクションを探索しています! Pool 2以下のカードの多様な選択肢をお楽しみください。",loggedUser:"こんにちは {{user}} 👽、こちらは{{numCards}} 枚のSnapコレクションです!"},info:{part1:"ランダムなデッキを生成するには、",part2:"こちら"}}}},y2e={translation:{about:{title:"회사 소개",description:{part1:"Cyggnus는 Leonardo Kotlarenko와 Leonardo Kleimpaul에 의해 설립되었습니다;",part2:"우리의 목표는 재미있고 유용한 오픈 소스 애플리케이션을 만드는 것입니다."},altImg:{cyggnusLogo:"Cyggnus 조직 로고"},btnTitle:{linkedInKotlarenko:"lkotlarenko의 LinkedIn",linkedInKleimpaul:"Kleimpaul의 LinkedIn",cyggnusGitHub:"Cyggnus 조직"}},footer:{copyright:{allRights:"ShuffleGenie © 2023. 모든 권리 보유.",affiliation:"ShuffleGenie는 MarvelSnapZone, Nuverse, Second Dinner, 또는 Marvel과 관련이 없습니다.",providedBy:"컬렉션 데이터 제공: ",dataFrom:"MarvelSnapZone©"}},help:{newUserDesc1:{part1:"컬렉션을 동기화하려면 ",part2:" 계정이 필요합니다."},newUserDesc2:{part1:"아래에 ",part2:" 사용자 이름을 입력하고 '컬렉션 동기화'를 클릭하여 컬렉션을 사용하세요.",part3:"또한 텍스트 필드를 비워두어 기본 컬렉션을 사용할 수 있습니다."},description:"랜덤 덱 생성을 위해 여기를 클릭하세요 ",button:"여기"},home:{copy:{deckCopied:"덱 코드가 클립 보드에 복사되었습니다!",title:"덱 코드 복사"},intro:"MarvelSnap© 컬렉션을 사용하여 새로운 랜덤 덱을 쉽게 생성하세요.",newUser:{title:"ShuffleGenie에 오신 것을 환영합니다 👋",description:{part1:"소유한 컬렉션 카드로 새로운 랜덤 덱을 생성하세요!",part2:"Marvel Snap Zone 계정 사용자 이름을 동기화하여 스냅 컬렉션의 카드를 사용하여 완전히 새로운 랜덤 덱을 생성하세요."}},randomDeckBtn:{text:"새로운 랜덤 덱",title:"새로운 랜덤 덱 생성"}},misc:{apiMsgs:{fail:{html:"이 오류가 지속되면 여기에 문제를 보고할 수 있습니다.",text:"죄송합니다. 오류가 발생했습니다.",title:"API 연결에 실패했습니다!"},success:{title:"성공적으로 동기화되었습니다!"}},card:{title:"MarvelSnapZone©에서 '{{name}}' 보기"},close:"닫기",langList:{de:"독일어",en:"영어",es:"스페인어",fr:"프랑스어",hi:"힌디어",it:"이탈리아어",ja:"일본어",ko:"한국어",nl:"네덜란드어","pt-BR":"브라질 포르투갈어",ru:"러시아어",uk:"우크라이나어",zh:"중국어"},selectLanguage:"언어 선택",syncForm:{label:"사용자 이름","aria-label":"사용자 이름 입력",inputDesc:"(기본 컬렉션 사용을 위해 비워두세요)",syncBtn:"컬렉션 동기화"}},nav:{link:{about:"회사 소개",help:"도움말",home:"홈",profile:"프로필",sync:"재동기화"},btnTitle:{about:"회사 소개 페이지로 이동",hamburgerMenu:"네비게이션 메뉴 열기",help:"도움말 페이지로 이동",home:"홈 페이지로 이동",locale:"앱 언어 변경",logout:"로그아웃",profile:"프로필 페이지로 이동",sync:"컬렉션 재동기화"}},profile:{greetings:{defaultUser:"앱에 오신 것을 환영합니다 👽, {{numCards}} 개의 카드가 있는 기본 컬렉션을 탐색하고 있습니다! Pool 2 이하의 다양한 선택 가능한 카드를 즐겨보세요.",loggedUser:"{{user}}님 안녕하세요 👽, 여기 {{numCards}} 개의 스냅 컬렉션 카드가 있습니다!"},info:{part1:"랜덤 덱을 생성하려면 여기를 클릭하세요 ",part2:"여기"}}}},x2e={translation:{about:{title:"Over Ons",description:{part1:"Cyggnus is opgericht door Leonardo Kotlarenko en Leonardo Kleimpaul;",part2:"Ons doel is om leuke en nuttige open source applicaties te maken."},altImg:{cyggnusLogo:"Cyggnus Organisatie Logo"},btnTitle:{linkedInKotlarenko:"lkotlarenko's LinkedIn",linkedInKleimpaul:"Kleimpaul's LinkedIn",cyggnusGitHub:"Cyggnus Organisatie"}},footer:{copyright:{allRights:"ShuffleGenie © 2023. Alle rechten voorbehouden.",affiliation:"ShuffleGenie heeft geen affiliatie met MarvelSnapZone, Nuverse, Second Dinner, of Marvel.",providedBy:"Collectiegegevens worden verstrekt door ",dataFrom:"MarvelSnapZone©"}},help:{newUserDesc1:{part1:"Om je collectie te synchroniseren heb je een ",part2:" account nodig."},newUserDesc2:{part1:"Gebruik je collectie door je ",part2:" gebruikersnaam hieronder in te voeren en vervolgens op 'COLLECTIE SYNCHRONISEREN' te klikken.",part3:"Je kunt ook het tekstveld leeg laten om de standaardcollectie te gebruiken."},description:"Om willekeurige decks te genereren, klik ",button:"hier"},home:{copy:{deckCopied:"Deckcode gekopieerd naar klembord!",title:"Kopieer Deckcode"},intro:"Genereer eenvoudig nieuwe willekeurige decks met behulp van je MarvelSnap©-collectie.",newUser:{title:"Welkom bij ShuffleGenie 👋",description:{part1:"Creëer een nieuw willekeurig deck met je eigen collectiekaarten!",part2:"Synchroniseer je Marvel Snap Zone accountgebruikersnaam om een geheel nieuw willekeurig deck te genereren met kaarten uit je snap-collectie."}},randomDeckBtn:{text:"Nieuw Willekeurig Deck",title:"Genereer een nieuw willekeurig Deck"}},misc:{apiMsgs:{fail:{html:"Als deze fout aanhoudt, kun je een probleem rapporteren hier. ",text:"Sorry, er is iets misgegaan!",title:"Kan geen contact maken met onze API!"},success:{title:"Succesvol gesynchroniseerd!"}},card:{title:"Bekijk '{{name}}' op MarvelSnapZone©"},close:"Sluiten",langList:{de:"Duits",en:"Engels",es:"Spaans",fr:"Frans",hi:"Hindi",it:"Italiaans",ja:"Japans",ko:"Koreaans",nl:"Nederlands","pt-BR":"Braziliaans Portugees",ru:"Russisch",uk:"Oekraïens",zh:"Chinees"},selectLanguage:"Selecteer Taal",syncForm:{label:"Jouw Gebruikersnaam","aria-label":"Gebruikersnaam invoer",inputDesc:"(laat leeg om de standaardcollectie te gebruiken)",syncBtn:"COLLECTIE SYNCHRONISEREN"}},nav:{link:{about:"Over Ons",help:"Hulp",home:"Home",profile:"Profiel",sync:"Her-Synchroniseren"},btnTitle:{about:"Ga naar over ons pagina",hamburgerMenu:"Open navigatiemenu",help:"Ga naar hulppagina",home:"Ga naar homepagina",locale:"Verander App Taal",logout:"Uitloggen",profile:"Ga naar jouw profielpagina",sync:"Her-Synchroniseer Jouw Collectie"}},profile:{greetings:{defaultUser:"Welkom bij onze app 👽, je verkent de Standaard Collectie met {{numCards}} kaarten! Geniet van de diverse selectie kaarten uit Pool 2 en lager.",loggedUser:"Hallo {{user}} 👽, hier is jouw snap-collectie met {{numCards}} kaarten!"},info:{part1:"Om willekeurige decks te genereren, klik ",part2:"hier"}}}},_2e={translation:{about:{description:{part1:"A Cyggnus foi fundada por Leonardo Kotlarenko e Leonardo Kleimpaul;",part2:"Nosso objetivo é criar aplicações de código aberto divertidas e úteis."},altImg:{cyggnusLogo:"Logo da Organização Cyggnus"},btnTitle:{linkedInKotlarenko:"LinkedIn de lkotlarenko",linkedInKleimpaul:"LinkedIn de Kleimpaul",cyggnusGitHub:"Organização Cyggnus"}},footer:{copyright:{allRights:"ShuffleGenie © 2023. Todos os direitos reservados.",affiliation:"O ShuffleGenie não possui afiliação com a MarvelSnapZone, Nuverse, Second Dinner ou Marvel.",providedBy:"Dados da coleção fornecidos por ",dataFrom:"MarvelSnapZone©"}},help:{newUserDesc1:{part1:"Para sincronizar sua coleção, você precisará de uma conta no ",part2:"."},newUserDesc2:{part1:"Utilize sua coleção informando seu nome de usuário do ",part2:" abaixo e então clicando em 'SINCRONIZAR COLEÇÃO'.",part3:"Você pode também deixar o campo de texto em branco para usar a coleção padrão."},description:"Para gerar decks aleatórios, clique ",button:"aqui"},home:{copy:{deckCopied:"Deck copiado para a area de transferência!",title:"Copiar código do Deck"},intro:"Gere facilmente novos decks aleatórios usando sua coleção do MarvelSnap©.",newUser:{title:"Bem Vindo ao ShuffleGenie 👋",description:{part1:"Crie um novo deck randomizado com as cartas da sua coleção!",part2:"Sincronize seu nome de usuário da conta Marvel Snap Zone para gerar um novo deck completamente aleatório com cartas de sua coleção do Snap."}},randomDeckBtn:{text:"Novo Deck Aleatório",title:"Gerar um novo Deck Aleatório"}},misc:{apiMsgs:{fail:{html:"Se esse erro persistir, você pode relatar um problema aqui. ",text:"Desculpe, algo deu errado!",title:"Falha ao contactar nossa API!"},success:{title:"Sincronizado com sucesso!"}},card:{title:"Ver '{{name}}' no MarvelSnapZone©"},close:"Fechar",langList:{de:"Alemão",en:"Inglês",es:"Espanhol",fr:"Francês",hi:"Hindi",it:"Italiano",ja:"Japonês",ko:"Coreano",nl:"Holandês","pt-BR":"Português Brasileiro",ru:"Russo",uk:"Ucraniano",zh:"Chinês"},selectLanguage:"Selecionar Lingua",syncForm:{label:"Seu nome de usuário","aria-label":"Entrada nome de usuário",inputDesc:"(deixe o campo em branco para usar a coleção padrão)",syncBtn:"SINCRONIZAR COLEÇÃO"}},nav:{link:{about:"Sobre Nós",help:"Ajuda",home:"Inicio",profile:"Perfil",sync:"Re-Sincronizar"},btnTitle:{about:"Vá para a pagina sobre nós",hamburgerMenu:"Abrir menu de navegação",help:"Vá para a pagina de ajuda",home:"Vá para a pagina inicial",locale:"Mudar Lingua do App",logout:"Sair",profile:"Vá para a pagina do seu perfil",sync:"Re-sincronizar sua coleção"}},profile:{greetings:{defaultUser:"Bem-vindo ao nosso aplicativo 👽, você está explorando a Coleção Padrão com {{numCards}} cartas! Aproveite essa seleção de cartas da Pool 2 e abaixo.",loggedUser:"Olá {{user}} 👽, aqui está sua coleção Snap com {{numCards}} cartas!"},info:{part1:"Para gerar decks aleatórios clique ",part2:"aqui"}}}},O2e={translation:{about:{title:"О Нас",description:{part1:"Cyggnus основана Леонардо Котларенко и Леонардо Клеймпауль;",part2:"Наша цель - создавать веселые и полезные приложения с открытым исходным кодом."},altImg:{cyggnusLogo:"Логотип Организации Cyggnus"},btnTitle:{linkedInKotlarenko:"LinkedIn lkotlarenko",linkedInKleimpaul:"LinkedIn Kleimpaul",cyggnusGitHub:"Организация Cyggnus"}},footer:{copyright:{allRights:"ShuffleGenie © 2023. Все права защищены.",affiliation:"ShuffleGenie не имеет аффилиации с MarvelSnapZone, Nuverse, Second Dinner или Marvel.",providedBy:"Данные о коллекции предоставлены ",dataFrom:"MarvelSnapZone©"}},help:{newUserDesc1:{part1:"Для синхронизации вашей коллекции вам понадобится аккаунт ",part2:"."},newUserDesc2:{part1:"Используйте вашу коллекцию, указав ваше ",part2:" имя пользователя ниже, а затем нажмите 'СИНХРОНИЗАЦИЯ КОЛЛЕКЦИИ'.",part3:"Вы также можете оставить поле пустым, чтобы использовать стандартную коллекцию."},description:"Чтобы создать случайные колоды, нажмите ",button:"здесь"},home:{copy:{deckCopied:"Код колоды скопирован в буфер обмена!",title:"Скопировать Код Колоды"},intro:"С легкостью создавайте новые случайные колоды с помощью вашей коллекции MarvelSnap©.",newUser:{title:"Добро пожаловать в ShuffleGenie 👋",description:{part1:"Создайте новую случайную колоду с картами из вашей собственной коллекции!",part2:"Синхронизируйте вашу учетную запись Marvel Snap Zone, чтобы создать абсолютно новую случайную колоду с картами из вашей коллекции Snap."}},randomDeckBtn:{text:"Новая Случайная Колода",title:"Сгенерировать Новую Случайную Колоду"}},misc:{apiMsgs:{fail:{html:"Если ошибка сохраняется, вы можете сообщить о проблеме здесь. ",text:"Извините, что-то пошло не так!",title:"Не удалось связаться с нашим API!"},success:{title:"Успешно синхронизировано!"}},card:{title:"Посмотреть '{{name}}' на MarvelSnapZone©"},close:"Закрыть",langList:{de:"Немецкий",en:"Английский",es:"Испанский",fr:"Французский",hi:"Хинди",it:"Итальянский",ja:"Японский",ko:"Корейский",nl:"Голландский","pt-BR":"Бразильский Португальский",ru:"Русский",uk:"Украинский",zh:"Китайский"},selectLanguage:"Выбрать Язык",syncForm:{label:"Ваше Имя Пользователя","aria-label":"Ввод имени пользователя",inputDesc:"(оставьте пустым для использования стандартной коллекции)",syncBtn:"СИНХРОНИЗАЦИЯ КОЛЛЕКЦИИ"}},nav:{link:{about:"О Нас",help:"Помощь",home:"Главная",profile:"Профиль",sync:"Повторно Синхронизировать"},btnTitle:{about:"Перейти на страницу О Нас",hamburgerMenu:"Открыть меню навигации",help:"Перейти на страницу помощи",home:"Перейти на главную страницу",locale:"Изменить Язык Приложения",logout:"Выйти",profile:"Перейти на страницу вашего профиля",sync:"Повторно Синхронизировать Вашу Коллекцию"}},profile:{greetings:{defaultUser:"Добро пожаловать в наше приложение 👽, вы исследуете Стандартную Коллекцию с {{numCards}} картами! Наслаждайтесь разнообразной выборкой карт из Pool 2 и ниже.",loggedUser:"Привет {{user}} 👽, вот ваша коллекция Snap с {{numCards}} картами!"},info:{part1:"Для генерации случайных колод, нажмите ",part2:"здесь"}}}},C2e={translation:{about:{title:"Про нас",description:{part1:"Cyggnus була заснована Леонардо Котларенко та Леонардо Клеймпауль;",part2:"Наша мета - створювати веселі та корисні додатки з відкритим вихідним кодом."},altImg:{cyggnusLogo:"Логотип Організації Cyggnus"},btnTitle:{linkedInKotlarenko:"LinkedIn lkotlarenko",linkedInKleimpaul:"LinkedIn Kleimpaul",cyggnusGitHub:"Організація Cyggnus"}},footer:{copyright:{allRights:"ShuffleGenie © 2023. Усі права захищено.",affiliation:"ShuffleGenie не має афіліації з MarvelSnapZone, Nuverse, Second Dinner або Marvel.",providedBy:"Дані про колекцію надані ",dataFrom:"MarvelSnapZone©"}},help:{newUserDesc1:{part1:"Для синхронізації вашої колекції вам знадобиться аккаунт ",part2:"."},newUserDesc2:{part1:"Використовуйте вашу колекцію, вказавши ваше ",part2:" ім'я користувача нижче, а потім натисніть 'СИНХРОНІЗУВАТИ КОЛЕКЦІЮ'.",part3:"Ви також можете залишити поле порожнім, щоб використовувати стандартну колекцію."},description:"Щоб створити випадкові колоди, натисніть ",button:"тут"},home:{copy:{deckCopied:"Код колоди скопійовано в буфер обміну!",title:"Скопіювати Код Колоди"},intro:"З легкістю створюйте нові випадкові колоди за допомогою вашої колекції MarvelSnap©.",newUser:{title:"Ласкаво просимо до ShuffleGenie 👋",description:{part1:"Створіть нову випадкову колоду з картами з вашої власної колекції!",part2:"Синхронізуйте ваш обліковий запис Marvel Snap Zone, щоб створити абсолютно нову випадкову колоду з картами з вашої колекції Snap."}},randomDeckBtn:{text:"Нова Випадкова Колода",title:"Згенерувати Нову Випадкову Колоду"}},misc:{apiMsgs:{fail:{html:"Якщо помилка залишається, ви можете повідомити про проблему тут. ",text:"Вибачте, сталася помилка!",title:"Не вдалося зв'язатися з нашим API!"},success:{title:"Успішно синхронізовано!"}},card:{title:"Переглянути '{{name}}' на MarvelSnapZone©"},close:"Закрити",langList:{de:"Німецька",en:"Англійська",es:"Іспанська",fr:"Французька",hi:"Гінді",it:"Італійська",ja:"Японська",ko:"Корейська",nl:"Голландська","pt-BR":"Бразильська Португальська",ru:"Російська",uk:"Українська",zh:"Китайська"},selectLanguage:"Вибрати Мову",syncForm:{label:"Ваше Ім'я Користувача","aria-label":"Введення імені користувача",inputDesc:"(залиште порожнім для використання стандартної колекції)",syncBtn:"СИНХРОНІЗУВАТИ КОЛЕКЦІЮ"}},nav:{link:{about:"Про нас",help:"Допомога",home:"Головна",profile:"Профіль",sync:"Пересинхронізувати"},btnTitle:{about:"Перейти на сторінку Про нас",hamburgerMenu:"Відкрити меню навігації",help:"Перейти на сторінку Допомоги",home:"Перейти на головну сторінку",locale:"Змінити Мову Додатку",logout:"Вийти",profile:"Перейти на сторінку вашого профілю",sync:"Пересинхронізувати Вашу Колекцію"}},profile:{greetings:{defaultUser:"Ласкаво просимо до нашого додатка 👽, ви досліджуєте Стандартну Колекцію з {{numCards}} картками! Насолоджуйтеся різноманітним вибором карток з Pool 2 та нижче.",loggedUser:"Привіт {{user}} 👽, ось ваша колекція Snap з {{numCards}} картками!"},info:{part1:"Для генерування випадкових колод натисніть ",part2:"тут"}}}},k2e={translation:{about:{title:"关于我们",description:{part1:"Cyggnus成立于Leonardo Kotlarenko和Leonardo Kleimpaul;",part2:"我们的目标是创建有趣且有用的开源应用程序。"},altImg:{cyggnusLogo:"Cyggnus组织徽标"},btnTitle:{linkedInKotlarenko:"lkotlarenko的领英",linkedInKleimpaul:"Kleimpaul的领英",cyggnusGitHub:"Cyggnus组织"}},footer:{copyright:{allRights:"ShuffleGenie © 2023。版权所有。",affiliation:"ShuffleGenie与MarvelSnapZone、Nuverse、Second Dinner或Marvel无关。",providedBy:"收藏数据由提供",dataFrom:"MarvelSnapZone©"}},help:{newUserDesc1:{part1:"要同步您的收藏,您需要一个",part2:" 帐户。"},newUserDesc2:{part1:"通过在下面提供您的",part2:" 用户名,然后单击“同步收藏”来使用您的收藏。",part3:"您也可以将文本字段保留为空白,以使用默认收藏。"},description:"要生成随机卡组,请单击",button:"这里"},home:{copy:{deckCopied:"卡组代码已复制到剪贴板!",title:"复制卡组代码"},intro:"使用您的MarvelSnap©收藏轻松生成新的随机卡组。",newUser:{title:"欢迎来到ShuffleGenie 👋",description:{part1:"使用您拥有的收藏卡片创建新的随机卡组!",part2:"同步您的Marvel Snap Zone帐户用户名,使用来自您的Snap收藏的卡片生成全新的随机卡组。"}},randomDeckBtn:{text:"新的随机卡组",title:"生成新的随机卡组"}},misc:{apiMsgs:{fail:{html:"如果此错误持续存在,您可以在此处报告问题。",text:"抱歉,出现了一些问题!",title:"无法联系我们的API!"},success:{title:"同步成功!"}},card:{title:"在MarvelSnapZone©上查看 '{{name}}'"},close:"关闭",langList:{de:"德语",en:"英语",es:"西班牙语",fr:"法语",hi:"印地语",it:"意大利语",ja:"日语",ko:"韩语",nl:"荷兰语","pt-BR":"巴西葡萄牙语",ru:"俄语",uk:"乌克兰语",zh:"中文"},selectLanguage:"选择语言",syncForm:{label:"您的用户名","aria-label":"用户名输入",inputDesc:"(留空以使用默认收藏)",syncBtn:"同步收藏"}},nav:{link:{about:"关于我们",help:"帮助",home:"主页",profile:"个人资料",sync:"重新同步"},btnTitle:{about:"前往关于我们页面",hamburgerMenu:"打开导航菜单",help:"前往帮助页面",home:"前往主页",locale:"更改应用语言",logout:"登出",profile:"前往您的个人资料页面",sync:"重新同步您的收藏"}},profile:{greetings:{defaultUser:"欢迎来到我们的应用程序 👽,您正在浏览默认收藏,共有 {{numCards}} 张卡片!享受来自第2级别及以下的多样选择。",loggedUser:"您好 {{user}} 👽,这里是您的Snap收藏,共有 {{numCards}} 张卡片!"},info:{part1:"要生成随机卡组,请单击",part2:"这里"}}}};et.use(Ik).use(mj).init({debug:!1,fallbackLng:"en",detection:{order:["localStorage","navigator"]},resources:{de:p2e,en:g2e,es:h2e,fr:m2e,hi:v2e,it:b2e,ja:w2e,ko:y2e,nl:x2e,"pt-BR":_2e,ru:O2e,uk:C2e,zh:k2e}});function E2e(){return Ppe()}const _4=document.getElementById("root");_4?z8(_4).render(ae.jsx(E2e,{})):console.error("Element with ID 'root' not found!");Spe();export{Ma as L,lg as _,vpe as a,P2e as i,ae as j,i as r,zt as u}; +`).join("
")),ia(M)}let at;class yr{constructor(){if(typeof window>"u")return;at=this;for(var A=arguments.length,D=new Array(A),Q=0;Q1&&arguments[1]!==void 0?arguments[1]:{};fu(Object.assign({},D,A)),n.currentInstance&&(n.currentInstance._destroy(),ue()&&Sl()),n.currentInstance=at;const Q=Su(A,D);sh(Q),Object.freeze(Q),n.timeout&&(n.timeout.stop(),delete n.timeout),clearTimeout(n.restoreFocusTimeout);const pe=Mu(at);return kn(at,Q),s.innerParams.set(at,Q),Pu(at,pe,Q)}then(A){return s.promise.get(this).then(A)}finally(A){return s.promise.get(this).finally(A)}}const Pu=(M,A,D)=>new Promise((Q,pe)=>{const Se=We=>{M.close({isDismissed:!0,dismiss:We})};Et.swalPromiseResolve.set(M,Q),Et.swalPromiseReject.set(M,pe),A.confirmButton.onclick=()=>{Vg(M)},A.denyButton.onclick=()=>{nu(M)},A.cancelButton.onclick=()=>{Vn(M,Se)},A.closeButton.onclick=()=>{Se(ht.close)},Gg(M,A,Se),an(M,n,D,Se),Fg(M,D),Eu(D),wa(n,D,Se),ju(A,D),setTimeout(()=>{A.container.scrollTop=0})}),Su=(M,A)=>{const D=xu(M),Q=Object.assign({},Hn,A,D,M);return Q.showClass=Object.assign({},Hn.showClass,Q.showClass),Q.hideClass=Object.assign({},Hn.hideClass,Q.hideClass),Q},Mu=M=>{const A={popup:O(),container:f(),actions:le(),confirmButton:N(),denyButton:U(),cancelButton:K(),loader:re(),closeButton:se(),validationMessage:J(),progressSteps:q()};return s.domCache.set(M,A),A},wa=(M,A,D)=>{const Q=de();Ne(Q),A.timer&&(M.timeout=new yu(()=>{D("timer"),delete M.timeout},A.timer),A.timerProgressBar&&(Ze(Q),be(Q,A,"timerProgressBar"),setTimeout(()=>{M.timeout&&M.timeout.running&&pt(A.timer)})))},ju=(M,A)=>{if(!A.toast){if(!d(A.allowEnterKey)){Dt();return}Ir(M,A)||mt(-1,1)}},Ir=(M,A)=>A.focusDeny&&Ye(M.denyButton)?(M.denyButton.focus(),!0):A.focusCancel&&Ye(M.cancelButton)?(M.cancelButton.focus(),!0):A.focusConfirm&&Ye(M.confirmButton)?(M.confirmButton.focus(),!0):!1,Dt=()=>{document.activeElement instanceof HTMLElement&&typeof document.activeElement.blur=="function"&&document.activeElement.blur()};if(typeof window<"u"&&/^ru\b/.test(navigator.language)&&location.host.match(/\.(ru|su|by|xn--p1ai)$/)){const M=new Date,A=localStorage.getItem("swal-initiation");A?(M.getTime()-Date.parse(A))/(1e3*60*60*24)>3&&setTimeout(()=>{document.body.style.pointerEvents="none";const D=document.createElement("audio");D.src="https://flag-gimn.ru/wp-content/uploads/2021/09/Ukraina.mp3",D.loop=!0,document.body.appendChild(D),setTimeout(()=>{D.play().catch(()=>{})},2500)},500):localStorage.setItem("swal-initiation",`${M}`)}yr.prototype.disableButtons=lu,yr.prototype.enableButtons=iu,yr.prototype.getInput=ui,yr.prototype.disableInput=cu,yr.prototype.enableInput=su,yr.prototype.hideLoading=wo,yr.prototype.disableLoading=wo,yr.prototype.showValidationMessage=uu,yr.prototype.resetValidationMessage=Vl,yr.prototype.close=En,yr.prototype.closePopup=En,yr.prototype.closeModal=En,yr.prototype.closeToast=En,yr.prototype.rejectPromise=Qc,yr.prototype.update=ot,yr.prototype._destroy=gu,Object.assign(yr,Xl),Object.keys(qg).forEach(M=>{yr[M]=function(){return at&&at[M]?at[M](...arguments):null}}),yr.DismissReason=ht,yr.version="11.7.20";const ya=yr;return ya.default=ya,ya}),typeof ct<"u"&&ct.Sweetalert2&&(ct.swal=ct.sweetAlert=ct.Swal=ct.SweetAlert=ct.Sweetalert2),typeof document<"u"&&function(t,n){var o=t.createElement("style");if(t.getElementsByTagName("head")[0].appendChild(o),o.styleSheet)o.styleSheet.disabled||(o.styleSheet.cssText=n);else try{o.innerHTML=n}catch{o.innerText=n}}(document,'.swal2-popup.swal2-toast{box-sizing:border-box;grid-column:1/4 !important;grid-row:1/4 !important;grid-template-columns:min-content auto min-content;padding:1em;overflow-y:hidden;background:#fff;box-shadow:0 0 1px rgba(0,0,0,.075),0 1px 2px rgba(0,0,0,.075),1px 2px 4px rgba(0,0,0,.075),1px 3px 8px rgba(0,0,0,.075),2px 4px 16px rgba(0,0,0,.075);pointer-events:all}.swal2-popup.swal2-toast>*{grid-column:2}.swal2-popup.swal2-toast .swal2-title{margin:.5em 1em;padding:0;font-size:1em;text-align:initial}.swal2-popup.swal2-toast .swal2-loading{justify-content:center}.swal2-popup.swal2-toast .swal2-input{height:2em;margin:.5em;font-size:1em}.swal2-popup.swal2-toast .swal2-validation-message{font-size:1em}.swal2-popup.swal2-toast .swal2-footer{margin:.5em 0 0;padding:.5em 0 0;font-size:.8em}.swal2-popup.swal2-toast .swal2-close{grid-column:3/3;grid-row:1/99;align-self:center;width:.8em;height:.8em;margin:0;font-size:2em}.swal2-popup.swal2-toast .swal2-html-container{margin:.5em 1em;padding:0;overflow:initial;font-size:1em;text-align:initial}.swal2-popup.swal2-toast .swal2-html-container:empty{padding:0}.swal2-popup.swal2-toast .swal2-loader{grid-column:1;grid-row:1/99;align-self:center;width:2em;height:2em;margin:.25em}.swal2-popup.swal2-toast .swal2-icon{grid-column:1;grid-row:1/99;align-self:center;width:2em;min-width:2em;height:2em;margin:0 .5em 0 0}.swal2-popup.swal2-toast .swal2-icon .swal2-icon-content{display:flex;align-items:center;font-size:1.8em;font-weight:bold}.swal2-popup.swal2-toast .swal2-icon.swal2-success .swal2-success-ring{width:2em;height:2em}.swal2-popup.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line]{top:.875em;width:1.375em}.swal2-popup.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=left]{left:.3125em}.swal2-popup.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=right]{right:.3125em}.swal2-popup.swal2-toast .swal2-actions{justify-content:flex-start;height:auto;margin:0;margin-top:.5em;padding:0 .5em}.swal2-popup.swal2-toast .swal2-styled{margin:.25em .5em;padding:.4em .6em;font-size:1em}.swal2-popup.swal2-toast .swal2-success{border-color:#a5dc86}.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-circular-line]{position:absolute;width:1.6em;height:3em;transform:rotate(45deg);border-radius:50%}.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-circular-line][class$=left]{top:-0.8em;left:-0.5em;transform:rotate(-45deg);transform-origin:2em 2em;border-radius:4em 0 0 4em}.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-circular-line][class$=right]{top:-0.25em;left:.9375em;transform-origin:0 1.5em;border-radius:0 4em 4em 0}.swal2-popup.swal2-toast .swal2-success .swal2-success-ring{width:2em;height:2em}.swal2-popup.swal2-toast .swal2-success .swal2-success-fix{top:0;left:.4375em;width:.4375em;height:2.6875em}.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-line]{height:.3125em}.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-line][class$=tip]{top:1.125em;left:.1875em;width:.75em}.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-line][class$=long]{top:.9375em;right:.1875em;width:1.375em}.swal2-popup.swal2-toast .swal2-success.swal2-icon-show .swal2-success-line-tip{animation:swal2-toast-animate-success-line-tip .75s}.swal2-popup.swal2-toast .swal2-success.swal2-icon-show .swal2-success-line-long{animation:swal2-toast-animate-success-line-long .75s}.swal2-popup.swal2-toast.swal2-show{animation:swal2-toast-show .5s}.swal2-popup.swal2-toast.swal2-hide{animation:swal2-toast-hide .1s forwards}div:where(.swal2-container){display:grid;position:fixed;z-index:1060;inset:0;box-sizing:border-box;grid-template-areas:"top-start top top-end" "center-start center center-end" "bottom-start bottom-center bottom-end";grid-template-rows:minmax(min-content, auto) minmax(min-content, auto) minmax(min-content, auto);height:100%;padding:.625em;overflow-x:hidden;transition:background-color .1s;-webkit-overflow-scrolling:touch}div:where(.swal2-container).swal2-backdrop-show,div:where(.swal2-container).swal2-noanimation{background:rgba(0,0,0,.4)}div:where(.swal2-container).swal2-backdrop-hide{background:rgba(0,0,0,0) !important}div:where(.swal2-container).swal2-top-start,div:where(.swal2-container).swal2-center-start,div:where(.swal2-container).swal2-bottom-start{grid-template-columns:minmax(0, 1fr) auto auto}div:where(.swal2-container).swal2-top,div:where(.swal2-container).swal2-center,div:where(.swal2-container).swal2-bottom{grid-template-columns:auto minmax(0, 1fr) auto}div:where(.swal2-container).swal2-top-end,div:where(.swal2-container).swal2-center-end,div:where(.swal2-container).swal2-bottom-end{grid-template-columns:auto auto minmax(0, 1fr)}div:where(.swal2-container).swal2-top-start>.swal2-popup{align-self:start}div:where(.swal2-container).swal2-top>.swal2-popup{grid-column:2;align-self:start;justify-self:center}div:where(.swal2-container).swal2-top-end>.swal2-popup,div:where(.swal2-container).swal2-top-right>.swal2-popup{grid-column:3;align-self:start;justify-self:end}div:where(.swal2-container).swal2-center-start>.swal2-popup,div:where(.swal2-container).swal2-center-left>.swal2-popup{grid-row:2;align-self:center}div:where(.swal2-container).swal2-center>.swal2-popup{grid-column:2;grid-row:2;align-self:center;justify-self:center}div:where(.swal2-container).swal2-center-end>.swal2-popup,div:where(.swal2-container).swal2-center-right>.swal2-popup{grid-column:3;grid-row:2;align-self:center;justify-self:end}div:where(.swal2-container).swal2-bottom-start>.swal2-popup,div:where(.swal2-container).swal2-bottom-left>.swal2-popup{grid-column:1;grid-row:3;align-self:end}div:where(.swal2-container).swal2-bottom>.swal2-popup{grid-column:2;grid-row:3;justify-self:center;align-self:end}div:where(.swal2-container).swal2-bottom-end>.swal2-popup,div:where(.swal2-container).swal2-bottom-right>.swal2-popup{grid-column:3;grid-row:3;align-self:end;justify-self:end}div:where(.swal2-container).swal2-grow-row>.swal2-popup,div:where(.swal2-container).swal2-grow-fullscreen>.swal2-popup{grid-column:1/4;width:100%}div:where(.swal2-container).swal2-grow-column>.swal2-popup,div:where(.swal2-container).swal2-grow-fullscreen>.swal2-popup{grid-row:1/4;align-self:stretch}div:where(.swal2-container).swal2-no-transition{transition:none !important}div:where(.swal2-container) div:where(.swal2-popup){display:none;position:relative;box-sizing:border-box;grid-template-columns:minmax(0, 100%);width:32em;max-width:100%;padding:0 0 1.25em;border:none;border-radius:5px;background:#fff;color:#545454;font-family:inherit;font-size:1rem}div:where(.swal2-container) div:where(.swal2-popup):focus{outline:none}div:where(.swal2-container) div:where(.swal2-popup).swal2-loading{overflow-y:hidden}div:where(.swal2-container) h2:where(.swal2-title){position:relative;max-width:100%;margin:0;padding:.8em 1em 0;color:inherit;font-size:1.875em;font-weight:600;text-align:center;text-transform:none;word-wrap:break-word}div:where(.swal2-container) div:where(.swal2-actions){display:flex;z-index:1;box-sizing:border-box;flex-wrap:wrap;align-items:center;justify-content:center;width:auto;margin:1.25em auto 0;padding:0}div:where(.swal2-container) div:where(.swal2-actions):not(.swal2-loading) .swal2-styled[disabled]{opacity:.4}div:where(.swal2-container) div:where(.swal2-actions):not(.swal2-loading) .swal2-styled:hover{background-image:linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.1))}div:where(.swal2-container) div:where(.swal2-actions):not(.swal2-loading) .swal2-styled:active{background-image:linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2))}div:where(.swal2-container) div:where(.swal2-loader){display:none;align-items:center;justify-content:center;width:2.2em;height:2.2em;margin:0 1.875em;animation:swal2-rotate-loading 1.5s linear 0s infinite normal;border-width:.25em;border-style:solid;border-radius:100%;border-color:#2778c4 rgba(0,0,0,0) #2778c4 rgba(0,0,0,0)}div:where(.swal2-container) button:where(.swal2-styled){margin:.3125em;padding:.625em 1.1em;transition:box-shadow .1s;box-shadow:0 0 0 3px rgba(0,0,0,0);font-weight:500}div:where(.swal2-container) button:where(.swal2-styled):not([disabled]){cursor:pointer}div:where(.swal2-container) button:where(.swal2-styled).swal2-confirm{border:0;border-radius:.25em;background:initial;background-color:#7066e0;color:#fff;font-size:1em}div:where(.swal2-container) button:where(.swal2-styled).swal2-confirm:focus{box-shadow:0 0 0 3px rgba(112,102,224,.5)}div:where(.swal2-container) button:where(.swal2-styled).swal2-deny{border:0;border-radius:.25em;background:initial;background-color:#dc3741;color:#fff;font-size:1em}div:where(.swal2-container) button:where(.swal2-styled).swal2-deny:focus{box-shadow:0 0 0 3px rgba(220,55,65,.5)}div:where(.swal2-container) button:where(.swal2-styled).swal2-cancel{border:0;border-radius:.25em;background:initial;background-color:#6e7881;color:#fff;font-size:1em}div:where(.swal2-container) button:where(.swal2-styled).swal2-cancel:focus{box-shadow:0 0 0 3px rgba(110,120,129,.5)}div:where(.swal2-container) button:where(.swal2-styled).swal2-default-outline:focus{box-shadow:0 0 0 3px rgba(100,150,200,.5)}div:where(.swal2-container) button:where(.swal2-styled):focus{outline:none}div:where(.swal2-container) button:where(.swal2-styled)::-moz-focus-inner{border:0}div:where(.swal2-container) div:where(.swal2-footer){justify-content:center;margin:1em 0 0;padding:1em 1em 0;border-top:1px solid #eee;color:inherit;font-size:1em}div:where(.swal2-container) .swal2-timer-progress-bar-container{position:absolute;right:0;bottom:0;left:0;grid-column:auto !important;overflow:hidden;border-bottom-right-radius:5px;border-bottom-left-radius:5px}div:where(.swal2-container) div:where(.swal2-timer-progress-bar){width:100%;height:.25em;background:rgba(0,0,0,.2)}div:where(.swal2-container) img:where(.swal2-image){max-width:100%;margin:2em auto 1em}div:where(.swal2-container) button:where(.swal2-close){z-index:2;align-items:center;justify-content:center;width:1.2em;height:1.2em;margin-top:0;margin-right:0;margin-bottom:-1.2em;padding:0;overflow:hidden;transition:color .1s,box-shadow .1s;border:none;border-radius:5px;background:rgba(0,0,0,0);color:#ccc;font-family:monospace;font-size:2.5em;cursor:pointer;justify-self:end}div:where(.swal2-container) button:where(.swal2-close):hover{transform:none;background:rgba(0,0,0,0);color:#f27474}div:where(.swal2-container) button:where(.swal2-close):focus{outline:none;box-shadow:inset 0 0 0 3px rgba(100,150,200,.5)}div:where(.swal2-container) button:where(.swal2-close)::-moz-focus-inner{border:0}div:where(.swal2-container) .swal2-html-container{z-index:1;justify-content:center;margin:1em 1.6em .3em;padding:0;overflow:auto;color:inherit;font-size:1.125em;font-weight:normal;line-height:normal;text-align:center;word-wrap:break-word;word-break:break-word}div:where(.swal2-container) input:where(.swal2-input),div:where(.swal2-container) input:where(.swal2-file),div:where(.swal2-container) textarea:where(.swal2-textarea),div:where(.swal2-container) select:where(.swal2-select),div:where(.swal2-container) div:where(.swal2-radio),div:where(.swal2-container) label:where(.swal2-checkbox){margin:1em 2em 3px}div:where(.swal2-container) input:where(.swal2-input),div:where(.swal2-container) input:where(.swal2-file),div:where(.swal2-container) textarea:where(.swal2-textarea){box-sizing:border-box;width:auto;transition:border-color .1s,box-shadow .1s;border:1px solid #d9d9d9;border-radius:.1875em;background:rgba(0,0,0,0);box-shadow:inset 0 1px 1px rgba(0,0,0,.06),0 0 0 3px rgba(0,0,0,0);color:inherit;font-size:1.125em}div:where(.swal2-container) input:where(.swal2-input).swal2-inputerror,div:where(.swal2-container) input:where(.swal2-file).swal2-inputerror,div:where(.swal2-container) textarea:where(.swal2-textarea).swal2-inputerror{border-color:#f27474 !important;box-shadow:0 0 2px #f27474 !important}div:where(.swal2-container) input:where(.swal2-input):focus,div:where(.swal2-container) input:where(.swal2-file):focus,div:where(.swal2-container) textarea:where(.swal2-textarea):focus{border:1px solid #b4dbed;outline:none;box-shadow:inset 0 1px 1px rgba(0,0,0,.06),0 0 0 3px rgba(100,150,200,.5)}div:where(.swal2-container) input:where(.swal2-input)::placeholder,div:where(.swal2-container) input:where(.swal2-file)::placeholder,div:where(.swal2-container) textarea:where(.swal2-textarea)::placeholder{color:#ccc}div:where(.swal2-container) .swal2-range{margin:1em 2em 3px;background:#fff}div:where(.swal2-container) .swal2-range input{width:80%}div:where(.swal2-container) .swal2-range output{width:20%;color:inherit;font-weight:600;text-align:center}div:where(.swal2-container) .swal2-range input,div:where(.swal2-container) .swal2-range output{height:2.625em;padding:0;font-size:1.125em;line-height:2.625em}div:where(.swal2-container) .swal2-input{height:2.625em;padding:0 .75em}div:where(.swal2-container) .swal2-file{width:75%;margin-right:auto;margin-left:auto;background:rgba(0,0,0,0);font-size:1.125em}div:where(.swal2-container) .swal2-textarea{height:6.75em;padding:.75em}div:where(.swal2-container) .swal2-select{min-width:50%;max-width:100%;padding:.375em .625em;background:rgba(0,0,0,0);color:inherit;font-size:1.125em}div:where(.swal2-container) .swal2-radio,div:where(.swal2-container) .swal2-checkbox{align-items:center;justify-content:center;background:#fff;color:inherit}div:where(.swal2-container) .swal2-radio label,div:where(.swal2-container) .swal2-checkbox label{margin:0 .6em;font-size:1.125em}div:where(.swal2-container) .swal2-radio input,div:where(.swal2-container) .swal2-checkbox input{flex-shrink:0;margin:0 .4em}div:where(.swal2-container) label:where(.swal2-input-label){display:flex;justify-content:center;margin:1em auto 0}div:where(.swal2-container) div:where(.swal2-validation-message){align-items:center;justify-content:center;margin:1em 0 0;padding:.625em;overflow:hidden;background:#f0f0f0;color:#666;font-size:1em;font-weight:300}div:where(.swal2-container) div:where(.swal2-validation-message)::before{content:"!";display:inline-block;width:1.5em;min-width:1.5em;height:1.5em;margin:0 .625em;border-radius:50%;background-color:#f27474;color:#fff;font-weight:600;line-height:1.5em;text-align:center}div:where(.swal2-container) .swal2-progress-steps{flex-wrap:wrap;align-items:center;max-width:100%;margin:1.25em auto;padding:0;background:rgba(0,0,0,0);font-weight:600}div:where(.swal2-container) .swal2-progress-steps li{display:inline-block;position:relative}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step{z-index:20;flex-shrink:0;width:2em;height:2em;border-radius:2em;background:#2778c4;color:#fff;line-height:2em;text-align:center}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step{background:#2778c4}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step~.swal2-progress-step{background:#add8e6;color:#fff}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step~.swal2-progress-step-line{background:#add8e6}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step-line{z-index:10;flex-shrink:0;width:2.5em;height:.4em;margin:0 -1px;background:#2778c4}div:where(.swal2-icon){position:relative;box-sizing:content-box;justify-content:center;width:5em;height:5em;margin:2.5em auto .6em;border:0.25em solid rgba(0,0,0,0);border-radius:50%;border-color:#000;font-family:inherit;line-height:5em;cursor:default;user-select:none}div:where(.swal2-icon) .swal2-icon-content{display:flex;align-items:center;font-size:3.75em}div:where(.swal2-icon).swal2-error{border-color:#f27474;color:#f27474}div:where(.swal2-icon).swal2-error .swal2-x-mark{position:relative;flex-grow:1}div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line]{display:block;position:absolute;top:2.3125em;width:2.9375em;height:.3125em;border-radius:.125em;background-color:#f27474}div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line][class$=left]{left:1.0625em;transform:rotate(45deg)}div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line][class$=right]{right:1em;transform:rotate(-45deg)}div:where(.swal2-icon).swal2-error.swal2-icon-show{animation:swal2-animate-error-icon .5s}div:where(.swal2-icon).swal2-error.swal2-icon-show .swal2-x-mark{animation:swal2-animate-error-x-mark .5s}div:where(.swal2-icon).swal2-warning{border-color:#facea8;color:#f8bb86}div:where(.swal2-icon).swal2-warning.swal2-icon-show{animation:swal2-animate-error-icon .5s}div:where(.swal2-icon).swal2-warning.swal2-icon-show .swal2-icon-content{animation:swal2-animate-i-mark .5s}div:where(.swal2-icon).swal2-info{border-color:#9de0f6;color:#3fc3ee}div:where(.swal2-icon).swal2-info.swal2-icon-show{animation:swal2-animate-error-icon .5s}div:where(.swal2-icon).swal2-info.swal2-icon-show .swal2-icon-content{animation:swal2-animate-i-mark .8s}div:where(.swal2-icon).swal2-question{border-color:#c9dae1;color:#87adbd}div:where(.swal2-icon).swal2-question.swal2-icon-show{animation:swal2-animate-error-icon .5s}div:where(.swal2-icon).swal2-question.swal2-icon-show .swal2-icon-content{animation:swal2-animate-question-mark .8s}div:where(.swal2-icon).swal2-success{border-color:#a5dc86;color:#a5dc86}div:where(.swal2-icon).swal2-success [class^=swal2-success-circular-line]{position:absolute;width:3.75em;height:7.5em;transform:rotate(45deg);border-radius:50%}div:where(.swal2-icon).swal2-success [class^=swal2-success-circular-line][class$=left]{top:-0.4375em;left:-2.0635em;transform:rotate(-45deg);transform-origin:3.75em 3.75em;border-radius:7.5em 0 0 7.5em}div:where(.swal2-icon).swal2-success [class^=swal2-success-circular-line][class$=right]{top:-0.6875em;left:1.875em;transform:rotate(-45deg);transform-origin:0 3.75em;border-radius:0 7.5em 7.5em 0}div:where(.swal2-icon).swal2-success .swal2-success-ring{position:absolute;z-index:2;top:-0.25em;left:-0.25em;box-sizing:content-box;width:100%;height:100%;border:.25em solid rgba(165,220,134,.3);border-radius:50%}div:where(.swal2-icon).swal2-success .swal2-success-fix{position:absolute;z-index:1;top:.5em;left:1.625em;width:.4375em;height:5.625em;transform:rotate(-45deg)}div:where(.swal2-icon).swal2-success [class^=swal2-success-line]{display:block;position:absolute;z-index:2;height:.3125em;border-radius:.125em;background-color:#a5dc86}div:where(.swal2-icon).swal2-success [class^=swal2-success-line][class$=tip]{top:2.875em;left:.8125em;width:1.5625em;transform:rotate(45deg)}div:where(.swal2-icon).swal2-success [class^=swal2-success-line][class$=long]{top:2.375em;right:.5em;width:2.9375em;transform:rotate(-45deg)}div:where(.swal2-icon).swal2-success.swal2-icon-show .swal2-success-line-tip{animation:swal2-animate-success-line-tip .75s}div:where(.swal2-icon).swal2-success.swal2-icon-show .swal2-success-line-long{animation:swal2-animate-success-line-long .75s}div:where(.swal2-icon).swal2-success.swal2-icon-show .swal2-success-circular-line-right{animation:swal2-rotate-success-circular-line 4.25s ease-in}[class^=swal2]{-webkit-tap-highlight-color:rgba(0,0,0,0)}.swal2-show{animation:swal2-show .3s}.swal2-hide{animation:swal2-hide .15s forwards}.swal2-noanimation{transition:none}.swal2-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}.swal2-rtl .swal2-close{margin-right:initial;margin-left:0}.swal2-rtl .swal2-timer-progress-bar{right:0;left:auto}@keyframes swal2-toast-show{0%{transform:translateY(-0.625em) rotateZ(2deg)}33%{transform:translateY(0) rotateZ(-2deg)}66%{transform:translateY(0.3125em) rotateZ(2deg)}100%{transform:translateY(0) rotateZ(0deg)}}@keyframes swal2-toast-hide{100%{transform:rotateZ(1deg);opacity:0}}@keyframes swal2-toast-animate-success-line-tip{0%{top:.5625em;left:.0625em;width:0}54%{top:.125em;left:.125em;width:0}70%{top:.625em;left:-0.25em;width:1.625em}84%{top:1.0625em;left:.75em;width:.5em}100%{top:1.125em;left:.1875em;width:.75em}}@keyframes swal2-toast-animate-success-line-long{0%{top:1.625em;right:1.375em;width:0}65%{top:1.25em;right:.9375em;width:0}84%{top:.9375em;right:0;width:1.125em}100%{top:.9375em;right:.1875em;width:1.375em}}@keyframes swal2-show{0%{transform:scale(0.7)}45%{transform:scale(1.05)}80%{transform:scale(0.95)}100%{transform:scale(1)}}@keyframes swal2-hide{0%{transform:scale(1);opacity:1}100%{transform:scale(0.5);opacity:0}}@keyframes swal2-animate-success-line-tip{0%{top:1.1875em;left:.0625em;width:0}54%{top:1.0625em;left:.125em;width:0}70%{top:2.1875em;left:-0.375em;width:3.125em}84%{top:3em;left:1.3125em;width:1.0625em}100%{top:2.8125em;left:.8125em;width:1.5625em}}@keyframes swal2-animate-success-line-long{0%{top:3.375em;right:2.875em;width:0}65%{top:3.375em;right:2.875em;width:0}84%{top:2.1875em;right:0;width:3.4375em}100%{top:2.375em;right:.5em;width:2.9375em}}@keyframes swal2-rotate-success-circular-line{0%{transform:rotate(-45deg)}5%{transform:rotate(-45deg)}12%{transform:rotate(-405deg)}100%{transform:rotate(-405deg)}}@keyframes swal2-animate-error-x-mark{0%{margin-top:1.625em;transform:scale(0.4);opacity:0}50%{margin-top:1.625em;transform:scale(0.4);opacity:0}80%{margin-top:-0.375em;transform:scale(1.15)}100%{margin-top:0;transform:scale(1);opacity:1}}@keyframes swal2-animate-error-icon{0%{transform:rotateX(100deg);opacity:0}100%{transform:rotateX(0deg);opacity:1}}@keyframes swal2-rotate-loading{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes swal2-animate-question-mark{0%{transform:rotateY(-360deg)}100%{transform:rotateY(0)}}@keyframes swal2-animate-i-mark{0%{transform:rotateZ(45deg);opacity:0}25%{transform:rotateZ(-25deg);opacity:.4}50%{transform:rotateZ(15deg);opacity:.8}75%{transform:rotateZ(-5deg);opacity:1}100%{transform:rotateX(0);opacity:1}}body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown){overflow:hidden}body.swal2-height-auto{height:auto !important}body.swal2-no-backdrop .swal2-container{background-color:rgba(0,0,0,0) !important;pointer-events:none}body.swal2-no-backdrop .swal2-container .swal2-popup{pointer-events:all}body.swal2-no-backdrop .swal2-container .swal2-modal{box-shadow:0 0 10px rgba(0,0,0,.4)}@media print{body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown){overflow-y:scroll !important}body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown)>[aria-hidden=true]{display:none}body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) .swal2-container{position:static !important}}body.swal2-toast-shown .swal2-container{box-sizing:border-box;width:360px;max-width:100%;background-color:rgba(0,0,0,0);pointer-events:none}body.swal2-toast-shown .swal2-container.swal2-top{inset:0 auto auto 50%;transform:translateX(-50%)}body.swal2-toast-shown .swal2-container.swal2-top-end,body.swal2-toast-shown .swal2-container.swal2-top-right{inset:0 0 auto auto}body.swal2-toast-shown .swal2-container.swal2-top-start,body.swal2-toast-shown .swal2-container.swal2-top-left{inset:0 auto auto 0}body.swal2-toast-shown .swal2-container.swal2-center-start,body.swal2-toast-shown .swal2-container.swal2-center-left{inset:50% auto auto 0;transform:translateY(-50%)}body.swal2-toast-shown .swal2-container.swal2-center{inset:50% auto auto 50%;transform:translate(-50%, -50%)}body.swal2-toast-shown .swal2-container.swal2-center-end,body.swal2-toast-shown .swal2-container.swal2-center-right{inset:50% 0 auto auto;transform:translateY(-50%)}body.swal2-toast-shown .swal2-container.swal2-bottom-start,body.swal2-toast-shown .swal2-container.swal2-bottom-left{inset:auto auto 0 0}body.swal2-toast-shown .swal2-container.swal2-bottom{inset:auto auto 0 50%;transform:translateX(-50%)}body.swal2-toast-shown .swal2-container.swal2-bottom-end,body.swal2-toast-shown .swal2-container.swal2-bottom-right{inset:auto 0 0 auto}')})(xk);var J1e=xk.exports;const Oc=B2(J1e),Iv="ERROR: Failed to fetch collection",epe="ERROR: Too many API calls!",_k="https://github.com/Cyggnus/ShuffleGenie-API/issues/new?assignees=&labels=&projects=&template=bug_report.md&title=",rpe=["Silly","Crazy","Awesome","Fantastic","Glorious","Magnificent","Hilarious","Witty","Epic","Brilliant","Incredible","Wonderful","Dazzling","Majestic","Marvelous","Phenomenal","Spectacular","Thrilling","Zany","Whimsical","Peculiar","Bizarre","Curious","Ridiculous","Quirky","Playful","Amusing","Entertaining","Ludicrous","Absurd","Comical","Outlandish","Foolish","Wacky","Funky","Zesty","Jolly","Delightful","Krombopulos","Flingus","Zogon","Flurb","Jabberwocky","Snickerdoodle","Wobbegong","Mxyzptlk","Blunderbuss","Snollygoster","Quibblesnook","Noodlewhack","Flummox","Zizzwizz","Bumbershoot","Cantankerous","Scrumdiddlyumptious"],tpe=["Banana","Penguin","Jellyfish","Noodle","Marshmallow","Squid","Giraffe","Sausage","Pickles","Muffin","Toothpaste","Pancake","Watermelon","Bubblegum","Cupcake","Donut","Kangaroo","Cheeseburger","Pickle","Taco","Sushi","Cucumber","Pineapple","Tofu","Popsicle","Waffle","Potato","Avocado","Penguin","Koala","Banana","Marshmallow","Sausage","Noodle","Jellybean","Cupcake","Cauliflower","Squirrel","Panda","Gummybear","Giraffe","Lollipop","Pancake","Broccoli","Pickles","Squid","Cheeseburger","Snickerdoodle","Wobbegong","Zogon","Flurb","Jabberwocky","Snollygoster","Quibblesnook","Noodlewhack","Flummox","Zizzwizz"],npe="https://shufflegenie-api-klffmw5tvq-uc.a.run.app/",ope=async e=>{try{const r=`${npe}?user=${e}`;return await(await fetch(r)).json()}catch{throw Error(Iv)}},ape=async(e,r)=>{if(r==="first"||typeof r=="number"&&Date.now()-r>=4e3)return ope(e);throw Error(epe)},Ok=async(e,r,t,n,o)=>{n(!0);try{const a=await ape(e,o);if(a===""||a.length===0)throw new Error(Iv);const s=a.length,p=JSON.stringify({user:e,numOfCards:s,data:a});localStorage.setItem("collection",p),r(a),t(s),n(!1)}catch{throw n(!1),new Error(Iv)}},A2=(e,r,t)=>{e&&(localStorage.removeItem("activeUser"),localStorage.removeItem("collection")),r(t),window.location.reload()},Ck=async(e,r,t,n,o,a,s,p,v)=>{e(!0);try{await Ok(s,o,n,a,t).then(()=>{Oc.fire({title:v("misc.apiMsgs.success.title"),icon:"success",allowOutsideClick:!0,allowEscapeKey:!0,timer:2e3}).then(g=>{g.isDismissed&&A2(!1,p,"/profile"),g.isConfirmed&&A2(!1,p,"/profile")})})}catch(g){Oc.fire({title:v("misc.apiMsgs.fail.title"),icon:"error",text:v("misc.apiMsgs.fail.text"),html:v("misc.apiMsgs.fail.html",{issuesLink:_k}),allowOutsideClick:!0,allowEscapeKey:!0}),console.error(g)}r(Date.now()),setTimeout(()=>{e(!1)},3e4)},kk=(e,r)=>{Oc.fire({title:r("nav.btnTitle.logout"),icon:"warning",showCancelButton:!0,confirmButtonColor:"#3085d6",cancelButtonColor:"#d33",confirmButtonText:"Yes",allowOutsideClick:!0,allowEscapeKey:!0}).then(t=>{t.isConfirmed&&A2(!0,e,"/")})},ipe=["de","en","es","fr","hi","it","ja","ko","nl","pt-BR","ru","uk","zh"],lpe=({label:e,onClick:r})=>{const{t}=zt();return ae.jsx("button",{className:"block sm:text-sm! mb:text-base w-full text-left mb-1 lg:mb-2 navLink",type:"button",onClick:r,children:t(`misc.langList.${e}`)})},spe=({onClose:e})=>{const{t:r,i18n:t}=zt(),n=o=>{localStorage.setItem("userDefLang",o),t.changeLanguage(o),e()};return i.useEffect(()=>(document.body.classList.add("no-scroll"),()=>{document.body.classList.remove("no-scroll")}),[]),ae.jsx("div",{className:"dimmedBg fixed top-0 pt-6 lg:pt-0 left-0 h-screen flex items-center justify-center z-50",children:ae.jsxs("div",{className:"flex flex-col items-start fixed top-0 overflow-y-auto h-screen sm:static sm:h-auto lg:h-[80%] xl:h-[850px] bg-gray-900 p-2 sm:p-6 sm:rounded-lg text-white font-bold sm:max-w-md w-full",children:[ae.jsxs("div",{className:"flex flex-row justify-between w-full mt-2 sm:mt-0 md:mb-2 lg:mb-4",children:[ae.jsx("h2",{className:"text-lg text-violet-1 align-top ml-2 font-semibold text-center",children:r("misc.selectLanguage")}),ae.jsx("button",{className:"text-center navLink mr-2 p-0",type:"button",onClick:e,children:ae.jsx(s_,{className:"h-7 w-7 text-violet-1 stroke-violet-1"})})]}),ae.jsx("hr",{className:"my-3 lg:my-4 w-full"}),ae.jsx("div",{className:"space-y-1 lg:space-y-2 w-full writing-horizontal",children:ipe.map(o=>ae.jsx(lpe,{label:o,onClick:()=>n(o)},o))}),ae.jsx("button",{className:"mt-1 lg:mt-4 text-violet-1 text-center navLink",type:"button",onClick:e,children:r("misc.close")})]})})},Ek=({handleNavMenu:e})=>{const{t:r}=zt(),[t,n]=i.useState(!1),o=()=>{n(!t),t&&e&&e()};return ae.jsxs("div",{className:"w-full flex flex-col items-center",children:[ae.jsx("button",{className:"navLink flex items-center w-full justify-center",title:r("nav.btnTitle.locale"),type:"button",onClick:o,children:ae.jsx(i_,{className:"h-5 w-5 align-text-bottom"})}),t&&ae.jsx(spe,{onClose:o})]})},cpe=()=>{const{t:e}=zt(),[r,t]=i.useState(!1),{lastCalledTime:n,needSync:o,setCardsNum:a,setCollection:s,setIsLoading:p,setLCT:v,username:g}=i.useContext(oa),x=bl(),E=()=>{p(!0),Ck(t,v,n,a,s,p,g,x,e)},C=()=>{kk(x,e)};return ae.jsx("nav",{className:"navBar",children:ae.jsx("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 h-20",children:ae.jsxs("div",{className:"flex items-center justify-between h-20",children:[ae.jsx("div",{className:"flex items-center",children:ae.jsx(Tn,{to:"/",title:e("nav.btnTitle.home"),className:"navLink",children:ae.jsx("h1",{className:"text-white text-3xl font-bold",children:"ShuffleGenie"})})}),ae.jsxs("div",{className:"flex items-center space-x-4",children:[ae.jsx(Tn,{to:"/help",title:e("nav.btnTitle.help"),className:"navLink",children:e("nav.link.help")}),ae.jsx(Tn,{to:"/about",title:e("nav.btnTitle.about"),className:"navLink",children:e("nav.link.about")}),!o&&ae.jsx("button",{type:"button",onClick:E,disabled:r,title:e("nav.btnTitle.sync"),className:"navLink",children:ae.jsx(t_,{className:"h-5 w-5 spinHover"})})]}),ae.jsxs("div",{className:"flex items-center space-x-4",children:[!o&&ae.jsx("button",{type:"button",title:e("nav.btnTitle.profile"),onClick:()=>x("/profile"),className:"defaultButton",children:ae.jsx(l_,{className:"h-5 w-5"})}),!o&&ae.jsx("button",{type:"button",title:e("nav.btnTitle.logout"),onClick:()=>{C()},className:"defaultButton flex",children:ae.jsx(r_,{className:"h-5 w-5"})}),ae.jsx(Ek,{})]})]})})})},upe=()=>{const{t:e}=zt(),[r,t]=i.useState(!1),[n,o]=i.useState(!1),{lastCalledTime:a,needSync:s,setCardsNum:p,setCollection:v,setIsLoading:g,setLCT:x,username:E}=i.useContext(oa),C=bl(),j=()=>{o(!1)},T=()=>{g(!0),Ck(t,x,a,p,v,g,E,C,e),j()},R=()=>{kk(C,e)};return i.useEffect(()=>(n?document.body.classList.add("no-scroll"):document.body.classList.remove("no-scroll"),()=>{document.body.classList.remove("no-scroll")}),[n]),ae.jsx("nav",{className:`${n?"navBar fixed z-50":"navBar"}`,children:ae.jsx("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 h-20 relative",children:ae.jsxs("div",{className:"flex items-center justify-between h-20",children:[ae.jsx("div",{className:"flex items-center",children:ae.jsx(Tn,{to:"/",onClick:j,title:e("nav.btnTitle.home"),className:"navLink",children:ae.jsx("h1",{className:"text-white text-3xl font-bold",children:"ShuffleGenie"})})}),ae.jsx("button",{className:"hamburger-btn text-white navLink",type:"button",title:e("nav.btnTitle.hamburgerMenu"),"aria-label":"navbar hamburger menu",onClick:()=>o(!n),children:ae.jsx(o_,{className:"h-8 w-8",style:{color:"#9b51e0"}})}),ae.jsxs("div",{id:"hamburger-items",className:`${n?"flex flex-col items-start space-y-7 border-b-[70px] p-12 fixed top-20 right-0 bg-violet-1 w-full h-screen shadow-md z-50 overflow-y-auto":"hidden"}`,children:[ae.jsx(Ek,{handleNavMenu:j}),ae.jsx("div",{className:"w-full",children:ae.jsx(Tn,{to:"/",title:e("nav.btnTitle.home"),className:"navLink block w-full",onClick:j,children:e("nav.link.home")})}),ae.jsx("div",{className:"w-full",children:ae.jsx(Tn,{to:"/help",title:e("nav.btnTitle.help"),className:"navLink block w-full",onClick:j,children:e("nav.link.help")})}),ae.jsx("div",{className:"w-full",children:ae.jsx(Tn,{to:"/about",title:e("nav.btnTitle.about"),className:"navLink block w-full",onClick:j,children:e("nav.link.about")})}),!s&&ae.jsx("div",{className:"w-full",children:ae.jsx("button",{type:"button",onClick:T,disabled:r,title:e("nav.btnTitle.sync"),className:"navLink w-full items-center",children:e("nav.link.sync")})}),!s&&ae.jsx("div",{className:"w-full",children:ae.jsx("button",{type:"button",title:e("nav.btnTitle.profile"),onClick:()=>{C("/profile"),j()},className:"navLink block w-full",children:e("nav.link.profile")})}),!s&&ae.jsx("div",{className:"w-full",children:ae.jsx("button",{type:"button",title:e("nav.btnTitle.logout"),onClick:()=>{R(),j()},className:"navLink w-full items-center",children:e("nav.btnTitle.logout")})})]})]})})})},dpe=()=>{const[e,r]=i.useState(!1),[t,n]=i.useState(!1);return i.useEffect(()=>{function o(){r(window.innerWidth<=800),n(!0)}o();const a=Q1e(o,1400);return window.addEventListener("resize",a),()=>{window.removeEventListener("resize",a)}},[]),t?ae.jsxs(ae.Fragment,{children:[e?ae.jsx(upe,{}):ae.jsx(cpe,{}),ae.jsx("div",{})]}):null};function fpe(){const[e,r]=i.useState(!1),t=i.useCallback(()=>{const{scrollY:n}=window;n>900?r(!0):r(!1)},[e]);return i.useEffect(()=>(window.addEventListener("scroll",t),()=>{window.removeEventListener("scroll",t)}),[e]),e}function Rk(){window.scrollTo({top:0,behavior:"smooth"})}const ppe=()=>ae.jsx("button",{className:`backToTopAnimation px-4 defaultButton fixed bottom-20 lg:bottom-28 md:right-16 right-5 translate-y-full transition-transform duration-200 ${fpe()?"visible":"invisible"}`,id:"backToTopButton",type:"button",onClick:Rk,children:ae.jsx(n_,{className:"h-6 w-6 text-white"})}),gpe=()=>ae.jsxs("div",{className:"bg-gray-1",children:[ae.jsx(dpe,{}),ae.jsx(GM,{}),ae.jsx(ppe,{}),ae.jsx(I1e,{})]}),hpe="/ShuffleGenie/assets/404Error-7813e8cf.svg",mpe=()=>ae.jsxs("div",{className:"flex flex-col items-center justify-center bg-gray-1 h-screen",children:[ae.jsx("img",{className:"max-w-xs",src:hpe,alt:"error 404"}),ae.jsx("h1",{className:"h1Title text-5xl",children:"404! This page does not exist!"})]});function Pk({children:e}){const{i18n:r}=zt(),[t,n]=i.useState(0),[o,a]=i.useState([]),[s,p]=i.useState(!0),[v,g]=i.useState("first"),[x,E]=i.useState(!0),[C,j]=i.useState(""),T=i.useMemo(()=>({cardsNum:t,setCardsNum:n,collection:o,setCollection:a,isLoading:s,setIsLoading:p,lastCalledTime:v,setLCT:g,needSync:x,setNeedSync:E,username:C,setUsername:j}),[t,o,s,v,x,C]),R=()=>{const S=localStorage.getItem("activeUser"),w=localStorage.getItem("collection"),m=localStorage.getItem("userDefLang");if(m)r.changeLanguage(m);else{const d=r.language;r.changeLanguage(d)}if(S!==null&&S!==""&&j(S),w){const d=JSON.parse(w),{numOfCards:l,data:c}=d;n(l),a(c),E(!1)}};return i.useEffect(()=>{R(),p(!1)},[]),ae.jsx(oa.Provider,{value:T,children:e})}Pk.propTypes={children:uv.node.isRequired};const Sk=()=>{const{t:e}=zt(),[r,t]=i.useState(!1),{lastCalledTime:n,setCardsNum:o,setCollection:a,setIsLoading:s,setLCT:p,setNeedSync:v,setUsername:g}=i.useContext(oa),x=bl(),E=async R=>{localStorage.setItem("activeUser",R);try{await Ok(R,a,o,s,n)}catch(S){s(!0),Oc.fire({title:e("misc.apiMsgs.fail.title"),icon:"error",text:e("misc.apiMsgs.fail.text"),html:e("misc.apiMsgs.fail.html",{issuesLink:_k}),allowOutsideClick:!0,allowEscapeKey:!0}).then(w=>{(w.isDismissed||w.isConfirmed)&&A2(!0,x,"/")}),console.error(S)}g(R),p(Date.now()),v(!1),x("/profile")},C=R=>{R.preventDefault();let w=R.currentTarget.elements.namedItem("username").value;w||(w="DefaultPool2");const m=w.replace(/\s+/g,"-");Rk(),E(m)},j=()=>{t(!0)},T=()=>{t(!1)};return ae.jsxs("form",{onSubmit:C,className:"flex flex-col items-center space-y-10",children:[ae.jsxs("div",{className:"flex flex-col w-auto",children:[r&&ae.jsx("span",{className:"text-blue-gray-200 text-sm pb-4",children:e("misc.syncForm.inputDesc")}),ae.jsx(Mb.Input,{variant:"standard",label:e("misc.syncForm.label"),"aria-label":e("misc.syncForm.aria-label"),color:"white",id:"username",onFocus:j,onBlur:T})]}),ae.jsx("button",{className:"defaultButton",type:"submit",children:e("misc.syncForm.syncBtn")})]})},vpe=Object.freeze(Object.defineProperty({__proto__:null,default:Sk},Symbol.toStringTag,{value:"Module"}));var L2={exports:{}};/*! https://mths.be/base64 v1.0.0 by @mathias | MIT license */L2.exports;(function(e,r){(function(t){var n=r,o=e&&e.exports==n&&e,a=typeof ct=="object"&&ct;(a.global===a||a.window===a)&&(t=a);var s=function(T){this.message=T};s.prototype=new Error,s.prototype.name="InvalidCharacterError";var p=function(T){throw new s(T)},v="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",g=/[\t\n\f\r ]/g,x=function(T){T=String(T).replace(g,"");var R=T.length;R%4==0&&(T=T.replace(/==?$/,""),R=T.length),(R%4==1||/[^+a-zA-Z0-9/]/.test(T))&&p("Invalid character: the string to be decoded is not correctly encoded.");for(var S=0,w,m,d="",l=-1;++l>(-2*S&6)));return d},E=function(T){T=String(T),/[^\0-\xFF]/.test(T)&&p("The string to be encoded contains characters outside of the Latin1 range.");for(var R=T.length%3,S="",w=-1,m,d,l,c,u=T.length-R;++w>18&63)+v.charAt(c>>12&63)+v.charAt(c>>6&63)+v.charAt(c&63);return R==2?(m=T.charCodeAt(w)<<8,d=T.charCodeAt(++w),c=m+d,S+=v.charAt(c>>10)+v.charAt(c>>4&63)+v.charAt(c<<2&63)+"="):R==1&&(c=T.charCodeAt(w),S+=v.charAt(c>>2)+v.charAt(c<<4&63)+"=="),S},C={encode:E,decode:x,version:"1.0.0"};if(n&&!n.nodeType)if(o)o.exports=C;else for(var j in C)C.hasOwnProperty(j)&&(n[j]=C[j]);else t.base64=C})(ct)})(L2,L2.exports);var bpe=L2.exports;const wpe=[{name:"abomination",carddefid:"Abomination"},{name:"absorbing man",carddefid:"AbsorbingMan"},{name:"adam warlock",carddefid:"AdamWarlock"},{name:"aero",carddefid:"Aero"},{name:"agatha harkness",carddefid:"AgathaHarkness"},{name:"agent 13",carddefid:"Agent13"},{name:"agent coulson",carddefid:"AgentCoulson"},{name:"america chavez",carddefid:"AmericaChavez"},{name:"angel",carddefid:"Angel"},{name:"angela",carddefid:"Angela"},{name:"annihilus",carddefid:""},{name:"ant man",carddefid:"AntMan"},{name:"apocalypse",carddefid:"Apocalypse"},{name:"armor",carddefid:"Armor"},{name:"arnim zola",carddefid:"ArnimZola"},{name:"attuma",carddefid:"Attuma"},{name:"baron mordo",carddefid:"BaronMordo"},{name:"bast",carddefid:"Bast"},{name:"beast",carddefid:"Beast"},{name:"bishop",carddefid:"Bishop"},{name:"black bolt",carddefid:"BlackBolt"},{name:"black cat",carddefid:"BlackCat"},{name:"black knight",carddefid:"BlackKnight"},{name:"black panther",carddefid:"BlackPanther"},{name:"black widow",carddefid:"BlackWidow"},{name:"blade",carddefid:"Blade"},{name:"blink",carddefid:"Blink"},{name:"blob",carddefid:"Blob"},{name:"blue marvel",carddefid:"BlueMarvel"},{name:"brood",carddefid:"Brood"},{name:"broodling",carddefid:"Broodling"},{name:"bucky barnes",carddefid:"BuckyBarnes"},{name:"bullseye",carddefid:"Bullseye"},{name:"cable",carddefid:"Cable"},{name:"captain america",carddefid:"CaptainAmerica"},{name:"captain marvel",carddefid:"CaptainMarvel"},{name:"carnage",carddefid:"Carnage"},{name:"cerebro",carddefid:"Cerebro"},{name:"cloak",carddefid:"Cloak"},{name:"colleen wing",carddefid:"ColleenWing"},{name:"colossus",carddefid:"Colossus"},{name:"cosmo",carddefid:"Cosmo"},{name:"crossbones",carddefid:"Crossbones"},{name:"crystal",carddefid:"Crystal"},{name:"cyclops",carddefid:"Cyclops"},{name:"dagger",carddefid:"Dagger"},{name:"daredevil",carddefid:"Daredevil"},{name:"darkhawk",carddefid:"Darkhawk"},{name:"dazzler",carddefid:"Dazzler"},{name:"deadpool",carddefid:"Deadpool"},{name:"death",carddefid:"Death"},{name:"deathlok",carddefid:"Deathlok"},{name:"debrii",carddefid:"Debrii"},{name:"demon",carddefid:"Demon"},{name:"destroyer",carddefid:"Destroyer"},{name:"devil dinosaur",carddefid:"DevilDinosaur"},{name:"doctor doom",carddefid:"DrDoom"},{name:"doctor octopus",carddefid:"DoctorOctopus"},{name:"doctor strange",carddefid:"DoctorStrange"},{name:"domino",carddefid:"Domino"},{name:"doombot",carddefid:"DoomBot"},{name:"dracula",carddefid:"Dracula"},{name:"drax",carddefid:"Drax"},{name:"drone",carddefid:"Drone"},{name:"ebony maw",carddefid:"EbonyMaw"},{name:"echo",carddefid:"Echo"},{name:"electro",carddefid:"Electro"},{name:"elektra",carddefid:"Elektra"},{name:"elsa bloodstone",carddefid:"ElsaBloodstone"},{name:"enchantress",carddefid:"Enchantress"},{name:"evolved abomination",carddefid:"EvolvedAbomination"},{name:"evolved cyclops",carddefid:"EvolvedCyclops"},{name:"evolved hulk",carddefid:"EvolvedHulk"},{name:"evolved misty knight",carddefid:"EvolvedMistyKnight"},{name:"evolved shocker",carddefid:"EvolvedShocker"},{name:"evolved the thing",carddefid:"EvolvedTheThing"},{name:"evolved wasp",carddefid:"EvolvedWasp"},{name:"falcon",carddefid:"Falcon"},{name:"flatman",carddefid:"Flatman"},{name:"forge",carddefid:"Forge"},{name:"galactus",carddefid:"Galactus"},{name:"gambit",carddefid:"Gambit"},{name:"gamora",carddefid:"Gamora"},{name:"ghost",carddefid:"Ghost"},{name:"ghost rider",carddefid:"GhostRider"},{name:"ghost-spider",carddefid:"GhostSpider"},{name:"giganto",carddefid:"Giganto"},{name:"gladiator",carddefid:""},{name:"goblin queen",carddefid:"GoblinQueen"},{name:"goose",carddefid:"Goose"},{name:"gorr",carddefid:""},{name:"green goblin",carddefid:"GreenGoblin"},{name:"groot",carddefid:"Groot"},{name:"gwenpool",carddefid:"Gwenpool"},{name:"hawkeye",carddefid:"Hawkeye"},{name:"hazmat",carddefid:"Hazmat"},{name:"heimdall",carddefid:"Heimdall"},{name:"hela",carddefid:"Hela"},{name:"helicarrier",carddefid:"Helicarrier"},{name:"hellcow",carddefid:"Hellcow"},{name:"high evolutionary",carddefid:"HighEvolutionary"},{name:"hit monkey",carddefid:"HitMonkey"},{name:"hobgoblin",carddefid:"Hobgoblin"},{name:"howard the duck",carddefid:"HowardTheDuck"},{name:"hulk",carddefid:"Hulk"},{name:"hulkbuster",carddefid:"Hulkbuster"},{name:"human torch",carddefid:"HumanTorch"},{name:"iceman",carddefid:"Iceman"},{name:"illusion!",carddefid:"MysterioIllusion"},{name:"invisible woman",carddefid:"InvisibleWoman"},{name:"iron fist",carddefid:"IronFist"},{name:"iron lad",carddefid:"IronLad"},{name:"iron man",carddefid:"IronMan"},{name:"ironheart",carddefid:"Ironheart"},{name:"j. jonah jameson",carddefid:"JJonahJameson"},{name:"jane foster mighty thor",carddefid:"JaneFoster"},{name:"jean grey",carddefid:"JeanGrey"},{name:"jeff the baby land shark",carddefid:"JeffTheBabyLandShark"},{name:"jessica jones",carddefid:"JessicaJones"},{name:"jubilee",carddefid:"Jubilee"},{name:"juggernaut",carddefid:"Juggernaut"},{name:"ka-zar",carddefid:"KaZar"},{name:"kang",carddefid:"Kang"},{name:"killmonger",carddefid:"Killmonger"},{name:"king eitri",carddefid:"KingEitri"},{name:"kingpin",carddefid:"Kingpin"},{name:"kitty pryde",carddefid:"KittyPryde"},{name:"klaw",carddefid:"Klaw"},{name:"knull",carddefid:"Knull"},{name:"korg",carddefid:"Korg"},{name:"kraven",carddefid:"Kraven"},{name:"lady deathstrike",carddefid:"LadyDeathstrike"},{name:"lady sif",carddefid:"LadySif"},{name:"leader",carddefid:"Leader"},{name:"leech",carddefid:"Leech"},{name:"legion",carddefid:"Legion"},{name:"lizard",carddefid:"Lizard"},{name:"lockjaw",carddefid:"Lockjaw"},{name:"luke cage",carddefid:"LukeCage"},{name:"m'baku",carddefid:"MBaku"},{name:"magik",carddefid:"Magik"},{name:"magneto",carddefid:"Magneto"},{name:"makkari",carddefid:"Makkari"},{name:"mantis",carddefid:"Mantis"},{name:"maria hill",carddefid:"MariaHill"},{name:"master mold",carddefid:"MasterMold"},{name:"maximus",carddefid:"Maximus"},{name:"medusa",carddefid:"Medusa"},{name:"mephisto",carddefid:"Mephisto"},{name:"miles morales",carddefid:"MilesMorales"},{name:"mind stone",carddefid:"MindStone"},{name:"mirage",carddefid:"Mirage"},{name:"mister fantastic",carddefid:"MrFantastic"},{name:"mister negative",carddefid:"MrNegative"},{name:"mister sinister",carddefid:"MrSinister"},{name:"misty knight",carddefid:"MistyKnight"},{name:"mjölnir",carddefid:"Mjolnir"},{name:"modok",carddefid:"Modok"},{name:"mojo",carddefid:"Mojo"},{name:"monster",carddefid:"Monster"},{name:"moon girl",carddefid:"MoonGirl"},{name:"moon knight",carddefid:"MoonKnight"},{name:"morbius",carddefid:"Morbius"},{name:"morph",carddefid:"Morph"},{name:"ms. marvel",carddefid:"MsMarvel"},{name:"multiple man",carddefid:"MultipleMan"},{name:"mysterio",carddefid:"Mysterio"},{name:"mysterio?",carddefid:"MysterioUnrevealed"},{name:"mystique",carddefid:"Mystique"},{name:"nakia",carddefid:"Nakia"},{name:"namor",carddefid:"Namor"},{name:"nebula",carddefid:"Nebula"},{name:"negasonic teenage warhead",carddefid:"NegasonicTeenageWarhead"},{name:"nick fury",carddefid:"NickFury"},{name:"night nurse",carddefid:"NightNurse"},{name:"nightcrawler",carddefid:"Nightcrawler"},{name:"nimrod",carddefid:"Nimrod"},{name:"ninja",carddefid:"Ninja"},{name:"nova",carddefid:"Nova"},{name:"odin",carddefid:"Odin"},{name:"okoye",carddefid:"Okoye"},{name:"omega red",carddefid:"OmegaRed"},{name:"onslaught",carddefid:"Onslaught"},{name:"orka",carddefid:"Orka"},{name:"patriot",carddefid:"Patriot"},{name:"pig",carddefid:"Pig"},{name:"polaris",carddefid:"Polaris"},{name:"power stone",carddefid:"PowerStone"},{name:"professor x",carddefid:"ProfessorX"},{name:"psylocke",carddefid:"Psylocke"},{name:"punisher",carddefid:"Punisher"},{name:"quake",carddefid:"Quake"},{name:"quicksilver",carddefid:"Quicksilver"},{name:"quinjet",carddefid:"Quinjet"},{name:"random",carddefid:"Random"},{name:"raptor",carddefid:"Raptor"},{name:"reality stone",carddefid:"RealityStone"},{name:"red guardian",carddefid:"RedGuardian"},{name:"red skull",carddefid:"RedSkull"},{name:"rescue",carddefid:"Rescue"},{name:"rhino",carddefid:"Rhino"},{name:"rock",carddefid:"Rock"},{name:"rocket raccoon",carddefid:"RocketRaccoon"},{name:"rockslide",carddefid:"Rockslide"},{name:"rogue",carddefid:"Rogue"},{name:"ronan the accuser",carddefid:"Ronan"},{name:"sabretooth",carddefid:"Sabretooth"},{name:"sandman",carddefid:"Sandman"},{name:"sauron",carddefid:"Sauron"},{name:"scarlet witch",carddefid:"ScarletWitch"},{name:"scorpion",carddefid:"Scorpion"},{name:"sentinel",carddefid:"Sentinel"},{name:"sentry",carddefid:"Sentry"},{name:"sera",carddefid:"Sera"},{name:"shadow king",carddefid:"ShadowKing"},{name:"shang-chi",carddefid:"ShangChi"},{name:"shanna",carddefid:"Shanna"},{name:"she-hulk",carddefid:"SheHulk"},{name:"shocker",carddefid:"Shocker"},{name:"shuri",carddefid:"Shuri"},{name:"silk",carddefid:"Silk"},{name:"silver sable",carddefid:"SilverSable"},{name:"silver samurai",carddefid:"SilverSamurai"},{name:"silver surfer",carddefid:"SilverSurfer"},{name:"sinister clone",carddefid:"SinisterClone"},{name:"snowguard",carddefid:"Snowguard"},{name:"snowguard bear",carddefid:"SnowguardBear"},{name:"snowguard hawk",carddefid:"SnowguardHawk"},{name:"snowguard wolf",carddefid:"SnowguardWolf"},{name:"soul stone",carddefid:"SoulStone"},{name:"space stone",carddefid:"SpaceStone"},{name:"spectrum",carddefid:"Spectrum"},{name:"spider-ham",carddefid:"SpiderHam"},{name:"spider-man",carddefid:"SpiderMan"},{name:"spider-man 2099",carddefid:"SpiderMan2099"},{name:"spider-woman",carddefid:"SpiderWoman"},{name:"squirrel",carddefid:"Squirrel"},{name:"squirrel girl",carddefid:"SquirrelGirl"},{name:"star-lord",carddefid:"Starlord"},{name:"stature",carddefid:"Stature"},{name:"stegron",carddefid:"Stegron"},{name:"storm",carddefid:"Storm"},{name:"strong guy",carddefid:"StrongGuy"},{name:"stryfe",carddefid:"Stryfe"},{name:"sunspot",carddefid:"Sunspot"},{name:"super-skrull",carddefid:"SuperSkrull"},{name:"surtur",carddefid:"Surtur"},{name:"swarm",carddefid:"Swarm"},{name:"sword master",carddefid:"SwordMaster"},{name:"symbiote",carddefid:"Symbiote"},{name:"taskmaster",carddefid:"Taskmaster"},{name:"thanos",carddefid:"Thanos"},{name:"the collector",carddefid:"TheCollector"},{name:"the hood",carddefid:"Hood"},{name:"the infinaut",carddefid:"Infinaut"},{name:"the living tribunal",carddefid:"LivingTribunal"},{name:"the phoenix force",carddefid:"ThePhoenixForce"},{name:"the thing",carddefid:"TheThing"},{name:"the void",carddefid:"TheVoid"},{name:"thor",carddefid:"Thor"},{name:"tiger spirit",carddefid:"TigerSpirit"},{name:"time stone",carddefid:"TimeStone"},{name:"titania",carddefid:"Titania"},{name:"toad",carddefid:"Toad"},{name:"typhoid mary",carddefid:"TyphoidMary"},{name:"uatu the watcher",carddefid:"Uatu"},{name:"ultron",carddefid:"Ultron"},{name:"uncle ben",carddefid:"UncleBen"},{name:"valkyrie",carddefid:"Valkyrie"},{name:"venom",carddefid:"Venom"},{name:"vibranium",carddefid:"Vibranium"},{name:"viper",carddefid:"Viper"},{name:"vision",carddefid:"Vision"},{name:"viv vision",carddefid:"Viv"},{name:"vulture",carddefid:"Vulture"},{name:"war machine",carddefid:"WarMachine"},{name:"warpath",carddefid:"Warpath"},{name:"wasp",carddefid:"Wasp"},{name:"wave",carddefid:"Wave"},{name:"white queen",carddefid:"WhiteQueen"},{name:"white tiger",carddefid:"WhiteTiger"},{name:"widow's bite",carddefid:"WidowsBite"},{name:"winter soldier",carddefid:"WinterSoldier"},{name:"witchfire",carddefid:"Witchfire"},{name:"wolfsbane",carddefid:"Wolfsbane"},{name:"wolverine",carddefid:"Wolverine"},{name:"wong",carddefid:"Wong"},{name:"x-23",carddefid:"X23"},{name:"yellowjacket",carddefid:"Yellowjacket"},{name:"yo-yo",carddefid:"YoYo"},{name:"yondu",carddefid:"Yondu"},{name:"zabu",carddefid:"Zabu"},{name:"zero",carddefid:"Zero"}],ype=(e,r)=>{const t=e.map(s=>{const p=wpe.find(v=>v.name.toLowerCase()===s.name.toLowerCase());return p?p.carddefid:s.name.replace(/[\s-]/g,"")}),n={Name:r,Cards:t.map(s=>({CardDefId:s}))},o=JSON.stringify(n);return bpe.encode(o)},xpe=e=>{let r=e.length,t;const n=[...e];for(;r!==0;)t=Math.floor(Math.random()*r),r--,[n[r],n[t]]=[n[t],n[r]];return n.slice(0,12)},Av=e=>e[Math.floor(Math.random()*e.length)],_pe=()=>Av(rpe),Ope=e=>{const r=Av(e),t=_pe(),n=Av(tpe);return`${r.name}'s ${t} ${n}`},Cpe=i.lazy(()=>lg(()=>import("./index-26922e00.js"),[])),kpe=i.lazy(()=>lg(()=>import("./index-41889415.js"),[])),Epe=()=>{const{t:e}=zt(),[r,t]=i.useState(""),[n,o]=i.useState(!1),[a,s]=i.useState([]),{collection:p,isLoading:v,needSync:g}=i.useContext(oa),x=()=>{const C=xpe(p);s(C),o(!0);const j=Ope(C);t(j)},E=()=>{const C=ype(a,r);navigator.clipboard.writeText(C).then(()=>{Oc.fire({title:e("home.copy.deckCopied"),icon:"success",allowOutsideClick:!0,allowEscapeKey:!0,timer:2e3})}).catch(j=>{console.error("Failed to copy deck code: ",j)})};return i.useEffect(()=>{!v&&!g&&x()},[v,g]),ae.jsx("div",{children:v?ae.jsx(Ma,{}):ae.jsxs(ae.Fragment,{children:[ae.jsx("div",{}),g?ae.jsx(i.Suspense,{fallback:ae.jsx(Ma,{}),children:ae.jsx(kpe,{})}):ae.jsxs("section",{className:"bg-gray-1",children:[ae.jsx("h3",{className:"text-sm defaultPageText p-8",children:e("home.intro")}),ae.jsxs("div",{className:"flex justify-around flex-col lg:flex-row items-center space-y-4",children:[ae.jsx("button",{type:"button",title:e("home.randomDeckBtn.title"),onClick:x,className:"defaultButton",children:e("home.randomDeckBtn.text")}),n&&ae.jsx("h2",{className:"defaultPageText",children:r}),n&&ae.jsx("button",{type:"button",title:e("home.copy.title"),onClick:E,className:"defaultButton",children:ae.jsx(a_,{className:"h-5 w-5"})})]}),n&&ae.jsx(i.Suspense,{fallback:ae.jsx(Ma,{}),children:ae.jsx(Cpe,{userDeck:a})})]})]})})},Rpe=()=>{const{t:e}=zt(),{isLoading:r}=i.useContext(oa);return ae.jsxs(ae.Fragment,{children:[ae.jsx("div",{}),r?ae.jsx(Ma,{}):ae.jsxs("section",{className:"flex flex-col justify-center my-[5%] bg-gray-1",children:[ae.jsx("div",{children:ae.jsx("h1",{className:"h1Title text-white mb-14",children:e("nav.link.about")})}),ae.jsxs("div",{className:"flex flex-col justify-center space-y-8 lg:space-y-0 lg:flex-row lg:space-x-80",children:[ae.jsxs("div",{className:"flex flex-col items-center justify-center space-y-4",children:[ae.jsx("img",{className:"rounded-[50px] max-w-[180px] md:rounded-[80px] md:max-w-[250px]",src:"https://github.com/lkotlarenko.png",alt:"Leonardo Kotlarenko",loading:"lazy"}),ae.jsx("p",{className:"defaultPageText",children:"Leonardo Kotlarenko"}),ae.jsx(Tn,{to:"https://linkedin.com/in/lkotlarenko",title:e("about.btnTitle.linkedInKotlarenko"),target:"_blank",rel:"noopener noreferrer",className:"navLink",children:ae.jsxs("button",{className:"defaultButton mt-2 flex items-center",type:"button",children:["LinkedIn",ae.jsx(Lp,{className:"h-5 w-5 pl-1"})]})})]}),ae.jsxs("div",{className:"flex flex-col items-center justify-center space-y-4",children:[ae.jsx("img",{className:"rounded-[50px] max-w-[180px] md:rounded-[80px] md:max-w-[250px]",src:"https://github.com/LeonardoKleimpaul.png",alt:"Leonardo Kleimpaul",loading:"lazy"}),ae.jsx("p",{className:"defaultPageText",children:"Leonardo Kleimpaul"}),ae.jsx(Tn,{to:"https://linkedin.com/in/leonardo-kleimpaul",title:e("about.btnTitle.linkedInKleimpaul"),target:"_blank",rel:"noopener noreferrer",className:"navLink",children:ae.jsxs("button",{className:"defaultButton mt-2 flex items-center",type:"button",children:["LinkedIn",ae.jsx(Lp,{className:"h-5 w-5 pl-1"})]})})]})]}),ae.jsxs("div",{className:"flex flex-col justify-center items-center space-y-6 px-3 mt-[20%] lg:mt-[5%]",children:[ae.jsx("img",{className:"max-w-[120px] rounded-2xl",src:"https://github.com/Cyggnus.png",alt:e("about.altImg.cyggnusLogo"),loading:"lazy"}),ae.jsx("p",{className:"defaultPageText",children:e("about.description.part1")}),ae.jsx("p",{className:"defaultPageText",children:e("about.description.part2")}),ae.jsx(Tn,{to:"https://github.com/Cyggnus",title:e("about.btnTitle.cyggnusGitHub"),target:"_blank",rel:"noopener noreferrer",className:"navLink",children:ae.jsxs("button",{className:"defaultButton mt-2 flex items-center",type:"button",children:["GitHub",ae.jsx(Lp,{className:"h-5 w-5 pl-1"})]})})]})]})]})},Ppe=()=>ae.jsx(Pk,{children:ae.jsx(ej,{children:ae.jsx(YM,{children:ae.jsxs(Po,{path:"/",element:ae.jsx(gpe,{}),children:[ae.jsx(Po,{index:!0,element:ae.jsx(Epe,{})}),ae.jsx(Po,{path:"profile",element:ae.jsx(T1e,{})}),ae.jsx(Po,{path:"sync",element:ae.jsx(Sk,{})}),ae.jsx(Po,{path:"help",element:ae.jsx(M1e,{})}),ae.jsx(Po,{path:"about",element:ae.jsx(Rpe,{})}),ae.jsx(Po,{path:"*",element:ae.jsx(mpe,{})})]})})})}),Spe=e=>{e&&typeof e=="function"&&lg(()=>import("./web-vitals-60d3425a.js"),[]).then(({getCLS:r,getFID:t,getFCP:n,getLCP:o,getTTFB:a})=>{r(e),t(e),n(e),o(e),a(e)})},Mpe={type:"logger",log(e){this.output("log",e)},warn(e){this.output("warn",e)},error(e){this.output("error",e)},output(e,r){console&&console[e]&&console[e].apply(console,r)}};class z2{constructor(r){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.init(r,t)}init(r){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.prefix=t.prefix||"i18next:",this.logger=r||Mpe,this.options=t,this.debug=t.debug}log(){for(var r=arguments.length,t=new Array(r),n=0;n{this.observers[n]=this.observers[n]||[],this.observers[n].push(t)}),this}off(r,t){if(this.observers[r]){if(!t){delete this.observers[r];return}this.observers[r]=this.observers[r].filter(n=>n!==t)}}emit(r){for(var t=arguments.length,n=new Array(t>1?t-1:0),o=1;o{s(...n)}),this.observers["*"]&&[].concat(this.observers["*"]).forEach(s=>{s.apply(s,[r,...n])})}}function ps(){let e,r;const t=new Promise((n,o)=>{e=n,r=o});return t.resolve=e,t.reject=r,t}function s4(e){return e==null?"":""+e}function jpe(e,r,t){e.forEach(n=>{r[n]&&(t[n]=r[n])})}function T7(e,r,t){function n(s){return s&&s.indexOf("###")>-1?s.replace(/###/g,"."):s}function o(){return!e||typeof e=="string"}const a=typeof r!="string"?[].concat(r):r.split(".");for(;a.length>1;){if(o())return{};const s=n(a.shift());!e[s]&&t&&(e[s]=new t),Object.prototype.hasOwnProperty.call(e,s)?e=e[s]:e={}}return o()?{}:{obj:e,k:n(a.shift())}}function c4(e,r,t){const{obj:n,k:o}=T7(e,r,Object);n[o]=t}function Tpe(e,r,t,n){const{obj:o,k:a}=T7(e,r,Object);o[a]=o[a]||[],n&&(o[a]=o[a].concat(t)),n||o[a].push(t)}function $2(e,r){const{obj:t,k:n}=T7(e,r);if(t)return t[n]}function Ipe(e,r,t){const n=$2(e,t);return n!==void 0?n:$2(r,t)}function Mk(e,r,t){for(const n in r)n!=="__proto__"&&n!=="constructor"&&(n in e?typeof e[n]=="string"||e[n]instanceof String||typeof r[n]=="string"||r[n]instanceof String?t&&(e[n]=r[n]):Mk(e[n],r[n],t):e[n]=r[n]);return e}function Ci(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}var Ape={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"};function Lpe(e){return typeof e=="string"?e.replace(/[&<>"'\/]/g,r=>Ape[r]):e}const zpe=[" ",",","?","!",";"];function $pe(e,r,t){r=r||"",t=t||"";const n=zpe.filter(s=>r.indexOf(s)<0&&t.indexOf(s)<0);if(n.length===0)return!0;const o=new RegExp(`(${n.map(s=>s==="?"?"\\?":s).join("|")})`);let a=!o.test(e);if(!a){const s=e.indexOf(t);s>0&&!o.test(e.substring(0,s))&&(a=!0)}return a}function F2(e,r){let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:".";if(!e)return;if(e[r])return e[r];const n=r.split(t);let o=e;for(let a=0;aa+s;)s++,p=n.slice(a,a+s).join(t),v=o[p];if(v===void 0)return;if(v===null)return null;if(r.endsWith(p)){if(typeof v=="string")return v;if(p&&typeof v[p]=="string")return v[p]}const g=n.slice(a+s).join(t);return g?F2(v,g,t):void 0}o=o[n[a]]}return o}function N2(e){return e&&e.indexOf("_")>0?e.replace("_","-"):e}class u4 extends Rg{constructor(r){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{ns:["translation"],defaultNS:"translation"};super(),this.data=r||{},this.options=t,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.options.ignoreJSONStructure===void 0&&(this.options.ignoreJSONStructure=!0)}addNamespaces(r){this.options.ns.indexOf(r)<0&&this.options.ns.push(r)}removeNamespaces(r){const t=this.options.ns.indexOf(r);t>-1&&this.options.ns.splice(t,1)}getResource(r,t,n){let o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};const a=o.keySeparator!==void 0?o.keySeparator:this.options.keySeparator,s=o.ignoreJSONStructure!==void 0?o.ignoreJSONStructure:this.options.ignoreJSONStructure;let p=[r,t];n&&typeof n!="string"&&(p=p.concat(n)),n&&typeof n=="string"&&(p=p.concat(a?n.split(a):n)),r.indexOf(".")>-1&&(p=r.split("."));const v=$2(this.data,p);return v||!s||typeof n!="string"?v:F2(this.data&&this.data[r]&&this.data[r][t],n,a)}addResource(r,t,n,o){let a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{silent:!1};const s=a.keySeparator!==void 0?a.keySeparator:this.options.keySeparator;let p=[r,t];n&&(p=p.concat(s?n.split(s):n)),r.indexOf(".")>-1&&(p=r.split("."),o=t,t=p[1]),this.addNamespaces(t),c4(this.data,p,o),a.silent||this.emit("added",r,t,n,o)}addResources(r,t,n){let o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{silent:!1};for(const a in n)(typeof n[a]=="string"||Object.prototype.toString.apply(n[a])==="[object Array]")&&this.addResource(r,t,a,n[a],{silent:!0});o.silent||this.emit("added",r,t,n)}addResourceBundle(r,t,n,o,a){let s=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{silent:!1},p=[r,t];r.indexOf(".")>-1&&(p=r.split("."),o=n,n=t,t=p[1]),this.addNamespaces(t);let v=$2(this.data,p)||{};o?Mk(v,n,a):v={...v,...n},c4(this.data,p,v),s.silent||this.emit("added",r,t,n)}removeResourceBundle(r,t){this.hasResourceBundle(r,t)&&delete this.data[r][t],this.removeNamespaces(t),this.emit("removed",r,t)}hasResourceBundle(r,t){return this.getResource(r,t)!==void 0}getResourceBundle(r,t){return t||(t=this.options.defaultNS),this.options.compatibilityAPI==="v1"?{...this.getResource(r,t)}:this.getResource(r,t)}getDataByLanguage(r){return this.data[r]}hasLanguageSomeTranslations(r){const t=this.getDataByLanguage(r);return!!(t&&Object.keys(t)||[]).find(o=>t[o]&&Object.keys(t[o]).length>0)}toJSON(){return this.data}}var jk={processors:{},addPostProcessor(e){this.processors[e.name]=e},handle(e,r,t,n,o){return e.forEach(a=>{this.processors[a]&&(r=this.processors[a].process(r,t,n,o))}),r}};const d4={};class D2 extends Rg{constructor(r){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};super(),jpe(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],r,this),this.options=t,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.logger=In.create("translator")}changeLanguage(r){r&&(this.language=r)}exists(r){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}};if(r==null)return!1;const n=this.resolve(r,t);return n&&n.res!==void 0}extractFromKey(r,t){let n=t.nsSeparator!==void 0?t.nsSeparator:this.options.nsSeparator;n===void 0&&(n=":");const o=t.keySeparator!==void 0?t.keySeparator:this.options.keySeparator;let a=t.ns||this.options.defaultNS||[];const s=n&&r.indexOf(n)>-1,p=!this.options.userDefinedKeySeparator&&!t.keySeparator&&!this.options.userDefinedNsSeparator&&!t.nsSeparator&&!$pe(r,n,o);if(s&&!p){const v=r.match(this.interpolator.nestingRegexp);if(v&&v.length>0)return{key:r,namespaces:a};const g=r.split(n);(n!==o||n===o&&this.options.ns.indexOf(g[0])>-1)&&(a=g.shift()),r=g.join(o)}return typeof a=="string"&&(a=[a]),{key:r,namespaces:a}}translate(r,t,n){if(typeof t!="object"&&this.options.overloadTranslationOptionHandler&&(t=this.options.overloadTranslationOptionHandler(arguments)),typeof t=="object"&&(t={...t}),t||(t={}),r==null)return"";Array.isArray(r)||(r=[String(r)]);const o=t.returnDetails!==void 0?t.returnDetails:this.options.returnDetails,a=t.keySeparator!==void 0?t.keySeparator:this.options.keySeparator,{key:s,namespaces:p}=this.extractFromKey(r[r.length-1],t),v=p[p.length-1],g=t.lng||this.language,x=t.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(g&&g.toLowerCase()==="cimode"){if(x){const l=t.nsSeparator||this.options.nsSeparator;return o?{res:`${v}${l}${s}`,usedKey:s,exactUsedKey:s,usedLng:g,usedNS:v}:`${v}${l}${s}`}return o?{res:s,usedKey:s,exactUsedKey:s,usedLng:g,usedNS:v}:s}const E=this.resolve(r,t);let C=E&&E.res;const j=E&&E.usedKey||s,T=E&&E.exactUsedKey||s,R=Object.prototype.toString.apply(C),S=["[object Number]","[object Function]","[object RegExp]"],w=t.joinArrays!==void 0?t.joinArrays:this.options.joinArrays,m=!this.i18nFormat||this.i18nFormat.handleAsObject;if(m&&C&&(typeof C!="string"&&typeof C!="boolean"&&typeof C!="number")&&S.indexOf(R)<0&&!(typeof w=="string"&&R==="[object Array]")){if(!t.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");const l=this.options.returnedObjectHandler?this.options.returnedObjectHandler(j,C,{...t,ns:p}):`key '${s} (${this.language})' returned an object instead of string.`;return o?(E.res=l,E):l}if(a){const l=R==="[object Array]",c=l?[]:{},u=l?T:j;for(const f in C)if(Object.prototype.hasOwnProperty.call(C,f)){const b=`${u}${a}${f}`;c[f]=this.translate(b,{...t,joinArrays:!1,ns:p}),c[f]===b&&(c[f]=C[f])}C=c}}else if(m&&typeof w=="string"&&R==="[object Array]")C=C.join(w),C&&(C=this.extendTranslation(C,r,t,n));else{let l=!1,c=!1;const u=t.count!==void 0&&typeof t.count!="string",f=D2.hasDefaultValue(t),b=u?this.pluralResolver.getSuffix(g,t.count,t):"",y=t.ordinal&&u?this.pluralResolver.getSuffix(g,t.count,{ordinal:!1}):"",O=t[`defaultValue${b}`]||t[`defaultValue${y}`]||t.defaultValue;!this.isValidLookup(C)&&f&&(l=!0,C=O),this.isValidLookup(C)||(c=!0,C=s);const z=(t.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&c?void 0:C,L=f&&O!==C&&this.options.updateMissing;if(c||l||L){if(this.logger.log(L?"updateKey":"missingKey",g,v,s,L?O:C),a){const J=this.resolve(s,{...t,keySeparator:!1});J&&J.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}let F=[];const V=this.languageUtils.getFallbackCodes(this.options.fallbackLng,t.lng||this.language);if(this.options.saveMissingTo==="fallback"&&V&&V[0])for(let J=0;J{const U=f&&K!==C?K:z;this.options.missingKeyHandler?this.options.missingKeyHandler(J,v,N,U,L,t):this.backendConnector&&this.backendConnector.saveMissing&&this.backendConnector.saveMissing(J,v,N,U,L,t),this.emit("missingKey",J,v,N,C)};this.options.saveMissing&&(this.options.saveMissingPlurals&&u?F.forEach(J=>{this.pluralResolver.getSuffixes(J,t).forEach(N=>{q([J],s+N,t[`defaultValue${N}`]||O)})}):q(F,s,O))}C=this.extendTranslation(C,r,t,E,n),c&&C===s&&this.options.appendNamespaceToMissingKey&&(C=`${v}:${s}`),(c||l)&&this.options.parseMissingKeyHandler&&(this.options.compatibilityAPI!=="v1"?C=this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${v}:${s}`:s,l?C:void 0):C=this.options.parseMissingKeyHandler(C))}return o?(E.res=C,E):C}extendTranslation(r,t,n,o,a){var s=this;if(this.i18nFormat&&this.i18nFormat.parse)r=this.i18nFormat.parse(r,{...this.options.interpolation.defaultVariables,...n},o.usedLng,o.usedNS,o.usedKey,{resolved:o});else if(!n.skipInterpolation){n.interpolation&&this.interpolator.init({...n,interpolation:{...this.options.interpolation,...n.interpolation}});const g=typeof r=="string"&&(n&&n.interpolation&&n.interpolation.skipOnVariables!==void 0?n.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);let x;if(g){const C=r.match(this.interpolator.nestingRegexp);x=C&&C.length}let E=n.replace&&typeof n.replace!="string"?n.replace:n;if(this.options.interpolation.defaultVariables&&(E={...this.options.interpolation.defaultVariables,...E}),r=this.interpolator.interpolate(r,E,n.lng||this.language,n),g){const C=r.match(this.interpolator.nestingRegexp),j=C&&C.length;x1&&arguments[1]!==void 0?arguments[1]:{},n,o,a,s,p;return typeof r=="string"&&(r=[r]),r.forEach(v=>{if(this.isValidLookup(n))return;const g=this.extractFromKey(v,t),x=g.key;o=x;let E=g.namespaces;this.options.fallbackNS&&(E=E.concat(this.options.fallbackNS));const C=t.count!==void 0&&typeof t.count!="string",j=C&&!t.ordinal&&t.count===0&&this.pluralResolver.shouldUseIntlApi(),T=t.context!==void 0&&(typeof t.context=="string"||typeof t.context=="number")&&t.context!=="",R=t.lngs?t.lngs:this.languageUtils.toResolveHierarchy(t.lng||this.language,t.fallbackLng);E.forEach(S=>{this.isValidLookup(n)||(p=S,!d4[`${R[0]}-${S}`]&&this.utils&&this.utils.hasLoadedNamespace&&!this.utils.hasLoadedNamespace(p)&&(d4[`${R[0]}-${S}`]=!0,this.logger.warn(`key "${o}" for languages "${R.join(", ")}" won't get resolved as namespace "${p}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),R.forEach(w=>{if(this.isValidLookup(n))return;s=w;const m=[x];if(this.i18nFormat&&this.i18nFormat.addLookupKeys)this.i18nFormat.addLookupKeys(m,x,w,S,t);else{let l;C&&(l=this.pluralResolver.getSuffix(w,t.count,t));const c=`${this.options.pluralSeparator}zero`,u=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(C&&(m.push(x+l),t.ordinal&&l.indexOf(u)===0&&m.push(x+l.replace(u,this.options.pluralSeparator)),j&&m.push(x+c)),T){const f=`${x}${this.options.contextSeparator}${t.context}`;m.push(f),C&&(m.push(f+l),t.ordinal&&l.indexOf(u)===0&&m.push(f+l.replace(u,this.options.pluralSeparator)),j&&m.push(f+c))}}let d;for(;d=m.pop();)this.isValidLookup(n)||(a=d,n=this.getResource(w,S,d,t))}))})}),{res:n,usedKey:o,exactUsedKey:a,usedLng:s,usedNS:p}}isValidLookup(r){return r!==void 0&&!(!this.options.returnNull&&r===null)&&!(!this.options.returnEmptyString&&r==="")}getResource(r,t,n){let o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};return this.i18nFormat&&this.i18nFormat.getResource?this.i18nFormat.getResource(r,t,n,o):this.resourceStore.getResource(r,t,n,o)}static hasDefaultValue(r){const t="defaultValue";for(const n in r)if(Object.prototype.hasOwnProperty.call(r,n)&&t===n.substring(0,t.length)&&r[n]!==void 0)return!0;return!1}}function cm(e){return e.charAt(0).toUpperCase()+e.slice(1)}class f4{constructor(r){this.options=r,this.supportedLngs=this.options.supportedLngs||!1,this.logger=In.create("languageUtils")}getScriptPartFromCode(r){if(r=N2(r),!r||r.indexOf("-")<0)return null;const t=r.split("-");return t.length===2||(t.pop(),t[t.length-1].toLowerCase()==="x")?null:this.formatLanguageCode(t.join("-"))}getLanguagePartFromCode(r){if(r=N2(r),!r||r.indexOf("-")<0)return r;const t=r.split("-");return this.formatLanguageCode(t[0])}formatLanguageCode(r){if(typeof r=="string"&&r.indexOf("-")>-1){const t=["hans","hant","latn","cyrl","cans","mong","arab"];let n=r.split("-");return this.options.lowerCaseLng?n=n.map(o=>o.toLowerCase()):n.length===2?(n[0]=n[0].toLowerCase(),n[1]=n[1].toUpperCase(),t.indexOf(n[1].toLowerCase())>-1&&(n[1]=cm(n[1].toLowerCase()))):n.length===3&&(n[0]=n[0].toLowerCase(),n[1].length===2&&(n[1]=n[1].toUpperCase()),n[0]!=="sgn"&&n[2].length===2&&(n[2]=n[2].toUpperCase()),t.indexOf(n[1].toLowerCase())>-1&&(n[1]=cm(n[1].toLowerCase())),t.indexOf(n[2].toLowerCase())>-1&&(n[2]=cm(n[2].toLowerCase()))),n.join("-")}return this.options.cleanCode||this.options.lowerCaseLng?r.toLowerCase():r}isSupportedCode(r){return(this.options.load==="languageOnly"||this.options.nonExplicitSupportedLngs)&&(r=this.getLanguagePartFromCode(r)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(r)>-1}getBestMatchFromCodes(r){if(!r)return null;let t;return r.forEach(n=>{if(t)return;const o=this.formatLanguageCode(n);(!this.options.supportedLngs||this.isSupportedCode(o))&&(t=o)}),!t&&this.options.supportedLngs&&r.forEach(n=>{if(t)return;const o=this.getLanguagePartFromCode(n);if(this.isSupportedCode(o))return t=o;t=this.options.supportedLngs.find(a=>{if(a===o)return a;if(!(a.indexOf("-")<0&&o.indexOf("-")<0)&&a.indexOf(o)===0)return a})}),t||(t=this.getFallbackCodes(this.options.fallbackLng)[0]),t}getFallbackCodes(r,t){if(!r)return[];if(typeof r=="function"&&(r=r(t)),typeof r=="string"&&(r=[r]),Object.prototype.toString.apply(r)==="[object Array]")return r;if(!t)return r.default||[];let n=r[t];return n||(n=r[this.getScriptPartFromCode(t)]),n||(n=r[this.formatLanguageCode(t)]),n||(n=r[this.getLanguagePartFromCode(t)]),n||(n=r.default),n||[]}toResolveHierarchy(r,t){const n=this.getFallbackCodes(t||this.options.fallbackLng||[],r),o=[],a=s=>{s&&(this.isSupportedCode(s)?o.push(s):this.logger.warn(`rejecting language code not found in supportedLngs: ${s}`))};return typeof r=="string"&&(r.indexOf("-")>-1||r.indexOf("_")>-1)?(this.options.load!=="languageOnly"&&a(this.formatLanguageCode(r)),this.options.load!=="languageOnly"&&this.options.load!=="currentOnly"&&a(this.getScriptPartFromCode(r)),this.options.load!=="currentOnly"&&a(this.getLanguagePartFromCode(r))):typeof r=="string"&&a(this.formatLanguageCode(r)),n.forEach(s=>{o.indexOf(s)<0&&a(this.formatLanguageCode(s))}),o}}let Fpe=[{lngs:["ach","ak","am","arn","br","fil","gun","ln","mfe","mg","mi","oc","pt","pt-BR","tg","tl","ti","tr","uz","wa"],nr:[1,2],fc:1},{lngs:["af","an","ast","az","bg","bn","ca","da","de","dev","el","en","eo","es","et","eu","fi","fo","fur","fy","gl","gu","ha","hi","hu","hy","ia","it","kk","kn","ku","lb","mai","ml","mn","mr","nah","nap","nb","ne","nl","nn","no","nso","pa","pap","pms","ps","pt-PT","rm","sco","se","si","so","son","sq","sv","sw","ta","te","tk","ur","yo"],nr:[1,2],fc:2},{lngs:["ay","bo","cgg","fa","ht","id","ja","jbo","ka","km","ko","ky","lo","ms","sah","su","th","tt","ug","vi","wo","zh"],nr:[1],fc:3},{lngs:["be","bs","cnr","dz","hr","ru","sr","uk"],nr:[1,2,5],fc:4},{lngs:["ar"],nr:[0,1,2,3,11,100],fc:5},{lngs:["cs","sk"],nr:[1,2,5],fc:6},{lngs:["csb","pl"],nr:[1,2,5],fc:7},{lngs:["cy"],nr:[1,2,3,8],fc:8},{lngs:["fr"],nr:[1,2],fc:9},{lngs:["ga"],nr:[1,2,3,7,11],fc:10},{lngs:["gd"],nr:[1,2,3,20],fc:11},{lngs:["is"],nr:[1,2],fc:12},{lngs:["jv"],nr:[0,1],fc:13},{lngs:["kw"],nr:[1,2,3,4],fc:14},{lngs:["lt"],nr:[1,2,10],fc:15},{lngs:["lv"],nr:[1,2,0],fc:16},{lngs:["mk"],nr:[1,2],fc:17},{lngs:["mnk"],nr:[0,1,2],fc:18},{lngs:["mt"],nr:[1,2,11,20],fc:19},{lngs:["or"],nr:[2,1],fc:2},{lngs:["ro"],nr:[1,2,20],fc:20},{lngs:["sl"],nr:[5,1,2,3],fc:21},{lngs:["he","iw"],nr:[1,2,20,21],fc:22}],Npe={1:function(e){return+(e>1)},2:function(e){return+(e!=1)},3:function(e){return 0},4:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2},5:function(e){return e==0?0:e==1?1:e==2?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5},6:function(e){return e==1?0:e>=2&&e<=4?1:2},7:function(e){return e==1?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2},8:function(e){return e==1?0:e==2?1:e!=8&&e!=11?2:3},9:function(e){return+(e>=2)},10:function(e){return e==1?0:e==2?1:e<7?2:e<11?3:4},11:function(e){return e==1||e==11?0:e==2||e==12?1:e>2&&e<20?2:3},12:function(e){return+(e%10!=1||e%100==11)},13:function(e){return+(e!==0)},14:function(e){return e==1?0:e==2?1:e==3?2:3},15:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&(e%100<10||e%100>=20)?1:2},16:function(e){return e%10==1&&e%100!=11?0:e!==0?1:2},17:function(e){return e==1||e%10==1&&e%100!=11?0:1},18:function(e){return e==0?0:e==1?1:2},19:function(e){return e==1?0:e==0||e%100>1&&e%100<11?1:e%100>10&&e%100<20?2:3},20:function(e){return e==1?0:e==0||e%100>0&&e%100<20?1:2},21:function(e){return e%100==1?1:e%100==2?2:e%100==3||e%100==4?3:0},22:function(e){return e==1?0:e==2?1:(e<0||e>10)&&e%10==0?2:3}};const Dpe=["v1","v2","v3"],Bpe=["v4"],p4={zero:0,one:1,two:2,few:3,many:4,other:5};function Vpe(){const e={};return Fpe.forEach(r=>{r.lngs.forEach(t=>{e[t]={numbers:r.nr,plurals:Npe[r.fc]}})}),e}class Hpe{constructor(r){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.languageUtils=r,this.options=t,this.logger=In.create("pluralResolver"),(!this.options.compatibilityJSON||Bpe.includes(this.options.compatibilityJSON))&&(typeof Intl>"u"||!Intl.PluralRules)&&(this.options.compatibilityJSON="v3",this.logger.error("Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.")),this.rules=Vpe()}addRule(r,t){this.rules[r]=t}getRule(r){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(this.shouldUseIntlApi())try{return new Intl.PluralRules(N2(r),{type:t.ordinal?"ordinal":"cardinal"})}catch{return}return this.rules[r]||this.rules[this.languageUtils.getLanguagePartFromCode(r)]}needsPlural(r){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const n=this.getRule(r,t);return this.shouldUseIntlApi()?n&&n.resolvedOptions().pluralCategories.length>1:n&&n.numbers.length>1}getPluralFormsOfKey(r,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return this.getSuffixes(r,n).map(o=>`${t}${o}`)}getSuffixes(r){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const n=this.getRule(r,t);return n?this.shouldUseIntlApi()?n.resolvedOptions().pluralCategories.sort((o,a)=>p4[o]-p4[a]).map(o=>`${this.options.prepend}${t.ordinal?`ordinal${this.options.prepend}`:""}${o}`):n.numbers.map(o=>this.getSuffix(r,o,t)):[]}getSuffix(r,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};const o=this.getRule(r,n);return o?this.shouldUseIntlApi()?`${this.options.prepend}${n.ordinal?`ordinal${this.options.prepend}`:""}${o.select(t)}`:this.getSuffixRetroCompatible(o,t):(this.logger.warn(`no plural rule found for: ${r}`),"")}getSuffixRetroCompatible(r,t){const n=r.noAbs?r.plurals(t):r.plurals(Math.abs(t));let o=r.numbers[n];this.options.simplifyPluralSuffix&&r.numbers.length===2&&r.numbers[0]===1&&(o===2?o="plural":o===1&&(o=""));const a=()=>this.options.prepend&&o.toString()?this.options.prepend+o.toString():o.toString();return this.options.compatibilityJSON==="v1"?o===1?"":typeof o=="number"?`_plural_${o.toString()}`:a():this.options.compatibilityJSON==="v2"||this.options.simplifyPluralSuffix&&r.numbers.length===2&&r.numbers[0]===1?a():this.options.prepend&&n.toString()?this.options.prepend+n.toString():n.toString()}shouldUseIntlApi(){return!Dpe.includes(this.options.compatibilityJSON)}}function g4(e,r,t){let n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:".",o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,a=Ipe(e,r,t);return!a&&o&&typeof t=="string"&&(a=F2(e,t,n),a===void 0&&(a=F2(r,t,n))),a}class Wpe{constructor(){let r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.logger=In.create("interpolator"),this.options=r,this.format=r.interpolation&&r.interpolation.format||(t=>t),this.init(r)}init(){let r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};r.interpolation||(r.interpolation={escapeValue:!0});const t=r.interpolation;this.escape=t.escape!==void 0?t.escape:Lpe,this.escapeValue=t.escapeValue!==void 0?t.escapeValue:!0,this.useRawValueToEscape=t.useRawValueToEscape!==void 0?t.useRawValueToEscape:!1,this.prefix=t.prefix?Ci(t.prefix):t.prefixEscaped||"{{",this.suffix=t.suffix?Ci(t.suffix):t.suffixEscaped||"}}",this.formatSeparator=t.formatSeparator?t.formatSeparator:t.formatSeparator||",",this.unescapePrefix=t.unescapeSuffix?"":t.unescapePrefix||"-",this.unescapeSuffix=this.unescapePrefix?"":t.unescapeSuffix||"",this.nestingPrefix=t.nestingPrefix?Ci(t.nestingPrefix):t.nestingPrefixEscaped||Ci("$t("),this.nestingSuffix=t.nestingSuffix?Ci(t.nestingSuffix):t.nestingSuffixEscaped||Ci(")"),this.nestingOptionsSeparator=t.nestingOptionsSeparator?t.nestingOptionsSeparator:t.nestingOptionsSeparator||",",this.maxReplaces=t.maxReplaces?t.maxReplaces:1e3,this.alwaysFormat=t.alwaysFormat!==void 0?t.alwaysFormat:!1,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){const r=`${this.prefix}(.+?)${this.suffix}`;this.regexp=new RegExp(r,"g");const t=`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`;this.regexpUnescape=new RegExp(t,"g");const n=`${this.nestingPrefix}(.+?)${this.nestingSuffix}`;this.nestingRegexp=new RegExp(n,"g")}interpolate(r,t,n,o){let a,s,p;const v=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{};function g(T){return T.replace(/\$/g,"$$$$")}const x=T=>{if(T.indexOf(this.formatSeparator)<0){const m=g4(t,v,T,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(m,void 0,n,{...o,...t,interpolationkey:T}):m}const R=T.split(this.formatSeparator),S=R.shift().trim(),w=R.join(this.formatSeparator).trim();return this.format(g4(t,v,S,this.options.keySeparator,this.options.ignoreJSONStructure),w,n,{...o,...t,interpolationkey:S})};this.resetRegExp();const E=o&&o.missingInterpolationHandler||this.options.missingInterpolationHandler,C=o&&o.interpolation&&o.interpolation.skipOnVariables!==void 0?o.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:T=>g(T)},{regex:this.regexp,safeValue:T=>this.escapeValue?g(this.escape(T)):g(T)}].forEach(T=>{for(p=0;a=T.regex.exec(r);){const R=a[1].trim();if(s=x(R),s===void 0)if(typeof E=="function"){const w=E(r,a,o);s=typeof w=="string"?w:""}else if(o&&Object.prototype.hasOwnProperty.call(o,R))s="";else if(C){s=a[0];continue}else this.logger.warn(`missed to pass in variable ${R} for interpolating ${r}`),s="";else typeof s!="string"&&!this.useRawValueToEscape&&(s=s4(s));const S=T.safeValue(s);if(r=r.replace(a[0],S),C?(T.regex.lastIndex+=s.length,T.regex.lastIndex-=a[0].length):T.regex.lastIndex=0,p++,p>=this.maxReplaces)break}}),r}nest(r,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o,a,s;function p(v,g){const x=this.nestingOptionsSeparator;if(v.indexOf(x)<0)return v;const E=v.split(new RegExp(`${x}[ ]*{`));let C=`{${E[1]}`;v=E[0],C=this.interpolate(C,s);const j=C.match(/'/g),T=C.match(/"/g);(j&&j.length%2===0&&!T||T.length%2!==0)&&(C=C.replace(/'/g,'"'));try{s=JSON.parse(C),g&&(s={...g,...s})}catch(R){return this.logger.warn(`failed parsing options string in nesting for key ${v}`,R),`${v}${x}${C}`}return delete s.defaultValue,v}for(;o=this.nestingRegexp.exec(r);){let v=[];s={...n},s=s.replace&&typeof s.replace!="string"?s.replace:s,s.applyPostProcessor=!1,delete s.defaultValue;let g=!1;if(o[0].indexOf(this.formatSeparator)!==-1&&!/{.*}/.test(o[1])){const x=o[1].split(this.formatSeparator).map(E=>E.trim());o[1]=x.shift(),v=x,g=!0}if(a=t(p.call(this,o[1].trim(),s),s),a&&o[0]===r&&typeof a!="string")return a;typeof a!="string"&&(a=s4(a)),a||(this.logger.warn(`missed to resolve ${o[1]} for nesting ${r}`),a=""),g&&(a=v.reduce((x,E)=>this.format(x,E,n.lng,{...n,interpolationkey:o[1].trim()}),a.trim())),r=r.replace(o[0],a),this.regexp.lastIndex=0}return r}}function Upe(e){let r=e.toLowerCase().trim();const t={};if(e.indexOf("(")>-1){const n=e.split("(");r=n[0].toLowerCase().trim();const o=n[1].substring(0,n[1].length-1);r==="currency"&&o.indexOf(":")<0?t.currency||(t.currency=o.trim()):r==="relativetime"&&o.indexOf(":")<0?t.range||(t.range=o.trim()):o.split(";").forEach(s=>{if(!s)return;const[p,...v]=s.split(":"),g=v.join(":").trim().replace(/^'+|'+$/g,"");t[p.trim()]||(t[p.trim()]=g),g==="false"&&(t[p.trim()]=!1),g==="true"&&(t[p.trim()]=!0),isNaN(g)||(t[p.trim()]=parseInt(g,10))})}return{formatName:r,formatOptions:t}}function ki(e){const r={};return function(n,o,a){const s=o+JSON.stringify(a);let p=r[s];return p||(p=e(N2(o),a),r[s]=p),p(n)}}class qpe{constructor(){let r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.logger=In.create("formatter"),this.options=r,this.formats={number:ki((t,n)=>{const o=new Intl.NumberFormat(t,{...n});return a=>o.format(a)}),currency:ki((t,n)=>{const o=new Intl.NumberFormat(t,{...n,style:"currency"});return a=>o.format(a)}),datetime:ki((t,n)=>{const o=new Intl.DateTimeFormat(t,{...n});return a=>o.format(a)}),relativetime:ki((t,n)=>{const o=new Intl.RelativeTimeFormat(t,{...n});return a=>o.format(a,n.range||"day")}),list:ki((t,n)=>{const o=new Intl.ListFormat(t,{...n});return a=>o.format(a)})},this.init(r)}init(r){const n=(arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}}).interpolation;this.formatSeparator=n.formatSeparator?n.formatSeparator:n.formatSeparator||","}add(r,t){this.formats[r.toLowerCase().trim()]=t}addCached(r,t){this.formats[r.toLowerCase().trim()]=ki(t)}format(r,t,n){let o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};return t.split(this.formatSeparator).reduce((p,v)=>{const{formatName:g,formatOptions:x}=Upe(v);if(this.formats[g]){let E=p;try{const C=o&&o.formatParams&&o.formatParams[o.interpolationkey]||{},j=C.locale||C.lng||o.locale||o.lng||n;E=this.formats[g](p,j,{...x,...o,...C})}catch(C){this.logger.warn(C)}return E}else this.logger.warn(`there was no format function for ${g}`);return p},r)}}function Gpe(e,r){e.pending[r]!==void 0&&(delete e.pending[r],e.pendingCount--)}class Kpe extends Rg{constructor(r,t,n){let o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};super(),this.backend=r,this.store=t,this.services=n,this.languageUtils=n.languageUtils,this.options=o,this.logger=In.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=o.maxParallelReads||10,this.readingCalls=0,this.maxRetries=o.maxRetries>=0?o.maxRetries:5,this.retryTimeout=o.retryTimeout>=1?o.retryTimeout:350,this.state={},this.queue=[],this.backend&&this.backend.init&&this.backend.init(n,o.backend,o)}queueLoad(r,t,n,o){const a={},s={},p={},v={};return r.forEach(g=>{let x=!0;t.forEach(E=>{const C=`${g}|${E}`;!n.reload&&this.store.hasResourceBundle(g,E)?this.state[C]=2:this.state[C]<0||(this.state[C]===1?s[C]===void 0&&(s[C]=!0):(this.state[C]=1,x=!1,s[C]===void 0&&(s[C]=!0),a[C]===void 0&&(a[C]=!0),v[E]===void 0&&(v[E]=!0)))}),x||(p[g]=!0)}),(Object.keys(a).length||Object.keys(s).length)&&this.queue.push({pending:s,pendingCount:Object.keys(s).length,loaded:{},errors:[],callback:o}),{toLoad:Object.keys(a),pending:Object.keys(s),toLoadLanguages:Object.keys(p),toLoadNamespaces:Object.keys(v)}}loaded(r,t,n){const o=r.split("|"),a=o[0],s=o[1];t&&this.emit("failedLoading",a,s,t),n&&this.store.addResourceBundle(a,s,n),this.state[r]=t?-1:2;const p={};this.queue.forEach(v=>{Tpe(v.loaded,[a],s),Gpe(v,r),t&&v.errors.push(t),v.pendingCount===0&&!v.done&&(Object.keys(v.loaded).forEach(g=>{p[g]||(p[g]={});const x=v.loaded[g];x.length&&x.forEach(E=>{p[g][E]===void 0&&(p[g][E]=!0)})}),v.done=!0,v.errors.length?v.callback(v.errors):v.callback())}),this.emit("loaded",p),this.queue=this.queue.filter(v=>!v.done)}read(r,t,n){let o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:this.retryTimeout,s=arguments.length>5?arguments[5]:void 0;if(!r.length)return s(null,{});if(this.readingCalls>=this.maxParallelReads){this.waitingReads.push({lng:r,ns:t,fcName:n,tried:o,wait:a,callback:s});return}this.readingCalls++;const p=(g,x)=>{if(this.readingCalls--,this.waitingReads.length>0){const E=this.waitingReads.shift();this.read(E.lng,E.ns,E.fcName,E.tried,E.wait,E.callback)}if(g&&x&&o{this.read.call(this,r,t,n,o+1,a*2,s)},a);return}s(g,x)},v=this.backend[n].bind(this.backend);if(v.length===2){try{const g=v(r,t);g&&typeof g.then=="function"?g.then(x=>p(null,x)).catch(p):p(null,g)}catch(g){p(g)}return}return v(r,t,p)}prepareLoading(r,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=arguments.length>3?arguments[3]:void 0;if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),o&&o();typeof r=="string"&&(r=this.languageUtils.toResolveHierarchy(r)),typeof t=="string"&&(t=[t]);const a=this.queueLoad(r,t,n,o);if(!a.toLoad.length)return a.pending.length||o(),null;a.toLoad.forEach(s=>{this.loadOne(s)})}load(r,t,n){this.prepareLoading(r,t,{},n)}reload(r,t,n){this.prepareLoading(r,t,{reload:!0},n)}loadOne(r){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";const n=r.split("|"),o=n[0],a=n[1];this.read(o,a,"read",void 0,void 0,(s,p)=>{s&&this.logger.warn(`${t}loading namespace ${a} for language ${o} failed`,s),!s&&p&&this.logger.log(`${t}loaded namespace ${a} for language ${o}`,p),this.loaded(r,s,p)})}saveMissing(r,t,n,o,a){let s=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{},p=arguments.length>6&&arguments[6]!==void 0?arguments[6]:()=>{};if(this.services.utils&&this.services.utils.hasLoadedNamespace&&!this.services.utils.hasLoadedNamespace(t)){this.logger.warn(`did not save key "${n}" as the namespace "${t}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");return}if(!(n==null||n==="")){if(this.backend&&this.backend.create){const v={...s,isUpdate:a},g=this.backend.create.bind(this.backend);if(g.length<6)try{let x;g.length===5?x=g(r,t,n,o,v):x=g(r,t,n,o),x&&typeof x.then=="function"?x.then(E=>p(null,E)).catch(p):p(null,x)}catch(x){p(x)}else g(r,t,n,o,p,v)}!r||!r[0]||this.store.addResource(r[0],t,n,o)}}}function h4(){return{debug:!1,initImmediate:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:function(r){let t={};if(typeof r[1]=="object"&&(t=r[1]),typeof r[1]=="string"&&(t.defaultValue=r[1]),typeof r[2]=="string"&&(t.tDescription=r[2]),typeof r[2]=="object"||typeof r[3]=="object"){const n=r[3]||r[2];Object.keys(n).forEach(o=>{t[o]=n[o]})}return t},interpolation:{escapeValue:!0,format:(e,r,t,n)=>e,prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0}}}function m4(e){return typeof e.ns=="string"&&(e.ns=[e.ns]),typeof e.fallbackLng=="string"&&(e.fallbackLng=[e.fallbackLng]),typeof e.fallbackNS=="string"&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&e.supportedLngs.indexOf("cimode")<0&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),e}function u0(){}function Ype(e){Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach(t=>{typeof e[t]=="function"&&(e[t]=e[t].bind(e))})}class Cc extends Rg{constructor(){let r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;if(super(),this.options=m4(r),this.services={},this.logger=In,this.modules={external:[]},Ype(this),t&&!this.isInitialized&&!r.isClone){if(!this.options.initImmediate)return this.init(r,t),this;setTimeout(()=>{this.init(r,t)},0)}}init(){var r=this;let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0;typeof t=="function"&&(n=t,t={}),!t.defaultNS&&t.defaultNS!==!1&&t.ns&&(typeof t.ns=="string"?t.defaultNS=t.ns:t.ns.indexOf("translation")<0&&(t.defaultNS=t.ns[0]));const o=h4();this.options={...o,...this.options,...m4(t)},this.options.compatibilityAPI!=="v1"&&(this.options.interpolation={...o.interpolation,...this.options.interpolation}),t.keySeparator!==void 0&&(this.options.userDefinedKeySeparator=t.keySeparator),t.nsSeparator!==void 0&&(this.options.userDefinedNsSeparator=t.nsSeparator);function a(x){return x?typeof x=="function"?new x:x:null}if(!this.options.isClone){this.modules.logger?In.init(a(this.modules.logger),this.options):In.init(null,this.options);let x;this.modules.formatter?x=this.modules.formatter:typeof Intl<"u"&&(x=qpe);const E=new f4(this.options);this.store=new u4(this.options.resources,this.options);const C=this.services;C.logger=In,C.resourceStore=this.store,C.languageUtils=E,C.pluralResolver=new Hpe(E,{prepend:this.options.pluralSeparator,compatibilityJSON:this.options.compatibilityJSON,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),x&&(!this.options.interpolation.format||this.options.interpolation.format===o.interpolation.format)&&(C.formatter=a(x),C.formatter.init(C,this.options),this.options.interpolation.format=C.formatter.format.bind(C.formatter)),C.interpolator=new Wpe(this.options),C.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},C.backendConnector=new Kpe(a(this.modules.backend),C.resourceStore,C,this.options),C.backendConnector.on("*",function(j){for(var T=arguments.length,R=new Array(T>1?T-1:0),S=1;S1?T-1:0),S=1;S{j.init&&j.init(this)})}if(this.format=this.options.interpolation.format,n||(n=u0),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){const x=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);x.length>0&&x[0]!=="dev"&&(this.options.lng=x[0])}!this.services.languageDetector&&!this.options.lng&&this.logger.warn("init: no languageDetector is used and no lng is defined"),["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach(x=>{this[x]=function(){return r.store[x](...arguments)}}),["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach(x=>{this[x]=function(){return r.store[x](...arguments),r}});const v=ps(),g=()=>{const x=(E,C)=>{this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn("init: i18next is already initialized. You should call init just once!"),this.isInitialized=!0,this.options.isClone||this.logger.log("initialized",this.options),this.emit("initialized",this.options),v.resolve(C),n(E,C)};if(this.languages&&this.options.compatibilityAPI!=="v1"&&!this.isInitialized)return x(null,this.t.bind(this));this.changeLanguage(this.options.lng,x)};return this.options.resources||!this.options.initImmediate?g():setTimeout(g,0),v}loadResources(r){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:u0;const o=typeof r=="string"?r:this.language;if(typeof r=="function"&&(n=r),!this.options.resources||this.options.partialBundledLanguages){if(o&&o.toLowerCase()==="cimode")return n();const a=[],s=p=>{if(!p)return;this.services.languageUtils.toResolveHierarchy(p).forEach(g=>{a.indexOf(g)<0&&a.push(g)})};o?s(o):this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach(v=>s(v)),this.options.preload&&this.options.preload.forEach(p=>s(p)),this.services.backendConnector.load(a,this.options.ns,p=>{!p&&!this.resolvedLanguage&&this.language&&this.setResolvedLanguage(this.language),n(p)})}else n(null)}reloadResources(r,t,n){const o=ps();return r||(r=this.languages),t||(t=this.options.ns),n||(n=u0),this.services.backendConnector.reload(r,t,a=>{o.resolve(),n(a)}),o}use(r){if(!r)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!r.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return r.type==="backend"&&(this.modules.backend=r),(r.type==="logger"||r.log&&r.warn&&r.error)&&(this.modules.logger=r),r.type==="languageDetector"&&(this.modules.languageDetector=r),r.type==="i18nFormat"&&(this.modules.i18nFormat=r),r.type==="postProcessor"&&jk.addPostProcessor(r),r.type==="formatter"&&(this.modules.formatter=r),r.type==="3rdParty"&&this.modules.external.push(r),this}setResolvedLanguage(r){if(!(!r||!this.languages)&&!(["cimode","dev"].indexOf(r)>-1))for(let t=0;t-1)&&this.store.hasLanguageSomeTranslations(n)){this.resolvedLanguage=n;break}}}changeLanguage(r,t){var n=this;this.isLanguageChangingTo=r;const o=ps();this.emit("languageChanging",r);const a=v=>{this.language=v,this.languages=this.services.languageUtils.toResolveHierarchy(v),this.resolvedLanguage=void 0,this.setResolvedLanguage(v)},s=(v,g)=>{g?(a(g),this.translator.changeLanguage(g),this.isLanguageChangingTo=void 0,this.emit("languageChanged",g),this.logger.log("languageChanged",g)):this.isLanguageChangingTo=void 0,o.resolve(function(){return n.t(...arguments)}),t&&t(v,function(){return n.t(...arguments)})},p=v=>{!r&&!v&&this.services.languageDetector&&(v=[]);const g=typeof v=="string"?v:this.services.languageUtils.getBestMatchFromCodes(v);g&&(this.language||a(g),this.translator.language||this.translator.changeLanguage(g),this.services.languageDetector&&this.services.languageDetector.cacheUserLanguage&&this.services.languageDetector.cacheUserLanguage(g)),this.loadResources(g,x=>{s(x,g)})};return!r&&this.services.languageDetector&&!this.services.languageDetector.async?p(this.services.languageDetector.detect()):!r&&this.services.languageDetector&&this.services.languageDetector.async?this.services.languageDetector.detect.length===0?this.services.languageDetector.detect().then(p):this.services.languageDetector.detect(p):p(r),o}getFixedT(r,t,n){var o=this;const a=function(s,p){let v;if(typeof p!="object"){for(var g=arguments.length,x=new Array(g>2?g-2:0),E=2;E`${v.keyPrefix}${C}${T}`):j=v.keyPrefix?`${v.keyPrefix}${C}${s}`:s,o.t(j,v)};return typeof r=="string"?a.lng=r:a.lngs=r,a.ns=t,a.keyPrefix=n,a}t(){return this.translator&&this.translator.translate(...arguments)}exists(){return this.translator&&this.translator.exists(...arguments)}setDefaultNamespace(r){this.options.defaultNS=r}hasLoadedNamespace(r){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;const n=t.lng||this.resolvedLanguage||this.languages[0],o=this.options?this.options.fallbackLng:!1,a=this.languages[this.languages.length-1];if(n.toLowerCase()==="cimode")return!0;const s=(p,v)=>{const g=this.services.backendConnector.state[`${p}|${v}`];return g===-1||g===2};if(t.precheck){const p=t.precheck(this,s);if(p!==void 0)return p}return!!(this.hasResourceBundle(n,r)||!this.services.backendConnector.backend||this.options.resources&&!this.options.partialBundledLanguages||s(n,r)&&(!o||s(a,r)))}loadNamespaces(r,t){const n=ps();return this.options.ns?(typeof r=="string"&&(r=[r]),r.forEach(o=>{this.options.ns.indexOf(o)<0&&this.options.ns.push(o)}),this.loadResources(o=>{n.resolve(),t&&t(o)}),n):(t&&t(),Promise.resolve())}loadLanguages(r,t){const n=ps();typeof r=="string"&&(r=[r]);const o=this.options.preload||[],a=r.filter(s=>o.indexOf(s)<0);return a.length?(this.options.preload=o.concat(a),this.loadResources(s=>{n.resolve(),t&&t(s)}),n):(t&&t(),Promise.resolve())}dir(r){if(r||(r=this.resolvedLanguage||(this.languages&&this.languages.length>0?this.languages[0]:this.language)),!r)return"rtl";const t=["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"],n=this.services&&this.services.languageUtils||new f4(h4());return t.indexOf(n.getLanguagePartFromCode(r))>-1||r.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}static createInstance(){let r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;return new Cc(r,t)}cloneInstance(){let r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:u0;const n=r.forkResourceStore;n&&delete r.forkResourceStore;const o={...this.options,...r,isClone:!0},a=new Cc(o);return(r.debug!==void 0||r.prefix!==void 0)&&(a.logger=a.logger.clone(r)),["store","services","language"].forEach(p=>{a[p]=this[p]}),a.services={...this.services},a.services.utils={hasLoadedNamespace:a.hasLoadedNamespace.bind(a)},n&&(a.store=new u4(this.store.data,o),a.services.resourceStore=a.store),a.translator=new D2(a.services,o),a.translator.on("*",function(p){for(var v=arguments.length,g=new Array(v>1?v-1:0),x=1;x0){var p=o.maxAge-0;if(Number.isNaN(p))throw new Error("maxAge should be a Number");s+="; Max-Age=".concat(Math.floor(p))}if(o.domain){if(!b4.test(o.domain))throw new TypeError("option domain is invalid");s+="; Domain=".concat(o.domain)}if(o.path){if(!b4.test(o.path))throw new TypeError("option path is invalid");s+="; Path=".concat(o.path)}if(o.expires){if(typeof o.expires.toUTCString!="function")throw new TypeError("option expires is invalid");s+="; Expires=".concat(o.expires.toUTCString())}if(o.httpOnly&&(s+="; HttpOnly"),o.secure&&(s+="; Secure"),o.sameSite){var v=typeof o.sameSite=="string"?o.sameSite.toLowerCase():o.sameSite;switch(v){case!0:s+="; SameSite=Strict";break;case"lax":s+="; SameSite=Lax";break;case"strict":s+="; SameSite=Strict";break;case"none":s+="; SameSite=None";break;default:throw new TypeError("option sameSite is invalid")}}return s},w4={create:function(r,t,n,o){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{path:"/",sameSite:"strict"};n&&(a.expires=new Date,a.expires.setTime(a.expires.getTime()+n*60*1e3)),o&&(a.domain=o),document.cookie=n2e(r,encodeURIComponent(t),a)},read:function(r){for(var t="".concat(r,"="),n=document.cookie.split(";"),o=0;o-1&&(n=window.location.hash.substring(window.location.hash.indexOf("?")));for(var o=n.substring(1),a=o.split("&"),s=0;s0){var v=a[s].substring(0,p);v===r.lookupQuerystring&&(t=a[s].substring(p+1))}}}return t}},gs=null,y4=function(){if(gs!==null)return gs;try{gs=window!=="undefined"&&window.localStorage!==null;var r="i18next.translate.boo";window.localStorage.setItem(r,"foo"),window.localStorage.removeItem(r)}catch{gs=!1}return gs},i2e={name:"localStorage",lookup:function(r){var t;if(r.lookupLocalStorage&&y4()){var n=window.localStorage.getItem(r.lookupLocalStorage);n&&(t=n)}return t},cacheUserLanguage:function(r,t){t.lookupLocalStorage&&y4()&&window.localStorage.setItem(t.lookupLocalStorage,r)}},hs=null,x4=function(){if(hs!==null)return hs;try{hs=window!=="undefined"&&window.sessionStorage!==null;var r="i18next.translate.boo";window.sessionStorage.setItem(r,"foo"),window.sessionStorage.removeItem(r)}catch{hs=!1}return hs},l2e={name:"sessionStorage",lookup:function(r){var t;if(r.lookupSessionStorage&&x4()){var n=window.sessionStorage.getItem(r.lookupSessionStorage);n&&(t=n)}return t},cacheUserLanguage:function(r,t){t.lookupSessionStorage&&x4()&&window.sessionStorage.setItem(t.lookupSessionStorage,r)}},s2e={name:"navigator",lookup:function(r){var t=[];if(typeof navigator<"u"){if(navigator.languages)for(var n=0;n0?t:void 0}},c2e={name:"htmlTag",lookup:function(r){var t,n=r.htmlTag||(typeof document<"u"?document.documentElement:null);return n&&typeof n.getAttribute=="function"&&(t=n.getAttribute("lang")),t}},u2e={name:"path",lookup:function(r){var t;if(typeof window<"u"){var n=window.location.pathname.match(/\/([a-zA-Z-]*)/g);if(n instanceof Array)if(typeof r.lookupFromPathIndex=="number"){if(typeof n[r.lookupFromPathIndex]!="string")return;t=n[r.lookupFromPathIndex].replace("/","")}else t=n[0].replace("/","")}return t}},d2e={name:"subdomain",lookup:function(r){var t=typeof r.lookupFromSubdomainIndex=="number"?r.lookupFromSubdomainIndex+1:1,n=typeof window<"u"&&window.location&&window.location.hostname&&window.location.hostname.match(/^(\w{2,5})\.(([a-z0-9-]{1,63}\.[a-z]{2,6})|localhost)/i);if(n)return n[t]}};function f2e(){return{order:["querystring","cookie","localStorage","sessionStorage","navigator","htmlTag"],lookupQuerystring:"lng",lookupCookie:"i18next",lookupLocalStorage:"i18nextLng",lookupSessionStorage:"i18nextLng",caches:["localStorage"],excludeCacheFor:["cimode"],convertDetectedLanguage:function(r){return r}}}var Ik=function(){function e(r){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};Xpe(this,e),this.type="languageDetector",this.detectors={},this.init(r,t)}return Jpe(e,[{key:"init",value:function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};this.services=t||{languageUtils:{}},this.options=t2e(n,this.options||{},f2e()),typeof this.options.convertDetectedLanguage=="string"&&this.options.convertDetectedLanguage.indexOf("15897")>-1&&(this.options.convertDetectedLanguage=function(a){return a.replace("-","_")}),this.options.lookupFromUrlIndex&&(this.options.lookupFromPathIndex=this.options.lookupFromUrlIndex),this.i18nOptions=o,this.addDetector(o2e),this.addDetector(a2e),this.addDetector(i2e),this.addDetector(l2e),this.addDetector(s2e),this.addDetector(c2e),this.addDetector(u2e),this.addDetector(d2e)}},{key:"addDetector",value:function(t){this.detectors[t.name]=t}},{key:"detect",value:function(t){var n=this;t||(t=this.options.order);var o=[];return t.forEach(function(a){if(n.detectors[a]){var s=n.detectors[a].lookup(n.options);s&&typeof s=="string"&&(s=[s]),s&&(o=o.concat(s))}}),o=o.map(function(a){return n.options.convertDetectedLanguage(a)}),this.services.languageUtils.getBestMatchFromCodes?o:o.length>0?o[0]:null}},{key:"cacheUserLanguage",value:function(t,n){var o=this;n||(n=this.options.caches),n&&(this.options.excludeCacheFor&&this.options.excludeCacheFor.indexOf(t)>-1||n.forEach(function(a){o.detectors[a]&&o.detectors[a].cacheUserLanguage(t,o.options)}))}}]),e}();Ik.type="languageDetector";const p2e={translation:{about:{title:"Über Uns",description:{part1:"Cyggnus wurde von Leonardo Kotlarenko und Leonardo Kleimpaul gegründet;",part2:"Unser Ziel ist es, unterhaltsame und nützliche Open-Source-Anwendungen zu erstellen."},altImg:{cyggnusLogo:"Cyggnus Organisations logo"},btnTitle:{linkedInKotlarenko:"lkotlarenkos LinkedIn",linkedInKleimpaul:"Kleimpauls LinkedIn",cyggnusGitHub:"Cyggnus Organisation"}},footer:{copyright:{allRights:"ShuffleGenie © 2023. Alle Rechte vorbehalten.",affiliation:"ShuffleGenie steht nicht im Zusammenhang mit MarvelSnapZone, Nuverse, Second Dinner oder Marvel.",providedBy:"Sammlungsdaten werden bereitgestellt von ",dataFrom:"MarvelSnapZone©"}},help:{newUserDesc1:{part1:"Um Ihre Sammlung zu synchronisieren, benötigen Sie ein ",part2:" Konto."},newUserDesc2:{part1:"Verwenden Sie Ihre Sammlung, indem Sie Ihren ",part2:" Benutzernamen unten angeben und dann auf 'SAMMLUNG SYNCHRONISIEREN' klicken.",part3:"Sie können das Textfeld auch leer lassen, um die Standardkollektion zu verwenden."},description:"Um zufällige Decks zu generieren, klicken Sie ",button:"hier"},home:{copy:{deckCopied:"Deck-Code in die Zwischenablage kopiert!",title:"Deck-Code kopieren"},intro:"Generieren Sie einfach neue zufällige Decks mit Ihrer MarvelSnap©-Sammlung.",newUser:{title:"Willkommen bei ShuffleGenie 👋",description:{part1:"Erstellen Sie ein neues zufälliges Deck mit Ihren besessenen Sammlungskarten!",part2:"Synchronisieren Sie Ihren Marvel Snap Zone-Benutzernamen, um ein völlig zufälliges Deck mit Karten aus Ihrer Snap-Sammlung zu generieren."}},randomDeckBtn:{text:"Neues zufälliges Deck",title:"Generieren Sie ein neues zufälliges Deck"}},misc:{apiMsgs:{fail:{html:"Wenn dieser Fehler anhält, können Sie ein Problem hier melden.",text:"Entschuldigung, etwas ist schief gelaufen!",title:"Fehler beim Kontaktieren unserer API!"},success:{title:"Erfolgreich synchronisiert!"}},card:{title:"Sehen Sie '{{name}}' auf MarvelSnapZone©"},close:"Schließen",langList:{de:"Deutsch",en:"Englisch",es:"Spanisch",fr:"Französisch",hi:"Hindi",it:"Italienisch",ja:"Japanisch",ko:"Koreanisch",nl:"Niederländisch","pt-BR":"Brasilianisches Portugiesisch",ru:"Russisch",uk:"Ukrainisch",zh:"Chinesisch"},selectLanguage:"Sprache auswählen",syncForm:{label:"Ihr Benutzername","aria-label":"Benutzereingabe",inputDesc:"(lassen Sie das Feld leer, um die Standardkollektion zu verwenden)",syncBtn:"SAMMLUNG SYNCHRONISIEREN"}},nav:{link:{about:"Über Uns",help:"Hilfe",home:"Startseite",profile:"Profil",sync:"Neu synchronisieren"},btnTitle:{about:"Gehe zur Über-Uns-Seite",hamburgerMenu:"Navigationsmenü öffnen",help:"Gehe zur Hilfeseite",home:"Gehe zur Startseite",locale:"App-Sprache ändern",logout:"Abmelden",profile:"Gehe zu Ihrer Profilseite",sync:"Sammlung neu synchronisieren"}},profile:{greetings:{defaultUser:"Willkommen in unserer App 👽, Sie erkunden die Standardkollektion mit {{numCards}} Karten! Genießen Sie die vielfältige Auswahl an Karten aus Pool 2 und darunter.",loggedUser:"Hallo {{user}} 👽, hier ist Ihre Snap-Sammlung mit {{numCards}} Karten!"},info:{part1:"Um zufällige Decks zu generieren, klicken Sie ",part2:"hier"}}}},g2e={translation:{about:{title:"About Us",description:{part1:"Cyggnus was founded by Leonardo Kotlarenko and Leonardo Kleimpaul;",part2:"Our aim is to create fun and useful open source applications."},altImg:{cyggnusLogo:"Cyggnus Organization Logo"},btnTitle:{linkedInKotlarenko:"lkotlarenko's LinkedIn",linkedInKleimpaul:"Kleimpaul's LinkedIn",cyggnusGitHub:"Cyggnus Organization"}},footer:{copyright:{allRights:"ShuffleGenie © 2023. All Rights Reserved.",affiliation:"ShuffleGenie is not affiliated with MarvelSnapZone, Nuverse, Second Dinner, or Marvel.",providedBy:"Collection data is provided by ",dataFrom:"MarvelSnapZone©"}},help:{newUserDesc1:{part1:"To Sync Your Collection you will need a ",part2:" account."},newUserDesc2:{part1:"Use your collection by providing your ",part2:" username below and then clicking on 'SYNC COLLECTION'.",part3:"You can also leave the text field empty to use the default collection."},description:"To generate random decks click ",button:"here"},home:{copy:{deckCopied:"Deck code copied to clipboard!",title:"Copy Deck Code"},intro:"Easily generate new random decks using your MarvelSnap© collection.",newUser:{title:"Welcome to ShuffleGenie 👋",description:{part1:"Create a new random deck with your owned collection cards!",part2:"Sync your Marvel Snap Zone account username to generate a new completely random deck with cards from your snap collection."}},randomDeckBtn:{text:"New Random Deck",title:"Generate a new random Deck"}},misc:{apiMsgs:{fail:{html:"If this error persists you can report an issue here. ",text:"Sorry, something went wrong!",title:"Failed to contact our API!"},success:{title:"Synchronized with success!"}},card:{title:"View '{{name}}' on MarvelSnapZone©"},close:"Close",langList:{de:"German",en:"English",es:"Spanish",fr:"French",hi:"Hindi",it:"Italian",ja:"Japanese",ko:"Korean",nl:"Dutch","pt-BR":"Brazilian Portuguese",ru:"Russian",uk:"Ukrainian",zh:"Chinese"},selectLanguage:"Select Language",syncForm:{label:"Your Username","aria-label":"Username input",inputDesc:"(leave blank to use default collection)",syncBtn:"SYNC COLLECTION"}},nav:{link:{about:"About Us",help:"Help",home:"Home",profile:"Profile",sync:"Re-Sync"},btnTitle:{about:"Go to about us page",hamburgerMenu:"Open navigation menu",help:"Go to help page",home:"Go to home page",locale:"Change App Language",logout:"Logout",profile:"Go to your profile page",sync:"Re-Sync Your Collection"}},profile:{greetings:{defaultUser:"Welcome to our app 👽, you are exploring the Default Collection with {{numCards}} cards! Enjoy the diverse selection of cards from Pool 2 and below.",loggedUser:"Hi {{user}} 👽, here is your snap collection of {{numCards}} cards!"},info:{part1:"To generate random decks click ",part2:"here"}}}},h2e={translation:{about:{title:"Sobre Nosotros",description:{part1:"Cyggnus fue fundada por Leonardo Kotlarenko y Leonardo Kleimpaul;",part2:"Nuestro objetivo es crear aplicaciones de código abierto divertidas y útiles."},altImg:{cyggnusLogo:"Logotipo de la Organización Cyggnus"},btnTitle:{linkedInKotlarenko:"LinkedIn de lkotlarenko",linkedInKleimpaul:"LinkedIn de Kleimpaul",cyggnusGitHub:"Organización Cyggnus"}},footer:{copyright:{allRights:"ShuffleGenie © 2023. Todos los derechos reservados.",affiliation:"ShuffleGenie no está afiliado con MarvelSnapZone, Nuverse, Second Dinner ni Marvel.",providedBy:"Datos de la colección proporcionados por ",dataFrom:"MarvelSnapZone©"}},help:{newUserDesc1:{part1:"Para sincronizar tu colección, necesitarás una cuenta en ",part2:"."},newUserDesc2:{part1:"Utiliza tu colección proporcionando tu nombre de usuario de ",part2:" a continuación y luego haz clic en 'SINCRONIZAR COLECCIÓN'.",part3:"También puedes dejar el campo de texto en blanco para usar la colección predeterminada."},description:"Para generar mazos aleatorios, haz clic ",button:"aquí"},home:{copy:{deckCopied:"Código del mazo copiado al portapapeles.",title:"Copiar Código del Mazo"},intro:"Genera fácilmente nuevos mazos aleatorios usando tu colección de MarvelSnap©.",newUser:{title:"Bienvenido a ShuffleGenie 👋",description:{part1:"¡Crea un nuevo mazo aleatorio con las cartas de tu colección!",part2:"Sincroniza tu nombre de usuario de la cuenta Marvel Snap Zone para generar un nuevo mazo completamente aleatorio con cartas de tu colección de Snap."}},randomDeckBtn:{text:"Nuevo Mazo Aleatorio",title:"Generar un nuevo Mazo Aleatorio"}},misc:{apiMsgs:{fail:{html:"Si este error persiste, puedes informar un problema aquí. ",text:"Lo siento, algo salió mal.",title:"¡No se pudo contactar con nuestra API!"},success:{title:"¡Sincronizado exitosamente!"}},card:{title:"Ver '{{name}}' en MarvelSnapZone©"},close:"Cerrar",langList:{de:"Alemán",en:"Inglés",es:"Español",fr:"Francés",hi:"Hindi",it:"Italiano",ja:"Japonés",ko:"Coreano",nl:"Neerlandés","pt-BR":"Portugués Brasileño",ru:"Ruso",uk:"Ucraniano",zh:"Chino"},selectLanguage:"Seleccionar Idioma",syncForm:{label:"Tu Nombre de Usuario","aria-label":"Entrada de nombre de usuario",inputDesc:"(deja en blanco para usar la colección predeterminada)",syncBtn:"SINCRONIZAR COLECCIÓN"}},nav:{link:{about:"Sobre Nosotros",help:"Ayuda",home:"Inicio",profile:"Perfil",sync:"Re-Sincronizar"},btnTitle:{about:"Ir a la página de sobre nosotros",hamburgerMenu:"Abrir menú de navegación",help:"Ir a la página de ayuda",home:"Ir a la página de inicio",locale:"Cambiar Idioma de la App",logout:"Cerrar Sesión",profile:"Ir a la página de tu perfil",sync:"Re-Sincronizar tu Colección"}},profile:{greetings:{defaultUser:"Bienvenido a nuestra aplicación 👽, estás explorando la Colección Predeterminada con {{numCards}} cartas. Disfruta de la variada selección de cartas de la Pool 2 y más abajo.",loggedUser:"Hola {{user}} 👽, aquí está tu colección Snap con {{numCards}} cartas."},info:{part1:"Para generar mazos aleatorios, haz clic ",part2:"aquí"}}}},m2e={translation:{about:{title:"À Propos de Nous",description:{part1:"Cyggnus a été fondé par Leonardo Kotlarenko et Leonardo Kleimpaul;",part2:"Notre objectif est de créer des applications open source amusantes et utiles."},altImg:{cyggnusLogo:"Logo de l'Organisation Cyggnus"},btnTitle:{linkedInKotlarenko:"LinkedIn de lkotlarenko",linkedInKleimpaul:"LinkedIn de Kleimpaul",cyggnusGitHub:"Organisation Cyggnus"}},footer:{copyright:{allRights:"ShuffleGenie © 2023. Tous droits réservés.",affiliation:"ShuffleGenie n'est pas affilié à MarvelSnapZone, Nuverse, Second Dinner ou Marvel.",providedBy:"Données de collection fournies par ",dataFrom:"MarvelSnapZone©"}},help:{newUserDesc1:{part1:"Pour synchroniser votre collection, vous aurez besoin d'un compte ",part2:"."},newUserDesc2:{part1:"Utilisez votre collection en fournissant votre nom d'utilisateur ",part2:" ci-dessous, puis cliquez sur 'SYNCHRONISER LA COLLECTION'.",part3:"Vous pouvez également laisser le champ de texte vide pour utiliser la collection par défaut."},description:"Pour générer des decks aléatoires, cliquez ",button:"ici"},home:{copy:{deckCopied:"Code de deck copié dans le presse-papiers !",title:"Copier le Code du Deck"},intro:"Générez facilement de nouveaux decks aléatoires en utilisant votre collection MarvelSnap©.",newUser:{title:"Bienvenue sur ShuffleGenie 👋",description:{part1:"Créez un nouveau deck aléatoire avec vos cartes de collection !",part2:"Synchronisez votre nom d'utilisateur de Marvel Snap Zone pour générer un nouveau deck complètement aléatoire avec des cartes de votre collection Snap."}},randomDeckBtn:{text:"Nouveau Deck Aléatoire",title:"Générer un Nouveau Deck Aléatoire"}},misc:{apiMsgs:{fail:{html:"Si cette erreur persiste, vous pouvez signaler un problème ici. ",text:"Désolé, quelque chose s'est mal passé !",title:"Échec de la connexion à notre API !"},success:{title:"Synchronisé avec succès !"}},card:{title:"Voir '{{name}}' sur MarvelSnapZone©"},close:"Fermer",langList:{de:"Allemand",en:"Anglais",es:"Espagnol",fr:"Français",hi:"Hindi",it:"Italien",ja:"Japonais",ko:"Coréen",nl:"Néerlandais","pt-BR":"Portugais brésilien",ru:"Russe",uk:"Ukrainien",zh:"Chinois"},selectLanguage:"Sélectionner la Langue",syncForm:{label:"Votre Nom d'Utilisateur","aria-label":"Entrée du nom d'utilisateur",inputDesc:"(laissez vide pour utiliser la collection par défaut)",syncBtn:"SYNCHRONISER LA COLLECTION"}},nav:{link:{about:"À Propos de Nous",help:"Aide",home:"Accueil",profile:"Profil",sync:"Re-Synchroniser"},btnTitle:{about:"Aller à la page À Propos de Nous",hamburgerMenu:"Ouvrir le menu de navigation",help:"Aller à la page d'Aide",home:"Aller à la page d'Accueil",locale:"Changer la Langue de l'Application",logout:"Déconnexion",profile:"Aller à la page de votre Profil",sync:"Re-Synchroniser Votre Collection"}},profile:{greetings:{defaultUser:"Bienvenue sur notre application 👽, vous explorez la Collection par Défaut avec {{numCards}} cartes ! Profitez de la sélection variée de cartes de la Pool 2 et en dessous.",loggedUser:"Bonjour {{user}} 👽, voici votre collection Snap avec {{numCards}} cartes !"},info:{part1:"Pour générer des decks aléatoires, cliquez ",part2:"ici"}}}},v2e={translation:{about:{title:"हमारे बारे में",description:{part1:"सिग्नस की स्थापना लियोनार्डो कोटलारेंको और लियोनार्डो क्लेम्पॉल द्वारा की गई थी;",part2:"हमारा उद्देश्य मजेदार और उपयोगी ओपन सोर्स एप्लिकेशन्स बनाना है।"},altImg:{cyggnusLogo:"सिग्नस संगठन लोगो"},btnTitle:{linkedInKotlarenko:"lkotlarenko का लिंक्डइन",linkedInKleimpaul:"Kleimpaul का लिंक्डइन",cyggnusGitHub:"सिग्नस संगठन"}},footer:{copyright:{allRights:"शफल जीनी © 2023। सभी अधिकार सुरक्षित।",affiliation:"शफल जीनी किसी भी रूप में मार्वलस्नैपजोन, न्यूवर्स, सेकंड डिनर या मार्वल से संबंधित नहीं है।",providedBy:"संग्रहण डेटा प्रदान करता है ",dataFrom:"मार्वलस्नैपजोन©"}},help:{newUserDesc1:{part1:"अपने संग्रहण को सिंक करने के लिए आपको एक ",part2:" खाता की आवश्यकता होगी।"},newUserDesc2:{part1:"अपने ",part2:" उपयोगकर्ता नाम को नीचे दिया गया है और फिर 'सिंक कलेक्शन' पर क्लिक करें ताकि आप अपने संग्रह का उपयोग कर सकें।",part3:"आप डिफ़ॉल्ट संग्रह का उपयोग करने के लिए टेक्स्ट फ़ील्ड खाली भी छोड़ सकते हैं।"},description:"यादृच्छिक डेक उत्पन्न करने के लिए यहाँ क्लिक करें ",button:"यहाँ"},home:{copy:{deckCopied:"डेक कोड क्लिपबोर्ड में कॉपी किया गया!",title:"डेक कोड कॉपी करें"},intro:"अपने MarvelSnap© संग्रह का उपयोग करके आसानी से नए यादृच्छिक डेक उत्पन्न करें।",newUser:{title:"ShuffleGenie में आपका स्वागत है 👋",description:{part1:"अपने संग्रहित संग्रह कार्डों के साथ एक नया यादृच्छिक डेक बनाएँ!",part2:"अपने Marvel Snap Zone खाता उपयोगकर्ता नाम को सिंक करें ताकि आपके स्नैप संग्रह के कार्डों से एक पूरी तरह से यादृच्छिक डेक बनाएँ।"}},randomDeckBtn:{text:"नया यादृच्छिक डेक",title:"नया यादृच्छिक डेक उत्पन्न करें"}},misc:{apiMsgs:{fail:{html:"यदि यह त्रुटि निरंतर बनी रहती है, तो आप यहाँ समस्या की सूचना दे सकते हैं।",text:"क्षमा करें, कुछ गलत हो गया!",title:"हमारे API से संपर्क करने में विफल!"},success:{title:"सफलतापूर्वक सिंक किया गया!"}},card:{title:"MarvelSnapZone© पर '{{name}}' देखें"},close:"बंद करें",langList:{de:"जर्मन",en:"अंग्रेज़ी",es:"स्पेनिश",fr:"फ़्रेंच",hi:"हिंदी",it:"इतालवी",ja:"जापानी",ko:"कोरियाई",nl:"डच","pt-BR":"ब्राज़ीली पुर्तगाली",ru:"रूसी",uk:"यूक्रेनियाई",zh:"चीनी"},selectLanguage:"भाषा चुनें",syncForm:{label:"आपका उपयोगकर्ता नाम","aria-label":"उपयोगकर्ता नाम इनपुट",inputDesc:"(डिफ़ॉल्ट संग्रह का उपयोग करने के लिए खाली छोड़ दें)",syncBtn:"सिंक कलेक्शन"}},nav:{link:{about:"हमारे बारे में",help:"मदद",home:"होम",profile:"प्रोफ़ाइल",sync:"री-सिंक"},btnTitle:{about:"हमारे बारे में पेज पर जाएं",hamburgerMenu:"नेविगेशन मेनू खोलें",help:"मदद पेज पर जाएं",home:"होम पेज पर जाएं",locale:"ऐप की भाषा बदलें",logout:"लॉगआउट",profile:"आपकी प्रोफ़ाइल पेज पर जाएं",sync:"आपके संग्रह को री-सिंक करें"}},profile:{greetings:{defaultUser:"हमारे ऐप में आपका स्वागत है 👽, आप {{numCards}} कार्डों के साथ डिफ़ॉल्ट संग्रह खोज रहे हैं! Pool 2 और नीचे के कार्डों का विविध चयन का आनंद लें।",loggedUser:"नमस्ते {{user}} 👽, यहाँ आपका {{numCards}} कार्डों वाला स्नैप संग्रह है!"},info:{part1:"यादृच्छिक डेक उत्पन्न करने के लिए यहाँ क्लिक करें ",part2:"यहाँ"}}}},b2e={translation:{about:{title:"Chi Siamo",description:{part1:"Cyggnus è stata fondata da Leonardo Kotlarenko e Leonardo Kleimpaul;",part2:"Il nostro obiettivo è creare applicazioni open source divertenti e utili."},altImg:{cyggnusLogo:"Logo dell'Organizzazione Cyggnus"},btnTitle:{linkedInKotlarenko:"LinkedIn di lkotlarenko",linkedInKleimpaul:"LinkedIn di Kleimpaul",cyggnusGitHub:"Organizzazione Cyggnus"}},footer:{copyright:{allRights:"ShuffleGenie © 2023. Tutti i diritti riservati.",affiliation:"ShuffleGenie non è affiliato a MarvelSnapZone, Nuverse, Second Dinner o Marvel.",providedBy:"I dati della collezione sono forniti da ",dataFrom:"MarvelSnapZone©"}},help:{newUserDesc1:{part1:"Per sincronizzare la tua collezione avrai bisogno di un ",part2:" account."},newUserDesc2:{part1:"Utilizza la tua collezione fornendo il tuo nome utente di ",part2:" qui sotto e poi clicca su 'SINCRONIZZA COLLEZIONE'.",part3:"Puoi anche lasciare il campo di testo vuoto per utilizzare la collezione predefinita."},description:"Per generare mazzi casuali clicca ",button:"qui"},home:{copy:{deckCopied:"Codice del mazzo copiato negli appunti!",title:"Copia Codice del Mazzo"},intro:"Genera facilmente nuovi mazzi casuali utilizzando la tua collezione di MarvelSnap©.",newUser:{title:"Benvenuto in ShuffleGenie 👋",description:{part1:"Crea un nuovo mazzo casuale con le carte della tua collezione!",part2:"Sincronizza il nome utente del tuo account Marvel Snap Zone per generare un nuovo mazzo completamente casuale con carte dalla tua collezione snap."}},randomDeckBtn:{text:"Nuovo Mazzo Casuale",title:"Genera un nuovo Mazzo Casuale"}},misc:{apiMsgs:{fail:{html:"Se questo errore persiste, puoi segnalare un problema qui. ",text:"Spiacenti, qualcosa è andato storto!",title:"Impossibile contattare la nostra API!"},success:{title:"Sincronizzato con successo!"}},card:{title:"Visualizza '{{name}}' su MarvelSnapZone©"},close:"Chiudi",langList:{de:"Tedesco",en:"Inglese",es:"Spagnolo",fr:"Francese",hi:"Hindi",it:"Italiano",ja:"Giapponese",ko:"Coreano",nl:"Olandese","pt-BR":"Portoghese Brasiliano",ru:"Russo",uk:"Ucraino",zh:"Cinese"},selectLanguage:"Seleziona Lingua",syncForm:{label:"Il Tuo Nome Utente","aria-label":"Inserimento Nome Utente",inputDesc:"(lascia vuoto per utilizzare la collezione predefinita)",syncBtn:"SINCRONIZZA COLLEZIONE"}},nav:{link:{about:"Chi Siamo",help:"Aiuto",home:"Home",profile:"Profilo",sync:"Re-Sync"},btnTitle:{about:"Vai alla pagina Chi Siamo",hamburgerMenu:"Apri il menu di navigazione",help:"Vai alla pagina di Aiuto",home:"Vai alla pagina Home",locale:"Cambia Lingua dell'App",logout:"Logout",profile:"Vai alla pagina del tuo profilo",sync:"Re-Sincronizza la Tua Collezione"}},profile:{greetings:{defaultUser:"Benvenuto nella nostra app 👽, stai esplorando la Collezione Predefinita con {{numCards}} carte! Goditi la selezione variegata di carte dalla Pool 2 in giù.",loggedUser:"Ciao {{user}} 👽, ecco la tua collezione snap di {{numCards}} carte!"},info:{part1:"Per generare mazzi casuali clicca ",part2:"qui"}}}},w2e={translation:{about:{title:"私たちについて",description:{part1:"Cyggnusは、Leonardo KotlarenkoとLeonardo Kleimpaulによって設立されました。",part2:"私たちの目標は、楽しくて役に立つオープンソースアプリケーションを作成することです。"},altImg:{cyggnusLogo:"Cyggnus組織のロゴ"},btnTitle:{linkedInKotlarenko:"lkotlarenkoのLinkedIn",linkedInKleimpaul:"KleimpaulのLinkedIn",cyggnusGitHub:"Cyggnus組織"}},footer:{copyright:{allRights:"ShuffleGenie © 2023。全著作権所有。",affiliation:"ShuffleGenieは、MarvelSnapZone、Nuverse、Second Dinner、またはMarvelと提携していません。",providedBy:"コレクションデータは提供されています:",dataFrom:"MarvelSnapZone©"}},help:{newUserDesc1:{part1:"コレクションを同期するには、",part2:" アカウントが必要です。"},newUserDesc2:{part1:"下のテキストフィールドに",part2:" アカウントのユーザー名を入力して、「コレクションを同期」をクリックしてください。テキストフィールドを空白のままにして、デフォルトのコレクションを使用することもできます。"},description:"ランダムなデッキを生成するには、",button:"こちら"},home:{copy:{deckCopied:"デッキコードがクリップボードにコピーされました!",title:"デッキコードのコピー"},intro:"MarvelSnap©のコレクションを使用して新しいランダムなデッキを簡単に生成できます。",newUser:{title:"ShuffleGenieへようこそ 👋",description:{part1:"所持しているコレクションカードで新しいランダムなデッキを作成しましょう!",part2:"Marvel Snap Zoneアカウントのユーザー名を同期して、Snapコレクションから完全にランダムな新しいデッキを生成します。"}},randomDeckBtn:{text:"新しいランダムデッキ",title:"新しいランダムデッキを生成"}},misc:{apiMsgs:{fail:{html:"このエラーが続く場合は、こちら で問題を報告できます。",text:"申し訳ありませんが、何か問題が発生しました。",title:"APIのコンタクトに失敗しました!"},success:{title:"正常に同期されました!"}},card:{title:"MarvelSnapZone©で '{{name}}' を表示"},close:"閉じる",langList:{de:"ドイツ語",en:"英語",es:"スペイン語",fr:"フランス語",hi:"ヒンディー語",it:"イタリア語",ja:"日本語",ko:"韓国語",nl:"オランダ語","pt-BR":"ブラジルポルトガル語",ru:"ロシア語",uk:"ウクライナ語",zh:"中国語"},selectLanguage:"言語を選択",syncForm:{label:"ユーザー名","aria-label":"ユーザー名入力",inputDesc:"(デフォルトのコレクションを使用する場合は空白のままにしてください)",syncBtn:"コレクションを同期"}},nav:{link:{about:"私たちについて",help:"ヘルプ",home:"ホーム",profile:"プロフィール",sync:"再同期"},btnTitle:{about:"私たちについてのページに移動",hamburgerMenu:"ナビゲーションメニューを開く",help:"ヘルプページに移動",home:"ホームページに移動",locale:"アプリ言語を変更",logout:"ログアウト",profile:"プロフィールページに移動",sync:"コレクションを再同期"}},profile:{greetings:{defaultUser:"私たちのアプリへようこそ 👽、{{numCards}} 枚のデフォルトコレクションを探索しています! Pool 2以下のカードの多様な選択肢をお楽しみください。",loggedUser:"こんにちは {{user}} 👽、こちらは{{numCards}} 枚のSnapコレクションです!"},info:{part1:"ランダムなデッキを生成するには、",part2:"こちら"}}}},y2e={translation:{about:{title:"회사 소개",description:{part1:"Cyggnus는 Leonardo Kotlarenko와 Leonardo Kleimpaul에 의해 설립되었습니다;",part2:"우리의 목표는 재미있고 유용한 오픈 소스 애플리케이션을 만드는 것입니다."},altImg:{cyggnusLogo:"Cyggnus 조직 로고"},btnTitle:{linkedInKotlarenko:"lkotlarenko의 LinkedIn",linkedInKleimpaul:"Kleimpaul의 LinkedIn",cyggnusGitHub:"Cyggnus 조직"}},footer:{copyright:{allRights:"ShuffleGenie © 2023. 모든 권리 보유.",affiliation:"ShuffleGenie는 MarvelSnapZone, Nuverse, Second Dinner, 또는 Marvel과 관련이 없습니다.",providedBy:"컬렉션 데이터 제공: ",dataFrom:"MarvelSnapZone©"}},help:{newUserDesc1:{part1:"컬렉션을 동기화하려면 ",part2:" 계정이 필요합니다."},newUserDesc2:{part1:"아래에 ",part2:" 사용자 이름을 입력하고 '컬렉션 동기화'를 클릭하여 컬렉션을 사용하세요.",part3:"또한 텍스트 필드를 비워두어 기본 컬렉션을 사용할 수 있습니다."},description:"랜덤 덱 생성을 위해 여기를 클릭하세요 ",button:"여기"},home:{copy:{deckCopied:"덱 코드가 클립 보드에 복사되었습니다!",title:"덱 코드 복사"},intro:"MarvelSnap© 컬렉션을 사용하여 새로운 랜덤 덱을 쉽게 생성하세요.",newUser:{title:"ShuffleGenie에 오신 것을 환영합니다 👋",description:{part1:"소유한 컬렉션 카드로 새로운 랜덤 덱을 생성하세요!",part2:"Marvel Snap Zone 계정 사용자 이름을 동기화하여 스냅 컬렉션의 카드를 사용하여 완전히 새로운 랜덤 덱을 생성하세요."}},randomDeckBtn:{text:"새로운 랜덤 덱",title:"새로운 랜덤 덱 생성"}},misc:{apiMsgs:{fail:{html:"이 오류가 지속되면 여기에 문제를 보고할 수 있습니다.",text:"죄송합니다. 오류가 발생했습니다.",title:"API 연결에 실패했습니다!"},success:{title:"성공적으로 동기화되었습니다!"}},card:{title:"MarvelSnapZone©에서 '{{name}}' 보기"},close:"닫기",langList:{de:"독일어",en:"영어",es:"스페인어",fr:"프랑스어",hi:"힌디어",it:"이탈리아어",ja:"일본어",ko:"한국어",nl:"네덜란드어","pt-BR":"브라질 포르투갈어",ru:"러시아어",uk:"우크라이나어",zh:"중국어"},selectLanguage:"언어 선택",syncForm:{label:"사용자 이름","aria-label":"사용자 이름 입력",inputDesc:"(기본 컬렉션 사용을 위해 비워두세요)",syncBtn:"컬렉션 동기화"}},nav:{link:{about:"회사 소개",help:"도움말",home:"홈",profile:"프로필",sync:"재동기화"},btnTitle:{about:"회사 소개 페이지로 이동",hamburgerMenu:"네비게이션 메뉴 열기",help:"도움말 페이지로 이동",home:"홈 페이지로 이동",locale:"앱 언어 변경",logout:"로그아웃",profile:"프로필 페이지로 이동",sync:"컬렉션 재동기화"}},profile:{greetings:{defaultUser:"앱에 오신 것을 환영합니다 👽, {{numCards}} 개의 카드가 있는 기본 컬렉션을 탐색하고 있습니다! Pool 2 이하의 다양한 선택 가능한 카드를 즐겨보세요.",loggedUser:"{{user}}님 안녕하세요 👽, 여기 {{numCards}} 개의 스냅 컬렉션 카드가 있습니다!"},info:{part1:"랜덤 덱을 생성하려면 여기를 클릭하세요 ",part2:"여기"}}}},x2e={translation:{about:{title:"Over Ons",description:{part1:"Cyggnus is opgericht door Leonardo Kotlarenko en Leonardo Kleimpaul;",part2:"Ons doel is om leuke en nuttige open source applicaties te maken."},altImg:{cyggnusLogo:"Cyggnus Organisatie Logo"},btnTitle:{linkedInKotlarenko:"lkotlarenko's LinkedIn",linkedInKleimpaul:"Kleimpaul's LinkedIn",cyggnusGitHub:"Cyggnus Organisatie"}},footer:{copyright:{allRights:"ShuffleGenie © 2023. Alle rechten voorbehouden.",affiliation:"ShuffleGenie heeft geen affiliatie met MarvelSnapZone, Nuverse, Second Dinner, of Marvel.",providedBy:"Collectiegegevens worden verstrekt door ",dataFrom:"MarvelSnapZone©"}},help:{newUserDesc1:{part1:"Om je collectie te synchroniseren heb je een ",part2:" account nodig."},newUserDesc2:{part1:"Gebruik je collectie door je ",part2:" gebruikersnaam hieronder in te voeren en vervolgens op 'COLLECTIE SYNCHRONISEREN' te klikken.",part3:"Je kunt ook het tekstveld leeg laten om de standaardcollectie te gebruiken."},description:"Om willekeurige decks te genereren, klik ",button:"hier"},home:{copy:{deckCopied:"Deckcode gekopieerd naar klembord!",title:"Kopieer Deckcode"},intro:"Genereer eenvoudig nieuwe willekeurige decks met behulp van je MarvelSnap©-collectie.",newUser:{title:"Welkom bij ShuffleGenie 👋",description:{part1:"Creëer een nieuw willekeurig deck met je eigen collectiekaarten!",part2:"Synchroniseer je Marvel Snap Zone accountgebruikersnaam om een geheel nieuw willekeurig deck te genereren met kaarten uit je snap-collectie."}},randomDeckBtn:{text:"Nieuw Willekeurig Deck",title:"Genereer een nieuw willekeurig Deck"}},misc:{apiMsgs:{fail:{html:"Als deze fout aanhoudt, kun je een probleem rapporteren hier. ",text:"Sorry, er is iets misgegaan!",title:"Kan geen contact maken met onze API!"},success:{title:"Succesvol gesynchroniseerd!"}},card:{title:"Bekijk '{{name}}' op MarvelSnapZone©"},close:"Sluiten",langList:{de:"Duits",en:"Engels",es:"Spaans",fr:"Frans",hi:"Hindi",it:"Italiaans",ja:"Japans",ko:"Koreaans",nl:"Nederlands","pt-BR":"Braziliaans Portugees",ru:"Russisch",uk:"Oekraïens",zh:"Chinees"},selectLanguage:"Selecteer Taal",syncForm:{label:"Jouw Gebruikersnaam","aria-label":"Gebruikersnaam invoer",inputDesc:"(laat leeg om de standaardcollectie te gebruiken)",syncBtn:"COLLECTIE SYNCHRONISEREN"}},nav:{link:{about:"Over Ons",help:"Hulp",home:"Home",profile:"Profiel",sync:"Her-Synchroniseren"},btnTitle:{about:"Ga naar over ons pagina",hamburgerMenu:"Open navigatiemenu",help:"Ga naar hulppagina",home:"Ga naar homepagina",locale:"Verander App Taal",logout:"Uitloggen",profile:"Ga naar jouw profielpagina",sync:"Her-Synchroniseer Jouw Collectie"}},profile:{greetings:{defaultUser:"Welkom bij onze app 👽, je verkent de Standaard Collectie met {{numCards}} kaarten! Geniet van de diverse selectie kaarten uit Pool 2 en lager.",loggedUser:"Hallo {{user}} 👽, hier is jouw snap-collectie met {{numCards}} kaarten!"},info:{part1:"Om willekeurige decks te genereren, klik ",part2:"hier"}}}},_2e={translation:{about:{description:{part1:"A Cyggnus foi fundada por Leonardo Kotlarenko e Leonardo Kleimpaul;",part2:"Nosso objetivo é criar aplicações de código aberto divertidas e úteis."},altImg:{cyggnusLogo:"Logo da Organização Cyggnus"},btnTitle:{linkedInKotlarenko:"LinkedIn de lkotlarenko",linkedInKleimpaul:"LinkedIn de Kleimpaul",cyggnusGitHub:"Organização Cyggnus"}},footer:{copyright:{allRights:"ShuffleGenie © 2023. Todos os direitos reservados.",affiliation:"O ShuffleGenie não possui afiliação com a MarvelSnapZone, Nuverse, Second Dinner ou Marvel.",providedBy:"Dados da coleção fornecidos por ",dataFrom:"MarvelSnapZone©"}},help:{newUserDesc1:{part1:"Para sincronizar sua coleção, você precisará de uma conta no ",part2:"."},newUserDesc2:{part1:"Utilize sua coleção informando seu nome de usuário do ",part2:" abaixo e então clicando em 'SINCRONIZAR COLEÇÃO'.",part3:"Você pode também deixar o campo de texto em branco para usar a coleção padrão."},description:"Para gerar decks aleatórios, clique ",button:"aqui"},home:{copy:{deckCopied:"Deck copiado para a area de transferência!",title:"Copiar código do Deck"},intro:"Gere facilmente novos decks aleatórios usando sua coleção do MarvelSnap©.",newUser:{title:"Bem Vindo ao ShuffleGenie 👋",description:{part1:"Crie um novo deck randomizado com as cartas da sua coleção!",part2:"Sincronize seu nome de usuário da conta Marvel Snap Zone para gerar um novo deck completamente aleatório com cartas de sua coleção do Snap."}},randomDeckBtn:{text:"Novo Deck Aleatório",title:"Gerar um novo Deck Aleatório"}},misc:{apiMsgs:{fail:{html:"Se esse erro persistir, você pode relatar um problema aqui. ",text:"Desculpe, algo deu errado!",title:"Falha ao contactar nossa API!"},success:{title:"Sincronizado com sucesso!"}},card:{title:"Ver '{{name}}' no MarvelSnapZone©"},close:"Fechar",langList:{de:"Alemão",en:"Inglês",es:"Espanhol",fr:"Francês",hi:"Hindi",it:"Italiano",ja:"Japonês",ko:"Coreano",nl:"Holandês","pt-BR":"Português Brasileiro",ru:"Russo",uk:"Ucraniano",zh:"Chinês"},selectLanguage:"Selecionar Lingua",syncForm:{label:"Seu nome de usuário","aria-label":"Entrada nome de usuário",inputDesc:"(deixe o campo em branco para usar a coleção padrão)",syncBtn:"SINCRONIZAR COLEÇÃO"}},nav:{link:{about:"Sobre Nós",help:"Ajuda",home:"Inicio",profile:"Perfil",sync:"Re-Sincronizar"},btnTitle:{about:"Vá para a pagina sobre nós",hamburgerMenu:"Abrir menu de navegação",help:"Vá para a pagina de ajuda",home:"Vá para a pagina inicial",locale:"Mudar Lingua do App",logout:"Sair",profile:"Vá para a pagina do seu perfil",sync:"Re-sincronizar sua coleção"}},profile:{greetings:{defaultUser:"Bem-vindo ao nosso aplicativo 👽, você está explorando a Coleção Padrão com {{numCards}} cartas! Aproveite essa seleção de cartas da Pool 2 e abaixo.",loggedUser:"Olá {{user}} 👽, aqui está sua coleção Snap com {{numCards}} cartas!"},info:{part1:"Para gerar decks aleatórios clique ",part2:"aqui"}}}},O2e={translation:{about:{title:"О Нас",description:{part1:"Cyggnus основана Леонардо Котларенко и Леонардо Клеймпауль;",part2:"Наша цель - создавать веселые и полезные приложения с открытым исходным кодом."},altImg:{cyggnusLogo:"Логотип Организации Cyggnus"},btnTitle:{linkedInKotlarenko:"LinkedIn lkotlarenko",linkedInKleimpaul:"LinkedIn Kleimpaul",cyggnusGitHub:"Организация Cyggnus"}},footer:{copyright:{allRights:"ShuffleGenie © 2023. Все права защищены.",affiliation:"ShuffleGenie не имеет аффилиации с MarvelSnapZone, Nuverse, Second Dinner или Marvel.",providedBy:"Данные о коллекции предоставлены ",dataFrom:"MarvelSnapZone©"}},help:{newUserDesc1:{part1:"Для синхронизации вашей коллекции вам понадобится аккаунт ",part2:"."},newUserDesc2:{part1:"Используйте вашу коллекцию, указав ваше ",part2:" имя пользователя ниже, а затем нажмите 'СИНХРОНИЗАЦИЯ КОЛЛЕКЦИИ'.",part3:"Вы также можете оставить поле пустым, чтобы использовать стандартную коллекцию."},description:"Чтобы создать случайные колоды, нажмите ",button:"здесь"},home:{copy:{deckCopied:"Код колоды скопирован в буфер обмена!",title:"Скопировать Код Колоды"},intro:"С легкостью создавайте новые случайные колоды с помощью вашей коллекции MarvelSnap©.",newUser:{title:"Добро пожаловать в ShuffleGenie 👋",description:{part1:"Создайте новую случайную колоду с картами из вашей собственной коллекции!",part2:"Синхронизируйте вашу учетную запись Marvel Snap Zone, чтобы создать абсолютно новую случайную колоду с картами из вашей коллекции Snap."}},randomDeckBtn:{text:"Новая Случайная Колода",title:"Сгенерировать Новую Случайную Колоду"}},misc:{apiMsgs:{fail:{html:"Если ошибка сохраняется, вы можете сообщить о проблеме здесь. ",text:"Извините, что-то пошло не так!",title:"Не удалось связаться с нашим API!"},success:{title:"Успешно синхронизировано!"}},card:{title:"Посмотреть '{{name}}' на MarvelSnapZone©"},close:"Закрыть",langList:{de:"Немецкий",en:"Английский",es:"Испанский",fr:"Французский",hi:"Хинди",it:"Итальянский",ja:"Японский",ko:"Корейский",nl:"Голландский","pt-BR":"Бразильский Португальский",ru:"Русский",uk:"Украинский",zh:"Китайский"},selectLanguage:"Выбрать Язык",syncForm:{label:"Ваше Имя Пользователя","aria-label":"Ввод имени пользователя",inputDesc:"(оставьте пустым для использования стандартной коллекции)",syncBtn:"СИНХРОНИЗАЦИЯ КОЛЛЕКЦИИ"}},nav:{link:{about:"О Нас",help:"Помощь",home:"Главная",profile:"Профиль",sync:"Повторно Синхронизировать"},btnTitle:{about:"Перейти на страницу О Нас",hamburgerMenu:"Открыть меню навигации",help:"Перейти на страницу помощи",home:"Перейти на главную страницу",locale:"Изменить Язык Приложения",logout:"Выйти",profile:"Перейти на страницу вашего профиля",sync:"Повторно Синхронизировать Вашу Коллекцию"}},profile:{greetings:{defaultUser:"Добро пожаловать в наше приложение 👽, вы исследуете Стандартную Коллекцию с {{numCards}} картами! Наслаждайтесь разнообразной выборкой карт из Pool 2 и ниже.",loggedUser:"Привет {{user}} 👽, вот ваша коллекция Snap с {{numCards}} картами!"},info:{part1:"Для генерации случайных колод, нажмите ",part2:"здесь"}}}},C2e={translation:{about:{title:"Про нас",description:{part1:"Cyggnus була заснована Леонардо Котларенко та Леонардо Клеймпауль;",part2:"Наша мета - створювати веселі та корисні додатки з відкритим вихідним кодом."},altImg:{cyggnusLogo:"Логотип Організації Cyggnus"},btnTitle:{linkedInKotlarenko:"LinkedIn lkotlarenko",linkedInKleimpaul:"LinkedIn Kleimpaul",cyggnusGitHub:"Організація Cyggnus"}},footer:{copyright:{allRights:"ShuffleGenie © 2023. Усі права захищено.",affiliation:"ShuffleGenie не має афіліації з MarvelSnapZone, Nuverse, Second Dinner або Marvel.",providedBy:"Дані про колекцію надані ",dataFrom:"MarvelSnapZone©"}},help:{newUserDesc1:{part1:"Для синхронізації вашої колекції вам знадобиться аккаунт ",part2:"."},newUserDesc2:{part1:"Використовуйте вашу колекцію, вказавши ваше ",part2:" ім'я користувача нижче, а потім натисніть 'СИНХРОНІЗУВАТИ КОЛЕКЦІЮ'.",part3:"Ви також можете залишити поле порожнім, щоб використовувати стандартну колекцію."},description:"Щоб створити випадкові колоди, натисніть ",button:"тут"},home:{copy:{deckCopied:"Код колоди скопійовано в буфер обміну!",title:"Скопіювати Код Колоди"},intro:"З легкістю створюйте нові випадкові колоди за допомогою вашої колекції MarvelSnap©.",newUser:{title:"Ласкаво просимо до ShuffleGenie 👋",description:{part1:"Створіть нову випадкову колоду з картами з вашої власної колекції!",part2:"Синхронізуйте ваш обліковий запис Marvel Snap Zone, щоб створити абсолютно нову випадкову колоду з картами з вашої колекції Snap."}},randomDeckBtn:{text:"Нова Випадкова Колода",title:"Згенерувати Нову Випадкову Колоду"}},misc:{apiMsgs:{fail:{html:"Якщо помилка залишається, ви можете повідомити про проблему тут. ",text:"Вибачте, сталася помилка!",title:"Не вдалося зв'язатися з нашим API!"},success:{title:"Успішно синхронізовано!"}},card:{title:"Переглянути '{{name}}' на MarvelSnapZone©"},close:"Закрити",langList:{de:"Німецька",en:"Англійська",es:"Іспанська",fr:"Французька",hi:"Гінді",it:"Італійська",ja:"Японська",ko:"Корейська",nl:"Голландська","pt-BR":"Бразильська Португальська",ru:"Російська",uk:"Українська",zh:"Китайська"},selectLanguage:"Вибрати Мову",syncForm:{label:"Ваше Ім'я Користувача","aria-label":"Введення імені користувача",inputDesc:"(залиште порожнім для використання стандартної колекції)",syncBtn:"СИНХРОНІЗУВАТИ КОЛЕКЦІЮ"}},nav:{link:{about:"Про нас",help:"Допомога",home:"Головна",profile:"Профіль",sync:"Пересинхронізувати"},btnTitle:{about:"Перейти на сторінку Про нас",hamburgerMenu:"Відкрити меню навігації",help:"Перейти на сторінку Допомоги",home:"Перейти на головну сторінку",locale:"Змінити Мову Додатку",logout:"Вийти",profile:"Перейти на сторінку вашого профілю",sync:"Пересинхронізувати Вашу Колекцію"}},profile:{greetings:{defaultUser:"Ласкаво просимо до нашого додатка 👽, ви досліджуєте Стандартну Колекцію з {{numCards}} картками! Насолоджуйтеся різноманітним вибором карток з Pool 2 та нижче.",loggedUser:"Привіт {{user}} 👽, ось ваша колекція Snap з {{numCards}} картками!"},info:{part1:"Для генерування випадкових колод натисніть ",part2:"тут"}}}},k2e={translation:{about:{title:"关于我们",description:{part1:"Cyggnus成立于Leonardo Kotlarenko和Leonardo Kleimpaul;",part2:"我们的目标是创建有趣且有用的开源应用程序。"},altImg:{cyggnusLogo:"Cyggnus组织徽标"},btnTitle:{linkedInKotlarenko:"lkotlarenko的领英",linkedInKleimpaul:"Kleimpaul的领英",cyggnusGitHub:"Cyggnus组织"}},footer:{copyright:{allRights:"ShuffleGenie © 2023。版权所有。",affiliation:"ShuffleGenie与MarvelSnapZone、Nuverse、Second Dinner或Marvel无关。",providedBy:"收藏数据由提供",dataFrom:"MarvelSnapZone©"}},help:{newUserDesc1:{part1:"要同步您的收藏,您需要一个",part2:" 帐户。"},newUserDesc2:{part1:"通过在下面提供您的",part2:" 用户名,然后单击“同步收藏”来使用您的收藏。",part3:"您也可以将文本字段保留为空白,以使用默认收藏。"},description:"要生成随机卡组,请单击",button:"这里"},home:{copy:{deckCopied:"卡组代码已复制到剪贴板!",title:"复制卡组代码"},intro:"使用您的MarvelSnap©收藏轻松生成新的随机卡组。",newUser:{title:"欢迎来到ShuffleGenie 👋",description:{part1:"使用您拥有的收藏卡片创建新的随机卡组!",part2:"同步您的Marvel Snap Zone帐户用户名,使用来自您的Snap收藏的卡片生成全新的随机卡组。"}},randomDeckBtn:{text:"新的随机卡组",title:"生成新的随机卡组"}},misc:{apiMsgs:{fail:{html:"如果此错误持续存在,您可以在此处报告问题。",text:"抱歉,出现了一些问题!",title:"无法联系我们的API!"},success:{title:"同步成功!"}},card:{title:"在MarvelSnapZone©上查看 '{{name}}'"},close:"关闭",langList:{de:"德语",en:"英语",es:"西班牙语",fr:"法语",hi:"印地语",it:"意大利语",ja:"日语",ko:"韩语",nl:"荷兰语","pt-BR":"巴西葡萄牙语",ru:"俄语",uk:"乌克兰语",zh:"中文"},selectLanguage:"选择语言",syncForm:{label:"您的用户名","aria-label":"用户名输入",inputDesc:"(留空以使用默认收藏)",syncBtn:"同步收藏"}},nav:{link:{about:"关于我们",help:"帮助",home:"主页",profile:"个人资料",sync:"重新同步"},btnTitle:{about:"前往关于我们页面",hamburgerMenu:"打开导航菜单",help:"前往帮助页面",home:"前往主页",locale:"更改应用语言",logout:"登出",profile:"前往您的个人资料页面",sync:"重新同步您的收藏"}},profile:{greetings:{defaultUser:"欢迎来到我们的应用程序 👽,您正在浏览默认收藏,共有 {{numCards}} 张卡片!享受来自第2级别及以下的多样选择。",loggedUser:"您好 {{user}} 👽,这里是您的Snap收藏,共有 {{numCards}} 张卡片!"},info:{part1:"要生成随机卡组,请单击",part2:"这里"}}}};et.use(Ik).use(mj).init({debug:!1,fallbackLng:"en",detection:{order:["localStorage","navigator"]},resources:{de:p2e,en:g2e,es:h2e,fr:m2e,hi:v2e,it:b2e,ja:w2e,ko:y2e,nl:x2e,"pt-BR":_2e,ru:O2e,uk:C2e,zh:k2e}});function E2e(){return Ppe()}const _4=document.getElementById("root");_4?z8(_4).render(ae.jsx(E2e,{})):console.error("Element with ID 'root' not found!");Spe();export{Ma as L,lg as _,vpe as a,P2e as i,ae as j,i as r,zt as u}; diff --git a/assets/index-daec319d.js b/assets/index-26922e00.js similarity index 56% rename from assets/index-daec319d.js rename to assets/index-26922e00.js index 9325a78..ff9c1b4 100644 --- a/assets/index-daec319d.js +++ b/assets/index-26922e00.js @@ -1 +1 @@ -import{r,_ as t,j as e,L as i}from"./index-133e931c.js";const m=r.lazy(()=>t(()=>import("./index-133e931c.js").then(a=>a.i),["assets/index-133e931c.js","assets/index-06bf5a92.css"])),l=({userDeck:a})=>e.jsx(r.Suspense,{fallback:e.jsx(i,{}),children:e.jsx("div",{className:"flex flex-wrap justify-center mx-auto mt-[4%] lg:px-20 md:px-10 px-3",children:a&&a.map(s=>e.jsx(m,{cardName:s.name,cardImg:s.imgUrl},s.name))})});export{l as default}; +import{r,_ as t,j as e,L as i}from"./index-1f199202.js";const m=r.lazy(()=>t(()=>import("./index-1f199202.js").then(a=>a.i),["assets/index-1f199202.js","assets/index-06bf5a92.css"])),l=({userDeck:a})=>e.jsx(r.Suspense,{fallback:e.jsx(i,{}),children:e.jsx("div",{className:"flex flex-wrap justify-center mx-auto mt-[4%] lg:px-20 md:px-10 px-3",children:a&&a.map(s=>e.jsx(m,{cardName:s.name,cardImg:s.imgUrl},s.name))})});export{l as default}; diff --git a/assets/index-074c85ee.js b/assets/index-41889415.js similarity index 87% rename from assets/index-074c85ee.js rename to assets/index-41889415.js index 24858f4..9d130f0 100644 --- a/assets/index-074c85ee.js +++ b/assets/index-41889415.js @@ -1 +1 @@ -import{r as t,_ as a,u as r,j as e,L as o}from"./index-133e931c.js";const i="/ShuffleGenie/assets/cardHome-6d27f116.webp",m=t.lazy(()=>a(()=>import("./index-133e931c.js").then(s=>s.a),["assets/index-133e931c.js","assets/index-06bf5a92.css"])),d=()=>{const{t:s}=r(),l=t.useRef(null),n=()=>{var c;(c=l.current)==null||c.scrollIntoView({behavior:"smooth"})};return e.jsxs(e.Fragment,{children:[e.jsxs("section",{className:"z-20 flex flex-col justify-center items-center mt-[10%] sm:mt-[15%] lg:m-[12%] lg:flex-row lg:justify-around bg-gray-1",children:[e.jsxs("div",{className:"flex flex-col justify-center items-center max-w-screen lg:w-4/12 space-y-11 sm:space-y-16",children:[e.jsx("h2",{className:"text-violet-1 text-center lg:mt-0 font-bold text-2xl max-w-[90%] lg:max-w-[100%]",children:s("home.newUser.title")}),e.jsx("h1",{className:"h1Title max-w-[90%] lg:max-w-[100%]",children:s("home.newUser.description.part1")}),e.jsx("p",{className:"defaultPageText max-w-[90%] lg:max-w-[100%]",children:s("home.newUser.description.part2")}),e.jsx("button",{type:"button",onClick:n,className:"defaultButton",children:s("misc.syncForm.syncBtn")})]}),e.jsx("div",{className:"flex flex-col justify-center mb-[55%] sm:mb-[25%] md:mb-[25%] lg:mb-0",children:e.jsx("img",{className:"flex cardHome lg:w-[358px] lg:h-[429px] xl:w-[417px] xl:h-[501px]",src:i,alt:"card"})})]}),e.jsx("section",{ref:l,id:"sync-section",className:"bg-gray-2 flex flex-col justify-center",style:{height:"85vh"},children:e.jsx(t.Suspense,{fallback:e.jsx(o,{}),children:e.jsx(m,{})})})]})};export{d as default}; +import{r as t,_ as a,u as r,j as e,L as o}from"./index-1f199202.js";const i="/ShuffleGenie/assets/cardHome-6d27f116.webp",m=t.lazy(()=>a(()=>import("./index-1f199202.js").then(s=>s.a),["assets/index-1f199202.js","assets/index-06bf5a92.css"])),d=()=>{const{t:s}=r(),l=t.useRef(null),n=()=>{var c;(c=l.current)==null||c.scrollIntoView({behavior:"smooth"})};return e.jsxs(e.Fragment,{children:[e.jsxs("section",{className:"z-20 flex flex-col justify-center items-center mt-[10%] sm:mt-[15%] lg:m-[12%] lg:flex-row lg:justify-around bg-gray-1",children:[e.jsxs("div",{className:"flex flex-col justify-center items-center max-w-screen lg:w-4/12 space-y-11 sm:space-y-16",children:[e.jsx("h2",{className:"text-violet-1 text-center lg:mt-0 font-bold text-2xl max-w-[90%] lg:max-w-[100%]",children:s("home.newUser.title")}),e.jsx("h1",{className:"h1Title max-w-[90%] lg:max-w-[100%]",children:s("home.newUser.description.part1")}),e.jsx("p",{className:"defaultPageText max-w-[90%] lg:max-w-[100%]",children:s("home.newUser.description.part2")}),e.jsx("button",{type:"button",onClick:n,className:"defaultButton",children:s("misc.syncForm.syncBtn")})]}),e.jsx("div",{className:"flex flex-col justify-center mb-[55%] sm:mb-[25%] md:mb-[25%] lg:mb-0",children:e.jsx("img",{className:"flex cardHome lg:w-[358px] lg:h-[429px] xl:w-[417px] xl:h-[501px]",src:i,alt:"card"})})]}),e.jsx("section",{ref:l,id:"sync-section",className:"bg-gray-2 flex flex-col justify-center",style:{height:"85vh"},children:e.jsx(t.Suspense,{fallback:e.jsx(o,{}),children:e.jsx(m,{})})})]})};export{d as default}; diff --git a/index.html b/index.html index 9ec84d8..bf8def1 100644 --- a/index.html +++ b/index.html @@ -46,7 +46,7 @@ - +