diff --git a/assets/index-1dbec4c4.js b/assets/index-1dbec4c4.js new file mode 100644 index 0000000..240d447 --- /dev/null +++ b/assets/index-1dbec4c4.js @@ -0,0 +1 @@ +import{b as e,a as o,P as r}from"./index-36b7e09b.js";export{e as ParticlesBgContextProvider,o as ParticlesBgRandomizeButton,r as default}; diff --git a/assets/index-36b7e09b.js b/assets/index-36b7e09b.js new file mode 100644 index 0000000..516b4fd --- /dev/null +++ b/assets/index-36b7e09b.js @@ -0,0 +1,360 @@ +var wl=(t,e,n)=>{if(!e.has(t))throw TypeError("Cannot "+n)};var x=(t,e,n)=>(wl(t,e,"read from private field"),n?n.call(t):e.get(t)),A=(t,e,n)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,n)},R=(t,e,n,i)=>(wl(t,e,"write to private field"),i?i.call(t,n):e.set(t,n),n);var yo=(t,e,n,i)=>({set _(r){R(t,e,r,n)},get _(){return x(t,e,i)}}),q=(t,e,n)=>(wl(t,e,"access private method"),n);(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))i(r);new MutationObserver(r=>{for(const s of r)if(s.type==="childList")for(const o of s.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&i(o)}).observe(document,{childList:!0,subtree:!0});function n(r){const s={};return r.integrity&&(s.integrity=r.integrity),r.referrerPolicy&&(s.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?s.credentials="include":r.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function i(r){if(r.ep)return;r.ep=!0;const s=n(r);fetch(r.href,s)}})();var Bm=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function sp(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var op={exports:{}},Ua={},ap={exports:{}},Q={};/** + * @license React + * react.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var oo=Symbol.for("react.element"),Um=Symbol.for("react.portal"),Hm=Symbol.for("react.fragment"),Gm=Symbol.for("react.strict_mode"),Wm=Symbol.for("react.profiler"),qm=Symbol.for("react.provider"),Qm=Symbol.for("react.context"),Vm=Symbol.for("react.forward_ref"),Km=Symbol.for("react.suspense"),Ym=Symbol.for("react.memo"),Xm=Symbol.for("react.lazy"),Yf=Symbol.iterator;function Zm(t){return t===null||typeof t!="object"?null:(t=Yf&&t[Yf]||t["@@iterator"],typeof t=="function"?t:null)}var lp={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},up=Object.assign,cp={};function Qr(t,e,n){this.props=t,this.context=e,this.refs=cp,this.updater=n||lp}Qr.prototype.isReactComponent={};Qr.prototype.setState=function(t,e){if(typeof t!="object"&&typeof t!="function"&&t!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,t,e,"setState")};Qr.prototype.forceUpdate=function(t){this.updater.enqueueForceUpdate(this,t,"forceUpdate")};function fp(){}fp.prototype=Qr.prototype;function Ac(t,e,n){this.props=t,this.context=e,this.refs=cp,this.updater=n||lp}var Fc=Ac.prototype=new fp;Fc.constructor=Ac;up(Fc,Qr.prototype);Fc.isPureReactComponent=!0;var Xf=Array.isArray,dp=Object.prototype.hasOwnProperty,Nc={current:null},hp={key:!0,ref:!0,__self:!0,__source:!0};function pp(t,e,n){var i,r={},s=null,o=null;if(e!=null)for(i in e.ref!==void 0&&(o=e.ref),e.key!==void 0&&(s=""+e.key),e)dp.call(e,i)&&!hp.hasOwnProperty(i)&&(r[i]=e[i]);var a=arguments.length-2;if(a===1)r.children=n;else if(1>>1,J=T[Z];if(0>>1;Zr(Ct,j))Ier(Ve,Ct)?(T[Z]=Ve,T[Ie]=j,Z=Ie):(T[Z]=Ct,T[Qe]=j,Z=Qe);else if(Ier(Ve,j))T[Z]=Ve,T[Ie]=j,Z=Ie;else break e}}return $}function r(T,$){var j=T.sortIndex-$.sortIndex;return j!==0?j:T.id-$.id}if(typeof performance=="object"&&typeof performance.now=="function"){var s=performance;t.unstable_now=function(){return s.now()}}else{var o=Date,a=o.now();t.unstable_now=function(){return o.now()-a}}var l=[],u=[],c=1,f=null,d=3,h=!1,g=!1,v=!1,k=typeof setTimeout=="function"?setTimeout:null,p=typeof clearTimeout=="function"?clearTimeout:null,m=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function y(T){for(var $=n(u);$!==null;){if($.callback===null)i(u);else if($.startTime<=T)i(u),$.sortIndex=$.expirationTime,e(l,$);else break;$=n(u)}}function w(T){if(v=!1,y(T),!g)if(n(l)!==null)g=!0,pn(S);else{var $=n(u);$!==null&&tt(w,$.startTime-T)}}function S(T,$){g=!1,v&&(v=!1,p(z),z=-1),h=!0;var j=d;try{for(y($),f=n(l);f!==null&&(!(f.expirationTime>$)||T&&!we());){var Z=f.callback;if(typeof Z=="function"){f.callback=null,d=f.priorityLevel;var J=Z(f.expirationTime<=$);$=t.unstable_now(),typeof J=="function"?f.callback=J:f===n(l)&&i(l),y($)}else i(l);f=n(l)}if(f!==null)var qe=!0;else{var Qe=n(u);Qe!==null&&tt(w,Qe.startTime-$),qe=!1}return qe}finally{f=null,d=j,h=!1}}var _=!1,C=null,z=-1,B=5,U=-1;function we(){return!(t.unstable_now()-UT||125Z?(T.sortIndex=j,e(u,T),n(l)===null&&T===n(u)&&(v?(p(z),z=-1):v=!0,tt(w,j-Z))):(T.sortIndex=J,e(l,T),g||h||(g=!0,pn(S))),T},t.unstable_shouldYield=we,t.unstable_wrapCallback=function(T){var $=d;return function(){var j=d;d=$;try{return T.apply(this,arguments)}finally{d=j}}}})(vp);gp.exports=vp;var uy=gp.exports;/** + * @license React + * react-dom.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var wp=I,wt=uy;function M(t){for(var e="https://reactjs.org/docs/error-decoder.html?invariant="+t,n=1;n"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),gu=Object.prototype.hasOwnProperty,cy=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,Jf={},ed={};function fy(t){return gu.call(ed,t)?!0:gu.call(Jf,t)?!1:cy.test(t)?ed[t]=!0:(Jf[t]=!0,!1)}function dy(t,e,n,i){if(n!==null&&n.type===0)return!1;switch(typeof e){case"function":case"symbol":return!0;case"boolean":return i?!1:n!==null?!n.acceptsBooleans:(t=t.toLowerCase().slice(0,5),t!=="data-"&&t!=="aria-");default:return!1}}function hy(t,e,n,i){if(e===null||typeof e>"u"||dy(t,e,n,i))return!0;if(i)return!1;if(n!==null)switch(n.type){case 3:return!e;case 4:return e===!1;case 5:return isNaN(e);case 6:return isNaN(e)||1>e}return!1}function et(t,e,n,i,r,s,o){this.acceptsBooleans=e===2||e===3||e===4,this.attributeName=i,this.attributeNamespace=r,this.mustUseProperty=n,this.propertyName=t,this.type=e,this.sanitizeURL=s,this.removeEmptyString=o}var Fe={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(t){Fe[t]=new et(t,0,!1,t,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(t){var e=t[0];Fe[e]=new et(e,1,!1,t[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(t){Fe[t]=new et(t,2,!1,t.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(t){Fe[t]=new et(t,2,!1,t,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(t){Fe[t]=new et(t,3,!1,t.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(t){Fe[t]=new et(t,3,!0,t,null,!1,!1)});["capture","download"].forEach(function(t){Fe[t]=new et(t,4,!1,t,null,!1,!1)});["cols","rows","size","span"].forEach(function(t){Fe[t]=new et(t,6,!1,t,null,!1,!1)});["rowSpan","start"].forEach(function(t){Fe[t]=new et(t,5,!1,t.toLowerCase(),null,!1,!1)});var jc=/[\-:]([a-z])/g;function Bc(t){return t[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(t){var e=t.replace(jc,Bc);Fe[e]=new et(e,1,!1,t,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(t){var e=t.replace(jc,Bc);Fe[e]=new et(e,1,!1,t,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(t){var e=t.replace(jc,Bc);Fe[e]=new et(e,1,!1,t,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(t){Fe[t]=new et(t,1,!1,t.toLowerCase(),null,!1,!1)});Fe.xlinkHref=new et("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(t){Fe[t]=new et(t,1,!1,t.toLowerCase(),null,!0,!0)});function Uc(t,e,n,i){var r=Fe.hasOwnProperty(e)?Fe[e]:null;(r!==null?r.type!==0:i||!(2a||r[o]!==s[a]){var l=` +`+r[o].replace(" at new "," at ");return t.displayName&&l.includes("")&&(l=l.replace("",t.displayName)),l}while(1<=o&&0<=a);break}}}finally{Sl=!1,Error.prepareStackTrace=n}return(t=t?t.displayName||t.name:"")?as(t):""}function py(t){switch(t.tag){case 5:return as(t.type);case 16:return as("Lazy");case 13:return as("Suspense");case 19:return as("SuspenseList");case 0:case 2:case 15:return t=Cl(t.type,!1),t;case 11:return t=Cl(t.type.render,!1),t;case 1:return t=Cl(t.type,!0),t;default:return""}}function ku(t){if(t==null)return null;if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t;switch(t){case Yi:return"Fragment";case Ki:return"Portal";case vu:return"Profiler";case Hc:return"StrictMode";case wu:return"Suspense";case xu:return"SuspenseList"}if(typeof t=="object")switch(t.$$typeof){case Sp:return(t.displayName||"Context")+".Consumer";case kp:return(t._context.displayName||"Context")+".Provider";case Gc:var e=t.render;return t=t.displayName,t||(t=e.displayName||e.name||"",t=t!==""?"ForwardRef("+t+")":"ForwardRef"),t;case Wc:return e=t.displayName||null,e!==null?e:ku(t.type)||"Memo";case Ln:e=t._payload,t=t._init;try{return ku(t(e))}catch{}}return null}function my(t){var e=t.type;switch(t.tag){case 24:return"Cache";case 9:return(e.displayName||"Context")+".Consumer";case 10:return(e._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return t=e.render,t=t.displayName||t.name||"",e.displayName||(t!==""?"ForwardRef("+t+")":"ForwardRef");case 7:return"Fragment";case 5:return e;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return ku(e);case 8:return e===Hc?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e}return null}function ai(t){switch(typeof t){case"boolean":case"number":case"string":case"undefined":return t;case"object":return t;default:return""}}function bp(t){var e=t.type;return(t=t.nodeName)&&t.toLowerCase()==="input"&&(e==="checkbox"||e==="radio")}function yy(t){var e=bp(t)?"checked":"value",n=Object.getOwnPropertyDescriptor(t.constructor.prototype,e),i=""+t[e];if(!t.hasOwnProperty(e)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var r=n.get,s=n.set;return Object.defineProperty(t,e,{configurable:!0,get:function(){return r.call(this)},set:function(o){i=""+o,s.call(this,o)}}),Object.defineProperty(t,e,{enumerable:n.enumerable}),{getValue:function(){return i},setValue:function(o){i=""+o},stopTracking:function(){t._valueTracker=null,delete t[e]}}}}function wo(t){t._valueTracker||(t._valueTracker=yy(t))}function _p(t){if(!t)return!1;var e=t._valueTracker;if(!e)return!0;var n=e.getValue(),i="";return t&&(i=bp(t)?t.checked?"true":"false":t.value),t=i,t!==n?(e.setValue(t),!0):!1}function sa(t){if(t=t||(typeof document<"u"?document:void 0),typeof t>"u")return null;try{return t.activeElement||t.body}catch{return t.body}}function Su(t,e){var n=e.checked;return he({},e,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??t._wrapperState.initialChecked})}function nd(t,e){var n=e.defaultValue==null?"":e.defaultValue,i=e.checked!=null?e.checked:e.defaultChecked;n=ai(e.value!=null?e.value:n),t._wrapperState={initialChecked:i,initialValue:n,controlled:e.type==="checkbox"||e.type==="radio"?e.checked!=null:e.value!=null}}function Ep(t,e){e=e.checked,e!=null&&Uc(t,"checked",e,!1)}function Cu(t,e){Ep(t,e);var n=ai(e.value),i=e.type;if(n!=null)i==="number"?(n===0&&t.value===""||t.value!=n)&&(t.value=""+n):t.value!==""+n&&(t.value=""+n);else if(i==="submit"||i==="reset"){t.removeAttribute("value");return}e.hasOwnProperty("value")?bu(t,e.type,n):e.hasOwnProperty("defaultValue")&&bu(t,e.type,ai(e.defaultValue)),e.checked==null&&e.defaultChecked!=null&&(t.defaultChecked=!!e.defaultChecked)}function id(t,e,n){if(e.hasOwnProperty("value")||e.hasOwnProperty("defaultValue")){var i=e.type;if(!(i!=="submit"&&i!=="reset"||e.value!==void 0&&e.value!==null))return;e=""+t._wrapperState.initialValue,n||e===t.value||(t.value=e),t.defaultValue=e}n=t.name,n!==""&&(t.name=""),t.defaultChecked=!!t._wrapperState.initialChecked,n!==""&&(t.name=n)}function bu(t,e,n){(e!=="number"||sa(t.ownerDocument)!==t)&&(n==null?t.defaultValue=""+t._wrapperState.initialValue:t.defaultValue!==""+n&&(t.defaultValue=""+n))}var ls=Array.isArray;function cr(t,e,n,i){if(t=t.options,e){e={};for(var r=0;r"+e.valueOf().toString()+"",e=xo.firstChild;t.firstChild;)t.removeChild(t.firstChild);for(;e.firstChild;)t.appendChild(e.firstChild)}});function Ps(t,e){if(e){var n=t.firstChild;if(n&&n===t.lastChild&&n.nodeType===3){n.nodeValue=e;return}}t.textContent=e}var ps={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},gy=["Webkit","ms","Moz","O"];Object.keys(ps).forEach(function(t){gy.forEach(function(e){e=e+t.charAt(0).toUpperCase()+t.substring(1),ps[e]=ps[t]})});function zp(t,e,n){return e==null||typeof e=="boolean"||e===""?"":n||typeof e!="number"||e===0||ps.hasOwnProperty(t)&&ps[t]?(""+e).trim():e+"px"}function Rp(t,e){t=t.style;for(var n in e)if(e.hasOwnProperty(n)){var i=n.indexOf("--")===0,r=zp(n,e[n],i);n==="float"&&(n="cssFloat"),i?t.setProperty(n,r):t[n]=r}}var vy=he({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function Pu(t,e){if(e){if(vy[t]&&(e.children!=null||e.dangerouslySetInnerHTML!=null))throw Error(M(137,t));if(e.dangerouslySetInnerHTML!=null){if(e.children!=null)throw Error(M(60));if(typeof e.dangerouslySetInnerHTML!="object"||!("__html"in e.dangerouslySetInnerHTML))throw Error(M(61))}if(e.style!=null&&typeof e.style!="object")throw Error(M(62))}}function Ou(t,e){if(t.indexOf("-")===-1)return typeof e.is=="string";switch(t){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var Mu=null;function qc(t){return t=t.target||t.srcElement||window,t.correspondingUseElement&&(t=t.correspondingUseElement),t.nodeType===3?t.parentNode:t}var zu=null,fr=null,dr=null;function od(t){if(t=uo(t)){if(typeof zu!="function")throw Error(M(280));var e=t.stateNode;e&&(e=Qa(e),zu(t.stateNode,t.type,e))}}function Tp(t){fr?dr?dr.push(t):dr=[t]:fr=t}function Ip(){if(fr){var t=fr,e=dr;if(dr=fr=null,od(t),e)for(t=0;t>>=0,t===0?32:31-(My(t)/zy|0)|0}var ko=64,So=4194304;function us(t){switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return t&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return t}}function ua(t,e){var n=t.pendingLanes;if(n===0)return 0;var i=0,r=t.suspendedLanes,s=t.pingedLanes,o=n&268435455;if(o!==0){var a=o&~r;a!==0?i=us(a):(s&=o,s!==0&&(i=us(s)))}else o=n&~r,o!==0?i=us(o):s!==0&&(i=us(s));if(i===0)return 0;if(e!==0&&e!==i&&!(e&r)&&(r=i&-i,s=e&-e,r>=s||r===16&&(s&4194240)!==0))return e;if(i&4&&(i|=n&16),e=t.entangledLanes,e!==0)for(t=t.entanglements,e&=i;0n;n++)e.push(t);return e}function ao(t,e,n){t.pendingLanes|=e,e!==536870912&&(t.suspendedLanes=0,t.pingedLanes=0),t=t.eventTimes,e=31-qt(e),t[e]=n}function Dy(t,e){var n=t.pendingLanes&~e;t.pendingLanes=e,t.suspendedLanes=0,t.pingedLanes=0,t.expiredLanes&=e,t.mutableReadLanes&=e,t.entangledLanes&=e,e=t.entanglements;var i=t.eventTimes;for(t=t.expirationTimes;0=ys),md=String.fromCharCode(32),yd=!1;function Jp(t,e){switch(t){case"keyup":return lg.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function e1(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var Xi=!1;function cg(t,e){switch(t){case"compositionend":return e1(e);case"keypress":return e.which!==32?null:(yd=!0,md);case"textInput":return t=e.data,t===md&&yd?null:t;default:return null}}function fg(t,e){if(Xi)return t==="compositionend"||!ef&&Jp(t,e)?(t=Xp(),jo=Xc=Qn=null,Xi=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1=e)return{node:n,offset:e-t};t=i}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=xd(n)}}function r1(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?r1(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function s1(){for(var t=window,e=sa();e instanceof t.HTMLIFrameElement;){try{var n=typeof e.contentWindow.location.href=="string"}catch{n=!1}if(n)t=e.contentWindow;else break;e=sa(t.document)}return e}function tf(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}function xg(t){var e=s1(),n=t.focusedElem,i=t.selectionRange;if(e!==n&&n&&n.ownerDocument&&r1(n.ownerDocument.documentElement,n)){if(i!==null&&tf(n)){if(e=i.start,t=i.end,t===void 0&&(t=e),"selectionStart"in n)n.selectionStart=e,n.selectionEnd=Math.min(t,n.value.length);else if(t=(e=n.ownerDocument||document)&&e.defaultView||window,t.getSelection){t=t.getSelection();var r=n.textContent.length,s=Math.min(i.start,r);i=i.end===void 0?s:Math.min(i.end,r),!t.extend&&s>i&&(r=i,i=s,s=r),r=kd(n,s);var o=kd(n,i);r&&o&&(t.rangeCount!==1||t.anchorNode!==r.node||t.anchorOffset!==r.offset||t.focusNode!==o.node||t.focusOffset!==o.offset)&&(e=e.createRange(),e.setStart(r.node,r.offset),t.removeAllRanges(),s>i?(t.addRange(e),t.extend(o.node,o.offset)):(e.setEnd(o.node,o.offset),t.addRange(e)))}}for(e=[],t=n;t=t.parentNode;)t.nodeType===1&&e.push({element:t,left:t.scrollLeft,top:t.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n=document.documentMode,Zi=null,Au=null,vs=null,Fu=!1;function Sd(t,e,n){var i=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Fu||Zi==null||Zi!==sa(i)||(i=Zi,"selectionStart"in i&&tf(i)?i={start:i.selectionStart,end:i.selectionEnd}:(i=(i.ownerDocument&&i.ownerDocument.defaultView||window).getSelection(),i={anchorNode:i.anchorNode,anchorOffset:i.anchorOffset,focusNode:i.focusNode,focusOffset:i.focusOffset}),vs&&Is(vs,i)||(vs=i,i=da(Au,"onSelect"),0tr||(t.current=Hu[tr],Hu[tr]=null,tr--)}function te(t,e){tr++,Hu[tr]=t.current,t.current=e}var li={},We=ci(li),at=ci(!1),Li=li;function Tr(t,e){var n=t.type.contextTypes;if(!n)return li;var i=t.stateNode;if(i&&i.__reactInternalMemoizedUnmaskedChildContext===e)return i.__reactInternalMemoizedMaskedChildContext;var r={},s;for(s in n)r[s]=e[s];return i&&(t=t.stateNode,t.__reactInternalMemoizedUnmaskedChildContext=e,t.__reactInternalMemoizedMaskedChildContext=r),r}function lt(t){return t=t.childContextTypes,t!=null}function pa(){oe(at),oe(We)}function Md(t,e,n){if(We.current!==li)throw Error(M(168));te(We,e),te(at,n)}function p1(t,e,n){var i=t.stateNode;if(e=e.childContextTypes,typeof i.getChildContext!="function")return n;i=i.getChildContext();for(var r in i)if(!(r in e))throw Error(M(108,my(t)||"Unknown",r));return he({},n,i)}function ma(t){return t=(t=t.stateNode)&&t.__reactInternalMemoizedMergedChildContext||li,Li=We.current,te(We,t),te(at,at.current),!0}function zd(t,e,n){var i=t.stateNode;if(!i)throw Error(M(169));n?(t=p1(t,e,Li),i.__reactInternalMemoizedMergedChildContext=t,oe(at),oe(We),te(We,t)):oe(at),te(at,n)}var xn=null,Va=!1,Fl=!1;function m1(t){xn===null?xn=[t]:xn.push(t)}function Tg(t){Va=!0,m1(t)}function fi(){if(!Fl&&xn!==null){Fl=!0;var t=0,e=X;try{var n=xn;for(X=1;t>=o,r-=o,kn=1<<32-qt(e)+r|n<z?(B=C,C=null):B=C.sibling;var U=d(p,C,y[z],w);if(U===null){C===null&&(C=B);break}t&&C&&U.alternate===null&&e(p,C),m=s(U,m,z),_===null?S=U:_.sibling=U,_=U,C=B}if(z===y.length)return n(p,C),le&&yi(p,z),S;if(C===null){for(;zz?(B=C,C=null):B=C.sibling;var we=d(p,C,U.value,w);if(we===null){C===null&&(C=B);break}t&&C&&we.alternate===null&&e(p,C),m=s(we,m,z),_===null?S=we:_.sibling=we,_=we,C=B}if(U.done)return n(p,C),le&&yi(p,z),S;if(C===null){for(;!U.done;z++,U=y.next())U=f(p,U.value,w),U!==null&&(m=s(U,m,z),_===null?S=U:_.sibling=U,_=U);return le&&yi(p,z),S}for(C=i(p,C);!U.done;z++,U=y.next())U=h(C,p,z,U.value,w),U!==null&&(t&&U.alternate!==null&&C.delete(U.key===null?z:U.key),m=s(U,m,z),_===null?S=U:_.sibling=U,_=U);return t&&C.forEach(function(St){return e(p,St)}),le&&yi(p,z),S}function k(p,m,y,w){if(typeof y=="object"&&y!==null&&y.type===Yi&&y.key===null&&(y=y.props.children),typeof y=="object"&&y!==null){switch(y.$$typeof){case vo:e:{for(var S=y.key,_=m;_!==null;){if(_.key===S){if(S=y.type,S===Yi){if(_.tag===7){n(p,_.sibling),m=r(_,y.props.children),m.return=p,p=m;break e}}else if(_.elementType===S||typeof S=="object"&&S!==null&&S.$$typeof===Ln&&Fd(S)===_.type){n(p,_.sibling),m=r(_,y.props),m.ref=rs(p,_,y),m.return=p,p=m;break e}n(p,_);break}else e(p,_);_=_.sibling}y.type===Yi?(m=Ti(y.props.children,p.mode,w,y.key),m.return=p,p=m):(w=Vo(y.type,y.key,y.props,null,p.mode,w),w.ref=rs(p,m,y),w.return=p,p=w)}return o(p);case Ki:e:{for(_=y.key;m!==null;){if(m.key===_)if(m.tag===4&&m.stateNode.containerInfo===y.containerInfo&&m.stateNode.implementation===y.implementation){n(p,m.sibling),m=r(m,y.children||[]),m.return=p,p=m;break e}else{n(p,m);break}else e(p,m);m=m.sibling}m=Wl(y,p.mode,w),m.return=p,p=m}return o(p);case Ln:return _=y._init,k(p,m,_(y._payload),w)}if(ls(y))return g(p,m,y,w);if(Jr(y))return v(p,m,y,w);Mo(p,y)}return typeof y=="string"&&y!==""||typeof y=="number"?(y=""+y,m!==null&&m.tag===6?(n(p,m.sibling),m=r(m,y),m.return=p,p=m):(n(p,m),m=Gl(y,p.mode,w),m.return=p,p=m),o(p)):n(p,m)}return k}var Dr=C1(!0),b1=C1(!1),co={},dn=ci(co),Fs=ci(co),Ns=ci(co);function xi(t){if(t===co)throw Error(M(174));return t}function ff(t,e){switch(te(Ns,e),te(Fs,t),te(dn,co),t=e.nodeType,t){case 9:case 11:e=(e=e.documentElement)?e.namespaceURI:Eu(null,"");break;default:t=t===8?e.parentNode:e,e=t.namespaceURI||null,t=t.tagName,e=Eu(e,t)}oe(dn),te(dn,e)}function Lr(){oe(dn),oe(Fs),oe(Ns)}function _1(t){xi(Ns.current);var e=xi(dn.current),n=Eu(e,t.type);e!==n&&(te(Fs,t),te(dn,n))}function df(t){Fs.current===t&&(oe(dn),oe(Fs))}var ce=ci(0);function ka(t){for(var e=t;e!==null;){if(e.tag===13){var n=e.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||n.data==="$?"||n.data==="$!"))return e}else if(e.tag===19&&e.memoizedProps.revealOrder!==void 0){if(e.flags&128)return e}else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break;for(;e.sibling===null;){if(e.return===null||e.return===t)return null;e=e.return}e.sibling.return=e.return,e=e.sibling}return null}var Nl=[];function hf(){for(var t=0;tn?n:4,t(!0);var i=$l.transition;$l.transition={};try{t(!1),e()}finally{X=n,$l.transition=i}}function B1(){return Lt().memoizedState}function Ag(t,e,n){var i=ni(t);if(n={lane:i,action:n,hasEagerState:!1,eagerState:null,next:null},U1(t))H1(e,n);else if(n=w1(t,e,n,i),n!==null){var r=Xe();Qt(n,t,i,r),G1(n,e,i)}}function Fg(t,e,n){var i=ni(t),r={lane:i,action:n,hasEagerState:!1,eagerState:null,next:null};if(U1(t))H1(e,r);else{var s=t.alternate;if(t.lanes===0&&(s===null||s.lanes===0)&&(s=e.lastRenderedReducer,s!==null))try{var o=e.lastRenderedState,a=s(o,n);if(r.hasEagerState=!0,r.eagerState=a,Zt(a,o)){var l=e.interleaved;l===null?(r.next=r,uf(e)):(r.next=l.next,l.next=r),e.interleaved=r;return}}catch{}finally{}n=w1(t,e,r,i),n!==null&&(r=Xe(),Qt(n,t,i,r),G1(n,e,i))}}function U1(t){var e=t.alternate;return t===de||e!==null&&e===de}function H1(t,e){ws=Sa=!0;var n=t.pending;n===null?e.next=e:(e.next=n.next,n.next=e),t.pending=e}function G1(t,e,n){if(n&4194240){var i=e.lanes;i&=t.pendingLanes,n|=i,e.lanes=n,Vc(t,n)}}var Ca={readContext:Dt,useCallback:$e,useContext:$e,useEffect:$e,useImperativeHandle:$e,useInsertionEffect:$e,useLayoutEffect:$e,useMemo:$e,useReducer:$e,useRef:$e,useState:$e,useDebugValue:$e,useDeferredValue:$e,useTransition:$e,useMutableSource:$e,useSyncExternalStore:$e,useId:$e,unstable_isNewReconciler:!1},Ng={readContext:Dt,useCallback:function(t,e){return rn().memoizedState=[t,e===void 0?null:e],t},useContext:Dt,useEffect:$d,useImperativeHandle:function(t,e,n){return n=n!=null?n.concat([t]):null,Go(4194308,4,A1.bind(null,e,t),n)},useLayoutEffect:function(t,e){return Go(4194308,4,t,e)},useInsertionEffect:function(t,e){return Go(4,2,t,e)},useMemo:function(t,e){var n=rn();return e=e===void 0?null:e,t=t(),n.memoizedState=[t,e],t},useReducer:function(t,e,n){var i=rn();return e=n!==void 0?n(e):e,i.memoizedState=i.baseState=e,t={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:e},i.queue=t,t=t.dispatch=Ag.bind(null,de,t),[i.memoizedState,t]},useRef:function(t){var e=rn();return t={current:t},e.memoizedState=t},useState:Nd,useDebugValue:vf,useDeferredValue:function(t){return rn().memoizedState=t},useTransition:function(){var t=Nd(!1),e=t[0];return t=Lg.bind(null,t[1]),rn().memoizedState=t,[e,t]},useMutableSource:function(){},useSyncExternalStore:function(t,e,n){var i=de,r=rn();if(le){if(n===void 0)throw Error(M(407));n=n()}else{if(n=e(),ze===null)throw Error(M(349));Fi&30||O1(i,e,n)}r.memoizedState=n;var s={value:n,getSnapshot:e};return r.queue=s,$d(z1.bind(null,i,s,t),[t]),i.flags|=2048,Bs(9,M1.bind(null,i,s,n,e),void 0,null),n},useId:function(){var t=rn(),e=ze.identifierPrefix;if(le){var n=Sn,i=kn;n=(i&~(1<<32-qt(i)-1)).toString(32)+n,e=":"+e+"R"+n,n=$s++,0<\/script>",t=t.removeChild(t.firstChild)):typeof i.is=="string"?t=o.createElement(n,{is:i.is}):(t=o.createElement(n),n==="select"&&(o=t,i.multiple?o.multiple=!0:i.size&&(o.size=i.size))):t=o.createElementNS(t,n),t[cn]=e,t[As]=i,J1(t,e,!1,!1),e.stateNode=t;e:{switch(o=Ou(n,i),n){case"dialog":re("cancel",t),re("close",t),r=i;break;case"iframe":case"object":case"embed":re("load",t),r=i;break;case"video":case"audio":for(r=0;rFr&&(e.flags|=128,i=!0,ss(s,!1),e.lanes=4194304)}else{if(!i)if(t=ka(o),t!==null){if(e.flags|=128,i=!0,n=t.updateQueue,n!==null&&(e.updateQueue=n,e.flags|=4),ss(s,!0),s.tail===null&&s.tailMode==="hidden"&&!o.alternate&&!le)return je(e),null}else 2*ye()-s.renderingStartTime>Fr&&n!==1073741824&&(e.flags|=128,i=!0,ss(s,!1),e.lanes=4194304);s.isBackwards?(o.sibling=e.child,e.child=o):(n=s.last,n!==null?n.sibling=o:e.child=o,s.last=o)}return s.tail!==null?(e=s.tail,s.rendering=e,s.tail=e.sibling,s.renderingStartTime=ye(),e.sibling=null,n=ce.current,te(ce,i?n&1|2:n&1),e):(je(e),null);case 22:case 23:return bf(),i=e.memoizedState!==null,t!==null&&t.memoizedState!==null!==i&&(e.flags|=8192),i&&e.mode&1?ht&1073741824&&(je(e),e.subtreeFlags&6&&(e.flags|=8192)):je(e),null;case 24:return null;case 25:return null}throw Error(M(156,e.tag))}function qg(t,e){switch(rf(e),e.tag){case 1:return lt(e.type)&&pa(),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return Lr(),oe(at),oe(We),hf(),t=e.flags,t&65536&&!(t&128)?(e.flags=t&-65537|128,e):null;case 5:return df(e),null;case 13:if(oe(ce),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(M(340));Ir()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return oe(ce),null;case 4:return Lr(),null;case 10:return lf(e.type._context),null;case 22:case 23:return bf(),null;case 24:return null;default:return null}}var Ro=!1,Ue=!1,Qg=typeof WeakSet=="function"?WeakSet:Set,D=null;function sr(t,e){var n=t.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(i){me(t,e,i)}else n.current=null}function tc(t,e,n){try{n()}catch(i){me(t,e,i)}}var Vd=!1;function Vg(t,e){if(Nu=ca,t=s1(),tf(t)){if("selectionStart"in t)var n={start:t.selectionStart,end:t.selectionEnd};else e:{n=(n=t.ownerDocument)&&n.defaultView||window;var i=n.getSelection&&n.getSelection();if(i&&i.rangeCount!==0){n=i.anchorNode;var r=i.anchorOffset,s=i.focusNode;i=i.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var o=0,a=-1,l=-1,u=0,c=0,f=t,d=null;t:for(;;){for(var h;f!==n||r!==0&&f.nodeType!==3||(a=o+r),f!==s||i!==0&&f.nodeType!==3||(l=o+i),f.nodeType===3&&(o+=f.nodeValue.length),(h=f.firstChild)!==null;)d=f,f=h;for(;;){if(f===t)break t;if(d===n&&++u===r&&(a=o),d===s&&++c===i&&(l=o),(h=f.nextSibling)!==null)break;f=d,d=f.parentNode}f=h}n=a===-1||l===-1?null:{start:a,end:l}}else n=null}n=n||{start:0,end:0}}else n=null;for($u={focusedElem:t,selectionRange:n},ca=!1,D=e;D!==null;)if(e=D,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,D=t;else for(;D!==null;){e=D;try{var g=e.alternate;if(e.flags&1024)switch(e.tag){case 0:case 11:case 15:break;case 1:if(g!==null){var v=g.memoizedProps,k=g.memoizedState,p=e.stateNode,m=p.getSnapshotBeforeUpdate(e.elementType===e.type?v:Ut(e.type,v),k);p.__reactInternalSnapshotBeforeUpdate=m}break;case 3:var y=e.stateNode.containerInfo;y.nodeType===1?y.textContent="":y.nodeType===9&&y.documentElement&&y.removeChild(y.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(M(163))}}catch(w){me(e,e.return,w)}if(t=e.sibling,t!==null){t.return=e.return,D=t;break}D=e.return}return g=Vd,Vd=!1,g}function xs(t,e,n){var i=e.updateQueue;if(i=i!==null?i.lastEffect:null,i!==null){var r=i=i.next;do{if((r.tag&t)===t){var s=r.destroy;r.destroy=void 0,s!==void 0&&tc(e,n,s)}r=r.next}while(r!==i)}}function Xa(t,e){if(e=e.updateQueue,e=e!==null?e.lastEffect:null,e!==null){var n=e=e.next;do{if((n.tag&t)===t){var i=n.create;n.destroy=i()}n=n.next}while(n!==e)}}function nc(t){var e=t.ref;if(e!==null){var n=t.stateNode;switch(t.tag){case 5:t=n;break;default:t=n}typeof e=="function"?e(t):e.current=t}}function n0(t){var e=t.alternate;e!==null&&(t.alternate=null,n0(e)),t.child=null,t.deletions=null,t.sibling=null,t.tag===5&&(e=t.stateNode,e!==null&&(delete e[cn],delete e[As],delete e[Uu],delete e[zg],delete e[Rg])),t.stateNode=null,t.return=null,t.dependencies=null,t.memoizedProps=null,t.memoizedState=null,t.pendingProps=null,t.stateNode=null,t.updateQueue=null}function i0(t){return t.tag===5||t.tag===3||t.tag===4}function Kd(t){e:for(;;){for(;t.sibling===null;){if(t.return===null||i0(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.flags&2||t.child===null||t.tag===4)continue e;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function ic(t,e,n){var i=t.tag;if(i===5||i===6)t=t.stateNode,e?n.nodeType===8?n.parentNode.insertBefore(t,e):n.insertBefore(t,e):(n.nodeType===8?(e=n.parentNode,e.insertBefore(t,n)):(e=n,e.appendChild(t)),n=n._reactRootContainer,n!=null||e.onclick!==null||(e.onclick=ha));else if(i!==4&&(t=t.child,t!==null))for(ic(t,e,n),t=t.sibling;t!==null;)ic(t,e,n),t=t.sibling}function rc(t,e,n){var i=t.tag;if(i===5||i===6)t=t.stateNode,e?n.insertBefore(t,e):n.appendChild(t);else if(i!==4&&(t=t.child,t!==null))for(rc(t,e,n),t=t.sibling;t!==null;)rc(t,e,n),t=t.sibling}var De=null,Gt=!1;function Tn(t,e,n){for(n=n.child;n!==null;)r0(t,e,n),n=n.sibling}function r0(t,e,n){if(fn&&typeof fn.onCommitFiberUnmount=="function")try{fn.onCommitFiberUnmount(Ha,n)}catch{}switch(n.tag){case 5:Ue||sr(n,e);case 6:var i=De,r=Gt;De=null,Tn(t,e,n),De=i,Gt=r,De!==null&&(Gt?(t=De,n=n.stateNode,t.nodeType===8?t.parentNode.removeChild(n):t.removeChild(n)):De.removeChild(n.stateNode));break;case 18:De!==null&&(Gt?(t=De,n=n.stateNode,t.nodeType===8?Al(t.parentNode,n):t.nodeType===1&&Al(t,n),Rs(t)):Al(De,n.stateNode));break;case 4:i=De,r=Gt,De=n.stateNode.containerInfo,Gt=!0,Tn(t,e,n),De=i,Gt=r;break;case 0:case 11:case 14:case 15:if(!Ue&&(i=n.updateQueue,i!==null&&(i=i.lastEffect,i!==null))){r=i=i.next;do{var s=r,o=s.destroy;s=s.tag,o!==void 0&&(s&2||s&4)&&tc(n,e,o),r=r.next}while(r!==i)}Tn(t,e,n);break;case 1:if(!Ue&&(sr(n,e),i=n.stateNode,typeof i.componentWillUnmount=="function"))try{i.props=n.memoizedProps,i.state=n.memoizedState,i.componentWillUnmount()}catch(a){me(n,e,a)}Tn(t,e,n);break;case 21:Tn(t,e,n);break;case 22:n.mode&1?(Ue=(i=Ue)||n.memoizedState!==null,Tn(t,e,n),Ue=i):Tn(t,e,n);break;default:Tn(t,e,n)}}function Yd(t){var e=t.updateQueue;if(e!==null){t.updateQueue=null;var n=t.stateNode;n===null&&(n=t.stateNode=new Qg),e.forEach(function(i){var r=i2.bind(null,t,i);n.has(i)||(n.add(i),i.then(r,r))})}}function Bt(t,e){var n=e.deletions;if(n!==null)for(var i=0;ir&&(r=o),i&=~s}if(i=r,i=ye()-i,i=(120>i?120:480>i?480:1080>i?1080:1920>i?1920:3e3>i?3e3:4320>i?4320:1960*Yg(i/1960))-i,10t?16:t,Vn===null)var i=!1;else{if(t=Vn,Vn=null,Ea=0,V&6)throw Error(M(331));var r=V;for(V|=4,D=t.current;D!==null;){var s=D,o=s.child;if(D.flags&16){var a=s.deletions;if(a!==null){for(var l=0;lye()-Sf?Ri(t,0):kf|=n),ut(t,e)}function d0(t,e){e===0&&(t.mode&1?(e=So,So<<=1,!(So&130023424)&&(So=4194304)):e=1);var n=Xe();t=On(t,e),t!==null&&(ao(t,e,n),ut(t,n))}function n2(t){var e=t.memoizedState,n=0;e!==null&&(n=e.retryLane),d0(t,n)}function i2(t,e){var n=0;switch(t.tag){case 13:var i=t.stateNode,r=t.memoizedState;r!==null&&(n=r.retryLane);break;case 19:i=t.stateNode;break;default:throw Error(M(314))}i!==null&&i.delete(e),d0(t,n)}var h0;h0=function(t,e,n){if(t!==null)if(t.memoizedProps!==e.pendingProps||at.current)rt=!0;else{if(!(t.lanes&n)&&!(e.flags&128))return rt=!1,Gg(t,e,n);rt=!!(t.flags&131072)}else rt=!1,le&&e.flags&1048576&&y1(e,ga,e.index);switch(e.lanes=0,e.tag){case 2:var i=e.type;Wo(t,e),t=e.pendingProps;var r=Tr(e,We.current);pr(e,n),r=mf(null,e,i,t,r,n);var s=yf();return e.flags|=1,typeof r=="object"&&r!==null&&typeof r.render=="function"&&r.$$typeof===void 0?(e.tag=1,e.memoizedState=null,e.updateQueue=null,lt(i)?(s=!0,ma(e)):s=!1,e.memoizedState=r.state!==null&&r.state!==void 0?r.state:null,cf(e),r.updater=Ka,e.stateNode=r,r._reactInternals=e,Vu(e,i,t,n),e=Xu(null,e,i,!0,s,n)):(e.tag=0,le&&s&&nf(e),Ke(null,e,r,n),e=e.child),e;case 16:i=e.elementType;e:{switch(Wo(t,e),t=e.pendingProps,r=i._init,i=r(i._payload),e.type=i,r=e.tag=s2(i),t=Ut(i,t),r){case 0:e=Yu(null,e,i,t,n);break e;case 1:e=Wd(null,e,i,t,n);break e;case 11:e=Hd(null,e,i,t,n);break e;case 14:e=Gd(null,e,i,Ut(i.type,t),n);break e}throw Error(M(306,i,""))}return e;case 0:return i=e.type,r=e.pendingProps,r=e.elementType===i?r:Ut(i,r),Yu(t,e,i,r,n);case 1:return i=e.type,r=e.pendingProps,r=e.elementType===i?r:Ut(i,r),Wd(t,e,i,r,n);case 3:e:{if(Y1(e),t===null)throw Error(M(387));i=e.pendingProps,s=e.memoizedState,r=s.element,x1(t,e),xa(e,i,null,n);var o=e.memoizedState;if(i=o.element,s.isDehydrated)if(s={element:i,isDehydrated:!1,cache:o.cache,pendingSuspenseBoundaries:o.pendingSuspenseBoundaries,transitions:o.transitions},e.updateQueue.baseState=s,e.memoizedState=s,e.flags&256){r=Ar(Error(M(423)),e),e=qd(t,e,i,n,r);break e}else if(i!==r){r=Ar(Error(M(424)),e),e=qd(t,e,i,n,r);break e}else for(pt=Jn(e.stateNode.containerInfo.firstChild),yt=e,le=!0,Wt=null,n=b1(e,null,i,n),e.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(Ir(),i===r){e=Mn(t,e,n);break e}Ke(t,e,i,n)}e=e.child}return e;case 5:return _1(e),t===null&&Wu(e),i=e.type,r=e.pendingProps,s=t!==null?t.memoizedProps:null,o=r.children,ju(i,r)?o=null:s!==null&&ju(i,s)&&(e.flags|=32),K1(t,e),Ke(t,e,o,n),e.child;case 6:return t===null&&Wu(e),null;case 13:return X1(t,e,n);case 4:return ff(e,e.stateNode.containerInfo),i=e.pendingProps,t===null?e.child=Dr(e,null,i,n):Ke(t,e,i,n),e.child;case 11:return i=e.type,r=e.pendingProps,r=e.elementType===i?r:Ut(i,r),Hd(t,e,i,r,n);case 7:return Ke(t,e,e.pendingProps,n),e.child;case 8:return Ke(t,e,e.pendingProps.children,n),e.child;case 12:return Ke(t,e,e.pendingProps.children,n),e.child;case 10:e:{if(i=e.type._context,r=e.pendingProps,s=e.memoizedProps,o=r.value,te(va,i._currentValue),i._currentValue=o,s!==null)if(Zt(s.value,o)){if(s.children===r.children&&!at.current){e=Mn(t,e,n);break e}}else for(s=e.child,s!==null&&(s.return=e);s!==null;){var a=s.dependencies;if(a!==null){o=s.child;for(var l=a.firstContext;l!==null;){if(l.context===i){if(s.tag===1){l=Cn(-1,n&-n),l.tag=2;var u=s.updateQueue;if(u!==null){u=u.shared;var c=u.pending;c===null?l.next=l:(l.next=c.next,c.next=l),u.pending=l}}s.lanes|=n,l=s.alternate,l!==null&&(l.lanes|=n),qu(s.return,n,e),a.lanes|=n;break}l=l.next}}else if(s.tag===10)o=s.type===e.type?null:s.child;else if(s.tag===18){if(o=s.return,o===null)throw Error(M(341));o.lanes|=n,a=o.alternate,a!==null&&(a.lanes|=n),qu(o,n,e),o=s.sibling}else o=s.child;if(o!==null)o.return=s;else for(o=s;o!==null;){if(o===e){o=null;break}if(s=o.sibling,s!==null){s.return=o.return,o=s;break}o=o.return}s=o}Ke(t,e,r.children,n),e=e.child}return e;case 9:return r=e.type,i=e.pendingProps.children,pr(e,n),r=Dt(r),i=i(r),e.flags|=1,Ke(t,e,i,n),e.child;case 14:return i=e.type,r=Ut(i,e.pendingProps),r=Ut(i.type,r),Gd(t,e,i,r,n);case 15:return Q1(t,e,e.type,e.pendingProps,n);case 17:return i=e.type,r=e.pendingProps,r=e.elementType===i?r:Ut(i,r),Wo(t,e),e.tag=1,lt(i)?(t=!0,ma(e)):t=!1,pr(e,n),S1(e,i,r),Vu(e,i,r,n),Xu(null,e,i,!0,t,n);case 19:return Z1(t,e,n);case 22:return V1(t,e,n)}throw Error(M(156,e.tag))};function p0(t,e){return jp(t,e)}function r2(t,e,n,i){this.tag=t,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=e,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=i,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Rt(t,e,n,i){return new r2(t,e,n,i)}function Ef(t){return t=t.prototype,!(!t||!t.isReactComponent)}function s2(t){if(typeof t=="function")return Ef(t)?1:0;if(t!=null){if(t=t.$$typeof,t===Gc)return 11;if(t===Wc)return 14}return 2}function ii(t,e){var n=t.alternate;return n===null?(n=Rt(t.tag,e,t.key,t.mode),n.elementType=t.elementType,n.type=t.type,n.stateNode=t.stateNode,n.alternate=t,t.alternate=n):(n.pendingProps=e,n.type=t.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=t.flags&14680064,n.childLanes=t.childLanes,n.lanes=t.lanes,n.child=t.child,n.memoizedProps=t.memoizedProps,n.memoizedState=t.memoizedState,n.updateQueue=t.updateQueue,e=t.dependencies,n.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext},n.sibling=t.sibling,n.index=t.index,n.ref=t.ref,n}function Vo(t,e,n,i,r,s){var o=2;if(i=t,typeof t=="function")Ef(t)&&(o=1);else if(typeof t=="string")o=5;else e:switch(t){case Yi:return Ti(n.children,r,s,e);case Hc:o=8,r|=8;break;case vu:return t=Rt(12,n,e,r|2),t.elementType=vu,t.lanes=s,t;case wu:return t=Rt(13,n,e,r),t.elementType=wu,t.lanes=s,t;case xu:return t=Rt(19,n,e,r),t.elementType=xu,t.lanes=s,t;case Cp:return Ja(n,r,s,e);default:if(typeof t=="object"&&t!==null)switch(t.$$typeof){case kp:o=10;break e;case Sp:o=9;break e;case Gc:o=11;break e;case Wc:o=14;break e;case Ln:o=16,i=null;break e}throw Error(M(130,t==null?t:typeof t,""))}return e=Rt(o,n,e,r),e.elementType=t,e.type=i,e.lanes=s,e}function Ti(t,e,n,i){return t=Rt(7,t,i,e),t.lanes=n,t}function Ja(t,e,n,i){return t=Rt(22,t,i,e),t.elementType=Cp,t.lanes=n,t.stateNode={isHidden:!1},t}function Gl(t,e,n){return t=Rt(6,t,null,e),t.lanes=n,t}function Wl(t,e,n){return e=Rt(4,t.children!==null?t.children:[],t.key,e),e.lanes=n,e.stateNode={containerInfo:t.containerInfo,pendingChildren:null,implementation:t.implementation},e}function o2(t,e,n,i,r){this.tag=e,this.containerInfo=t,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=_l(0),this.expirationTimes=_l(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=_l(0),this.identifierPrefix=i,this.onRecoverableError=r,this.mutableSourceEagerHydrationData=null}function Pf(t,e,n,i,r,s,o,a,l){return t=new o2(t,e,n,a,l),e===1?(e=1,s===!0&&(e|=8)):e=0,s=Rt(3,null,null,e),t.current=s,s.stateNode=t,s.memoizedState={element:i,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},cf(s),t}function a2(t,e,n){var i=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(v0)}catch(t){console.error(t)}}v0(),yp.exports=xt;var d2=yp.exports,rh=d2;yu.createRoot=rh.createRoot,yu.hydrateRoot=rh.hydrateRoot;const h2="modulepreload",p2=function(t){return"/guessing-game/"+t},sh={},m2=function(e,n,i){if(!n||n.length===0)return e();const r=document.getElementsByTagName("link");return Promise.all(n.map(s=>{if(s=p2(s),s in sh)return;sh[s]=!0;const o=s.endsWith(".css"),a=o?'[rel="stylesheet"]':"";if(!!i)for(let c=r.length-1;c>=0;c--){const f=r[c];if(f.href===s&&(!o||f.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${s}"]${a}`))return;const u=document.createElement("link");if(u.rel=o?"stylesheet":h2,o||(u.as="script",u.crossOrigin=""),u.href=s,document.head.appendChild(u),o)return new Promise((c,f)=>{u.addEventListener("load",c),u.addEventListener("error",()=>f(new Error(`Unable to preload CSS for ${s}`)))})})).then(()=>e()).catch(s=>{const o=new Event("vite:preloadError",{cancelable:!0});if(o.payload=s,window.dispatchEvent(o),!o.defaultPrevented)throw s})};let y2={data:""},g2=t=>typeof window=="object"?((t?t.querySelector("#_goober"):window._goober)||Object.assign((t||document.head).appendChild(document.createElement("style")),{innerHTML:" ",id:"_goober"})).firstChild:t||y2,v2=/(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}\s*)/g,w2=/\/\*[^]*?\*\/| +/g,oh=/\n+/g,$n=(t,e)=>{let n="",i="",r="";for(let s in t){let o=t[s];s[0]=="@"?s[1]=="i"?n=s+" "+o+";":i+=s[1]=="f"?$n(o,s):s+"{"+$n(o,s[1]=="k"?"":e)+"}":typeof o=="object"?i+=$n(o,e?e.replace(/([^,])+/g,a=>s.replace(/(^:.*)|([^,])+/g,l=>/&/.test(l)?l.replace(/&/g,a):a?a+" "+l:l)):s):o!=null&&(s=/^--/.test(s)?s:s.replace(/[A-Z]/g,"-$&").toLowerCase(),r+=$n.p?$n.p(s,o):s+":"+o+";")}return n+(e&&r?e+"{"+r+"}":r)+i},yn={},w0=t=>{if(typeof t=="object"){let e="";for(let n in t)e+=n+w0(t[n]);return e}return t},x2=(t,e,n,i,r)=>{let s=w0(t),o=yn[s]||(yn[s]=(l=>{let u=0,c=11;for(;u>>0;return"go"+c})(s));if(!yn[o]){let l=s!==t?t:(u=>{let c,f,d=[{}];for(;c=v2.exec(u.replace(w2,""));)c[4]?d.shift():c[3]?(f=c[3].replace(oh," ").trim(),d.unshift(d[0][f]=d[0][f]||{})):d[0][c[1]]=c[2].replace(oh," ").trim();return d[0]})(t);yn[o]=$n(r?{["@keyframes "+o]:l}:l,n?"":"."+o)}let a=n&&yn.g?yn.g:null;return n&&(yn.g=yn[o]),((l,u,c,f)=>{f?u.data=u.data.replace(f,l):u.data.indexOf(l)===-1&&(u.data=c?l+u.data:u.data+l)})(yn[o],e,i,a),o},k2=(t,e,n)=>t.reduce((i,r,s)=>{let o=e[s];if(o&&o.call){let a=o(n),l=a&&a.props&&a.props.className||/^go/.test(a)&&a;o=l?"."+l:a&&typeof a=="object"?a.props?"":$n(a,""):a===!1?"":a}return i+r+(o??"")},"");function rl(t){let e=this||{},n=t.call?t(e.p):t;return x2(n.unshift?n.raw?k2(n,[].slice.call(arguments,1),e.p):n.reduce((i,r)=>Object.assign(i,r&&r.call?r(e.p):r),{}):n,g2(e.target),e.g,e.o,e.k)}let x0,uc,cc;rl.bind({g:1});let zn=rl.bind({k:1});function S2(t,e,n,i){$n.p=e,x0=t,uc=n,cc=i}function di(t,e){let n=this||{};return function(){let i=arguments;function r(s,o){let a=Object.assign({},s),l=a.className||r.className;n.p=Object.assign({theme:uc&&uc()},a),n.o=/ *go\d+/.test(l),a.className=rl.apply(n,i)+(l?" "+l:""),e&&(a.ref=o);let u=t;return t[0]&&(u=a.as||t,delete a.as),cc&&u[0]&&cc(a),x0(u,a)}return e?e(r):r}}var C2=t=>typeof t=="function",Ma=(t,e)=>C2(t)?t(e):t,b2=(()=>{let t=0;return()=>(++t).toString()})(),k0=(()=>{let t;return()=>{if(t===void 0&&typeof window<"u"){let e=matchMedia("(prefers-reduced-motion: reduce)");t=!e||e.matches}return t}})(),_2=20,Ko=new Map,E2=1e3,ah=t=>{if(Ko.has(t))return;let e=setTimeout(()=>{Ko.delete(t),Wi({type:4,toastId:t})},E2);Ko.set(t,e)},P2=t=>{let e=Ko.get(t);e&&clearTimeout(e)},fc=(t,e)=>{switch(e.type){case 0:return{...t,toasts:[e.toast,...t.toasts].slice(0,_2)};case 1:return e.toast.id&&P2(e.toast.id),{...t,toasts:t.toasts.map(s=>s.id===e.toast.id?{...s,...e.toast}:s)};case 2:let{toast:n}=e;return t.toasts.find(s=>s.id===n.id)?fc(t,{type:1,toast:n}):fc(t,{type:0,toast:n});case 3:let{toastId:i}=e;return i?ah(i):t.toasts.forEach(s=>{ah(s.id)}),{...t,toasts:t.toasts.map(s=>s.id===i||i===void 0?{...s,visible:!1}:s)};case 4:return e.toastId===void 0?{...t,toasts:[]}:{...t,toasts:t.toasts.filter(s=>s.id!==e.toastId)};case 5:return{...t,pausedAt:e.time};case 6:let r=e.time-(t.pausedAt||0);return{...t,pausedAt:void 0,toasts:t.toasts.map(s=>({...s,pauseDuration:s.pauseDuration+r}))}}},Yo=[],Xo={toasts:[],pausedAt:void 0},Wi=t=>{Xo=fc(Xo,t),Yo.forEach(e=>{e(Xo)})},O2={blank:4e3,error:4e3,success:2e3,loading:1/0,custom:4e3},M2=(t={})=>{let[e,n]=I.useState(Xo);I.useEffect(()=>(Yo.push(n),()=>{let r=Yo.indexOf(n);r>-1&&Yo.splice(r,1)}),[e]);let i=e.toasts.map(r=>{var s,o;return{...t,...t[r.type],...r,duration:r.duration||((s=t[r.type])==null?void 0:s.duration)||(t==null?void 0:t.duration)||O2[r.type],style:{...t.style,...(o=t[r.type])==null?void 0:o.style,...r.style}}});return{...e,toasts:i}},z2=(t,e="blank",n)=>({createdAt:Date.now(),visible:!0,type:e,ariaProps:{role:"status","aria-live":"polite"},message:t,pauseDuration:0,...n,id:(n==null?void 0:n.id)||b2()}),fo=t=>(e,n)=>{let i=z2(e,t,n);return Wi({type:2,toast:i}),i.id},mt=(t,e)=>fo("blank")(t,e);mt.error=fo("error");mt.success=fo("success");mt.loading=fo("loading");mt.custom=fo("custom");mt.dismiss=t=>{Wi({type:3,toastId:t})};mt.remove=t=>Wi({type:4,toastId:t});mt.promise=(t,e,n)=>{let i=mt.loading(e.loading,{...n,...n==null?void 0:n.loading});return t.then(r=>(mt.success(Ma(e.success,r),{id:i,...n,...n==null?void 0:n.success}),r)).catch(r=>{mt.error(Ma(e.error,r),{id:i,...n,...n==null?void 0:n.error})}),t};var R2=(t,e)=>{Wi({type:1,toast:{id:t,height:e}})},T2=()=>{Wi({type:5,time:Date.now()})},I2=t=>{let{toasts:e,pausedAt:n}=M2(t);I.useEffect(()=>{if(n)return;let s=Date.now(),o=e.map(a=>{if(a.duration===1/0)return;let l=(a.duration||0)+a.pauseDuration-(s-a.createdAt);if(l<0){a.visible&&mt.dismiss(a.id);return}return setTimeout(()=>mt.dismiss(a.id),l)});return()=>{o.forEach(a=>a&&clearTimeout(a))}},[e,n]);let i=I.useCallback(()=>{n&&Wi({type:6,time:Date.now()})},[n]),r=I.useCallback((s,o)=>{let{reverseOrder:a=!1,gutter:l=8,defaultPosition:u}=o||{},c=e.filter(h=>(h.position||u)===(s.position||u)&&h.height),f=c.findIndex(h=>h.id===s.id),d=c.filter((h,g)=>gh.visible).slice(...a?[d+1]:[0,d]).reduce((h,g)=>h+(g.height||0)+l,0)},[e]);return{toasts:e,handlers:{updateHeight:R2,startPause:T2,endPause:i,calculateOffset:r}}},D2=zn` +from { + transform: scale(0) rotate(45deg); + opacity: 0; +} +to { + transform: scale(1) rotate(45deg); + opacity: 1; +}`,L2=zn` +from { + transform: scale(0); + opacity: 0; +} +to { + transform: scale(1); + opacity: 1; +}`,A2=zn` +from { + transform: scale(0) rotate(90deg); + opacity: 0; +} +to { + transform: scale(1) rotate(90deg); + opacity: 1; +}`,F2=di("div")` + width: 20px; + opacity: 0; + height: 20px; + border-radius: 10px; + background: ${t=>t.primary||"#ff4b4b"}; + position: relative; + transform: rotate(45deg); + + animation: ${D2} 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) + forwards; + animation-delay: 100ms; + + &:after, + &:before { + content: ''; + animation: ${L2} 0.15s ease-out forwards; + animation-delay: 150ms; + position: absolute; + border-radius: 3px; + opacity: 0; + background: ${t=>t.secondary||"#fff"}; + bottom: 9px; + left: 4px; + height: 2px; + width: 12px; + } + + &:before { + animation: ${A2} 0.15s ease-out forwards; + animation-delay: 180ms; + transform: rotate(90deg); + } +`,N2=zn` + from { + transform: rotate(0deg); + } + to { + transform: rotate(360deg); + } +`,$2=di("div")` + width: 12px; + height: 12px; + box-sizing: border-box; + border: 2px solid; + border-radius: 100%; + border-color: ${t=>t.secondary||"#e0e0e0"}; + border-right-color: ${t=>t.primary||"#616161"}; + animation: ${N2} 1s linear infinite; +`,j2=zn` +from { + transform: scale(0) rotate(45deg); + opacity: 0; +} +to { + transform: scale(1) rotate(45deg); + opacity: 1; +}`,B2=zn` +0% { + height: 0; + width: 0; + opacity: 0; +} +40% { + height: 0; + width: 6px; + opacity: 1; +} +100% { + opacity: 1; + height: 10px; +}`,U2=di("div")` + width: 20px; + opacity: 0; + height: 20px; + border-radius: 10px; + background: ${t=>t.primary||"#61d345"}; + position: relative; + transform: rotate(45deg); + + animation: ${j2} 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) + forwards; + animation-delay: 100ms; + &:after { + content: ''; + box-sizing: border-box; + animation: ${B2} 0.2s ease-out forwards; + opacity: 0; + animation-delay: 200ms; + position: absolute; + border-right: 2px solid; + border-bottom: 2px solid; + border-color: ${t=>t.secondary||"#fff"}; + bottom: 6px; + left: 6px; + height: 10px; + width: 6px; + } +`,H2=di("div")` + position: absolute; +`,G2=di("div")` + position: relative; + display: flex; + justify-content: center; + align-items: center; + min-width: 20px; + min-height: 20px; +`,W2=zn` +from { + transform: scale(0.6); + opacity: 0.4; +} +to { + transform: scale(1); + opacity: 1; +}`,q2=di("div")` + position: relative; + transform: scale(0.6); + opacity: 0.4; + min-width: 20px; + animation: ${W2} 0.3s 0.12s cubic-bezier(0.175, 0.885, 0.32, 1.275) + forwards; +`,Q2=({toast:t})=>{let{icon:e,type:n,iconTheme:i}=t;return e!==void 0?typeof e=="string"?I.createElement(q2,null,e):e:n==="blank"?null:I.createElement(G2,null,I.createElement($2,{...i}),n!=="loading"&&I.createElement(H2,null,n==="error"?I.createElement(F2,{...i}):I.createElement(U2,{...i})))},V2=t=>` +0% {transform: translate3d(0,${t*-200}%,0) scale(.6); opacity:.5;} +100% {transform: translate3d(0,0,0) scale(1); opacity:1;} +`,K2=t=>` +0% {transform: translate3d(0,0,-1px) scale(1); opacity:1;} +100% {transform: translate3d(0,${t*-150}%,-1px) scale(.6); opacity:0;} +`,Y2="0%{opacity:0;} 100%{opacity:1;}",X2="0%{opacity:1;} 100%{opacity:0;}",Z2=di("div")` + display: flex; + align-items: center; + background: #fff; + color: #363636; + line-height: 1.3; + will-change: transform; + box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1), 0 3px 3px rgba(0, 0, 0, 0.05); + max-width: 350px; + pointer-events: auto; + padding: 8px 10px; + border-radius: 8px; +`,J2=di("div")` + display: flex; + justify-content: center; + margin: 4px 10px; + color: inherit; + flex: 1 1 auto; + white-space: pre-line; +`,ev=(t,e)=>{let n=t.includes("top")?1:-1,[i,r]=k0()?[Y2,X2]:[V2(n),K2(n)];return{animation:e?`${zn(i)} 0.35s cubic-bezier(.21,1.02,.73,1) forwards`:`${zn(r)} 0.4s forwards cubic-bezier(.06,.71,.55,1)`}},tv=I.memo(({toast:t,position:e,style:n,children:i})=>{let r=t.height?ev(t.position||e||"top-center",t.visible):{opacity:0},s=I.createElement(Q2,{toast:t}),o=I.createElement(J2,{...t.ariaProps},Ma(t.message,t));return I.createElement(Z2,{className:t.className,style:{...r,...n,...t.style}},typeof i=="function"?i({icon:s,message:o}):I.createElement(I.Fragment,null,s,o))});S2(I.createElement);var nv=({id:t,className:e,style:n,onHeightUpdate:i,children:r})=>{let s=I.useCallback(o=>{if(o){let a=()=>{let l=o.getBoundingClientRect().height;i(t,l)};a(),new MutationObserver(a).observe(o,{subtree:!0,childList:!0,characterData:!0})}},[t,i]);return I.createElement("div",{ref:s,className:e,style:n},r)},iv=(t,e)=>{let n=t.includes("top"),i=n?{top:0}:{bottom:0},r=t.includes("center")?{justifyContent:"center"}:t.includes("right")?{justifyContent:"flex-end"}:{};return{left:0,right:0,display:"flex",position:"absolute",transition:k0()?void 0:"all 230ms cubic-bezier(.21,1.02,.73,1)",transform:`translateY(${e*(n?1:-1)}px)`,...i,...r}},rv=rl` + z-index: 9999; + > * { + pointer-events: auto; + } +`,Do=16,sv=({reverseOrder:t,position:e="top-center",toastOptions:n,gutter:i,children:r,containerStyle:s,containerClassName:o})=>{let{toasts:a,handlers:l}=I2(n);return I.createElement("div",{style:{position:"fixed",zIndex:9999,top:Do,left:Do,right:Do,bottom:Do,pointerEvents:"none",...s},className:o,onMouseEnter:l.startPause,onMouseLeave:l.endPause},a.map(u=>{let c=u.position||e,f=l.calculateOffset(u,{reverseOrder:t,gutter:i,defaultPosition:e}),d=iv(c,f);return I.createElement(nv,{id:u.id,key:u.id,onHeightUpdate:l.updateHeight,className:u.visible?rv:"",style:d},u.type==="custom"?Ma(u.message,u):r?r(u):I.createElement(tv,{toast:u,position:c}))}))},za=mt,ho=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(t){return this.listeners.add(t),this.onSubscribe(),()=>{this.listeners.delete(t),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}},Nr=typeof window>"u"||"Deno"in window;function Ot(){}function ov(t,e){return typeof t=="function"?t(e):t}function dc(t){return typeof t=="number"&&t>=0&&t!==1/0}function S0(t,e){return Math.max(t+(e||0)-Date.now(),0)}function lh(t,e){const{type:n="all",exact:i,fetchStatus:r,predicate:s,queryKey:o,stale:a}=t;if(o){if(i){if(e.queryHash!==Rf(o,e.options))return!1}else if(!Gs(e.queryKey,o))return!1}if(n!=="all"){const l=e.isActive();if(n==="active"&&!l||n==="inactive"&&l)return!1}return!(typeof a=="boolean"&&e.isStale()!==a||typeof r<"u"&&r!==e.state.fetchStatus||s&&!s(e))}function uh(t,e){const{exact:n,status:i,predicate:r,mutationKey:s}=t;if(s){if(!e.options.mutationKey)return!1;if(n){if(Hs(e.options.mutationKey)!==Hs(s))return!1}else if(!Gs(e.options.mutationKey,s))return!1}return!(i&&e.state.status!==i||r&&!r(e))}function Rf(t,e){return((e==null?void 0:e.queryKeyHashFn)||Hs)(t)}function Hs(t){return JSON.stringify(t,(e,n)=>pc(n)?Object.keys(n).sort().reduce((i,r)=>(i[r]=n[r],i),{}):n)}function Gs(t,e){return t===e?!0:typeof t!=typeof e?!1:t&&e&&typeof t=="object"&&typeof e=="object"?!Object.keys(e).some(n=>!Gs(t[n],e[n])):!1}function C0(t,e){if(t===e)return t;const n=ch(t)&&ch(e);if(n||pc(t)&&pc(e)){const i=n?t.length:Object.keys(t).length,r=n?e:Object.keys(e),s=r.length,o=n?[]:{};let a=0;for(let l=0;l"u")return!0;const n=e.prototype;return!(!fh(n)||!n.hasOwnProperty("isPrototypeOf"))}function fh(t){return Object.prototype.toString.call(t)==="[object Object]"}function b0(t){return new Promise(e=>{setTimeout(e,t)})}function dh(t){b0(0).then(t)}function mc(t,e,n){return typeof n.structuralSharing=="function"?n.structuralSharing(t,e):n.structuralSharing!==!1?C0(t,e):e}function av(t,e,n=0){const i=[...t,e];return n&&i.length>n?i.slice(1):i}function lv(t,e,n=0){const i=[e,...t];return n&&i.length>n?i.slice(0,-1):i}var Si,jn,yr,Yh,uv=(Yh=class extends ho{constructor(){super();A(this,Si,void 0);A(this,jn,void 0);A(this,yr,void 0);R(this,yr,e=>{if(!Nr&&window.addEventListener){const n=()=>e();return window.addEventListener("visibilitychange",n,!1),()=>{window.removeEventListener("visibilitychange",n)}}})}onSubscribe(){x(this,jn)||this.setEventListener(x(this,yr))}onUnsubscribe(){var e;this.hasListeners()||((e=x(this,jn))==null||e.call(this),R(this,jn,void 0))}setEventListener(e){var n;R(this,yr,e),(n=x(this,jn))==null||n.call(this),R(this,jn,e(i=>{typeof i=="boolean"?this.setFocused(i):this.onFocus()}))}setFocused(e){x(this,Si)!==e&&(R(this,Si,e),this.onFocus())}onFocus(){this.listeners.forEach(e=>{e()})}isFocused(){var e;return typeof x(this,Si)=="boolean"?x(this,Si):((e=globalThis.document)==null?void 0:e.visibilityState)!=="hidden"}},Si=new WeakMap,jn=new WeakMap,yr=new WeakMap,Yh),Ra=new uv,gr,Bn,vr,Xh,cv=(Xh=class extends ho{constructor(){super();A(this,gr,!0);A(this,Bn,void 0);A(this,vr,void 0);R(this,vr,e=>{if(!Nr&&window.addEventListener){const n=()=>e(!0),i=()=>e(!1);return window.addEventListener("online",n,!1),window.addEventListener("offline",i,!1),()=>{window.removeEventListener("online",n),window.removeEventListener("offline",i)}}})}onSubscribe(){x(this,Bn)||this.setEventListener(x(this,vr))}onUnsubscribe(){var e;this.hasListeners()||((e=x(this,Bn))==null||e.call(this),R(this,Bn,void 0))}setEventListener(e){var n;R(this,vr,e),(n=x(this,Bn))==null||n.call(this),R(this,Bn,e(this.setOnline.bind(this)))}setOnline(e){x(this,gr)!==e&&(R(this,gr,e),this.listeners.forEach(i=>{i(e)}))}isOnline(){return x(this,gr)}},gr=new WeakMap,Bn=new WeakMap,vr=new WeakMap,Xh),Ta=new cv;function fv(t){return Math.min(1e3*2**t,3e4)}function sl(t){return(t??"online")==="online"?Ta.isOnline():!0}var _0=class{constructor(t){this.revert=t==null?void 0:t.revert,this.silent=t==null?void 0:t.silent}};function ql(t){return t instanceof _0}function E0(t){let e=!1,n=0,i=!1,r,s,o;const a=new Promise((k,p)=>{s=k,o=p}),l=k=>{var p;i||(h(new _0(k)),(p=t.abort)==null||p.call(t))},u=()=>{e=!0},c=()=>{e=!1},f=()=>!Ra.isFocused()||t.networkMode!=="always"&&!Ta.isOnline(),d=k=>{var p;i||(i=!0,(p=t.onSuccess)==null||p.call(t,k),r==null||r(),s(k))},h=k=>{var p;i||(i=!0,(p=t.onError)==null||p.call(t,k),r==null||r(),o(k))},g=()=>new Promise(k=>{var p;r=m=>{const y=i||!f();return y&&k(m),y},(p=t.onPause)==null||p.call(t)}).then(()=>{var k;r=void 0,i||(k=t.onContinue)==null||k.call(t)}),v=()=>{if(i)return;let k;try{k=t.fn()}catch(p){k=Promise.reject(p)}Promise.resolve(k).then(d).catch(p=>{var _;if(i)return;const m=t.retry??(Nr?0:3),y=t.retryDelay??fv,w=typeof y=="function"?y(n,p):y,S=m===!0||typeof m=="number"&&n{if(f())return g()}).then(()=>{e?h(p):v()})})};return sl(t.networkMode)?v():g().then(v),{promise:a,cancel:l,continue:()=>(r==null?void 0:r())?a:Promise.resolve(),cancelRetry:u,continueRetry:c}}function dv(){let t=[],e=0,n=c=>{c()},i=c=>{c()};const r=c=>{let f;e++;try{f=c()}finally{e--,e||a()}return f},s=c=>{e?t.push(c):dh(()=>{n(c)})},o=c=>(...f)=>{s(()=>{c(...f)})},a=()=>{const c=t;t=[],c.length&&dh(()=>{i(()=>{c.forEach(f=>{n(f)})})})};return{batch:r,batchCalls:o,schedule:s,setNotifyFunction:c=>{n=c},setBatchNotifyFunction:c=>{i=c}}}var Le=dv(),Ci,Zh,P0=(Zh=class{constructor(){A(this,Ci,void 0)}destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),dc(this.gcTime)&&R(this,Ci,setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(t){this.gcTime=Math.max(this.gcTime||0,t??(Nr?1/0:5*60*1e3))}clearGcTimeout(){x(this,Ci)&&(clearTimeout(x(this,Ci)),R(this,Ci,void 0))}},Ci=new WeakMap,Zh),wr,xr,_t,Un,Et,Pe,Ks,bi,kr,Zo,Ht,gn,Jh,hv=(Jh=class extends P0{constructor(e){super();A(this,kr);A(this,Ht);A(this,wr,void 0);A(this,xr,void 0);A(this,_t,void 0);A(this,Un,void 0);A(this,Et,void 0);A(this,Pe,void 0);A(this,Ks,void 0);A(this,bi,void 0);R(this,bi,!1),R(this,Ks,e.defaultOptions),q(this,kr,Zo).call(this,e.options),R(this,Pe,[]),R(this,_t,e.cache),this.queryKey=e.queryKey,this.queryHash=e.queryHash,R(this,wr,e.state||pv(this.options)),this.state=x(this,wr),this.scheduleGc()}get meta(){return this.options.meta}optionalRemove(){!x(this,Pe).length&&this.state.fetchStatus==="idle"&&x(this,_t).remove(this)}setData(e,n){const i=mc(this.state.data,e,this.options);return q(this,Ht,gn).call(this,{data:i,type:"success",dataUpdatedAt:n==null?void 0:n.updatedAt,manual:n==null?void 0:n.manual}),i}setState(e,n){q(this,Ht,gn).call(this,{type:"setState",state:e,setStateOptions:n})}cancel(e){var i;const n=x(this,Un);return(i=x(this,Et))==null||i.cancel(e),n?n.then(Ot).catch(Ot):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}reset(){this.destroy(),this.setState(x(this,wr))}isActive(){return x(this,Pe).some(e=>e.options.enabled!==!1)}isDisabled(){return this.getObserversCount()>0&&!this.isActive()}isStale(){return this.state.isInvalidated||!this.state.dataUpdatedAt||x(this,Pe).some(e=>e.getCurrentResult().isStale)}isStaleByTime(e=0){return this.state.isInvalidated||!this.state.dataUpdatedAt||!S0(this.state.dataUpdatedAt,e)}onFocus(){var n;const e=x(this,Pe).find(i=>i.shouldFetchOnWindowFocus());e==null||e.refetch({cancelRefetch:!1}),(n=x(this,Et))==null||n.continue()}onOnline(){var n;const e=x(this,Pe).find(i=>i.shouldFetchOnReconnect());e==null||e.refetch({cancelRefetch:!1}),(n=x(this,Et))==null||n.continue()}addObserver(e){x(this,Pe).includes(e)||(x(this,Pe).push(e),this.clearGcTimeout(),x(this,_t).notify({type:"observerAdded",query:this,observer:e}))}removeObserver(e){x(this,Pe).includes(e)&&(R(this,Pe,x(this,Pe).filter(n=>n!==e)),x(this,Pe).length||(x(this,Et)&&(x(this,bi)?x(this,Et).cancel({revert:!0}):x(this,Et).cancelRetry()),this.scheduleGc()),x(this,_t).notify({type:"observerRemoved",query:this,observer:e}))}getObserversCount(){return x(this,Pe).length}invalidate(){this.state.isInvalidated||q(this,Ht,gn).call(this,{type:"invalidate"})}fetch(e,n){var u,c,f,d;if(this.state.fetchStatus!=="idle"){if(this.state.dataUpdatedAt&&(n!=null&&n.cancelRefetch))this.cancel({silent:!0});else if(x(this,Un))return(u=x(this,Et))==null||u.continueRetry(),x(this,Un)}if(e&&q(this,kr,Zo).call(this,e),!this.options.queryFn){const h=x(this,Pe).find(g=>g.options.queryFn);h&&q(this,kr,Zo).call(this,h.options)}const i=new AbortController,r={queryKey:this.queryKey,meta:this.meta},s=h=>{Object.defineProperty(h,"signal",{enumerable:!0,get:()=>(R(this,bi,!0),i.signal)})};s(r);const o=()=>this.options.queryFn?(R(this,bi,!1),this.options.persister?this.options.persister(this.options.queryFn,r,this):this.options.queryFn(r)):Promise.reject(new Error(`Missing queryFn: '${this.options.queryHash}'`)),a={fetchOptions:n,options:this.options,queryKey:this.queryKey,state:this.state,fetchFn:o};s(a),(c=this.options.behavior)==null||c.onFetch(a,this),R(this,xr,this.state),(this.state.fetchStatus==="idle"||this.state.fetchMeta!==((f=a.fetchOptions)==null?void 0:f.meta))&&q(this,Ht,gn).call(this,{type:"fetch",meta:(d=a.fetchOptions)==null?void 0:d.meta});const l=h=>{var g,v,k,p;ql(h)&&h.silent||q(this,Ht,gn).call(this,{type:"error",error:h}),ql(h)||((v=(g=x(this,_t).config).onError)==null||v.call(g,h,this),(p=(k=x(this,_t).config).onSettled)==null||p.call(k,this.state.data,h,this)),this.isFetchingOptimistic||this.scheduleGc(),this.isFetchingOptimistic=!1};return R(this,Et,E0({fn:a.fetchFn,abort:i.abort.bind(i),onSuccess:h=>{var g,v,k,p;if(typeof h>"u"){l(new Error(`${this.queryHash} data is undefined`));return}this.setData(h),(v=(g=x(this,_t).config).onSuccess)==null||v.call(g,h,this),(p=(k=x(this,_t).config).onSettled)==null||p.call(k,h,this.state.error,this),this.isFetchingOptimistic||this.scheduleGc(),this.isFetchingOptimistic=!1},onError:l,onFail:(h,g)=>{q(this,Ht,gn).call(this,{type:"failed",failureCount:h,error:g})},onPause:()=>{q(this,Ht,gn).call(this,{type:"pause"})},onContinue:()=>{q(this,Ht,gn).call(this,{type:"continue"})},retry:a.options.retry,retryDelay:a.options.retryDelay,networkMode:a.options.networkMode})),R(this,Un,x(this,Et).promise),x(this,Un)}},wr=new WeakMap,xr=new WeakMap,_t=new WeakMap,Un=new WeakMap,Et=new WeakMap,Pe=new WeakMap,Ks=new WeakMap,bi=new WeakMap,kr=new WeakSet,Zo=function(e){this.options={...x(this,Ks),...e},this.updateGcTime(this.options.gcTime)},Ht=new WeakSet,gn=function(e){const n=i=>{switch(e.type){case"failed":return{...i,fetchFailureCount:e.failureCount,fetchFailureReason:e.error};case"pause":return{...i,fetchStatus:"paused"};case"continue":return{...i,fetchStatus:"fetching"};case"fetch":return{...i,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:e.meta??null,fetchStatus:sl(this.options.networkMode)?"fetching":"paused",...!i.dataUpdatedAt&&{error:null,status:"pending"}};case"success":return{...i,data:e.data,dataUpdateCount:i.dataUpdateCount+1,dataUpdatedAt:e.dataUpdatedAt??Date.now(),error:null,isInvalidated:!1,status:"success",...!e.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};case"error":const r=e.error;return ql(r)&&r.revert&&x(this,xr)?{...x(this,xr),fetchStatus:"idle"}:{...i,error:r,errorUpdateCount:i.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:i.fetchFailureCount+1,fetchFailureReason:r,fetchStatus:"idle",status:"error"};case"invalidate":return{...i,isInvalidated:!0};case"setState":return{...i,...e.state}}};this.state=n(this.state),Le.batch(()=>{x(this,Pe).forEach(i=>{i.onQueryUpdate()}),x(this,_t).notify({query:this,type:"updated",action:e})})},Jh);function pv(t){const e=typeof t.initialData=="function"?t.initialData():t.initialData,n=typeof e<"u",i=n?typeof t.initialDataUpdatedAt=="function"?t.initialDataUpdatedAt():t.initialDataUpdatedAt:0;return{data:e,dataUpdateCount:0,dataUpdatedAt:n?i??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:n?"success":"pending",fetchStatus:"idle"}}var sn,ep,mv=(ep=class extends ho{constructor(e={}){super();A(this,sn,void 0);this.config=e,R(this,sn,new Map)}build(e,n,i){const r=n.queryKey,s=n.queryHash??Rf(r,n);let o=this.get(s);return o||(o=new hv({cache:this,queryKey:r,queryHash:s,options:e.defaultQueryOptions(n),state:i,defaultOptions:e.getQueryDefaults(r)}),this.add(o)),o}add(e){x(this,sn).has(e.queryHash)||(x(this,sn).set(e.queryHash,e),this.notify({type:"added",query:e}))}remove(e){const n=x(this,sn).get(e.queryHash);n&&(e.destroy(),n===e&&x(this,sn).delete(e.queryHash),this.notify({type:"removed",query:e}))}clear(){Le.batch(()=>{this.getAll().forEach(e=>{this.remove(e)})})}get(e){return x(this,sn).get(e)}getAll(){return[...x(this,sn).values()]}find(e){const n={exact:!0,...e};return this.getAll().find(i=>lh(n,i))}findAll(e={}){const n=this.getAll();return Object.keys(e).length>0?n.filter(i=>lh(e,i)):n}notify(e){Le.batch(()=>{this.listeners.forEach(n=>{n(e)})})}onFocus(){Le.batch(()=>{this.getAll().forEach(e=>{e.onFocus()})})}onOnline(){Le.batch(()=>{this.getAll().forEach(e=>{e.onOnline()})})}},sn=new WeakMap,ep),on,Ys,ft,Sr,an,In,tp,yv=(tp=class extends P0{constructor(e){super();A(this,an);A(this,on,void 0);A(this,Ys,void 0);A(this,ft,void 0);A(this,Sr,void 0);this.mutationId=e.mutationId,R(this,Ys,e.defaultOptions),R(this,ft,e.mutationCache),R(this,on,[]),this.state=e.state||gv(),this.setOptions(e.options),this.scheduleGc()}setOptions(e){this.options={...x(this,Ys),...e},this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(e){x(this,on).includes(e)||(x(this,on).push(e),this.clearGcTimeout(),x(this,ft).notify({type:"observerAdded",mutation:this,observer:e}))}removeObserver(e){R(this,on,x(this,on).filter(n=>n!==e)),this.scheduleGc(),x(this,ft).notify({type:"observerRemoved",mutation:this,observer:e})}optionalRemove(){x(this,on).length||(this.state.status==="pending"?this.scheduleGc():x(this,ft).remove(this))}continue(){var e;return((e=x(this,Sr))==null?void 0:e.continue())??this.execute(this.state.variables)}async execute(e){var r,s,o,a,l,u,c,f,d,h,g,v,k,p,m,y,w,S,_,C;const n=()=>(R(this,Sr,E0({fn:()=>this.options.mutationFn?this.options.mutationFn(e):Promise.reject(new Error("No mutationFn found")),onFail:(z,B)=>{q(this,an,In).call(this,{type:"failed",failureCount:z,error:B})},onPause:()=>{q(this,an,In).call(this,{type:"pause"})},onContinue:()=>{q(this,an,In).call(this,{type:"continue"})},retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode})),x(this,Sr).promise),i=this.state.status==="pending";try{if(!i){q(this,an,In).call(this,{type:"pending",variables:e}),await((s=(r=x(this,ft).config).onMutate)==null?void 0:s.call(r,e,this));const B=await((a=(o=this.options).onMutate)==null?void 0:a.call(o,e));B!==this.state.context&&q(this,an,In).call(this,{type:"pending",context:B,variables:e})}const z=await n();return await((u=(l=x(this,ft).config).onSuccess)==null?void 0:u.call(l,z,e,this.state.context,this)),await((f=(c=this.options).onSuccess)==null?void 0:f.call(c,z,e,this.state.context)),await((h=(d=x(this,ft).config).onSettled)==null?void 0:h.call(d,z,null,this.state.variables,this.state.context,this)),await((v=(g=this.options).onSettled)==null?void 0:v.call(g,z,null,e,this.state.context)),q(this,an,In).call(this,{type:"success",data:z}),z}catch(z){try{throw await((p=(k=x(this,ft).config).onError)==null?void 0:p.call(k,z,e,this.state.context,this)),await((y=(m=this.options).onError)==null?void 0:y.call(m,z,e,this.state.context)),await((S=(w=x(this,ft).config).onSettled)==null?void 0:S.call(w,void 0,z,this.state.variables,this.state.context,this)),await((C=(_=this.options).onSettled)==null?void 0:C.call(_,void 0,z,e,this.state.context)),z}finally{q(this,an,In).call(this,{type:"error",error:z})}}}},on=new WeakMap,Ys=new WeakMap,ft=new WeakMap,Sr=new WeakMap,an=new WeakSet,In=function(e){const n=i=>{switch(e.type){case"failed":return{...i,failureCount:e.failureCount,failureReason:e.error};case"pause":return{...i,isPaused:!0};case"continue":return{...i,isPaused:!1};case"pending":return{...i,context:e.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:!sl(this.options.networkMode),status:"pending",variables:e.variables,submittedAt:Date.now()};case"success":return{...i,data:e.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...i,data:void 0,error:e.error,failureCount:i.failureCount+1,failureReason:e.error,isPaused:!1,status:"error"}}};this.state=n(this.state),Le.batch(()=>{x(this,on).forEach(i=>{i.onMutationUpdate(e)}),x(this,ft).notify({mutation:this,type:"updated",action:e})})},tp);function gv(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0}}var Pt,Xs,_i,np,vv=(np=class extends ho{constructor(e={}){super();A(this,Pt,void 0);A(this,Xs,void 0);A(this,_i,void 0);this.config=e,R(this,Pt,[]),R(this,Xs,0)}build(e,n,i){const r=new yv({mutationCache:this,mutationId:++yo(this,Xs)._,options:e.defaultMutationOptions(n),state:i});return this.add(r),r}add(e){x(this,Pt).push(e),this.notify({type:"added",mutation:e})}remove(e){R(this,Pt,x(this,Pt).filter(n=>n!==e)),this.notify({type:"removed",mutation:e})}clear(){Le.batch(()=>{x(this,Pt).forEach(e=>{this.remove(e)})})}getAll(){return x(this,Pt)}find(e){const n={exact:!0,...e};return x(this,Pt).find(i=>uh(n,i))}findAll(e={}){return x(this,Pt).filter(n=>uh(e,n))}notify(e){Le.batch(()=>{this.listeners.forEach(n=>{n(e)})})}resumePausedMutations(){return R(this,_i,(x(this,_i)??Promise.resolve()).then(()=>{const e=x(this,Pt).filter(n=>n.state.isPaused);return Le.batch(()=>e.reduce((n,i)=>n.then(()=>i.continue().catch(Ot)),Promise.resolve()))}).then(()=>{R(this,_i,void 0)})),x(this,_i)}},Pt=new WeakMap,Xs=new WeakMap,_i=new WeakMap,np);function wv(t){return{onFetch:(e,n)=>{const i=async()=>{var g,v,k,p,m;const r=e.options,s=(k=(v=(g=e.fetchOptions)==null?void 0:g.meta)==null?void 0:v.fetchMore)==null?void 0:k.direction,o=((p=e.state.data)==null?void 0:p.pages)||[],a=((m=e.state.data)==null?void 0:m.pageParams)||[],l={pages:[],pageParams:[]};let u=!1;const c=y=>{Object.defineProperty(y,"signal",{enumerable:!0,get:()=>(e.signal.aborted?u=!0:e.signal.addEventListener("abort",()=>{u=!0}),e.signal)})},f=e.options.queryFn||(()=>Promise.reject(new Error(`Missing queryFn: '${e.options.queryHash}'`))),d=async(y,w,S)=>{if(u)return Promise.reject();if(w==null&&y.pages.length)return Promise.resolve(y);const _={queryKey:e.queryKey,pageParam:w,direction:S?"backward":"forward",meta:e.options.meta};c(_);const C=await f(_),{maxPages:z}=e.options,B=S?lv:av;return{pages:B(y.pages,C,z),pageParams:B(y.pageParams,w,z)}};let h;if(s&&o.length){const y=s==="backward",w=y?xv:hh,S={pages:o,pageParams:a},_=w(r,S);h=await d(S,_,y)}else{h=await d(l,a[0]??r.initialPageParam);const y=t??o.length;for(let w=1;w{var r,s;return(s=(r=e.options).persister)==null?void 0:s.call(r,i,{queryKey:e.queryKey,meta:e.options.meta,signal:e.signal},n)}:e.fetchFn=i}}}function hh(t,{pages:e,pageParams:n}){const i=e.length-1;return t.getNextPageParam(e[i],e,n[i],n)}function xv(t,{pages:e,pageParams:n}){var i;return(i=t.getPreviousPageParam)==null?void 0:i.call(t,e[0],e,n[0],n)}var Se,Hn,Gn,Cr,br,Wn,_r,Er,ip,kv=(ip=class{constructor(t={}){A(this,Se,void 0);A(this,Hn,void 0);A(this,Gn,void 0);A(this,Cr,void 0);A(this,br,void 0);A(this,Wn,void 0);A(this,_r,void 0);A(this,Er,void 0);R(this,Se,t.queryCache||new mv),R(this,Hn,t.mutationCache||new vv),R(this,Gn,t.defaultOptions||{}),R(this,Cr,new Map),R(this,br,new Map),R(this,Wn,0)}mount(){yo(this,Wn)._++,x(this,Wn)===1&&(R(this,_r,Ra.subscribe(()=>{Ra.isFocused()&&(this.resumePausedMutations(),x(this,Se).onFocus())})),R(this,Er,Ta.subscribe(()=>{Ta.isOnline()&&(this.resumePausedMutations(),x(this,Se).onOnline())})))}unmount(){var t,e;yo(this,Wn)._--,x(this,Wn)===0&&((t=x(this,_r))==null||t.call(this),R(this,_r,void 0),(e=x(this,Er))==null||e.call(this),R(this,Er,void 0))}isFetching(t){return x(this,Se).findAll({...t,fetchStatus:"fetching"}).length}isMutating(t){return x(this,Hn).findAll({...t,status:"pending"}).length}getQueryData(t){var e;return(e=x(this,Se).find({queryKey:t}))==null?void 0:e.state.data}ensureQueryData(t){const e=this.getQueryData(t.queryKey);return e?Promise.resolve(e):this.fetchQuery(t)}getQueriesData(t){return this.getQueryCache().findAll(t).map(({queryKey:e,state:n})=>{const i=n.data;return[e,i]})}setQueryData(t,e,n){const i=x(this,Se).find({queryKey:t}),r=i==null?void 0:i.state.data,s=ov(e,r);if(typeof s>"u")return;const o=this.defaultQueryOptions({queryKey:t});return x(this,Se).build(this,o).setData(s,{...n,manual:!0})}setQueriesData(t,e,n){return Le.batch(()=>this.getQueryCache().findAll(t).map(({queryKey:i})=>[i,this.setQueryData(i,e,n)]))}getQueryState(t){var e;return(e=x(this,Se).find({queryKey:t}))==null?void 0:e.state}removeQueries(t){const e=x(this,Se);Le.batch(()=>{e.findAll(t).forEach(n=>{e.remove(n)})})}resetQueries(t,e){const n=x(this,Se),i={type:"active",...t};return Le.batch(()=>(n.findAll(t).forEach(r=>{r.reset()}),this.refetchQueries(i,e)))}cancelQueries(t={},e={}){const n={revert:!0,...e},i=Le.batch(()=>x(this,Se).findAll(t).map(r=>r.cancel(n)));return Promise.all(i).then(Ot).catch(Ot)}invalidateQueries(t={},e={}){return Le.batch(()=>{if(x(this,Se).findAll(t).forEach(i=>{i.invalidate()}),t.refetchType==="none")return Promise.resolve();const n={...t,type:t.refetchType??t.type??"active"};return this.refetchQueries(n,e)})}refetchQueries(t={},e){const n={...e,cancelRefetch:(e==null?void 0:e.cancelRefetch)??!0},i=Le.batch(()=>x(this,Se).findAll(t).filter(r=>!r.isDisabled()).map(r=>{let s=r.fetch(void 0,n);return n.throwOnError||(s=s.catch(Ot)),r.state.fetchStatus==="paused"?Promise.resolve():s}));return Promise.all(i).then(Ot)}fetchQuery(t){const e=this.defaultQueryOptions(t);typeof e.retry>"u"&&(e.retry=!1);const n=x(this,Se).build(this,e);return n.isStaleByTime(e.staleTime)?n.fetch(e):Promise.resolve(n.state.data)}prefetchQuery(t){return this.fetchQuery(t).then(Ot).catch(Ot)}fetchInfiniteQuery(t){return t.behavior=wv(t.pages),this.fetchQuery(t)}prefetchInfiniteQuery(t){return this.fetchInfiniteQuery(t).then(Ot).catch(Ot)}resumePausedMutations(){return x(this,Hn).resumePausedMutations()}getQueryCache(){return x(this,Se)}getMutationCache(){return x(this,Hn)}getDefaultOptions(){return x(this,Gn)}setDefaultOptions(t){R(this,Gn,t)}setQueryDefaults(t,e){x(this,Cr).set(Hs(t),{queryKey:t,defaultOptions:e})}getQueryDefaults(t){const e=[...x(this,Cr).values()];let n={};return e.forEach(i=>{Gs(t,i.queryKey)&&(n={...n,...i.defaultOptions})}),n}setMutationDefaults(t,e){x(this,br).set(Hs(t),{mutationKey:t,defaultOptions:e})}getMutationDefaults(t){const e=[...x(this,br).values()];let n={};return e.forEach(i=>{Gs(t,i.mutationKey)&&(n={...n,...i.defaultOptions})}),n}defaultQueryOptions(t){if(t!=null&&t._defaulted)return t;const e={...x(this,Gn).queries,...(t==null?void 0:t.queryKey)&&this.getQueryDefaults(t.queryKey),...t,_defaulted:!0};return e.queryHash||(e.queryHash=Rf(e.queryKey,e)),typeof e.refetchOnReconnect>"u"&&(e.refetchOnReconnect=e.networkMode!=="always"),typeof e.throwOnError>"u"&&(e.throwOnError=!!e.suspense),typeof e.networkMode>"u"&&e.persister&&(e.networkMode="offlineFirst"),e}defaultMutationOptions(t){return t!=null&&t._defaulted?t:{...x(this,Gn).mutations,...(t==null?void 0:t.mutationKey)&&this.getMutationDefaults(t.mutationKey),...t,_defaulted:!0}}clear(){x(this,Se).clear(),x(this,Hn).clear()}},Se=new WeakMap,Hn=new WeakMap,Gn=new WeakMap,Cr=new WeakMap,br=new WeakMap,Wn=new WeakMap,_r=new WeakMap,Er=new WeakMap,ip),nt,ee,Pr,Be,Ei,Or,ln,Zs,Mr,zr,Pi,Oi,qn,Mi,zi,fs,Js,yc,eo,gc,to,vc,no,wc,io,xc,ro,kc,so,Sc,Ba,O0,rp,Sv=(rp=class extends ho{constructor(e,n){super();A(this,zi);A(this,Js);A(this,eo);A(this,to);A(this,no);A(this,io);A(this,ro);A(this,so);A(this,Ba);A(this,nt,void 0);A(this,ee,void 0);A(this,Pr,void 0);A(this,Be,void 0);A(this,Ei,void 0);A(this,Or,void 0);A(this,ln,void 0);A(this,Zs,void 0);A(this,Mr,void 0);A(this,zr,void 0);A(this,Pi,void 0);A(this,Oi,void 0);A(this,qn,void 0);A(this,Mi,void 0);R(this,ee,void 0),R(this,Pr,void 0),R(this,Be,void 0),R(this,Mi,new Set),R(this,nt,e),this.options=n,R(this,ln,null),this.bindMethods(),this.setOptions(n)}bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(x(this,ee).addObserver(this),ph(x(this,ee),this.options)&&q(this,zi,fs).call(this),q(this,no,wc).call(this))}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return Cc(x(this,ee),this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return Cc(x(this,ee),this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,q(this,io,xc).call(this),q(this,ro,kc).call(this),x(this,ee).removeObserver(this)}setOptions(e,n){const i=this.options,r=x(this,ee);if(this.options=x(this,nt).defaultQueryOptions(e),hc(i,this.options)||x(this,nt).getQueryCache().notify({type:"observerOptionsUpdated",query:x(this,ee),observer:this}),typeof this.options.enabled<"u"&&typeof this.options.enabled!="boolean")throw new Error("Expected enabled to be a boolean");this.options.queryKey||(this.options.queryKey=i.queryKey),q(this,so,Sc).call(this);const s=this.hasListeners();s&&mh(x(this,ee),r,this.options,i)&&q(this,zi,fs).call(this),this.updateResult(n),s&&(x(this,ee)!==r||this.options.enabled!==i.enabled||this.options.staleTime!==i.staleTime)&&q(this,Js,yc).call(this);const o=q(this,eo,gc).call(this);s&&(x(this,ee)!==r||this.options.enabled!==i.enabled||o!==x(this,qn))&&q(this,to,vc).call(this,o)}getOptimisticResult(e){const n=x(this,nt).getQueryCache().build(x(this,nt),e),i=this.createResult(n,e);return bv(this,i)&&(R(this,Be,i),R(this,Or,this.options),R(this,Ei,x(this,ee).state)),i}getCurrentResult(){return x(this,Be)}trackResult(e){const n={};return Object.keys(e).forEach(i=>{Object.defineProperty(n,i,{configurable:!1,enumerable:!0,get:()=>(x(this,Mi).add(i),e[i])})}),n}getCurrentQuery(){return x(this,ee)}refetch({...e}={}){return this.fetch({...e})}fetchOptimistic(e){const n=x(this,nt).defaultQueryOptions(e),i=x(this,nt).getQueryCache().build(x(this,nt),n);return i.isFetchingOptimistic=!0,i.fetch().then(()=>this.createResult(i,n))}fetch(e){return q(this,zi,fs).call(this,{...e,cancelRefetch:e.cancelRefetch??!0}).then(()=>(this.updateResult(),x(this,Be)))}createResult(e,n){var _;const i=x(this,ee),r=this.options,s=x(this,Be),o=x(this,Ei),a=x(this,Or),u=e!==i?e.state:x(this,Pr),{state:c}=e;let{error:f,errorUpdatedAt:d,fetchStatus:h,status:g}=c,v=!1,k;if(n._optimisticResults){const C=this.hasListeners(),z=!C&&ph(e,n),B=C&&mh(e,i,n,r);(z||B)&&(h=sl(e.options.networkMode)?"fetching":"paused",c.dataUpdatedAt||(g="pending")),n._optimisticResults==="isRestoring"&&(h="idle")}if(n.select&&typeof c.data<"u")if(s&&c.data===(o==null?void 0:o.data)&&n.select===x(this,Zs))k=x(this,Mr);else try{R(this,Zs,n.select),k=n.select(c.data),k=mc(s==null?void 0:s.data,k,n),R(this,Mr,k),R(this,ln,null)}catch(C){R(this,ln,C)}else k=c.data;if(typeof n.placeholderData<"u"&&typeof k>"u"&&g==="pending"){let C;if(s!=null&&s.isPlaceholderData&&n.placeholderData===(a==null?void 0:a.placeholderData))C=s.data;else if(C=typeof n.placeholderData=="function"?n.placeholderData((_=x(this,zr))==null?void 0:_.state.data,x(this,zr)):n.placeholderData,n.select&&typeof C<"u")try{C=n.select(C),R(this,ln,null)}catch(z){R(this,ln,z)}typeof C<"u"&&(g="success",k=mc(s==null?void 0:s.data,C,n),v=!0)}x(this,ln)&&(f=x(this,ln),k=x(this,Mr),d=Date.now(),g="error");const p=h==="fetching",m=g==="pending",y=g==="error",w=m&&p;return{status:g,fetchStatus:h,isPending:m,isSuccess:g==="success",isError:y,isInitialLoading:w,isLoading:w,data:k,dataUpdatedAt:c.dataUpdatedAt,error:f,errorUpdatedAt:d,failureCount:c.fetchFailureCount,failureReason:c.fetchFailureReason,errorUpdateCount:c.errorUpdateCount,isFetched:c.dataUpdateCount>0||c.errorUpdateCount>0,isFetchedAfterMount:c.dataUpdateCount>u.dataUpdateCount||c.errorUpdateCount>u.errorUpdateCount,isFetching:p,isRefetching:p&&!m,isLoadingError:y&&c.dataUpdatedAt===0,isPaused:h==="paused",isPlaceholderData:v,isRefetchError:y&&c.dataUpdatedAt!==0,isStale:Tf(e,n),refetch:this.refetch}}updateResult(e){const n=x(this,Be),i=this.createResult(x(this,ee),this.options);if(R(this,Ei,x(this,ee).state),R(this,Or,this.options),hc(i,n))return;x(this,Ei).data!==void 0&&R(this,zr,x(this,ee)),R(this,Be,i);const r={},s=()=>{if(!n)return!0;const{notifyOnChangeProps:o}=this.options,a=typeof o=="function"?o():o;if(a==="all"||!a&&!x(this,Mi).size)return!0;const l=new Set(a??x(this,Mi));return this.options.throwOnError&&l.add("error"),Object.keys(x(this,Be)).some(u=>{const c=u;return x(this,Be)[c]!==n[c]&&l.has(c)})};(e==null?void 0:e.listeners)!==!1&&s()&&(r.listeners=!0),q(this,Ba,O0).call(this,{...r,...e})}onQueryUpdate(){this.updateResult(),this.hasListeners()&&q(this,no,wc).call(this)}},nt=new WeakMap,ee=new WeakMap,Pr=new WeakMap,Be=new WeakMap,Ei=new WeakMap,Or=new WeakMap,ln=new WeakMap,Zs=new WeakMap,Mr=new WeakMap,zr=new WeakMap,Pi=new WeakMap,Oi=new WeakMap,qn=new WeakMap,Mi=new WeakMap,zi=new WeakSet,fs=function(e){q(this,so,Sc).call(this);let n=x(this,ee).fetch(this.options,e);return e!=null&&e.throwOnError||(n=n.catch(Ot)),n},Js=new WeakSet,yc=function(){if(q(this,io,xc).call(this),Nr||x(this,Be).isStale||!dc(this.options.staleTime))return;const n=S0(x(this,Be).dataUpdatedAt,this.options.staleTime)+1;R(this,Pi,setTimeout(()=>{x(this,Be).isStale||this.updateResult()},n))},eo=new WeakSet,gc=function(){return(typeof this.options.refetchInterval=="function"?this.options.refetchInterval(x(this,ee)):this.options.refetchInterval)??!1},to=new WeakSet,vc=function(e){q(this,ro,kc).call(this),R(this,qn,e),!(Nr||this.options.enabled===!1||!dc(x(this,qn))||x(this,qn)===0)&&R(this,Oi,setInterval(()=>{(this.options.refetchIntervalInBackground||Ra.isFocused())&&q(this,zi,fs).call(this)},x(this,qn)))},no=new WeakSet,wc=function(){q(this,Js,yc).call(this),q(this,to,vc).call(this,q(this,eo,gc).call(this))},io=new WeakSet,xc=function(){x(this,Pi)&&(clearTimeout(x(this,Pi)),R(this,Pi,void 0))},ro=new WeakSet,kc=function(){x(this,Oi)&&(clearInterval(x(this,Oi)),R(this,Oi,void 0))},so=new WeakSet,Sc=function(){const e=x(this,nt).getQueryCache().build(x(this,nt),this.options);if(e===x(this,ee))return;const n=x(this,ee);R(this,ee,e),R(this,Pr,e.state),this.hasListeners()&&(n==null||n.removeObserver(this),e.addObserver(this))},Ba=new WeakSet,O0=function(e){Le.batch(()=>{e.listeners&&this.listeners.forEach(n=>{n(x(this,Be))}),x(this,nt).getQueryCache().notify({query:x(this,ee),type:"observerResultsUpdated"})})},rp);function Cv(t,e){return e.enabled!==!1&&!t.state.dataUpdatedAt&&!(t.state.status==="error"&&e.retryOnMount===!1)}function ph(t,e){return Cv(t,e)||t.state.dataUpdatedAt>0&&Cc(t,e,e.refetchOnMount)}function Cc(t,e,n){if(e.enabled!==!1){const i=typeof n=="function"?n(t):n;return i==="always"||i!==!1&&Tf(t,e)}return!1}function mh(t,e,n,i){return n.enabled!==!1&&(t!==e||i.enabled===!1)&&(!n.suspense||t.state.status!=="error")&&Tf(t,n)}function Tf(t,e){return t.isStaleByTime(e.staleTime)}function bv(t,e){return!hc(t.getCurrentResult(),e)}var M0=I.createContext(void 0),_v=t=>{const e=I.useContext(M0);if(t)return t;if(!e)throw new Error("No QueryClient set, use QueryClientProvider to set one");return e},Ev=({client:t,children:e})=>(I.useEffect(()=>(t.mount(),()=>{t.unmount()}),[t]),I.createElement(M0.Provider,{value:t},e)),z0=I.createContext(!1),Pv=()=>I.useContext(z0);z0.Provider;function Ov(){let t=!1;return{clearReset:()=>{t=!1},reset:()=>{t=!0},isReset:()=>t}}var Mv=I.createContext(Ov()),zv=()=>I.useContext(Mv);function Rv(t,e){return typeof t=="function"?t(...e):!!t}var Tv=(t,e)=>{(t.suspense||t.throwOnError)&&(e.isReset()||(t.retryOnMount=!1))},Iv=t=>{I.useEffect(()=>{t.clearReset()},[t])},Dv=({result:t,errorResetBoundary:e,throwOnError:n,query:i})=>t.isError&&!e.isReset()&&!t.isFetching&&Rv(n,[t.error,i]),Lv=t=>{t.suspense&&typeof t.staleTime!="number"&&(t.staleTime=1e3)},Av=(t,e)=>t.isLoading&&t.isFetching&&!e,Fv=(t,e,n)=>(t==null?void 0:t.suspense)&&Av(e,n),Nv=(t,e,n)=>e.fetchOptimistic(t).catch(()=>{n.clearReset()});function $v(t,e,n){const i=_v(n),r=Pv(),s=zv(),o=i.defaultQueryOptions(t);o._optimisticResults=r?"isRestoring":"optimistic",Lv(o),Tv(o,s),Iv(s);const[a]=I.useState(()=>new e(i,o)),l=a.getOptimisticResult(o);if(I.useSyncExternalStore(I.useCallback(u=>{const c=r?()=>{}:a.subscribe(Le.batchCalls(u));return a.updateResult(),c},[a,r]),()=>a.getCurrentResult(),()=>a.getCurrentResult()),I.useEffect(()=>{a.setOptions(o,{listeners:!1})},[o,a]),Fv(o,l,r))throw Nv(o,a,s);if(Dv({result:l,errorResetBoundary:s,throwOnError:o.throwOnError,query:a.getCurrentQuery()}))throw l.error;return o.notifyOnChangeProps?l:a.trackResult(l)}function jv(t,e){return $v(t,Sv,e)}var Ye=(t=>(t.NOT_STARTED="not_started",t.IN_PROGRESS="in_progress",t.PAUSED="paused",t.DONE="done",t))(Ye||{});const Bv=t=>[Ye.DONE,Ye.NOT_STARTED].includes(t),Uv=t=>[Ye.PAUSED].includes(t),Hv=t=>[Ye.IN_PROGRESS].includes(t),Gv=t=>[Ye.IN_PROGRESS].includes(t),Wv=t=>{const[e,n]=I.useState(t),i=Bv(e)?()=>n(Ye.IN_PROGRESS):null,r=Uv(e)?()=>n(Ye.IN_PROGRESS):null,s=Hv(e)?()=>n(Ye.PAUSED):null,o=Gv(e)?()=>n(Ye.DONE):null;return{isIdle:e===Ye.NOT_STARTED,isRunning:e===Ye.IN_PROGRESS,isPaused:e===Ye.PAUSED,isFinished:e===Ye.DONE,startGame:i,resumeGame:r,pauseGame:s,finishGame:o}};var st=function(){return st=Object.assign||function(e){for(var n,i=1,r=arguments.length;i0?Me(Yr,--At):0,jr--,xe===10&&(jr=1,al--),xe}function Vt(){return xe=At2||_c(xe)>3?"":" "}function n3(t,e){for(;--e&&Vt()&&!(xe<48||xe>102||xe>57&&xe<65||xe>70&&xe<97););return ul(t,ea()+(e<6&&Ii()==32&&Vt()==32))}function Ec(t){for(;Vt();)switch(xe){case t:return At;case 34:case 39:t!==34&&t!==39&&Ec(xe);break;case 40:t===41&&Ec(t);break;case 92:Vt();break}return At}function i3(t,e){for(;Vt()&&t+xe!==47+10;)if(t+xe===42+42&&Ii()===47)break;return"/*"+ul(e,At-1)+"*"+Df(t===47?t:Vt())}function r3(t){for(;!_c(Ii());)Vt();return ul(t,At)}function s3(t){return e3(ta("",null,null,null,[""],t=Jv(t),0,[0],t))}function ta(t,e,n,i,r,s,o,a,l){for(var u=0,c=0,f=o,d=0,h=0,g=0,v=1,k=1,p=1,m=0,y="",w=r,S=s,_=i,C=y;k;)switch(g=m,m=Vt()){case 40:if(g!=108&&Me(C,f-1)==58){Jo(C+=H(Ql(m),"&","&\f"),"&\f")!=-1&&(p=-1);break}case 34:case 39:case 91:C+=Ql(m);break;case 9:case 10:case 13:case 32:C+=t3(g);break;case 92:C+=n3(ea()-1,7);continue;case 47:switch(Ii()){case 42:case 47:ds(o3(i3(Vt(),ea()),e,n,l),l);break;default:C+="/"}break;case 123*v:a[u++]=un(C)*p;case 125*v:case 59:case 0:switch(m){case 0:case 125:k=0;case 59+c:p==-1&&(C=H(C,/\f/g,"")),h>0&&un(C)-f&&ds(h>32?vh(C+";",i,n,f-1,l):vh(H(C," ","")+";",i,n,f-2,l),l);break;case 59:C+=";";default:if(ds(_=gh(C,e,n,u,c,r,a,y,w=[],S=[],f,s),s),m===123)if(c===0)ta(C,e,_,_,w,s,f,a,S);else switch(d===99&&Me(C,3)===110?100:d){case 100:case 108:case 109:case 115:ta(t,_,_,i&&ds(gh(t,_,_,0,0,r,a,y,r,w=[],f,S),S),r,S,f,a,i?w:S);break;default:ta(C,_,_,_,[""],S,0,a,S)}}u=c=h=0,v=p=1,y=C="",f=o;break;case 58:f=1+un(C),h=g;default:if(v<1){if(m==123)--v;else if(m==125&&v++==0&&Zv()==125)continue}switch(C+=Df(m),m*v){case 38:p=c>0?1:(C+="\f",-1);break;case 44:a[u++]=(un(C)-1)*p,p=1;break;case 64:Ii()===45&&(C+=Ql(Vt())),d=Ii(),c=f=un(y=C+=r3(ea())),m++;break;case 45:g===45&&un(C)==2&&(v=0)}}return s}function gh(t,e,n,i,r,s,o,a,l,u,c,f){for(var d=r-1,h=r===0?s:[""],g=D0(h),v=0,k=0,p=0;v0?h[m]+" "+y:H(y,/&\f/g,h[m])))&&(l[p++]=w);return ll(t,e,n,r===0?ol:a,l,u,c,f)}function o3(t,e,n,i){return ll(t,e,n,R0,Df(Xv()),$r(t,2,-2),0,i)}function vh(t,e,n,i,r){return ll(t,e,n,If,$r(t,0,i),$r(t,i+1,-1),i,r)}function A0(t,e,n){switch(Kv(t,e)){case 5103:return K+"print-"+t+t;case 5737:case 4201:case 3177:case 3433:case 1641:case 4457:case 2921:case 5572:case 6356:case 5844:case 3191:case 6645:case 3005:case 6391:case 5879:case 5623:case 6135:case 4599:case 4855:case 4215:case 6389:case 5109:case 5365:case 5621:case 3829:return K+t+t;case 4789:return Cs+t+t;case 5349:case 4246:case 4810:case 6968:case 2756:return K+t+Cs+t+se+t+t;case 5936:switch(Me(t,e+11)){case 114:return K+t+se+H(t,/[svh]\w+-[tblr]{2}/,"tb")+t;case 108:return K+t+se+H(t,/[svh]\w+-[tblr]{2}/,"tb-rl")+t;case 45:return K+t+se+H(t,/[svh]\w+-[tblr]{2}/,"lr")+t}case 6828:case 4268:case 2903:return K+t+se+t+t;case 6165:return K+t+se+"flex-"+t+t;case 5187:return K+t+H(t,/(\w+).+(:[^]+)/,K+"box-$1$2"+se+"flex-$1$2")+t;case 5443:return K+t+se+"flex-item-"+H(t,/flex-|-self/g,"")+(wn(t,/flex-|baseline/)?"":se+"grid-row-"+H(t,/flex-|-self/g,""))+t;case 4675:return K+t+se+"flex-line-pack"+H(t,/align-content|flex-|-self/g,"")+t;case 5548:return K+t+se+H(t,"shrink","negative")+t;case 5292:return K+t+se+H(t,"basis","preferred-size")+t;case 6060:return K+"box-"+H(t,"-grow","")+K+t+se+H(t,"grow","positive")+t;case 4554:return K+H(t,/([^-])(transform)/g,"$1"+K+"$2")+t;case 6187:return H(H(H(t,/(zoom-|grab)/,K+"$1"),/(image-set)/,K+"$1"),t,"")+t;case 5495:case 3959:return H(t,/(image-set\([^]*)/,K+"$1$`$1");case 4968:return H(H(t,/(.+:)(flex-)?(.*)/,K+"box-pack:$3"+se+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+K+t+t;case 4200:if(!wn(t,/flex-|baseline/))return se+"grid-column-align"+$r(t,e)+t;break;case 2592:case 3360:return se+H(t,"template-","")+t;case 4384:case 3616:return n&&n.some(function(i,r){return e=r,wn(i.props,/grid-\w+-end/)})?~Jo(t+(n=n[e].value),"span")?t:se+H(t,"-start","")+t+se+"grid-row-span:"+(~Jo(n,"span")?wn(n,/\d+/):+wn(n,/\d+/)-+wn(t,/\d+/))+";":se+H(t,"-start","")+t;case 4896:case 4128:return n&&n.some(function(i){return wn(i.props,/grid-\w+-start/)})?t:se+H(H(t,"-end","-span"),"span ","")+t;case 4095:case 3583:case 4068:case 2532:return H(t,/(.+)-inline(.+)/,K+"$1$2")+t;case 8116:case 7059:case 5753:case 5535:case 5445:case 5701:case 4933:case 4677:case 5533:case 5789:case 5021:case 4765:if(un(t)-1-e>6)switch(Me(t,e+1)){case 109:if(Me(t,e+4)!==45)break;case 102:return H(t,/(.+:)(.+)-([^]+)/,"$1"+K+"$2-$3$1"+Cs+(Me(t,e+3)==108?"$3":"$2-$3"))+t;case 115:return~Jo(t,"stretch")?A0(H(t,"stretch","fill-available"),e,n)+t:t}break;case 5152:case 5920:return H(t,/(.+?):(\d+)(\s*\/\s*(span)?\s*(\d+))?(.*)/,function(i,r,s,o,a,l,u){return se+r+":"+s+u+(o?se+r+"-span:"+(a?l:+l-+s)+u:"")+t});case 4949:if(Me(t,e+6)===121)return H(t,":",":"+K)+t;break;case 6444:switch(Me(t,Me(t,14)===45?18:11)){case 120:return H(t,/(.+:)([^;\s!]+)(;|(\s+)?!.+)?/,"$1"+K+(Me(t,14)===45?"inline-":"")+"box$3$1"+K+"$2$3$1"+se+"$2box$3")+t;case 100:return H(t,":",":"+se)+t}break;case 5719:case 2647:case 2135:case 3927:case 2391:return H(t,"scroll-","scroll-snap-")+t}return t}function Da(t,e){for(var n="",i=0;i-1&&!t.return)switch(t.type){case If:t.return=A0(t.value,t.length,n);return;case T0:return Da([Dn(t,{value:H(t.value,"@","@"+K)})],i);case ol:if(t.length)return Yv(n=t.props,function(r){switch(wn(r,i=/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":Qi(Dn(t,{props:[H(r,/:(read-\w+)/,":"+Cs+"$1")]})),Qi(Dn(t,{props:[r]})),bc(t,{props:yh(n,i)});break;case"::placeholder":Qi(Dn(t,{props:[H(r,/:(plac\w+)/,":"+K+"input-$1")]})),Qi(Dn(t,{props:[H(r,/:(plac\w+)/,":"+Cs+"$1")]})),Qi(Dn(t,{props:[H(r,/:(plac\w+)/,se+"input-$1")]})),Qi(Dn(t,{props:[r]})),bc(t,{props:yh(n,i)});break}return""})}}var f3={animationIterationCount:1,aspectRatio:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1},Br=typeof process<"u"&&process.env!==void 0&&({}.REACT_APP_SC_ATTR||{}.SC_ATTR)||"data-styled",Lf=typeof window<"u"&&"HTMLElement"in window,d3=!!(typeof SC_DISABLE_SPEEDY=="boolean"?SC_DISABLE_SPEEDY:typeof process<"u"&&process.env!==void 0&&{}.REACT_APP_SC_DISABLE_SPEEDY!==void 0&&{}.REACT_APP_SC_DISABLE_SPEEDY!==""?{}.REACT_APP_SC_DISABLE_SPEEDY!=="false"&&{}.REACT_APP_SC_DISABLE_SPEEDY:typeof process<"u"&&process.env!==void 0&&{}.SC_DISABLE_SPEEDY!==void 0&&{}.SC_DISABLE_SPEEDY!==""&&{}.SC_DISABLE_SPEEDY!=="false"&&{}.SC_DISABLE_SPEEDY),cl=Object.freeze([]),Ur=Object.freeze({});function h3(t,e,n){return n===void 0&&(n=Ur),t.theme!==n.theme&&t.theme||e||n.theme}var F0=new Set(["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","big","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","keygen","label","legend","li","link","main","map","mark","menu","menuitem","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","small","source","span","strong","style","sub","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","track","u","ul","use","var","video","wbr","circle","clipPath","defs","ellipse","foreignObject","g","image","line","linearGradient","marker","mask","path","pattern","polygon","polyline","radialGradient","rect","stop","svg","text","tspan"]),p3=/[!"#$%&'()*+,./:;<=>?@[\\\]^`{|}~-]+/g,m3=/(^-|-$)/g;function wh(t){return t.replace(p3,"-").replace(m3,"")}var y3=/(a)(d)/gi,xh=function(t){return String.fromCharCode(t+(t>25?39:97))};function Pc(t){var e,n="";for(e=Math.abs(t);e>52;e=e/52|0)n=xh(e%52)+n;return(xh(e%52)+n).replace(y3,"$1-$2")}var Vl,ar=function(t,e){for(var n=e.length;n;)t=33*t^e.charCodeAt(--n);return t},N0=function(t){return ar(5381,t)};function g3(t){return Pc(N0(t)>>>0)}function v3(t){return t.displayName||t.name||"Component"}function Kl(t){return typeof t=="string"&&!0}var $0=typeof Symbol=="function"&&Symbol.for,j0=$0?Symbol.for("react.memo"):60115,w3=$0?Symbol.for("react.forward_ref"):60112,x3={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},k3={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},B0={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},S3=((Vl={})[w3]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},Vl[j0]=B0,Vl);function kh(t){return("type"in(e=t)&&e.type.$$typeof)===j0?B0:"$$typeof"in t?S3[t.$$typeof]:x3;var e}var C3=Object.defineProperty,b3=Object.getOwnPropertyNames,Sh=Object.getOwnPropertySymbols,_3=Object.getOwnPropertyDescriptor,E3=Object.getPrototypeOf,Ch=Object.prototype;function U0(t,e,n){if(typeof e!="string"){if(Ch){var i=E3(e);i&&i!==Ch&&U0(t,i,n)}var r=b3(e);Sh&&(r=r.concat(Sh(e)));for(var s=kh(t),o=kh(e),a=0;a0?" Args: ".concat(e.join(", ")):""))}var P3=function(){function t(e){this.groupSizes=new Uint32Array(512),this.length=512,this.tag=e}return t.prototype.indexOfGroup=function(e){for(var n=0,i=0;i=this.groupSizes.length){for(var i=this.groupSizes,r=i.length,s=r;e>=s;)if((s<<=1)<0)throw po(16,"".concat(e));this.groupSizes=new Uint32Array(s),this.groupSizes.set(i),this.length=s;for(var o=r;o=this.length||this.groupSizes[e]===0)return n;for(var i=this.groupSizes[e],r=this.indexOfGroup(e),s=r+i,o=r;o=0){var i=document.createTextNode(n);return this.element.insertBefore(i,this.nodes[e]||null),this.length++,!0}return!1},t.prototype.deleteRule=function(e){this.element.removeChild(this.nodes[e]),this.length--},t.prototype.getRule=function(e){return e0&&(k+="".concat(p,","))}),l+="".concat(g).concat(v,'{content:"').concat(k,'"}').concat(`/*!sc*/ +`)},c=0;c0?".".concat(e):d},c=l.slice();c.push(function(d){d.type===ol&&d.value.includes("&")&&(d.props[0]=d.props[0].replace(N3,n).replace(i,u))}),o.prefix&&c.push(c3),c.push(a3);var f=function(d,h,g,v){h===void 0&&(h=""),g===void 0&&(g=""),v===void 0&&(v="&"),e=v,n=h,i=new RegExp("\\".concat(n,"\\b"),"g");var k=d.replace($3,""),p=s3(g||h?"".concat(g," ").concat(h," { ").concat(k," }"):k);o.namespace&&(p=W0(p,o.namespace));var m=[];return Da(p,l3(c.concat(u3(function(y){return m.push(y)})))),m};return f.hash=l.length?l.reduce(function(d,h){return h.name||po(15),ar(d,h.name)},5381).toString():"",f}var B3=new G0,Mc=j3(),q0=_e.createContext({shouldForwardProp:void 0,styleSheet:B3,stylis:Mc});q0.Consumer;_e.createContext(void 0);function Eh(){return I.useContext(q0)}var U3=function(){function t(e,n){var i=this;this.inject=function(r,s){s===void 0&&(s=Mc);var o=i.name+s.hash;r.hasNameForId(i.id,o)||r.insertRules(i.id,o,s(i.rules,o,"@keyframes"))},this.name=e,this.id="sc-keyframes-".concat(e),this.rules=n,Ff(this,function(){throw po(12,String(i.name))})}return t.prototype.getName=function(e){return e===void 0&&(e=Mc),this.name+e.hash},t}(),H3=function(t){return t>="A"&&t<="Z"};function Ph(t){for(var e="",n=0;n>>0);if(!n.hasNameForId(this.componentId,o)){var a=i(s,".".concat(o),void 0,this.componentId);n.insertRules(this.componentId,o,a)}r=ki(r,o),this.staticRulesId=o}else{for(var l=ar(this.baseHash,i.hash),u="",c=0;c>>0);n.hasNameForId(this.componentId,h)||n.insertRules(this.componentId,h,i(u,".".concat(h),void 0,this.componentId)),r=ki(r,h)}}return r},t}(),K0=_e.createContext(void 0);K0.Consumer;var Xl={};function Q3(t,e,n){var i=Af(t),r=t,s=!Kl(t),o=e.attrs,a=o===void 0?cl:o,l=e.componentId,u=l===void 0?function(y,w){var S=typeof y!="string"?"sc":wh(y);Xl[S]=(Xl[S]||0)+1;var _="".concat(S,"-").concat(g3("6.0.8"+S+Xl[S]));return w?"".concat(w,"-").concat(_):_}(e.displayName,e.parentComponentId):l,c=e.displayName;c===void 0&&function(y){return Kl(y)?"styled.".concat(y):"Styled(".concat(v3(y),")")}(t);var f=e.displayName&&e.componentId?"".concat(wh(e.displayName),"-").concat(e.componentId):e.componentId||u,d=i&&r.attrs?r.attrs.concat(a).filter(Boolean):a,h=e.shouldForwardProp;if(i&&r.shouldForwardProp){var g=r.shouldForwardProp;if(e.shouldForwardProp){var v=e.shouldForwardProp;h=function(y,w){return g(y,w)&&v(y,w)}}else h=g}var k=new q3(n,f,i?r.componentStyle:void 0);function p(y,w){return function(S,_,C){var z=S.attrs,B=S.componentStyle,U=S.defaultProps,we=S.foldedComponentIds,St=S.styledComponentId,Nt=S.target,pi=_e.useContext(K0),mi=Eh(),pn=S.shouldForwardProp||mi.shouldForwardProp,tt=function(qe,Qe,Ct){for(var Ie,Ve=st(st({},Qe),{className:void 0,theme:Ct}),b=0;b(t.FB="facebook",t.DOCKER="docker",t.REACT="react",t.RUST="rust",t.SNAPCHAT="snapchat",t.TELEGRAM="telegram",t.LINUX="linux",t.GITHUB="github",t.REDHAT="redhat",t.PYTHON="python",t.APP_STORE="app_store",t.TIKTOK="tiktok",t.JAVA="java",t.GITLAB="gitlab",t.GOLANG="golang",t.CHROME="chrome",t))(Ee||{});const g4=t=>({[Ee.FB]:J3,[Ee.DOCKER]:Z3,[Ee.REACT]:o4,[Ee.RUST]:l4,[Ee.SNAPCHAT]:u4,[Ee.TELEGRAM]:c4,[Ee.LINUX]:r4,[Ee.GITHUB]:e4,[Ee.REDHAT]:a4,[Ee.PYTHON]:s4,[Ee.APP_STORE]:Y3,[Ee.TIKTOK]:f4,[Ee.JAVA]:i4,[Ee.GITLAB]:t4,[Ee.GOLANG]:n4,[Ee.CHROME]:X3})[t],v4=()=>y4,hs=112,w4=86,x4=72,k4=8,S4=({iconName:t,isClosed:e,animation:n,bgColor:i,highlightColor:r,iconColor:s,onClick:o})=>{const a=g4(t),l=v4();return N.jsx(J0,{onClick:o,children:N.jsxs(C4,{isClosed:e,children:[N.jsx(b4,{bgColor:i,highlightColor:r,children:N.jsx(Rh,{animation:n,children:N.jsx(a,{size:w4,color:s})})}),N.jsx(_4,{bgColor:i,highlightColor:r,children:N.jsx(Rh,{animation:n,children:N.jsx(l,{size:x4,color:s})})})]})})},J0=ct.div` + width: ${hs}px; + height: ${hs}px; + max-width: ${hs}px; + max-height: ${hs}px; + + border-radius: ${k4}px; + cursor: pointer; + + background: transparent; +`,C4=ct.div` + position: relative; + width: 100%; + height: 100%; + + transition: transform 0.4s; + transform-style: preserve-3d; + + ${t=>t.isClosed&&Gr` + transform: rotateY(180deg); + `} +`,Rh=ct.span` + ${t=>t.animation==="shake"&&Gr` + animation: shake 0.2s; + `} + ${t=>t.animation==="infinite-shake"&&Gr` + animation: infinite shake 0.5s; + `} + + @keyframes shake { + 0% { + transform: translate(1px, 1px); + } + 10% { + transform: translate(-1px, -2px); + } + 20% { + transform: translate(-3px, 0px); + } + 30% { + transform: translate(3px, 2px); + } + 40% { + transform: translate(1px, -1px); + } + 50% { + transform: translate(-1px, 2px); + } + 60% { + transform: translate(-3px, 1px); + } + 70% { + transform: translate(3px, 1px); + } + 80% { + transform: translate(-1px, -1px); + } + 90% { + transform: translate(1px, 2px); + } + 100% { + transform: translate(1px, -2px); + } + } +`,em=ct(J0)` + position: absolute; + display: flex; + align-items: center; + justify-content: center; + border: 0.5px solid #ffffff22; + backface-visibility: hidden; + + background: ${t=>t.bgColor}; + + &:hover { + filter: brightness(.95); + } + transition: filter .2s ease-in-out; + + ${t=>t.highlightColor&&Gr` + box-shadow: 0px 0px 6px 0 ${t.highlightColor}; + `} +`,b4=ct(em)``,_4=ct(em)` + transform: rotateY(180deg); + + outline: 1px dashed #44444488; +`,It={cardsForSingleGuess:2,cardsAmount:16,autoSolveLastGuess:!0,maxColumns:4,crazyMode:!1,wrongGuessDisplayMs:700,iconsToChooseFrom:Object.values(Ee),initialGameState:Ye.NOT_STARTED,autoRestartOnFinish:!0,autoRestartDelay:2500,displayDebugStats:!1},E4=()=>{const[t,e]=I.useState(It),n=I.useCallback(i=>{e(r=>({...r,...i}))},[]);return{config:t,updateConfigWith:n}};var fe=(t=>(t.CLOSED="closed",t.PICKED="picked",t.GUESSED="guessed",t.GUESSED_WRONG="guessed_wrong",t.SOLVED="solved",t))(fe||{});const P4=({cardsAmount:t,cardsForSingleGuess:e})=>{const n=e>0&&t>=e,i=t%e===0;return n&&i},O4=({cardsAmount:t,cardsForSingleGuess:e,iconsToChooseFrom:n})=>e>0&&n.length>=t/e,M4=t=>{if(!t.length)return null;const e=Math.floor(Math.random()*t.length);return t[e]},z4=t=>t!==null,Th=t=>{if(!t.length)return null;const e=Math.floor(Math.random()*t.length),n=t[e];return t.splice(e,1),n},R4=(t,e=n=>n)=>t.every(n=>e(n)===e(t[0]));var si=(t=>(t[t.DEV=0]="DEV",t[t.INFO=1]="INFO",t[t.ERROR=2]="ERROR",t))(si||{});const T4=[si.DEV],I4={[si.DEV]:p4,[si.INFO]:m4,[si.ERROR]:d4},Nf=({icon:t,level:e,requirePrefix:n=!1})=>{const i=T4.includes(e),r=t??I4[e],s=o=>{console.log(o,i,!1),!i&&za(o,{icon:N.jsx(r,{})})};return n?(o,a)=>s(`${o}: ${a}`):s};Nf({level:si.INFO});Nf({level:si.DEV});Nf({level:si.ERROR});const D4=t=>e=>null,L4=t=>{if(!P4(t))throw new Error("Invalid amount of cards to play guessing game!");if(!O4(t))throw new Error("Not enough icons to choose from!");const e=[...t.iconsToChooseFrom],n=Array.from({length:t.cardsAmount}).map(()=>null),i=Array.from({length:t.cardsAmount}).map((o,a)=>a);let r=i.length,s=1;for(;r;){const o=Th(e);Array.from({length:t.cardsForSingleGuess}).map(()=>Th(i)).forEach(l=>{const u={icon:o,state:fe.CLOSED,id:s++};n[l]=u}),r-=t.cardsForSingleGuess}return n.filter(z4)},A4=t=>{const[e,n]=I.useState(t),i=I.useCallback(c=>e.find(f=>f.id===c),[e]),r=I.useCallback(c=>{n(f=>f.map(d=>c.find(h=>h.id===d.id)??d))},[]),s=I.useCallback(c=>{n(f=>f.map(d=>d.id===c.id?c:d))},[]),o=I.useMemo(()=>e.filter(c=>c.state===fe.PICKED),[e]),a=I.useMemo(()=>e.filter(c=>c.state!==fe.GUESSED),[e]),l=I.useCallback(c=>{const f=i(c),d=o.length===It.cardsForSingleGuess;f.state===fe.CLOSED&&!d&&s({...f,state:fe.PICKED})},[o,s,i]),u=I.useCallback(()=>{n(t())},[t]);return{allCards:e,pickCard:l,pickedCards:o,nonGuessedCards:a,updateCard:s,updateCards:r,reset:u}},tm=_e.createContext({}),F4=({children:t})=>{const e=E4(),n=Wv(It.initialGameState),i=A4(()=>L4(It));return N.jsx(tm.Provider,{value:{state:n,cards:i,config:e},children:t})},tn=()=>I.useContext(tm),Zl=()=>{},$f=({onGuessed:t=Zl,onLastGuessLeft:e=Zl,onGameFinished:n=Zl})=>{const{cards:{pickedCards:i,nonGuessedCards:r},state:{isFinished:s}}=tn();I.useEffect(()=>{if(i.length===It.cardsForSingleGuess){const a=R4(i,l=>l.icon);t(a,i)}},[i,t]),I.useEffect(()=>{s&&n()},[s,n]),I.useEffect(()=>{It.autoSolveLastGuess&&r.length===It.cardsForSingleGuess&&e(r)},[r,e])},N4=t=>t?fe.GUESSED:fe.GUESSED_WRONG,$4=()=>{B4(),G4(),U4(),H4(),j4()},j4=()=>{const{cards:{reset:t},state:{startGame:e}}=tn();$f({onGameFinished:()=>{It.autoRestartOnFinish&&setTimeout(()=>{e&&(e(),t())},It.autoRestartDelay)}})},B4=()=>{const{cards:{updateCard:t}}=tn();$f({onGuessed:(e,n)=>{const i=N4(e);n.forEach(r=>{t({...r,state:i})}),e||setTimeout(()=>{n.forEach(r=>{t({...r,state:fe.CLOSED})})},It.wrongGuessDisplayMs)}})},U4=()=>{const{state:{isIdle:t,startGame:e}}=tn();I.useEffect(()=>{t&&e&&e()},[t,e])},H4=()=>{const{cards:{nonGuessedCards:t},state:{finishGame:e}}=tn();I.useEffect(()=>{t.length===0&&e&&e()},[t,e])},G4=()=>{const{cards:{updateCard:t}}=tn();$f({onLastGuessLeft:e=>{It.autoSolveLastGuess&&e.forEach(n=>{t({...n,state:fe.GUESSED})})}})},Jl={BG:"#b993d6",BG_GRADIENT:["#b993d6","#8ca6db"],BORDER:"#ffffff22"},nm=16,im=16,W4=({maxColumns:t})=>{const e=hs*t,n=nm*(t-1),i=im*2;return e+n+i},q4=({maxColumns:t,children:e})=>N.jsx(Q4,{maxColumns:t,children:e}),Q4=ct.div` + display: flex; + max-width: ${W4}px; + align: auto; + flex-wrap: wrap; + gap: ${nm}px; + padding: ${im}px; + border-radius: 8px; + box-shadow: 10px 10px 10px 0px rgba(0,0,0,0.4); + + background: ${Jl.BG}; + background: linear-gradient(to right, ${Jl.BG_GRADIENT.join(", ")}); + outline: 2px solid ${Jl.BORDER}; +`,V4=t=>t===!0?"TRUE":"FALSE",K4=t=>t===!0?"lightgreen":"red",Ao=({children:t})=>{const e=V4(t),n=K4(t);return N.jsx(Y4,{color:n,children:e})},Y4=ct.span` + color: ${t=>t.color}; +`;var rm={exports:{}};(function(t,e){(function(n,i){t.exports=i(I)})(typeof self<"u"?self:Bm,function(n){return function(i){var r={};function s(o){if(r[o])return r[o].exports;var a=r[o]={i:o,l:!1,exports:{}};return i[o].call(a.exports,a,a.exports,s),a.l=!0,a.exports}return s.m=i,s.c=r,s.d=function(o,a,l){s.o(o,a)||Object.defineProperty(o,a,{enumerable:!0,get:l})},s.r=function(o){typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(o,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(o,"__esModule",{value:!0})},s.t=function(o,a){if(1&a&&(o=s(o)),8&a||4&a&&typeof o=="object"&&o&&o.__esModule)return o;var l=Object.create(null);if(s.r(l),Object.defineProperty(l,"default",{enumerable:!0,value:o}),2&a&&typeof o!="string")for(var u in o)s.d(l,u,(function(c){return o[c]}).bind(null,u));return l},s.n=function(o){var a=o&&o.__esModule?function(){return o.default}:function(){return o};return s.d(a,"a",a),a},s.o=function(o,a){return Object.prototype.hasOwnProperty.call(o,a)},s.p="",s(s.s=2)}([function(i,r){i.exports=n},function(i,r,s){var o={linear:function(a,l,u,c){return(u-l)*a/c+l},easeInQuad:function(a,l,u,c){return(u-l)*(a/=c)*a+l},easeOutQuad:function(a,l,u,c){return-(u-l)*(a/=c)*(a-2)+l},easeInOutQuad:function(a,l,u,c){var f=u-l;return(a/=c/2)<1?f/2*a*a+l:-f/2*(--a*(a-2)-1)+l},easeInCubic:function(a,l,u,c){return(u-l)*(a/=c)*a*a+l},easeOutCubic:function(a,l,u,c){return(u-l)*((a=a/c-1)*a*a+1)+l},easeInOutCubic:function(a,l,u,c){var f=u-l;return(a/=c/2)<1?f/2*a*a*a+l:f/2*((a-=2)*a*a+2)+l},easeInQuart:function(a,l,u,c){return(u-l)*(a/=c)*a*a*a+l},easeOutQuart:function(a,l,u,c){return-(u-l)*((a=a/c-1)*a*a*a-1)+l},easeInOutQuart:function(a,l,u,c){var f=u-l;return(a/=c/2)<1?f/2*a*a*a*a+l:-f/2*((a-=2)*a*a*a-2)+l},easeInQuint:function(a,l,u,c){return(u-l)*(a/=c)*a*a*a*a+l},easeOutQuint:function(a,l,u,c){return(u-l)*((a=a/c-1)*a*a*a*a+1)+l},easeInOutQuint:function(a,l,u,c){var f=u-l;return(a/=c/2)<1?f/2*a*a*a*a*a+l:f/2*((a-=2)*a*a*a*a+2)+l},easeInSine:function(a,l,u,c){var f=u-l;return-f*Math.cos(a/c*(Math.PI/2))+f+l},easeOutSine:function(a,l,u,c){return(u-l)*Math.sin(a/c*(Math.PI/2))+l},easeInOutSine:function(a,l,u,c){return-(u-l)/2*(Math.cos(Math.PI*a/c)-1)+l},easeInExpo:function(a,l,u,c){return a==0?l:(u-l)*Math.pow(2,10*(a/c-1))+l},easeOutExpo:function(a,l,u,c){var f=u-l;return a==c?l+f:f*(1-Math.pow(2,-10*a/c))+l},easeInOutExpo:function(a,l,u,c){var f=u-l;return a===0?l:a===c?l+f:(a/=c/2)<1?f/2*Math.pow(2,10*(a-1))+l:f/2*(2-Math.pow(2,-10*--a))+l},easeInCirc:function(a,l,u,c){return-(u-l)*(Math.sqrt(1-(a/=c)*a)-1)+l},easeOutCirc:function(a,l,u,c){return(u-l)*Math.sqrt(1-(a=a/c-1)*a)+l},easeInOutCirc:function(a,l,u,c){var f=u-l;return(a/=c/2)<1?-f/2*(Math.sqrt(1-a*a)-1)+l:f/2*(Math.sqrt(1-(a-=2)*a)+1)+l},easeInElastic:function(a,l,u,c){var f,d,h,g=u-l;return h=1.70158,a===0?l:(a/=c)==1?l+g:((d=0)||(d=.3*c),(f=g)=1&&this.rotationDirection===a.Positive?this.rotationDirection=a.Negative:this.rotateY<=-1&&this.rotationDirection===a.Negative&&(this.rotationDirection=a.Positive);var ie=.1*this.rotationDirection;if(this.rotateY+=ie,this.angle+=this.angularSpin,this.context.save(),this.context.translate(this.x,this.y),this.context.rotate(this.angle),this.context.scale(1,this.rotateY),this.context.rotate(this.angle),this.context.beginPath(),this.context.fillStyle=this.color,this.context.strokeStyle=this.color,this.context.globalAlpha=ne,this.context.lineCap="round",this.context.lineWidth=2,pe&&typeof pe=="function")pe.call(this,this.context);else switch(this.shape){case o.Circle:this.context.beginPath(),this.context.arc(0,0,this.radius,0,2*Math.PI),this.context.fill();break;case o.Square:this.context.fillRect(-this.w/2,-this.h/2,this.w,this.h);break;case o.Strip:this.context.fillRect(-this.w/6,-this.h/2,this.w/3,this.h)}this.context.closePath(),this.context.restore()}}])&&h(E.prototype,O),b}();function k(b,E,O){return E in b?Object.defineProperty(b,E,{value:O,enumerable:!0,configurable:!0,writable:!0}):b[E]=O,b}var p=function b(E,O){var P=this;(function(L,W){if(!(L instanceof W))throw new TypeError("Cannot call a class as a function")})(this,b),k(this,"canvas",void 0),k(this,"context",void 0),k(this,"getOptions",void 0),k(this,"x",0),k(this,"y",0),k(this,"w",0),k(this,"h",0),k(this,"lastNumberOfPieces",0),k(this,"tweenInitTime",Date.now()),k(this,"particles",[]),k(this,"particlesGenerated",0),k(this,"removeParticleAt",function(L){P.particles.splice(L,1)}),k(this,"getParticle",function(){var L=d(P.x,P.w+P.x),W=d(P.y,P.h+P.y);return new v(P.context,P.getOptions,L,W)}),k(this,"animate",function(){var L=P.canvas,W=P.context,ne=P.particlesGenerated,pe=P.lastNumberOfPieces,ie=P.getOptions(),mn=ie.run,$t=ie.recycle,jt=ie.numberOfPieces,pl=ie.debug,ml=ie.tweenFunction,yl=ie.tweenDuration;if(!mn)return!1;var gl=P.particles.length,Xr=$t?gl:ne,vl=Date.now();if(Xryl?yl:Math.max(0,vl-qf),Xr,jt,yl),Qf=Math.round(jm-Xr),Vf=0;VfL.height||Zr.y<-100||Zr.x>L.width+100||Zr.x<-100)&&($t&&Xr<=jt?P.particles[Kf]=P.getParticle():P.removeParticleAt(Kf))}),gl>0||Xr0&&ie.call(L,L),L._options.run=!1)}),S(this,"reset",function(){L.generator&&L.generator.particlesGenerated>0&&(L.generator.particlesGenerated=0,L.generator.particles=[],L.generator.lastNumberOfPieces=0)}),S(this,"stop",function(){L.options={run:!1},L.rafId&&(cancelAnimationFrame(L.rafId),L.rafId=void 0)}),this.canvas=P;var W=this.canvas.getContext("2d");if(!W)throw new Error("Could not get canvas context");this.context=W,this.generator=new p(this.canvas,function(){return L.options}),this.options=Y,this.update()}var E,O;return E=b,(O=[{key:"options",get:function(){return this._options},set:function(P){var Y=this._options&&this._options.run,L=this._options&&this._options.recycle;this.setOptionsWithDefaults(P),this.generator&&(Object.assign(this.generator,this.options.confettiSource),typeof P.recycle=="boolean"&&P.recycle&&L===!1&&(this.generator.lastNumberOfPieces=this.generator.particles.length)),typeof P.run=="boolean"&&P.run&&Y===!1&&this.update()}}])&&w(E.prototype,O),b}();function z(b){return function(E){if(Array.isArray(E))return mi(E)}(b)||function(E){if(typeof Symbol<"u"&&Symbol.iterator in Object(E))return Array.from(E)}(b)||pi(b)||function(){throw new TypeError(`Invalid attempt to spread non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function B(b){return(B=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(E){return typeof E}:function(E){return E&&typeof Symbol=="function"&&E.constructor===Symbol&&E!==Symbol.prototype?"symbol":typeof E})(b)}function U(){return(U=Object.assign||function(b){for(var E=1;E"u"||!(Symbol.iterator in Object(O)))){var Y=[],L=!0,W=!1,ne=void 0;try{for(var pe,ie=O[Symbol.iterator]();!(L=(pe=ie.next()).done)&&(Y.push(pe.value),!P||Y.length!==P);L=!0);}catch(mn){W=!0,ne=mn}finally{try{L||ie.return==null||ie.return()}finally{if(W)throw ne}}return Y}}(b,E)||pi(b,E)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function pi(b,E){if(b){if(typeof b=="string")return mi(b,E);var O=Object.prototype.toString.call(b).slice(8,-1);return O==="Object"&&b.constructor&&(O=b.constructor.name),O==="Map"||O==="Set"?Array.from(b):O==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(O)?mi(b,E):void 0}}function mi(b,E){(E==null||E>b.length)&&(E=b.length);for(var O=0,P=new Array(E);O"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch{return!1}}();return function(){var O,P=J(b);if(E){var Y=J(this).constructor;O=Reflect.construct(P,arguments,Y)}else O=P.apply(this,arguments);return j(this,O)}}function j(b,E){return!E||B(E)!=="object"&&typeof E!="function"?Z(b):E}function Z(b){if(b===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return b}function J(b){return(J=Object.setPrototypeOf?Object.getPrototypeOf:function(E){return E.__proto__||Object.getPrototypeOf(E)})(b)}function qe(b,E,O){return E in b?Object.defineProperty(b,E,{value:O,enumerable:!0,configurable:!0,writable:!0}):b[E]=O,b}var Qe=u.a.createRef(),Ct=function(b){(function(L,W){if(typeof W!="function"&&W!==null)throw new TypeError("Super expression must either be null or a function");L.prototype=Object.create(W&&W.prototype,{constructor:{value:L,writable:!0,configurable:!0}}),W&&T(L,W)})(Y,b);var E,O,P=$(Y);function Y(L){var W;pn(this,Y);for(var ne=arguments.length,pe=new Array(ne>1?ne-1:0),ie=1;ieN.jsx(Z4,{width:t,height:e,recycle:!n,gravity:.75}),e5=ct.button` + display: flex; + gap: 8px; + padding: 8px 32px; + align-items: center; + background: transparent; + + cursor: pointer; + + border-radius: 8px; + border: 1px dashed #ffffff33; + + &:hover { + filter: brightness(0.9); + } + + ${t=>t.isLoading&&Gr` + pointer-events: none; + background: #ffd38e36; + `} +`,t5=D4();ct.div``;const n5=({additionalButtons:t=[]})=>N.jsxs(i5,{children:[N.jsx(t5,{}),t]}),i5=ct.div` + display: flex; + flex-direction: column; + place-items: center; + gap: 8px; +`,r5=()=>{const{state:{isIdle:t,isPaused:e,isRunning:n,isFinished:i}}=tn();return N.jsxs("div",{children:[N.jsx("h2",{children:"Debug info"}),N.jsxs("p",{children:["isIdle? ",N.jsx(Ao,{children:t})]}),N.jsxs("p",{children:["isPaused? ",N.jsx(Ao,{children:e})]}),N.jsxs("p",{children:["isRunning? ",N.jsx(Ao,{children:n})]}),N.jsxs("p",{children:["isFinished? ",N.jsx(Ao,{children:i})]})]})},s5=t=>({[fe.CLOSED]:"grey",[fe.PICKED]:"lightblue",[fe.GUESSED]:"lightgreen",[fe.GUESSED_WRONG]:"indianred",[fe.SOLVED]:"white"})[t],o5=t=>({[fe.CLOSED]:void 0,[fe.PICKED]:"#ffffff88",[fe.GUESSED]:"#00ff0055",[fe.GUESSED_WRONG]:"#ff000055",[fe.SOLVED]:void 0})[t],a5=t=>{switch(t){case fe.GUESSED:return"shake";case fe.GUESSED_WRONG:return"infinite-shake";default:return}},l5=t=>{const{cards:{allCards:e}}=tn();return e.find(n=>n.id===t)},u5=t=>{const{cards:{pickCard:e}}=tn(),n=l5(t),i=n.state===fe.CLOSED,r=I.useMemo(()=>a5(n.state),[n.state]);return{pickCard:()=>e(n.id),icon:n.icon,state:n.state,isCardClosed:i,cardAnimation:r}},c5=({id:t})=>{const{icon:e,state:n,pickCard:i,isCardClosed:r,cardAnimation:s}=u5(t);return N.jsx(S4,{iconName:e,onClick:i,isClosed:r,bgColor:s5(n),highlightColor:o5(n),animation:s,iconColor:"black"})},f5=()=>{const{cards:{allCards:t},config:{config:e}}=tn();return N.jsx(q4,{maxColumns:e.maxColumns,children:t.map(n=>N.jsx(c5,{id:n.id},n.id))})},d5=({additionalButtons:t})=>{const{state:{isFinished:e}}=tn();return N.jsxs(N.Fragment,{children:[N.jsxs(p5,{children:[N.jsx(h5,{children:"Guessing game"}),N.jsx(f5,{}),N.jsx(n5,{additionalButtons:t})]}),It.displayDebugStats&&N.jsx(r5,{}),e&&N.jsx(J4,{})]})},h5=ct.h1` + color: #b993d6; +`,p5=ct.div` + width: 100%; + height: 100%; + display: flex; + gap: 32px; + flex-direction: column; + align-items: center; + justify-content: center; + position: relative; + z-index: 2000; +`,m5=({additionalButtons:t})=>N.jsx(F4,{children:N.jsx(y5,{additionalButtons:t})}),y5=_e.memo(({additionalButtons:t=[]})=>($4(),N.jsx(d5,{additionalButtons:t}))),bs="generated",g5="pointerdown",v5="pointerup",Rc="pointerleave",w5="pointerout",ji="pointermove",x5="touchstart",Ih="touchend",k5="touchmove",S5="touchcancel",C5="resize",b5="visibilitychange",Ft="tsParticles - Error";class dt{constructor(e,n,i){if(this._updateFromAngle=(r,s)=>{this.x=Math.cos(r)*s,this.y=Math.sin(r)*s},!Yt(e)&&e){this.x=e.x,this.y=e.y;const r=e;this.z=r.z?r.z:0}else if(e!==void 0&&n!==void 0)this.x=e,this.y=n,this.z=i??0;else throw new Error(`${Ft} Vector3d not initialized correctly`)}static get origin(){return dt.create(0,0,0)}get angle(){return Math.atan2(this.y,this.x)}set angle(e){this._updateFromAngle(e,this.length)}get length(){return Math.sqrt(this.getLengthSq())}set length(e){this._updateFromAngle(this.angle,e)}static clone(e){return dt.create(e.x,e.y,e.z)}static create(e,n,i){return new dt(e,n,i)}add(e){return dt.create(this.x+e.x,this.y+e.y,this.z+e.z)}addTo(e){this.x+=e.x,this.y+=e.y,this.z+=e.z}copy(){return dt.clone(this)}distanceTo(e){return this.sub(e).length}distanceToSq(e){return this.sub(e).getLengthSq()}div(e){return dt.create(this.x/e,this.y/e,this.z/e)}divTo(e){this.x/=e,this.y/=e,this.z/=e}getLengthSq(){return this.x**2+this.y**2}mult(e){return dt.create(this.x*e,this.y*e,this.z*e)}multTo(e){this.x*=e,this.y*=e,this.z*=e}normalize(){const e=this.length;e!=0&&this.multTo(1/e)}rotate(e){return dt.create(this.x*Math.cos(e)-this.y*Math.sin(e),this.x*Math.sin(e)+this.y*Math.cos(e),0)}setTo(e){this.x=e.x,this.y=e.y;const n=e;this.z=n.z?n.z:0}sub(e){return dt.create(this.x-e.x,this.y-e.y,this.z-e.z)}subFrom(e){this.x-=e.x,this.y-=e.y,this.z-=e.z}}class Re extends dt{constructor(e,n){super(e,n,0)}static get origin(){return Re.create(0,0)}static clone(e){return Re.create(e.x,e.y)}static create(e,n){return new Re(e,n)}}let _5=Math.random;const Tc=new Map;function eu(t,e){Tc.get(t)||Tc.set(t,e)}function sm(t){return Tc.get(t)||(e=>e)}function ae(){return Jt(_5(),0,1-1e-16)}function Jt(t,e,n){return Math.min(Math.max(t,e),n)}function tu(t,e,n,i){return Math.floor((t*n+e*i)/(n+i))}function ot(t){const e=Kn(t);let n=jf(t);return e===n&&(n=0),ae()*(e-n)+n}function F(t){return Yt(t)?t:ot(t)}function jf(t){return Yt(t)?t:t.min}function Kn(t){return Yt(t)?t:t.max}function G(t,e){if(t===e||e===void 0&&Yt(t))return t;const n=jf(t),i=Kn(t);return e!==void 0?{min:Math.min(n,e),max:Math.max(i,e)}:G(n,i)}function Bi(t){const e=t.random,{enable:n,minimumValue:i}=oi(e)?{enable:e,minimumValue:0}:e;return F(n?G(t.value,i):t.value)}function Ze(t,e){const n=t.x-e.x,i=t.y-e.y;return{dx:n,dy:i,distance:Math.sqrt(n**2+i**2)}}function gt(t,e){return Ze(t,e).distance}function E5(t,e,n){if(Yt(t))return t*Math.PI/180;switch(t){case"top":return-Math.PI/2;case"top-right":return-Math.PI/4;case"right":return 0;case"bottom-right":return Math.PI/4;case"bottom":return Math.PI/2;case"bottom-left":return 3*Math.PI/4;case"left":return Math.PI;case"top-left":return-3*Math.PI/4;case"inside":return Math.atan2(n.y-e.y,n.x-e.x);case"outside":return Math.atan2(e.y-n.y,e.x-n.x);default:return ae()*Math.PI*2}}function P5(t){const e=Re.origin;return e.length=1,e.angle=t,e}function Dh(t,e,n,i){return Re.create(t.x*(n-i)/(n+i)+e.x*2*i/(n+i),t.y)}function O5(t){var e,n;return{x:((e=t.position)==null?void 0:e.x)??ae()*t.size.width,y:((n=t.position)==null?void 0:n.y)??ae()*t.size.height}}function om(t){return t?t.endsWith("%")?parseFloat(t)/100:parseFloat(t):1}const M5={debug:console.debug,error:console.error,info:console.info,log:console.log,verbose:console.log,warning:console.warn};function Ui(){return M5}function Lh(t){const e={bounced:!1},{pSide:n,pOtherSide:i,rectSide:r,rectOtherSide:s,velocity:o,factor:a}=t;return i.mins.max||i.maxs.max||(n.max>=r.min&&n.max<=(r.max+r.min)/2&&o>0||n.min<=r.max&&n.min>(r.max+r.min)/2&&o<0)&&(e.velocity=o*-a,e.bounced=!0),e}function z5(t,e){const n=Te(e,i=>t.matches(i));return vt(n)?n.some(i=>i):n}function Wr(){return typeof window>"u"||!window||typeof window.document>"u"||!window.document}function R5(){return!Wr()&&typeof matchMedia<"u"}function am(t){if(R5())return matchMedia(t)}function T5(t){if(!(Wr()||typeof MutationObserver>"u"))return new MutationObserver(t)}function ge(t,e){return t===e||vt(e)&&e.indexOf(t)>-1}async function I5(t,e){try{await document.fonts.load(`${e??"400"} 36px '${t??"Verdana"}'`)}catch{}}function D5(t){return Math.floor(ae()*t.length)}function fl(t,e,n=!0){return t[e!==void 0&&n?e%t.length:D5(t)]}function Bf(t,e,n,i,r){return L5(mo(t,i??0),e,n,r)}function L5(t,e,n,i){let r=!0;return(!i||i==="bottom")&&(r=t.topn.x),r&&(!i||i==="right")&&(r=t.leftn.y),r}function mo(t,e){return{bottom:t.y+e,left:t.x-e,right:t.x+e,top:t.y-e}}function He(t,...e){for(const n of e){if(n==null)continue;if(!lr(n)){t=n;continue}const i=Array.isArray(n);i&&(lr(t)||!t||!Array.isArray(t))?t=[]:!i&&(lr(t)||!t||Array.isArray(t))&&(t={});for(const r in n){if(r==="__proto__")continue;const s=n,o=s[r],a=t;a[r]=lr(o)&&Array.isArray(o)?o.map(l=>He(a[r],l)):He(a[r],o)}}return t}function Uf(t,e){return!!cm(e,n=>n.enable&&ge(t,n.mode))}function Hf(t,e,n){Te(e,i=>{const r=i.mode;i.enable&&ge(t,r)&&A5(i,n)})}function A5(t,e){const n=t.selectors;Te(n,i=>{e(i,t)})}function lm(t,e){if(!(!e||!t))return cm(t,n=>z5(e,n.selectors))}function Ic(t){return{position:t.getPosition(),radius:t.getRadius(),mass:t.getMass(),velocity:t.velocity,factor:Re.create(Bi(t.options.bounce.horizontal),Bi(t.options.bounce.vertical))}}function um(t,e){const{x:n,y:i}=t.velocity.sub(e.velocity),[r,s]=[t.position,e.position],{dx:o,dy:a}=Ze(s,r);if(n*o+i*a<0)return;const l=-Math.atan2(a,o),u=t.mass,c=e.mass,f=t.velocity.rotate(l),d=e.velocity.rotate(l),h=Dh(f,d,u,c),g=Dh(d,f,u,c),v=h.rotate(-l),k=g.rotate(-l);t.velocity.x=v.x*t.factor.x,t.velocity.y=v.y*t.factor.y,e.velocity.x=k.x*e.factor.x,e.velocity.y=k.y*e.factor.y}function F5(t,e){const n=t.getPosition(),i=t.getRadius(),r=mo(n,i),s=Lh({pSide:{min:r.left,max:r.right},pOtherSide:{min:r.top,max:r.bottom},rectSide:{min:e.left,max:e.right},rectOtherSide:{min:e.top,max:e.bottom},velocity:t.velocity.x,factor:Bi(t.options.bounce.horizontal)});s.bounced&&(s.velocity!==void 0&&(t.velocity.x=s.velocity),s.position!==void 0&&(t.position.x=s.position));const o=Lh({pSide:{min:r.top,max:r.bottom},pOtherSide:{min:r.left,max:r.right},rectSide:{min:e.top,max:e.bottom},rectOtherSide:{min:e.left,max:e.right},velocity:t.velocity.y,factor:Bi(t.options.bounce.vertical)});o.bounced&&(o.velocity!==void 0&&(t.velocity.y=o.velocity),o.position!==void 0&&(t.position.y=o.position))}function Te(t,e){return vt(t)?t.map((n,i)=>e(n,i)):e(t,0)}function bn(t,e,n){return vt(t)?fl(t,e,n):t}function cm(t,e){return vt(t)?t.find((n,i)=>e(n,i)):e(t,0)?t:void 0}function fm(t,e){const n=t.value,i=t.animation,r={delayTime:F(i.delay)*1e3,enable:i.enable,value:F(t.value)*e,max:Kn(n)*e,min:jf(n)*e,loops:0,maxLoops:F(i.count),time:0};if(i.enable){switch(r.decay=1-F(i.decay),i.mode){case"increase":r.status="increasing";break;case"decrease":r.status="decreasing";break;case"random":r.status=ae()>=.5?"increasing":"decreasing";break}const s=i.mode==="auto";switch(i.startValue){case"min":r.value=r.min,s&&(r.status="increasing");break;case"max":r.value=r.max,s&&(r.status="decreasing");break;case"random":default:r.value=ot(r),s&&(r.status=ae()>=.5?"increasing":"decreasing");break}}return r.initialValue=r.value,r}function N5(t,e){if(!(t.mode==="percent")){const{mode:r,...s}=t;return s}return"x"in t?{x:t.x/100*e.width,y:t.y/100*e.height}:{width:t.width/100*e.width,height:t.height/100*e.height}}function dm(t,e){return N5(t,e)}function oi(t){return typeof t=="boolean"}function Kt(t){return typeof t=="string"}function Yt(t){return typeof t=="number"}function hm(t){return typeof t=="function"}function lr(t){return typeof t=="object"&&t!==null}function vt(t){return Array.isArray(t)}const Aa="random",ia="mid",dl=new Map;function Ah(t){dl.set(t.key,t)}function nu(t,e,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?t+(e-t)*6*n:n<1/2?e:n<2/3?t+(e-t)*(2/3-n)*6:t}function $5(t){for(const[,s]of dl)if(t.startsWith(s.stringPrefix))return s.parseString(t);const e=/^#?([a-f\d])([a-f\d])([a-f\d])([a-f\d])?$/i,n=t.replace(e,(s,o,a,l,u)=>o+o+a+a+l+l+(u!==void 0?u+u:"")),i=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})?$/i,r=i.exec(n);return r?{a:r[4]!==void 0?parseInt(r[4],16)/255:1,b:parseInt(r[3],16),g:parseInt(r[2],16),r:parseInt(r[1],16)}:void 0}function Xt(t,e,n=!0){if(!t)return;const i=Kt(t)?{value:t}:t;if(Kt(i.value))return pm(i.value,e,n);if(vt(i.value))return Xt({value:fl(i.value,e,n)});for(const[,r]of dl){const s=r.handleRangeColor(i);if(s)return s}}function pm(t,e,n=!0){if(!t)return;const i=Kt(t)?{value:t}:t;if(Kt(i.value))return i.value===Aa?ym():j5(i.value);if(vt(i.value))return pm({value:fl(i.value,e,n)});for(const[,r]of dl){const s=r.handleColor(i);if(s)return s}}function qs(t,e,n=!0){const i=Xt(t,e,n);return i?mm(i):void 0}function mm(t){const e=t.r/255,n=t.g/255,i=t.b/255,r=Math.max(e,n,i),s=Math.min(e,n,i),o={h:0,l:(r+s)/2,s:0};return r!==s&&(o.s=o.l<.5?(r-s)/(r+s):(r-s)/(2-r-s),o.h=e===r?(n-i)/(r-s):o.h=n===r?2+(i-e)/(r-s):4+(e-n)/(r-s)),o.l*=100,o.s*=100,o.h*=60,o.h<0&&(o.h+=360),o.h>=360&&(o.h-=360),o}function j5(t){return $5(t)}function qr(t){const e={b:0,g:0,r:0},n={h:t.h/360,l:t.l/100,s:t.s/100};if(!n.s)e.r=e.g=e.b=n.l;else{const i=n.l<.5?n.l*(1+n.s):n.l+n.s-n.l*n.s,r=2*n.l-i;e.r=nu(r,i,n.h+1/3),e.g=nu(r,i,n.h),e.b=nu(r,i,n.h-1/3)}return e.r=Math.floor(e.r*255),e.g=Math.floor(e.g*255),e.b=Math.floor(e.b*255),e}function B5(t){const e=qr(t);return{a:t.a,b:e.b,g:e.g,r:e.r}}function ym(t){const e=t??0;return{b:Math.floor(ot(G(e,256))),g:Math.floor(ot(G(e,256))),r:Math.floor(ot(G(e,256)))}}function _n(t,e){return`rgba(${t.r}, ${t.g}, ${t.b}, ${e??1})`}function Qs(t,e){return`hsla(${t.h}, ${t.s}%, ${t.l}%, ${e??1})`}function Gf(t,e,n,i){let r=t,s=e;return r.r===void 0&&(r=qr(t)),s.r===void 0&&(s=qr(e)),{b:tu(r.b,s.b,n,i),g:tu(r.g,s.g,n,i),r:tu(r.r,s.r,n,i)}}function Dc(t,e,n){if(n===Aa)return ym();if(n===ia){const i=t.getFillColor()??t.getStrokeColor(),r=(e==null?void 0:e.getFillColor())??(e==null?void 0:e.getStrokeColor());if(i&&r&&e)return Gf(i,r,t.getRadius(),e.getRadius());{const s=i??r;if(s)return qr(s)}}else return n}function gm(t,e,n){const i=Kt(t)?t:t.value;return i===Aa?n?Xt({value:i}):e?Aa:ia:i===ia?ia:Xt({value:i})}function Fh(t){return t!==void 0?{h:t.h.value,s:t.s.value,l:t.l.value}:void 0}function vm(t,e,n){const i={h:{enable:!1,value:t.h},s:{enable:!1,value:t.s},l:{enable:!1,value:t.l}};return e&&(iu(i.h,e.h,n),iu(i.s,e.s,n),iu(i.l,e.l,n)),i}function iu(t,e,n){t.enable=e.enable,t.enable?(t.velocity=F(e.speed)/100*n,t.decay=1-F(e.decay),t.status="increasing",t.loops=0,t.maxLoops=F(e.count),t.time=0,t.delayTime=F(e.delay)*1e3,e.sync||(t.velocity*=ae(),t.value*=ae()),t.initialValue=t.value):t.velocity=0}function _s(t,e,n){t.beginPath(),t.moveTo(e.x,e.y),t.lineTo(n.x,n.y),t.closePath()}function U5(t,e,n,i){t.beginPath(),t.moveTo(e.x,e.y),t.lineTo(n.x,n.y),t.lineTo(i.x,i.y),t.closePath()}function H5(t,e,n){t.fillStyle=n??"rgba(0,0,0,0)",t.fillRect(0,0,e.width,e.height)}function G5(t,e,n,i){n&&(t.globalAlpha=i,t.drawImage(n,0,0,e.width,e.height),t.globalAlpha=1)}function ru(t,e){t.clearRect(0,0,e.width,e.height)}function W5(t){const{container:e,context:n,particle:i,delta:r,colorStyles:s,backgroundMask:o,composite:a,radius:l,opacity:u,shadow:c,transform:f}=t,d=i.getPosition(),h=i.rotation+(i.pathRotation?i.velocity.angle:0),g={sin:Math.sin(h),cos:Math.cos(h)},v={a:g.cos*(f.a??1),b:g.sin*(f.b??1),c:-g.sin*(f.c??1),d:g.cos*(f.d??1)};n.setTransform(v.a,v.b,v.c,v.d,d.x,d.y),n.beginPath(),o&&(n.globalCompositeOperation=a);const k=i.shadowColor;c.enable&&k&&(n.shadowBlur=c.blur,n.shadowColor=_n(k),n.shadowOffsetX=c.offset.x,n.shadowOffsetY=c.offset.y),s.fill&&(n.fillStyle=s.fill);const p=i.strokeWidth??0;n.lineWidth=p,s.stroke&&(n.strokeStyle=s.stroke),q5(e,n,i,l,u,r),p>0&&n.stroke(),i.close&&n.closePath(),i.fill&&n.fill(),Q5(e,n,i,l,u,r),n.globalCompositeOperation="source-over",n.setTransform(1,0,0,1,0,0)}function q5(t,e,n,i,r,s){if(!n.shape)return;const o=t.drawers.get(n.shape);o&&o.draw(e,n,i,r,s,t.retina.pixelRatio)}function Q5(t,e,n,i,r,s){if(!n.shape)return;const o=t.drawers.get(n.shape);!o||!o.afterEffect||o.afterEffect(e,n,i,r,s,t.retina.pixelRatio)}function V5(t,e,n){e.draw&&e.draw(t,n)}function K5(t,e,n,i){e.drawParticle&&e.drawParticle(t,n,i)}function Y5(t,e,n){return{h:t.h,s:t.s,l:t.l+(e==="darken"?-1:1)*n}}function X5(t,e,n){const i=e[n];i!==void 0&&(t[n]=(t[n]??1)*i)}class Z5{constructor(e){this.container=e,this._applyPostDrawUpdaters=n=>{for(const i of this._postDrawUpdaters)i.afterDraw&&i.afterDraw(n)},this._applyPreDrawUpdaters=(n,i,r,s,o,a)=>{for(const l of this._preDrawUpdaters){if(l.getColorStyles){const{fill:u,stroke:c}=l.getColorStyles(i,n,r,s);u&&(o.fill=u),c&&(o.stroke=c)}if(l.getTransformValues){const u=l.getTransformValues(i);for(const c in u)X5(a,u,c)}l.beforeDraw&&l.beforeDraw(i)}},this._applyResizePlugins=()=>{for(const n of this._resizePlugins)n.resize&&n.resize()},this._getPluginParticleColors=n=>{let i,r;for(const s of this._colorPlugins)if(!i&&s.particleFillColor&&(i=qs(s.particleFillColor(n))),!r&&s.particleStrokeColor&&(r=qs(s.particleStrokeColor(n))),i&&r)break;return[i,r]},this._initCover=()=>{const n=this.container.actualOptions,i=n.backgroundMask.cover,r=i.color,s=Xt(r);if(s){const o={...s,a:i.opacity};this._coverColorStyle=_n(o,o.a)}},this._initStyle=()=>{const n=this.element,i=this.container.actualOptions;if(n){this._fullScreen?(this._originalStyle=He({},n.style),this._setFullScreenStyle()):this._resetOriginalStyle();for(const r in i.style){if(!r||!i.style)continue;const s=i.style[r];s&&n.style.setProperty(r,s,"important")}}},this._initTrail=async()=>{const n=this.container.actualOptions,i=n.particles.move.trail,r=i.fill;if(i.enable)if(r.color){const s=Xt(r.color);if(!s)return;const o=n.particles.move.trail;this._trailFill={color:{...s},opacity:1/o.length}}else await new Promise((s,o)=>{if(!r.image)return;const a=document.createElement("img");a.addEventListener("load",()=>{this._trailFill={image:a,opacity:1/i.length},s()}),a.addEventListener("error",l=>{o(l.error)}),a.src=r.image})},this._paintBase=n=>{this.draw(i=>H5(i,this.size,n))},this._paintImage=(n,i)=>{this.draw(r=>G5(r,this.size,n,i))},this._repairStyle=()=>{const n=this.element;n&&(this._safeMutationObserver(i=>i.disconnect()),this._initStyle(),this.initBackground(),this._safeMutationObserver(i=>i.observe(n,{attributes:!0})))},this._resetOriginalStyle=()=>{const n=this.element,i=this._originalStyle;if(!(n&&i))return;const r=n.style;r.position=i.position,r.zIndex=i.zIndex,r.top=i.top,r.left=i.left,r.width=i.width,r.height=i.height},this._safeMutationObserver=n=>{this._mutationObserver&&n(this._mutationObserver)},this._setFullScreenStyle=()=>{const n=this.element;if(!n)return;const i="important",r=n.style;r.setProperty("position","fixed",i),r.setProperty("z-index",this.container.actualOptions.fullScreen.zIndex.toString(10),i),r.setProperty("top","0",i),r.setProperty("left","0",i),r.setProperty("width","100%",i),r.setProperty("height","100%",i)},this.size={height:0,width:0},this._context=null,this._generated=!1,this._preDrawUpdaters=[],this._postDrawUpdaters=[],this._resizePlugins=[],this._colorPlugins=[]}get _fullScreen(){return this.container.actualOptions.fullScreen.enable}clear(){const e=this.container.actualOptions,n=e.particles.move.trail,i=this._trailFill;e.backgroundMask.enable?this.paint():n.enable&&n.length>0&&i?i.color?this._paintBase(_n(i.color,i.opacity)):i.image&&this._paintImage(i.image,i.opacity):this.draw(r=>{ru(r,this.size)})}destroy(){if(this.stop(),this._generated){const e=this.element;e&&e.remove()}else this._resetOriginalStyle();this._preDrawUpdaters=[],this._postDrawUpdaters=[],this._resizePlugins=[],this._colorPlugins=[]}draw(e){const n=this._context;if(n)return e(n)}drawParticle(e,n){if(e.spawning||e.destroyed)return;const i=e.getRadius();if(i<=0)return;const r=e.getFillColor(),s=e.getStrokeColor()??r;let[o,a]=this._getPluginParticleColors(e);o||(o=r),a||(a=s),!(!o&&!a)&&this.draw(l=>{var y;const u=this.container,c=u.actualOptions,f=e.options.zIndex,d=(1-e.zIndexFactor)**f.opacityRate,h=e.bubble.opacity??((y=e.opacity)==null?void 0:y.value)??1,g=e.strokeOpacity??h,v=h*d,k=g*d,p={},m={fill:o?Qs(o,v):void 0};m.stroke=a?Qs(a,k):m.fill,this._applyPreDrawUpdaters(l,e,i,v,m,p),W5({container:u,context:l,particle:e,delta:n,colorStyles:m,backgroundMask:c.backgroundMask.enable,composite:c.backgroundMask.composite,radius:i*(1-e.zIndexFactor)**f.sizeRate,opacity:v,shadow:e.options.shadow,transform:p}),this._applyPostDrawUpdaters(e)})}drawParticlePlugin(e,n,i){this.draw(r=>K5(r,e,n,i))}drawPlugin(e,n){this.draw(i=>V5(i,e,n))}async init(){this._safeMutationObserver(e=>e.disconnect()),this._mutationObserver=T5(e=>{for(const n of e)n.type==="attributes"&&n.attributeName==="style"&&this._repairStyle()}),this.resize(),this._initStyle(),this._initCover();try{await this._initTrail()}catch(e){Ui().error(e)}this.initBackground(),this._safeMutationObserver(e=>{this.element&&e.observe(this.element,{attributes:!0})}),this.initUpdaters(),this.initPlugins(),this.paint()}initBackground(){const e=this.container.actualOptions,n=e.background,i=this.element;if(!i)return;const r=i.style;if(r){if(n.color){const s=Xt(n.color);r.backgroundColor=s?_n(s,n.opacity):""}else r.backgroundColor="";r.backgroundImage=n.image||"",r.backgroundPosition=n.position||"",r.backgroundRepeat=n.repeat||"",r.backgroundSize=n.size||""}}initPlugins(){this._resizePlugins=[];for(const[,e]of this.container.plugins)e.resize&&this._resizePlugins.push(e),(e.particleFillColor||e.particleStrokeColor)&&this._colorPlugins.push(e)}initUpdaters(){this._preDrawUpdaters=[],this._postDrawUpdaters=[];for(const e of this.container.particles.updaters)e.afterDraw&&this._postDrawUpdaters.push(e),(e.getColorStyles||e.getTransformValues||e.beforeDraw)&&this._preDrawUpdaters.push(e)}loadCanvas(e){this._generated&&this.element&&this.element.remove(),this._generated=e.dataset&&bs in e.dataset?e.dataset[bs]==="true":this._generated,this.element=e,this.element.ariaHidden="true",this._originalStyle=He({},this.element.style),this.size.height=e.offsetHeight,this.size.width=e.offsetWidth,this._context=this.element.getContext("2d"),this._safeMutationObserver(n=>{this.element&&n.observe(this.element,{attributes:!0})}),this.container.retina.init(),this.initBackground()}paint(){const e=this.container.actualOptions;this.draw(n=>{e.backgroundMask.enable&&e.backgroundMask.cover?(ru(n,this.size),this._paintBase(this._coverColorStyle)):this._paintBase()})}resize(){if(!this.element)return!1;const e=this.container,n=e.retina.pixelRatio,i=e.canvas.size,r={width:this.element.offsetWidth*n,height:this.element.offsetHeight*n};if(r.height===i.height&&r.width===i.width&&r.height===this.element.height&&r.width===this.element.width)return!1;const s={...i};return this.element.width=i.width=this.element.offsetWidth*n,this.element.height=i.height=this.element.offsetHeight*n,this.container.started&&(this.resizeFactor={width:i.width/s.width,height:i.height/s.height}),!0}stop(){this._safeMutationObserver(e=>e.disconnect()),this._mutationObserver=void 0,this.draw(e=>ru(e,this.size))}async windowResize(){if(!this.element||!this.resize())return;const e=this.container,n=e.updateActualOptions();e.particles.setDensity(),this._applyResizePlugins(),n&&await e.refresh()}}function bt(t,e,n,i,r){if(i){let s={passive:!0};oi(r)?s.capture=r:r!==void 0&&(s=r),t.addEventListener(e,n,s)}else{const s=r;t.removeEventListener(e,n,s)}}class J5{constructor(e){this.container=e,this._doMouseTouchClick=n=>{const i=this.container,r=i.actualOptions;if(this._canPush){const s=i.interactivity.mouse,o=s.position;if(!o)return;s.clickPosition={...o},s.clickTime=new Date().getTime();const a=r.interactivity.events.onClick;Te(a.mode,l=>this.container.handleClickMode(l))}n.type==="touchend"&&setTimeout(()=>this._mouseTouchFinish(),500)},this._handleThemeChange=n=>{const i=n,r=this.container,s=r.options,o=s.defaultThemes,a=i.matches?o.dark:o.light,l=s.themes.find(u=>u.name===a);l&&l.default.auto&&r.loadTheme(a)},this._handleVisibilityChange=()=>{const n=this.container,i=n.actualOptions;this._mouseTouchFinish(),i.pauseOnBlur&&(document&&document.hidden?(n.pageHidden=!0,n.pause()):(n.pageHidden=!1,n.getAnimationStatus()?n.play(!0):n.draw(!0)))},this._handleWindowResize=async()=>{this._resizeTimeout&&(clearTimeout(this._resizeTimeout),delete this._resizeTimeout),this._resizeTimeout=setTimeout(async()=>{const n=this.container.canvas;n&&await n.windowResize()},this.container.actualOptions.interactivity.events.resize.delay*1e3)},this._manageInteractivityListeners=(n,i)=>{const r=this._handlers,s=this.container,o=s.actualOptions,a=s.interactivity.element;if(!a)return;const l=a,u=s.canvas.element;u&&(u.style.pointerEvents=l===u?"initial":"none"),(o.interactivity.events.onHover.enable||o.interactivity.events.onClick.enable)&&(bt(a,ji,r.mouseMove,i),bt(a,x5,r.touchStart,i),bt(a,k5,r.touchMove,i),o.interactivity.events.onClick.enable?(bt(a,Ih,r.touchEndClick,i),bt(a,v5,r.mouseUp,i),bt(a,g5,r.mouseDown,i)):bt(a,Ih,r.touchEnd,i),bt(a,n,r.mouseLeave,i),bt(a,S5,r.touchCancel,i))},this._manageListeners=n=>{const i=this._handlers,r=this.container,s=r.actualOptions,o=s.interactivity.detectsOn,a=r.canvas.element;let l=Rc;o==="window"?(r.interactivity.element=window,l=w5):o==="parent"&&a?r.interactivity.element=a.parentElement??a.parentNode:r.interactivity.element=a,this._manageMediaMatch(n),this._manageResize(n),this._manageInteractivityListeners(l,n),document&&bt(document,b5,i.visibilityChange,n,!1)},this._manageMediaMatch=n=>{const i=this._handlers,r=am("(prefers-color-scheme: dark)");if(r){if(r.addEventListener!==void 0){bt(r,"change",i.themeChange,n);return}r.addListener!==void 0&&(n?r.addListener(i.oldThemeChange):r.removeListener(i.oldThemeChange))}},this._manageResize=n=>{const i=this._handlers,r=this.container;if(!r.actualOptions.interactivity.events.resize)return;if(typeof ResizeObserver>"u"){bt(window,C5,i.resize,n);return}const o=r.canvas.element;this._resizeObserver&&!n?(o&&this._resizeObserver.unobserve(o),this._resizeObserver.disconnect(),delete this._resizeObserver):!this._resizeObserver&&n&&o&&(this._resizeObserver=new ResizeObserver(async a=>{a.find(u=>u.target===o)&&await this._handleWindowResize()}),this._resizeObserver.observe(o))},this._mouseDown=()=>{const{interactivity:n}=this.container;if(!n)return;const{mouse:i}=n;i.clicking=!0,i.downPosition=i.position},this._mouseTouchClick=n=>{const i=this.container,r=i.actualOptions,{mouse:s}=i.interactivity;s.inside=!0;let o=!1;const a=s.position;if(!(!a||!r.interactivity.events.onClick.enable)){for(const[,l]of i.plugins)if(l.clickPositionValid&&(o=l.clickPositionValid(a),o))break;o||this._doMouseTouchClick(n),s.clicking=!1}},this._mouseTouchFinish=()=>{const n=this.container.interactivity;if(!n)return;const i=n.mouse;delete i.position,delete i.clickPosition,delete i.downPosition,n.status=Rc,i.inside=!1,i.clicking=!1},this._mouseTouchMove=n=>{const i=this.container,r=i.actualOptions,s=i.interactivity,o=i.canvas.element;if(!s||!s.element)return;s.mouse.inside=!0;let a;if(n.type.startsWith("pointer")){this._canPush=!0;const u=n;if(s.element===window){if(o){const c=o.getBoundingClientRect();a={x:u.clientX-c.left,y:u.clientY-c.top}}}else if(r.interactivity.detectsOn==="parent"){const c=u.target,f=u.currentTarget;if(c&&f&&o){const d=c.getBoundingClientRect(),h=f.getBoundingClientRect(),g=o.getBoundingClientRect();a={x:u.offsetX+2*d.left-(h.left+g.left),y:u.offsetY+2*d.top-(h.top+g.top)}}else a={x:u.offsetX??u.clientX,y:u.offsetY??u.clientY}}else u.target===o&&(a={x:u.offsetX??u.clientX,y:u.offsetY??u.clientY})}else if(this._canPush=n.type!=="touchmove",o){const u=n,c=u.touches[u.touches.length-1],f=o.getBoundingClientRect();a={x:c.clientX-(f.left??0),y:c.clientY-(f.top??0)}}const l=i.retina.pixelRatio;a&&(a.x*=l,a.y*=l),s.mouse.position=a,s.status=ji},this._touchEnd=n=>{const i=n,r=Array.from(i.changedTouches);for(const s of r)this._touches.delete(s.identifier);this._mouseTouchFinish()},this._touchEndClick=n=>{const i=n,r=Array.from(i.changedTouches);for(const s of r)this._touches.delete(s.identifier);this._mouseTouchClick(n)},this._touchStart=n=>{const i=n,r=Array.from(i.changedTouches);for(const s of r)this._touches.set(s.identifier,performance.now());this._mouseTouchMove(n)},this._canPush=!0,this._touches=new Map,this._handlers={mouseDown:()=>this._mouseDown(),mouseLeave:()=>this._mouseTouchFinish(),mouseMove:n=>this._mouseTouchMove(n),mouseUp:n=>this._mouseTouchClick(n),touchStart:n=>this._touchStart(n),touchMove:n=>this._mouseTouchMove(n),touchEnd:n=>this._touchEnd(n),touchCancel:n=>this._touchEnd(n),touchEndClick:n=>this._touchEndClick(n),visibilityChange:()=>this._handleVisibilityChange(),themeChange:n=>this._handleThemeChange(n),oldThemeChange:n=>this._handleThemeChange(n),resize:()=>{this._handleWindowResize()}}}addListeners(){this._manageListeners(!0)}removeListeners(){this._manageListeners(!1)}}class Ne{constructor(){this.value=""}static create(e,n){const i=new Ne;return i.load(e),n!==void 0&&(Kt(n)||vt(n)?i.load({value:n}):i.load(n)),i}load(e){(e==null?void 0:e.value)!==void 0&&(this.value=e.value)}}class ew{constructor(){this.color=new Ne,this.color.value="",this.image="",this.position="",this.repeat="",this.size="",this.opacity=1}load(e){e&&(e.color!==void 0&&(this.color=Ne.create(this.color,e.color)),e.image!==void 0&&(this.image=e.image),e.position!==void 0&&(this.position=e.position),e.repeat!==void 0&&(this.repeat=e.repeat),e.size!==void 0&&(this.size=e.size),e.opacity!==void 0&&(this.opacity=e.opacity))}}class tw{constructor(){this.color=new Ne,this.color.value="#fff",this.opacity=1}load(e){e&&(e.color!==void 0&&(this.color=Ne.create(this.color,e.color)),e.opacity!==void 0&&(this.opacity=e.opacity))}}class nw{constructor(){this.composite="destination-out",this.cover=new tw,this.enable=!1}load(e){if(e){if(e.composite!==void 0&&(this.composite=e.composite),e.cover!==void 0){const n=e.cover,i=Kt(e.cover)?{color:e.cover}:e.cover;this.cover.load(n.color!==void 0?n:{color:i})}e.enable!==void 0&&(this.enable=e.enable)}}}class iw{constructor(){this.enable=!0,this.zIndex=0}load(e){e&&(e.enable!==void 0&&(this.enable=e.enable),e.zIndex!==void 0&&(this.zIndex=e.zIndex))}}class rw{constructor(){this.enable=!1,this.mode=[]}load(e){e&&(e.enable!==void 0&&(this.enable=e.enable),e.mode!==void 0&&(this.mode=e.mode))}}class Nh{constructor(){this.selectors=[],this.enable=!1,this.mode=[],this.type="circle"}get el(){return this.elementId}set el(e){this.elementId=e}get elementId(){return this.ids}set elementId(e){this.ids=e}get ids(){return Te(this.selectors,e=>e.replace("#",""))}set ids(e){this.selectors=Te(e,n=>`#${n}`)}load(e){if(!e)return;const n=e.ids??e.elementId??e.el;n!==void 0&&(this.ids=n),e.selectors!==void 0&&(this.selectors=e.selectors),e.enable!==void 0&&(this.enable=e.enable),e.mode!==void 0&&(this.mode=e.mode),e.type!==void 0&&(this.type=e.type)}}class sw{constructor(){this.enable=!1,this.force=2,this.smooth=10}load(e){e&&(e.enable!==void 0&&(this.enable=e.enable),e.force!==void 0&&(this.force=e.force),e.smooth!==void 0&&(this.smooth=e.smooth))}}class ow{constructor(){this.enable=!1,this.mode=[],this.parallax=new sw}load(e){e&&(e.enable!==void 0&&(this.enable=e.enable),e.mode!==void 0&&(this.mode=e.mode),this.parallax.load(e.parallax))}}class aw{constructor(){this.delay=.5,this.enable=!0}load(e){e!==void 0&&(e.delay!==void 0&&(this.delay=e.delay),e.enable!==void 0&&(this.enable=e.enable))}}class lw{constructor(){this.onClick=new rw,this.onDiv=new Nh,this.onHover=new ow,this.resize=new aw}get onclick(){return this.onClick}set onclick(e){this.onClick=e}get ondiv(){return this.onDiv}set ondiv(e){this.onDiv=e}get onhover(){return this.onHover}set onhover(e){this.onHover=e}load(e){if(!e)return;this.onClick.load(e.onClick??e.onclick);const n=e.onDiv??e.ondiv;n!==void 0&&(this.onDiv=Te(n,i=>{const r=new Nh;return r.load(i),r})),this.onHover.load(e.onHover??e.onhover),oi(e.resize)?this.resize.enable=e.resize:this.resize.load(e.resize)}}class uw{constructor(e,n){this._engine=e,this._container=n}load(e){if(!e||!this._container)return;const n=this._engine.plugins.interactors.get(this._container);if(n)for(const i of n)i.loadModeOptions&&i.loadModeOptions(this,e)}}class wm{constructor(e,n){this.detectsOn="window",this.events=new lw,this.modes=new uw(e,n)}get detect_on(){return this.detectsOn}set detect_on(e){this.detectsOn=e}load(e){if(!e)return;const n=e.detectsOn??e.detect_on;n!==void 0&&(this.detectsOn=n),this.events.load(e.events),this.modes.load(e.modes)}}class cw{load(e){e&&(e.position&&(this.position={x:e.position.x??50,y:e.position.y??50,mode:e.position.mode??"percent"}),e.options&&(this.options=He({},e.options)))}}class fw{constructor(){this.maxWidth=1/0,this.options={},this.mode="canvas"}load(e){e&&(e.maxWidth!==void 0&&(this.maxWidth=e.maxWidth),e.mode!==void 0&&(e.mode==="screen"?this.mode="screen":this.mode="canvas"),e.options!==void 0&&(this.options=He({},e.options)))}}class dw{constructor(){this.auto=!1,this.mode="any",this.value=!1}load(e){e&&(e.auto!==void 0&&(this.auto=e.auto),e.mode!==void 0&&(this.mode=e.mode),e.value!==void 0&&(this.value=e.value))}}class hw{constructor(){this.name="",this.default=new dw}load(e){e&&(e.name!==void 0&&(this.name=e.name),this.default.load(e.default),e.options!==void 0&&(this.options=He({},e.options)))}}class su{constructor(){this.count=0,this.enable=!1,this.offset=0,this.speed=1,this.delay=0,this.decay=0,this.sync=!0}load(e){e&&(e.count!==void 0&&(this.count=G(e.count)),e.enable!==void 0&&(this.enable=e.enable),e.offset!==void 0&&(this.offset=G(e.offset)),e.speed!==void 0&&(this.speed=G(e.speed)),e.decay!==void 0&&(this.decay=G(e.decay)),e.delay!==void 0&&(this.delay=G(e.delay)),e.sync!==void 0&&(this.sync=e.sync))}}class pw{constructor(){this.h=new su,this.s=new su,this.l=new su}load(e){e&&(this.h.load(e.h),this.s.load(e.s),this.l.load(e.l))}}class Vs extends Ne{constructor(){super(),this.animation=new pw}static create(e,n){const i=new Vs;return i.load(e),n!==void 0&&(Kt(n)||vt(n)?i.load({value:n}):i.load(n)),i}load(e){if(super.load(e),!e)return;const n=e.animation;n!==void 0&&(n.enable!==void 0?this.animation.h.load(n):this.animation.load(e.animation))}}class mw{constructor(){this.speed=2}load(e){e&&e.speed!==void 0&&(this.speed=e.speed)}}class yw{constructor(){this.enable=!0,this.retries=0}load(e){e&&(e.enable!==void 0&&(this.enable=e.enable),e.retries!==void 0&&(this.retries=e.retries))}}class gw{constructor(){this.count=0,this.enable=!1,this.speed=1,this.decay=0,this.delay=0,this.sync=!1}load(e){e&&(e.count!==void 0&&(this.count=G(e.count)),e.enable!==void 0&&(this.enable=e.enable),e.speed!==void 0&&(this.speed=G(e.speed)),e.decay!==void 0&&(this.decay=G(e.decay)),e.delay!==void 0&&(this.delay=G(e.delay)),e.sync!==void 0&&(this.sync=e.sync))}}class xm extends gw{constructor(){super(),this.mode="auto",this.startValue="random"}load(e){super.load(e),e&&(e.minimumValue!==void 0&&(this.minimumValue=e.minimumValue),e.mode!==void 0&&(this.mode=e.mode),e.startValue!==void 0&&(this.startValue=e.startValue))}}class vw{constructor(){this.enable=!1,this.minimumValue=0}load(e){e&&(e.enable!==void 0&&(this.enable=e.enable),e.minimumValue!==void 0&&(this.minimumValue=e.minimumValue))}}class hi{constructor(){this.random=new vw,this.value=0}load(e){e&&(oi(e.random)?this.random.enable=e.random:this.random.load(e.random),e.value!==void 0&&(this.value=G(e.value,this.random.enable?this.random.minimumValue:void 0)))}}class $h extends hi{constructor(){super(),this.random.minimumValue=.1,this.value=1}}class km{constructor(){this.horizontal=new $h,this.vertical=new $h}load(e){e&&(this.horizontal.load(e.horizontal),this.vertical.load(e.vertical))}}class ww{constructor(){this.absorb=new mw,this.bounce=new km,this.enable=!1,this.maxSpeed=50,this.mode="bounce",this.overlap=new yw}load(e){e&&(this.absorb.load(e.absorb),this.bounce.load(e.bounce),e.enable!==void 0&&(this.enable=e.enable),e.maxSpeed!==void 0&&(this.maxSpeed=G(e.maxSpeed)),e.mode!==void 0&&(this.mode=e.mode),this.overlap.load(e.overlap))}}class xw{constructor(){this.offset=0,this.value=90}load(e){e&&(e.offset!==void 0&&(this.offset=G(e.offset)),e.value!==void 0&&(this.value=G(e.value)))}}class kw{constructor(){this.distance=200,this.enable=!1,this.rotate={x:3e3,y:3e3}}get rotateX(){return this.rotate.x}set rotateX(e){this.rotate.x=e}get rotateY(){return this.rotate.y}set rotateY(e){this.rotate.y=e}load(e){var r,s;if(!e)return;e.distance!==void 0&&(this.distance=G(e.distance)),e.enable!==void 0&&(this.enable=e.enable);const n=((r=e.rotate)==null?void 0:r.x)??e.rotateX;n!==void 0&&(this.rotate.x=n);const i=((s=e.rotate)==null?void 0:s.y)??e.rotateY;i!==void 0&&(this.rotate.y=i)}}class Sw{constructor(){this.x=50,this.y=50,this.mode="percent",this.radius=0}load(e){e&&(e.x!==void 0&&(this.x=e.x),e.y!==void 0&&(this.y=e.y),e.mode!==void 0&&(this.mode=e.mode),e.radius!==void 0&&(this.radius=e.radius))}}class Cw{constructor(){this.acceleration=9.81,this.enable=!1,this.inverse=!1,this.maxSpeed=50}load(e){e&&(e.acceleration!==void 0&&(this.acceleration=G(e.acceleration)),e.enable!==void 0&&(this.enable=e.enable),e.inverse!==void 0&&(this.inverse=e.inverse),e.maxSpeed!==void 0&&(this.maxSpeed=G(e.maxSpeed)))}}class bw{constructor(){this.clamp=!0,this.delay=new hi,this.enable=!1,this.options={}}load(e){e&&(e.clamp!==void 0&&(this.clamp=e.clamp),this.delay.load(e.delay),e.enable!==void 0&&(this.enable=e.enable),this.generator=e.generator,e.options&&(this.options=He(this.options,e.options)))}}class _w{load(e){e&&(e.color!==void 0&&(this.color=Ne.create(this.color,e.color)),e.image!==void 0&&(this.image=e.image))}}class Ew{constructor(){this.enable=!1,this.length=10,this.fill=new _w}get fillColor(){return this.fill.color}set fillColor(e){this.fill.load({color:e})}load(e){e&&(e.enable!==void 0&&(this.enable=e.enable),(e.fill!==void 0||e.fillColor!==void 0)&&this.fill.load(e.fill||{color:e.fillColor}),e.length!==void 0&&(this.length=e.length))}}class Pw{constructor(){this.default="out"}load(e){e&&(e.default!==void 0&&(this.default=e.default),this.bottom=e.bottom??e.default,this.left=e.left??e.default,this.right=e.right??e.default,this.top=e.top??e.default)}}class Ow{constructor(){this.acceleration=0,this.enable=!1}load(e){e&&(e.acceleration!==void 0&&(this.acceleration=G(e.acceleration)),e.enable!==void 0&&(this.enable=e.enable),e.position&&(this.position=He({},e.position)))}}class Mw{constructor(){this.angle=new xw,this.attract=new kw,this.center=new Sw,this.decay=0,this.distance={},this.direction="none",this.drift=0,this.enable=!1,this.gravity=new Cw,this.path=new bw,this.outModes=new Pw,this.random=!1,this.size=!1,this.speed=2,this.spin=new Ow,this.straight=!1,this.trail=new Ew,this.vibrate=!1,this.warp=!1}get bounce(){return this.collisions}set bounce(e){this.collisions=e}get collisions(){return!1}set collisions(e){}get noise(){return this.path}set noise(e){this.path=e}get outMode(){return this.outModes.default}set outMode(e){this.outModes.default=e}get out_mode(){return this.outMode}set out_mode(e){this.outMode=e}load(e){if(!e)return;this.angle.load(Yt(e.angle)?{value:e.angle}:e.angle),this.attract.load(e.attract),this.center.load(e.center),e.decay!==void 0&&(this.decay=G(e.decay)),e.direction!==void 0&&(this.direction=e.direction),e.distance!==void 0&&(this.distance=Yt(e.distance)?{horizontal:e.distance,vertical:e.distance}:{...e.distance}),e.drift!==void 0&&(this.drift=G(e.drift)),e.enable!==void 0&&(this.enable=e.enable),this.gravity.load(e.gravity);const n=e.outModes??e.outMode??e.out_mode;n!==void 0&&(lr(n)?this.outModes.load(n):this.outModes.load({default:n})),this.path.load(e.path??e.noise),e.random!==void 0&&(this.random=e.random),e.size!==void 0&&(this.size=e.size),e.speed!==void 0&&(this.speed=G(e.speed)),this.spin.load(e.spin),e.straight!==void 0&&(this.straight=e.straight),this.trail.load(e.trail),e.vibrate!==void 0&&(this.vibrate=e.vibrate),e.warp!==void 0&&(this.warp=e.warp)}}class zw extends xm{constructor(){super(),this.destroy="none",this.speed=2}get opacity_min(){return this.minimumValue}set opacity_min(e){this.minimumValue=e}load(e){(e==null?void 0:e.opacity_min)!==void 0&&e.minimumValue===void 0&&(e.minimumValue=e.opacity_min),super.load(e),e&&e.destroy!==void 0&&(this.destroy=e.destroy)}}class Rw extends hi{constructor(){super(),this.animation=new zw,this.random.minimumValue=.1,this.value=1}get anim(){return this.animation}set anim(e){this.animation=e}load(e){if(!e)return;super.load(e);const n=e.animation??e.anim;n!==void 0&&(this.animation.load(n),this.value=G(this.value,this.animation.enable?this.animation.minimumValue:void 0))}}class Tw{constructor(){this.enable=!1,this.width=1920,this.height=1080}get area(){return this.width}set area(e){this.width=e}get factor(){return this.height}set factor(e){this.height=e}get value_area(){return this.area}set value_area(e){this.area=e}load(e){if(!e)return;e.enable!==void 0&&(this.enable=e.enable);const n=e.width??e.area??e.value_area;n!==void 0&&(this.width=n);const i=e.height??e.factor;i!==void 0&&(this.height=i)}}class Iw{constructor(){this.density=new Tw,this.limit=0,this.value=0}get max(){return this.limit}set max(e){this.limit=e}load(e){if(!e)return;this.density.load(e.density);const n=e.limit??e.max;n!==void 0&&(this.limit=n),e.value!==void 0&&(this.value=e.value)}}class Dw{constructor(){this.blur=0,this.color=new Ne,this.enable=!1,this.offset={x:0,y:0},this.color.value="#000"}load(e){e&&(e.blur!==void 0&&(this.blur=e.blur),this.color=Ne.create(this.color,e.color),e.enable!==void 0&&(this.enable=e.enable),e.offset!==void 0&&(e.offset.x!==void 0&&(this.offset.x=e.offset.x),e.offset.y!==void 0&&(this.offset.y=e.offset.y)))}}const ou="character",au="char",lu="image",uu="images",cu="polygon",fu="star";class Lw{constructor(){this.loadShape=(e,n,i,r)=>{if(!e)return;const s=vt(e),o=s?[]:{},a=s!==vt(this.options[n]),l=s!==vt(this.options[i]);a&&(this.options[n]=o),l&&r&&(this.options[i]=o),this.options[n]=He(this.options[n]??o,e),(!this.options[i]||r)&&(this.options[i]=He(this.options[i]??o,e))},this.close=!0,this.fill=!0,this.options={},this.type="circle"}get character(){return this.options[ou]??this.options[au]}set character(e){this.options[au]=this.options[ou]=e}get custom(){return this.options}set custom(e){this.options=e}get image(){return this.options[lu]??this.options[uu]}set image(e){this.options[uu]=this.options[lu]=e}get images(){return this.image}set images(e){this.image=e}get polygon(){return this.options[cu]??this.options[fu]}set polygon(e){this.options[fu]=this.options[cu]=e}get stroke(){return[]}set stroke(e){}load(e){if(!e)return;const n=e.options??e.custom;if(n!==void 0)for(const i in n){const r=n[i];r&&(this.options[i]=He(this.options[i]??{},r))}this.loadShape(e.character,ou,au,!0),this.loadShape(e.polygon,cu,fu,!1),this.loadShape(e.image??e.images,lu,uu,!0),e.close!==void 0&&(this.close=e.close),e.fill!==void 0&&(this.fill=e.fill),e.type!==void 0&&(this.type=e.type)}}class Aw extends xm{constructor(){super(),this.destroy="none",this.speed=5}get size_min(){return this.minimumValue}set size_min(e){this.minimumValue=e}load(e){(e==null?void 0:e.size_min)!==void 0&&e.minimumValue===void 0&&(e.minimumValue=e.size_min),super.load(e),e&&e.destroy!==void 0&&(this.destroy=e.destroy)}}class Fw extends hi{constructor(){super(),this.animation=new Aw,this.random.minimumValue=1,this.value=3}get anim(){return this.animation}set anim(e){this.animation=e}load(e){if(super.load(e),!e)return;const n=e.animation??e.anim;n!==void 0&&(this.animation.load(n),this.value=G(this.value,this.animation.enable?this.animation.minimumValue:void 0))}}class jh{constructor(){this.width=0}load(e){e&&(e.color!==void 0&&(this.color=Vs.create(this.color,e.color)),e.width!==void 0&&(this.width=G(e.width)),e.opacity!==void 0&&(this.opacity=G(e.opacity)))}}class Nw extends hi{constructor(){super(),this.opacityRate=1,this.sizeRate=1,this.velocityRate=1}load(e){super.load(e),e&&(e.opacityRate!==void 0&&(this.opacityRate=e.opacityRate),e.sizeRate!==void 0&&(this.sizeRate=e.sizeRate),e.velocityRate!==void 0&&(this.velocityRate=e.velocityRate))}}class $w{constructor(e,n){this._engine=e,this._container=n,this.bounce=new km,this.collisions=new ww,this.color=new Vs,this.color.value="#fff",this.groups={},this.move=new Mw,this.number=new Iw,this.opacity=new Rw,this.reduceDuplicates=!1,this.shadow=new Dw,this.shape=new Lw,this.size=new Fw,this.stroke=new jh,this.zIndex=new Nw}load(e){var r,s,o;if(!e)return;if(this.bounce.load(e.bounce),this.color.load(Vs.create(this.color,e.color)),e.groups!==void 0)for(const a in e.groups){const l=e.groups[a];l!==void 0&&(this.groups[a]=He(this.groups[a]??{},l))}this.move.load(e.move),this.number.load(e.number),this.opacity.load(e.opacity),e.reduceDuplicates!==void 0&&(this.reduceDuplicates=e.reduceDuplicates),this.shape.load(e.shape),this.size.load(e.size),this.shadow.load(e.shadow),this.zIndex.load(e.zIndex);const n=((r=e.move)==null?void 0:r.collisions)??((s=e.move)==null?void 0:s.bounce);n!==void 0&&(this.collisions.enable=n),this.collisions.load(e.collisions),e.interactivity!==void 0&&(this.interactivity=He({},e.interactivity));const i=e.stroke??((o=e.shape)==null?void 0:o.stroke);if(i&&(this.stroke=Te(i,a=>{const l=new jh;return l.load(a),l})),this._container){const a=this._engine.plugins.updaters.get(this._container);if(a)for(const u of a)u.loadOptions&&u.loadOptions(this,e);const l=this._engine.plugins.interactors.get(this._container);if(l)for(const u of l)u.loadParticlesOptions&&u.loadParticlesOptions(this,e)}}}function Sm(t,...e){for(const n of e)t.load(n)}function Cm(t,e,...n){const i=new $w(t,e);return Sm(i,...n),i}class jw{constructor(e,n){this._findDefaultTheme=i=>this.themes.find(r=>r.default.value&&r.default.mode===i)??this.themes.find(r=>r.default.value&&r.default.mode==="any"),this._importPreset=i=>{this.load(this._engine.plugins.getPreset(i))},this._engine=e,this._container=n,this.autoPlay=!0,this.background=new ew,this.backgroundMask=new nw,this.defaultThemes={},this.delay=0,this.fullScreen=new iw,this.detectRetina=!0,this.duration=0,this.fpsLimit=120,this.interactivity=new wm(e,n),this.manualParticles=[],this.particles=Cm(this._engine,this._container),this.pauseOnBlur=!0,this.pauseOnOutsideViewport=!0,this.responsive=[],this.smooth=!1,this.style={},this.themes=[],this.zLayers=100}get backgroundMode(){return this.fullScreen}set backgroundMode(e){this.fullScreen.load(e)}get fps_limit(){return this.fpsLimit}set fps_limit(e){this.fpsLimit=e}get retina_detect(){return this.detectRetina}set retina_detect(e){this.detectRetina=e}load(e){var o,a;if(!e)return;e.preset!==void 0&&Te(e.preset,l=>this._importPreset(l)),e.autoPlay!==void 0&&(this.autoPlay=e.autoPlay),e.delay!==void 0&&(this.delay=G(e.delay));const n=e.detectRetina??e.retina_detect;n!==void 0&&(this.detectRetina=n),e.duration!==void 0&&(this.duration=G(e.duration));const i=e.fpsLimit??e.fps_limit;i!==void 0&&(this.fpsLimit=i),e.pauseOnBlur!==void 0&&(this.pauseOnBlur=e.pauseOnBlur),e.pauseOnOutsideViewport!==void 0&&(this.pauseOnOutsideViewport=e.pauseOnOutsideViewport),e.zLayers!==void 0&&(this.zLayers=e.zLayers),this.background.load(e.background);const r=e.fullScreen??e.backgroundMode;oi(r)?this.fullScreen.enable=r:this.fullScreen.load(r),this.backgroundMask.load(e.backgroundMask),this.interactivity.load(e.interactivity),e.manualParticles&&(this.manualParticles=e.manualParticles.map(l=>{const u=new cw;return u.load(l),u})),this.particles.load(e.particles),this.style=He(this.style,e.style),this._engine.plugins.loadOptions(this,e),e.smooth!==void 0&&(this.smooth=e.smooth);const s=this._engine.plugins.interactors.get(this._container);if(s)for(const l of s)l.loadOptions&&l.loadOptions(this,e);if(e.responsive!==void 0)for(const l of e.responsive){const u=new fw;u.load(l),this.responsive.push(u)}if(this.responsive.sort((l,u)=>l.maxWidth-u.maxWidth),e.themes!==void 0)for(const l of e.themes){const u=this.themes.find(c=>c.name===l.name);if(u)u.load(l);else{const c=new hw;c.load(l),this.themes.push(c)}}this.defaultThemes.dark=(o=this._findDefaultTheme("dark"))==null?void 0:o.name,this.defaultThemes.light=(a=this._findDefaultTheme("light"))==null?void 0:a.name}setResponsive(e,n,i){this.load(i);const r=this.responsive.find(s=>s.mode==="screen"&&screen?s.maxWidth>screen.availWidth:s.maxWidth*n>e);return this.load(r==null?void 0:r.options),r==null?void 0:r.maxWidth}setTheme(e){if(e){const n=this.themes.find(i=>i.name===e);n&&this.load(n.options)}else{const n=am("(prefers-color-scheme: dark)"),i=n&&n.matches,r=this._findDefaultTheme(i?"dark":"light");r&&this.load(r.options)}}}class Bw{constructor(e,n){this.container=n,this._engine=e,this._interactors=e.plugins.getInteractors(this.container,!0),this._externalInteractors=[],this._particleInteractors=[]}async externalInteract(e){for(const n of this._externalInteractors)n.isEnabled()&&await n.interact(e)}handleClickMode(e){for(const n of this._externalInteractors)n.handleClickMode&&n.handleClickMode(e)}init(){this._externalInteractors=[],this._particleInteractors=[];for(const e of this._interactors){switch(e.type){case"external":this._externalInteractors.push(e);break;case"particles":this._particleInteractors.push(e);break}e.init()}}async particlesInteract(e,n){for(const i of this._externalInteractors)i.clear(e,n);for(const i of this._particleInteractors)i.isEnabled(e)&&await i.interact(e,n)}async reset(e){for(const n of this._externalInteractors)n.isEnabled()&&n.reset(e);for(const n of this._particleInteractors)n.isEnabled(e)&&n.reset(e)}}const Bh=t=>{if(!ge(t.outMode,t.checkModes))return;const e=t.radius*2;t.coord>t.maxCoord-e?t.setCb(-t.radius):t.coord{for(const[,m]of a.plugins){const y=m.particlePosition!==void 0?m.particlePosition(l,this):void 0;if(y)return dt.create(y.x,y.y,u)}const f=a.canvas.size,d=O5({size:f,position:l}),h=dt.create(d.x,d.y,u),g=this.getRadius(),v=this.options.move.outModes,k=m=>{Bh({outMode:m,checkModes:["bounce","bounce-horizontal"],coord:h.x,maxCoord:a.canvas.size.width,setCb:y=>h.x+=y,radius:g})},p=m=>{Bh({outMode:m,checkModes:["bounce","bounce-vertical"],coord:h.y,maxCoord:a.canvas.size.height,setCb:y=>h.y+=y,radius:g})};return k(v.left??v.default),k(v.right??v.default),p(v.top??v.default),p(v.bottom??v.default),this._checkOverlap(h,c)?this._calcPosition(a,void 0,u,c+1):h},this._calculateVelocity=()=>{const a=P5(this.direction),l=a.copy(),u=this.options.move;if(u.direction==="inside"||u.direction==="outside")return l;const c=Math.PI/180*F(u.angle.value),f=Math.PI/180*F(u.angle.offset),d={left:f-c/2,right:f+c/2};return u.straight||(l.angle+=ot(G(d.left,d.right))),u.random&&typeof u.speed=="number"&&(l.length*=ae()),l},this._checkOverlap=(a,l=0)=>{const u=this.options.collisions,c=this.getRadius();if(!u.enable)return!1;const f=u.overlap;if(f.enable)return!1;const d=f.retries;if(d>=0&&l>d)throw new Error(`${Ft} particle is overlapping and can't be placed`);return!!this.container.particles.find(h=>gt(a,h.position){if(!a||!this.roll||!this.backColor&&!this.roll.alter)return a;const l=this.roll.horizontal&&this.roll.vertical?2:1,u=this.roll.horizontal?Math.PI/2:0;return Math.floor(((this.roll.angle??0)+u)/(Math.PI/l))%2?this.backColor?this.backColor:this.roll.alter?Y5(a,this.roll.alter.type,this.roll.alter.value):a:a},this._initPosition=a=>{const l=this.container,u=F(this.options.zIndex.value);this.position=this._calcPosition(l,a,Jt(u,0,l.zLayers)),this.initialPosition=this.position.copy();const c=l.canvas.size;switch(this.moveCenter={...dm(this.options.move.center,c),radius:this.options.move.center.radius??0,mode:this.options.move.center.mode??"percent"},this.direction=E5(this.options.move.direction,this.position,this.moveCenter),this.options.move.direction){case"inside":this.outType="inside";break;case"outside":this.outType="outside";break}this.offset=Re.origin},this._loadShapeData=(a,l)=>{const u=a.options[this.shape];if(u)return He({close:a.close,fill:a.fill},bn(u,this.id,l))},this._engine=e,this.init(n,r,s,o)}destroy(e){if(this.unbreakable||this.destroyed)return;this.destroyed=!0,this.bubble.inRange=!1,this.slow.inRange=!1;const n=this.container,i=this.pathGenerator;for(const[,r]of n.plugins)r.particleDestroyed&&r.particleDestroyed(this,e);for(const r of n.particles.updaters)r.particleDestroyed&&r.particleDestroyed(this,e);i&&i.reset(this)}draw(e){const n=this.container;for(const[,i]of n.plugins)n.canvas.drawParticlePlugin(i,this,e);n.canvas.drawParticle(this,e)}getFillColor(){return this._getRollColor(this.bubble.color??Fh(this.color))}getMass(){return this.getRadius()**2*Math.PI/2}getPosition(){return{x:this.position.x+this.offset.x,y:this.position.y+this.offset.y,z:this.position.z}}getRadius(){return this.bubble.radius??this.size.value}getStrokeColor(){return this._getRollColor(this.bubble.color??Fh(this.strokeColor))}init(e,n,i,r){const s=this.container,o=this._engine;this.id=e,this.group=r,this.fill=!0,this.pathRotation=!1,this.close=!0,this.lastPathTime=0,this.destroyed=!1,this.unbreakable=!1,this.rotation=0,this.misplaced=!1,this.retina={maxDistance:{}},this.outType="normal",this.ignoresResizeRatio=!0;const a=s.retina.pixelRatio,l=s.actualOptions,u=Cm(this._engine,s,l.particles),c=u.shape.type,{reduceDuplicates:f}=u;this.shape=bn(c,this.id,f);const d=u.shape;if(i&&i.shape&&i.shape.type){const y=i.shape.type,w=bn(y,this.id,f);w&&(this.shape=w,d.load(i.shape))}this.shapeData=this._loadShapeData(d,f),u.load(i);const h=this.shapeData;h&&u.load(h.particles);const g=new wm(o,s);g.load(s.actualOptions.interactivity),g.load(u.interactivity),this.interactivity=g,this.fill=(h==null?void 0:h.fill)??u.shape.fill,this.close=(h==null?void 0:h.close)??u.shape.close,this.options=u;const v=this.options.move.path;this.pathDelay=Bi(v.delay)*1e3,v.generator&&(this.pathGenerator=this._engine.plugins.getPathGenerator(v.generator),this.pathGenerator&&s.addPath(v.generator,this.pathGenerator)&&this.pathGenerator.init(s)),s.retina.initParticle(this),this.size=fm(this.options.size,a),this.bubble={inRange:!1},this.slow={inRange:!1,factor:1},this._initPosition(n),this.initialVelocity=this._calculateVelocity(),this.velocity=this.initialVelocity.copy(),this.moveDecay=1-F(this.options.move.decay);const k=s.particles;k.needsSort=k.needsSort||k.lastZIndex=-e&&i.y>=-e&&i.y<=n.height+e&&i.x<=n.width+e}isVisible(){return!this.destroyed&&!this.spawning&&this.isInsideCanvas()}reset(){for(const e of this.container.particles.updaters)e.reset&&e.reset(this)}}class Hw{constructor(e,n){this.position=e,this.particle=n}}class bm{constructor(e,n){this.position={x:e,y:n}}}class en extends bm{constructor(e,n,i,r){super(e,n),this.size={height:r,width:i}}contains(e){const n=this.size.width,i=this.size.height,r=this.position;return e.x>=r.x&&e.x<=r.x+n&&e.y>=r.y&&e.y<=r.y+i}intersects(e){e instanceof Ge&&e.intersects(this);const n=this.size.width,i=this.size.height,r=this.position,s=e.position,o=e instanceof en?e.size:{width:0,height:0},a=o.width,l=o.height;return s.xr.x&&s.yr.y}}class Ge extends bm{constructor(e,n,i){super(e,n),this.radius=i}contains(e){return gt(e,this.position)<=this.radius}intersects(e){const n=this.position,i=e.position,r={x:Math.abs(i.x-n.x),y:Math.abs(i.y-n.y)},s=this.radius;if(e instanceof Ge){const o=s+e.radius,a=Math.sqrt(r.x**2+r.y**2);return o>a}else if(e instanceof en){const{width:o,height:a}=e.size;return Math.pow(r.x-o,2)+Math.pow(r.y-a,2)<=s**2||r.x<=s+o&&r.y<=s+a||r.x<=o||r.y<=a}return!1}}class Fa{constructor(e,n){this.rectangle=e,this.capacity=n,this._subdivide=()=>{const{x:i,y:r}=this.rectangle.position,{width:s,height:o}=this.rectangle.size,{capacity:a}=this;for(let l=0;l<4;l++)this._subs.push(new Fa(new en(i+s/2*(l%2),r+o/2*(Math.round(l/2)-l%2),s/2,o/2),a));this._divided=!0},this._points=[],this._divided=!1,this._subs=[]}insert(e){return this.rectangle.contains(e.position)?this._points.lengthn.insert(e))):!1}query(e,n,i){const r=i||[];if(!e.intersects(this.rectangle))return[];for(const s of this._points)!e.contains(s.position)&>(e.position,s.position)>s.particle.getRadius()&&(!n||n(s.particle))||r.push(s.particle);if(this._divided)for(const s of this._subs)s.query(e,n,r);return r}queryCircle(e,n,i){return this.query(new Ge(e.x,e.y,n),i)}queryRectangle(e,n,i){return this.query(new en(e.x,e.y,n.width,n.height),i)}}const Uh=4,Hh=t=>new en(-t.width/4,-t.height/4,t.width*3/2,t.height*3/2);let Gw=class{constructor(e,n){this._applyDensity=(r,s,o)=>{var h;if(!((h=r.number.density)!=null&&h.enable))return;const a=r.number,l=this._initDensityFactor(a.density),u=a.value,c=a.limit>0?a.limit:u,f=Math.min(u,c)*l+s,d=Math.min(this.count,this.filter(g=>g.group===o).length);this.limit=a.limit*l,df&&this.removeQuantity(d-f,o)},this._initDensityFactor=r=>{const s=this._container;if(!s.canvas.element||!r.enable)return 1;const o=s.canvas.element,a=s.retina.pixelRatio;return o.width*o.height/(r.factor*a**2*r.area)},this._pushParticle=(r,s,o,a)=>{try{let l=this.pool.pop();l?l.init(this._nextId,r,s,o):l=new Uw(this._engine,this._nextId,this._container,r,s,o);let u=!0;return a&&(u=a(l)),u?(this._array.push(l),this._zArray.push(l),this._nextId++,this._engine.dispatchEvent("particleAdded",{container:this._container,data:{particle:l}}),l):void 0}catch(l){Ui().warning(`${Ft} adding particle: ${l}`);return}},this._removeParticle=(r,s,o)=>{const a=this._array[r];if(!a||a.group!==s)return!1;a.destroy(o);const l=this._zArray.indexOf(a);return this._array.splice(r,1),this._zArray.splice(l,1),this.pool.push(a),this._engine.dispatchEvent("particleRemoved",{container:this._container,data:{particle:a}}),!0},this._engine=e,this._container=n,this._nextId=0,this._array=[],this._zArray=[],this.pool=[],this.limit=0,this.needsSort=!1,this.lastZIndex=0,this._interactionManager=new Bw(e,n);const i=n.canvas.size;this.quadTree=new Fa(Hh(i),Uh),this.movers=this._engine.plugins.getMovers(n,!0),this.updaters=this._engine.plugins.getUpdaters(n,!0)}get count(){return this._array.length}addManualParticles(){const e=this._container,n=e.actualOptions;for(const i of n.manualParticles)this.addParticle(i.position?dm(i.position,e.canvas.size):void 0,i.options)}addParticle(e,n,i,r){const s=this._container,o=s.actualOptions,a=o.particles.number.limit;if(a>0){const l=this.count+1-a;l>0&&this.removeQuantity(l)}return this._pushParticle(e,n,i,r)}clear(){this._array=[],this._zArray=[]}destroy(){this._array=[],this._zArray=[],this.movers=[],this.updaters=[]}async draw(e){const n=this._container;n.canvas.clear(),await this.update(e);for(const[,i]of n.plugins)n.canvas.drawPlugin(i,e);for(const i of this._zArray)i.draw(e)}filter(e){return this._array.filter(e)}find(e){return this._array.find(e)}handleClickMode(e){this._interactionManager.handleClickMode(e)}init(){var r;const e=this._container,n=e.actualOptions;this.lastZIndex=0,this.needsSort=!1;let i=!1;this.updaters=this._engine.plugins.getUpdaters(e,!0),this._interactionManager.init();for(const[,s]of e.plugins)if(s.particlesInitialization!==void 0&&(i=s.particlesInitialization()),i)break;this._interactionManager.init();for(const[,s]of e.pathGenerators)s.init(e);if(this.addManualParticles(),!i){for(const s in n.particles.groups){const o=n.particles.groups[s];for(let a=this.count,l=0;l<((r=o.number)==null?void 0:r.value)&&athis.count)return;let s=0;for(let o=e;s!i.has(s);this._array=this.filter(r),this._zArray=this._zArray.filter(r),this.pool.push(...i)}await this._interactionManager.externalInteract(e);for(const r of this._array){for(const s of this.updaters)s.update(r,e);!r.destroyed&&!r.spawning&&await this._interactionManager.particlesInteract(r,e)}if(delete n.canvas.resizeFactor,this.needsSort){const r=this._zArray;r.sort((s,o)=>o.position.z-s.position.z||s.id-o.id),this.lastZIndex=r[r.length-1].position.z,this.needsSort=!1}}};class Ww{constructor(e){this.container=e,this.pixelRatio=1,this.reduceFactor=1}init(){const e=this.container,n=e.actualOptions;this.pixelRatio=!n.detectRetina||Wr()?1:window.devicePixelRatio,this.reduceFactor=1;const i=this.pixelRatio;if(e.canvas.element){const o=e.canvas.element;e.canvas.size.width=o.offsetWidth*i,e.canvas.size.height=o.offsetHeight*i}const r=n.particles,s=r.move;this.attractDistance=F(s.attract.distance)*i,this.maxSpeed=F(s.gravity.maxSpeed)*i,this.sizeAnimationSpeed=F(r.size.animation.speed)*i}initParticle(e){const n=e.options,i=this.pixelRatio,r=n.move,s=r.distance,o=e.retina;o.attractDistance=F(r.attract.distance)*i,o.moveDrift=F(r.drift)*i,o.moveSpeed=F(r.speed)*i,o.sizeAnimationSpeed=F(n.size.animation.speed)*i;const a=o.maxDistance;a.horizontal=s.horizontal!==void 0?s.horizontal*i:void 0,a.vertical=s.vertical!==void 0?s.vertical*i:void 0,o.maxSpeed=F(r.gravity.maxSpeed)*i}}function ue(t){return t&&!t.destroyed}function qw(t,e=60,n=!1){return{value:t,factor:n?60/e:60*t/1e3}}function Vi(t,e,...n){const i=new jw(t,e);return Sm(i,...n),i}const Qw="default",Gh={generate:t=>t.velocity,init:()=>{},update:()=>{},reset:()=>{}};class Vw{constructor(e,n,i){this.id=n,this._intersectionManager=r=>{if(!(!ue(this)||!this.actualOptions.pauseOnOutsideViewport))for(const s of r)s.target===this.interactivity.element&&(s.isIntersecting?this.play:this.pause)()},this._nextFrame=async r=>{try{if(!this.smooth&&this.lastFrameTime!==void 0&&r1e3){this.draw(!1);return}if(await this.particles.draw(s),!this.alive()){this.destroy();return}this.getAnimationStatus()&&this.draw(!1)}catch(s){Ui().error(`${Ft} in animation loop`,s)}},this._engine=e,this.fpsLimit=120,this.smooth=!1,this._delay=0,this._duration=0,this._lifeTime=0,this._firstStart=!0,this.started=!1,this.destroyed=!1,this._paused=!0,this.lastFrameTime=0,this.zLayers=100,this.pageHidden=!1,this._sourceOptions=i,this._initialSourceOptions=i,this.retina=new Ww(this),this.canvas=new Z5(this),this.particles=new Gw(this._engine,this),this.pathGenerators=new Map,this.interactivity={mouse:{clicking:!1,inside:!1}},this.plugins=new Map,this.drawers=new Map,this._options=Vi(this._engine,this),this.actualOptions=Vi(this._engine,this),this._eventListeners=new J5(this),typeof IntersectionObserver<"u"&&IntersectionObserver&&(this._intersectionObserver=new IntersectionObserver(r=>this._intersectionManager(r))),this._engine.dispatchEvent("containerBuilt",{container:this})}get options(){return this._options}get sourceOptions(){return this._sourceOptions}addClickHandler(e){if(!ue(this))return;const n=this.interactivity.element;if(!n)return;const i=(f,d,h)=>{if(!ue(this))return;const g=this.retina.pixelRatio,v={x:d.x*g,y:d.y*g},k=this.particles.quadTree.queryCircle(v,h*g);e(f,k)},r=f=>{if(!ue(this))return;const d=f,h={x:d.offsetX||d.clientX,y:d.offsetY||d.clientY};i(f,h,1)},s=()=>{ue(this)&&(u=!0,c=!1)},o=()=>{ue(this)&&(c=!0)},a=f=>{if(ue(this)){if(u&&!c){const d=f;let h=d.touches[d.touches.length-1];if(!h&&(h=d.changedTouches[d.changedTouches.length-1],!h))return;const g=this.canvas.element,v=g?g.getBoundingClientRect():void 0,k={x:h.clientX-(v?v.left:0),y:h.clientY-(v?v.top:0)};i(f,k,Math.max(h.radiusX,h.radiusY))}u=!1,c=!1}},l=()=>{ue(this)&&(u=!1,c=!1)};let u=!1,c=!1;n.addEventListener("click",r),n.addEventListener("touchstart",s),n.addEventListener("touchmove",o),n.addEventListener("touchend",a),n.addEventListener("touchcancel",l)}addLifeTime(e){this._lifeTime+=e}addPath(e,n,i=!1){return!ue(this)||!i&&this.pathGenerators.has(e)?!1:(this.pathGenerators.set(e,n??Gh),!0)}alive(){return!this._duration||this._lifeTime<=this._duration}destroy(){if(!ue(this))return;this.stop(),this.particles.destroy(),this.canvas.destroy();for(const[,i]of this.drawers)i.destroy&&i.destroy(this);for(const i of this.drawers.keys())this.drawers.delete(i);this._engine.plugins.destroy(this),this.destroyed=!0;const e=this._engine.dom(),n=e.findIndex(i=>i===this);n>=0&&e.splice(n,1),this._engine.dispatchEvent("containerDestroyed",{container:this})}draw(e){if(!ue(this))return;let n=e;this._drawAnimationFrame=requestAnimationFrame(async i=>{n&&(this.lastFrameTime=void 0,n=!1),await this._nextFrame(i)})}async export(e,n={}){for(const[,i]of this.plugins){if(!i.export)continue;const r=await i.export(e,n);if(r.supported)return r.blob}Ui().error(`${Ft} - Export plugin with type ${e} not found`)}getAnimationStatus(){return!this._paused&&!this.pageHidden&&ue(this)}handleClickMode(e){if(ue(this)){this.particles.handleClickMode(e);for(const[,n]of this.plugins)n.handleClickMode&&n.handleClickMode(e)}}async init(){if(!ue(this))return;const e=this._engine.plugins.getSupportedShapes();for(const i of e){const r=this._engine.plugins.getShapeDrawer(i);r&&this.drawers.set(i,r)}this._options=Vi(this._engine,this,this._initialSourceOptions,this.sourceOptions),this.actualOptions=Vi(this._engine,this,this._options);const n=this._engine.plugins.getAvailablePlugins(this);for(const[i,r]of n)this.plugins.set(i,r);this.retina.init(),await this.canvas.init(),this.updateActualOptions(),this.canvas.initBackground(),this.canvas.resize(),this.zLayers=this.actualOptions.zLayers,this._duration=F(this.actualOptions.duration)*1e3,this._delay=F(this.actualOptions.delay)*1e3,this._lifeTime=0,this.fpsLimit=this.actualOptions.fpsLimit>0?this.actualOptions.fpsLimit:120,this.smooth=this.actualOptions.smooth;for(const[,i]of this.drawers)i.init&&await i.init(this);for(const[,i]of this.plugins)i.init&&await i.init();this._engine.dispatchEvent("containerInit",{container:this}),this.particles.init(),this.particles.setDensity();for(const[,i]of this.plugins)i.particlesSetup&&i.particlesSetup();this._engine.dispatchEvent("particlesSetup",{container:this})}async loadTheme(e){ue(this)&&(this._currentTheme=e,await this.refresh())}pause(){if(ue(this)&&(this._drawAnimationFrame!==void 0&&(cancelAnimationFrame(this._drawAnimationFrame),delete this._drawAnimationFrame),!this._paused)){for(const[,e]of this.plugins)e.pause&&e.pause();this.pageHidden||(this._paused=!0),this._engine.dispatchEvent("containerPaused",{container:this})}}play(e){if(!ue(this))return;const n=this._paused||e;if(this._firstStart&&!this.actualOptions.autoPlay){this._firstStart=!1;return}if(this._paused&&(this._paused=!1),n)for(const[,i]of this.plugins)i.play&&i.play();this._engine.dispatchEvent("containerPlay",{container:this}),this.draw(n||!1)}async refresh(){if(ue(this))return this.stop(),this.start()}async reset(){if(ue(this))return this._initialSourceOptions=void 0,this._options=Vi(this._engine,this),this.actualOptions=Vi(this._engine,this,this._options),this.refresh()}setNoise(e,n,i){ue(this)&&this.setPath(e,n,i)}setPath(e,n,i){if(!e||!ue(this))return;const r={...Gh};if(hm(e))r.generate=e,n&&(r.init=n),i&&(r.update=i);else{const s=r;r.generate=e.generate||s.generate,r.init=e.init||s.init,r.update=e.update||s.update}this.addPath(Qw,r,!0)}async start(){!ue(this)||this.started||(await this.init(),this.started=!0,await new Promise(e=>{this._delayTimeout=setTimeout(async()=>{this._eventListeners.addListeners(),this.interactivity.element instanceof HTMLElement&&this._intersectionObserver&&this._intersectionObserver.observe(this.interactivity.element);for(const[,n]of this.plugins)n.start&&await n.start();this._engine.dispatchEvent("containerStarted",{container:this}),this.play(),e()},this._delay)}))}stop(){if(!(!ue(this)||!this.started)){this._delayTimeout&&(clearTimeout(this._delayTimeout),delete this._delayTimeout),this._firstStart=!0,this.started=!1,this._eventListeners.removeListeners(),this.pause(),this.particles.clear(),this.canvas.stop(),this.interactivity.element instanceof HTMLElement&&this._intersectionObserver&&this._intersectionObserver.unobserve(this.interactivity.element);for(const[,e]of this.plugins)e.stop&&e.stop();for(const e of this.plugins.keys())this.plugins.delete(e);this._sourceOptions=this._options,this._engine.dispatchEvent("containerStopped",{container:this})}}updateActualOptions(){this.actualOptions.responsive=[];const e=this.actualOptions.setResponsive(this.canvas.size.width,this.retina.pixelRatio,this._options);return this.actualOptions.setTheme(this._currentTheme),this.responsiveMaxWidth===e?!1:(this.responsiveMaxWidth=e,!0)}}class Kw{constructor(){this._listeners=new Map}addEventListener(e,n){this.removeEventListener(e,n);let i=this._listeners.get(e);i||(i=[],this._listeners.set(e,i)),i.push(n)}dispatchEvent(e,n){const i=this._listeners.get(e);i&&i.forEach(r=>r(n))}hasEventListener(e){return!!this._listeners.get(e)}removeAllEventListeners(e){e?this._listeners.delete(e):this._listeners=new Map}removeEventListener(e,n){const i=this._listeners.get(e);if(!i)return;const r=i.length,s=i.indexOf(n);s<0||(r===1?this._listeners.delete(e):i.splice(s,1))}}function du(t,e,n,i=!1){let r=e.get(t);return(!r||i)&&(r=[...n.values()].map(s=>s(t)),e.set(t,r)),r}class Yw{constructor(e){this._engine=e,this.plugins=[],this._initializers={interactors:new Map,movers:new Map,updaters:new Map},this.interactors=new Map,this.movers=new Map,this.updaters=new Map,this.presets=new Map,this.drawers=new Map,this.pathGenerators=new Map}addInteractor(e,n){this._initializers.interactors.set(e,n)}addParticleMover(e,n){this._initializers.movers.set(e,n)}addParticleUpdater(e,n){this._initializers.updaters.set(e,n)}addPathGenerator(e,n){!this.getPathGenerator(e)&&this.pathGenerators.set(e,n)}addPlugin(e){!this.getPlugin(e.id)&&this.plugins.push(e)}addPreset(e,n,i=!1){(i||!this.getPreset(e))&&this.presets.set(e,n)}addShapeDrawer(e,n){Te(e,i=>{!this.getShapeDrawer(i)&&this.drawers.set(i,n)})}destroy(e){this.updaters.delete(e),this.movers.delete(e),this.interactors.delete(e)}getAvailablePlugins(e){const n=new Map;for(const i of this.plugins)i.needsPlugin(e.actualOptions)&&n.set(i.id,i.getPlugin(e));return n}getInteractors(e,n=!1){return du(e,this.interactors,this._initializers.interactors,n)}getMovers(e,n=!1){return du(e,this.movers,this._initializers.movers,n)}getPathGenerator(e){return this.pathGenerators.get(e)}getPlugin(e){return this.plugins.find(n=>n.id===e)}getPreset(e){return this.presets.get(e)}getShapeDrawer(e){return this.drawers.get(e)}getSupportedShapes(){return this.drawers.keys()}getUpdaters(e,n=!1){return du(e,this.updaters,this._initializers.updaters,n)}loadOptions(e,n){for(const i of this.plugins)i.loadOptions(e,n)}loadParticlesOptions(e,n,...i){const r=this.updaters.get(e);if(r)for(const s of r)s.loadOptions&&s.loadOptions(n,...i)}}async function Xw(t){const e=bn(t.url,t.index);if(!e)return t.fallback;const n=await fetch(e);return n.ok?n.json():(Ui().error(`${Ft} ${n.status} while retrieving config file`),t.fallback)}function Zw(t){return!t.id&&!t.element&&!t.url&&!t.options}function Jw(t){return!Zw(t)}class e6{constructor(){this._configs=new Map,this._domArray=[],this._eventDispatcher=new Kw,this._initialized=!1,this.plugins=new Yw(this)}get configs(){const e={};for(const[n,i]of this._configs)e[n]=i;return e}get version(){return"2.12.0"}addConfig(e,n){Kt(e)?n&&(n.name=e,this._configs.set(e,n)):this._configs.set(e.name??"default",e)}addEventListener(e,n){this._eventDispatcher.addEventListener(e,n)}async addInteractor(e,n,i=!0){this.plugins.addInteractor(e,n),await this.refresh(i)}async addMover(e,n,i=!0){this.plugins.addParticleMover(e,n),await this.refresh(i)}async addParticleUpdater(e,n,i=!0){this.plugins.addParticleUpdater(e,n),await this.refresh(i)}async addPathGenerator(e,n,i=!0){this.plugins.addPathGenerator(e,n),await this.refresh(i)}async addPlugin(e,n=!0){this.plugins.addPlugin(e),await this.refresh(n)}async addPreset(e,n,i=!1,r=!0){this.plugins.addPreset(e,n,i),await this.refresh(r)}async addShape(e,n,i,r,s,o=!0){let a,l=o,u,c,f;oi(i)?(l=i,u=void 0):u=i,oi(r)?(l=r,c=void 0):c=r,oi(s)?(l=s,f=void 0):f=s,hm(n)?a={afterEffect:c,destroy:f,draw:n,init:u}:a=n,this.plugins.addShapeDrawer(e,a),await this.refresh(l)}dispatchEvent(e,n){this._eventDispatcher.dispatchEvent(e,n)}dom(){return this._domArray}domItem(e){const n=this.dom(),i=n[e];if(!i||i.destroyed){n.splice(e,1);return}return i}init(){this._initialized||(this._initialized=!0)}async load(e,n){return this.loadFromArray(e,n)}async loadFromArray(e,n,i){let r;return Jw(e)?r=e:(r={},Kt(e)?r.id=e:r.options=e,Yt(n)?r.index=n:r.options=n??r.options,r.index=i??r.index),this._loadParams(r)}async loadJSON(e,n,i){let r,s;return Yt(n)||n===void 0?r=e:(s=e,r=n),this._loadParams({id:s,url:r,index:i})}async refresh(e=!0){e&&this.dom().forEach(n=>n.refresh())}removeEventListener(e,n){this._eventDispatcher.removeEventListener(e,n)}async set(e,n,i,r){const s={index:r};return Kt(e)?s.id=e:s.element=e,n instanceof HTMLElement?s.element=n:s.options=n,Yt(i)?s.index=i:s.options=i??s.options,this._loadParams(s)}async setJSON(e,n,i,r){const s={};return e instanceof HTMLElement?(s.element=e,s.url=n,s.index=i):(s.id=e,s.element=n,s.url=i,s.index=r),this._loadParams(s)}setOnClickHandler(e){const n=this.dom();if(!n.length)throw new Error(`${Ft} can only set click handlers after calling tsParticles.load()`);for(const i of n)i.addClickHandler(e)}async _loadParams(e){const n=e.id??`tsparticles${Math.floor(ae()*1e4)}`,{index:i,url:r}=e,s=r?await Xw({fallback:e.options,url:r,index:i}):e.options;let o=e.element??document.getElementById(n);o||(o=document.createElement("div"),o.id=n,document.body.append(o));const a=bn(s,i),l=this.dom(),u=l.findIndex(d=>d.id===n);if(u>=0){const d=this.domItem(u);d&&!d.destroyed&&(d.destroy(),l.splice(u,1))}let c;if(o.tagName.toLowerCase()==="canvas")c=o,c.dataset[bs]="false";else{const d=o.getElementsByTagName("canvas");d.length?(c=d[0],c.dataset[bs]="false"):(c=document.createElement("canvas"),c.dataset[bs]="true",o.appendChild(c))}c.style.width||(c.style.width="100%"),c.style.height||(c.style.height="100%");const f=new Vw(this,n,a);return u>=0?l.splice(u,0,f):l.push(f),f.canvas.loadCanvas(c),await f.start(),f}}class t6{constructor(){this.key="hsl",this.stringPrefix="hsl"}handleColor(e){const n=e.value,i=n.hsl??e.value;if(i.h!==void 0&&i.s!==void 0&&i.l!==void 0)return qr(i)}handleRangeColor(e){const n=e.value,i=n.hsl??e.value;if(i.h!==void 0&&i.l!==void 0)return qr({h:F(i.h),l:F(i.l),s:F(i.s)})}parseString(e){if(!e.startsWith("hsl"))return;const n=/hsla?\(\s*(\d+)\s*,\s*(\d+)%\s*,\s*(\d+)%\s*(,\s*([\d.%]+)\s*)?\)/i,i=n.exec(e);return i?B5({a:i.length>4?om(i[5]):1,h:parseInt(i[1],10),l:parseInt(i[3],10),s:parseInt(i[2],10)}):void 0}}class n6{constructor(){this.key="rgb",this.stringPrefix="rgb"}handleColor(e){const n=e.value,i=n.rgb??e.value;if(i.r!==void 0)return i}handleRangeColor(e){const n=e.value,i=n.rgb??e.value;if(i.r!==void 0)return{r:F(i.r),g:F(i.g),b:F(i.b)}}parseString(e){if(!e.startsWith(this.stringPrefix))return;const n=/rgba?\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(,\s*([\d.%]+)\s*)?\)/i,i=n.exec(e);return i?{a:i.length>4?om(i[5]):1,b:parseInt(i[3],10),g:parseInt(i[2],10),r:parseInt(i[1],10)}:void 0}}function i6(){const t=new n6,e=new t6;Ah(t),Ah(e);const n=new e6;return n.init(),n}class hn{constructor(e){this.container=e,this.type="external"}}class Wf{constructor(e){this.container=e,this.type="particles"}}const Na=i6();Wr()||(window.tsParticles=Na);const ur=t=>typeof t=="object"&&t!==null;function $a(t,e,n=()=>!1){if(!ur(t)||!ur(e))return t===e;const i=Object.keys(t).filter(s=>!n(s)),r=Object.keys(e).filter(s=>!n(s));if(i.length!==r.length)return!1;for(const s of i){const o=t[s],a=e[s];if(ur(o)&&ur(a)){if(o===e&&a===t)continue;if(!$a(o,a,n))return!1}else if(Array.isArray(o)&&Array.isArray(a)){if(!_m(o,a,n))return!1}else if(o!==a)return!1}return!0}function _m(t,e,n){if(t.length!==e.length)return!1;for(let i=0;ir.startsWith("_"))}componentDidUpdate(){this.refresh()}forceUpdate(){this.refresh().then(()=>{super.forceUpdate()})}componentDidMount(){(async()=>(this.props.init&&await this.props.init(Na),this.setState({init:!0},async()=>{await this.loadParticles()})))()}componentWillUnmount(){this.destroy()}render(){const{width:e,height:n,className:i,canvasClassName:r,id:s}=this.props;return _e.createElement("div",{className:i,id:s},_e.createElement("canvas",{className:r,style:{...this.props.style,width:e,height:n}}))}async refresh(){this.destroy(),await this.loadParticles()}async loadParticles(){if(!this.state.init)return;const e=this.props.id??Om.defaultProps.id??Em,n=await Na.load({url:this.props.url,id:e,options:this.props.options??this.props.params});this.props.container&&(this.props.container.current=n),this.setState({library:n}),this.props.loaded&&await this.props.loaded(n)}};Pm.defaultProps={width:"100%",height:"100%",options:{},style:{},url:void 0,id:Em};class ja{static init(e){var s;const n=new ja,i=e.selector;if(!i)throw new Error("No selector provided");const r=document.querySelector(i);if(!r)throw new Error("No element found for selector");return Na.set(i.replace(".","").replace("!",""),r,{fullScreen:{enable:!1},particles:{color:{value:e.color??"!000000"},links:{color:"random",distance:e.minDistance??120,enable:e.connectParticles??!1},move:{enable:!0,speed:e.speed??.5},number:{value:e.maxParticles??100},size:{value:{min:1,max:e.sizeVariations??3}}},responsive:(s=e.responsive)==null?void 0:s.map(o=>{var a,l,u,c,f;return{maxWidth:o.breakpoint,options:{particles:{color:{value:(a=o.options)==null?void 0:a.color},links:{distance:(l=o.options)==null?void 0:l.minDistance,enable:(u=o.options)==null?void 0:u.connectParticles},number:{value:e.maxParticles},move:{enable:!0,speed:(c=o.options)==null?void 0:c.speed},size:{value:(f=o.options)==null?void 0:f.sizeVariations}}}}})}).then(o=>{n._container=o}),n}destroy(){const e=this._container;e&&e.destroy()}pauseAnimation(){const e=this._container;e&&e.pause()}resumeAnimation(){const e=this._container;e&&e.play()}}const r6=t=>{const e=(i,r)=>t.load(i,r);e.load=(i,r,s)=>{t.loadJSON(i,r).then(o=>{o&&s(o)}).catch(()=>{s(void 0)})},e.setOnClickHandler=i=>{t.setOnClickHandler(i)};const n=t.dom();return{particlesJS:e,pJSDom:n}},s6=t=>{const{particlesJS:e,pJSDom:n}=r6(t);return window.particlesJS=e,window.pJSDom=n,window.Particles=ja,{particlesJS:e,pJSDom:n,Particles:ja}};function o6(t){const e=t.initialPosition,{dx:n,dy:i}=Ze(e,t.position),r=Math.abs(n),s=Math.abs(i),{maxDistance:o}=t.retina,a=o.horizontal,l=o.vertical;if(!(!a&&!l)){if((a&&r>=a||l&&s>=l)&&!t.misplaced)t.misplaced=!!a&&r>a||!!l&&s>l,a&&(t.velocity.x=t.velocity.y/2-t.velocity.x),l&&(t.velocity.y=t.velocity.x/2-t.velocity.y);else if((!a||re.x&&c.x>0)&&(c.x*=-ae()),l&&(u.ye.y&&c.y>0)&&(c.y*=-ae())}}}function a6(t,e,n,i,r,s){u6(t,s);const o=t.gravity,a=o!=null&&o.enable&&o.inverse?-1:1;r&&n&&(t.velocity.x+=r*s.factor/(60*n)),o!=null&&o.enable&&n&&(t.velocity.y+=a*(o.acceleration*s.factor)/(60*n));const l=t.moveDecay;t.velocity.multTo(l);const u=t.velocity.mult(n);o!=null&&o.enable&&i>0&&(!o.inverse&&u.y>=0&&u.y>=i||o.inverse&&u.y<=0&&u.y<=-i)&&(u.y=a*i,n&&(t.velocity.y=u.y/n));const c=t.options.zIndex,f=(1-t.zIndexFactor)**c.velocityRate;u.multTo(f);const{position:d}=t;d.addTo(u),e.vibrate&&(d.x+=Math.sin(d.x*Math.cos(d.y)),d.y+=Math.cos(d.y*Math.sin(d.x)))}function l6(t,e){const n=t.container;if(!t.spin)return;const i={x:t.spin.direction==="clockwise"?Math.cos:Math.sin,y:t.spin.direction==="clockwise"?Math.sin:Math.cos};t.position.x=t.spin.center.x+t.spin.radius*i.x(t.spin.angle),t.position.y=t.spin.center.y+t.spin.radius*i.y(t.spin.angle),t.spin.radius+=t.spin.acceleration;const r=Math.max(n.canvas.size.width,n.canvas.size.height);t.spin.radius>r/2?(t.spin.radius=r/2,t.spin.acceleration*=-1):t.spin.radius<0&&(t.spin.radius=0,t.spin.acceleration*=-1),t.spin.angle+=e/100*(1-t.spin.radius/r)}function u6(t,e){var o;const n=t.options,i=n.move.path;if(!i.enable)return;if(t.lastPathTime<=t.pathDelay){t.lastPathTime+=e.value;return}const s=(o=t.pathGenerator)==null?void 0:o.generate(t,e);s&&t.velocity.addTo(s),i.clamp&&(t.velocity.x=Jt(t.velocity.x,-1,1),t.velocity.y=Jt(t.velocity.y,-1,1)),t.lastPathTime-=t.pathDelay}function c6(t){return t.slow.inRange?t.slow.factor:1}const f6=2;class d6{constructor(){this._initSpin=e=>{const n=e.container,i=e.options,r=i.move.spin;if(!r.enable)return;const s=r.position??{x:50,y:50},o={x:s.x/100*n.canvas.size.width,y:s.y/100*n.canvas.size.height},a=e.getPosition(),l=gt(a,o),u=F(r.acceleration);e.retina.spinAcceleration=u*n.retina.pixelRatio,e.spin={center:o,direction:e.velocity.x>=0?"clockwise":"counter-clockwise",angle:e.velocity.angle,radius:l,acceleration:e.retina.spinAcceleration}}}init(e){const n=e.options,i=n.move.gravity;e.gravity={enable:i.enable,acceleration:F(i.acceleration),inverse:i.inverse},this._initSpin(e)}isEnabled(e){return!e.destroyed&&e.options.move.enable}move(e,n){var g,v;const i=e.options,r=i.move;if(!r.enable)return;const s=e.container,o=s.retina.pixelRatio,a=c6(e),l=((g=e.retina).moveSpeed??(g.moveSpeed=F(r.speed)*o))*s.retina.reduceFactor,u=(v=e.retina).moveDrift??(v.moveDrift=F(e.options.move.drift)*o),c=Kn(i.size.value)*o,f=r.size?e.getRadius()/c:1,d=l*f*a*(n.factor||1)/f6,h=e.retina.maxSpeed??s.retina.maxSpeed;r.spin.enable?l6(e,d):a6(e,r,d,h,u,n),o6(e)}}async function h6(t,e=!0){await t.addMover("base",()=>new d6,e)}class p6{draw(e,n,i){n.circleRange||(n.circleRange={min:0,max:Math.PI*2});const r=n.circleRange;e.arc(0,0,i,r.min,r.max,!1)}getSidesCount(){return 12}particleInit(e,n){const i=n.shapeData,r=(i==null?void 0:i.angle)??{max:360,min:0};n.circleRange=lr(r)?{min:r.min*Math.PI/180,max:r.max*Math.PI/180}:{min:0,max:r*Math.PI/180}}}async function m6(t,e=!0){await t.addShape("circle",new p6,e)}function hu(t,e,n,i,r){if(!e||!n.enable||(e.maxLoops??0)>0&&(e.loops??0)>(e.maxLoops??0)||(e.time||(e.time=0),(e.delayTime??0)>0&&e.time<(e.delayTime??0)&&(e.time+=t.value),(e.delayTime??0)>0&&e.time<(e.delayTime??0)))return;const s=ot(n.offset),o=(e.velocity??0)*t.factor+s*3.6,a=e.decay??1;!r||e.status==="increasing"?(e.value+=o,e.value>i&&(e.loops||(e.loops=0),e.loops++,r&&(e.status="decreasing",e.value-=e.value%i))):(e.value-=o,e.value<0&&(e.loops||(e.loops=0),e.loops++,e.status="increasing",e.value+=e.value)),e.velocity&&a!==1&&(e.velocity*=a),e.value>i&&(e.value%=i)}function y6(t,e){const{h:n,s:i,l:r}=t.options.color.animation,{color:s}=t;if(!s)return;const{h:o,s:a,l}=s;o&&hu(e,o,n,360,!1),a&&hu(e,a,i,100,!0),l&&hu(e,l,r,100,!0)}class g6{constructor(e){this.container=e}init(e){const n=qs(e.options.color,e.id,e.options.reduceDuplicates);n&&(e.color=vm(n,e.options.color.animation,this.container.retina.reduceFactor))}isEnabled(e){const{h:n,s:i,l:r}=e.options.color.animation,{color:s}=e;return!e.destroyed&&!e.spawning&&((s==null?void 0:s.h.value)!==void 0&&n.enable||(s==null?void 0:s.s.value)!==void 0&&i.enable||(s==null?void 0:s.l.value)!==void 0&&r.enable)}update(e,n){y6(e,n)}}async function v6(t,e=!0){await t.addParticleUpdater("color",n=>new g6(n),e)}function w6(t,e,n,i){switch(t.options.opacity.animation.destroy){case"max":e>=i&&t.destroy();break;case"min":e<=n&&t.destroy();break}}function x6(t,e){const n=t.opacity;if(t.destroyed||!(n!=null&&n.enable)||(n.maxLoops??0)>0&&(n.loops??0)>(n.maxLoops??0))return;const i=n.min,r=n.max,s=n.decay??1;if(n.time||(n.time=0),(n.delayTime??0)>0&&n.time<(n.delayTime??0)&&(n.time+=e.value),!((n.delayTime??0)>0&&n.time<(n.delayTime??0))){switch(n.status){case"increasing":n.value>=r?(n.status="decreasing",n.loops||(n.loops=0),n.loops++):n.value+=(n.velocity??0)*e.factor;break;case"decreasing":n.value<=i?(n.status="increasing",n.loops||(n.loops=0),n.loops++):n.value-=(n.velocity??0)*e.factor;break}n.velocity&&n.decay!==1&&(n.velocity*=s),w6(t,n.value,i,r),t.destroyed||(n.value=Jt(n.value,i,r))}}class k6{constructor(e){this.container=e}init(e){const n=e.options.opacity;e.opacity=fm(n,1);const i=n.animation;i.enable&&(e.opacity.velocity=F(i.speed)/100*this.container.retina.reduceFactor,i.sync||(e.opacity.velocity*=ae()))}isEnabled(e){return!e.destroyed&&!e.spawning&&!!e.opacity&&e.opacity.enable&&((e.opacity.maxLoops??0)<=0||(e.opacity.maxLoops??0)>0&&(e.opacity.loops??0)<(e.opacity.maxLoops??0))}reset(e){e.opacity&&(e.opacity.time=0,e.opacity.loops=0)}update(e,n){this.isEnabled(e)&&x6(e,n)}}async function S6(t,e=!0){await t.addParticleUpdater("opacity",n=>new k6(n),e)}function C6(t){if(t.outMode!=="bounce"&&t.outMode!=="bounce-horizontal"&&t.outMode!=="bounceHorizontal"&&t.outMode!=="split"||t.direction!=="left"&&t.direction!=="right")return;t.bounds.right<0&&t.direction==="left"?t.particle.position.x=t.size+t.offset.x:t.bounds.left>t.canvasSize.width&&t.direction==="right"&&(t.particle.position.x=t.canvasSize.width-t.size-t.offset.x);const e=t.particle.velocity.x;let n=!1;if(t.direction==="right"&&t.bounds.right>=t.canvasSize.width&&e>0||t.direction==="left"&&t.bounds.left<=0&&e<0){const r=Bi(t.particle.options.bounce.horizontal);t.particle.velocity.x*=-r,n=!0}if(!n)return;const i=t.offset.x+t.size;t.bounds.right>=t.canvasSize.width&&t.direction==="right"?t.particle.position.x=t.canvasSize.width-i:t.bounds.left<=0&&t.direction==="left"&&(t.particle.position.x=i),t.outMode==="split"&&t.particle.destroy()}function b6(t){if(t.outMode!=="bounce"&&t.outMode!=="bounce-vertical"&&t.outMode!=="bounceVertical"&&t.outMode!=="split"||t.direction!=="bottom"&&t.direction!=="top")return;t.bounds.bottom<0&&t.direction==="top"?t.particle.position.y=t.size+t.offset.y:t.bounds.top>t.canvasSize.height&&t.direction==="bottom"&&(t.particle.position.y=t.canvasSize.height-t.size-t.offset.y);const e=t.particle.velocity.y;let n=!1;if(t.direction==="bottom"&&t.bounds.bottom>=t.canvasSize.height&&e>0||t.direction==="top"&&t.bounds.top<=0&&e<0){const r=Bi(t.particle.options.bounce.vertical);t.particle.velocity.y*=-r,n=!0}if(!n)return;const i=t.offset.y+t.size;t.bounds.bottom>=t.canvasSize.height&&t.direction==="bottom"?t.particle.position.y=t.canvasSize.height-i:t.bounds.top<=0&&t.direction==="top"&&(t.particle.position.y=i),t.outMode==="split"&&t.particle.destroy()}class _6{constructor(e){this.container=e,this.modes=["bounce","bounce-vertical","bounce-horizontal","bounceVertical","bounceHorizontal","split"]}update(e,n,i,r){if(!this.modes.includes(r))return;const s=this.container;let o=!1;for(const[,d]of s.plugins)if(d.particleBounce!==void 0&&(o=d.particleBounce(e,i,n)),o)break;if(o)return;const a=e.getPosition(),l=e.offset,u=e.getRadius(),c=mo(a,u),f=s.canvas.size;C6({particle:e,outMode:r,direction:n,bounds:c,canvasSize:f,offset:l,size:u}),b6({particle:e,outMode:r,direction:n,bounds:c,canvasSize:f,offset:l,size:u})}}class E6{constructor(e){this.container=e,this.modes=["destroy"]}update(e,n,i,r){if(!this.modes.includes(r))return;const s=this.container;switch(e.outType){case"normal":case"outside":if(Bf(e.position,s.canvas.size,Re.origin,e.getRadius(),n))return;break;case"inside":{const{dx:o,dy:a}=Ze(e.position,e.moveCenter),{x:l,y:u}=e.velocity;if(l<0&&o>e.moveCenter.radius||u<0&&a>e.moveCenter.radius||l>=0&&o<-e.moveCenter.radius||u>=0&&a<-e.moveCenter.radius)return;break}}s.particles.remove(e,void 0,!0)}}class P6{constructor(e){this.container=e,this.modes=["none"]}update(e,n,i,r){if(!this.modes.includes(r)||e.options.move.distance.horizontal&&(n==="left"||n==="right")||e.options.move.distance.vertical&&(n==="top"||n==="bottom"))return;const s=e.options.move.gravity,o=this.container,a=o.canvas.size,l=e.getRadius();if(s.enable){const u=e.position;(!s.inverse&&u.y>a.height+l&&n==="bottom"||s.inverse&&u.y<-l&&n==="top")&&o.particles.remove(e)}else{if(e.velocity.y>0&&e.position.y<=a.height+l||e.velocity.y<0&&e.position.y>=-l||e.velocity.x>0&&e.position.x<=a.width+l||e.velocity.x<0&&e.position.x>=-l)return;Bf(e.position,o.canvas.size,Re.origin,l,n)||o.particles.remove(e)}}}class O6{constructor(e){this.container=e,this.modes=["out"]}update(e,n,i,r){if(!this.modes.includes(r))return;const s=this.container;switch(e.outType){case"inside":{const{x:o,y:a}=e.velocity,l=Re.origin;l.length=e.moveCenter.radius,l.angle=e.velocity.angle+Math.PI,l.addTo(Re.create(e.moveCenter));const{dx:u,dy:c}=Ze(e.position,l);if(o<=0&&u>=0||a<=0&&c>=0||o>=0&&u<=0||a>=0&&c<=0)return;e.position.x=Math.floor(ot({min:0,max:s.canvas.size.width})),e.position.y=Math.floor(ot({min:0,max:s.canvas.size.height}));const{dx:f,dy:d}=Ze(e.position,e.moveCenter);e.direction=Math.atan2(-d,-f),e.velocity.angle=e.direction;break}default:{if(Bf(e.position,s.canvas.size,Re.origin,e.getRadius(),n))return;switch(e.outType){case"outside":{e.position.x=Math.floor(ot({min:-e.moveCenter.radius,max:e.moveCenter.radius}))+e.moveCenter.x,e.position.y=Math.floor(ot({min:-e.moveCenter.radius,max:e.moveCenter.radius}))+e.moveCenter.y;const{dx:o,dy:a}=Ze(e.position,e.moveCenter);e.moveCenter.radius&&(e.direction=Math.atan2(a,o),e.velocity.angle=e.direction);break}case"normal":{const o=e.options.move.warp,a=s.canvas.size,l={bottom:a.height+e.getRadius()+e.offset.y,left:-e.getRadius()-e.offset.x,right:a.width+e.getRadius()+e.offset.x,top:-e.getRadius()-e.offset.y},u=e.getRadius(),c=mo(e.position,u);n==="right"&&c.left>a.width+e.offset.x?(e.position.x=l.left,e.initialPosition.x=e.position.x,o||(e.position.y=ae()*a.height,e.initialPosition.y=e.position.y)):n==="left"&&c.right<-e.offset.x&&(e.position.x=l.right,e.initialPosition.x=e.position.x,o||(e.position.y=ae()*a.height,e.initialPosition.y=e.position.y)),n==="bottom"&&c.top>a.height+e.offset.y?(o||(e.position.x=ae()*a.width,e.initialPosition.x=e.position.x),e.position.y=l.top,e.initialPosition.y=e.position.y):n==="top"&&c.bottom<-e.offset.y&&(o||(e.position.x=ae()*a.width,e.initialPosition.x=e.position.x),e.position.y=l.bottom,e.initialPosition.y=e.position.y);break}}break}}}}class M6{constructor(e){this.container=e,this._updateOutMode=(n,i,r,s)=>{for(const o of this.updaters)o.update(n,s,i,r)},this.updaters=[new _6(e),new E6(e),new O6(e),new P6(e)]}init(){}isEnabled(e){return!e.destroyed&&!e.spawning}update(e,n){const i=e.options.move.outModes;this._updateOutMode(e,n,i.bottom??i.default,"bottom"),this._updateOutMode(e,n,i.left??i.default,"left"),this._updateOutMode(e,n,i.right??i.default,"right"),this._updateOutMode(e,n,i.top??i.default,"top")}}async function z6(t,e=!0){await t.addParticleUpdater("outModes",n=>new M6(n),e)}function R6(t,e,n,i){switch(t.options.size.animation.destroy){case"max":e>=i&&t.destroy();break;case"min":e<=n&&t.destroy();break}}function T6(t,e){const n=t.size;if(t.destroyed||!n||!n.enable||(n.maxLoops??0)>0&&(n.loops??0)>(n.maxLoops??0))return;const i=(n.velocity??0)*e.factor,r=n.min,s=n.max,o=n.decay??1;if(n.time||(n.time=0),(n.delayTime??0)>0&&n.time<(n.delayTime??0)&&(n.time+=e.value),!((n.delayTime??0)>0&&n.time<(n.delayTime??0))){switch(n.status){case"increasing":n.value>=s?(n.status="decreasing",n.loops||(n.loops=0),n.loops++):n.value+=i;break;case"decreasing":n.value<=r?(n.status="increasing",n.loops||(n.loops=0),n.loops++):n.value-=i}n.velocity&&o!==1&&(n.velocity*=o),R6(t,n.value,r,s),t.destroyed||(n.value=Jt(n.value,r,s))}}class I6{init(e){const n=e.container,i=e.options.size,r=i.animation;r.enable&&(e.size.velocity=(e.retina.sizeAnimationSpeed??n.retina.sizeAnimationSpeed)/100*n.retina.reduceFactor,r.sync||(e.size.velocity*=ae()))}isEnabled(e){return!e.destroyed&&!e.spawning&&e.size.enable&&((e.size.maxLoops??0)<=0||(e.size.maxLoops??0)>0&&(e.size.loops??0)<(e.size.maxLoops??0))}reset(e){e.size.loops=0}update(e,n){this.isEnabled(e)&&T6(e,n)}}async function D6(t,e=!0){await t.addParticleUpdater("size",()=>new I6,e)}async function L6(t,e=!0){await h6(t,!1),await m6(t,!1),await v6(t,!1),await S6(t,!1),await z6(t,!1),await D6(t,!1),await t.refresh(e)}async function A6(){eu("ease-in-quad",t=>t**2),eu("ease-out-quad",t=>1-(1-t)**2),eu("ease-in-out-quad",t=>t<.5?2*t**2:1-(-2*t+2)**2/2)}class F6{constructor(){this.distance=200,this.duration=.4,this.easing="ease-out-quad",this.factor=1,this.maxSpeed=50,this.speed=1}load(e){e&&(e.distance!==void 0&&(this.distance=e.distance),e.duration!==void 0&&(this.duration=e.duration),e.easing!==void 0&&(this.easing=e.easing),e.factor!==void 0&&(this.factor=e.factor),e.maxSpeed!==void 0&&(this.maxSpeed=e.maxSpeed),e.speed!==void 0&&(this.speed=e.speed))}}let N6=class extends hn{constructor(e,n){super(n),this._clickAttract=()=>{const i=this.container;i.attract||(i.attract={particles:[]});const{attract:r}=i;if(r.finish||(r.count||(r.count=0),r.count++,r.count===i.particles.count&&(r.finish=!0)),r.clicking){const s=i.interactivity.mouse.clickPosition,o=i.retina.attractModeDistance;if(!o||o<0||!s)return;this._processAttract(s,o,new Ge(s.x,s.y,o))}else r.clicking===!1&&(r.particles=[])},this._hoverAttract=()=>{const i=this.container,r=i.interactivity.mouse.position,s=i.retina.attractModeDistance;!s||s<0||!r||this._processAttract(r,s,new Ge(r.x,r.y,s))},this._processAttract=(i,r,s)=>{const o=this.container,a=o.actualOptions.interactivity.modes.attract;if(!a)return;const l=o.particles.quadTree.query(s,u=>this.isEnabled(u));for(const u of l){const{dx:c,dy:f,distance:d}=Ze(u.position,i),h=a.speed*a.factor,g=Jt(sm(a.easing)(1-d/r)*h,0,a.maxSpeed),v=Re.create(d===0?h:c/d*g,d===0?h:f/d*g);u.position.subFrom(v)}},this._engine=e,n.attract||(n.attract={particles:[]}),this.handleClickMode=i=>{const r=this.container.actualOptions,s=r.interactivity.modes.attract;if(!(!s||i!=="attract")){n.attract||(n.attract={particles:[]}),n.attract.clicking=!0,n.attract.count=0;for(const o of n.attract.particles)this.isEnabled(o)&&o.velocity.setTo(o.initialVelocity);n.attract.particles=[],n.attract.finish=!1,setTimeout(()=>{n.destroyed||(n.attract||(n.attract={particles:[]}),n.attract.clicking=!1)},s.duration*1e3)}}}clear(){}init(){const e=this.container,n=e.actualOptions.interactivity.modes.attract;n&&(e.retina.attractModeDistance=n.distance*e.retina.pixelRatio)}async interact(){const e=this.container,n=e.actualOptions,i=e.interactivity.status===ji,r=n.interactivity.events,s=r.onHover.enable,o=r.onHover.mode,a=r.onClick.enable,l=r.onClick.mode;i&&s&&ge("attract",o)?this._hoverAttract():a&&ge("attract",l)&&this._clickAttract()}isEnabled(e){const n=this.container,i=n.actualOptions,r=n.interactivity.mouse,s=((e==null?void 0:e.interactivity)??i.interactivity).events;if((!r.position||!s.onHover.enable)&&(!r.clickPosition||!s.onClick.enable))return!1;const o=s.onHover.mode,a=s.onClick.mode;return ge("attract",o)||ge("attract",a)}loadModeOptions(e,...n){e.attract||(e.attract=new F6);for(const i of n)e.attract.load(i==null?void 0:i.attract)}reset(){}};async function $6(t,e=!0){await t.addInteractor("externalAttract",n=>new N6(t,n),e)}class j6{constructor(){this.distance=200}load(e){e&&e.distance!==void 0&&(this.distance=e.distance)}}class B6 extends hn{constructor(e){super(e),this._processBounce=(n,i,r)=>{const s=this.container.particles.quadTree.query(r,o=>this.isEnabled(o));for(const o of s)r instanceof Ge?um(Ic(o),{position:n,radius:i,mass:i**2*Math.PI/2,velocity:Re.origin,factor:Re.origin}):r instanceof en&&F5(o,mo(n,i))},this._processMouseBounce=()=>{const n=this.container,i=n.retina.pixelRatio,r=10*i,s=n.interactivity.mouse.position,o=n.retina.bounceModeDistance;!o||o<0||!s||this._processBounce(s,o,new Ge(s.x,s.y,o+r))},this._singleSelectorBounce=(n,i)=>{const r=this.container,s=document.querySelectorAll(n);s.length&&s.forEach(o=>{const a=o,l=r.retina.pixelRatio,u={x:(a.offsetLeft+a.offsetWidth/2)*l,y:(a.offsetTop+a.offsetHeight/2)*l},c=a.offsetWidth/2*l,f=10*l,d=i.type==="circle"?new Ge(u.x,u.y,c+f):new en(a.offsetLeft*l-f,a.offsetTop*l-f,a.offsetWidth*l+f*2,a.offsetHeight*l+f*2);this._processBounce(u,c,d)})}}clear(){}init(){const e=this.container,n=e.actualOptions.interactivity.modes.bounce;n&&(e.retina.bounceModeDistance=n.distance*e.retina.pixelRatio)}async interact(){const e=this.container,n=e.actualOptions,i=n.interactivity.events,r=e.interactivity.status===ji,s=i.onHover.enable,o=i.onHover.mode,a=i.onDiv;r&&s&&ge("bounce",o)?this._processMouseBounce():Hf("bounce",a,(l,u)=>this._singleSelectorBounce(l,u))}isEnabled(e){const n=this.container,i=n.actualOptions,r=n.interactivity.mouse,s=((e==null?void 0:e.interactivity)??i.interactivity).events,o=s.onDiv;return r.position&&s.onHover.enable&&ge("bounce",s.onHover.mode)||Uf("bounce",o)}loadModeOptions(e,...n){e.bounce||(e.bounce=new j6);for(const i of n)e.bounce.load(i==null?void 0:i.bounce)}reset(){}}async function U6(t,e=!0){await t.addInteractor("externalBounce",n=>new B6(n),e)}class Mm{constructor(){this.distance=200,this.duration=.4,this.mix=!1}load(e){if(e){if(e.distance!==void 0&&(this.distance=e.distance),e.duration!==void 0&&(this.duration=e.duration),e.mix!==void 0&&(this.mix=e.mix),e.opacity!==void 0&&(this.opacity=e.opacity),e.color!==void 0){const n=vt(this.color)?void 0:this.color;this.color=Te(e.color,i=>Ne.create(n,i))}e.size!==void 0&&(this.size=e.size)}}}class H6 extends Mm{constructor(){super(),this.selectors=[]}get ids(){return Te(this.selectors,e=>e.replace("#",""))}set ids(e){this.selectors=Te(e,n=>`#${n}`)}load(e){super.load(e),e&&(e.ids!==void 0&&(this.ids=e.ids),e.selectors!==void 0&&(this.selectors=e.selectors))}}class G6 extends Mm{load(e){super.load(e),e&&(this.divs=Te(e.divs,n=>{const i=new H6;return i.load(n),i}))}}function Wh(t,e,n,i){if(e>=n){const r=t+(e-n)*i;return Jt(r,t,e)}else if(e{var u;const n=this.container,i=n.actualOptions,r=n.interactivity.mouse.clickPosition,s=i.interactivity.modes.bubble;if(!s||!r)return;n.bubble||(n.bubble={});const o=n.retina.bubbleModeDistance;if(!o||o<0)return;const a=n.particles.quadTree.queryCircle(r,o,c=>this.isEnabled(c)),{bubble:l}=n;for(const c of a){if(!l.clicking)continue;c.bubble.inRange=!l.durationEnd;const f=c.getPosition(),d=gt(f,r),h=(new Date().getTime()-(n.interactivity.mouse.clickTime||0))/1e3;h>s.duration&&(l.durationEnd=!0),h>s.duration*2&&(l.clicking=!1,l.durationEnd=!1);const g={bubbleObj:{optValue:n.retina.bubbleModeSize,value:c.bubble.radius},particlesObj:{optValue:Kn(c.options.size.value)*n.retina.pixelRatio,value:c.size.value},type:"size"};this._process(c,d,h,g);const v={bubbleObj:{optValue:s.opacity,value:c.bubble.opacity},particlesObj:{optValue:Kn(c.options.opacity.value),value:((u=c.opacity)==null?void 0:u.value)??1},type:"opacity"};this._process(c,d,h,v),!l.durationEnd&&d<=o?this._hoverBubbleColor(c,d):delete c.bubble.color}},this._hoverBubble=()=>{const n=this.container,i=n.interactivity.mouse.position,r=n.retina.bubbleModeDistance;if(!r||r<0||i===void 0)return;const s=n.particles.quadTree.queryCircle(i,r,o=>this.isEnabled(o));for(const o of s){o.bubble.inRange=!0;const a=o.getPosition(),l=gt(a,i),u=1-l/r;l<=r?u>=0&&n.interactivity.status===ji&&(this._hoverBubbleSize(o,u),this._hoverBubbleOpacity(o,u),this._hoverBubbleColor(o,u)):this.reset(o),n.interactivity.status===Rc&&this.reset(o)}},this._hoverBubbleColor=(n,i,r)=>{const s=this.container.actualOptions,o=r??s.interactivity.modes.bubble;if(o){if(!n.bubble.finalColor){const a=o.color;if(!a)return;const l=bn(a);n.bubble.finalColor=qs(l)}if(n.bubble.finalColor)if(o.mix){n.bubble.color=void 0;const a=n.getFillColor();n.bubble.color=a?mm(Gf(a,n.bubble.finalColor,1-i,i)):n.bubble.finalColor}else n.bubble.color=n.bubble.finalColor}},this._hoverBubbleOpacity=(n,i,r)=>{var f,d;const s=this.container,o=s.actualOptions,a=(r==null?void 0:r.opacity)??((f=o.interactivity.modes.bubble)==null?void 0:f.opacity);if(!a)return;const l=n.options.opacity.value,u=((d=n.opacity)==null?void 0:d.value)??1,c=Wh(u,a,Kn(l),i);c!==void 0&&(n.bubble.opacity=c)},this._hoverBubbleSize=(n,i,r)=>{const s=this.container,o=r!=null&&r.size?r.size*s.retina.pixelRatio:s.retina.bubbleModeSize;if(o===void 0)return;const a=Kn(n.options.size.value)*s.retina.pixelRatio,l=n.size.value,u=Wh(l,o,a,i);u!==void 0&&(n.bubble.radius=u)},this._process=(n,i,r,s)=>{const o=this.container,a=s.bubbleObj.optValue,l=o.actualOptions,u=l.interactivity.modes.bubble;if(!u||a===void 0)return;const c=u.duration,f=o.retina.bubbleModeDistance,d=s.particlesObj.optValue,h=s.bubbleObj.value,g=s.particlesObj.value||0,v=s.type;if(!(!f||f<0||a===d))if(o.bubble||(o.bubble={}),o.bubble.durationEnd)h&&(v==="size"&&delete n.bubble.radius,v==="opacity"&&delete n.bubble.opacity);else if(i<=f){if((h??g)!==a){const p=g-r*(g-a)/c;v==="size"&&(n.bubble.radius=p),v==="opacity"&&(n.bubble.opacity=p)}}else v==="size"&&delete n.bubble.radius,v==="opacity"&&delete n.bubble.opacity},this._singleSelectorHover=(n,i,r)=>{const s=this.container,o=document.querySelectorAll(i),a=s.actualOptions.interactivity.modes.bubble;!a||!o.length||o.forEach(l=>{const u=l,c=s.retina.pixelRatio,f={x:(u.offsetLeft+u.offsetWidth/2)*c,y:(u.offsetTop+u.offsetHeight/2)*c},d=u.offsetWidth/2*c,h=r.type==="circle"?new Ge(f.x,f.y,d):new en(u.offsetLeft*c,u.offsetTop*c,u.offsetWidth*c,u.offsetHeight*c),g=s.particles.quadTree.query(h,v=>this.isEnabled(v));for(const v of g){if(!h.contains(v.getPosition()))continue;v.bubble.inRange=!0;const k=a.divs,p=lm(k,u);(!v.bubble.div||v.bubble.div!==u)&&(this.clear(v,n,!0),v.bubble.div=u),this._hoverBubbleSize(v,1,p),this._hoverBubbleOpacity(v,1,p),this._hoverBubbleColor(v,1,p)}})},e.bubble||(e.bubble={}),this.handleClickMode=n=>{n==="bubble"&&(e.bubble||(e.bubble={}),e.bubble.clicking=!0)}}clear(e,n,i){e.bubble.inRange&&!i||(delete e.bubble.div,delete e.bubble.opacity,delete e.bubble.radius,delete e.bubble.color)}init(){const e=this.container,n=e.actualOptions.interactivity.modes.bubble;n&&(e.retina.bubbleModeDistance=n.distance*e.retina.pixelRatio,n.size!==void 0&&(e.retina.bubbleModeSize=n.size*e.retina.pixelRatio))}async interact(e){const n=this.container.actualOptions,i=n.interactivity.events,r=i.onHover,s=i.onClick,o=r.enable,a=r.mode,l=s.enable,u=s.mode,c=i.onDiv;o&&ge("bubble",a)?this._hoverBubble():l&&ge("bubble",u)?this._clickBubble():Hf("bubble",c,(f,d)=>this._singleSelectorHover(e,f,d))}isEnabled(e){const n=this.container,i=n.actualOptions,r=n.interactivity.mouse,s=((e==null?void 0:e.interactivity)??i.interactivity).events,{onClick:o,onDiv:a,onHover:l}=s,u=Uf("bubble",a);return u||l.enable&&r.position||o.enable&&r.clickPosition?ge("bubble",l.mode)||ge("bubble",o.mode)||u:!1}loadModeOptions(e,...n){e.bubble||(e.bubble=new G6);for(const i of n)e.bubble.load(i==null?void 0:i.bubble)}reset(e){e.bubble.inRange=!1}}async function q6(t,e=!0){await t.addInteractor("externalBubble",n=>new W6(n),e)}class Q6{constructor(){this.opacity=.5}load(e){e&&e.opacity!==void 0&&(this.opacity=e.opacity)}}class V6{constructor(){this.distance=80,this.links=new Q6,this.radius=60}get lineLinked(){return this.links}set lineLinked(e){this.links=e}get line_linked(){return this.links}set line_linked(e){this.links=e}load(e){e&&(e.distance!==void 0&&(this.distance=e.distance),this.links.load(e.links??e.lineLinked??e.line_linked),e.radius!==void 0&&(this.radius=e.radius))}}function K6(t,e,n,i){const r=Math.floor(n.getRadius()/e.getRadius()),s=e.getFillColor(),o=n.getFillColor();if(!s||!o)return;const a=e.getPosition(),l=n.getPosition(),u=Gf(s,o,e.getRadius(),n.getRadius()),c=t.createLinearGradient(a.x,a.y,l.x,l.y);return c.addColorStop(0,Qs(s,i)),c.addColorStop(r>1?1:r,_n(u,i)),c.addColorStop(1,Qs(o,i)),c}function Y6(t,e,n,i,r){_s(t,i,r),t.lineWidth=e,t.strokeStyle=n,t.stroke()}function X6(t,e,n,i){const r=t.actualOptions,s=r.interactivity.modes.connect;if(s)return K6(e,n,i,s.links.opacity)}function Z6(t,e,n){t.canvas.draw(i=>{const r=X6(t,i,e,n);if(!r)return;const s=e.getPosition(),o=n.getPosition();Y6(i,e.retina.linksWidth??0,r,s,o)})}class J6 extends hn{constructor(e){super(e)}clear(){}init(){const e=this.container,n=e.actualOptions.interactivity.modes.connect;n&&(e.retina.connectModeDistance=n.distance*e.retina.pixelRatio,e.retina.connectModeRadius=n.radius*e.retina.pixelRatio)}async interact(){const e=this.container;if(e.actualOptions.interactivity.events.onHover.enable&&e.interactivity.status==="pointermove"){const i=e.interactivity.mouse.position;if(!e.retina.connectModeDistance||e.retina.connectModeDistance<0||!e.retina.connectModeRadius||e.retina.connectModeRadius<0||!i)return;const r=Math.abs(e.retina.connectModeRadius),s=e.particles.quadTree.queryCircle(i,r,a=>this.isEnabled(a));let o=0;for(const a of s){const l=a.getPosition();for(const u of s.slice(o+1)){const c=u.getPosition(),f=Math.abs(e.retina.connectModeDistance),d=Math.abs(l.x-c.x),h=Math.abs(l.y-c.y);dnew J6(n),e)}class t8{constructor(){this.blink=!1,this.consent=!1,this.opacity=1}load(e){e&&(e.blink!==void 0&&(this.blink=e.blink),e.color!==void 0&&(this.color=Ne.create(this.color,e.color)),e.consent!==void 0&&(this.consent=e.consent),e.opacity!==void 0&&(this.opacity=e.opacity))}}class n8{constructor(){this.distance=100,this.links=new t8}get lineLinked(){return this.links}set lineLinked(e){this.links=e}get line_linked(){return this.links}set line_linked(e){this.links=e}load(e){e&&(e.distance!==void 0&&(this.distance=e.distance),this.links.load(e.links??e.lineLinked??e.line_linked))}}function i8(t,e,n,i,r,s){_s(t,n,i),t.strokeStyle=_n(r,s),t.lineWidth=e,t.stroke()}function r8(t,e,n,i,r){t.canvas.draw(s=>{const o=e.getPosition();i8(s,e.retina.linksWidth??0,o,r,n,i)})}class s8 extends hn{constructor(e){super(e)}clear(){}init(){const e=this.container,n=e.actualOptions.interactivity.modes.grab;n&&(e.retina.grabModeDistance=n.distance*e.retina.pixelRatio)}async interact(){var a;const e=this.container,n=e.actualOptions,i=n.interactivity;if(!i.modes.grab||!i.events.onHover.enable||e.interactivity.status!==ji)return;const r=e.interactivity.mouse.position;if(!r)return;const s=e.retina.grabModeDistance;if(!s||s<0)return;const o=e.particles.quadTree.queryCircle(r,s,l=>this.isEnabled(l));for(const l of o){const u=l.getPosition(),c=gt(u,r);if(c>s)continue;const f=i.modes.grab.links,d=f.opacity,h=d-c*d/s;if(h<=0)continue;const g=f.color??((a=l.options.links)==null?void 0:a.color);if(!e.particles.grabLineColor&&g){const k=i.modes.grab.links;e.particles.grabLineColor=gm(g,k.blink,k.consent)}const v=Dc(l,void 0,e.particles.grabLineColor);v&&r8(e,l,v,h,r)}}isEnabled(e){const n=this.container,i=n.interactivity.mouse,r=((e==null?void 0:e.interactivity)??n.actualOptions.interactivity).events;return r.onHover.enable&&!!i.position&&ge("grab",r.onHover.mode)}loadModeOptions(e,...n){e.grab||(e.grab=new n8);for(const i of n)e.grab.load(i==null?void 0:i.grab)}reset(){}}async function o8(t,e=!0){await t.addInteractor("externalGrab",n=>new s8(n),e)}class a8 extends hn{constructor(e){super(e),this.handleClickMode=n=>{if(n!=="pause")return;const i=this.container;i.getAnimationStatus()?i.pause():i.play()}}clear(){}init(){}async interact(){}isEnabled(){return!0}reset(){}}async function l8(t,e=!0){await t.addInteractor("externalPause",n=>new a8(n),e)}class u8{constructor(){this.default=!0,this.groups=[],this.quantity=4}get particles_nb(){return this.quantity}set particles_nb(e){this.quantity=G(e)}load(e){if(!e)return;e.default!==void 0&&(this.default=e.default),e.groups!==void 0&&(this.groups=e.groups.map(i=>i)),this.groups.length||(this.default=!0);const n=e.quantity??e.particles_nb;n!==void 0&&(this.quantity=G(n))}}class c8 extends hn{constructor(e){super(e),this.handleClickMode=n=>{if(n!=="push")return;const i=this.container,r=i.actualOptions,s=r.interactivity.modes.push;if(!s)return;const o=F(s.quantity);if(o<=0)return;const a=fl([void 0,...s.groups]),l=a!==void 0?i.actualOptions.particles.groups[a]:void 0;i.particles.push(o,i.interactivity.mouse,l,a)}}clear(){}init(){}async interact(){}isEnabled(){return!0}loadModeOptions(e,...n){e.push||(e.push=new u8);for(const i of n)e.push.load(i==null?void 0:i.push)}reset(){}}async function f8(t,e=!0){await t.addInteractor("externalPush",n=>new c8(n),e)}class d8{constructor(){this.quantity=2}get particles_nb(){return this.quantity}set particles_nb(e){this.quantity=G(e)}load(e){if(!e)return;const n=e.quantity??e.particles_nb;n!==void 0&&(this.quantity=G(n))}}class h8 extends hn{constructor(e){super(e),this.handleClickMode=n=>{const i=this.container,r=i.actualOptions;if(!r.interactivity.modes.remove||n!=="remove")return;const s=F(r.interactivity.modes.remove.quantity);i.particles.removeQuantity(s)}}clear(){}init(){}async interact(){}isEnabled(){return!0}loadModeOptions(e,...n){e.remove||(e.remove=new d8);for(const i of n)e.remove.load(i==null?void 0:i.remove)}reset(){}}async function p8(t,e=!0){await t.addInteractor("externalRemove",n=>new h8(n),e)}class zm{constructor(){this.distance=200,this.duration=.4,this.factor=100,this.speed=1,this.maxSpeed=50,this.easing="ease-out-quad"}load(e){e&&(e.distance!==void 0&&(this.distance=e.distance),e.duration!==void 0&&(this.duration=e.duration),e.easing!==void 0&&(this.easing=e.easing),e.factor!==void 0&&(this.factor=e.factor),e.speed!==void 0&&(this.speed=e.speed),e.maxSpeed!==void 0&&(this.maxSpeed=e.maxSpeed))}}class m8 extends zm{constructor(){super(),this.selectors=[]}get ids(){return Te(this.selectors,e=>e.replace("#",""))}set ids(e){this.selectors=Te(e,n=>`#${n}`)}load(e){super.load(e),e&&(e.ids!==void 0&&(this.ids=e.ids),e.selectors!==void 0&&(this.selectors=e.selectors))}}class y8 extends zm{load(e){super.load(e),e&&(this.divs=Te(e.divs,n=>{const i=new m8;return i.load(n),i}))}}class g8 extends hn{constructor(e,n){super(n),this._clickRepulse=()=>{const i=this.container,r=i.actualOptions.interactivity.modes.repulse;if(!r)return;const s=i.repulse||{particles:[]};if(s.finish||(s.count||(s.count=0),s.count++,s.count===i.particles.count&&(s.finish=!0)),s.clicking){const o=i.retina.repulseModeDistance;if(!o||o<0)return;const a=Math.pow(o/6,3),l=i.interactivity.mouse.clickPosition;if(l===void 0)return;const u=new Ge(l.x,l.y,a),c=i.particles.quadTree.query(u,f=>this.isEnabled(f));for(const f of c){const{dx:d,dy:h,distance:g}=Ze(l,f.position),v=g**2,k=r.speed,p=-a*k/v;if(v<=a){s.particles.push(f);const m=Re.create(d,h);m.length=p,f.velocity.setTo(m)}}}else if(s.clicking===!1){for(const o of s.particles)o.velocity.setTo(o.initialVelocity);s.particles=[]}},this._hoverRepulse=()=>{const i=this.container,r=i.interactivity.mouse.position,s=i.retina.repulseModeDistance;!s||s<0||!r||this._processRepulse(r,s,new Ge(r.x,r.y,s))},this._processRepulse=(i,r,s,o)=>{const a=this.container,l=a.particles.quadTree.query(s,c=>this.isEnabled(c)),u=a.actualOptions.interactivity.modes.repulse;if(u)for(const c of l){const{dx:f,dy:d,distance:h}=Ze(c.position,i),g=((o==null?void 0:o.speed)??u.speed)*u.factor,v=Jt(sm(u.easing)(1-h/r)*g,0,u.maxSpeed),k=Re.create(h===0?g:f/h*v,h===0?g:d/h*v);c.position.addTo(k)}},this._singleSelectorRepulse=(i,r)=>{const s=this.container,o=s.actualOptions.interactivity.modes.repulse;if(!o)return;const a=document.querySelectorAll(i);a.length&&a.forEach(l=>{const u=l,c=s.retina.pixelRatio,f={x:(u.offsetLeft+u.offsetWidth/2)*c,y:(u.offsetTop+u.offsetHeight/2)*c},d=u.offsetWidth/2*c,h=r.type==="circle"?new Ge(f.x,f.y,d):new en(u.offsetLeft*c,u.offsetTop*c,u.offsetWidth*c,u.offsetHeight*c),g=o.divs,v=lm(g,u);this._processRepulse(f,d,h,v)})},this._engine=e,n.repulse||(n.repulse={particles:[]}),this.handleClickMode=i=>{const r=this.container.actualOptions,s=r.interactivity.modes.repulse;if(!s||i!=="repulse")return;n.repulse||(n.repulse={particles:[]});const o=n.repulse;o.clicking=!0,o.count=0;for(const a of n.repulse.particles)this.isEnabled(a)&&a.velocity.setTo(a.initialVelocity);o.particles=[],o.finish=!1,setTimeout(()=>{n.destroyed||(o.clicking=!1)},s.duration*1e3)}}clear(){}init(){const e=this.container,n=e.actualOptions.interactivity.modes.repulse;n&&(e.retina.repulseModeDistance=n.distance*e.retina.pixelRatio)}async interact(){const e=this.container,n=e.actualOptions,i=e.interactivity.status===ji,r=n.interactivity.events,s=r.onHover,o=s.enable,a=s.mode,l=r.onClick,u=l.enable,c=l.mode,f=r.onDiv;i&&o&&ge("repulse",a)?this._hoverRepulse():u&&ge("repulse",c)?this._clickRepulse():Hf("repulse",f,(d,h)=>this._singleSelectorRepulse(d,h))}isEnabled(e){const n=this.container,i=n.actualOptions,r=n.interactivity.mouse,s=((e==null?void 0:e.interactivity)??i.interactivity).events,o=s.onDiv,a=s.onHover,l=s.onClick,u=Uf("repulse",o);if(!(u||a.enable&&r.position||l.enable&&r.clickPosition))return!1;const c=a.mode,f=l.mode;return ge("repulse",c)||ge("repulse",f)||u}loadModeOptions(e,...n){e.repulse||(e.repulse=new y8);for(const i of n)e.repulse.load(i==null?void 0:i.repulse)}reset(){}}async function v8(t,e=!0){await t.addInteractor("externalRepulse",n=>new g8(t,n),e)}class w8{constructor(){this.factor=3,this.radius=200}load(e){e&&(e.factor!==void 0&&(this.factor=e.factor),e.radius!==void 0&&(this.radius=e.radius))}}class x8 extends hn{constructor(e){super(e)}clear(e,n,i){e.slow.inRange&&!i||(e.slow.factor=1)}init(){const e=this.container,n=e.actualOptions.interactivity.modes.slow;n&&(e.retina.slowModeRadius=n.radius*e.retina.pixelRatio)}async interact(){}isEnabled(e){const n=this.container,i=n.interactivity.mouse,r=((e==null?void 0:e.interactivity)??n.actualOptions.interactivity).events;return r.onHover.enable&&!!i.position&&ge("slow",r.onHover.mode)}loadModeOptions(e,...n){e.slow||(e.slow=new w8);for(const i of n)e.slow.load(i==null?void 0:i.slow)}reset(e){e.slow.inRange=!1;const n=this.container,i=n.actualOptions,r=n.interactivity.mouse.position,s=n.retina.slowModeRadius,o=i.interactivity.modes.slow;if(!o||!s||s<0||!r)return;const a=e.getPosition(),l=gt(r,a),u=l/s,c=o.factor,{slow:f}=e;l>s||(f.inRange=!0,f.factor=u/c)}}async function k8(t,e=!0){await t.addInteractor("externalSlow",n=>new x8(n),e)}const pu=[0,4,2,1],qh=[8,8,4,2];class S8{constructor(e){this.pos=0,this.data=new Uint8ClampedArray(e)}getString(e){const n=this.data.slice(this.pos,this.pos+e);return this.pos+=n.length,n.reduce((i,r)=>i+String.fromCharCode(r),"")}nextByte(){return this.data[this.pos++]}nextTwoBytes(){return this.pos+=2,this.data[this.pos-2]+(this.data[this.pos-1]<<8)}readSubBlocks(){let e="",n=0;do{n=this.data[this.pos++];for(let i=n;--i>=0;e+=String.fromCharCode(this.data[this.pos++]));}while(n!==0);return e}readSubBlocksBin(){let e=0,n=0;for(let r=0;(e=this.data[this.pos+r])!==0;r+=e+1)n+=e;const i=new Uint8Array(n);for(let r=0;(e=this.data[this.pos++])!==0;)for(let s=e;--s>=0;i[r++]=this.data[this.pos++]);return i}skipSubBlocks(){for(;this.data[this.pos]!==0;this.pos+=this.data[this.pos]+1);this.pos++}}function Rm(t,e){const n=[];for(let i=0;i>>5,r.disposalMethod=(s&28)>>>2,r.userInputDelayFlag=(s&2)===2;const o=(s&1)===1;r.delayTime=t.nextTwoBytes()*10;const a=t.nextByte();o&&i(a),t.pos++;break}case 255:{t.pos++;const r={identifier:t.getString(8),authenticationCode:t.getString(3),data:t.readSubBlocksBin()};e.applicationExtensions.push(r);break}case 254:{e.comments.push([n(!1),t.readSubBlocks()]);break}case 1:{if(e.globalColorTable.length===0)throw new EvalError("plain text extension without global color table");t.pos++,e.frames[n(!1)].plainTextData={left:t.nextTwoBytes(),top:t.nextTwoBytes(),width:t.nextTwoBytes(),height:t.nextTwoBytes(),charSize:{width:t.nextTwoBytes(),height:t.nextTwoBytes()},foregroundColor:t.nextByte(),backgroundColor:t.nextByte(),text:t.readSubBlocks()};break}default:t.skipSubBlocks();break}}async function b8(t,e,n,i,r,s){const o=e.frames[i(!0)];o.left=t.nextTwoBytes(),o.top=t.nextTwoBytes(),o.width=t.nextTwoBytes(),o.height=t.nextTwoBytes();const a=t.nextByte(),l=(a&128)===128,u=(a&64)===64;o.sortFlag=(a&32)===32,o.reserved=(a&24)>>>3;const c=1<<(a&7)+1;l&&(o.localColorTable=Rm(t,c));const f=p=>{const{r:m,g:y,b:w}=(l?o.localColorTable:e.globalColorTable)[p];return{r:m,g:y,b:w,a:p===r(null)?n?~~((m+y+w)/3):0:255}},d=(()=>{try{return new ImageData(o.width,o.height,{colorSpace:"srgb"})}catch(p){if(p instanceof DOMException&&p.name==="IndexSizeError")return null;throw p}})();if(d==null)throw new EvalError("GIF frame size is to large");const h=t.nextByte(),g=t.readSubBlocksBin(),v=1<{const y=p>>>3,w=p&7;return(g[y]+(g[y+1]<<8)+(g[y+2]<<16)&(1<>>w};if(u){for(let p=0,m=h+1,y=0,w=[[0]],S=0;S<4;S++){if(pu[S]=w.length?w.push(w[z].concat(w[z][0])):z!==v&&w.push(w[z].concat(w[p][0]));for(let B=0;B=o.height))break}s==null||s(t.pos/(t.data.length-1),i(!1)+1,d,{x:o.left,y:o.top},{width:e.width,height:e.height})}o.image=d,o.bitmap=await createImageBitmap(d)}else{for(let p=0,m=h+1,y=0,w=[[0]],S=-4;;){const _=p;if(p=k(y,m),y+=m,p===v){m=h+1,w.length=v+2;for(let C=0;C=w.length?w.push(w[_].concat(w[_][0])):_!==v&&w.push(w[_].concat(w[p][0]));for(let C=0;C=1<>>4,s.sortFlag=(a&8)===8;const u=1<<(a&7)+1,c=o.nextByte();s.pixelAspectRatio=o.nextByte(),s.pixelAspectRatio!==0&&(s.pixelAspectRatio=(s.pixelAspectRatio+15)/64),l&&(s.globalColorTable=Rm(o,u));const f=(()=>{try{return new ImageData(s.width,s.height,{colorSpace:"srgb"})}catch(w){if(w instanceof DOMException&&w.name==="IndexSizeError")return null;throw w}})();if(f==null)throw new Error("GIF frame size is to large");const{r:d,g:h,b:g}=s.globalColorTable[c];f.data.set(l?[d,h,g,255]:[0,0,0,0]);for(let w=4;w(w&&(k=!0),v),y=w=>(w!=null&&(p=w),p);try{do k&&(s.frames.push({left:0,top:0,width:0,height:0,disposalMethod:0,image:new ImageData(1,1,{colorSpace:"srgb"}),plainTextData:null,userInputDelayFlag:!1,delayTime:0,sortFlag:!1,localColorTable:[],reserved:0,GCreserved:0}),v++,p=-1,k=!1);while(!await _8(o,s,n,m,y,e));s.frames.length--;for(const w of s.frames){if(w.userInputDelayFlag&&w.delayTime===0){s.totalTime=1/0;break}s.totalTime+=w.delayTime}return s}catch(w){throw w instanceof EvalError?new Error(`error while parsing frame ${v} "${w.message}"`):w}}const O8=/(#(?:[0-9a-f]{2}){2,4}|(#[0-9a-f]{3})|(rgb|hsl)a?\((-?\d+%?[,\s]+){2,3}\s*[\d.]+%?\))|currentcolor/gi;function M8(t,e,n){const{svgData:i}=t;if(!i)return"";const r=Qs(e,n);if(i.includes("fill"))return i.replace(O8,()=>r);const s=i.indexOf(">");return`${i.substring(0,s)} fill="${r}"${i.substring(s)}`}async function hl(t){return new Promise(e=>{t.loading=!0;const n=new Image;t.element=n,n.addEventListener("load",()=>{t.loading=!1,e()}),n.addEventListener("error",()=>{t.element=void 0,t.error=!0,t.loading=!1,Ui().error(`${Ft} loading image: ${t.source}`),e()}),n.src=t.source})}async function z8(t){if(t.type!=="gif"){await hl(t);return}t.loading=!0;try{t.gifData=await P8(t.source),t.gifLoopCount=E8(t.gifData)??0,t.gifLoopCount===0&&(t.gifLoopCount=1/0)}catch{t.error=!0}t.loading=!1}async function R8(t){if(t.type!=="svg"){await hl(t);return}t.loading=!0;const e=await fetch(t.source);e.ok?t.svgData=await e.text():(Ui().error(`${Ft} Image not found`),t.error=!0),t.loading=!1}function T8(t,e,n,i){var o;const r=M8(t,n,((o=i.opacity)==null?void 0:o.value)??1),s={color:n,gif:e.gif,data:{...t,svgData:r},loaded:!1,ratio:e.width/e.height,replaceColor:e.replaceColor??e.replace_color,source:e.src};return new Promise(a=>{const l=new Blob([r],{type:"image/svg+xml"}),u=URL||window.URL||window.webkitURL||window,c=u.createObjectURL(l),f=new Image;f.addEventListener("load",()=>{s.loaded=!0,s.element=f,a(s),u.revokeObjectURL(c)}),f.addEventListener("error",async()=>{u.revokeObjectURL(c);const d={...t,error:!1,loading:!0};await hl(d),s.loaded=!0,s.element=d.element,a(s)}),f.src=c})}class I8{constructor(e){this.loadImageShape=async n=>{if(!this._engine.loadImage)throw new Error(`${Ft} image shape not initialized`);await this._engine.loadImage({gif:n.gif,name:n.name,replaceColor:n.replaceColor??n.replace_color??!1,src:n.src})},this._engine=e}addImage(e){this._engine.images||(this._engine.images=[]),this._engine.images.push(e)}draw(e,n,i,r,s){const o=n.image,a=o==null?void 0:o.element;if(o){if(e.globalAlpha=r,o.gif&&o.gifData){const l=new OffscreenCanvas(o.gifData.width,o.gifData.height),u=l.getContext("2d");if(!u)throw new Error("could not create offscreen canvas context");u.imageSmoothingQuality="low",u.imageSmoothingEnabled=!1,u.clearRect(0,0,l.width,l.height),n.gifLoopCount===void 0&&(n.gifLoopCount=o.gifLoopCount??0);let c=n.gifFrame??0;const f={x:-o.gifData.width*.5,y:-o.gifData.height*.5},d=o.gifData.frames[c];if(n.gifTime===void 0&&(n.gifTime=0),!d.bitmap)return;switch(e.scale(i/o.gifData.width,i/o.gifData.height),d.disposalMethod){case 4:case 5:case 6:case 7:case 0:u.drawImage(d.bitmap,d.left,d.top),e.drawImage(l,f.x,f.y),u.clearRect(0,0,l.width,l.height);break;case 1:u.drawImage(d.bitmap,d.left,d.top),e.drawImage(l,f.x,f.y);break;case 2:u.drawImage(d.bitmap,d.left,d.top),e.drawImage(l,f.x,f.y),u.clearRect(0,0,l.width,l.height),o.gifData.globalColorTable.length===0?u.putImageData(o.gifData.frames[0].image,f.x+d.left,f.y+d.top):u.putImageData(o.gifData.backgroundImage,f.x,f.y);break;case 3:{const h=u.getImageData(0,0,l.width,l.height);u.drawImage(d.bitmap,d.left,d.top),e.drawImage(l,f.x,f.y),u.clearRect(0,0,l.width,l.height),u.putImageData(h,0,0)}break}if(n.gifTime+=s.value,n.gifTime>d.delayTime){if(n.gifTime-=d.delayTime,++c>=o.gifData.frames.length){if(--n.gifLoopCount<=0)return;c=0,u.clearRect(0,0,l.width,l.height)}n.gifFrame=c}e.scale(o.gifData.width/i,o.gifData.height/i)}else if(a){const l=o.ratio,u={x:-i,y:-i};e.drawImage(a,u.x,u.y,i*2,i*2/l)}e.globalAlpha=1}}getSidesCount(){return 12}async init(e){const n=e.actualOptions;if(!(!n.preload||!this._engine.loadImage))for(const i of n.preload)await this._engine.loadImage(i)}loadShape(e){if(e.shape!=="image"&&e.shape!=="images")return;this._engine.images||(this._engine.images=[]);const n=e.shapeData;this._engine.images.find(r=>r.name===n.name||r.source===n.src)||this.loadImageShape(n).then(()=>{this.loadShape(e)})}particleInit(e,n){if(n.shape!=="image"&&n.shape!=="images")return;this._engine.images||(this._engine.images=[]);const i=this._engine.images,r=n.shapeData,s=n.getFillColor(),o=i.find(l=>l.name===r.name||l.source===r.src);if(!o)return;const a=r.replaceColor??r.replace_color??o.replaceColor;if(o.loading){setTimeout(()=>{this.particleInit(e,n)});return}(async()=>{let l;o.svgData&&s?l=await T8(o,r,s,n):l={color:s,data:o,element:o.element,gif:o.gif,gifData:o.gifData,gifLoopCount:o.gifLoopCount,loaded:!0,ratio:r.width&&r.height?r.width/r.height:o.ratio??1,replaceColor:a,source:r.src},l.ratio||(l.ratio=1);const u=r.fill??n.fill,c=r.close??n.close,f={image:l,fill:u,close:c};n.image=f.image,n.fill=f.fill,n.close=f.close})()}}class D8{constructor(){this.src="",this.gif=!1}load(e){e&&(e.gif!==void 0&&(this.gif=e.gif),e.height!==void 0&&(this.height=e.height),e.name!==void 0&&(this.name=e.name),e.replaceColor!==void 0&&(this.replaceColor=e.replaceColor),e.src!==void 0&&(this.src=e.src),e.width!==void 0&&(this.width=e.width))}}class L8{constructor(e){this.id="imagePreloader",this._engine=e}getPlugin(){return{}}loadOptions(e,n){if(!n||!n.preload)return;e.preload||(e.preload=[]);const i=e.preload;for(const r of n.preload){const s=i.find(o=>o.name===r.name||o.src===r.src);if(s)s.load(r);else{const o=new D8;o.load(r),i.push(o)}}}needsPlugin(){return!0}}function A8(t){t.loadImage||(t.loadImage=async e=>{if(!e.name&&!e.src)throw new Error(`${Ft} no image source provided`);if(t.images||(t.images=[]),!t.images.find(n=>n.name===e.name||n.source===e.src))try{const n={gif:e.gif??!1,name:e.name??e.src,source:e.src,type:e.src.substring(e.src.length-3),error:!1,loading:!0,replaceColor:e.replaceColor,ratio:e.width&&e.height?e.width/e.height:void 0};t.images.push(n),await(e.gif?z8:e.replaceColor?R8:hl)(n)}catch{throw new Error(`${Ft} ${e.name??e.src} not found`)}})}async function F8(t,e=!0){A8(t);const n=new L8(t);await t.addPlugin(n,e),await t.addShape(["image","images"],new I8(t),e)}class N8 extends hi{constructor(){super(),this.sync=!1}load(e){e&&(super.load(e),e.sync!==void 0&&(this.sync=e.sync))}}class $8 extends hi{constructor(){super(),this.random.minimumValue=1e-4,this.sync=!1}load(e){e&&(super.load(e),e.sync!==void 0&&(this.sync=e.sync))}}class j8{constructor(){this.count=0,this.delay=new N8,this.duration=new $8}load(e){e&&(e.count!==void 0&&(this.count=e.count),this.delay.load(e.delay),this.duration.load(e.duration))}}class B8{constructor(e){this.container=e}init(e){const n=this.container,i=e.options,r=i.life;r&&(e.life={delay:n.retina.reduceFactor?F(r.delay.value)*(r.delay.sync?1:ae())/n.retina.reduceFactor*1e3:0,delayTime:0,duration:n.retina.reduceFactor?F(r.duration.value)*(r.duration.sync?1:ae())/n.retina.reduceFactor*1e3:0,time:0,count:r.count},e.life.duration<=0&&(e.life.duration=-1),e.life.count<=0&&(e.life.count=-1),e.life&&(e.spawning=e.life.delay>0))}isEnabled(e){return!e.destroyed}loadOptions(e,...n){e.life||(e.life=new j8);for(const i of n)e.life.load(i==null?void 0:i.life)}update(e,n){if(!this.isEnabled(e)||!e.life)return;const i=e.life;let r=!1;if(e.spawning)if(i.delayTime+=n.value,i.delayTime>=e.life.delay)r=!0,e.spawning=!1,i.delayTime=0,i.time=0;else return;if(i.duration===-1||e.spawning||(r?i.time=0:i.time+=n.value,i.time0&&e.life.count--,e.life.count===0){e.destroy();return}const s=this.container.canvas.size,o=G(0,s.width),a=G(0,s.width);e.position.x=ot(o),e.position.y=ot(a),e.spawning=!0,i.delayTime=0,i.time=0,e.reset();const l=e.options.life;l&&(i.delay=F(l.delay.value)*1e3,i.duration=F(l.duration.value)*1e3)}}async function U8(t,e=!0){await t.addParticleUpdater("life",n=>new B8(n),e)}class H8{draw(e,n,i){const r=n.shapeData;e.moveTo(-i/2,0),e.lineTo(i/2,0),e.lineCap=(r==null?void 0:r.cap)??"butt"}getSidesCount(){return 1}}async function G8(t,e=!0){await t.addShape("line",new H8,e)}class W8{init(){}isEnabled(e){return!Wr()&&!e.destroyed&&e.container.actualOptions.interactivity.events.onHover.parallax.enable}move(e){const n=e.container,i=n.actualOptions,r=i.interactivity.events.onHover.parallax;if(Wr()||!r.enable)return;const s=r.force,o=n.interactivity.mouse.position;if(!o)return;const a=n.canvas.size,l={x:a.width/2,y:a.height/2},u=r.smooth,c=e.getRadius()/s,f={x:(o.x-l.x)*c,y:(o.y-l.y)*c},{offset:d}=e;d.x+=(f.x-d.x)/u,d.y+=(f.y-d.y)/u}}async function q8(t,e=!0){await t.addMover("parallax",()=>new W8,e)}class Q8 extends Wf{constructor(e){super(e)}clear(){}init(){}async interact(e){const n=this.container,i=e.retina.attractDistance??n.retina.attractDistance,r=e.getPosition(),s=n.particles.quadTree.queryCircle(r,i);for(const o of s){if(e===o||!o.options.move.attract.enable||o.destroyed||o.spawning)continue;const a=o.getPosition(),{dx:l,dy:u}=Ze(r,a),c=e.options.move.attract.rotate,f=l/(c.x*1e3),d=u/(c.y*1e3),h=o.size.value/e.size.value,g=1/h;e.velocity.x-=f*h,e.velocity.y-=d*h,o.velocity.x+=f*g,o.velocity.y+=d*g}}isEnabled(e){return e.options.move.attract.enable}reset(){}}async function V8(t,e=!0){await t.addInteractor("particlesAttract",n=>new Q8(n),e)}function Qh(t,e,n,i,r,s){const o=Jt(t.options.collisions.absorb.speed*r.factor/10,0,i);t.size.value+=o/2,n.size.value-=o,i<=s&&(n.size.value=0,n.destroy())}function K8(t,e,n,i){const r=t.getRadius(),s=e.getRadius();r===void 0&&s!==void 0?t.destroy():r!==void 0&&s===void 0?e.destroy():r!==void 0&&s!==void 0&&(r>=s?Qh(t,r,e,s,n,i):Qh(e,s,t,r,n,i))}const Vh=t=>{t.collisionMaxSpeed===void 0&&(t.collisionMaxSpeed=F(t.options.collisions.maxSpeed)),t.velocity.length>t.collisionMaxSpeed&&(t.velocity.length=t.collisionMaxSpeed)};function Tm(t,e){um(Ic(t),Ic(e)),Vh(t),Vh(e)}function Y8(t,e){!t.unbreakable&&!e.unbreakable&&Tm(t,e),t.getRadius()===void 0&&e.getRadius()!==void 0?t.destroy():t.getRadius()!==void 0&&e.getRadius()===void 0?e.destroy():t.getRadius()!==void 0&&e.getRadius()!==void 0&&(t.getRadius()>=e.getRadius()?e:t).destroy()}function X8(t,e,n,i){switch(t.options.collisions.mode){case"absorb":{K8(t,e,n,i);break}case"bounce":{Tm(t,e);break}case"destroy":{Y8(t,e);break}}}class Z8 extends Wf{constructor(e){super(e)}clear(){}init(){}async interact(e,n){if(e.destroyed||e.spawning)return;const i=this.container,r=e.getPosition(),s=e.getRadius(),o=i.particles.quadTree.queryCircle(r,s*2);for(const a of o){if(e===a||!a.options.collisions.enable||e.options.collisions.mode!==a.options.collisions.mode||a.destroyed||a.spawning)continue;const l=a.getPosition(),u=a.getRadius();if(Math.abs(Math.round(r.z)-Math.round(l.z))>s+u)continue;const c=gt(r,l),f=s+u;c>f||X8(e,a,n,i.retina.pixelRatio)}}isEnabled(e){return e.options.collisions.enable}reset(){}}async function J8(t,e=!0){await t.addInteractor("particlesCollisions",n=>new Z8(n),e)}class e7 extends Ge{constructor(e,n,i,r){super(e,n,i),this.canvasSize=r,this.canvasSize={...r}}contains(e){const{width:n,height:i}=this.canvasSize,{x:r,y:s}=e;return super.contains(e)||super.contains({x:r-n,y:s})||super.contains({x:r-n,y:s-i})||super.contains({x:r,y:s-i})}intersects(e){if(super.intersects(e))return!0;const n=e,i=e,r={x:e.position.x-this.canvasSize.width,y:e.position.y-this.canvasSize.height};if(i.radius!==void 0){const s=new Ge(r.x,r.y,i.radius*2);return super.intersects(s)}else if(n.size!==void 0){const s=new en(r.x,r.y,n.size.width*2,n.size.height*2);return super.intersects(s)}return!1}}class t7{constructor(){this.blur=5,this.color=new Ne,this.color.value="#000",this.enable=!1}load(e){e&&(e.blur!==void 0&&(this.blur=e.blur),this.color=Ne.create(this.color,e.color),e.enable!==void 0&&(this.enable=e.enable))}}class n7{constructor(){this.enable=!1,this.frequency=1}load(e){e&&(e.color!==void 0&&(this.color=Ne.create(this.color,e.color)),e.enable!==void 0&&(this.enable=e.enable),e.frequency!==void 0&&(this.frequency=e.frequency),e.opacity!==void 0&&(this.opacity=e.opacity))}}class i7{constructor(){this.blink=!1,this.color=new Ne,this.color.value="#fff",this.consent=!1,this.distance=100,this.enable=!1,this.frequency=1,this.opacity=1,this.shadow=new t7,this.triangles=new n7,this.width=1,this.warp=!1}load(e){e&&(e.id!==void 0&&(this.id=e.id),e.blink!==void 0&&(this.blink=e.blink),this.color=Ne.create(this.color,e.color),e.consent!==void 0&&(this.consent=e.consent),e.distance!==void 0&&(this.distance=e.distance),e.enable!==void 0&&(this.enable=e.enable),e.frequency!==void 0&&(this.frequency=e.frequency),e.opacity!==void 0&&(this.opacity=e.opacity),this.shadow.load(e.shadow),this.triangles.load(e.triangles),e.width!==void 0&&(this.width=e.width),e.warp!==void 0&&(this.warp=e.warp))}}function r7(t,e,n,i,r){const{dx:s,dy:o,distance:a}=Ze(t,e);if(!r||a<=n)return a;const l={x:Math.abs(s),y:Math.abs(o)},u={x:Math.min(l.x,i.width-l.x),y:Math.min(l.y,i.height-l.y)};return Math.sqrt(u.x**2+u.y**2)}class s7 extends Wf{constructor(e){super(e),this._setColor=n=>{if(!n.options.links)return;const i=this.linkContainer,r=n.options.links;let s=r.id===void 0?i.particles.linksColor:i.particles.linksColors.get(r.id);if(s)return;const o=r.color;s=gm(o,r.blink,r.consent),r.id===void 0?i.particles.linksColor=s:i.particles.linksColors.set(r.id,s)},this.linkContainer=e}clear(){}init(){this.linkContainer.particles.linksColor=void 0,this.linkContainer.particles.linksColors=new Map}async interact(e){if(!e.options.links)return;e.links=[];const n=e.getPosition(),i=this.container,r=i.canvas.size;if(n.x<0||n.y<0||n.x>r.width||n.y>r.height)return;const s=e.options.links,o=s.opacity,a=e.retina.linksDistance??0,l=s.warp,u=l?new e7(n.x,n.y,a,r):new Ge(n.x,n.y,a),c=i.particles.quadTree.query(u);for(const f of c){const d=f.options.links;if(e===f||!(d!=null&&d.enable)||s.id!==d.id||f.spawning||f.destroyed||!f.links||e.links.some(k=>k.destination===f)||f.links.some(k=>k.destination===e))continue;const h=f.getPosition();if(h.x<0||h.y<0||h.x>r.width||h.y>r.height)continue;const g=r7(n,h,a,r,l&&d.warp);if(g>a)continue;const v=(1-g/a)*o;this._setColor(e),e.links.push({destination:f,opacity:v})}}isEnabled(e){var n;return!!((n=e.options.links)!=null&&n.enable)}loadParticlesOptions(e,...n){e.links||(e.links=new i7);for(const i of n)e.links.load((i==null?void 0:i.links)??(i==null?void 0:i.lineLinked)??(i==null?void 0:i.line_linked))}reset(){}}async function o7(t,e=!0){await t.addInteractor("particlesLinks",n=>new s7(n),e)}function a7(t){let e=!1;const{begin:n,end:i,maxDistance:r,context:s,canvasSize:o,width:a,backgroundMask:l,colorLine:u,opacity:c,links:f}=t;if(gt(n,i)<=r)_s(s,n,i),e=!0;else if(f.warp){let h,g;const v={x:i.x-o.width,y:i.y},k=Ze(n,v);if(k.distance<=r){const p=n.y-k.dy/k.dx*n.x;h={x:0,y:p},g={x:o.width,y:p}}else{const p={x:i.x,y:i.y-o.height},m=Ze(n,p);if(m.distance<=r){const w=-(n.y-m.dy/m.dx*n.x)/(m.dy/m.dx);h={x:w,y:0},g={x:w,y:o.height}}else{const y={x:i.x-o.width,y:i.y-o.height},w=Ze(n,y);if(w.distance<=r){const S=n.y-w.dy/w.dx*n.x;h={x:-S/(w.dy/w.dx),y:S},g={x:h.x+o.width,y:h.y+o.height}}}}h&&g&&(_s(s,n,h),_s(s,i,g),e=!0)}if(!e)return;s.lineWidth=a,l.enable&&(s.globalCompositeOperation=l.composite),s.strokeStyle=_n(u,c);const{shadow:d}=f;if(d.enable){const h=Xt(d.color);h&&(s.shadowBlur=d.blur,s.shadowColor=_n(h))}s.stroke()}function l7(t){const{context:e,pos1:n,pos2:i,pos3:r,backgroundMask:s,colorTriangle:o,opacityTriangle:a}=t;U5(e,n,i,r),s.enable&&(e.globalCompositeOperation=s.composite),e.fillStyle=_n(o,a),e.fill()}function u7(t){return t.sort((e,n)=>e-n),t.join("_")}function Kh(t,e){const n=u7(t.map(r=>r.id));let i=e.get(n);return i===void 0&&(i=ae(),e.set(n,i)),i}class c7{constructor(e){this.container=e,this._drawLinkLine=(n,i)=>{const r=n.options.links;if(!(r!=null&&r.enable))return;const s=this.container,o=s.actualOptions,a=i.destination,l=n.getPosition(),u=a.getPosition();let c=i.opacity;s.canvas.draw(f=>{var p;let d;const h=(p=n.options.twinkle)==null?void 0:p.lines;if(h!=null&&h.enable){const m=h.frequency,y=Xt(h.color);ae(){const s=n.options.links;if(!(s!=null&&s.enable))return;const o=s.triangles;if(!o.enable)return;const a=this.container,l=a.actualOptions,u=i.destination,c=r.destination,f=o.opacity??(i.opacity+r.opacity)/2;f<=0||a.canvas.draw(d=>{const h=n.getPosition(),g=u.getPosition(),v=c.getPosition(),k=n.retina.linksDistance??0;if(gt(h,g)>k||gt(v,g)>k||gt(v,h)>k)return;let p=Xt(o.color);if(!p){const m=s.id!==void 0?a.particles.linksColors.get(s.id):a.particles.linksColor;p=Dc(n,u,m)}p&&l7({context:d,pos1:h,pos2:g,pos3:v,backgroundMask:l.backgroundMask,colorTriangle:p,opacityTriangle:f})})},this._drawTriangles=(n,i,r,s)=>{var l,u,c;const o=r.destination;if(!((l=n.links)!=null&&l.triangles.enable&&((u=o.options.links)!=null&&u.triangles.enable)))return;const a=(c=o.links)==null?void 0:c.filter(f=>{const d=this._getLinkFrequency(o,f.destination);return o.options.links&&d<=o.options.links.frequency&&s.findIndex(h=>h.destination===f.destination)>=0});if(a!=null&&a.length)for(const f of a){const d=f.destination;this._getTriangleFrequency(i,o,d)>n.links.triangles.frequency||this._drawLinkTriangle(i,r,f)}},this._getLinkFrequency=(n,i)=>Kh([n,i],this._freqs.links),this._getTriangleFrequency=(n,i,r)=>Kh([n,i,r],this._freqs.triangles),this._freqs={links:new Map,triangles:new Map}}drawParticle(e,n){const{links:i,options:r}=n;if(!i||i.length<=0)return;const s=i.filter(o=>r.links&&this._getLinkFrequency(n,o.destination)<=r.links.frequency);for(const o of s)this._drawTriangles(r,n,o,s),o.opacity>0&&(n.retina.linksWidth??0)>0&&this._drawLinkLine(n,o)}async init(){this._freqs.links=new Map,this._freqs.triangles=new Map}particleCreated(e){if(e.links=[],!e.options.links)return;const n=this.container.retina.pixelRatio,{retina:i}=e,{distance:r,width:s}=e.options.links;i.linksDistance=r*n,i.linksWidth=s*n}particleDestroyed(e){e.links=[]}}class f7{constructor(){this.id="links"}getPlugin(e){return new c7(e)}loadOptions(){}needsPlugin(){return!0}}async function d7(t,e=!0){const n=new f7;await t.addPlugin(n,e)}async function h7(t,e=!0){await o7(t,e),await d7(t,e)}class Im{draw(e,n,i){const r=this.getCenter(n,i),s=this.getSidesData(n,i),o=s.count.numerator*s.count.denominator,a=s.count.numerator/s.count.denominator,l=180*(a-2)/a,u=Math.PI-Math.PI*l/180;if(e){e.beginPath(),e.translate(r.x,r.y),e.moveTo(0,0);for(let c=0;co&&(n.value-=o);break;case"decreasing":default:n.value-=s,n.value<0&&(n.value+=o);break}n.velocity&&a!==1&&(n.velocity*=a)}}class S7{constructor(e){this.container=e}init(e){const n=e.options.rotate;if(!n)return;e.rotate={enable:n.animation.enable,value:F(n.value)*Math.PI/180},e.pathRotation=n.path;let i=n.direction;switch(i==="random"&&(i=Math.floor(ae()*2)>0?"counter-clockwise":"clockwise"),i){case"counter-clockwise":case"counterClockwise":e.rotate.status="decreasing";break;case"clockwise":e.rotate.status="increasing";break}const r=n.animation;r.enable&&(e.rotate.decay=1-F(r.decay),e.rotate.velocity=F(r.speed)/360*this.container.retina.reduceFactor,r.sync||(e.rotate.velocity*=ae())),e.rotation=e.rotate.value}isEnabled(e){const n=e.options.rotate;return n?!e.destroyed&&!e.spawning&&n.animation.enable&&!n.path:!1}loadOptions(e,...n){e.rotate||(e.rotate=new x7);for(const i of n)e.rotate.load(i==null?void 0:i.rotate)}update(e,n){var i;this.isEnabled(e)&&(k7(e,n),e.rotation=((i=e.rotate)==null?void 0:i.value)??0)}}async function C7(t,e=!0){await t.addParticleUpdater("rotate",n=>new S7(n),e)}const b7=Math.sqrt(2);class _7{draw(e,n,i){const r=i/b7,s=r*2;e.rect(-r,-r,s,s)}getSidesCount(){return 4}}async function E7(t,e=!0){await t.addShape(["edge","square"],new _7,e)}class P7{draw(e,n,i){const r=n.sides,s=n.starInset??2;e.moveTo(0,0-i);for(let o=0;o0&&(e.loops??0)>(e.maxLoops??0)||(e.time||(e.time=0),(e.delayTime??0)>0&&e.time<(e.delayTime??0)&&(e.time+=t.value),(e.delayTime??0)>0&&e.time<(e.delayTime??0)))return;const s=ot(n.offset),o=(e.velocity??0)*t.factor+s*3.6,a=e.decay??1;!r||e.status==="increasing"?(e.value+=o,e.value>i&&(e.loops||(e.loops=0),e.loops++,r&&(e.status="decreasing",e.value-=e.value%i))):(e.value-=o,e.value<0&&(e.loops||(e.loops=0),e.loops++,e.status="increasing",e.value+=e.value)),e.velocity&&a!==1&&(e.velocity*=a),e.value>i&&(e.value%=i)}function M7(t,e){if(!t.strokeColor||!t.strokeAnimation)return;const{h:n,s:i,l:r}=t.strokeColor,{h:s,s:o,l:a}=t.strokeAnimation;n&&mu(e,n,s,360,!1),i&&mu(e,i,o,100,!0),r&&mu(e,r,a,100,!0)}class z7{constructor(e){this.container=e}init(e){var o;const n=this.container,i=e.options,r=bn(i.stroke,e.id,i.reduceDuplicates);e.strokeWidth=F(r.width)*n.retina.pixelRatio,e.strokeOpacity=F(r.opacity??1),e.strokeAnimation=(o=r.color)==null?void 0:o.animation;const s=qs(r.color)??e.getFillColor();s&&(e.strokeColor=vm(s,e.strokeAnimation,n.retina.reduceFactor))}isEnabled(e){const n=e.strokeAnimation,{strokeColor:i}=e;return!e.destroyed&&!e.spawning&&!!n&&((i==null?void 0:i.h.value)!==void 0&&i.h.enable||(i==null?void 0:i.s.value)!==void 0&&i.s.enable||(i==null?void 0:i.l.value)!==void 0&&i.l.enable)}update(e,n){this.isEnabled(e)&&M7(e,n)}}async function R7(t,e=!0){await t.addParticleUpdater("strokeColor",n=>new z7(n),e)}const ra=["text","character","char"];class T7{draw(e,n,i,r){const s=n.shapeData;if(s===void 0)return;const o=s.value;if(o===void 0)return;n.text===void 0&&(n.text=bn(o,n.randomIndexData));const a=n.text,l=s.style??"",u=s.weight??"400",c=Math.round(i)*2,f=s.font??"Verdana",d=n.fill,h=a.length*i/2;e.font=`${l} ${u} ${c}px "${f}"`;const g={x:-h,y:i/2};e.globalAlpha=r,d?e.fillText(a,g.x,g.y):e.strokeText(a,g.x,g.y),e.globalAlpha=1}getSidesCount(){return 12}async init(e){const n=e.actualOptions;if(ra.find(i=>ge(i,n.particles.shape.type))){const i=ra.map(s=>n.particles.shape.options[s]).find(s=>!!s),r=[];Te(i,s=>{r.push(I5(s.font,s.weight))}),await Promise.all(r)}}particleInit(e,n){if(!n.shape||!ra.includes(n.shape))return;const i=n.shapeData;if(i===void 0)return;const r=i.value;r!==void 0&&(n.text=bn(r,n.randomIndexData))}}async function I7(t,e=!0){await t.addShape(ra,new T7,e)}async function D7(t,e=!0){s6(t),await q8(t,!1),await $6(t,!1),await U6(t,!1),await q6(t,!1),await e8(t,!1),await o8(t,!1),await l8(t,!1),await f8(t,!1),await p8(t,!1),await v8(t,!1),await k8(t,!1),await V8(t,!1),await J8(t,!1),await h7(t,!1),await A6(),await F8(t,!1),await G8(t,!1),await v7(t,!1),await E7(t,!1),await O7(t,!1),await I7(t,!1),await U8(t,!1),await C7(t,!1),await R7(t,!1),await L6(t,e)}var Lc=(t=>(t.SNOW="snow.json",t.NYAN_CAT="nyan-cat.json",t.AMOGUS="amogus.json",t))(Lc||{});const Dm={defaultVariant:Lc.NYAN_CAT,allowedOptions:Object.values(Lc)},Lm=t=>{const e=I.useCallback(async()=>{const n=await fetch(`./assets/ts-particles/${t}`).then(i=>i.json());return za(`Background "${t}" installed!`,{duration:1200,id:"particles-bg-install"}),n},[t]);return jv({queryKey:["BG_VARIANT",t],queryFn:e,retry:!1,throwOnError:n=>(za(`Error installing background "${t}"! +(${n.message})`,{id:"particles-bg-install"}),!1)})},L7=()=>I.useMemo(()=>Dm.allowedOptions.map(t=>({value:t,label:String(t)})),[]),Am="ts-particles/bg",Fm=t=>{const e=I.useMemo(()=>localStorage.getItem(t),[t]),n=I.useCallback(i=>{localStorage.setItem(t,i)},[t]);return{initialLSValue:e,updateLSValue:n}},Nm=_e.createContext({}),A7=({children:t})=>{const{initialLSValue:e}=Fm(Am),[n,i]=I.useState(e??Dm.defaultVariant);return N.jsx(Nm.Provider,{value:{variant:n,setVariant:i},children:t})},$m=()=>I.useContext(Nm),G7=_e.memo(()=>{const{variant:t}=$m(),{data:e}=Lm(t),n=I.useCallback(async i=>{console.log(i),await D7(i)},[]);return N.jsx(Pm,{id:"tsparticles",init:n,options:e})}),F7=()=>{const{updateLSValue:t}=Fm(Am),e=L7(),{variant:n,setVariant:i}=$m(),{isLoading:r}=Lm(n),s=I.useCallback(()=>{var l;const o=e.filter(u=>u.value!==n),a=(l=M4(o))==null?void 0:l.value;a&&(za(`Installing background "${a}"...`,{duration:5e3,id:"particles-bg-install"}),i(a),t(a))},[e,n,i,t]);return N.jsxs(e5,{onClick:s,isLoading:r,children:["Background: ",n," ",N.jsx(h4,{})]})},N7=_e.lazy(()=>m2(()=>import("./index-1dbec4c4.js"),[])),$7=new kv({defaultOptions:{queries:{refetchOnMount:!1}}});function j7(){return N.jsx(Ev,{client:$7,children:N.jsxs(A7,{children:[N.jsx(m5,{additionalButtons:[N.jsx(F7,{})]}),N.jsx(sv,{position:"top-center",reverseOrder:!0}),N.jsx(N7,{})]})})}yu.createRoot(document.getElementById("root")).render(N.jsx(j7,{}));export{G7 as P,F7 as a,A7 as b}; diff --git a/assets/index-840296d2.css b/assets/index-840296d2.css new file mode 100644 index 0000000..8dd6243 --- /dev/null +++ b/assets/index-840296d2.css @@ -0,0 +1 @@ +:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;background-image:url("data:image/svg+xml,");-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}body{margin:0;display:flex;place-items:center;min-height:100vh}body #root{max-width:1280px;margin:0 auto;padding:2rem;text-align:center}*{box-sizing:border-box} diff --git a/assets/ts-particles/amogus.json b/assets/ts-particles/amogus.json new file mode 100644 index 0000000..0d27967 --- /dev/null +++ b/assets/ts-particles/amogus.json @@ -0,0 +1,648 @@ +{ + "autoPlay": true, + "background": { + "color": { + "value": "#000000" + }, + "image": "", + "position": "", + "repeat": "", + "size": "", + "opacity": 1 + }, + "backgroundMask": { + "composite": "destination-out", + "cover": { + "color": { + "value": "#fff" + }, + "opacity": 1 + }, + "enable": false + }, + "defaultThemes": {}, + "delay": 0, + "fullScreen": { + "enable": true, + "zIndex": 0 + }, + "detectRetina": true, + "duration": 0, + "fpsLimit": 120, + "interactivity": { + "detectsOn": "window", + "events": { + "onClick": { + "enable": true, + "mode": "push" + }, + "onDiv": { + "selectors": [], + "enable": false, + "mode": [], + "type": "circle" + }, + "onHover": { + "enable": false, + "mode": [], + "parallax": { + "enable": false, + "force": 2, + "smooth": 10 + } + }, + "resize": { + "delay": 0.5, + "enable": true + } + }, + "modes": { + "trail": { + "delay": 1, + "pauseOnStop": false, + "quantity": 1 + }, + "attract": { + "distance": 200, + "duration": 0.4, + "easing": "ease-out-quad", + "factor": 1, + "maxSpeed": 50, + "speed": 1 + }, + "bounce": { + "distance": 200 + }, + "bubble": { + "distance": 200, + "duration": 0.4, + "mix": false, + "divs": { + "distance": 200, + "duration": 0.4, + "mix": false, + "selectors": [] + } + }, + "connect": { + "distance": 80, + "links": { + "opacity": 0.5 + }, + "radius": 60 + }, + "grab": { + "distance": 100, + "links": { + "blink": false, + "consent": false, + "opacity": 1 + } + }, + "push": { + "default": true, + "groups": [ + "z5000", + "z7500", + "z2500", + "z1000" + ], + "quantity": 4 + }, + "remove": { + "quantity": 2 + }, + "repulse": { + "distance": 200, + "duration": 0.4, + "factor": 100, + "speed": 1, + "maxSpeed": 50, + "easing": "ease-out-quad", + "divs": { + "distance": 200, + "duration": 0.4, + "factor": 100, + "speed": 1, + "maxSpeed": 50, + "easing": "ease-out-quad", + "selectors": [] + } + }, + "slow": { + "factor": 3, + "radius": 200 + }, + "light": { + "area": { + "gradient": { + "start": { + "value": "#ffffff" + }, + "stop": { + "value": "#000000" + } + }, + "radius": 1000 + }, + "shadow": { + "color": { + "value": "#000000" + }, + "length": 2000 + } + } + } + }, + "manualParticles": [], + "particles": { + "bounce": { + "horizontal": { + "random": { + "enable": false, + "minimumValue": 0.1 + }, + "value": 1 + }, + "vertical": { + "random": { + "enable": false, + "minimumValue": 0.1 + }, + "value": 1 + } + }, + "collisions": { + "absorb": { + "speed": 2 + }, + "bounce": { + "horizontal": { + "random": { + "enable": false, + "minimumValue": 0.1 + }, + "value": 1 + }, + "vertical": { + "random": { + "enable": false, + "minimumValue": 0.1 + }, + "value": 1 + } + }, + "enable": false, + "maxSpeed": 50, + "mode": "bounce", + "overlap": { + "enable": true, + "retries": 0 + } + }, + "color": { + "value": "#fff", + "animation": { + "h": { + "count": 0, + "enable": false, + "offset": 0, + "speed": 1, + "delay": 0, + "decay": 0, + "sync": true + }, + "s": { + "count": 0, + "enable": false, + "offset": 0, + "speed": 1, + "delay": 0, + "decay": 0, + "sync": true + }, + "l": { + "count": 0, + "enable": false, + "offset": 0, + "speed": 1, + "delay": 0, + "decay": 0, + "sync": true + } + } + }, + "groups": { + "z5000": { + "number": { + "value": 70 + }, + "zIndex": { + "value": 50 + } + }, + "z7500": { + "number": { + "value": 30 + }, + "zIndex": { + "value": 75 + } + }, + "z2500": { + "number": { + "value": 50 + }, + "zIndex": { + "value": 25 + } + }, + "z1000": { + "number": { + "value": 40 + }, + "zIndex": { + "value": 10 + } + } + }, + "move": { + "angle": { + "offset": 0, + "value": 10 + }, + "attract": { + "distance": 200, + "enable": false, + "rotate": { + "x": 3000, + "y": 3000 + } + }, + "center": { + "x": 50, + "y": 50, + "mode": "percent", + "radius": 0 + }, + "decay": 0, + "distance": {}, + "direction": "right", + "drift": 0, + "enable": true, + "gravity": { + "acceleration": 9.81, + "enable": false, + "inverse": false, + "maxSpeed": 50 + }, + "path": { + "clamp": true, + "delay": { + "random": { + "enable": false, + "minimumValue": 0 + }, + "value": 0 + }, + "enable": false, + "options": {} + }, + "outModes": { + "default": "out", + "bottom": "out", + "left": "out", + "right": "out", + "top": "out" + }, + "random": false, + "size": false, + "speed": 5, + "spin": { + "acceleration": 0, + "enable": false + }, + "straight": false, + "trail": { + "enable": false, + "length": 10, + "fill": {} + }, + "vibrate": false, + "warp": false + }, + "number": { + "density": { + "enable": false, + "width": 1920, + "height": 1080 + }, + "limit": 0, + "value": 200 + }, + "opacity": { + "random": { + "enable": false, + "minimumValue": 0.1 + }, + "value": 1, + "animation": { + "count": 0, + "enable": false, + "speed": 2, + "decay": 0, + "delay": 0, + "sync": false, + "mode": "auto", + "startValue": "random", + "destroy": "none" + } + }, + "reduceDuplicates": false, + "shadow": { + "blur": 0, + "color": { + "value": "#000" + }, + "enable": false, + "offset": { + "x": 0, + "y": 0 + } + }, + "shape": { + "close": true, + "fill": true, + "options": {}, + "type": "circle" + }, + "size": { + "random": { + "enable": false, + "minimumValue": 1 + }, + "value": 3, + "animation": { + "count": 0, + "enable": false, + "speed": 5, + "decay": 0, + "delay": 0, + "sync": false, + "mode": "auto", + "startValue": "random", + "destroy": "none" + } + }, + "stroke": { + "width": 0 + }, + "zIndex": { + "random": { + "enable": false, + "minimumValue": 0 + }, + "value": 5, + "opacityRate": 0.5, + "sizeRate": 1, + "velocityRate": 1 + }, + "destroy": { + "bounds": {}, + "mode": "none", + "split": { + "count": 1, + "factor": { + "random": { + "enable": false, + "minimumValue": 0 + }, + "value": 3 + }, + "rate": { + "random": { + "enable": false, + "minimumValue": 0 + }, + "value": { + "min": 4, + "max": 9 + } + }, + "sizeOffset": true, + "particles": {} + } + }, + "roll": { + "darken": { + "enable": false, + "value": 0 + }, + "enable": false, + "enlighten": { + "enable": false, + "value": 0 + }, + "mode": "vertical", + "speed": 25 + }, + "tilt": { + "random": { + "enable": false, + "minimumValue": 0 + }, + "value": 0, + "animation": { + "enable": false, + "speed": 0, + "decay": 0, + "sync": false + }, + "direction": "clockwise", + "enable": false + }, + "twinkle": { + "lines": { + "enable": false, + "frequency": 0.05, + "opacity": 1 + }, + "particles": { + "enable": false, + "frequency": 0.05, + "opacity": 1 + } + }, + "wobble": { + "distance": 5, + "enable": false, + "speed": { + "angle": 50, + "move": 10 + } + }, + "life": { + "count": 0, + "delay": { + "random": { + "enable": false, + "minimumValue": 0 + }, + "value": 0, + "sync": false + }, + "duration": { + "random": { + "enable": false, + "minimumValue": 0.0001 + }, + "value": 0, + "sync": false + } + }, + "rotate": { + "random": { + "enable": false, + "minimumValue": 0 + }, + "value": 0, + "animation": { + "enable": false, + "speed": 0, + "decay": 0, + "sync": false + }, + "direction": "clockwise", + "path": false + }, + "orbit": { + "animation": { + "count": 0, + "enable": false, + "speed": 1, + "decay": 0, + "delay": 0, + "sync": false + }, + "enable": false, + "opacity": 1, + "rotation": { + "random": { + "enable": false, + "minimumValue": 0 + }, + "value": 45 + }, + "width": 1 + }, + "links": { + "blink": false, + "color": { + "value": "#fff" + }, + "consent": false, + "distance": 100, + "enable": false, + "frequency": 1, + "opacity": 1, + "shadow": { + "blur": 5, + "color": { + "value": "#000" + }, + "enable": false + }, + "triangles": { + "enable": false, + "frequency": 1 + }, + "width": 1, + "warp": false + }, + "repulse": { + "random": { + "enable": false, + "minimumValue": 0 + }, + "value": 0, + "enabled": false, + "distance": 1, + "duration": 1, + "factor": 1, + "speed": 1 + } + }, + "pauseOnBlur": true, + "pauseOnOutsideViewport": true, + "responsive": [], + "smooth": false, + "style": {}, + "themes": [], + "zLayers": 100, + "emitters": { + "autoPlay": true, + "fill": true, + "life": { + "wait": false + }, + "rate": { + "quantity": 1, + "delay": 7 + }, + "shape": "square", + "startCount": 0, + "size": { + "mode": "percent", + "height": 0, + "width": 0 + }, + "particles": { + "shape": { + "type": "images", + "options": { + "images": { + "src": "https://particles.js.org/images/cyan_amongus.png", + "width": 500, + "height": 634 + } + } + }, + "size": { + "value": 40 + }, + "move": { + "speed": 10, + "outModes": { + "default": "none", + "right": "destroy" + }, + "straight": true + }, + "zIndex": { + "value": 0 + }, + "rotate": { + "value": { + "min": 0, + "max": 360 + }, + "animation": { + "enable": true, + "speed": 10, + "sync": true + } + } + }, + "position": { + "x": -5, + "y": 55 + } + }, + "motion": { + "disable": false, + "reduce": { + "factor": 4, + "value": true + } + } +} \ No newline at end of file diff --git a/assets/ts-particles/nyan-cat.json b/assets/ts-particles/nyan-cat.json new file mode 100644 index 0000000..899eec0 --- /dev/null +++ b/assets/ts-particles/nyan-cat.json @@ -0,0 +1,565 @@ +{ + "autoPlay": true, + "background": { + "color": { + "value": "#043564" + }, + "_image": "url('https://vincentgarreau.com/particles.js/assets/img/kbLd9vb_new.gif')", + "_position": "0 50%", + "_repeat": "no-repeat", + "_size": "60%", + "opacity": 1 + }, + "backgroundMask": { + "composite": "destination-out", + "cover": { + "color": { + "value": "#fff" + }, + "opacity": 1 + }, + "enable": false + }, + "defaultThemes": {}, + "delay": 0, + "fullScreen": { + "enable": true, + "zIndex": 1 + }, + "detectRetina": true, + "duration": 0, + "fpsLimit": 120, + "interactivity": { + "detectsOn": "window", + "events": { + "onClick": { + "enable": true, + "mode": "repulse" + }, + "onDiv": { + "selectors": [], + "enable": false, + "mode": [], + "type": "circle" + }, + "onHover": { + "enable": false, + "mode": "grab", + "parallax": { + "enable": false, + "force": 2, + "smooth": 10 + } + }, + "resize": { + "delay": 0.5, + "enable": true + } + }, + "modes": { + "trail": { + "delay": 1, + "pauseOnStop": false, + "quantity": 1 + }, + "attract": { + "distance": 200, + "duration": 0.4, + "easing": "ease-out-quad", + "factor": 1, + "maxSpeed": 50, + "speed": 1 + }, + "bounce": { + "distance": 200 + }, + "bubble": { + "distance": 400, + "duration": 2, + "mix": false, + "opacity": 8, + "size": 40, + "divs": { + "distance": 200, + "duration": 0.4, + "mix": false, + "selectors": [] + } + }, + "connect": { + "distance": 80, + "links": { + "opacity": 0.5 + }, + "radius": 60 + }, + "grab": { + "distance": 200, + "links": { + "blink": false, + "consent": false, + "opacity": 1 + } + }, + "push": { + "default": true, + "groups": [], + "quantity": 4 + }, + "remove": { + "quantity": 2 + }, + "repulse": { + "distance": 200, + "duration": 0.4, + "factor": 100, + "speed": 1, + "maxSpeed": 50, + "easing": "ease-out-quad", + "divs": { + "distance": 200, + "duration": 0.4, + "factor": 100, + "speed": 1, + "maxSpeed": 50, + "easing": "ease-out-quad", + "selectors": [] + } + }, + "slow": { + "factor": 3, + "radius": 200 + }, + "light": { + "area": { + "gradient": { + "start": { + "value": "#ffffff" + }, + "stop": { + "value": "#000000" + } + }, + "radius": 1000 + }, + "shadow": { + "color": { + "value": "#000000" + }, + "length": 2000 + } + } + } + }, + "manualParticles": [], + "particles": { + "bounce": { + "horizontal": { + "random": { + "enable": false, + "minimumValue": 0.1 + }, + "value": 1 + }, + "vertical": { + "random": { + "enable": false, + "minimumValue": 0.1 + }, + "value": 1 + } + }, + "collisions": { + "absorb": { + "speed": 2 + }, + "bounce": { + "horizontal": { + "random": { + "enable": false, + "minimumValue": 0.1 + }, + "value": 1 + }, + "vertical": { + "random": { + "enable": false, + "minimumValue": 0.1 + }, + "value": 1 + } + }, + "enable": false, + "maxSpeed": 50, + "mode": "bounce", + "overlap": { + "enable": true, + "retries": 0 + } + }, + "color": { + "value": "#ffffff", + "animation": { + "h": { + "count": 0, + "enable": false, + "offset": 0, + "speed": 1, + "delay": 0, + "decay": 0, + "sync": true + }, + "s": { + "count": 0, + "enable": false, + "offset": 0, + "speed": 1, + "delay": 0, + "decay": 0, + "sync": true + }, + "l": { + "count": 0, + "enable": false, + "offset": 0, + "speed": 1, + "delay": 0, + "decay": 0, + "sync": true + } + } + }, + "groups": {}, + "move": { + "angle": { + "offset": 0, + "value": 90 + }, + "attract": { + "distance": 200, + "enable": false, + "rotate": { + "x": 600, + "y": 1200 + } + }, + "center": { + "x": 50, + "y": 50, + "mode": "percent", + "radius": 0 + }, + "decay": 0, + "distance": {}, + "direction": "left", + "drift": 0, + "enable": true, + "gravity": { + "acceleration": 9.81, + "enable": false, + "inverse": false, + "maxSpeed": 50 + }, + "path": { + "clamp": true, + "delay": { + "random": { + "enable": false, + "minimumValue": 0 + }, + "value": 0 + }, + "enable": false, + "options": {} + }, + "outModes": { + "default": "out", + "bottom": "out", + "left": "out", + "right": "out", + "top": "out" + }, + "random": false, + "size": false, + "speed": 6, + "spin": { + "acceleration": 0, + "enable": false + }, + "straight": true, + "trail": { + "enable": false, + "length": 10, + "fill": {} + }, + "vibrate": false, + "warp": false + }, + "number": { + "density": { + "enable": false, + "width": 1920, + "height": 1080 + }, + "limit": 0, + "value": 100 + }, + "opacity": { + "random": { + "enable": false, + "minimumValue": 0.1 + }, + "value": 0.5, + "animation": { + "count": 0, + "enable": false, + "speed": 1, + "decay": 0, + "delay": 0, + "sync": false, + "mode": "auto", + "startValue": "random", + "destroy": "none", + "minimumValue": 0.1 + } + }, + "reduceDuplicates": false, + "shadow": { + "blur": 0, + "color": { + "value": "#000" + }, + "enable": false, + "offset": { + "x": 0, + "y": 0 + } + }, + "shape": { + "close": true, + "fill": true, + "options": { + "star": { + "sides": 5 + }, + "polygon": { + "sides": 5 + } + }, + "type": "star" + }, + "size": { + "random": { + "enable": true, + "minimumValue": 1 + }, + "value": { + "min": 1, + "max": 4 + }, + "animation": { + "count": 0, + "enable": false, + "speed": 40, + "decay": 0, + "delay": 0, + "sync": false, + "mode": "auto", + "startValue": "random", + "destroy": "none", + "minimumValue": 0.1 + } + }, + "stroke": { + "width": 0 + }, + "zIndex": { + "random": { + "enable": false, + "minimumValue": 0 + }, + "value": 0, + "opacityRate": 1, + "sizeRate": 1, + "velocityRate": 1 + }, + "destroy": { + "bounds": {}, + "mode": "none", + "split": { + "count": 1, + "factor": { + "random": { + "enable": false, + "minimumValue": 0 + }, + "value": 3 + }, + "rate": { + "random": { + "enable": false, + "minimumValue": 0 + }, + "value": { + "min": 4, + "max": 9 + } + }, + "sizeOffset": true, + "particles": {} + } + }, + "roll": { + "darken": { + "enable": false, + "value": 0 + }, + "enable": false, + "enlighten": { + "enable": false, + "value": 0 + }, + "mode": "vertical", + "speed": 25 + }, + "tilt": { + "random": { + "enable": false, + "minimumValue": 0 + }, + "value": 0, + "animation": { + "enable": false, + "speed": 0, + "decay": 0, + "sync": false + }, + "direction": "clockwise", + "enable": false + }, + "twinkle": { + "lines": { + "enable": false, + "frequency": 0.05, + "opacity": 1 + }, + "particles": { + "enable": false, + "frequency": 0.05, + "opacity": 1 + } + }, + "wobble": { + "distance": 5, + "enable": false, + "speed": { + "angle": 50, + "move": 10 + } + }, + "life": { + "count": 0, + "delay": { + "random": { + "enable": false, + "minimumValue": 0 + }, + "value": 0, + "sync": false + }, + "duration": { + "random": { + "enable": false, + "minimumValue": 0.0001 + }, + "value": 0, + "sync": false + } + }, + "rotate": { + "random": { + "enable": false, + "minimumValue": 0 + }, + "value": 0, + "animation": { + "enable": false, + "speed": 0, + "decay": 0, + "sync": false + }, + "direction": "clockwise", + "path": false + }, + "orbit": { + "animation": { + "count": 0, + "enable": false, + "speed": 1, + "decay": 0, + "delay": 0, + "sync": false + }, + "enable": false, + "opacity": 1, + "rotation": { + "random": { + "enable": false, + "minimumValue": 0 + }, + "value": 45 + }, + "width": 1 + }, + "links": { + "blink": false, + "color": { + "value": "#ffffff" + }, + "consent": false, + "distance": 150, + "enable": false, + "frequency": 1, + "opacity": 0.4, + "shadow": { + "blur": 5, + "color": { + "value": "#000" + }, + "enable": false + }, + "triangles": { + "enable": false, + "frequency": 1 + }, + "width": 1, + "warp": false + }, + "repulse": { + "random": { + "enable": false, + "minimumValue": 0 + }, + "value": 0, + "enabled": false, + "distance": 1, + "duration": 1, + "factor": 1, + "speed": 1 + } + }, + "pauseOnBlur": true, + "pauseOnOutsideViewport": true, + "responsive": [], + "smooth": false, + "style": {}, + "themes": [], + "zLayers": 100, + "motion": { + "disable": false, + "reduce": { + "factor": 4, + "value": true + } + } +} diff --git a/assets/ts-particles/snow.json b/assets/ts-particles/snow.json new file mode 100644 index 0000000..ada2880 --- /dev/null +++ b/assets/ts-particles/snow.json @@ -0,0 +1,110 @@ +{ + "particles": { + "number": { + "value": 52, + "density": { + "enable": true, + "value_area": 631.3280775270874 + } + }, + "color": { + "value": "#fff" + }, + "shape": { + "type": "circle", + "stroke": { + "width": 0, + "color": "#000000" + }, + "polygon": { + "nb_sides": 5 + }, + "image": { + "src": "img/github.svg", + "width": 100, + "height": 100 + } + }, + "opacity": { + "value": 0.5, + "random": true, + "anim": { + "enable": false, + "speed": 1, + "opacity_min": 0.1, + "sync": false + } + }, + "size": { + "value": 5, + "random": true, + "anim": { + "enable": false, + "speed": 40, + "size_min": 0.1, + "sync": false + } + }, + "line_linked": { + "enable": false, + "distance": 500, + "color": "#ffffff", + "opacity": 0.4, + "width": 2 + }, + "move": { + "enable": true, + "speed": 1.5, + "direction": "bottom", + "random": false, + "straight": false, + "out_mode": "out", + "bounce": false, + "attract": { + "enable": false, + "rotateX": 600, + "rotateY": 1200 + } + } + }, + "interactivity": { + "detect_on": "canvas", + "events": { + "onhover": { + "enable": false, + "mode": "bubble" + }, + "onclick": { + "enable": true, + "mode": "repulse" + }, + "resize": true + }, + "modes": { + "grab": { + "distance": 400, + "line_linked": { + "opacity": 0.5 + } + }, + "bubble": { + "distance": 400, + "size": 4, + "duration": 0.3, + "opacity": 1, + "speed": 3 + }, + "repulse": { + "distance": 200, + "duration": 0.4 + }, + "push": { + "particles_nb": 4 + }, + "remove": { + "particles_nb": 2 + } + } + }, + "retina_detect": true +} diff --git a/index.html b/index.html new file mode 100644 index 0000000..83e50ce --- /dev/null +++ b/index.html @@ -0,0 +1,15 @@ + + + + + + + Vite + React + TS + + + + +
+ + +