From 5bac6d7d1995591aca6cea4e5b64299fd8fbfde4 Mon Sep 17 00:00:00 2001 From: Lea Anthony Date: Sat, 6 Dec 2025 16:47:51 +1100 Subject: [PATCH] feat(setup): Preserve existing setup wizard design --- .../frontend/dist/assets/index-5h4Dv4JW.css | 1 + .../frontend/dist/assets/index-BYm8n1Ze.js | 48 + .../setupwizard/frontend/dist/index.html | 16 + .../setupwizard/frontend/dist/wails-logo.png | Bin 0 -> 174365 bytes v3/internal/setupwizard/frontend/index.html | 15 + .../setupwizard/frontend/package-lock.json | 2687 +++++++++++++++++ v3/internal/setupwizard/frontend/package.json | 26 + .../setupwizard/frontend/postcss.config.js | 6 + .../frontend/public/wails-logo.png | Bin 0 -> 174365 bytes v3/internal/setupwizard/frontend/src/App.tsx | 327 ++ v3/internal/setupwizard/frontend/src/api.ts | 60 + .../frontend/src/components/WailsLogo.tsx | 19 + .../setupwizard/frontend/src/index.css | 112 + v3/internal/setupwizard/frontend/src/main.tsx | 10 + v3/internal/setupwizard/frontend/src/types.ts | 61 + .../setupwizard/frontend/tailwind.config.js | 56 + .../setupwizard/frontend/tsconfig.json | 20 + .../setupwizard/frontend/vite.config.ts | 10 + v3/internal/setupwizard/wizard.go | 328 ++ v3/internal/setupwizard/wizard_darwin.go | 135 + v3/internal/setupwizard/wizard_linux.go | 130 + v3/internal/setupwizard/wizard_windows.go | 142 + 22 files changed, 4209 insertions(+) create mode 100644 v3/internal/setupwizard/frontend/dist/assets/index-5h4Dv4JW.css create mode 100644 v3/internal/setupwizard/frontend/dist/assets/index-BYm8n1Ze.js create mode 100644 v3/internal/setupwizard/frontend/dist/index.html create mode 100755 v3/internal/setupwizard/frontend/dist/wails-logo.png create mode 100644 v3/internal/setupwizard/frontend/index.html create mode 100644 v3/internal/setupwizard/frontend/package-lock.json create mode 100644 v3/internal/setupwizard/frontend/package.json create mode 100644 v3/internal/setupwizard/frontend/postcss.config.js create mode 100755 v3/internal/setupwizard/frontend/public/wails-logo.png create mode 100644 v3/internal/setupwizard/frontend/src/App.tsx create mode 100644 v3/internal/setupwizard/frontend/src/api.ts create mode 100644 v3/internal/setupwizard/frontend/src/components/WailsLogo.tsx create mode 100644 v3/internal/setupwizard/frontend/src/index.css create mode 100644 v3/internal/setupwizard/frontend/src/main.tsx create mode 100644 v3/internal/setupwizard/frontend/src/types.ts create mode 100644 v3/internal/setupwizard/frontend/tailwind.config.js create mode 100644 v3/internal/setupwizard/frontend/tsconfig.json create mode 100644 v3/internal/setupwizard/frontend/vite.config.ts create mode 100644 v3/internal/setupwizard/wizard.go create mode 100644 v3/internal/setupwizard/wizard_darwin.go create mode 100644 v3/internal/setupwizard/wizard_linux.go create mode 100644 v3/internal/setupwizard/wizard_windows.go diff --git a/v3/internal/setupwizard/frontend/dist/assets/index-5h4Dv4JW.css b/v3/internal/setupwizard/frontend/dist/assets/index-5h4Dv4JW.css new file mode 100644 index 000000000..7d19d4038 --- /dev/null +++ b/v3/internal/setupwizard/frontend/dist/assets/index-5h4Dv4JW.css @@ -0,0 +1 @@ +*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.pointer-events-none{pointer-events:none}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.z-10{z-index:10}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mt-1{margin-top:.25rem}.mt-10{margin-top:2.5rem}.mt-2{margin-top:.5rem}.mt-6{margin-top:1.5rem}.flex{display:flex}.h-2{height:.5rem}.h-3{height:.75rem}.h-5{height:1.25rem}.min-h-screen{min-height:100vh}.w-2{width:.5rem}.w-3{width:.75rem}.w-5{width:1.25rem}.w-full{width:100%}.min-w-0{min-width:0px}.max-w-md{max-width:28rem}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:.5rem}.gap-4{gap:1rem}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.border-gray-700\/50{border-color:#37415180}.border-green-500\/30{border-color:#22c55e4d}.border-red-500{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.border-yellow-500\/30{border-color:#eab3084d}.border-t-transparent{border-top-color:transparent}.bg-\[\#0f0f0f\]{--tw-bg-opacity: 1;background-color:rgb(15 15 15 / var(--tw-bg-opacity, 1))}.bg-gray-800\/50{background-color:#1f293780}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-green-500\/10{background-color:#22c55e1a}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-red-500\/20{background-color:#ef444433}.bg-red-500\/50{background-color:#ef444480}.bg-yellow-500\/10{background-color:#eab3081a}.object-contain{-o-object-fit:contain;object-fit:contain}.p-4{padding:1rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.text-center{text-align:center}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.uppercase{text-transform:uppercase}.tracking-wider{letter-spacing:.05em}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-400{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{--wails-red: #ef4444;--wails-red-dark: #dc2626;--wails-red-light: #f87171;--bg-primary: #0f0f0f;--bg-secondary: #1f2937;--bg-tertiary: #374151}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;min-height:100vh;background:var(--bg-primary);color:#fff;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.gradient-text{background:linear-gradient(135deg,#fff,#ef4444);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.glass-card{background:#1f2937cc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(55,65,81,.5)}.grid-bg{background-image:linear-gradient(rgba(239,68,68,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(239,68,68,.03) 1px,transparent 1px);background-size:40px 40px}.radial-glow{background:radial-gradient(ellipse at center,rgba(239,68,68,.1) 0%,transparent 70%)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#4b5563}.btn-primary{border-radius:.75rem;background-image:linear-gradient(to right,var(--tw-gradient-stops));--tw-gradient-from: #ef4444 var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 68 68 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #dc2626 var(--tw-gradient-to-position);padding:.75rem 2rem;font-weight:600;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1));--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.btn-primary:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);--tw-shadow-color: rgb(239 68 68 / .3);--tw-shadow: var(--tw-shadow-colored)}.btn-primary:active{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.btn-secondary{border-radius:.75rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1));background-color:transparent;padding:.75rem 2rem;font-weight:500;--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1));transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.btn-secondary:hover{--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity, 1));background-color:#1f293780;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}@keyframes spin{to{transform:rotate(360deg)}}.spinner{animation:spin 1s linear infinite}.check-path{stroke-dasharray:100;stroke-dashoffset:100;animation:drawCheck .5s ease-out forwards}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}} diff --git a/v3/internal/setupwizard/frontend/dist/assets/index-BYm8n1Ze.js b/v3/internal/setupwizard/frontend/dist/assets/index-BYm8n1Ze.js new file mode 100644 index 000000000..251e50410 --- /dev/null +++ b/v3/internal/setupwizard/frontend/dist/assets/index-BYm8n1Ze.js @@ -0,0 +1,48 @@ +(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))r(i);new MutationObserver(i=>{for(const s of i)if(s.type==="childList")for(const o of s.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&r(o)}).observe(document,{childList:!0,subtree:!0});function n(i){const s={};return i.integrity&&(s.integrity=i.integrity),i.referrerPolicy&&(s.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?s.credentials="include":i.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function r(i){if(i.ep)return;i.ep=!0;const s=n(i);fetch(i.href,s)}})();function Nm(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Wf={exports:{}},xs={},$f={exports:{}},j={};/** + * @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 Xr=Symbol.for("react.element"),_m=Symbol.for("react.portal"),jm=Symbol.for("react.fragment"),Fm=Symbol.for("react.strict_mode"),Im=Symbol.for("react.profiler"),Om=Symbol.for("react.provider"),zm=Symbol.for("react.context"),Bm=Symbol.for("react.forward_ref"),Um=Symbol.for("react.suspense"),Wm=Symbol.for("react.memo"),$m=Symbol.for("react.lazy"),vu=Symbol.iterator;function Hm(e){return e===null||typeof e!="object"?null:(e=vu&&e[vu]||e["@@iterator"],typeof e=="function"?e:null)}var Hf={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Kf=Object.assign,Gf={};function Gn(e,t,n){this.props=e,this.context=t,this.refs=Gf,this.updater=n||Hf}Gn.prototype.isReactComponent={};Gn.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=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,e,t,"setState")};Gn.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function Qf(){}Qf.prototype=Gn.prototype;function Hl(e,t,n){this.props=e,this.context=t,this.refs=Gf,this.updater=n||Hf}var Kl=Hl.prototype=new Qf;Kl.constructor=Hl;Kf(Kl,Gn.prototype);Kl.isPureReactComponent=!0;var wu=Array.isArray,Yf=Object.prototype.hasOwnProperty,Gl={current:null},Xf={key:!0,ref:!0,__self:!0,__source:!0};function Zf(e,t,n){var r,i={},s=null,o=null;if(t!=null)for(r in t.ref!==void 0&&(o=t.ref),t.key!==void 0&&(s=""+t.key),t)Yf.call(t,r)&&!Xf.hasOwnProperty(r)&&(i[r]=t[r]);var l=arguments.length-2;if(l===1)i.children=n;else if(1>>1,ie=E[$];if(0>>1;$i(Us,N))Hti(li,Us)?(E[$]=li,E[Ht]=N,$=Ht):(E[$]=Us,E[$t]=N,$=$t);else if(Hti(li,N))E[$]=li,E[Ht]=N,$=Ht;else break e}}return R}function i(E,R){var N=E.sortIndex-R.sortIndex;return N!==0?N:E.id-R.id}if(typeof performance=="object"&&typeof performance.now=="function"){var s=performance;e.unstable_now=function(){return s.now()}}else{var o=Date,l=o.now();e.unstable_now=function(){return o.now()-l}}var a=[],u=[],c=1,f=null,d=3,y=!1,g=!1,v=!1,k=typeof setTimeout=="function"?setTimeout:null,p=typeof clearTimeout=="function"?clearTimeout:null,h=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function m(E){for(var R=n(u);R!==null;){if(R.callback===null)r(u);else if(R.startTime<=E)r(u),R.sortIndex=R.expirationTime,t(a,R);else break;R=n(u)}}function w(E){if(v=!1,m(E),!g)if(n(a)!==null)g=!0,si(S);else{var R=n(u);R!==null&&Z(w,R.startTime-E)}}function S(E,R){g=!1,v&&(v=!1,p(x),x=-1),y=!0;var N=d;try{for(m(R),f=n(a);f!==null&&(!(f.expirationTime>R)||E&&!J());){var $=f.callback;if(typeof $=="function"){f.callback=null,d=f.priorityLevel;var ie=$(f.expirationTime<=R);R=e.unstable_now(),typeof ie=="function"?f.callback=ie:f===n(a)&&r(a),m(R)}else r(a);f=n(a)}if(f!==null)var oi=!0;else{var $t=n(u);$t!==null&&Z(w,$t.startTime-R),oi=!1}return oi}finally{f=null,d=N,y=!1}}var T=!1,C=null,x=-1,_=5,V=-1;function J(){return!(e.unstable_now()-V<_)}function gt(){if(C!==null){var E=e.unstable_now();V=E;var R=!0;try{R=C(!0,E)}finally{R?Wt():(T=!1,C=null)}}else T=!1}var Wt;if(typeof h=="function")Wt=function(){h(gt)};else if(typeof MessageChannel<"u"){var Jn=new MessageChannel,ii=Jn.port2;Jn.port1.onmessage=gt,Wt=function(){ii.postMessage(null)}}else Wt=function(){k(gt,0)};function si(E){C=E,T||(T=!0,Wt())}function Z(E,R){x=k(function(){E(e.unstable_now())},R)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(E){E.callback=null},e.unstable_continueExecution=function(){g||y||(g=!0,si(S))},e.unstable_forceFrameRate=function(E){0>E||125$?(E.sortIndex=N,t(u,E),n(a)===null&&E===n(u)&&(v?(p(x),x=-1):v=!0,Z(w,N-$))):(E.sortIndex=ie,t(a,E),g||y||(g=!0,si(S))),E},e.unstable_shouldYield=J,e.unstable_wrapCallback=function(E){var R=d;return function(){var N=d;d=R;try{return E.apply(this,arguments)}finally{d=N}}}})(td);ed.exports=td;var ny=ed.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 ry=M,Re=ny;function P(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Ro=Object.prototype.hasOwnProperty,iy=/^[: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]*$/,xu={},Tu={};function sy(e){return Ro.call(Tu,e)?!0:Ro.call(xu,e)?!1:iy.test(e)?Tu[e]=!0:(xu[e]=!0,!1)}function oy(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return r?!1:n!==null?!n.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function ly(e,t,n,r){if(t===null||typeof t>"u"||oy(e,t,n,r))return!0;if(r)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function xe(e,t,n,r,i,s,o){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=i,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=s,this.removeEmptyString=o}var fe={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){fe[e]=new xe(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];fe[t]=new xe(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){fe[e]=new xe(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){fe[e]=new xe(e,2,!1,e,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(e){fe[e]=new xe(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){fe[e]=new xe(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){fe[e]=new xe(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){fe[e]=new xe(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){fe[e]=new xe(e,5,!1,e.toLowerCase(),null,!1,!1)});var Yl=/[\-:]([a-z])/g;function Xl(e){return e[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(e){var t=e.replace(Yl,Xl);fe[t]=new xe(t,1,!1,e,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(Yl,Xl);fe[t]=new xe(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(Yl,Xl);fe[t]=new xe(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){fe[e]=new xe(e,1,!1,e.toLowerCase(),null,!1,!1)});fe.xlinkHref=new xe("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){fe[e]=new xe(e,1,!1,e.toLowerCase(),null,!0,!0)});function Zl(e,t,n,r){var i=fe.hasOwnProperty(t)?fe[t]:null;(i!==null?i.type!==0:r||!(2l||i[o]!==s[l]){var a=` +`+i[o].replace(" at new "," at ");return e.displayName&&a.includes("")&&(a=a.replace("",e.displayName)),a}while(1<=o&&0<=l);break}}}finally{Hs=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?ar(e):""}function ay(e){switch(e.tag){case 5:return ar(e.type);case 16:return ar("Lazy");case 13:return ar("Suspense");case 19:return ar("SuspenseList");case 0:case 2:case 15:return e=Ks(e.type,!1),e;case 11:return e=Ks(e.type.render,!1),e;case 1:return e=Ks(e.type,!0),e;default:return""}}function jo(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case pn:return"Fragment";case hn:return"Portal";case Lo:return"Profiler";case ql:return"StrictMode";case No:return"Suspense";case _o:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case id:return(e.displayName||"Context")+".Consumer";case rd:return(e._context.displayName||"Context")+".Provider";case Jl:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case bl:return t=e.displayName||null,t!==null?t:jo(e.type)||"Memo";case St:t=e._payload,e=e._init;try{return jo(e(t))}catch{}}return null}function uy(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return jo(t);case 8:return t===ql?"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 t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function _t(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function od(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function cy(e){var t=od(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var i=n.get,s=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(o){r=""+o,s.call(this,o)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(o){r=""+o},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function ci(e){e._valueTracker||(e._valueTracker=cy(e))}function ld(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=od(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function Ki(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function Fo(e,t){var n=t.checked;return Q({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function Pu(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=_t(t.value!=null?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function ad(e,t){t=t.checked,t!=null&&Zl(e,"checked",t,!1)}function Io(e,t){ad(e,t);var n=_t(t.value),r=t.type;if(n!=null)r==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(r==="submit"||r==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?Oo(e,t.type,n):t.hasOwnProperty("defaultValue")&&Oo(e,t.type,_t(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function Cu(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!(r!=="submit"&&r!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}function Oo(e,t,n){(t!=="number"||Ki(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var ur=Array.isArray;function Vn(e,t,n,r){if(e=e.options,t){t={};for(var i=0;i"+t.valueOf().toString()+"",t=fi.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function Mr(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var hr={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},fy=["Webkit","ms","Moz","O"];Object.keys(hr).forEach(function(e){fy.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),hr[t]=hr[e]})});function dd(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||hr.hasOwnProperty(e)&&hr[e]?(""+t).trim():t+"px"}function hd(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,i=dd(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,i):e[n]=i}}var dy=Q({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 Uo(e,t){if(t){if(dy[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(P(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(P(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(P(61))}if(t.style!=null&&typeof t.style!="object")throw Error(P(62))}}function Wo(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){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 $o=null;function ea(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var Ho=null,Rn=null,Ln=null;function Du(e){if(e=Jr(e)){if(typeof Ho!="function")throw Error(P(280));var t=e.stateNode;t&&(t=Es(t),Ho(e.stateNode,e.type,t))}}function pd(e){Rn?Ln?Ln.push(e):Ln=[e]:Rn=e}function md(){if(Rn){var e=Rn,t=Ln;if(Ln=Rn=null,Du(e),t)for(e=0;e>>=0,e===0?32:31-(ky(e)/Py|0)|0}var di=64,hi=4194304;function cr(e){switch(e&-e){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 e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function Xi(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,i=e.suspendedLanes,s=e.pingedLanes,o=n&268435455;if(o!==0){var l=o&~i;l!==0?r=cr(l):(s&=o,s!==0&&(r=cr(s)))}else o=n&~i,o!==0?r=cr(o):s!==0&&(r=cr(s));if(r===0)return 0;if(t!==0&&t!==r&&!(t&i)&&(i=r&-r,s=t&-t,i>=s||i===16&&(s&4194240)!==0))return t;if(r&4&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0n;n++)t.push(e);return t}function Zr(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-Xe(t),e[t]=n}function Dy(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0=mr),Iu=" ",Ou=!1;function jd(e,t){switch(e){case"keyup":return ng.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Fd(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var mn=!1;function ig(e,t){switch(e){case"compositionend":return Fd(t);case"keypress":return t.which!==32?null:(Ou=!0,Iu);case"textInput":return e=t.data,e===Iu&&Ou?null:e;default:return null}}function sg(e,t){if(mn)return e==="compositionend"||!aa&&jd(e,t)?(e=Nd(),Li=sa=Pt=null,mn=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=Wu(n)}}function Bd(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Bd(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Ud(){for(var e=window,t=Ki();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=Ki(e.document)}return t}function ua(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function pg(e){var t=Ud(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&Bd(n.ownerDocument.documentElement,n)){if(r!==null&&ua(n)){if(t=r.start,e=r.end,e===void 0&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var i=n.textContent.length,s=Math.min(r.start,i);r=r.end===void 0?s:Math.min(r.end,i),!e.extend&&s>r&&(i=r,r=s,s=i),i=$u(n,s);var o=$u(n,r);i&&o&&(e.rangeCount!==1||e.anchorNode!==i.node||e.anchorOffset!==i.offset||e.focusNode!==o.node||e.focusOffset!==o.offset)&&(t=t.createRange(),t.setStart(i.node,i.offset),e.removeAllRanges(),s>r?(e.addRange(t),e.extend(o.node,o.offset)):(t.setEnd(o.node,o.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n=document.documentMode,yn=null,Zo=null,gr=null,qo=!1;function Hu(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;qo||yn==null||yn!==Ki(r)||(r=yn,"selectionStart"in r&&ua(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),gr&&Nr(gr,r)||(gr=r,r=Ji(Zo,"onSelect"),0wn||(e.current=rl[wn],rl[wn]=null,wn--)}function O(e,t){wn++,rl[wn]=e.current,e.current=t}var jt={},ye=zt(jt),Ce=zt(!1),sn=jt;function On(e,t){var n=e.type.contextTypes;if(!n)return jt;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var i={},s;for(s in n)i[s]=t[s];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=i),i}function Ee(e){return e=e.childContextTypes,e!=null}function es(){B(Ce),B(ye)}function qu(e,t,n){if(ye.current!==jt)throw Error(P(168));O(ye,t),O(Ce,n)}function Zd(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var i in r)if(!(i in t))throw Error(P(108,uy(e)||"Unknown",i));return Q({},n,r)}function ts(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||jt,sn=ye.current,O(ye,e),O(Ce,Ce.current),!0}function Ju(e,t,n){var r=e.stateNode;if(!r)throw Error(P(169));n?(e=Zd(e,t,sn),r.__reactInternalMemoizedMergedChildContext=e,B(Ce),B(ye),O(ye,e)):B(Ce),O(Ce,n)}var ot=null,Ms=!1,so=!1;function qd(e){ot===null?ot=[e]:ot.push(e)}function Eg(e){Ms=!0,qd(e)}function Bt(){if(!so&&ot!==null){so=!0;var e=0,t=I;try{var n=ot;for(I=1;e>=o,i-=o,lt=1<<32-Xe(t)+i|n<x?(_=C,C=null):_=C.sibling;var V=d(p,C,m[x],w);if(V===null){C===null&&(C=_);break}e&&C&&V.alternate===null&&t(p,C),h=s(V,h,x),T===null?S=V:T.sibling=V,T=V,C=_}if(x===m.length)return n(p,C),U&&Gt(p,x),S;if(C===null){for(;xx?(_=C,C=null):_=C.sibling;var J=d(p,C,V.value,w);if(J===null){C===null&&(C=_);break}e&&C&&J.alternate===null&&t(p,C),h=s(J,h,x),T===null?S=J:T.sibling=J,T=J,C=_}if(V.done)return n(p,C),U&&Gt(p,x),S;if(C===null){for(;!V.done;x++,V=m.next())V=f(p,V.value,w),V!==null&&(h=s(V,h,x),T===null?S=V:T.sibling=V,T=V);return U&&Gt(p,x),S}for(C=r(p,C);!V.done;x++,V=m.next())V=y(C,p,x,V.value,w),V!==null&&(e&&V.alternate!==null&&C.delete(V.key===null?x:V.key),h=s(V,h,x),T===null?S=V:T.sibling=V,T=V);return e&&C.forEach(function(gt){return t(p,gt)}),U&&Gt(p,x),S}function k(p,h,m,w){if(typeof m=="object"&&m!==null&&m.type===pn&&m.key===null&&(m=m.props.children),typeof m=="object"&&m!==null){switch(m.$$typeof){case ui:e:{for(var S=m.key,T=h;T!==null;){if(T.key===S){if(S=m.type,S===pn){if(T.tag===7){n(p,T.sibling),h=i(T,m.props.children),h.return=p,p=h;break e}}else if(T.elementType===S||typeof S=="object"&&S!==null&&S.$$typeof===St&&tc(S)===T.type){n(p,T.sibling),h=i(T,m.props),h.ref=ir(p,T,m),h.return=p,p=h;break e}n(p,T);break}else t(p,T);T=T.sibling}m.type===pn?(h=tn(m.props.children,p.mode,w,m.key),h.return=p,p=h):(w=Bi(m.type,m.key,m.props,null,p.mode,w),w.ref=ir(p,h,m),w.return=p,p=w)}return o(p);case hn:e:{for(T=m.key;h!==null;){if(h.key===T)if(h.tag===4&&h.stateNode.containerInfo===m.containerInfo&&h.stateNode.implementation===m.implementation){n(p,h.sibling),h=i(h,m.children||[]),h.return=p,p=h;break e}else{n(p,h);break}else t(p,h);h=h.sibling}h=po(m,p.mode,w),h.return=p,p=h}return o(p);case St:return T=m._init,k(p,h,T(m._payload),w)}if(ur(m))return g(p,h,m,w);if(bn(m))return v(p,h,m,w);Si(p,m)}return typeof m=="string"&&m!==""||typeof m=="number"?(m=""+m,h!==null&&h.tag===6?(n(p,h.sibling),h=i(h,m),h.return=p,p=h):(n(p,h),h=ho(m,p.mode,w),h.return=p,p=h),o(p)):n(p,h)}return k}var Bn=th(!0),nh=th(!1),is=zt(null),ss=null,Tn=null,ha=null;function pa(){ha=Tn=ss=null}function ma(e){var t=is.current;B(is),e._currentValue=t}function ol(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,r!==null&&(r.childLanes|=t)):r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t),e===n)break;e=e.return}}function _n(e,t){ss=e,ha=Tn=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(ke=!0),e.firstContext=null)}function Ue(e){var t=e._currentValue;if(ha!==e)if(e={context:e,memoizedValue:t,next:null},Tn===null){if(ss===null)throw Error(P(308));Tn=e,ss.dependencies={lanes:0,firstContext:e}}else Tn=Tn.next=e;return t}var Zt=null;function ya(e){Zt===null?Zt=[e]:Zt.push(e)}function rh(e,t,n,r){var i=t.interleaved;return i===null?(n.next=n,ya(t)):(n.next=i.next,i.next=n),t.interleaved=n,dt(e,r)}function dt(e,t){e.lanes|=t;var n=e.alternate;for(n!==null&&(n.lanes|=t),n=e,e=e.return;e!==null;)e.childLanes|=t,n=e.alternate,n!==null&&(n.childLanes|=t),n=e,e=e.return;return n.tag===3?n.stateNode:null}var xt=!1;function ga(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function ih(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function ut(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function Vt(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,F&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,dt(e,n)}return i=r.interleaved,i===null?(t.next=t,ya(r)):(t.next=i.next,i.next=t),r.interleaved=t,dt(e,n)}function _i(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194240)!==0)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,na(e,n)}}function nc(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var o={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};s===null?i=s=o:s=s.next=o,n=n.next}while(n!==null);s===null?i=s=t:s=s.next=t}else i=s=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:s,shared:r.shared,effects:r.effects},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function os(e,t,n,r){var i=e.updateQueue;xt=!1;var s=i.firstBaseUpdate,o=i.lastBaseUpdate,l=i.shared.pending;if(l!==null){i.shared.pending=null;var a=l,u=a.next;a.next=null,o===null?s=u:o.next=u,o=a;var c=e.alternate;c!==null&&(c=c.updateQueue,l=c.lastBaseUpdate,l!==o&&(l===null?c.firstBaseUpdate=u:l.next=u,c.lastBaseUpdate=a))}if(s!==null){var f=i.baseState;o=0,c=u=a=null,l=s;do{var d=l.lane,y=l.eventTime;if((r&d)===d){c!==null&&(c=c.next={eventTime:y,lane:0,tag:l.tag,payload:l.payload,callback:l.callback,next:null});e:{var g=e,v=l;switch(d=t,y=n,v.tag){case 1:if(g=v.payload,typeof g=="function"){f=g.call(y,f,d);break e}f=g;break e;case 3:g.flags=g.flags&-65537|128;case 0:if(g=v.payload,d=typeof g=="function"?g.call(y,f,d):g,d==null)break e;f=Q({},f,d);break e;case 2:xt=!0}}l.callback!==null&&l.lane!==0&&(e.flags|=64,d=i.effects,d===null?i.effects=[l]:d.push(l))}else y={eventTime:y,lane:d,tag:l.tag,payload:l.payload,callback:l.callback,next:null},c===null?(u=c=y,a=f):c=c.next=y,o|=d;if(l=l.next,l===null){if(l=i.shared.pending,l===null)break;d=l,l=d.next,d.next=null,i.lastBaseUpdate=d,i.shared.pending=null}}while(!0);if(c===null&&(a=f),i.baseState=a,i.firstBaseUpdate=u,i.lastBaseUpdate=c,t=i.shared.interleaved,t!==null){i=t;do o|=i.lane,i=i.next;while(i!==t)}else s===null&&(i.shared.lanes=0);an|=o,e.lanes=o,e.memoizedState=f}}function rc(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;tn?n:4,e(!0);var r=lo.transition;lo.transition={};try{e(!1),t()}finally{I=n,lo.transition=r}}function xh(){return We().memoizedState}function Vg(e,t,n){var r=Lt(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},Th(e))kh(t,n);else if(n=rh(e,t,n,r),n!==null){var i=we();Ze(n,e,r,i),Ph(n,t,r)}}function Rg(e,t,n){var r=Lt(e),i={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(Th(e))kh(t,i);else{var s=e.alternate;if(e.lanes===0&&(s===null||s.lanes===0)&&(s=t.lastRenderedReducer,s!==null))try{var o=t.lastRenderedState,l=s(o,n);if(i.hasEagerState=!0,i.eagerState=l,qe(l,o)){var a=t.interleaved;a===null?(i.next=i,ya(t)):(i.next=a.next,a.next=i),t.interleaved=i;return}}catch{}finally{}n=rh(e,t,i,r),n!==null&&(i=we(),Ze(n,e,r,i),Ph(n,t,r))}}function Th(e){var t=e.alternate;return e===G||t!==null&&t===G}function kh(e,t){vr=as=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Ph(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,na(e,n)}}var us={readContext:Ue,useCallback:de,useContext:de,useEffect:de,useImperativeHandle:de,useInsertionEffect:de,useLayoutEffect:de,useMemo:de,useReducer:de,useRef:de,useState:de,useDebugValue:de,useDeferredValue:de,useTransition:de,useMutableSource:de,useSyncExternalStore:de,useId:de,unstable_isNewReconciler:!1},Lg={readContext:Ue,useCallback:function(e,t){return be().memoizedState=[e,t===void 0?null:t],e},useContext:Ue,useEffect:sc,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,Fi(4194308,4,yh.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Fi(4194308,4,e,t)},useInsertionEffect:function(e,t){return Fi(4,2,e,t)},useMemo:function(e,t){var n=be();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=be();return t=n!==void 0?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=Vg.bind(null,G,e),[r.memoizedState,e]},useRef:function(e){var t=be();return e={current:e},t.memoizedState=e},useState:ic,useDebugValue:Ca,useDeferredValue:function(e){return be().memoizedState=e},useTransition:function(){var e=ic(!1),t=e[0];return e=Ag.bind(null,e[1]),be().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=G,i=be();if(U){if(n===void 0)throw Error(P(407));n=n()}else{if(n=t(),le===null)throw Error(P(349));ln&30||ah(r,t,n)}i.memoizedState=n;var s={value:n,getSnapshot:t};return i.queue=s,sc(ch.bind(null,r,s,e),[e]),r.flags|=2048,Ur(9,uh.bind(null,r,s,n,t),void 0,null),n},useId:function(){var e=be(),t=le.identifierPrefix;if(U){var n=at,r=lt;n=(r&~(1<<32-Xe(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=zr++,0<\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=o.createElement(n,{is:r.is}):(e=o.createElement(n),n==="select"&&(o=e,r.multiple?o.multiple=!0:r.size&&(o.size=r.size))):e=o.createElementNS(e,n),e[et]=t,e[Fr]=r,_h(e,t,!1,!1),t.stateNode=e;e:{switch(o=Wo(n,r),n){case"dialog":z("cancel",e),z("close",e),i=r;break;case"iframe":case"object":case"embed":z("load",e),i=r;break;case"video":case"audio":for(i=0;i$n&&(t.flags|=128,r=!0,sr(s,!1),t.lanes=4194304)}else{if(!r)if(e=ls(o),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),sr(s,!0),s.tail===null&&s.tailMode==="hidden"&&!o.alternate&&!U)return he(t),null}else 2*q()-s.renderingStartTime>$n&&n!==1073741824&&(t.flags|=128,r=!0,sr(s,!1),t.lanes=4194304);s.isBackwards?(o.sibling=t.child,t.child=o):(n=s.last,n!==null?n.sibling=o:t.child=o,s.last=o)}return s.tail!==null?(t=s.tail,s.rendering=t,s.tail=t.sibling,s.renderingStartTime=q(),t.sibling=null,n=H.current,O(H,r?n&1|2:n&1),t):(he(t),null);case 22:case 23:return Ra(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?De&1073741824&&(he(t),t.subtreeFlags&6&&(t.flags|=8192)):he(t),null;case 24:return null;case 25:return null}throw Error(P(156,t.tag))}function Bg(e,t){switch(fa(t),t.tag){case 1:return Ee(t.type)&&es(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Un(),B(Ce),B(ye),Sa(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return wa(t),null;case 13:if(B(H),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(P(340));zn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return B(H),null;case 4:return Un(),null;case 10:return ma(t.type._context),null;case 22:case 23:return Ra(),null;case 24:return null;default:return null}}var Ti=!1,pe=!1,Ug=typeof WeakSet=="function"?WeakSet:Set,D=null;function kn(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){X(e,t,r)}else n.current=null}function ml(e,t,n){try{n()}catch(r){X(e,t,r)}}var yc=!1;function Wg(e,t){if(Jo=Zi,e=Ud(),ua(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var i=r.anchorOffset,s=r.focusNode;r=r.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var o=0,l=-1,a=-1,u=0,c=0,f=e,d=null;t:for(;;){for(var y;f!==n||i!==0&&f.nodeType!==3||(l=o+i),f!==s||r!==0&&f.nodeType!==3||(a=o+r),f.nodeType===3&&(o+=f.nodeValue.length),(y=f.firstChild)!==null;)d=f,f=y;for(;;){if(f===e)break t;if(d===n&&++u===i&&(l=o),d===s&&++c===r&&(a=o),(y=f.nextSibling)!==null)break;f=d,d=f.parentNode}f=y}n=l===-1||a===-1?null:{start:l,end:a}}else n=null}n=n||{start:0,end:0}}else n=null;for(bo={focusedElem:e,selectionRange:n},Zi=!1,D=t;D!==null;)if(t=D,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,D=e;else for(;D!==null;){t=D;try{var g=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(g!==null){var v=g.memoizedProps,k=g.memoizedState,p=t.stateNode,h=p.getSnapshotBeforeUpdate(t.elementType===t.type?v:Ge(t.type,v),k);p.__reactInternalSnapshotBeforeUpdate=h}break;case 3:var m=t.stateNode.containerInfo;m.nodeType===1?m.textContent="":m.nodeType===9&&m.documentElement&&m.removeChild(m.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(P(163))}}catch(w){X(t,t.return,w)}if(e=t.sibling,e!==null){e.return=t.return,D=e;break}D=t.return}return g=yc,yc=!1,g}function wr(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var i=r=r.next;do{if((i.tag&e)===e){var s=i.destroy;i.destroy=void 0,s!==void 0&&ml(t,n,s)}i=i.next}while(i!==r)}}function Vs(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function yl(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t=="function"?t(e):t.current=e}}function Ih(e){var t=e.alternate;t!==null&&(e.alternate=null,Ih(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[et],delete t[Fr],delete t[nl],delete t[Pg],delete t[Cg])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function Oh(e){return e.tag===5||e.tag===3||e.tag===4}function gc(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||Oh(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function gl(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=bi));else if(r!==4&&(e=e.child,e!==null))for(gl(e,t,n),e=e.sibling;e!==null;)gl(e,t,n),e=e.sibling}function vl(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(vl(e,t,n),e=e.sibling;e!==null;)vl(e,t,n),e=e.sibling}var ae=null,Qe=!1;function vt(e,t,n){for(n=n.child;n!==null;)zh(e,t,n),n=n.sibling}function zh(e,t,n){if(tt&&typeof tt.onCommitFiberUnmount=="function")try{tt.onCommitFiberUnmount(Ts,n)}catch{}switch(n.tag){case 5:pe||kn(n,t);case 6:var r=ae,i=Qe;ae=null,vt(e,t,n),ae=r,Qe=i,ae!==null&&(Qe?(e=ae,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):ae.removeChild(n.stateNode));break;case 18:ae!==null&&(Qe?(e=ae,n=n.stateNode,e.nodeType===8?io(e.parentNode,n):e.nodeType===1&&io(e,n),Rr(e)):io(ae,n.stateNode));break;case 4:r=ae,i=Qe,ae=n.stateNode.containerInfo,Qe=!0,vt(e,t,n),ae=r,Qe=i;break;case 0:case 11:case 14:case 15:if(!pe&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){i=r=r.next;do{var s=i,o=s.destroy;s=s.tag,o!==void 0&&(s&2||s&4)&&ml(n,t,o),i=i.next}while(i!==r)}vt(e,t,n);break;case 1:if(!pe&&(kn(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(l){X(n,t,l)}vt(e,t,n);break;case 21:vt(e,t,n);break;case 22:n.mode&1?(pe=(r=pe)||n.memoizedState!==null,vt(e,t,n),pe=r):vt(e,t,n);break;default:vt(e,t,n)}}function vc(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new Ug),t.forEach(function(r){var i=qg.bind(null,e,r);n.has(r)||(n.add(r),r.then(i,i))})}}function $e(e,t){var n=t.deletions;if(n!==null)for(var r=0;ri&&(i=o),r&=~s}if(r=i,r=q()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*Hg(r/1960))-r,10e?16:e,Ct===null)var r=!1;else{if(e=Ct,Ct=null,ds=0,F&6)throw Error(P(331));var i=F;for(F|=4,D=e.current;D!==null;){var s=D,o=s.child;if(D.flags&16){var l=s.deletions;if(l!==null){for(var a=0;aq()-Aa?en(e,0):Da|=n),Me(e,t)}function Qh(e,t){t===0&&(e.mode&1?(t=hi,hi<<=1,!(hi&130023424)&&(hi=4194304)):t=1);var n=we();e=dt(e,t),e!==null&&(Zr(e,t,n),Me(e,n))}function Zg(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),Qh(e,n)}function qg(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,i=e.memoizedState;i!==null&&(n=i.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(P(314))}r!==null&&r.delete(t),Qh(e,n)}var Yh;Yh=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||Ce.current)ke=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return ke=!1,Og(e,t,n);ke=!!(e.flags&131072)}else ke=!1,U&&t.flags&1048576&&Jd(t,rs,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;Ii(e,t),e=t.pendingProps;var i=On(t,ye.current);_n(t,n),i=Ta(null,t,r,e,i,n);var s=ka();return t.flags|=1,typeof i=="object"&&i!==null&&typeof i.render=="function"&&i.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,Ee(r)?(s=!0,ts(t)):s=!1,t.memoizedState=i.state!==null&&i.state!==void 0?i.state:null,ga(t),i.updater=As,t.stateNode=i,i._reactInternals=t,al(t,r,e,n),t=fl(null,t,r,!0,s,n)):(t.tag=0,U&&s&&ca(t),ge(null,t,i,n),t=t.child),t;case 16:r=t.elementType;e:{switch(Ii(e,t),e=t.pendingProps,i=r._init,r=i(r._payload),t.type=r,i=t.tag=bg(r),e=Ge(r,e),i){case 0:t=cl(null,t,r,e,n);break e;case 1:t=hc(null,t,r,e,n);break e;case 11:t=fc(null,t,r,e,n);break e;case 14:t=dc(null,t,r,Ge(r.type,e),n);break e}throw Error(P(306,r,""))}return t;case 0:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Ge(r,i),cl(e,t,r,i,n);case 1:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Ge(r,i),hc(e,t,r,i,n);case 3:e:{if(Rh(t),e===null)throw Error(P(387));r=t.pendingProps,s=t.memoizedState,i=s.element,ih(e,t),os(t,r,null,n);var o=t.memoizedState;if(r=o.element,s.isDehydrated)if(s={element:r,isDehydrated:!1,cache:o.cache,pendingSuspenseBoundaries:o.pendingSuspenseBoundaries,transitions:o.transitions},t.updateQueue.baseState=s,t.memoizedState=s,t.flags&256){i=Wn(Error(P(423)),t),t=pc(e,t,r,n,i);break e}else if(r!==i){i=Wn(Error(P(424)),t),t=pc(e,t,r,n,i);break e}else for(Ae=At(t.stateNode.containerInfo.firstChild),Ve=t,U=!0,Ye=null,n=nh(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(zn(),r===i){t=ht(e,t,n);break e}ge(e,t,r,n)}t=t.child}return t;case 5:return sh(t),e===null&&sl(t),r=t.type,i=t.pendingProps,s=e!==null?e.memoizedProps:null,o=i.children,el(r,i)?o=null:s!==null&&el(r,s)&&(t.flags|=32),Vh(e,t),ge(e,t,o,n),t.child;case 6:return e===null&&sl(t),null;case 13:return Lh(e,t,n);case 4:return va(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=Bn(t,null,r,n):ge(e,t,r,n),t.child;case 11:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Ge(r,i),fc(e,t,r,i,n);case 7:return ge(e,t,t.pendingProps,n),t.child;case 8:return ge(e,t,t.pendingProps.children,n),t.child;case 12:return ge(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,i=t.pendingProps,s=t.memoizedProps,o=i.value,O(is,r._currentValue),r._currentValue=o,s!==null)if(qe(s.value,o)){if(s.children===i.children&&!Ce.current){t=ht(e,t,n);break e}}else for(s=t.child,s!==null&&(s.return=t);s!==null;){var l=s.dependencies;if(l!==null){o=s.child;for(var a=l.firstContext;a!==null;){if(a.context===r){if(s.tag===1){a=ut(-1,n&-n),a.tag=2;var u=s.updateQueue;if(u!==null){u=u.shared;var c=u.pending;c===null?a.next=a:(a.next=c.next,c.next=a),u.pending=a}}s.lanes|=n,a=s.alternate,a!==null&&(a.lanes|=n),ol(s.return,n,t),l.lanes|=n;break}a=a.next}}else if(s.tag===10)o=s.type===t.type?null:s.child;else if(s.tag===18){if(o=s.return,o===null)throw Error(P(341));o.lanes|=n,l=o.alternate,l!==null&&(l.lanes|=n),ol(o,n,t),o=s.sibling}else o=s.child;if(o!==null)o.return=s;else for(o=s;o!==null;){if(o===t){o=null;break}if(s=o.sibling,s!==null){s.return=o.return,o=s;break}o=o.return}s=o}ge(e,t,i.children,n),t=t.child}return t;case 9:return i=t.type,r=t.pendingProps.children,_n(t,n),i=Ue(i),r=r(i),t.flags|=1,ge(e,t,r,n),t.child;case 14:return r=t.type,i=Ge(r,t.pendingProps),i=Ge(r.type,i),dc(e,t,r,i,n);case 15:return Dh(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Ge(r,i),Ii(e,t),t.tag=1,Ee(r)?(e=!0,ts(t)):e=!1,_n(t,n),Ch(t,r,i),al(t,r,i,n),fl(null,t,r,!0,e,n);case 19:return Nh(e,t,n);case 22:return Ah(e,t,n)}throw Error(P(156,t.tag))};function Xh(e,t){return Td(e,t)}function Jg(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Ie(e,t,n,r){return new Jg(e,t,n,r)}function Na(e){return e=e.prototype,!(!e||!e.isReactComponent)}function bg(e){if(typeof e=="function")return Na(e)?1:0;if(e!=null){if(e=e.$$typeof,e===Jl)return 11;if(e===bl)return 14}return 2}function Nt(e,t){var n=e.alternate;return n===null?(n=Ie(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Bi(e,t,n,r,i,s){var o=2;if(r=e,typeof e=="function")Na(e)&&(o=1);else if(typeof e=="string")o=5;else e:switch(e){case pn:return tn(n.children,i,s,t);case ql:o=8,i|=8;break;case Lo:return e=Ie(12,n,t,i|2),e.elementType=Lo,e.lanes=s,e;case No:return e=Ie(13,n,t,i),e.elementType=No,e.lanes=s,e;case _o:return e=Ie(19,n,t,i),e.elementType=_o,e.lanes=s,e;case sd:return Ls(n,i,s,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case rd:o=10;break e;case id:o=9;break e;case Jl:o=11;break e;case bl:o=14;break e;case St:o=16,r=null;break e}throw Error(P(130,e==null?e:typeof e,""))}return t=Ie(o,n,t,i),t.elementType=e,t.type=r,t.lanes=s,t}function tn(e,t,n,r){return e=Ie(7,e,r,t),e.lanes=n,e}function Ls(e,t,n,r){return e=Ie(22,e,r,t),e.elementType=sd,e.lanes=n,e.stateNode={isHidden:!1},e}function ho(e,t,n){return e=Ie(6,e,null,t),e.lanes=n,e}function po(e,t,n){return t=Ie(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function ev(e,t,n,r,i){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Qs(0),this.expirationTimes=Qs(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Qs(0),this.identifierPrefix=r,this.onRecoverableError=i,this.mutableSourceEagerHydrationData=null}function _a(e,t,n,r,i,s,o,l,a){return e=new ev(e,t,n,l,a),t===1?(t=1,s===!0&&(t|=8)):t=0,s=Ie(3,null,null,t),e.current=s,s.stateNode=e,s.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},ga(s),e}function tv(e,t,n){var r=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(bh)}catch(e){console.error(e)}}bh(),bf.exports=Le;var ov=bf.exports,Ec=ov;Vo.createRoot=Ec.createRoot,Vo.hydrateRoot=Ec.hydrateRoot;const Oa=M.createContext({});function za(e){const t=M.useRef(null);return t.current===null&&(t.current=e()),t.current}const Ba=typeof window<"u",ep=Ba?M.useLayoutEffect:M.useEffect,Is=M.createContext(null);function Ua(e,t){e.indexOf(t)===-1&&e.push(t)}function Wa(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const pt=(e,t,n)=>n>t?t:n{};const mt={},tp=e=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(e);function np(e){return typeof e=="object"&&e!==null}const rp=e=>/^0[^.\s]+$/u.test(e);function Ha(e){let t;return()=>(t===void 0&&(t=e()),t)}const Be=e=>e,lv=(e,t)=>n=>t(e(n)),ei=(...e)=>e.reduce(lv),$r=(e,t,n)=>{const r=t-e;return r===0?1:(n-e)/r};class Ka{constructor(){this.subscriptions=[]}add(t){return Ua(this.subscriptions,t),()=>Wa(this.subscriptions,t)}notify(t,n,r){const i=this.subscriptions.length;if(i)if(i===1)this.subscriptions[0](t,n,r);else for(let s=0;se*1e3,Oe=e=>e/1e3;function ip(e,t){return t?e*(1e3/t):0}const sp=(e,t,n)=>(((1-3*n+3*t)*e+(3*n-6*t))*e+3*t)*e,av=1e-7,uv=12;function cv(e,t,n,r,i){let s,o,l=0;do o=t+(n-t)/2,s=sp(o,r,i)-e,s>0?n=o:t=o;while(Math.abs(s)>av&&++lcv(s,0,1,e,n);return s=>s===0||s===1?s:sp(i(s),t,r)}const op=e=>t=>t<=.5?e(2*t)/2:(2-e(2*(1-t)))/2,lp=e=>t=>1-e(1-t),ap=ti(.33,1.53,.69,.99),Ga=lp(ap),up=op(Ga),cp=e=>(e*=2)<1?.5*Ga(e):.5*(2-Math.pow(2,-10*(e-1))),Qa=e=>1-Math.sin(Math.acos(e)),fp=lp(Qa),dp=op(Qa),fv=ti(.42,0,1,1),dv=ti(0,0,.58,1),hp=ti(.42,0,.58,1),hv=e=>Array.isArray(e)&&typeof e[0]!="number",pp=e=>Array.isArray(e)&&typeof e[0]=="number",pv={linear:Be,easeIn:fv,easeInOut:hp,easeOut:dv,circIn:Qa,circInOut:dp,circOut:fp,backIn:Ga,backInOut:up,backOut:ap,anticipate:cp},mv=e=>typeof e=="string",Mc=e=>{if(pp(e)){$a(e.length===4);const[t,n,r,i]=e;return ti(t,n,r,i)}else if(mv(e))return pv[e];return e},Ci=["setup","read","resolveKeyframes","preUpdate","update","preRender","render","postRender"];function yv(e,t){let n=new Set,r=new Set,i=!1,s=!1;const o=new WeakSet;let l={delta:0,timestamp:0,isProcessing:!1};function a(c){o.has(c)&&(u.schedule(c),e()),c(l)}const u={schedule:(c,f=!1,d=!1)=>{const g=d&&i?n:r;return f&&o.add(c),g.has(c)||g.add(c),c},cancel:c=>{r.delete(c),o.delete(c)},process:c=>{if(l=c,i){s=!0;return}i=!0,[n,r]=[r,n],n.forEach(a),n.clear(),i=!1,s&&(s=!1,u.process(c))}};return u}const gv=40;function mp(e,t){let n=!1,r=!0;const i={delta:0,timestamp:0,isProcessing:!1},s=()=>n=!0,o=Ci.reduce((m,w)=>(m[w]=yv(s),m),{}),{setup:l,read:a,resolveKeyframes:u,preUpdate:c,update:f,preRender:d,render:y,postRender:g}=o,v=()=>{const m=mt.useManualTiming?i.timestamp:performance.now();n=!1,mt.useManualTiming||(i.delta=r?1e3/60:Math.max(Math.min(m-i.timestamp,gv),1)),i.timestamp=m,i.isProcessing=!0,l.process(i),a.process(i),u.process(i),c.process(i),f.process(i),d.process(i),y.process(i),g.process(i),i.isProcessing=!1,n&&t&&(r=!1,e(v))},k=()=>{n=!0,r=!0,i.isProcessing||e(v)};return{schedule:Ci.reduce((m,w)=>{const S=o[w];return m[w]=(T,C=!1,x=!1)=>(n||k(),S.schedule(T,C,x)),m},{}),cancel:m=>{for(let w=0;w(Ui===void 0&&Pe.set(ue.isProcessing||mt.useManualTiming?ue.timestamp:performance.now()),Ui),set:e=>{Ui=e,queueMicrotask(vv)}},yp=e=>t=>typeof t=="string"&&t.startsWith(e),Ya=yp("--"),wv=yp("var(--"),Xa=e=>wv(e)?Sv.test(e.split("/*")[0].trim()):!1,Sv=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu,Xn={test:e=>typeof e=="number",parse:parseFloat,transform:e=>e},Hr={...Xn,transform:e=>pt(0,1,e)},Ei={...Xn,default:1},Tr=e=>Math.round(e*1e5)/1e5,Za=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu;function xv(e){return e==null}const Tv=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,qa=(e,t)=>n=>!!(typeof n=="string"&&Tv.test(n)&&n.startsWith(e)||t&&!xv(n)&&Object.prototype.hasOwnProperty.call(n,t)),gp=(e,t,n)=>r=>{if(typeof r!="string")return r;const[i,s,o,l]=r.match(Za);return{[e]:parseFloat(i),[t]:parseFloat(s),[n]:parseFloat(o),alpha:l!==void 0?parseFloat(l):1}},kv=e=>pt(0,255,e),yo={...Xn,transform:e=>Math.round(kv(e))},Jt={test:qa("rgb","red"),parse:gp("red","green","blue"),transform:({red:e,green:t,blue:n,alpha:r=1})=>"rgba("+yo.transform(e)+", "+yo.transform(t)+", "+yo.transform(n)+", "+Tr(Hr.transform(r))+")"};function Pv(e){let t="",n="",r="",i="";return e.length>5?(t=e.substring(1,3),n=e.substring(3,5),r=e.substring(5,7),i=e.substring(7,9)):(t=e.substring(1,2),n=e.substring(2,3),r=e.substring(3,4),i=e.substring(4,5),t+=t,n+=n,r+=r,i+=i),{red:parseInt(t,16),green:parseInt(n,16),blue:parseInt(r,16),alpha:i?parseInt(i,16)/255:1}}const kl={test:qa("#"),parse:Pv,transform:Jt.transform},ni=e=>({test:t=>typeof t=="string"&&t.endsWith(e)&&t.split(" ").length===1,parse:parseFloat,transform:t=>`${t}${e}`}),wt=ni("deg"),it=ni("%"),L=ni("px"),Cv=ni("vh"),Ev=ni("vw"),Dc={...it,parse:e=>it.parse(e)/100,transform:e=>it.transform(e*100)},Cn={test:qa("hsl","hue"),parse:gp("hue","saturation","lightness"),transform:({hue:e,saturation:t,lightness:n,alpha:r=1})=>"hsla("+Math.round(e)+", "+it.transform(Tr(t))+", "+it.transform(Tr(n))+", "+Tr(Hr.transform(r))+")"},b={test:e=>Jt.test(e)||kl.test(e)||Cn.test(e),parse:e=>Jt.test(e)?Jt.parse(e):Cn.test(e)?Cn.parse(e):kl.parse(e),transform:e=>typeof e=="string"?e:e.hasOwnProperty("red")?Jt.transform(e):Cn.transform(e),getAnimatableNone:e=>{const t=b.parse(e);return t.alpha=0,b.transform(t)}},Mv=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu;function Dv(e){var t,n;return isNaN(e)&&typeof e=="string"&&(((t=e.match(Za))==null?void 0:t.length)||0)+(((n=e.match(Mv))==null?void 0:n.length)||0)>0}const vp="number",wp="color",Av="var",Vv="var(",Ac="${}",Rv=/var\s*\(\s*--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)|#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\)|-?(?:\d+(?:\.\d+)?|\.\d+)/giu;function Kr(e){const t=e.toString(),n=[],r={color:[],number:[],var:[]},i=[];let s=0;const l=t.replace(Rv,a=>(b.test(a)?(r.color.push(s),i.push(wp),n.push(b.parse(a))):a.startsWith(Vv)?(r.var.push(s),i.push(Av),n.push(a)):(r.number.push(s),i.push(vp),n.push(parseFloat(a))),++s,Ac)).split(Ac);return{values:n,split:l,indexes:r,types:i}}function Sp(e){return Kr(e).values}function xp(e){const{split:t,types:n}=Kr(e),r=t.length;return i=>{let s="";for(let o=0;otypeof e=="number"?0:b.test(e)?b.getAnimatableNone(e):e;function Nv(e){const t=Sp(e);return xp(e)(t.map(Lv))}const It={test:Dv,parse:Sp,createTransformer:xp,getAnimatableNone:Nv};function go(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+(t-e)*6*n:n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function _v({hue:e,saturation:t,lightness:n,alpha:r}){e/=360,t/=100,n/=100;let i=0,s=0,o=0;if(!t)i=s=o=n;else{const l=n<.5?n*(1+t):n+t-n*t,a=2*n-l;i=go(a,l,e+1/3),s=go(a,l,e),o=go(a,l,e-1/3)}return{red:Math.round(i*255),green:Math.round(s*255),blue:Math.round(o*255),alpha:r}}function ms(e,t){return n=>n>0?t:e}const K=(e,t,n)=>e+(t-e)*n,vo=(e,t,n)=>{const r=e*e,i=n*(t*t-r)+r;return i<0?0:Math.sqrt(i)},jv=[kl,Jt,Cn],Fv=e=>jv.find(t=>t.test(e));function Vc(e){const t=Fv(e);if(!t)return!1;let n=t.parse(e);return t===Cn&&(n=_v(n)),n}const Rc=(e,t)=>{const n=Vc(e),r=Vc(t);if(!n||!r)return ms(e,t);const i={...n};return s=>(i.red=vo(n.red,r.red,s),i.green=vo(n.green,r.green,s),i.blue=vo(n.blue,r.blue,s),i.alpha=K(n.alpha,r.alpha,s),Jt.transform(i))},Pl=new Set(["none","hidden"]);function Iv(e,t){return Pl.has(e)?n=>n<=0?e:t:n=>n>=1?t:e}function Ov(e,t){return n=>K(e,t,n)}function Ja(e){return typeof e=="number"?Ov:typeof e=="string"?Xa(e)?ms:b.test(e)?Rc:Uv:Array.isArray(e)?Tp:typeof e=="object"?b.test(e)?Rc:zv:ms}function Tp(e,t){const n=[...e],r=n.length,i=e.map((s,o)=>Ja(s)(s,t[o]));return s=>{for(let o=0;o{for(const s in r)n[s]=r[s](i);return n}}function Bv(e,t){const n=[],r={color:0,var:0,number:0};for(let i=0;i{const n=It.createTransformer(t),r=Kr(e),i=Kr(t);return r.indexes.var.length===i.indexes.var.length&&r.indexes.color.length===i.indexes.color.length&&r.indexes.number.length>=i.indexes.number.length?Pl.has(e)&&!i.values.length||Pl.has(t)&&!r.values.length?Iv(e,t):ei(Tp(Bv(r,i),i.values),n):ms(e,t)};function kp(e,t,n){return typeof e=="number"&&typeof t=="number"&&typeof n=="number"?K(e,t,n):Ja(e)(e,t)}const Wv=e=>{const t=({timestamp:n})=>e(n);return{start:(n=!0)=>W.update(t,n),stop:()=>Ft(t),now:()=>ue.isProcessing?ue.timestamp:Pe.now()}},Pp=(e,t,n=10)=>{let r="";const i=Math.max(Math.round(t/n),2);for(let s=0;s=ys?1/0:t}function $v(e,t=100,n){const r=n({...e,keyframes:[0,t]}),i=Math.min(ba(r),ys);return{type:"keyframes",ease:s=>r.next(i*s).value/t,duration:Oe(i)}}const Hv=5;function Cp(e,t,n){const r=Math.max(t-Hv,0);return ip(n-e(r),t-r)}const Y={stiffness:100,damping:10,mass:1,velocity:0,duration:800,bounce:.3,visualDuration:.3,restSpeed:{granular:.01,default:2},restDelta:{granular:.005,default:.5},minDuration:.01,maxDuration:10,minDamping:.05,maxDamping:1},wo=.001;function Kv({duration:e=Y.duration,bounce:t=Y.bounce,velocity:n=Y.velocity,mass:r=Y.mass}){let i,s,o=1-t;o=pt(Y.minDamping,Y.maxDamping,o),e=pt(Y.minDuration,Y.maxDuration,Oe(e)),o<1?(i=u=>{const c=u*o,f=c*e,d=c-n,y=Cl(u,o),g=Math.exp(-f);return wo-d/y*g},s=u=>{const f=u*o*e,d=f*n+n,y=Math.pow(o,2)*Math.pow(u,2)*e,g=Math.exp(-f),v=Cl(Math.pow(u,2),o);return(-i(u)+wo>0?-1:1)*((d-y)*g)/v}):(i=u=>{const c=Math.exp(-u*e),f=(u-n)*e+1;return-wo+c*f},s=u=>{const c=Math.exp(-u*e),f=(n-u)*(e*e);return c*f});const l=5/e,a=Qv(i,s,l);if(e=rt(e),isNaN(a))return{stiffness:Y.stiffness,damping:Y.damping,duration:e};{const u=Math.pow(a,2)*r;return{stiffness:u,damping:o*2*Math.sqrt(r*u),duration:e}}}const Gv=12;function Qv(e,t,n){let r=n;for(let i=1;ie[n]!==void 0)}function Zv(e){let t={velocity:Y.velocity,stiffness:Y.stiffness,damping:Y.damping,mass:Y.mass,isResolvedFromDuration:!1,...e};if(!Lc(e,Xv)&&Lc(e,Yv))if(e.visualDuration){const n=e.visualDuration,r=2*Math.PI/(n*1.2),i=r*r,s=2*pt(.05,1,1-(e.bounce||0))*Math.sqrt(i);t={...t,mass:Y.mass,stiffness:i,damping:s}}else{const n=Kv(e);t={...t,...n,mass:Y.mass},t.isResolvedFromDuration=!0}return t}function gs(e=Y.visualDuration,t=Y.bounce){const n=typeof e!="object"?{visualDuration:e,keyframes:[0,1],bounce:t}:e;let{restSpeed:r,restDelta:i}=n;const s=n.keyframes[0],o=n.keyframes[n.keyframes.length-1],l={done:!1,value:s},{stiffness:a,damping:u,mass:c,duration:f,velocity:d,isResolvedFromDuration:y}=Zv({...n,velocity:-Oe(n.velocity||0)}),g=d||0,v=u/(2*Math.sqrt(a*c)),k=o-s,p=Oe(Math.sqrt(a/c)),h=Math.abs(k)<5;r||(r=h?Y.restSpeed.granular:Y.restSpeed.default),i||(i=h?Y.restDelta.granular:Y.restDelta.default);let m;if(v<1){const S=Cl(p,v);m=T=>{const C=Math.exp(-v*p*T);return o-C*((g+v*p*k)/S*Math.sin(S*T)+k*Math.cos(S*T))}}else if(v===1)m=S=>o-Math.exp(-p*S)*(k+(g+p*k)*S);else{const S=p*Math.sqrt(v*v-1);m=T=>{const C=Math.exp(-v*p*T),x=Math.min(S*T,300);return o-C*((g+v*p*k)*Math.sinh(x)+S*k*Math.cosh(x))/S}}const w={calculatedDuration:y&&f||null,next:S=>{const T=m(S);if(y)l.done=S>=f;else{let C=S===0?g:0;v<1&&(C=S===0?rt(g):Cp(m,S,T));const x=Math.abs(C)<=r,_=Math.abs(o-T)<=i;l.done=x&&_}return l.value=l.done?o:T,l},toString:()=>{const S=Math.min(ba(w),ys),T=Pp(C=>w.next(S*C).value,S,30);return S+"ms "+T},toTransition:()=>{}};return w}gs.applyToOptions=e=>{const t=$v(e,100,gs);return e.ease=t.ease,e.duration=rt(t.duration),e.type="keyframes",e};function El({keyframes:e,velocity:t=0,power:n=.8,timeConstant:r=325,bounceDamping:i=10,bounceStiffness:s=500,modifyTarget:o,min:l,max:a,restDelta:u=.5,restSpeed:c}){const f=e[0],d={done:!1,value:f},y=x=>l!==void 0&&xa,g=x=>l===void 0?a:a===void 0||Math.abs(l-x)-v*Math.exp(-x/r),m=x=>p+h(x),w=x=>{const _=h(x),V=m(x);d.done=Math.abs(_)<=u,d.value=d.done?p:V};let S,T;const C=x=>{y(d.value)&&(S=x,T=gs({keyframes:[d.value,g(d.value)],velocity:Cp(m,x,d.value),damping:i,stiffness:s,restDelta:u,restSpeed:c}))};return C(0),{calculatedDuration:null,next:x=>{let _=!1;return!T&&S===void 0&&(_=!0,w(x),C(x)),S!==void 0&&x>=S?T.next(x-S):(!_&&w(x),d)}}}function qv(e,t,n){const r=[],i=n||mt.mix||kp,s=e.length-1;for(let o=0;ot[0];if(s===2&&t[0]===t[1])return()=>t[1];const o=e[0]===e[1];e[0]>e[s-1]&&(e=[...e].reverse(),t=[...t].reverse());const l=qv(t,r,i),a=l.length,u=c=>{if(o&&c1)for(;fu(pt(e[0],e[s-1],c)):u}function bv(e,t){const n=e[e.length-1];for(let r=1;r<=t;r++){const i=$r(0,t,r);e.push(K(n,1,i))}}function e0(e){const t=[0];return bv(t,e.length-1),t}function t0(e,t){return e.map(n=>n*t)}function n0(e,t){return e.map(()=>t||hp).splice(0,e.length-1)}function kr({duration:e=300,keyframes:t,times:n,ease:r="easeInOut"}){const i=hv(r)?r.map(Mc):Mc(r),s={done:!1,value:t[0]},o=t0(n&&n.length===t.length?n:e0(t),e),l=Jv(o,t,{ease:Array.isArray(i)?i:n0(t,i)});return{calculatedDuration:e,next:a=>(s.value=l(a),s.done=a>=e,s)}}const r0=e=>e!==null;function eu(e,{repeat:t,repeatType:n="loop"},r,i=1){const s=e.filter(r0),l=i<0||t&&n!=="loop"&&t%2===1?0:s.length-1;return!l||r===void 0?s[l]:r}const i0={decay:El,inertia:El,tween:kr,keyframes:kr,spring:gs};function Ep(e){typeof e.type=="string"&&(e.type=i0[e.type])}class tu{constructor(){this.updateFinished()}get finished(){return this._finished}updateFinished(){this._finished=new Promise(t=>{this.resolve=t})}notifyFinished(){this.resolve()}then(t,n){return this.finished.then(t,n)}}const s0=e=>e/100;class nu extends tu{constructor(t){super(),this.state="idle",this.startTime=null,this.isStopped=!1,this.currentTime=0,this.holdTime=null,this.playbackSpeed=1,this.stop=()=>{var r,i;const{motionValue:n}=this.options;n&&n.updatedAt!==Pe.now()&&this.tick(Pe.now()),this.isStopped=!0,this.state!=="idle"&&(this.teardown(),(i=(r=this.options).onStop)==null||i.call(r))},this.options=t,this.initAnimation(),this.play(),t.autoplay===!1&&this.pause()}initAnimation(){const{options:t}=this;Ep(t);const{type:n=kr,repeat:r=0,repeatDelay:i=0,repeatType:s,velocity:o=0}=t;let{keyframes:l}=t;const a=n||kr;a!==kr&&typeof l[0]!="number"&&(this.mixKeyframes=ei(s0,kp(l[0],l[1])),l=[0,100]);const u=a({...t,keyframes:l});s==="mirror"&&(this.mirroredGenerator=a({...t,keyframes:[...l].reverse(),velocity:-o})),u.calculatedDuration===null&&(u.calculatedDuration=ba(u));const{calculatedDuration:c}=u;this.calculatedDuration=c,this.resolvedDuration=c+i,this.totalDuration=this.resolvedDuration*(r+1)-i,this.generator=u}updateTime(t){const n=Math.round(t-this.startTime)*this.playbackSpeed;this.holdTime!==null?this.currentTime=this.holdTime:this.currentTime=n}tick(t,n=!1){const{generator:r,totalDuration:i,mixKeyframes:s,mirroredGenerator:o,resolvedDuration:l,calculatedDuration:a}=this;if(this.startTime===null)return r.next(0);const{delay:u=0,keyframes:c,repeat:f,repeatType:d,repeatDelay:y,type:g,onUpdate:v,finalKeyframe:k}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,t):this.speed<0&&(this.startTime=Math.min(t-i/this.speed,this.startTime)),n?this.currentTime=t:this.updateTime(t);const p=this.currentTime-u*(this.playbackSpeed>=0?1:-1),h=this.playbackSpeed>=0?p<0:p>i;this.currentTime=Math.max(p,0),this.state==="finished"&&this.holdTime===null&&(this.currentTime=i);let m=this.currentTime,w=r;if(f){const x=Math.min(this.currentTime,i)/l;let _=Math.floor(x),V=x%1;!V&&x>=1&&(V=1),V===1&&_--,_=Math.min(_,f+1),!!(_%2)&&(d==="reverse"?(V=1-V,y&&(V-=y/l)):d==="mirror"&&(w=o)),m=pt(0,1,V)*l}const S=h?{done:!1,value:c[0]}:w.next(m);s&&(S.value=s(S.value));let{done:T}=S;!h&&a!==null&&(T=this.playbackSpeed>=0?this.currentTime>=i:this.currentTime<=0);const C=this.holdTime===null&&(this.state==="finished"||this.state==="running"&&T);return C&&g!==El&&(S.value=eu(c,this.options,k,this.speed)),v&&v(S.value),C&&this.finish(),S}then(t,n){return this.finished.then(t,n)}get duration(){return Oe(this.calculatedDuration)}get iterationDuration(){const{delay:t=0}=this.options||{};return this.duration+Oe(t)}get time(){return Oe(this.currentTime)}set time(t){var n;t=rt(t),this.currentTime=t,this.startTime===null||this.holdTime!==null||this.playbackSpeed===0?this.holdTime=t:this.driver&&(this.startTime=this.driver.now()-t/this.playbackSpeed),(n=this.driver)==null||n.start(!1)}get speed(){return this.playbackSpeed}set speed(t){this.updateTime(Pe.now());const n=this.playbackSpeed!==t;this.playbackSpeed=t,n&&(this.time=Oe(this.currentTime))}play(){var i,s;if(this.isStopped)return;const{driver:t=Wv,startTime:n}=this.options;this.driver||(this.driver=t(o=>this.tick(o))),(s=(i=this.options).onPlay)==null||s.call(i);const r=this.driver.now();this.state==="finished"?(this.updateFinished(),this.startTime=r):this.holdTime!==null?this.startTime=r-this.holdTime:this.startTime||(this.startTime=n??r),this.state==="finished"&&this.speed<0&&(this.startTime+=this.calculatedDuration),this.holdTime=null,this.state="running",this.driver.start()}pause(){this.state="paused",this.updateTime(Pe.now()),this.holdTime=this.currentTime}complete(){this.state!=="running"&&this.play(),this.state="finished",this.holdTime=null}finish(){var t,n;this.notifyFinished(),this.teardown(),this.state="finished",(n=(t=this.options).onComplete)==null||n.call(t)}cancel(){var t,n;this.holdTime=null,this.startTime=0,this.tick(0),this.teardown(),(n=(t=this.options).onCancel)==null||n.call(t)}teardown(){this.state="idle",this.stopDriver(),this.startTime=this.holdTime=null}stopDriver(){this.driver&&(this.driver.stop(),this.driver=void 0)}sample(t){return this.startTime=0,this.tick(t,!0)}attachTimeline(t){var n;return this.options.allowFlatten&&(this.options.type="keyframes",this.options.ease="linear",this.initAnimation()),(n=this.driver)==null||n.stop(),t.observe(this)}}function o0(e){for(let t=1;te*180/Math.PI,Ml=e=>{const t=bt(Math.atan2(e[1],e[0]));return Dl(t)},l0={x:4,y:5,translateX:4,translateY:5,scaleX:0,scaleY:3,scale:e=>(Math.abs(e[0])+Math.abs(e[3]))/2,rotate:Ml,rotateZ:Ml,skewX:e=>bt(Math.atan(e[1])),skewY:e=>bt(Math.atan(e[2])),skew:e=>(Math.abs(e[1])+Math.abs(e[2]))/2},Dl=e=>(e=e%360,e<0&&(e+=360),e),Nc=Ml,_c=e=>Math.sqrt(e[0]*e[0]+e[1]*e[1]),jc=e=>Math.sqrt(e[4]*e[4]+e[5]*e[5]),a0={x:12,y:13,z:14,translateX:12,translateY:13,translateZ:14,scaleX:_c,scaleY:jc,scale:e=>(_c(e)+jc(e))/2,rotateX:e=>Dl(bt(Math.atan2(e[6],e[5]))),rotateY:e=>Dl(bt(Math.atan2(-e[2],e[0]))),rotateZ:Nc,rotate:Nc,skewX:e=>bt(Math.atan(e[4])),skewY:e=>bt(Math.atan(e[1])),skew:e=>(Math.abs(e[1])+Math.abs(e[4]))/2};function Al(e){return e.includes("scale")?1:0}function Vl(e,t){if(!e||e==="none")return Al(t);const n=e.match(/^matrix3d\(([-\d.e\s,]+)\)$/u);let r,i;if(n)r=a0,i=n;else{const l=e.match(/^matrix\(([-\d.e\s,]+)\)$/u);r=l0,i=l}if(!i)return Al(t);const s=r[t],o=i[1].split(",").map(c0);return typeof s=="function"?s(o):o[s]}const u0=(e,t)=>{const{transform:n="none"}=getComputedStyle(e);return Vl(n,t)};function c0(e){return parseFloat(e.trim())}const Zn=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],qn=new Set(Zn),Fc=e=>e===Xn||e===L,f0=new Set(["x","y","z"]),d0=Zn.filter(e=>!f0.has(e));function h0(e){const t=[];return d0.forEach(n=>{const r=e.getValue(n);r!==void 0&&(t.push([n,r.get()]),r.set(n.startsWith("scale")?1:0))}),t}const nn={width:({x:e},{paddingLeft:t="0",paddingRight:n="0"})=>e.max-e.min-parseFloat(t)-parseFloat(n),height:({y:e},{paddingTop:t="0",paddingBottom:n="0"})=>e.max-e.min-parseFloat(t)-parseFloat(n),top:(e,{top:t})=>parseFloat(t),left:(e,{left:t})=>parseFloat(t),bottom:({y:e},{top:t})=>parseFloat(t)+(e.max-e.min),right:({x:e},{left:t})=>parseFloat(t)+(e.max-e.min),x:(e,{transform:t})=>Vl(t,"x"),y:(e,{transform:t})=>Vl(t,"y")};nn.translateX=nn.x;nn.translateY=nn.y;const rn=new Set;let Rl=!1,Ll=!1,Nl=!1;function Mp(){if(Ll){const e=Array.from(rn).filter(r=>r.needsMeasurement),t=new Set(e.map(r=>r.element)),n=new Map;t.forEach(r=>{const i=h0(r);i.length&&(n.set(r,i),r.render())}),e.forEach(r=>r.measureInitialState()),t.forEach(r=>{r.render();const i=n.get(r);i&&i.forEach(([s,o])=>{var l;(l=r.getValue(s))==null||l.set(o)})}),e.forEach(r=>r.measureEndState()),e.forEach(r=>{r.suspendedScrollY!==void 0&&window.scrollTo(0,r.suspendedScrollY)})}Ll=!1,Rl=!1,rn.forEach(e=>e.complete(Nl)),rn.clear()}function Dp(){rn.forEach(e=>{e.readKeyframes(),e.needsMeasurement&&(Ll=!0)})}function p0(){Nl=!0,Dp(),Mp(),Nl=!1}class ru{constructor(t,n,r,i,s,o=!1){this.state="pending",this.isAsync=!1,this.needsMeasurement=!1,this.unresolvedKeyframes=[...t],this.onComplete=n,this.name=r,this.motionValue=i,this.element=s,this.isAsync=o}scheduleResolve(){this.state="scheduled",this.isAsync?(rn.add(this),Rl||(Rl=!0,W.read(Dp),W.resolveKeyframes(Mp))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:t,name:n,element:r,motionValue:i}=this;if(t[0]===null){const s=i==null?void 0:i.get(),o=t[t.length-1];if(s!==void 0)t[0]=s;else if(r&&n){const l=r.readValue(n,o);l!=null&&(t[0]=l)}t[0]===void 0&&(t[0]=o),i&&s===void 0&&i.set(t[0])}o0(t)}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(t=!1){this.state="complete",this.onComplete(this.unresolvedKeyframes,this.finalKeyframe,t),rn.delete(this)}cancel(){this.state==="scheduled"&&(rn.delete(this),this.state="pending")}resume(){this.state==="pending"&&this.scheduleResolve()}}const m0=e=>e.startsWith("--");function y0(e,t,n){m0(t)?e.style.setProperty(t,n):e.style[t]=n}const g0=Ha(()=>window.ScrollTimeline!==void 0),v0={};function w0(e,t){const n=Ha(e);return()=>v0[t]??n()}const Ap=w0(()=>{try{document.createElement("div").animate({opacity:0},{easing:"linear(0, 1)"})}catch{return!1}return!0},"linearEasing"),dr=([e,t,n,r])=>`cubic-bezier(${e}, ${t}, ${n}, ${r})`,Ic={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:dr([0,.65,.55,1]),circOut:dr([.55,0,1,.45]),backIn:dr([.31,.01,.66,-.59]),backOut:dr([.33,1.53,.69,.99])};function Vp(e,t){if(e)return typeof e=="function"?Ap()?Pp(e,t):"ease-out":pp(e)?dr(e):Array.isArray(e)?e.map(n=>Vp(n,t)||Ic.easeOut):Ic[e]}function S0(e,t,n,{delay:r=0,duration:i=300,repeat:s=0,repeatType:o="loop",ease:l="easeOut",times:a}={},u=void 0){const c={[t]:n};a&&(c.offset=a);const f=Vp(l,i);Array.isArray(f)&&(c.easing=f);const d={delay:r,duration:i,easing:Array.isArray(f)?"linear":f,fill:"both",iterations:s+1,direction:o==="reverse"?"alternate":"normal"};return u&&(d.pseudoElement=u),e.animate(c,d)}function Rp(e){return typeof e=="function"&&"applyToOptions"in e}function x0({type:e,...t}){return Rp(e)&&Ap()?e.applyToOptions(t):(t.duration??(t.duration=300),t.ease??(t.ease="easeOut"),t)}class T0 extends tu{constructor(t){if(super(),this.finishedTime=null,this.isStopped=!1,!t)return;const{element:n,name:r,keyframes:i,pseudoElement:s,allowFlatten:o=!1,finalKeyframe:l,onComplete:a}=t;this.isPseudoElement=!!s,this.allowFlatten=o,this.options=t,$a(typeof t.type!="string");const u=x0(t);this.animation=S0(n,r,i,u,s),u.autoplay===!1&&this.animation.pause(),this.animation.onfinish=()=>{if(this.finishedTime=this.time,!s){const c=eu(i,this.options,l,this.speed);this.updateMotionValue?this.updateMotionValue(c):y0(n,r,c),this.animation.cancel()}a==null||a(),this.notifyFinished()}}play(){this.isStopped||(this.animation.play(),this.state==="finished"&&this.updateFinished())}pause(){this.animation.pause()}complete(){var t,n;(n=(t=this.animation).finish)==null||n.call(t)}cancel(){try{this.animation.cancel()}catch{}}stop(){if(this.isStopped)return;this.isStopped=!0;const{state:t}=this;t==="idle"||t==="finished"||(this.updateMotionValue?this.updateMotionValue():this.commitStyles(),this.isPseudoElement||this.cancel())}commitStyles(){var t,n;this.isPseudoElement||(n=(t=this.animation).commitStyles)==null||n.call(t)}get duration(){var n,r;const t=((r=(n=this.animation.effect)==null?void 0:n.getComputedTiming)==null?void 0:r.call(n).duration)||0;return Oe(Number(t))}get iterationDuration(){const{delay:t=0}=this.options||{};return this.duration+Oe(t)}get time(){return Oe(Number(this.animation.currentTime)||0)}set time(t){this.finishedTime=null,this.animation.currentTime=rt(t)}get speed(){return this.animation.playbackRate}set speed(t){t<0&&(this.finishedTime=null),this.animation.playbackRate=t}get state(){return this.finishedTime!==null?"finished":this.animation.playState}get startTime(){return Number(this.animation.startTime)}set startTime(t){this.animation.startTime=t}attachTimeline({timeline:t,observe:n}){var r;return this.allowFlatten&&((r=this.animation.effect)==null||r.updateTiming({easing:"linear"})),this.animation.onfinish=null,t&&g0()?(this.animation.timeline=t,Be):n(this)}}const Lp={anticipate:cp,backInOut:up,circInOut:dp};function k0(e){return e in Lp}function P0(e){typeof e.ease=="string"&&k0(e.ease)&&(e.ease=Lp[e.ease])}const Oc=10;class C0 extends T0{constructor(t){P0(t),Ep(t),super(t),t.startTime&&(this.startTime=t.startTime),this.options=t}updateMotionValue(t){const{motionValue:n,onUpdate:r,onComplete:i,element:s,...o}=this.options;if(!n)return;if(t!==void 0){n.set(t);return}const l=new nu({...o,autoplay:!1}),a=rt(this.finishedTime??this.time);n.setWithVelocity(l.sample(a-Oc).value,l.sample(a).value,Oc),l.stop()}}const zc=(e,t)=>t==="zIndex"?!1:!!(typeof e=="number"||Array.isArray(e)||typeof e=="string"&&(It.test(e)||e==="0")&&!e.startsWith("url("));function E0(e){const t=e[0];if(e.length===1)return!0;for(let n=0;nObject.hasOwnProperty.call(Element.prototype,"animate"));function V0(e){var c;const{motionValue:t,name:n,repeatDelay:r,repeatType:i,damping:s,type:o}=e;if(!(((c=t==null?void 0:t.owner)==null?void 0:c.current)instanceof HTMLElement))return!1;const{onUpdate:a,transformTemplate:u}=t.owner.getProps();return A0()&&n&&D0.has(n)&&(n!=="transform"||!u)&&!a&&!r&&i!=="mirror"&&s!==0&&o!=="inertia"}const R0=40;class L0 extends tu{constructor({autoplay:t=!0,delay:n=0,type:r="keyframes",repeat:i=0,repeatDelay:s=0,repeatType:o="loop",keyframes:l,name:a,motionValue:u,element:c,...f}){var g;super(),this.stop=()=>{var v,k;this._animation&&(this._animation.stop(),(v=this.stopTimeline)==null||v.call(this)),(k=this.keyframeResolver)==null||k.cancel()},this.createdAt=Pe.now();const d={autoplay:t,delay:n,type:r,repeat:i,repeatDelay:s,repeatType:o,name:a,motionValue:u,element:c,...f},y=(c==null?void 0:c.KeyframeResolver)||ru;this.keyframeResolver=new y(l,(v,k,p)=>this.onKeyframesResolved(v,k,d,!p),a,u,c),(g=this.keyframeResolver)==null||g.scheduleResolve()}onKeyframesResolved(t,n,r,i){this.keyframeResolver=void 0;const{name:s,type:o,velocity:l,delay:a,isHandoff:u,onUpdate:c}=r;this.resolvedAt=Pe.now(),M0(t,s,o,l)||((mt.instantAnimations||!a)&&(c==null||c(eu(t,r,n))),t[0]=t[t.length-1],_l(r),r.repeat=0);const d={startTime:i?this.resolvedAt?this.resolvedAt-this.createdAt>R0?this.resolvedAt:this.createdAt:this.createdAt:void 0,finalKeyframe:n,...r,keyframes:t},y=!u&&V0(d)?new C0({...d,element:d.motionValue.owner.current}):new nu(d);y.finished.then(()=>this.notifyFinished()).catch(Be),this.pendingTimeline&&(this.stopTimeline=y.attachTimeline(this.pendingTimeline),this.pendingTimeline=void 0),this._animation=y}get finished(){return this._animation?this.animation.finished:this._finished}then(t,n){return this.finished.finally(t).then(()=>{})}get animation(){var t;return this._animation||((t=this.keyframeResolver)==null||t.resume(),p0()),this._animation}get duration(){return this.animation.duration}get iterationDuration(){return this.animation.iterationDuration}get time(){return this.animation.time}set time(t){this.animation.time=t}get speed(){return this.animation.speed}get state(){return this.animation.state}set speed(t){this.animation.speed=t}get startTime(){return this.animation.startTime}attachTimeline(t){return this._animation?this.stopTimeline=this.animation.attachTimeline(t):this.pendingTimeline=t,()=>this.stop()}play(){this.animation.play()}pause(){this.animation.pause()}complete(){this.animation.complete()}cancel(){var t;this._animation&&this.animation.cancel(),(t=this.keyframeResolver)==null||t.cancel()}}const N0=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u;function _0(e){const t=N0.exec(e);if(!t)return[,];const[,n,r,i]=t;return[`--${n??r}`,i]}function Np(e,t,n=1){const[r,i]=_0(e);if(!r)return;const s=window.getComputedStyle(t).getPropertyValue(r);if(s){const o=s.trim();return tp(o)?parseFloat(o):o}return Xa(i)?Np(i,t,n+1):i}function iu(e,t){return(e==null?void 0:e[t])??(e==null?void 0:e.default)??e}const _p=new Set(["width","height","top","left","right","bottom",...Zn]),j0={test:e=>e==="auto",parse:e=>e},jp=e=>t=>t.test(e),Fp=[Xn,L,it,wt,Ev,Cv,j0],Bc=e=>Fp.find(jp(e));function F0(e){return typeof e=="number"?e===0:e!==null?e==="none"||e==="0"||rp(e):!0}const I0=new Set(["brightness","contrast","saturate","opacity"]);function O0(e){const[t,n]=e.slice(0,-1).split("(");if(t==="drop-shadow")return e;const[r]=n.match(Za)||[];if(!r)return e;const i=n.replace(r,"");let s=I0.has(t)?1:0;return r!==n&&(s*=100),t+"("+s+i+")"}const z0=/\b([a-z-]*)\(.*?\)/gu,jl={...It,getAnimatableNone:e=>{const t=e.match(z0);return t?t.map(O0).join(" "):e}},Uc={...Xn,transform:Math.round},B0={rotate:wt,rotateX:wt,rotateY:wt,rotateZ:wt,scale:Ei,scaleX:Ei,scaleY:Ei,scaleZ:Ei,skew:wt,skewX:wt,skewY:wt,distance:L,translateX:L,translateY:L,translateZ:L,x:L,y:L,z:L,perspective:L,transformPerspective:L,opacity:Hr,originX:Dc,originY:Dc,originZ:L},su={borderWidth:L,borderTopWidth:L,borderRightWidth:L,borderBottomWidth:L,borderLeftWidth:L,borderRadius:L,radius:L,borderTopLeftRadius:L,borderTopRightRadius:L,borderBottomRightRadius:L,borderBottomLeftRadius:L,width:L,maxWidth:L,height:L,maxHeight:L,top:L,right:L,bottom:L,left:L,padding:L,paddingTop:L,paddingRight:L,paddingBottom:L,paddingLeft:L,margin:L,marginTop:L,marginRight:L,marginBottom:L,marginLeft:L,backgroundPositionX:L,backgroundPositionY:L,...B0,zIndex:Uc,fillOpacity:Hr,strokeOpacity:Hr,numOctaves:Uc},U0={...su,color:b,backgroundColor:b,outlineColor:b,fill:b,stroke:b,borderColor:b,borderTopColor:b,borderRightColor:b,borderBottomColor:b,borderLeftColor:b,filter:jl,WebkitFilter:jl},Ip=e=>U0[e];function Op(e,t){let n=Ip(e);return n!==jl&&(n=It),n.getAnimatableNone?n.getAnimatableNone(t):void 0}const W0=new Set(["auto","none","0"]);function $0(e,t,n){let r=0,i;for(;r{t.getValue(a).set(u)}),this.resolveNoneKeyframes()}}function K0(e,t,n){if(e instanceof EventTarget)return[e];if(typeof e=="string"){let r=document;const i=(n==null?void 0:n[e])??r.querySelectorAll(e);return i?Array.from(i):[]}return Array.from(e)}const zp=(e,t)=>t&&typeof e=="number"?t.transform(e):e;function Bp(e){return np(e)&&"offsetHeight"in e}const Wc=30,G0=e=>!isNaN(parseFloat(e));class Q0{constructor(t,n={}){this.canTrackVelocity=null,this.events={},this.updateAndNotify=r=>{var s;const i=Pe.now();if(this.updatedAt!==i&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(r),this.current!==this.prev&&((s=this.events.change)==null||s.notify(this.current),this.dependents))for(const o of this.dependents)o.dirty()},this.hasAnimated=!1,this.setCurrent(t),this.owner=n.owner}setCurrent(t){this.current=t,this.updatedAt=Pe.now(),this.canTrackVelocity===null&&t!==void 0&&(this.canTrackVelocity=G0(this.current))}setPrevFrameValue(t=this.current){this.prevFrameValue=t,this.prevUpdatedAt=this.updatedAt}onChange(t){return this.on("change",t)}on(t,n){this.events[t]||(this.events[t]=new Ka);const r=this.events[t].add(n);return t==="change"?()=>{r(),W.read(()=>{this.events.change.getSize()||this.stop()})}:r}clearListeners(){for(const t in this.events)this.events[t].clear()}attach(t,n){this.passiveEffect=t,this.stopPassiveEffect=n}set(t){this.passiveEffect?this.passiveEffect(t,this.updateAndNotify):this.updateAndNotify(t)}setWithVelocity(t,n,r){this.set(n),this.prev=void 0,this.prevFrameValue=t,this.prevUpdatedAt=this.updatedAt-r}jump(t,n=!0){this.updateAndNotify(t),this.prev=t,this.prevUpdatedAt=this.prevFrameValue=void 0,n&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}dirty(){var t;(t=this.events.change)==null||t.notify(this.current)}addDependent(t){this.dependents||(this.dependents=new Set),this.dependents.add(t)}removeDependent(t){this.dependents&&this.dependents.delete(t)}get(){return this.current}getPrevious(){return this.prev}getVelocity(){const t=Pe.now();if(!this.canTrackVelocity||this.prevFrameValue===void 0||t-this.updatedAt>Wc)return 0;const n=Math.min(this.updatedAt-this.prevUpdatedAt,Wc);return ip(parseFloat(this.current)-parseFloat(this.prevFrameValue),n)}start(t){return this.stop(),new Promise(n=>{this.hasAnimated=!0,this.animation=t(n),this.events.animationStart&&this.events.animationStart.notify()}).then(()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()})}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){var t,n;(t=this.dependents)==null||t.clear(),(n=this.events.destroy)==null||n.notify(),this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function Hn(e,t){return new Q0(e,t)}const{schedule:ou}=mp(queueMicrotask,!1),Ke={x:!1,y:!1};function Up(){return Ke.x||Ke.y}function Y0(e){return e==="x"||e==="y"?Ke[e]?null:(Ke[e]=!0,()=>{Ke[e]=!1}):Ke.x||Ke.y?null:(Ke.x=Ke.y=!0,()=>{Ke.x=Ke.y=!1})}function Wp(e,t){const n=K0(e),r=new AbortController,i={passive:!0,...t,signal:r.signal};return[n,i,()=>r.abort()]}function $c(e){return!(e.pointerType==="touch"||Up())}function X0(e,t,n={}){const[r,i,s]=Wp(e,n),o=l=>{if(!$c(l))return;const{target:a}=l,u=t(a,l);if(typeof u!="function"||!a)return;const c=f=>{$c(f)&&(u(f),a.removeEventListener("pointerleave",c))};a.addEventListener("pointerleave",c,i)};return r.forEach(l=>{l.addEventListener("pointerenter",o,i)}),s}const $p=(e,t)=>t?e===t?!0:$p(e,t.parentElement):!1,lu=e=>e.pointerType==="mouse"?typeof e.button!="number"||e.button<=0:e.isPrimary!==!1,Z0=new Set(["BUTTON","INPUT","SELECT","TEXTAREA","A"]);function q0(e){return Z0.has(e.tagName)||e.tabIndex!==-1}const Wi=new WeakSet;function Hc(e){return t=>{t.key==="Enter"&&e(t)}}function So(e,t){e.dispatchEvent(new PointerEvent("pointer"+t,{isPrimary:!0,bubbles:!0}))}const J0=(e,t)=>{const n=e.currentTarget;if(!n)return;const r=Hc(()=>{if(Wi.has(n))return;So(n,"down");const i=Hc(()=>{So(n,"up")}),s=()=>So(n,"cancel");n.addEventListener("keyup",i,t),n.addEventListener("blur",s,t)});n.addEventListener("keydown",r,t),n.addEventListener("blur",()=>n.removeEventListener("keydown",r),t)};function Kc(e){return lu(e)&&!Up()}function b0(e,t,n={}){const[r,i,s]=Wp(e,n),o=l=>{const a=l.currentTarget;if(!Kc(l))return;Wi.add(a);const u=t(a,l),c=(y,g)=>{window.removeEventListener("pointerup",f),window.removeEventListener("pointercancel",d),Wi.has(a)&&Wi.delete(a),Kc(y)&&typeof u=="function"&&u(y,{success:g})},f=y=>{c(y,a===window||a===document||n.useGlobalTarget||$p(a,y.target))},d=y=>{c(y,!1)};window.addEventListener("pointerup",f,i),window.addEventListener("pointercancel",d,i)};return r.forEach(l=>{(n.useGlobalTarget?window:l).addEventListener("pointerdown",o,i),Bp(l)&&(l.addEventListener("focus",u=>J0(u,i)),!q0(l)&&!l.hasAttribute("tabindex")&&(l.tabIndex=0))}),s}function Hp(e){return np(e)&&"ownerSVGElement"in e}function e1(e){return Hp(e)&&e.tagName==="svg"}const me=e=>!!(e&&e.getVelocity),t1=[...Fp,b,It],n1=e=>t1.find(jp(e)),au=M.createContext({transformPagePoint:e=>e,isStatic:!1,reducedMotion:"never"});function Gc(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function r1(...e){return t=>{let n=!1;const r=e.map(i=>{const s=Gc(i,t);return!n&&typeof s=="function"&&(n=!0),s});if(n)return()=>{for(let i=0;i{const{width:u,height:c,top:f,left:d,right:y}=o.current;if(t||!s.current||!u||!c)return;const g=n==="left"?`left: ${d}`:`right: ${y}`;s.current.dataset.motionPopId=i;const v=document.createElement("style");l&&(v.nonce=l);const k=r??document.head;return k.appendChild(v),v.sheet&&v.sheet.insertRule(` + [data-motion-pop-id="${i}"] { + position: absolute !important; + width: ${u}px !important; + height: ${c}px !important; + ${g}px !important; + top: ${f}px !important; + } + `),()=>{k.contains(v)&&k.removeChild(v)}},[t]),A.jsx(s1,{isPresent:t,childRef:s,sizeRef:o,children:M.cloneElement(e,{ref:a})})}const l1=({children:e,initial:t,isPresent:n,onExitComplete:r,custom:i,presenceAffectsLayout:s,mode:o,anchorX:l,root:a})=>{const u=za(a1),c=M.useId();let f=!0,d=M.useMemo(()=>(f=!1,{id:c,initial:t,isPresent:n,custom:i,onExitComplete:y=>{u.set(y,!0);for(const g of u.values())if(!g)return;r&&r()},register:y=>(u.set(y,!1),()=>u.delete(y))}),[n,u,r]);return s&&f&&(d={...d}),M.useMemo(()=>{u.forEach((y,g)=>u.set(g,!1))},[n]),M.useEffect(()=>{!n&&!u.size&&r&&r()},[n]),o==="popLayout"&&(e=A.jsx(o1,{isPresent:n,anchorX:l,root:a,children:e})),A.jsx(Is.Provider,{value:d,children:e})};function a1(){return new Map}function Kp(e=!0){const t=M.useContext(Is);if(t===null)return[!0,null];const{isPresent:n,onExitComplete:r,register:i}=t,s=M.useId();M.useEffect(()=>{if(e)return i(s)},[e]);const o=M.useCallback(()=>e&&r&&r(s),[s,r,e]);return!n&&r?[!1,o]:[!0]}const Mi=e=>e.key||"";function Qc(e){const t=[];return M.Children.forEach(e,n=>{M.isValidElement(n)&&t.push(n)}),t}const Yc=({children:e,custom:t,initial:n=!0,onExitComplete:r,presenceAffectsLayout:i=!0,mode:s="sync",propagate:o=!1,anchorX:l="left",root:a})=>{const[u,c]=Kp(o),f=M.useMemo(()=>Qc(e),[e]),d=o&&!u?[]:f.map(Mi),y=M.useRef(!0),g=M.useRef(f),v=za(()=>new Map),[k,p]=M.useState(f),[h,m]=M.useState(f);ep(()=>{y.current=!1,g.current=f;for(let T=0;T{const C=Mi(T),x=o&&!u?!1:f===h||d.includes(C),_=()=>{if(v.has(C))v.set(C,!0);else return;let V=!0;v.forEach(J=>{J||(V=!1)}),V&&(S==null||S(),m(g.current),o&&(c==null||c()),r&&r())};return A.jsx(l1,{isPresent:x,initial:!y.current||n?void 0:!1,custom:t,presenceAffectsLayout:i,mode:s,root:a,onExitComplete:x?void 0:_,anchorX:l,children:T},C)})})},Gp=M.createContext({strict:!1}),Xc={animation:["animate","variants","whileHover","whileTap","exit","whileInView","whileFocus","whileDrag"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]},Kn={};for(const e in Xc)Kn[e]={isEnabled:t=>Xc[e].some(n=>!!t[n])};function u1(e){for(const t in e)Kn[t]={...Kn[t],...e[t]}}const c1=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","custom","inherit","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","globalTapTarget","ignoreStrict","viewport"]);function vs(e){return e.startsWith("while")||e.startsWith("drag")&&e!=="draggable"||e.startsWith("layout")||e.startsWith("onTap")||e.startsWith("onPan")||e.startsWith("onLayout")||c1.has(e)}let Qp=e=>!vs(e);function f1(e){typeof e=="function"&&(Qp=t=>t.startsWith("on")?!vs(t):e(t))}try{f1(require("@emotion/is-prop-valid").default)}catch{}function d1(e,t,n){const r={};for(const i in e)i==="values"&&typeof e.values=="object"||(Qp(i)||n===!0&&vs(i)||!t&&!vs(i)||e.draggable&&i.startsWith("onDrag"))&&(r[i]=e[i]);return r}const Os=M.createContext({});function zs(e){return e!==null&&typeof e=="object"&&typeof e.start=="function"}function Gr(e){return typeof e=="string"||Array.isArray(e)}const uu=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],cu=["initial",...uu];function Bs(e){return zs(e.animate)||cu.some(t=>Gr(e[t]))}function Yp(e){return!!(Bs(e)||e.variants)}function h1(e,t){if(Bs(e)){const{initial:n,animate:r}=e;return{initial:n===!1||Gr(n)?n:void 0,animate:Gr(r)?r:void 0}}return e.inherit!==!1?t:{}}function p1(e){const{initial:t,animate:n}=h1(e,M.useContext(Os));return M.useMemo(()=>({initial:t,animate:n}),[Zc(t),Zc(n)])}function Zc(e){return Array.isArray(e)?e.join(" "):e}const Qr={};function m1(e){for(const t in e)Qr[t]=e[t],Ya(t)&&(Qr[t].isCSSVariable=!0)}function Xp(e,{layout:t,layoutId:n}){return qn.has(e)||e.startsWith("origin")||(t||n!==void 0)&&(!!Qr[e]||e==="opacity")}const y1={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},g1=Zn.length;function v1(e,t,n){let r="",i=!0;for(let s=0;s({style:{},transform:{},transformOrigin:{},vars:{}});function Zp(e,t,n){for(const r in t)!me(t[r])&&!Xp(r,n)&&(e[r]=t[r])}function w1({transformTemplate:e},t){return M.useMemo(()=>{const n=du();return fu(n,t,e),Object.assign({},n.vars,n.style)},[t])}function S1(e,t){const n=e.style||{},r={};return Zp(r,n,e),Object.assign(r,w1(e,t)),r}function x1(e,t){const n={},r=S1(e,t);return e.drag&&e.dragListener!==!1&&(n.draggable=!1,r.userSelect=r.WebkitUserSelect=r.WebkitTouchCallout="none",r.touchAction=e.drag===!0?"none":`pan-${e.drag==="x"?"y":"x"}`),e.tabIndex===void 0&&(e.onTap||e.onTapStart||e.whileTap)&&(n.tabIndex=0),n.style=r,n}const T1={offset:"stroke-dashoffset",array:"stroke-dasharray"},k1={offset:"strokeDashoffset",array:"strokeDasharray"};function P1(e,t,n=1,r=0,i=!0){e.pathLength=1;const s=i?T1:k1;e[s.offset]=L.transform(-r);const o=L.transform(t),l=L.transform(n);e[s.array]=`${o} ${l}`}function qp(e,{attrX:t,attrY:n,attrScale:r,pathLength:i,pathSpacing:s=1,pathOffset:o=0,...l},a,u,c){if(fu(e,l,u),a){e.style.viewBox&&(e.attrs.viewBox=e.style.viewBox);return}e.attrs=e.style,e.style={};const{attrs:f,style:d}=e;f.transform&&(d.transform=f.transform,delete f.transform),(d.transform||f.transformOrigin)&&(d.transformOrigin=f.transformOrigin??"50% 50%",delete f.transformOrigin),d.transform&&(d.transformBox=(c==null?void 0:c.transformBox)??"fill-box",delete f.transformBox),t!==void 0&&(f.x=t),n!==void 0&&(f.y=n),r!==void 0&&(f.scale=r),i!==void 0&&P1(f,i,s,o,!1)}const Jp=()=>({...du(),attrs:{}}),bp=e=>typeof e=="string"&&e.toLowerCase()==="svg";function C1(e,t,n,r){const i=M.useMemo(()=>{const s=Jp();return qp(s,t,bp(r),e.transformTemplate,e.style),{...s.attrs,style:{...s.style}}},[t]);if(e.style){const s={};Zp(s,e.style,e),i.style={...s,...i.style}}return i}const E1=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function hu(e){return typeof e!="string"||e.includes("-")?!1:!!(E1.indexOf(e)>-1||/[A-Z]/u.test(e))}function M1(e,t,n,{latestValues:r},i,s=!1){const l=(hu(e)?C1:x1)(t,r,i,e),a=d1(t,typeof e=="string",s),u=e!==M.Fragment?{...a,...l,ref:n}:{},{children:c}=t,f=M.useMemo(()=>me(c)?c.get():c,[c]);return M.createElement(e,{...u,children:f})}function qc(e){const t=[{},{}];return e==null||e.values.forEach((n,r)=>{t[0][r]=n.get(),t[1][r]=n.getVelocity()}),t}function pu(e,t,n,r){if(typeof t=="function"){const[i,s]=qc(r);t=t(n!==void 0?n:e.custom,i,s)}if(typeof t=="string"&&(t=e.variants&&e.variants[t]),typeof t=="function"){const[i,s]=qc(r);t=t(n!==void 0?n:e.custom,i,s)}return t}function $i(e){return me(e)?e.get():e}function D1({scrapeMotionValuesFromProps:e,createRenderState:t},n,r,i){return{latestValues:A1(n,r,i,e),renderState:t()}}function A1(e,t,n,r){const i={},s=r(e,{});for(const d in s)i[d]=$i(s[d]);let{initial:o,animate:l}=e;const a=Bs(e),u=Yp(e);t&&u&&!a&&e.inherit!==!1&&(o===void 0&&(o=t.initial),l===void 0&&(l=t.animate));let c=n?n.initial===!1:!1;c=c||o===!1;const f=c?l:o;if(f&&typeof f!="boolean"&&!zs(f)){const d=Array.isArray(f)?f:[f];for(let y=0;y(t,n)=>{const r=M.useContext(Os),i=M.useContext(Is),s=()=>D1(e,t,r,i);return n?s():za(s)};function mu(e,t,n){var s;const{style:r}=e,i={};for(const o in r)(me(r[o])||t.style&&me(t.style[o])||Xp(o,e)||((s=n==null?void 0:n.getValue(o))==null?void 0:s.liveStyle)!==void 0)&&(i[o]=r[o]);return i}const V1=em({scrapeMotionValuesFromProps:mu,createRenderState:du});function tm(e,t,n){const r=mu(e,t,n);for(const i in e)if(me(e[i])||me(t[i])){const s=Zn.indexOf(i)!==-1?"attr"+i.charAt(0).toUpperCase()+i.substring(1):i;r[s]=e[i]}return r}const R1=em({scrapeMotionValuesFromProps:tm,createRenderState:Jp}),L1=Symbol.for("motionComponentSymbol");function En(e){return e&&typeof e=="object"&&Object.prototype.hasOwnProperty.call(e,"current")}function N1(e,t,n){return M.useCallback(r=>{r&&e.onMount&&e.onMount(r),t&&(r?t.mount(r):t.unmount()),n&&(typeof n=="function"?n(r):En(n)&&(n.current=r))},[t])}const yu=e=>e.replace(/([a-z])([A-Z])/gu,"$1-$2").toLowerCase(),_1="framerAppearId",nm="data-"+yu(_1),rm=M.createContext({});function j1(e,t,n,r,i){var v,k;const{visualElement:s}=M.useContext(Os),o=M.useContext(Gp),l=M.useContext(Is),a=M.useContext(au).reducedMotion,u=M.useRef(null);r=r||o.renderer,!u.current&&r&&(u.current=r(e,{visualState:t,parent:s,props:n,presenceContext:l,blockInitialAnimation:l?l.initial===!1:!1,reducedMotionConfig:a}));const c=u.current,f=M.useContext(rm);c&&!c.projection&&i&&(c.type==="html"||c.type==="svg")&&F1(u.current,n,i,f);const d=M.useRef(!1);M.useInsertionEffect(()=>{c&&d.current&&c.update(n,l)});const y=n[nm],g=M.useRef(!!y&&!((v=window.MotionHandoffIsComplete)!=null&&v.call(window,y))&&((k=window.MotionHasOptimisedAnimation)==null?void 0:k.call(window,y)));return ep(()=>{c&&(d.current=!0,window.MotionIsMounted=!0,c.updateFeatures(),c.scheduleRenderMicrotask(),g.current&&c.animationState&&c.animationState.animateChanges())}),M.useEffect(()=>{c&&(!g.current&&c.animationState&&c.animationState.animateChanges(),g.current&&(queueMicrotask(()=>{var p;(p=window.MotionHandoffMarkAsComplete)==null||p.call(window,y)}),g.current=!1),c.enteringChildren=void 0)}),c}function F1(e,t,n,r){const{layoutId:i,layout:s,drag:o,dragConstraints:l,layoutScroll:a,layoutRoot:u,layoutCrossfade:c}=t;e.projection=new n(e.latestValues,t["data-framer-portal-id"]?void 0:im(e.parent)),e.projection.setOptions({layoutId:i,layout:s,alwaysMeasureLayout:!!o||l&&En(l),visualElement:e,animationType:typeof s=="string"?s:"both",initialPromotionConfig:r,crossfade:c,layoutScroll:a,layoutRoot:u})}function im(e){if(e)return e.options.allowProjection!==!1?e.projection:im(e.parent)}function xo(e,{forwardMotionProps:t=!1}={},n,r){n&&u1(n);const i=hu(e)?R1:V1;function s(l,a){let u;const c={...M.useContext(au),...l,layoutId:I1(l)},{isStatic:f}=c,d=p1(l),y=i(l,f);if(!f&&Ba){O1();const g=z1(c);u=g.MeasureLayout,d.visualElement=j1(e,y,c,r,g.ProjectionNode)}return A.jsxs(Os.Provider,{value:d,children:[u&&d.visualElement?A.jsx(u,{visualElement:d.visualElement,...c}):null,M1(e,l,N1(y,d.visualElement,a),y,f,t)]})}s.displayName=`motion.${typeof e=="string"?e:`create(${e.displayName??e.name??""})`}`;const o=M.forwardRef(s);return o[L1]=e,o}function I1({layoutId:e}){const t=M.useContext(Oa).id;return t&&e!==void 0?t+"-"+e:e}function O1(e,t){M.useContext(Gp).strict}function z1(e){const{drag:t,layout:n}=Kn;if(!t&&!n)return{};const r={...t,...n};return{MeasureLayout:t!=null&&t.isEnabled(e)||n!=null&&n.isEnabled(e)?r.MeasureLayout:void 0,ProjectionNode:r.ProjectionNode}}function B1(e,t){if(typeof Proxy>"u")return xo;const n=new Map,r=(s,o)=>xo(s,o,e,t),i=(s,o)=>r(s,o);return new Proxy(i,{get:(s,o)=>o==="create"?r:(n.has(o)||n.set(o,xo(o,void 0,e,t)),n.get(o))})}function sm({top:e,left:t,right:n,bottom:r}){return{x:{min:t,max:n},y:{min:e,max:r}}}function U1({x:e,y:t}){return{top:t.min,right:e.max,bottom:t.max,left:e.min}}function W1(e,t){if(!t)return e;const n=t({x:e.left,y:e.top}),r=t({x:e.right,y:e.bottom});return{top:n.y,left:n.x,bottom:r.y,right:r.x}}function To(e){return e===void 0||e===1}function Fl({scale:e,scaleX:t,scaleY:n}){return!To(e)||!To(t)||!To(n)}function Yt(e){return Fl(e)||om(e)||e.z||e.rotate||e.rotateX||e.rotateY||e.skewX||e.skewY}function om(e){return Jc(e.x)||Jc(e.y)}function Jc(e){return e&&e!=="0%"}function ws(e,t,n){const r=e-n,i=t*r;return n+i}function bc(e,t,n,r,i){return i!==void 0&&(e=ws(e,i,r)),ws(e,n,r)+t}function Il(e,t=0,n=1,r,i){e.min=bc(e.min,t,n,r,i),e.max=bc(e.max,t,n,r,i)}function lm(e,{x:t,y:n}){Il(e.x,t.translate,t.scale,t.originPoint),Il(e.y,n.translate,n.scale,n.originPoint)}const ef=.999999999999,tf=1.0000000000001;function $1(e,t,n,r=!1){const i=n.length;if(!i)return;t.x=t.y=1;let s,o;for(let l=0;lef&&(t.x=1),t.yef&&(t.y=1)}function Mn(e,t){e.min=e.min+t,e.max=e.max+t}function nf(e,t,n,r,i=.5){const s=K(e.min,e.max,i);Il(e,t,n,s,r)}function Dn(e,t){nf(e.x,t.x,t.scaleX,t.scale,t.originX),nf(e.y,t.y,t.scaleY,t.scale,t.originY)}function am(e,t){return sm(W1(e.getBoundingClientRect(),t))}function H1(e,t,n){const r=am(e,n),{scroll:i}=t;return i&&(Mn(r.x,i.offset.x),Mn(r.y,i.offset.y)),r}const rf=()=>({translate:0,scale:1,origin:0,originPoint:0}),An=()=>({x:rf(),y:rf()}),sf=()=>({min:0,max:0}),te=()=>({x:sf(),y:sf()}),Ol={current:null},um={current:!1};function K1(){if(um.current=!0,!!Ba)if(window.matchMedia){const e=window.matchMedia("(prefers-reduced-motion)"),t=()=>Ol.current=e.matches;e.addEventListener("change",t),t()}else Ol.current=!1}const G1=new WeakMap;function Q1(e,t,n){for(const r in t){const i=t[r],s=n[r];if(me(i))e.addValue(r,i);else if(me(s))e.addValue(r,Hn(i,{owner:e}));else if(s!==i)if(e.hasValue(r)){const o=e.getValue(r);o.liveStyle===!0?o.jump(i):o.hasAnimated||o.set(i)}else{const o=e.getStaticValue(r);e.addValue(r,Hn(o!==void 0?o:i,{owner:e}))}}for(const r in n)t[r]===void 0&&e.removeValue(r);return t}const of=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"];class Y1{scrapeMotionValuesFromProps(t,n,r){return{}}constructor({parent:t,props:n,presenceContext:r,reducedMotionConfig:i,blockInitialAnimation:s,visualState:o},l={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.values=new Map,this.KeyframeResolver=ru,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.renderScheduledAt=0,this.scheduleRender=()=>{const d=Pe.now();this.renderScheduledAtthis.bindToMotionValue(i,r)),um.current||K1(),this.shouldReduceMotion=this.reducedMotionConfig==="never"?!1:this.reducedMotionConfig==="always"?!0:Ol.current,(n=this.parent)==null||n.addChild(this),this.update(this.props,this.presenceContext)}unmount(){var t;this.projection&&this.projection.unmount(),Ft(this.notifyUpdate),Ft(this.render),this.valueSubscriptions.forEach(n=>n()),this.valueSubscriptions.clear(),this.removeFromVariantTree&&this.removeFromVariantTree(),(t=this.parent)==null||t.removeChild(this);for(const n in this.events)this.events[n].clear();for(const n in this.features){const r=this.features[n];r&&(r.unmount(),r.isMounted=!1)}this.current=null}addChild(t){this.children.add(t),this.enteringChildren??(this.enteringChildren=new Set),this.enteringChildren.add(t)}removeChild(t){this.children.delete(t),this.enteringChildren&&this.enteringChildren.delete(t)}bindToMotionValue(t,n){this.valueSubscriptions.has(t)&&this.valueSubscriptions.get(t)();const r=qn.has(t);r&&this.onBindTransform&&this.onBindTransform();const i=n.on("change",o=>{this.latestValues[t]=o,this.props.onUpdate&&W.preRender(this.notifyUpdate),r&&this.projection&&(this.projection.isTransformDirty=!0),this.scheduleRender()});let s;window.MotionCheckAppearSync&&(s=window.MotionCheckAppearSync(this,t,n)),this.valueSubscriptions.set(t,()=>{i(),s&&s(),n.owner&&n.stop()})}sortNodePosition(t){return!this.current||!this.sortInstanceNodePosition||this.type!==t.type?0:this.sortInstanceNodePosition(this.current,t.current)}updateFeatures(){let t="animation";for(t in Kn){const n=Kn[t];if(!n)continue;const{isEnabled:r,Feature:i}=n;if(!this.features[t]&&i&&r(this.props)&&(this.features[t]=new i(this)),this.features[t]){const s=this.features[t];s.isMounted?s.update():(s.mount(),s.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):te()}getStaticValue(t){return this.latestValues[t]}setStaticValue(t,n){this.latestValues[t]=n}update(t,n){(t.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=t,this.prevPresenceContext=this.presenceContext,this.presenceContext=n;for(let r=0;rn.variantChildren.delete(t)}addValue(t,n){const r=this.values.get(t);n!==r&&(r&&this.removeValue(t),this.bindToMotionValue(t,n),this.values.set(t,n),this.latestValues[t]=n.get())}removeValue(t){this.values.delete(t);const n=this.valueSubscriptions.get(t);n&&(n(),this.valueSubscriptions.delete(t)),delete this.latestValues[t],this.removeValueFromRenderState(t,this.renderState)}hasValue(t){return this.values.has(t)}getValue(t,n){if(this.props.values&&this.props.values[t])return this.props.values[t];let r=this.values.get(t);return r===void 0&&n!==void 0&&(r=Hn(n===null?void 0:n,{owner:this}),this.addValue(t,r)),r}readValue(t,n){let r=this.latestValues[t]!==void 0||!this.current?this.latestValues[t]:this.getBaseTargetFromProps(this.props,t)??this.readValueFromInstance(this.current,t,this.options);return r!=null&&(typeof r=="string"&&(tp(r)||rp(r))?r=parseFloat(r):!n1(r)&&It.test(n)&&(r=Op(t,n)),this.setBaseTarget(t,me(r)?r.get():r)),me(r)?r.get():r}setBaseTarget(t,n){this.baseTarget[t]=n}getBaseTarget(t){var s;const{initial:n}=this.props;let r;if(typeof n=="string"||typeof n=="object"){const o=pu(this.props,n,(s=this.presenceContext)==null?void 0:s.custom);o&&(r=o[t])}if(n&&r!==void 0)return r;const i=this.getBaseTargetFromProps(this.props,t);return i!==void 0&&!me(i)?i:this.initialValues[t]!==void 0&&r===void 0?void 0:this.baseTarget[t]}on(t,n){return this.events[t]||(this.events[t]=new Ka),this.events[t].add(n)}notify(t,...n){this.events[t]&&this.events[t].notify(...n)}scheduleRenderMicrotask(){ou.render(this.render)}}class cm extends Y1{constructor(){super(...arguments),this.KeyframeResolver=H0}sortInstanceNodePosition(t,n){return t.compareDocumentPosition(n)&2?1:-1}getBaseTargetFromProps(t,n){return t.style?t.style[n]:void 0}removeValueFromRenderState(t,{vars:n,style:r}){delete n[t],delete r[t]}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:t}=this.props;me(t)&&(this.childSubscription=t.on("change",n=>{this.current&&(this.current.textContent=`${n}`)}))}}function fm(e,{style:t,vars:n},r,i){const s=e.style;let o;for(o in t)s[o]=t[o];i==null||i.applyProjectionStyles(s,r);for(o in n)s.setProperty(o,n[o])}function X1(e){return window.getComputedStyle(e)}class Z1 extends cm{constructor(){super(...arguments),this.type="html",this.renderInstance=fm}readValueFromInstance(t,n){var r;if(qn.has(n))return(r=this.projection)!=null&&r.isProjecting?Al(n):u0(t,n);{const i=X1(t),s=(Ya(n)?i.getPropertyValue(n):i[n])||0;return typeof s=="string"?s.trim():s}}measureInstanceViewportBox(t,{transformPagePoint:n}){return am(t,n)}build(t,n,r){fu(t,n,r.transformTemplate)}scrapeMotionValuesFromProps(t,n,r){return mu(t,n,r)}}const dm=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]);function q1(e,t,n,r){fm(e,t,void 0,r);for(const i in t.attrs)e.setAttribute(dm.has(i)?i:yu(i),t.attrs[i])}class J1 extends cm{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1,this.measureInstanceViewportBox=te}getBaseTargetFromProps(t,n){return t[n]}readValueFromInstance(t,n){if(qn.has(n)){const r=Ip(n);return r&&r.default||0}return n=dm.has(n)?n:yu(n),t.getAttribute(n)}scrapeMotionValuesFromProps(t,n,r){return tm(t,n,r)}build(t,n,r){qp(t,n,this.isSVGTag,r.transformTemplate,r.style)}renderInstance(t,n,r,i){q1(t,n,r,i)}mount(t){this.isSVGTag=bp(t.tagName),super.mount(t)}}const b1=(e,t)=>hu(e)?new J1(t):new Z1(t,{allowProjection:e!==M.Fragment});function Fn(e,t,n){const r=e.getProps();return pu(r,t,n!==void 0?n:r.custom,e)}const zl=e=>Array.isArray(e);function ew(e,t,n){e.hasValue(t)?e.getValue(t).set(n):e.addValue(t,Hn(n))}function tw(e){return zl(e)?e[e.length-1]||0:e}function nw(e,t){const n=Fn(e,t);let{transitionEnd:r={},transition:i={},...s}=n||{};s={...s,...r};for(const o in s){const l=tw(s[o]);ew(e,o,l)}}function rw(e){return!!(me(e)&&e.add)}function Bl(e,t){const n=e.getValue("willChange");if(rw(n))return n.add(t);if(!n&&mt.WillChange){const r=new mt.WillChange("auto");e.addValue("willChange",r),r.add(t)}}function hm(e){return e.props[nm]}const iw=e=>e!==null;function sw(e,{repeat:t,repeatType:n="loop"},r){const i=e.filter(iw),s=t&&n!=="loop"&&t%2===1?0:i.length-1;return i[s]}const ow={type:"spring",stiffness:500,damping:25,restSpeed:10},lw=e=>({type:"spring",stiffness:550,damping:e===0?2*Math.sqrt(550):30,restSpeed:10}),aw={type:"keyframes",duration:.8},uw={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},cw=(e,{keyframes:t})=>t.length>2?aw:qn.has(e)?e.startsWith("scale")?lw(t[1]):ow:uw;function fw({when:e,delay:t,delayChildren:n,staggerChildren:r,staggerDirection:i,repeat:s,repeatType:o,repeatDelay:l,from:a,elapsed:u,...c}){return!!Object.keys(c).length}const gu=(e,t,n,r={},i,s)=>o=>{const l=iu(r,e)||{},a=l.delay||r.delay||0;let{elapsed:u=0}=r;u=u-rt(a);const c={keyframes:Array.isArray(n)?n:[null,n],ease:"easeOut",velocity:t.getVelocity(),...l,delay:-u,onUpdate:d=>{t.set(d),l.onUpdate&&l.onUpdate(d)},onComplete:()=>{o(),l.onComplete&&l.onComplete()},name:e,motionValue:t,element:s?void 0:i};fw(l)||Object.assign(c,cw(e,c)),c.duration&&(c.duration=rt(c.duration)),c.repeatDelay&&(c.repeatDelay=rt(c.repeatDelay)),c.from!==void 0&&(c.keyframes[0]=c.from);let f=!1;if((c.type===!1||c.duration===0&&!c.repeatDelay)&&(_l(c),c.delay===0&&(f=!0)),(mt.instantAnimations||mt.skipAnimations)&&(f=!0,_l(c),c.delay=0),c.allowFlatten=!l.type&&!l.ease,f&&!s&&t.get()!==void 0){const d=sw(c.keyframes,l);if(d!==void 0){W.update(()=>{c.onUpdate(d),c.onComplete()});return}}return l.isSync?new nu(c):new L0(c)};function dw({protectedKeys:e,needsAnimating:t},n){const r=e.hasOwnProperty(n)&&t[n]!==!0;return t[n]=!1,r}function pm(e,t,{delay:n=0,transitionOverride:r,type:i}={}){let{transition:s=e.getDefaultTransition(),transitionEnd:o,...l}=t;r&&(s=r);const a=[],u=i&&e.animationState&&e.animationState.getState()[i];for(const c in l){const f=e.getValue(c,e.latestValues[c]??null),d=l[c];if(d===void 0||u&&dw(u,c))continue;const y={delay:n,...iu(s||{},c)},g=f.get();if(g!==void 0&&!f.isAnimating&&!Array.isArray(d)&&d===g&&!y.velocity)continue;let v=!1;if(window.MotionHandoffAnimation){const p=hm(e);if(p){const h=window.MotionHandoffAnimation(p,c,W);h!==null&&(y.startTime=h,v=!0)}}Bl(e,c),f.start(gu(c,f,d,e.shouldReduceMotion&&_p.has(c)?{type:!1}:y,e,v));const k=f.animation;k&&a.push(k)}return o&&Promise.all(a).then(()=>{W.update(()=>{o&&nw(e,o)})}),a}function mm(e,t,n,r=0,i=1){const s=Array.from(e).sort((u,c)=>u.sortNodePosition(c)).indexOf(t),o=e.size,l=(o-1)*r;return typeof n=="function"?n(s,o):i===1?s*r:l-s*r}function Ul(e,t,n={}){var a;const r=Fn(e,t,n.type==="exit"?(a=e.presenceContext)==null?void 0:a.custom:void 0);let{transition:i=e.getDefaultTransition()||{}}=r||{};n.transitionOverride&&(i=n.transitionOverride);const s=r?()=>Promise.all(pm(e,r,n)):()=>Promise.resolve(),o=e.variantChildren&&e.variantChildren.size?(u=0)=>{const{delayChildren:c=0,staggerChildren:f,staggerDirection:d}=i;return hw(e,t,u,c,f,d,n)}:()=>Promise.resolve(),{when:l}=i;if(l){const[u,c]=l==="beforeChildren"?[s,o]:[o,s];return u().then(()=>c())}else return Promise.all([s(),o(n.delay)])}function hw(e,t,n=0,r=0,i=0,s=1,o){const l=[];for(const a of e.variantChildren)a.notify("AnimationStart",t),l.push(Ul(a,t,{...o,delay:n+(typeof r=="function"?0:r)+mm(e.variantChildren,a,r,i,s)}).then(()=>a.notify("AnimationComplete",t)));return Promise.all(l)}function pw(e,t,n={}){e.notify("AnimationStart",t);let r;if(Array.isArray(t)){const i=t.map(s=>Ul(e,s,n));r=Promise.all(i)}else if(typeof t=="string")r=Ul(e,t,n);else{const i=typeof t=="function"?Fn(e,t,n.custom):t;r=Promise.all(pm(e,i,n))}return r.then(()=>{e.notify("AnimationComplete",t)})}function ym(e,t){if(!Array.isArray(t))return!1;const n=t.length;if(n!==e.length)return!1;for(let r=0;rPromise.all(t.map(({animation:n,options:r})=>pw(e,n,r)))}function ww(e){let t=vw(e),n=lf(),r=!0;const i=a=>(u,c)=>{var d;const f=Fn(e,c,a==="exit"?(d=e.presenceContext)==null?void 0:d.custom:void 0);if(f){const{transition:y,transitionEnd:g,...v}=f;u={...u,...v,...g}}return u};function s(a){t=a(e)}function o(a){const{props:u}=e,c=gm(e.parent)||{},f=[],d=new Set;let y={},g=1/0;for(let k=0;kg&&w,_=!1;const V=Array.isArray(m)?m:[m];let J=V.reduce(i(p),{});S===!1&&(J={});const{prevResolvedValues:gt={}}=h,Wt={...gt,...J},Jn=Z=>{x=!0,d.has(Z)&&(_=!0,d.delete(Z)),h.needsAnimating[Z]=!0;const E=e.getValue(Z);E&&(E.liveStyle=!1)};for(const Z in Wt){const E=J[Z],R=gt[Z];if(y.hasOwnProperty(Z))continue;let N=!1;zl(E)&&zl(R)?N=!ym(E,R):N=E!==R,N?E!=null?Jn(Z):d.add(Z):E!==void 0&&d.has(Z)?Jn(Z):h.protectedKeys[Z]=!0}h.prevProp=m,h.prevResolvedValues=J,h.isActive&&(y={...y,...J}),r&&e.blockInitialAnimation&&(x=!1);const ii=T&&C;x&&(!ii||_)&&f.push(...V.map(Z=>{const E={type:p};if(typeof Z=="string"&&r&&!ii&&e.manuallyAnimateOnMount&&e.parent){const{parent:R}=e,N=Fn(R,Z);if(R.enteringChildren&&N){const{delayChildren:$}=N.transition||{};E.delay=mm(R.enteringChildren,e,$)}}return{animation:Z,options:E}}))}if(d.size){const k={};if(typeof u.initial!="boolean"){const p=Fn(e,Array.isArray(u.initial)?u.initial[0]:u.initial);p&&p.transition&&(k.transition=p.transition)}d.forEach(p=>{const h=e.getBaseTarget(p),m=e.getValue(p);m&&(m.liveStyle=!0),k[p]=h??null}),f.push({animation:k})}let v=!!f.length;return r&&(u.initial===!1||u.initial===u.animate)&&!e.manuallyAnimateOnMount&&(v=!1),r=!1,v?t(f):Promise.resolve()}function l(a,u){var f;if(n[a].isActive===u)return Promise.resolve();(f=e.variantChildren)==null||f.forEach(d=>{var y;return(y=d.animationState)==null?void 0:y.setActive(a,u)}),n[a].isActive=u;const c=o(a);for(const d in n)n[d].protectedKeys={};return c}return{animateChanges:o,setActive:l,setAnimateFunction:s,getState:()=>n,reset:()=>{n=lf()}}}function Sw(e,t){return typeof t=="string"?t!==e:Array.isArray(t)?!ym(t,e):!1}function Kt(e=!1){return{isActive:e,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function lf(){return{animate:Kt(!0),whileInView:Kt(),whileHover:Kt(),whileTap:Kt(),whileDrag:Kt(),whileFocus:Kt(),exit:Kt()}}class Ut{constructor(t){this.isMounted=!1,this.node=t}update(){}}class xw extends Ut{constructor(t){super(t),t.animationState||(t.animationState=ww(t))}updateAnimationControlsSubscription(){const{animate:t}=this.node.getProps();zs(t)&&(this.unmountControls=t.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:t}=this.node.getProps(),{animate:n}=this.node.prevProps||{};t!==n&&this.updateAnimationControlsSubscription()}unmount(){var t;this.node.animationState.reset(),(t=this.unmountControls)==null||t.call(this)}}let Tw=0;class kw extends Ut{constructor(){super(...arguments),this.id=Tw++}update(){if(!this.node.presenceContext)return;const{isPresent:t,onExitComplete:n}=this.node.presenceContext,{isPresent:r}=this.node.prevPresenceContext||{};if(!this.node.animationState||t===r)return;const i=this.node.animationState.setActive("exit",!t);n&&!t&&i.then(()=>{n(this.id)})}mount(){const{register:t,onExitComplete:n}=this.node.presenceContext||{};n&&n(this.id),t&&(this.unmount=t(this.id))}unmount(){}}const Pw={animation:{Feature:xw},exit:{Feature:kw}};function Yr(e,t,n,r={passive:!0}){return e.addEventListener(t,n,r),()=>e.removeEventListener(t,n)}function ri(e){return{point:{x:e.pageX,y:e.pageY}}}const Cw=e=>t=>lu(t)&&e(t,ri(t));function Pr(e,t,n,r){return Yr(e,t,Cw(n),r)}const vm=1e-4,Ew=1-vm,Mw=1+vm,wm=.01,Dw=0-wm,Aw=0+wm;function ve(e){return e.max-e.min}function Vw(e,t,n){return Math.abs(e-t)<=n}function af(e,t,n,r=.5){e.origin=r,e.originPoint=K(t.min,t.max,e.origin),e.scale=ve(n)/ve(t),e.translate=K(n.min,n.max,e.origin)-e.originPoint,(e.scale>=Ew&&e.scale<=Mw||isNaN(e.scale))&&(e.scale=1),(e.translate>=Dw&&e.translate<=Aw||isNaN(e.translate))&&(e.translate=0)}function Cr(e,t,n,r){af(e.x,t.x,n.x,r?r.originX:void 0),af(e.y,t.y,n.y,r?r.originY:void 0)}function uf(e,t,n){e.min=n.min+t.min,e.max=e.min+ve(t)}function Rw(e,t,n){uf(e.x,t.x,n.x),uf(e.y,t.y,n.y)}function cf(e,t,n){e.min=t.min-n.min,e.max=e.min+ve(t)}function Ss(e,t,n){cf(e.x,t.x,n.x),cf(e.y,t.y,n.y)}function _e(e){return[e("x"),e("y")]}const Sm=({current:e})=>e?e.ownerDocument.defaultView:null,ff=(e,t)=>Math.abs(e-t);function Lw(e,t){const n=ff(e.x,t.x),r=ff(e.y,t.y);return Math.sqrt(n**2+r**2)}class xm{constructor(t,n,{transformPagePoint:r,contextWindow:i=window,dragSnapToOrigin:s=!1,distanceThreshold:o=3}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.updatePoint=()=>{if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const d=Po(this.lastMoveEventInfo,this.history),y=this.startEvent!==null,g=Lw(d.offset,{x:0,y:0})>=this.distanceThreshold;if(!y&&!g)return;const{point:v}=d,{timestamp:k}=ue;this.history.push({...v,timestamp:k});const{onStart:p,onMove:h}=this.handlers;y||(p&&p(this.lastMoveEvent,d),this.startEvent=this.lastMoveEvent),h&&h(this.lastMoveEvent,d)},this.handlePointerMove=(d,y)=>{this.lastMoveEvent=d,this.lastMoveEventInfo=ko(y,this.transformPagePoint),W.update(this.updatePoint,!0)},this.handlePointerUp=(d,y)=>{this.end();const{onEnd:g,onSessionEnd:v,resumeAnimation:k}=this.handlers;if(this.dragSnapToOrigin&&k&&k(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const p=Po(d.type==="pointercancel"?this.lastMoveEventInfo:ko(y,this.transformPagePoint),this.history);this.startEvent&&g&&g(d,p),v&&v(d,p)},!lu(t))return;this.dragSnapToOrigin=s,this.handlers=n,this.transformPagePoint=r,this.distanceThreshold=o,this.contextWindow=i||window;const l=ri(t),a=ko(l,this.transformPagePoint),{point:u}=a,{timestamp:c}=ue;this.history=[{...u,timestamp:c}];const{onSessionStart:f}=n;f&&f(t,Po(a,this.history)),this.removeListeners=ei(Pr(this.contextWindow,"pointermove",this.handlePointerMove),Pr(this.contextWindow,"pointerup",this.handlePointerUp),Pr(this.contextWindow,"pointercancel",this.handlePointerUp))}updateHandlers(t){this.handlers=t}end(){this.removeListeners&&this.removeListeners(),Ft(this.updatePoint)}}function ko(e,t){return t?{point:t(e.point)}:e}function df(e,t){return{x:e.x-t.x,y:e.y-t.y}}function Po({point:e},t){return{point:e,delta:df(e,Tm(t)),offset:df(e,Nw(t)),velocity:_w(t,.1)}}function Nw(e){return e[0]}function Tm(e){return e[e.length-1]}function _w(e,t){if(e.length<2)return{x:0,y:0};let n=e.length-1,r=null;const i=Tm(e);for(;n>=0&&(r=e[n],!(i.timestamp-r.timestamp>rt(t)));)n--;if(!r)return{x:0,y:0};const s=Oe(i.timestamp-r.timestamp);if(s===0)return{x:0,y:0};const o={x:(i.x-r.x)/s,y:(i.y-r.y)/s};return o.x===1/0&&(o.x=0),o.y===1/0&&(o.y=0),o}function jw(e,{min:t,max:n},r){return t!==void 0&&en&&(e=r?K(n,e,r.max):Math.min(e,n)),e}function hf(e,t,n){return{min:t!==void 0?e.min+t:void 0,max:n!==void 0?e.max+n-(e.max-e.min):void 0}}function Fw(e,{top:t,left:n,bottom:r,right:i}){return{x:hf(e.x,n,i),y:hf(e.y,t,r)}}function pf(e,t){let n=t.min-e.min,r=t.max-e.max;return t.max-t.minr?n=$r(t.min,t.max-r,e.min):r>i&&(n=$r(e.min,e.max-i,t.min)),pt(0,1,n)}function zw(e,t){const n={};return t.min!==void 0&&(n.min=t.min-e.min),t.max!==void 0&&(n.max=t.max-e.min),n}const Wl=.35;function Bw(e=Wl){return e===!1?e=0:e===!0&&(e=Wl),{x:mf(e,"left","right"),y:mf(e,"top","bottom")}}function mf(e,t,n){return{min:yf(e,t),max:yf(e,n)}}function yf(e,t){return typeof e=="number"?e:e[t]||0}const Uw=new WeakMap;class Ww{constructor(t){this.openDragLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=te(),this.latestPointerEvent=null,this.latestPanInfo=null,this.visualElement=t}start(t,{snapToCursor:n=!1,distanceThreshold:r}={}){const{presenceContext:i}=this.visualElement;if(i&&i.isPresent===!1)return;const s=f=>{const{dragSnapToOrigin:d}=this.getProps();d?this.pauseAnimation():this.stopAnimation(),n&&this.snapToCursor(ri(f).point)},o=(f,d)=>{const{drag:y,dragPropagation:g,onDragStart:v}=this.getProps();if(y&&!g&&(this.openDragLock&&this.openDragLock(),this.openDragLock=Y0(y),!this.openDragLock))return;this.latestPointerEvent=f,this.latestPanInfo=d,this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),_e(p=>{let h=this.getAxisMotionValue(p).get()||0;if(it.test(h)){const{projection:m}=this.visualElement;if(m&&m.layout){const w=m.layout.layoutBox[p];w&&(h=ve(w)*(parseFloat(h)/100))}}this.originPoint[p]=h}),v&&W.postRender(()=>v(f,d)),Bl(this.visualElement,"transform");const{animationState:k}=this.visualElement;k&&k.setActive("whileDrag",!0)},l=(f,d)=>{this.latestPointerEvent=f,this.latestPanInfo=d;const{dragPropagation:y,dragDirectionLock:g,onDirectionLock:v,onDrag:k}=this.getProps();if(!y&&!this.openDragLock)return;const{offset:p}=d;if(g&&this.currentDirection===null){this.currentDirection=$w(p),this.currentDirection!==null&&v&&v(this.currentDirection);return}this.updateAxis("x",d.point,p),this.updateAxis("y",d.point,p),this.visualElement.render(),k&&k(f,d)},a=(f,d)=>{this.latestPointerEvent=f,this.latestPanInfo=d,this.stop(f,d),this.latestPointerEvent=null,this.latestPanInfo=null},u=()=>_e(f=>{var d;return this.getAnimationState(f)==="paused"&&((d=this.getAxisMotionValue(f).animation)==null?void 0:d.play())}),{dragSnapToOrigin:c}=this.getProps();this.panSession=new xm(t,{onSessionStart:s,onStart:o,onMove:l,onSessionEnd:a,resumeAnimation:u},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:c,distanceThreshold:r,contextWindow:Sm(this.visualElement)})}stop(t,n){const r=t||this.latestPointerEvent,i=n||this.latestPanInfo,s=this.isDragging;if(this.cancel(),!s||!i||!r)return;const{velocity:o}=i;this.startAnimation(o);const{onDragEnd:l}=this.getProps();l&&W.postRender(()=>l(r,i))}cancel(){this.isDragging=!1;const{projection:t,animationState:n}=this.visualElement;t&&(t.isAnimationBlocked=!1),this.panSession&&this.panSession.end(),this.panSession=void 0;const{dragPropagation:r}=this.getProps();!r&&this.openDragLock&&(this.openDragLock(),this.openDragLock=null),n&&n.setActive("whileDrag",!1)}updateAxis(t,n,r){const{drag:i}=this.getProps();if(!r||!Di(t,i,this.currentDirection))return;const s=this.getAxisMotionValue(t);let o=this.originPoint[t]+r[t];this.constraints&&this.constraints[t]&&(o=jw(o,this.constraints[t],this.elastic[t])),s.set(o)}resolveConstraints(){var s;const{dragConstraints:t,dragElastic:n}=this.getProps(),r=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):(s=this.visualElement.projection)==null?void 0:s.layout,i=this.constraints;t&&En(t)?this.constraints||(this.constraints=this.resolveRefConstraints()):t&&r?this.constraints=Fw(r.layoutBox,t):this.constraints=!1,this.elastic=Bw(n),i!==this.constraints&&r&&this.constraints&&!this.hasMutatedConstraints&&_e(o=>{this.constraints!==!1&&this.getAxisMotionValue(o)&&(this.constraints[o]=zw(r.layoutBox[o],this.constraints[o]))})}resolveRefConstraints(){const{dragConstraints:t,onMeasureDragConstraints:n}=this.getProps();if(!t||!En(t))return!1;const r=t.current,{projection:i}=this.visualElement;if(!i||!i.layout)return!1;const s=H1(r,i.root,this.visualElement.getTransformPagePoint());let o=Iw(i.layout.layoutBox,s);if(n){const l=n(U1(o));this.hasMutatedConstraints=!!l,l&&(o=sm(l))}return o}startAnimation(t){const{drag:n,dragMomentum:r,dragElastic:i,dragTransition:s,dragSnapToOrigin:o,onDragTransitionEnd:l}=this.getProps(),a=this.constraints||{},u=_e(c=>{if(!Di(c,n,this.currentDirection))return;let f=a&&a[c]||{};o&&(f={min:0,max:0});const d=i?200:1e6,y=i?40:1e7,g={type:"inertia",velocity:r?t[c]:0,bounceStiffness:d,bounceDamping:y,timeConstant:750,restDelta:1,restSpeed:10,...s,...f};return this.startAxisValueAnimation(c,g)});return Promise.all(u).then(l)}startAxisValueAnimation(t,n){const r=this.getAxisMotionValue(t);return Bl(this.visualElement,t),r.start(gu(t,r,0,n,this.visualElement,!1))}stopAnimation(){_e(t=>this.getAxisMotionValue(t).stop())}pauseAnimation(){_e(t=>{var n;return(n=this.getAxisMotionValue(t).animation)==null?void 0:n.pause()})}getAnimationState(t){var n;return(n=this.getAxisMotionValue(t).animation)==null?void 0:n.state}getAxisMotionValue(t){const n=`_drag${t.toUpperCase()}`,r=this.visualElement.getProps(),i=r[n];return i||this.visualElement.getValue(t,(r.initial?r.initial[t]:void 0)||0)}snapToCursor(t){_e(n=>{const{drag:r}=this.getProps();if(!Di(n,r,this.currentDirection))return;const{projection:i}=this.visualElement,s=this.getAxisMotionValue(n);if(i&&i.layout){const{min:o,max:l}=i.layout.layoutBox[n];s.set(t[n]-K(o,l,.5))}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:t,dragConstraints:n}=this.getProps(),{projection:r}=this.visualElement;if(!En(n)||!r||!this.constraints)return;this.stopAnimation();const i={x:0,y:0};_e(o=>{const l=this.getAxisMotionValue(o);if(l&&this.constraints!==!1){const a=l.get();i[o]=Ow({min:a,max:a},this.constraints[o])}});const{transformTemplate:s}=this.visualElement.getProps();this.visualElement.current.style.transform=s?s({},""):"none",r.root&&r.root.updateScroll(),r.updateLayout(),this.resolveConstraints(),_e(o=>{if(!Di(o,t,null))return;const l=this.getAxisMotionValue(o),{min:a,max:u}=this.constraints[o];l.set(K(a,u,i[o]))})}addListeners(){if(!this.visualElement.current)return;Uw.set(this.visualElement,this);const t=this.visualElement.current,n=Pr(t,"pointerdown",a=>{const{drag:u,dragListener:c=!0}=this.getProps();u&&c&&this.start(a)}),r=()=>{const{dragConstraints:a}=this.getProps();En(a)&&a.current&&(this.constraints=this.resolveRefConstraints())},{projection:i}=this.visualElement,s=i.addEventListener("measure",r);i&&!i.layout&&(i.root&&i.root.updateScroll(),i.updateLayout()),W.read(r);const o=Yr(window,"resize",()=>this.scalePositionWithinConstraints()),l=i.addEventListener("didUpdate",({delta:a,hasLayoutChanged:u})=>{this.isDragging&&u&&(_e(c=>{const f=this.getAxisMotionValue(c);f&&(this.originPoint[c]+=a[c].translate,f.set(f.get()+a[c].translate))}),this.visualElement.render())});return()=>{o(),n(),s(),l&&l()}}getProps(){const t=this.visualElement.getProps(),{drag:n=!1,dragDirectionLock:r=!1,dragPropagation:i=!1,dragConstraints:s=!1,dragElastic:o=Wl,dragMomentum:l=!0}=t;return{...t,drag:n,dragDirectionLock:r,dragPropagation:i,dragConstraints:s,dragElastic:o,dragMomentum:l}}}function Di(e,t,n){return(t===!0||t===e)&&(n===null||n===e)}function $w(e,t=10){let n=null;return Math.abs(e.y)>t?n="y":Math.abs(e.x)>t&&(n="x"),n}class Hw extends Ut{constructor(t){super(t),this.removeGroupControls=Be,this.removeListeners=Be,this.controls=new Ww(t)}mount(){const{dragControls:t}=this.node.getProps();t&&(this.removeGroupControls=t.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||Be}unmount(){this.removeGroupControls(),this.removeListeners()}}const gf=e=>(t,n)=>{e&&W.postRender(()=>e(t,n))};class Kw extends Ut{constructor(){super(...arguments),this.removePointerDownListener=Be}onPointerDown(t){this.session=new xm(t,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:Sm(this.node)})}createPanHandlers(){const{onPanSessionStart:t,onPanStart:n,onPan:r,onPanEnd:i}=this.node.getProps();return{onSessionStart:gf(t),onStart:gf(n),onMove:r,onEnd:(s,o)=>{delete this.session,i&&W.postRender(()=>i(s,o))}}}mount(){this.removePointerDownListener=Pr(this.node.current,"pointerdown",t=>this.onPointerDown(t))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}const Hi={hasAnimatedSinceResize:!0,hasEverUpdated:!1};function vf(e,t){return t.max===t.min?0:e/(t.max-t.min)*100}const lr={correct:(e,t)=>{if(!t.target)return e;if(typeof e=="string")if(L.test(e))e=parseFloat(e);else return e;const n=vf(e,t.target.x),r=vf(e,t.target.y);return`${n}% ${r}%`}},Gw={correct:(e,{treeScale:t,projectionDelta:n})=>{const r=e,i=It.parse(e);if(i.length>5)return r;const s=It.createTransformer(e),o=typeof i[0]!="number"?1:0,l=n.x.scale*t.x,a=n.y.scale*t.y;i[0+o]/=l,i[1+o]/=a;const u=K(l,a,.5);return typeof i[2+o]=="number"&&(i[2+o]/=u),typeof i[3+o]=="number"&&(i[3+o]/=u),s(i)}};let Co=!1;class Qw extends M.Component{componentDidMount(){const{visualElement:t,layoutGroup:n,switchLayoutGroup:r,layoutId:i}=this.props,{projection:s}=t;m1(Yw),s&&(n.group&&n.group.add(s),r&&r.register&&i&&r.register(s),Co&&s.root.didUpdate(),s.addEventListener("animationComplete",()=>{this.safeToRemove()}),s.setOptions({...s.options,onExitComplete:()=>this.safeToRemove()})),Hi.hasEverUpdated=!0}getSnapshotBeforeUpdate(t){const{layoutDependency:n,visualElement:r,drag:i,isPresent:s}=this.props,{projection:o}=r;return o&&(o.isPresent=s,Co=!0,i||t.layoutDependency!==n||n===void 0||t.isPresent!==s?o.willUpdate():this.safeToRemove(),t.isPresent!==s&&(s?o.promote():o.relegate()||W.postRender(()=>{const l=o.getStack();(!l||!l.members.length)&&this.safeToRemove()}))),null}componentDidUpdate(){const{projection:t}=this.props.visualElement;t&&(t.root.didUpdate(),ou.postRender(()=>{!t.currentAnimation&&t.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:t,layoutGroup:n,switchLayoutGroup:r}=this.props,{projection:i}=t;Co=!0,i&&(i.scheduleCheckAfterUnmount(),n&&n.group&&n.group.remove(i),r&&r.deregister&&r.deregister(i))}safeToRemove(){const{safeToRemove:t}=this.props;t&&t()}render(){return null}}function km(e){const[t,n]=Kp(),r=M.useContext(Oa);return A.jsx(Qw,{...e,layoutGroup:r,switchLayoutGroup:M.useContext(rm),isPresent:t,safeToRemove:n})}const Yw={borderRadius:{...lr,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:lr,borderTopRightRadius:lr,borderBottomLeftRadius:lr,borderBottomRightRadius:lr,boxShadow:Gw};function Xw(e,t,n){const r=me(e)?e:Hn(e);return r.start(gu("",r,t,n)),r.animation}const Zw=(e,t)=>e.depth-t.depth;class qw{constructor(){this.children=[],this.isDirty=!1}add(t){Ua(this.children,t),this.isDirty=!0}remove(t){Wa(this.children,t),this.isDirty=!0}forEach(t){this.isDirty&&this.children.sort(Zw),this.isDirty=!1,this.children.forEach(t)}}function Jw(e,t){const n=Pe.now(),r=({timestamp:i})=>{const s=i-n;s>=t&&(Ft(r),e(s-t))};return W.setup(r,!0),()=>Ft(r)}const Pm=["TopLeft","TopRight","BottomLeft","BottomRight"],bw=Pm.length,wf=e=>typeof e=="string"?parseFloat(e):e,Sf=e=>typeof e=="number"||L.test(e);function eS(e,t,n,r,i,s){i?(e.opacity=K(0,n.opacity??1,tS(r)),e.opacityExit=K(t.opacity??1,0,nS(r))):s&&(e.opacity=K(t.opacity??1,n.opacity??1,r));for(let o=0;ort?1:n($r(e,t,r))}function Tf(e,t){e.min=t.min,e.max=t.max}function He(e,t){Tf(e.x,t.x),Tf(e.y,t.y)}function kf(e,t){e.translate=t.translate,e.scale=t.scale,e.originPoint=t.originPoint,e.origin=t.origin}function Pf(e,t,n,r,i){return e-=t,e=ws(e,1/n,r),i!==void 0&&(e=ws(e,1/i,r)),e}function rS(e,t=0,n=1,r=.5,i,s=e,o=e){if(it.test(t)&&(t=parseFloat(t),t=K(o.min,o.max,t/100)-o.min),typeof t!="number")return;let l=K(s.min,s.max,r);e===s&&(l-=t),e.min=Pf(e.min,t,n,l,i),e.max=Pf(e.max,t,n,l,i)}function Cf(e,t,[n,r,i],s,o){rS(e,t[n],t[r],t[i],t.scale,s,o)}const iS=["x","scaleX","originX"],sS=["y","scaleY","originY"];function Ef(e,t,n,r){Cf(e.x,t,iS,n?n.x:void 0,r?r.x:void 0),Cf(e.y,t,sS,n?n.y:void 0,r?r.y:void 0)}function Mf(e){return e.translate===0&&e.scale===1}function Em(e){return Mf(e.x)&&Mf(e.y)}function Df(e,t){return e.min===t.min&&e.max===t.max}function oS(e,t){return Df(e.x,t.x)&&Df(e.y,t.y)}function Af(e,t){return Math.round(e.min)===Math.round(t.min)&&Math.round(e.max)===Math.round(t.max)}function Mm(e,t){return Af(e.x,t.x)&&Af(e.y,t.y)}function Vf(e){return ve(e.x)/ve(e.y)}function Rf(e,t){return e.translate===t.translate&&e.scale===t.scale&&e.originPoint===t.originPoint}class lS{constructor(){this.members=[]}add(t){Ua(this.members,t),t.scheduleRender()}remove(t){if(Wa(this.members,t),t===this.prevLead&&(this.prevLead=void 0),t===this.lead){const n=this.members[this.members.length-1];n&&this.promote(n)}}relegate(t){const n=this.members.findIndex(i=>t===i);if(n===0)return!1;let r;for(let i=n;i>=0;i--){const s=this.members[i];if(s.isPresent!==!1){r=s;break}}return r?(this.promote(r),!0):!1}promote(t,n){const r=this.lead;if(t!==r&&(this.prevLead=r,this.lead=t,t.show(),r)){r.instance&&r.scheduleRender(),t.scheduleRender(),t.resumeFrom=r,n&&(t.resumeFrom.preserveOpacity=!0),r.snapshot&&(t.snapshot=r.snapshot,t.snapshot.latestValues=r.animationValues||r.latestValues),t.root&&t.root.isUpdating&&(t.isLayoutDirty=!0);const{crossfade:i}=t.options;i===!1&&r.hide()}}exitAnimationComplete(){this.members.forEach(t=>{const{options:n,resumingFrom:r}=t;n.onExitComplete&&n.onExitComplete(),r&&r.options.onExitComplete&&r.options.onExitComplete()})}scheduleRender(){this.members.forEach(t=>{t.instance&&t.scheduleRender(!1)})}removeLeadSnapshot(){this.lead&&this.lead.snapshot&&(this.lead.snapshot=void 0)}}function aS(e,t,n){let r="";const i=e.x.translate/t.x,s=e.y.translate/t.y,o=(n==null?void 0:n.z)||0;if((i||s||o)&&(r=`translate3d(${i}px, ${s}px, ${o}px) `),(t.x!==1||t.y!==1)&&(r+=`scale(${1/t.x}, ${1/t.y}) `),n){const{transformPerspective:u,rotate:c,rotateX:f,rotateY:d,skewX:y,skewY:g}=n;u&&(r=`perspective(${u}px) ${r}`),c&&(r+=`rotate(${c}deg) `),f&&(r+=`rotateX(${f}deg) `),d&&(r+=`rotateY(${d}deg) `),y&&(r+=`skewX(${y}deg) `),g&&(r+=`skewY(${g}deg) `)}const l=e.x.scale*t.x,a=e.y.scale*t.y;return(l!==1||a!==1)&&(r+=`scale(${l}, ${a})`),r||"none"}const Eo=["","X","Y","Z"],uS=1e3;let cS=0;function Mo(e,t,n,r){const{latestValues:i}=t;i[e]&&(n[e]=i[e],t.setStaticValue(e,0),r&&(r[e]=0))}function Dm(e){if(e.hasCheckedOptimisedAppear=!0,e.root===e)return;const{visualElement:t}=e.options;if(!t)return;const n=hm(t);if(window.MotionHasOptimisedAnimation(n,"transform")){const{layout:i,layoutId:s}=e.options;window.MotionCancelOptimisedAnimation(n,"transform",W,!(i||s))}const{parent:r}=e;r&&!r.hasCheckedOptimisedAppear&&Dm(r)}function Am({attachResizeListener:e,defaultParent:t,measureScroll:n,checkIsScrollRoot:r,resetTransform:i}){return class{constructor(o={},l=t==null?void 0:t()){this.id=cS++,this.animationId=0,this.animationCommitId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isProjectionDirty=!1,this.isSharedProjectionDirty=!1,this.isTransformDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.hasCheckedOptimisedAppear=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.layoutVersion=0,this.updateScheduled=!1,this.scheduleUpdate=()=>this.update(),this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{this.projectionUpdateScheduled=!1,this.nodes.forEach(hS),this.nodes.forEach(gS),this.nodes.forEach(vS),this.nodes.forEach(pS)},this.resolvedRelativeTargetAt=0,this.linkedParentVersion=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=o,this.root=l?l.root||l:this,this.path=l?[...l.path,l]:[],this.parent=l,this.depth=l?l.depth+1:0;for(let a=0;athis.root.updateBlockedByResize=!1;W.read(()=>{f=window.innerWidth}),e(o,()=>{const y=window.innerWidth;y!==f&&(f=y,this.root.updateBlockedByResize=!0,c&&c(),c=Jw(d,250),Hi.hasAnimatedSinceResize&&(Hi.hasAnimatedSinceResize=!1,this.nodes.forEach(_f)))})}l&&this.root.registerSharedNode(l,this),this.options.animate!==!1&&u&&(l||a)&&this.addEventListener("didUpdate",({delta:c,hasLayoutChanged:f,hasRelativeLayoutChanged:d,layout:y})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const g=this.options.transition||u.getDefaultTransition()||kS,{onLayoutAnimationStart:v,onLayoutAnimationComplete:k}=u.getProps(),p=!this.targetLayout||!Mm(this.targetLayout,y),h=!f&&d;if(this.options.layoutRoot||this.resumeFrom||h||f&&(p||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0);const m={...iu(g,"layout"),onPlay:v,onComplete:k};(u.shouldReduceMotion||this.options.layoutRoot)&&(m.delay=0,m.type=!1),this.startAnimation(m),this.setAnimationOrigin(c,h)}else f||_f(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=y})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const o=this.getStack();o&&o.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,this.eventHandlers.clear(),Ft(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){this.isUpdateBlocked()||(this.isUpdating=!0,this.nodes&&this.nodes.forEach(wS),this.animationId++)}getTransformTemplate(){const{visualElement:o}=this.options;return o&&o.getProps().transformTemplate}willUpdate(o=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(window.MotionCancelOptimisedAnimation&&!this.hasCheckedOptimisedAppear&&Dm(this),!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let c=0;c{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure(),this.snapshot&&!ve(this.snapshot.measuredBox.x)&&!ve(this.snapshot.measuredBox.y)&&(this.snapshot=void 0))}updateLayout(){if(!this.instance||(this.updateScroll(),!(this.options.alwaysMeasureLayout&&this.isLead())&&!this.isLayoutDirty))return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let a=0;a{const S=w/1e3;jf(f.x,o.x,S),jf(f.y,o.y,S),this.setTargetDelta(f),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(Ss(d,this.layout.layoutBox,this.relativeParent.layout.layoutBox),xS(this.relativeTarget,this.relativeTargetOrigin,d,S),m&&oS(this.relativeTarget,m)&&(this.isProjectionDirty=!1),m||(m=te()),He(m,this.relativeTarget)),v&&(this.animationValues=c,eS(c,u,this.latestValues,S,h,p)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=S},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(o){var l,a,u;this.notifyListeners("animationStart"),(l=this.currentAnimation)==null||l.stop(),(u=(a=this.resumingFrom)==null?void 0:a.currentAnimation)==null||u.stop(),this.pendingAnimation&&(Ft(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=W.update(()=>{Hi.hasAnimatedSinceResize=!0,this.motionValue||(this.motionValue=Hn(0)),this.currentAnimation=Xw(this.motionValue,[0,1e3],{...o,velocity:0,isSync:!0,onUpdate:c=>{this.mixTargetDelta(c),o.onUpdate&&o.onUpdate(c)},onStop:()=>{},onComplete:()=>{o.onComplete&&o.onComplete(),this.completeAnimation()}}),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0})}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);const o=this.getStack();o&&o.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(uS),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const o=this.getLead();let{targetWithTransforms:l,target:a,layout:u,latestValues:c}=o;if(!(!l||!a||!u)){if(this!==o&&this.layout&&u&&Vm(this.options.animationType,this.layout.layoutBox,u.layoutBox)){a=this.target||te();const f=ve(this.layout.layoutBox.x);a.x.min=o.target.x.min,a.x.max=a.x.min+f;const d=ve(this.layout.layoutBox.y);a.y.min=o.target.y.min,a.y.max=a.y.min+d}He(l,a),Dn(l,c),Cr(this.projectionDeltaWithTransform,this.layoutCorrected,l,c)}}registerSharedNode(o,l){this.sharedNodes.has(o)||this.sharedNodes.set(o,new lS),this.sharedNodes.get(o).add(l);const u=l.options.initialPromotionConfig;l.promote({transition:u?u.transition:void 0,preserveFollowOpacity:u&&u.shouldPreserveFollowOpacity?u.shouldPreserveFollowOpacity(l):void 0})}isLead(){const o=this.getStack();return o?o.lead===this:!0}getLead(){var l;const{layoutId:o}=this.options;return o?((l=this.getStack())==null?void 0:l.lead)||this:this}getPrevLead(){var l;const{layoutId:o}=this.options;return o?(l=this.getStack())==null?void 0:l.prevLead:void 0}getStack(){const{layoutId:o}=this.options;if(o)return this.root.sharedNodes.get(o)}promote({needsReset:o,transition:l,preserveFollowOpacity:a}={}){const u=this.getStack();u&&u.promote(this,a),o&&(this.projectionDelta=void 0,this.needsReset=!0),l&&this.setOptions({transition:l})}relegate(){const o=this.getStack();return o?o.relegate(this):!1}resetSkewAndRotation(){const{visualElement:o}=this.options;if(!o)return;let l=!1;const{latestValues:a}=o;if((a.z||a.rotate||a.rotateX||a.rotateY||a.rotateZ||a.skewX||a.skewY)&&(l=!0),!l)return;const u={};a.z&&Mo("z",o,u,this.animationValues);for(let c=0;c{var l;return(l=o.currentAnimation)==null?void 0:l.stop()}),this.root.nodes.forEach(Lf),this.root.sharedNodes.clear()}}}function fS(e){e.updateLayout()}function dS(e){var n;const t=((n=e.resumeFrom)==null?void 0:n.snapshot)||e.snapshot;if(e.isLead()&&e.layout&&t&&e.hasListeners("didUpdate")){const{layoutBox:r,measuredBox:i}=e.layout,{animationType:s}=e.options,o=t.source!==e.layout.source;s==="size"?_e(f=>{const d=o?t.measuredBox[f]:t.layoutBox[f],y=ve(d);d.min=r[f].min,d.max=d.min+y}):Vm(s,t.layoutBox,r)&&_e(f=>{const d=o?t.measuredBox[f]:t.layoutBox[f],y=ve(r[f]);d.max=d.min+y,e.relativeTarget&&!e.currentAnimation&&(e.isProjectionDirty=!0,e.relativeTarget[f].max=e.relativeTarget[f].min+y)});const l=An();Cr(l,r,t.layoutBox);const a=An();o?Cr(a,e.applyTransform(i,!0),t.measuredBox):Cr(a,r,t.layoutBox);const u=!Em(l);let c=!1;if(!e.resumeFrom){const f=e.getClosestProjectingParent();if(f&&!f.resumeFrom){const{snapshot:d,layout:y}=f;if(d&&y){const g=te();Ss(g,t.layoutBox,d.layoutBox);const v=te();Ss(v,r,y.layoutBox),Mm(g,v)||(c=!0),f.options.layoutRoot&&(e.relativeTarget=v,e.relativeTargetOrigin=g,e.relativeParent=f)}}}e.notifyListeners("didUpdate",{layout:r,snapshot:t,delta:a,layoutDelta:l,hasLayoutChanged:u,hasRelativeLayoutChanged:c})}else if(e.isLead()){const{onExitComplete:r}=e.options;r&&r()}e.options.transition=void 0}function hS(e){e.parent&&(e.isProjecting()||(e.isProjectionDirty=e.parent.isProjectionDirty),e.isSharedProjectionDirty||(e.isSharedProjectionDirty=!!(e.isProjectionDirty||e.parent.isProjectionDirty||e.parent.isSharedProjectionDirty)),e.isTransformDirty||(e.isTransformDirty=e.parent.isTransformDirty))}function pS(e){e.isProjectionDirty=e.isSharedProjectionDirty=e.isTransformDirty=!1}function mS(e){e.clearSnapshot()}function Lf(e){e.clearMeasurements()}function Nf(e){e.isLayoutDirty=!1}function yS(e){const{visualElement:t}=e.options;t&&t.getProps().onBeforeLayoutMeasure&&t.notify("BeforeLayoutMeasure"),e.resetTransform()}function _f(e){e.finishAnimation(),e.targetDelta=e.relativeTarget=e.target=void 0,e.isProjectionDirty=!0}function gS(e){e.resolveTargetDelta()}function vS(e){e.calcProjection()}function wS(e){e.resetSkewAndRotation()}function SS(e){e.removeLeadSnapshot()}function jf(e,t,n){e.translate=K(t.translate,0,n),e.scale=K(t.scale,1,n),e.origin=t.origin,e.originPoint=t.originPoint}function Ff(e,t,n,r){e.min=K(t.min,n.min,r),e.max=K(t.max,n.max,r)}function xS(e,t,n,r){Ff(e.x,t.x,n.x,r),Ff(e.y,t.y,n.y,r)}function TS(e){return e.animationValues&&e.animationValues.opacityExit!==void 0}const kS={duration:.45,ease:[.4,0,.1,1]},If=e=>typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(e),Of=If("applewebkit/")&&!If("chrome/")?Math.round:Be;function zf(e){e.min=Of(e.min),e.max=Of(e.max)}function PS(e){zf(e.x),zf(e.y)}function Vm(e,t,n){return e==="position"||e==="preserve-aspect"&&!Vw(Vf(t),Vf(n),.2)}function CS(e){var t;return e!==e.root&&((t=e.scroll)==null?void 0:t.wasRoot)}const ES=Am({attachResizeListener:(e,t)=>Yr(e,"resize",t),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body.scrollLeft,y:document.documentElement.scrollTop||document.body.scrollTop}),checkIsScrollRoot:()=>!0}),Do={current:void 0},Rm=Am({measureScroll:e=>({x:e.scrollLeft,y:e.scrollTop}),defaultParent:()=>{if(!Do.current){const e=new ES({});e.mount(window),e.setOptions({layoutScroll:!0}),Do.current=e}return Do.current},resetTransform:(e,t)=>{e.style.transform=t!==void 0?t:"none"},checkIsScrollRoot:e=>window.getComputedStyle(e).position==="fixed"}),MS={pan:{Feature:Kw},drag:{Feature:Hw,ProjectionNode:Rm,MeasureLayout:km}};function Bf(e,t,n){const{props:r}=e;e.animationState&&r.whileHover&&e.animationState.setActive("whileHover",n==="Start");const i="onHover"+n,s=r[i];s&&W.postRender(()=>s(t,ri(t)))}class DS extends Ut{mount(){const{current:t}=this.node;t&&(this.unmount=X0(t,(n,r)=>(Bf(this.node,r,"Start"),i=>Bf(this.node,i,"End"))))}unmount(){}}class AS extends Ut{constructor(){super(...arguments),this.isActive=!1}onFocus(){let t=!1;try{t=this.node.current.matches(":focus-visible")}catch{t=!0}!t||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!0),this.isActive=!0)}onBlur(){!this.isActive||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!1),this.isActive=!1)}mount(){this.unmount=ei(Yr(this.node.current,"focus",()=>this.onFocus()),Yr(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}function Uf(e,t,n){const{props:r}=e;if(e.current instanceof HTMLButtonElement&&e.current.disabled)return;e.animationState&&r.whileTap&&e.animationState.setActive("whileTap",n==="Start");const i="onTap"+(n==="End"?"":n),s=r[i];s&&W.postRender(()=>s(t,ri(t)))}class VS extends Ut{mount(){const{current:t}=this.node;t&&(this.unmount=b0(t,(n,r)=>(Uf(this.node,r,"Start"),(i,{success:s})=>Uf(this.node,i,s?"End":"Cancel")),{useGlobalTarget:this.node.props.globalTapTarget}))}unmount(){}}const $l=new WeakMap,Ao=new WeakMap,RS=e=>{const t=$l.get(e.target);t&&t(e)},LS=e=>{e.forEach(RS)};function NS({root:e,...t}){const n=e||document;Ao.has(n)||Ao.set(n,{});const r=Ao.get(n),i=JSON.stringify(t);return r[i]||(r[i]=new IntersectionObserver(LS,{root:e,...t})),r[i]}function _S(e,t,n){const r=NS(t);return $l.set(e,n),r.observe(e),()=>{$l.delete(e),r.unobserve(e)}}const jS={some:0,all:1};class FS extends Ut{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:t={}}=this.node.getProps(),{root:n,margin:r,amount:i="some",once:s}=t,o={root:n?n.current:void 0,rootMargin:r,threshold:typeof i=="number"?i:jS[i]},l=a=>{const{isIntersecting:u}=a;if(this.isInView===u||(this.isInView=u,s&&!u&&this.hasEnteredView))return;u&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",u);const{onViewportEnter:c,onViewportLeave:f}=this.node.getProps(),d=u?c:f;d&&d(a)};return _S(this.node.current,o,l)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>"u")return;const{props:t,prevProps:n}=this.node;["amount","margin","root"].some(IS(t,n))&&this.startObserver()}unmount(){}}function IS({viewport:e={}},{viewport:t={}}={}){return n=>e[n]!==t[n]}const OS={inView:{Feature:FS},tap:{Feature:VS},focus:{Feature:AS},hover:{Feature:DS}},zS={layout:{ProjectionNode:Rm,MeasureLayout:km}},BS={...Pw,...OS,...MS,...zS},se=B1(BS,b1),Lm="/api";async function US(){return(await fetch(`${Lm}/state`)).json()}async function WS(){return(await fetch(`${Lm}/dependencies/check`)).json()}function $S({className:e="",size:t=240}){return A.jsx("img",{src:"/wails-logo.png",alt:"Wails",width:t,height:t,className:`object-contain ${e}`,style:{filter:"drop-shadow(0 0 60px rgba(239, 68, 68, 0.4))"}})}function HS(){const[e,t]=M.useState([]),[n,r]=M.useState(null),[i,s]=M.useState(!1),[o,l]=M.useState(!1);M.useEffect(()=>{US().then(f=>{r(f.system)})},[]),M.useEffect(()=>{const f=setTimeout(()=>{s(!0),a()},1500);return()=>clearTimeout(f)},[]);const a=async()=>{const d=(await WS()).map(y=>({...y,checkState:"idle"}));t(d);for(let y=0;ysetTimeout(g,300)),t(g=>g.map((v,k)=>k===y?{...v,checkState:"checking"}:v)),await new Promise(g=>setTimeout(g,400+Math.random()*300)),t(g=>g.map((v,k)=>k===y?{...v,checkState:"complete"}:v));await new Promise(y=>setTimeout(y,500)),l(!0)},u=e.length>0&&e.every(f=>f.installed||!f.required),c=f=>f.checkState==="idle"?A.jsx("div",{className:"w-5 h-5 rounded-full border-2 border-gray-600"}):f.checkState==="checking"?A.jsx(se.div,{className:"w-5 h-5 rounded-full border-2 border-red-500 border-t-transparent",animate:{rotate:360},transition:{duration:1,repeat:1/0,ease:"linear"}}):f.installed?A.jsx(se.div,{initial:{scale:0},animate:{scale:1},className:"w-5 h-5 rounded-full bg-green-500 flex items-center justify-center",children:A.jsx(se.svg,{className:"w-3 h-3 text-white",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",initial:{pathLength:0},animate:{pathLength:1},transition:{duration:.3},children:A.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:3,d:"M5 13l4 4L19 7"})})}):A.jsx(se.div,{initial:{scale:0},animate:{scale:1},className:"w-5 h-5 rounded-full bg-red-500 flex items-center justify-center",children:A.jsx("svg",{className:"w-3 h-3 text-white",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:A.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:3,d:"M6 18L18 6M6 6l12 12"})})});return A.jsxs("div",{className:"min-h-screen bg-[#0f0f0f] grid-bg relative overflow-hidden",children:[A.jsx("div",{className:"absolute inset-0 radial-glow pointer-events-none"}),A.jsxs("div",{className:"relative z-10 min-h-screen flex flex-col items-center justify-center px-8",children:[A.jsx(se.div,{initial:{scale:.8,opacity:0},animate:{scale:1,opacity:1},transition:{duration:.6,ease:"easeOut"},children:A.jsx($S,{size:160})}),A.jsxs(se.div,{className:"mt-6 text-center",initial:{opacity:0,y:20},animate:{opacity:1,y:0},transition:{delay:.3,duration:.5},children:[A.jsx("h1",{className:"text-3xl font-bold text-white",children:"Wails Setup"}),A.jsxs("p",{className:"text-gray-400 mt-2",children:[(n==null?void 0:n.os)&&`${n.os}/${n.arch}`,(n==null?void 0:n.wailsVersion)&&` • v${n.wailsVersion}`]})]}),A.jsxs(se.div,{className:"mt-10 w-full max-w-md",initial:{opacity:0},animate:{opacity:i?1:0},transition:{duration:.4},children:[A.jsxs(se.div,{className:"flex items-center gap-2 mb-4",initial:{opacity:0,x:-10},animate:{opacity:1,x:0},transition:{delay:.2},children:[A.jsx("span",{className:"text-sm font-medium text-gray-400 uppercase tracking-wider",children:"Checking Dependencies"}),!o&&e.length>0&&A.jsxs(se.span,{className:"text-xs text-gray-500",initial:{opacity:0},animate:{opacity:1},children:["(",e.filter(f=>f.checkState==="complete").length,"/",e.length,")"]})]}),A.jsx("div",{className:"space-y-2",children:A.jsx(Yc,{mode:"popLayout",children:e.map((f,d)=>A.jsxs(se.div,{className:"flex items-center gap-4 p-4 rounded-xl bg-gray-800/50 border border-gray-700/50",initial:{opacity:0,x:-20},animate:{opacity:1,x:0},transition:{delay:d*.1,duration:.3,ease:"easeOut"},layout:!0,children:[A.jsx("div",{className:"flex-shrink-0",children:c(f)}),A.jsxs("div",{className:"flex-1 min-w-0",children:[A.jsxs("div",{className:"flex items-center gap-2",children:[A.jsx("span",{className:"text-white font-medium",children:f.name}),f.checkState==="complete"&&f.version&&A.jsxs(se.span,{className:"text-xs text-gray-500 font-mono",initial:{opacity:0},animate:{opacity:1},children:["v",f.version]})]}),f.checkState==="complete"&&!f.installed&&f.message&&A.jsx(se.p,{className:"text-xs text-red-400 mt-1 truncate",initial:{opacity:0,height:0},animate:{opacity:1,height:"auto"},children:f.message})]}),f.required&&f.checkState==="complete"&&!f.installed&&A.jsx(se.span,{className:"text-xs px-2 py-1 rounded bg-red-500/20 text-red-400",initial:{opacity:0,scale:.8},animate:{opacity:1,scale:1},children:"Required"})]},f.name))})}),A.jsx(Yc,{children:o&&A.jsxs(se.div,{className:"mt-6",initial:{opacity:0,y:10},animate:{opacity:1,y:0},transition:{delay:.2},children:[u?A.jsxs("div",{className:"text-center p-4 rounded-xl bg-green-500/10 border border-green-500/30",children:[A.jsx(se.div,{initial:{scale:0},animate:{scale:1},transition:{type:"spring",stiffness:200,damping:15},children:A.jsx("div",{className:"text-3xl mb-2",children:"✓"})}),A.jsx("p",{className:"text-green-400 font-medium",children:"All dependencies installed!"}),A.jsx("p",{className:"text-gray-400 text-sm mt-1",children:"You're ready to build Wails applications."})]}):A.jsxs("div",{className:"text-center p-4 rounded-xl bg-yellow-500/10 border border-yellow-500/30",children:[A.jsx("div",{className:"text-3xl mb-2",children:"⚠"}),A.jsx("p",{className:"text-yellow-400 font-medium",children:"Some dependencies are missing"}),A.jsx("p",{className:"text-gray-400 text-sm mt-1",children:"Install the missing dependencies to continue."})]}),A.jsx(se.button,{className:"mt-6 w-full btn-primary",onClick:()=>window.close(),initial:{opacity:0},animate:{opacity:1},transition:{delay:.4},whileHover:{scale:1.02},whileTap:{scale:.98},children:"Close"})]})})]}),i&&e.length===0&&A.jsx(se.div,{className:"mt-10 flex space-x-2",initial:{opacity:0},animate:{opacity:1},children:[0,1,2].map(f=>A.jsx(se.div,{className:"w-2 h-2 rounded-full bg-red-500/50",animate:{scale:[1,1.3,1],opacity:[.5,1,.5]},transition:{duration:1,repeat:1/0,delay:f*.15}},f))})]})]})}Vo.createRoot(document.getElementById("root")).render(A.jsx(Xm.StrictMode,{children:A.jsx(HS,{})})); diff --git a/v3/internal/setupwizard/frontend/dist/index.html b/v3/internal/setupwizard/frontend/dist/index.html new file mode 100644 index 000000000..52e737151 --- /dev/null +++ b/v3/internal/setupwizard/frontend/dist/index.html @@ -0,0 +1,16 @@ + + + + + + Wails Setup Wizard + + + + + + + +
+ + diff --git a/v3/internal/setupwizard/frontend/dist/wails-logo.png b/v3/internal/setupwizard/frontend/dist/wails-logo.png new file mode 100755 index 0000000000000000000000000000000000000000..0f32ab92fe7ba7e30b9f9673ee408296e778b202 GIT binary patch literal 174365 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

oT5cpWY{=!tM$`P*O%$ME44~NZWfY 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 H554#wS`K1{ literal 0 HcmV?d00001 diff --git a/v3/internal/setupwizard/frontend/index.html b/v3/internal/setupwizard/frontend/index.html new file mode 100644 index 000000000..ba497ab66 --- /dev/null +++ b/v3/internal/setupwizard/frontend/index.html @@ -0,0 +1,15 @@ + + + + + + Wails Setup Wizard + + + + + +

+ + + diff --git a/v3/internal/setupwizard/frontend/package-lock.json b/v3/internal/setupwizard/frontend/package-lock.json new file mode 100644 index 000000000..ec25c0e62 --- /dev/null +++ b/v3/internal/setupwizard/frontend/package-lock.json @@ -0,0 +1,2687 @@ +{ + "name": "wails-setup-wizard", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "wails-setup-wizard", + "version": "0.0.0", + "dependencies": { + "framer-motion": "^12.23.25", + "react": "^18.3.1", + "react-dom": "^18.3.1" + }, + "devDependencies": { + "@types/react": "^18.3.12", + "@types/react-dom": "^18.3.1", + "@vitejs/plugin-react": "^4.3.3", + "autoprefixer": "^10.4.20", + "postcss": "^8.4.47", + "tailwindcss": "^3.4.14", + "typescript": "~5.6.2", + "vite": "^5.4.10" + } + }, + "node_modules/@alloc/quick-lru": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", + "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", + "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.27.1", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.28.5.tgz", + "integrity": "sha512-6uFXyCayocRbqhZOB+6XcuZbkMNimwfVGFji8CTZnCzOHVGvDqzvitu1re2AU5LROliz7eQPhB8CpAMvnx9EjA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.28.5.tgz", + "integrity": "sha512-e7jT4DxYvIDLk1ZHmU/m/mB19rex9sv0c2ftBtjSBv+kVM/902eh0fINUzD7UwLLNR+jU585GxUJ8/EBfAM5fw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.28.5", + "@babel/helper-compilation-targets": "^7.27.2", + "@babel/helper-module-transforms": "^7.28.3", + "@babel/helpers": "^7.28.4", + "@babel/parser": "^7.28.5", + "@babel/template": "^7.27.2", + "@babel/traverse": "^7.28.5", + "@babel/types": "^7.28.5", + "@jridgewell/remapping": "^2.3.5", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.28.5.tgz", + "integrity": "sha512-3EwLFhZ38J4VyIP6WNtt2kUdW9dokXA9Cr4IVIFHuCpZ3H8/YFOl5JjZHisrn1fATPBmKKqXzDFvh9fUwHz6CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.28.5", + "@babel/types": "^7.28.5", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.2.tgz", + "integrity": "sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.27.2", + "@babel/helper-validator-option": "^7.27.1", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-globals": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", + "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.27.1.tgz", + "integrity": "sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.28.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.3.tgz", + "integrity": "sha512-gytXUbs8k2sXS9PnQptz5o0QnpLL51SwASIORY6XaBKF88nsOT0Zw9szLqlSGQDP/4TljBAD5y98p2U1fqkdsw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1", + "@babel/traverse": "^7.28.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.27.1.tgz", + "integrity": "sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", + "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", + "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.28.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.28.4.tgz", + "integrity": "sha512-HFN59MmQXGHVyYadKLVumYsA9dBFun/ldYxipEjzA4196jpLZd8UjEEBLkbEkvfYreDqJhZxYAWFPtrfhNpj4w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.27.2", + "@babel/types": "^7.28.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.5.tgz", + "integrity": "sha512-KKBU1VGYR7ORr3At5HAtUQ+TV3SzRCXmA/8OdDZiLDBIZxVyzXuztPjfLd3BV1PRAQGCMWWSHYhL0F8d5uHBDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.28.5" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-self": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.27.1.tgz", + "integrity": "sha512-6UzkCs+ejGdZ5mFFC/OCUrv028ab2fp1znZmCZjAOBKiBK2jXD1O+BPSfX8X2qjJ75fZBMSnQn3Rq2mrBJK2mw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-source": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.27.1.tgz", + "integrity": "sha512-zbwoTsBruTeKB9hSq73ha66iFeJHuaFkUbwvqElnygoNbj/jHRsSeokowZFN3CZ64IvEqcmmkVe89OPXc7ldAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/template": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz", + "integrity": "sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.27.1", + "@babel/parser": "^7.27.2", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.28.5.tgz", + "integrity": "sha512-TCCj4t55U90khlYkVV/0TfkJkAkUg3jZFA3Neb7unZT8CPok7iiRfaX0F+WnqWqt7OxhOn0uBKXCw4lbL8W0aQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.28.5", + "@babel/helper-globals": "^7.28.0", + "@babel/parser": "^7.28.5", + "@babel/template": "^7.27.2", + "@babel/types": "^7.28.5", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.5.tgz", + "integrity": "sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", + "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", + "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", + "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", + "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", + "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", + "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", + "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", + "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", + "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", + "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", + "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", + "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", + "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", + "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", + "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", + "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", + "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", + "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", + "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", + "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", + "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", + "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", + "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", + "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/remapping": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", + "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", + "dev": true, + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.31", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@rolldown/pluginutils": { + "version": "1.0.0-beta.27", + "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.27.tgz", + "integrity": "sha512-+d0F4MKMCbeVUJwG96uQ4SgAznZNSq93I3V+9NHA4OpvqG8mRCpGdKmK8l/dl02h2CCDHwW2FqilnTyDcAnqjA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.53.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.53.3.tgz", + "integrity": "sha512-mRSi+4cBjrRLoaal2PnqH82Wqyb+d3HsPUN/W+WslCXsZsyHa9ZeQQX/pQsZaVIWDkPcpV6jJ+3KLbTbgnwv8w==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.53.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.53.3.tgz", + "integrity": "sha512-CbDGaMpdE9sh7sCmTrTUyllhrg65t6SwhjlMJsLr+J8YjFuPmCEjbBSx4Z/e4SmDyH3aB5hGaJUP2ltV/vcs4w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.53.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.53.3.tgz", + "integrity": "sha512-Nr7SlQeqIBpOV6BHHGZgYBuSdanCXuw09hon14MGOLGmXAFYjx1wNvquVPmpZnl0tLjg25dEdr4IQ6GgyToCUA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.53.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.53.3.tgz", + "integrity": "sha512-DZ8N4CSNfl965CmPktJ8oBnfYr3F8dTTNBQkRlffnUarJ2ohudQD17sZBa097J8xhQ26AwhHJ5mvUyQW8ddTsQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.53.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.53.3.tgz", + "integrity": "sha512-yMTrCrK92aGyi7GuDNtGn2sNW+Gdb4vErx4t3Gv/Tr+1zRb8ax4z8GWVRfr3Jw8zJWvpGHNpss3vVlbF58DZ4w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.53.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.53.3.tgz", + "integrity": "sha512-lMfF8X7QhdQzseM6XaX0vbno2m3hlyZFhwcndRMw8fbAGUGL3WFMBdK0hbUBIUYcEcMhVLr1SIamDeuLBnXS+Q==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.53.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.53.3.tgz", + "integrity": "sha512-k9oD15soC/Ln6d2Wv/JOFPzZXIAIFLp6B+i14KhxAfnq76ajt0EhYc5YPeX6W1xJkAdItcVT+JhKl1QZh44/qw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.53.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.53.3.tgz", + "integrity": "sha512-vTNlKq+N6CK/8UktsrFuc+/7NlEYVxgaEgRXVUVK258Z5ymho29skzW1sutgYjqNnquGwVUObAaxae8rZ6YMhg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.53.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.53.3.tgz", + "integrity": "sha512-RGrFLWgMhSxRs/EWJMIFM1O5Mzuz3Xy3/mnxJp/5cVhZ2XoCAxJnmNsEyeMJtpK+wu0FJFWz+QF4mjCA7AUQ3w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.53.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.53.3.tgz", + "integrity": "sha512-kASyvfBEWYPEwe0Qv4nfu6pNkITLTb32p4yTgzFCocHnJLAHs+9LjUu9ONIhvfT/5lv4YS5muBHyuV84epBo/A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loong64-gnu": { + "version": "4.53.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.53.3.tgz", + "integrity": "sha512-JiuKcp2teLJwQ7vkJ95EwESWkNRFJD7TQgYmCnrPtlu50b4XvT5MOmurWNrCj3IFdyjBQ5p9vnrX4JM6I8OE7g==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-gnu": { + "version": "4.53.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.53.3.tgz", + "integrity": "sha512-EoGSa8nd6d3T7zLuqdojxC20oBfNT8nexBbB/rkxgKj5T5vhpAQKKnD+h3UkoMuTyXkP5jTjK/ccNRmQrPNDuw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.53.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.53.3.tgz", + "integrity": "sha512-4s+Wped2IHXHPnAEbIB0YWBv7SDohqxobiiPA1FIWZpX+w9o2i4LezzH/NkFUl8LRci/8udci6cLq+jJQlh+0g==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-musl": { + "version": "4.53.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.53.3.tgz", + "integrity": "sha512-68k2g7+0vs2u9CxDt5ktXTngsxOQkSEV/xBbwlqYcUrAVh6P9EgMZvFsnHy4SEiUl46Xf0IObWVbMvPrr2gw8A==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.53.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.53.3.tgz", + "integrity": "sha512-VYsFMpULAz87ZW6BVYw3I6sWesGpsP9OPcyKe8ofdg9LHxSbRMd7zrVrr5xi/3kMZtpWL/wC+UIJWJYVX5uTKg==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.53.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.53.3.tgz", + "integrity": "sha512-3EhFi1FU6YL8HTUJZ51imGJWEX//ajQPfqWLI3BQq4TlvHy4X0MOr5q3D2Zof/ka0d5FNdPwZXm3Yyib/UEd+w==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.53.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.53.3.tgz", + "integrity": "sha512-eoROhjcc6HbZCJr+tvVT8X4fW3/5g/WkGvvmwz/88sDtSJzO7r/blvoBDgISDiCjDRZmHpwud7h+6Q9JxFwq1Q==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-openharmony-arm64": { + "version": "4.53.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.53.3.tgz", + "integrity": "sha512-OueLAWgrNSPGAdUdIjSWXw+u/02BRTcnfw9PN41D2vq/JSEPnJnVuBgw18VkN8wcd4fjUs+jFHVM4t9+kBSNLw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.53.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.53.3.tgz", + "integrity": "sha512-GOFuKpsxR/whszbF/bzydebLiXIHSgsEUp6M0JI8dWvi+fFa1TD6YQa4aSZHtpmh2/uAlj/Dy+nmby3TJ3pkTw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.53.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.53.3.tgz", + "integrity": "sha512-iah+THLcBJdpfZ1TstDFbKNznlzoxa8fmnFYK4V67HvmuNYkVdAywJSoteUszvBQ9/HqN2+9AZghbajMsFT+oA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-gnu": { + "version": "4.53.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.53.3.tgz", + "integrity": "sha512-J9QDiOIZlZLdcot5NXEepDkstocktoVjkaKUtqzgzpt2yWjGlbYiKyp05rWwk4nypbYUNoFAztEgixoLaSETkg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.53.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.53.3.tgz", + "integrity": "sha512-UhTd8u31dXadv0MopwGgNOBpUVROFKWVQgAg5N1ESyCz8AuBcMqm4AuTjrwgQKGDfoFuz02EuMRHQIw/frmYKQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", + "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.28.0.tgz", + "integrity": "sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.28.2" + } + }, + "node_modules/@types/estree": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", + "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/prop-types": { + "version": "15.7.15", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.15.tgz", + "integrity": "sha512-F6bEyamV9jKGAFBEmlQnesRPGOQqS2+Uwi0Em15xenOxHaf2hv6L8YCVn3rPdPJOiJfPiCnLIRyvwVaqMY3MIw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/react": { + "version": "18.3.27", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.27.tgz", + "integrity": "sha512-cisd7gxkzjBKU2GgdYrTdtQx1SORymWyaAFhaxQPK9bYO9ot3Y5OikQRvY0VYQtvwjeQnizCINJAenh/V7MK2w==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/prop-types": "*", + "csstype": "^3.2.2" + } + }, + "node_modules/@types/react-dom": { + "version": "18.3.7", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.7.tgz", + "integrity": "sha512-MEe3UeoENYVFXzoXEWsvcpg6ZvlrFNlOQ7EOsvhI3CfAXwzPfO8Qwuxd40nepsYKqyyVQnTdEfv68q91yLcKrQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "@types/react": "^18.0.0" + } + }, + "node_modules/@vitejs/plugin-react": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.7.0.tgz", + "integrity": "sha512-gUu9hwfWvvEDBBmgtAowQCojwZmJ5mcLn3aufeCsitijs3+f2NsrPtlAWIR6OPiqljl96GVCUbLe0HyqIpVaoA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.28.0", + "@babel/plugin-transform-react-jsx-self": "^7.27.1", + "@babel/plugin-transform-react-jsx-source": "^7.27.1", + "@rolldown/pluginutils": "1.0.0-beta.27", + "@types/babel__core": "^7.20.5", + "react-refresh": "^0.17.0" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0" + } + }, + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", + "dev": true, + "license": "MIT" + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "license": "ISC", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", + "dev": true, + "license": "MIT" + }, + "node_modules/autoprefixer": { + "version": "10.4.22", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.22.tgz", + "integrity": "sha512-ARe0v/t9gO28Bznv6GgqARmVqcWOV3mfgUPn9becPHMiD3o9BwlRgaeccZnwTpZ7Zwqrm+c1sUSsMxIzQzc8Xg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "browserslist": "^4.27.0", + "caniuse-lite": "^1.0.30001754", + "fraction.js": "^5.3.4", + "normalize-range": "^0.1.2", + "picocolors": "^1.1.1", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/baseline-browser-mapping": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.9.3.tgz", + "integrity": "sha512-8QdH6czo+G7uBsNo0GiUfouPN1lRzKdJTGnKXwe12gkFbnnOUaUKGN55dMkfy+mnxmvjwl9zcI4VncczcVXDhA==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "baseline-browser-mapping": "dist/cli.js" + } + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.1.tgz", + "integrity": "sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "peer": true, + "dependencies": { + "baseline-browser-mapping": "^2.9.0", + "caniuse-lite": "^1.0.30001759", + "electron-to-chromium": "^1.5.263", + "node-releases": "^2.0.27", + "update-browserslist-db": "^1.2.0" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001759", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001759.tgz", + "integrity": "sha512-Pzfx9fOKoKvevQf8oCXoyNRQ5QyxJj+3O0Rqx2V5oxT61KGx8+n6hV/IUyJeifUci2clnmmKVpvtiqRzgiWjSw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dev": true, + "license": "MIT", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, + "license": "MIT" + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "license": "MIT", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/csstype": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", + "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/didyoumean": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", + "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/dlv": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", + "dev": true, + "license": "MIT" + }, + "node_modules/electron-to-chromium": { + "version": "1.5.266", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.266.tgz", + "integrity": "sha512-kgWEglXvkEfMH7rxP5OSZZwnaDWT7J9EoZCujhnpLbfi0bbNtRkgdX2E3gt0Uer11c61qCYktB3hwkAS325sJg==", + "dev": true, + "license": "ISC" + }, + "node_modules/esbuild": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", + "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.21.5", + "@esbuild/android-arm": "0.21.5", + "@esbuild/android-arm64": "0.21.5", + "@esbuild/android-x64": "0.21.5", + "@esbuild/darwin-arm64": "0.21.5", + "@esbuild/darwin-x64": "0.21.5", + "@esbuild/freebsd-arm64": "0.21.5", + "@esbuild/freebsd-x64": "0.21.5", + "@esbuild/linux-arm": "0.21.5", + "@esbuild/linux-arm64": "0.21.5", + "@esbuild/linux-ia32": "0.21.5", + "@esbuild/linux-loong64": "0.21.5", + "@esbuild/linux-mips64el": "0.21.5", + "@esbuild/linux-ppc64": "0.21.5", + "@esbuild/linux-riscv64": "0.21.5", + "@esbuild/linux-s390x": "0.21.5", + "@esbuild/linux-x64": "0.21.5", + "@esbuild/netbsd-x64": "0.21.5", + "@esbuild/openbsd-x64": "0.21.5", + "@esbuild/sunos-x64": "0.21.5", + "@esbuild/win32-arm64": "0.21.5", + "@esbuild/win32-ia32": "0.21.5", + "@esbuild/win32-x64": "0.21.5" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/fast-glob": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.8" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fastq": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", + "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fraction.js": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-5.3.4.tgz", + "integrity": "sha512-1X1NTtiJphryn/uLQz3whtY6jK3fTqoE3ohKs0tT+Ujr1W59oopxmoEh7Lu5p6vBaPbgoM0bzveAW4Qi5RyWDQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/rawify" + } + }, + "node_modules/framer-motion": { + "version": "12.23.25", + "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-12.23.25.tgz", + "integrity": "sha512-gUHGl2e4VG66jOcH0JHhuJQr6ZNwrET9g31ZG0xdXzT0CznP7fHX4P8Bcvuc4MiUB90ysNnWX2ukHRIggkl6hQ==", + "license": "MIT", + "dependencies": { + "motion-dom": "^12.23.23", + "motion-utils": "^12.23.6", + "tslib": "^2.4.0" + }, + "peerDependencies": { + "@emotion/is-prop-valid": "*", + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@emotion/is-prop-valid": { + "optional": true + }, + "react": { + "optional": true + }, + "react-dom": { + "optional": true + } + } + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "license": "MIT", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/jiti": { + "version": "1.21.7", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.7.tgz", + "integrity": "sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==", + "dev": true, + "license": "MIT", + "peer": true, + "bin": { + "jiti": "bin/jiti.js" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "license": "MIT" + }, + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "dev": true, + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/lilconfig": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.3.tgz", + "integrity": "sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antonk52" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true, + "license": "MIT" + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "license": "MIT", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/motion-dom": { + "version": "12.23.23", + "resolved": "https://registry.npmjs.org/motion-dom/-/motion-dom-12.23.23.tgz", + "integrity": "sha512-n5yolOs0TQQBRUFImrRfs/+6X4p3Q4n1dUEqt/H58Vx7OW6RF+foWEgmTVDhIWJIMXOuNNL0apKH2S16en9eiA==", + "license": "MIT", + "dependencies": { + "motion-utils": "^12.23.6" + } + }, + "node_modules/motion-utils": { + "version": "12.23.6", + "resolved": "https://registry.npmjs.org/motion-utils/-/motion-utils-12.23.6.tgz", + "integrity": "sha512-eAWoPgr4eFEOFfg2WjIsMoqJTW6Z8MTUCgn/GZ3VRpClWBdnbjryiA3ZSNLyxCTmCQx4RmYX6jX1iWHbenUPNQ==", + "license": "MIT" + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, + "node_modules/nanoid": { + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", + "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/node-releases": { + "version": "2.0.27", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.27.tgz", + "integrity": "sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-hash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", + "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true, + "license": "MIT" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true, + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pirates": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.7.tgz", + "integrity": "sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/postcss": { + "version": "8.5.6", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz", + "integrity": "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "peer": true, + "dependencies": { + "nanoid": "^3.3.11", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-import": { + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz", + "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==", + "dev": true, + "license": "MIT", + "dependencies": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-js": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.1.0.tgz", + "integrity": "sha512-oIAOTqgIo7q2EOwbhb8UalYePMvYoIeRY2YKntdpFQXNosSu3vLrniGgmH9OKs/qAkfoj5oB3le/7mINW1LCfw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "camelcase-css": "^2.0.1" + }, + "engines": { + "node": "^12 || ^14 || >= 16" + }, + "peerDependencies": { + "postcss": "^8.4.21" + } + }, + "node_modules/postcss-load-config": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-6.0.1.tgz", + "integrity": "sha512-oPtTM4oerL+UXmx+93ytZVN82RrlY/wPUV8IeDxFrzIjXOLF1pN+EmKPLbubvKHT2HC20xXsCAH2Z+CKV6Oz/g==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "lilconfig": "^3.1.1" + }, + "engines": { + "node": ">= 18" + }, + "peerDependencies": { + "jiti": ">=1.21.0", + "postcss": ">=8.0.9", + "tsx": "^4.8.1", + "yaml": "^2.4.2" + }, + "peerDependenciesMeta": { + "jiti": { + "optional": true + }, + "postcss": { + "optional": true + }, + "tsx": { + "optional": true + }, + "yaml": { + "optional": true + } + } + }, + "node_modules/postcss-nested": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.2.0.tgz", + "integrity": "sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "postcss-selector-parser": "^6.1.1" + }, + "engines": { + "node": ">=12.0" + }, + "peerDependencies": { + "postcss": "^8.2.14" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dev": true, + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/react": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", + "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", + "license": "MIT", + "peer": true, + "dependencies": { + "loose-envify": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", + "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", + "license": "MIT", + "peer": true, + "dependencies": { + "loose-envify": "^1.1.0", + "scheduler": "^0.23.2" + }, + "peerDependencies": { + "react": "^18.3.1" + } + }, + "node_modules/react-refresh": { + "version": "0.17.0", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.17.0.tgz", + "integrity": "sha512-z6F7K9bV85EfseRCp2bzrpyQ0Gkw1uLoCel9XBVWPg/TjRj94SkJzUTGfOa4bs7iJvBWtQG0Wq7wnI0syw3EBQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "pify": "^2.3.0" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/resolve": { + "version": "1.22.11", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.11.tgz", + "integrity": "sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-core-module": "^2.16.1", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/reusify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rollup": { + "version": "4.53.3", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.53.3.tgz", + "integrity": "sha512-w8GmOxZfBmKknvdXU1sdM9NHcoQejwF/4mNgj2JuEEdRaHwwF12K7e9eXn1nLZ07ad+du76mkVsyeb2rKGllsA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.8" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.53.3", + "@rollup/rollup-android-arm64": "4.53.3", + "@rollup/rollup-darwin-arm64": "4.53.3", + "@rollup/rollup-darwin-x64": "4.53.3", + "@rollup/rollup-freebsd-arm64": "4.53.3", + "@rollup/rollup-freebsd-x64": "4.53.3", + "@rollup/rollup-linux-arm-gnueabihf": "4.53.3", + "@rollup/rollup-linux-arm-musleabihf": "4.53.3", + "@rollup/rollup-linux-arm64-gnu": "4.53.3", + "@rollup/rollup-linux-arm64-musl": "4.53.3", + "@rollup/rollup-linux-loong64-gnu": "4.53.3", + "@rollup/rollup-linux-ppc64-gnu": "4.53.3", + "@rollup/rollup-linux-riscv64-gnu": "4.53.3", + "@rollup/rollup-linux-riscv64-musl": "4.53.3", + "@rollup/rollup-linux-s390x-gnu": "4.53.3", + "@rollup/rollup-linux-x64-gnu": "4.53.3", + "@rollup/rollup-linux-x64-musl": "4.53.3", + "@rollup/rollup-openharmony-arm64": "4.53.3", + "@rollup/rollup-win32-arm64-msvc": "4.53.3", + "@rollup/rollup-win32-ia32-msvc": "4.53.3", + "@rollup/rollup-win32-x64-gnu": "4.53.3", + "@rollup/rollup-win32-x64-msvc": "4.53.3", + "fsevents": "~2.3.2" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/scheduler": { + "version": "0.23.2", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", + "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0" + } + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sucrase": { + "version": "3.35.1", + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.1.tgz", + "integrity": "sha512-DhuTmvZWux4H1UOnWMB3sk0sbaCVOoQZjv8u1rDoTV0HTdGem9hkAZtl4JZy8P2z4Bg0nT+YMeOFyVr4zcG5Tw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.2", + "commander": "^4.0.0", + "lines-and-columns": "^1.1.6", + "mz": "^2.7.0", + "pirates": "^4.0.1", + "tinyglobby": "^0.2.11", + "ts-interface-checker": "^0.1.9" + }, + "bin": { + "sucrase": "bin/sucrase", + "sucrase-node": "bin/sucrase-node" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/tailwindcss": { + "version": "3.4.18", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.18.tgz", + "integrity": "sha512-6A2rnmW5xZMdw11LYjhcI5846rt9pbLSabY5XPxo+XWdxwZaFEn47Go4NzFiHu9sNNmr/kXivP1vStfvMaK1GQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@alloc/quick-lru": "^5.2.0", + "arg": "^5.0.2", + "chokidar": "^3.6.0", + "didyoumean": "^1.2.2", + "dlv": "^1.1.3", + "fast-glob": "^3.3.2", + "glob-parent": "^6.0.2", + "is-glob": "^4.0.3", + "jiti": "^1.21.7", + "lilconfig": "^3.1.3", + "micromatch": "^4.0.8", + "normalize-path": "^3.0.0", + "object-hash": "^3.0.0", + "picocolors": "^1.1.1", + "postcss": "^8.4.47", + "postcss-import": "^15.1.0", + "postcss-js": "^4.0.1", + "postcss-load-config": "^4.0.2 || ^5.0 || ^6.0", + "postcss-nested": "^6.2.0", + "postcss-selector-parser": "^6.1.2", + "resolve": "^1.22.8", + "sucrase": "^3.35.0" + }, + "bin": { + "tailwind": "lib/cli.js", + "tailwindcss": "lib/cli.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "dev": true, + "license": "MIT", + "dependencies": { + "any-promise": "^1.0.0" + } + }, + "node_modules/thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", + "dev": true, + "license": "MIT", + "dependencies": { + "thenify": ">= 3.1.0 < 4" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/tinyglobby": { + "version": "0.2.15", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", + "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.3" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/tinyglobby/node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/tinyglobby/node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/ts-interface-checker": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", + "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "license": "0BSD" + }, + "node_modules/typescript": { + "version": "5.6.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz", + "integrity": "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.2.tgz", + "integrity": "sha512-E85pfNzMQ9jpKkA7+TJAi4TJN+tBCuWh5rUcS/sv6cFi+1q9LYDwDI5dpUL0u/73EElyQ8d3TEaeW4sPedBqYA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true, + "license": "MIT" + }, + "node_modules/vite": { + "version": "5.4.21", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.21.tgz", + "integrity": "sha512-o5a9xKjbtuhY6Bi5S3+HvbRERmouabWbyUcpXXUA1u+GNUKoROi9byOJ8M0nHbHYHkYICiMlqxkg1KkYmm25Sw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "esbuild": "^0.21.3", + "postcss": "^8.4.43", + "rollup": "^4.20.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || >=20.0.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "sass-embedded": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true, + "license": "ISC" + } + } +} diff --git a/v3/internal/setupwizard/frontend/package.json b/v3/internal/setupwizard/frontend/package.json new file mode 100644 index 000000000..f46a9cab6 --- /dev/null +++ b/v3/internal/setupwizard/frontend/package.json @@ -0,0 +1,26 @@ +{ + "name": "wails-setup-wizard", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite", + "build": "tsc && vite build", + "preview": "vite preview" + }, + "dependencies": { + "framer-motion": "^12.23.25", + "react": "^18.3.1", + "react-dom": "^18.3.1" + }, + "devDependencies": { + "@types/react": "^18.3.12", + "@types/react-dom": "^18.3.1", + "@vitejs/plugin-react": "^4.3.3", + "autoprefixer": "^10.4.20", + "postcss": "^8.4.47", + "tailwindcss": "^3.4.14", + "typescript": "~5.6.2", + "vite": "^5.4.10" + } +} diff --git a/v3/internal/setupwizard/frontend/postcss.config.js b/v3/internal/setupwizard/frontend/postcss.config.js new file mode 100644 index 000000000..2e7af2b7f --- /dev/null +++ b/v3/internal/setupwizard/frontend/postcss.config.js @@ -0,0 +1,6 @@ +export default { + plugins: { + tailwindcss: {}, + autoprefixer: {}, + }, +} diff --git a/v3/internal/setupwizard/frontend/public/wails-logo.png b/v3/internal/setupwizard/frontend/public/wails-logo.png new file mode 100755 index 0000000000000000000000000000000000000000..0f32ab92fe7ba7e30b9f9673ee408296e778b202 GIT binary patch literal 174365 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
@3;~>bV%Pr?5$9`)e$s11LHdK$B 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

oT5cpWY{=!tM$`P*O%$ME44~NZWfY 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 H554#wS`K1{ literal 0 HcmV?d00001 diff --git a/v3/internal/setupwizard/frontend/src/App.tsx b/v3/internal/setupwizard/frontend/src/App.tsx new file mode 100644 index 000000000..d2e34a4d2 --- /dev/null +++ b/v3/internal/setupwizard/frontend/src/App.tsx @@ -0,0 +1,327 @@ +import { useState, useEffect } from 'react'; +import { motion, AnimatePresence } from 'framer-motion'; +import type { DependencyStatus, SystemInfo } from './types'; +import { checkDependencies, getState } from './api'; +import WailsLogo from './components/WailsLogo'; + +type CheckState = 'idle' | 'checking' | 'complete'; + +interface DependencyWithState extends DependencyStatus { + checkState: CheckState; +} + +export default function App() { + const [dependencies, setDependencies] = useState([]); + const [system, setSystem] = useState(null); + const [started, setStarted] = useState(false); + const [allComplete, setAllComplete] = useState(false); + + // Load system info on mount + useEffect(() => { + getState().then((s) => { + setSystem(s.system); + }); + }, []); + + // Start checking after logo animation + useEffect(() => { + const timer = setTimeout(() => { + setStarted(true); + startDependencyCheck(); + }, 1500); + return () => clearTimeout(timer); + }, []); + + const startDependencyCheck = async () => { + // First get the list of dependencies + const deps = await checkDependencies(); + + // Initialize all as 'idle' + const depsWithState: DependencyWithState[] = deps.map(d => ({ + ...d, + checkState: 'idle' + })); + setDependencies(depsWithState); + + // Animate each dependency check one by one with staggered timing + for (let i = 0; i < depsWithState.length; i++) { + await new Promise(resolve => setTimeout(resolve, 300)); + + setDependencies(prev => prev.map((d, idx) => + idx === i ? { ...d, checkState: 'checking' } : d + )); + + // Simulate check time (the actual check is already done) + await new Promise(resolve => setTimeout(resolve, 400 + Math.random() * 300)); + + setDependencies(prev => prev.map((d, idx) => + idx === i ? { ...d, checkState: 'complete' } : d + )); + } + + // All complete + await new Promise(resolve => setTimeout(resolve, 500)); + setAllComplete(true); + }; + + const allInstalled = dependencies.length > 0 && + dependencies.every(d => d.installed || !d.required); + + const getStatusIcon = (dep: DependencyWithState) => { + if (dep.checkState === 'idle') { + return ( +

+ ); + } + + if (dep.checkState === 'checking') { + return ( + + ); + } + + // Complete + if (dep.installed) { + return ( + + + + + + ); + } else { + return ( + + + + + + ); + } + }; + + return ( +
+ {/* Radial glow background */} +
+ + {/* Main content */} +
+ {/* Logo */} + + + + + {/* Title */} + +

+ Wails Setup +

+

+ {system?.os && `${system.os}/${system.arch}`} + {system?.wailsVersion && ` • v${system.wailsVersion}`} +

+
+ + {/* Dependencies section */} + + {/* Header */} + + + Checking Dependencies + + {!allComplete && dependencies.length > 0 && ( + + ({dependencies.filter(d => d.checkState === 'complete').length}/{dependencies.length}) + + )} + + + {/* Dependency list */} +
+ + {dependencies.map((dep, index) => ( + + {/* Status icon */} +
+ {getStatusIcon(dep)} +
+ + {/* Name and version */} +
+
+ {dep.name} + {dep.checkState === 'complete' && dep.version && ( + + v{dep.version} + + )} +
+ + {/* Message for missing deps */} + {dep.checkState === 'complete' && !dep.installed && dep.message && ( + + {dep.message} + + )} +
+ + {/* Required badge */} + {dep.required && dep.checkState === 'complete' && !dep.installed && ( + + Required + + )} +
+ ))} +
+
+ + {/* Summary */} + + {allComplete && ( + + {allInstalled ? ( +
+ +
+
+

+ All dependencies installed! +

+

+ You're ready to build Wails applications. +

+
+ ) : ( +
+
+

+ Some dependencies are missing +

+

+ Install the missing dependencies to continue. +

+
+ )} + + {/* Close button */} + window.close()} + initial={{ opacity: 0 }} + animate={{ opacity: 1 }} + transition={{ delay: 0.4 }} + whileHover={{ scale: 1.02 }} + whileTap={{ scale: 0.98 }} + > + Close + +
+ )} +
+
+ + {/* Loading dots while fetching deps */} + {started && dependencies.length === 0 && ( + + {[0, 1, 2].map((i) => ( + + ))} + + )} +
+
+ ); +} diff --git a/v3/internal/setupwizard/frontend/src/api.ts b/v3/internal/setupwizard/frontend/src/api.ts new file mode 100644 index 000000000..da11fe430 --- /dev/null +++ b/v3/internal/setupwizard/frontend/src/api.ts @@ -0,0 +1,60 @@ +import type { WizardState, DependencyStatus, DockerStatus, UserConfig, WailsConfig } from './types'; + +const API_BASE = '/api'; + +export async function getState(): Promise { + const response = await fetch(`${API_BASE}/state`); + return response.json(); +} + +export async function checkDependencies(): Promise { + const response = await fetch(`${API_BASE}/dependencies/check`); + return response.json(); +} + +export async function getDockerStatus(): Promise { + const response = await fetch(`${API_BASE}/docker/status`); + return response.json(); +} + +export async function buildDockerImage(): Promise<{ status: string }> { + const response = await fetch(`${API_BASE}/docker/build`, { method: 'POST' }); + return response.json(); +} + +export async function detectConfig(): Promise> { + const response = await fetch(`${API_BASE}/config/detect`); + return response.json(); +} + +export async function saveConfig(config: UserConfig): Promise<{ status: string }> { + const response = await fetch(`${API_BASE}/config/save`, { + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + body: JSON.stringify(config), + }); + return response.json(); +} + +export async function complete(): Promise<{ status: string; duration: string }> { + const response = await fetch(`${API_BASE}/complete`); + return response.json(); +} + +export async function close(): Promise { + await fetch(`${API_BASE}/close`); +} + +export async function getWailsConfig(): Promise { + const response = await fetch(`${API_BASE}/wails-config`); + return response.json(); +} + +export async function saveWailsConfig(config: WailsConfig): Promise<{ status: string }> { + const response = await fetch(`${API_BASE}/wails-config`, { + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + body: JSON.stringify(config), + }); + return response.json(); +} diff --git a/v3/internal/setupwizard/frontend/src/components/WailsLogo.tsx b/v3/internal/setupwizard/frontend/src/components/WailsLogo.tsx new file mode 100644 index 000000000..c56084960 --- /dev/null +++ b/v3/internal/setupwizard/frontend/src/components/WailsLogo.tsx @@ -0,0 +1,19 @@ +interface WailsLogoProps { + className?: string; + size?: number; +} + +export default function WailsLogo({ className = '', size = 240 }: WailsLogoProps) { + return ( + Wails + ); +} diff --git a/v3/internal/setupwizard/frontend/src/index.css b/v3/internal/setupwizard/frontend/src/index.css new file mode 100644 index 000000000..2edd377fc --- /dev/null +++ b/v3/internal/setupwizard/frontend/src/index.css @@ -0,0 +1,112 @@ +@tailwind base; +@tailwind components; +@tailwind utilities; + +:root { + --wails-red: #ef4444; + --wails-red-dark: #dc2626; + --wails-red-light: #f87171; + --bg-primary: #0f0f0f; + --bg-secondary: #1f2937; + --bg-tertiary: #374151; +} + +* { + box-sizing: border-box; +} + +html, body, #root { + margin: 0; + padding: 0; + min-height: 100vh; + background: var(--bg-primary); + color: white; + font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', sans-serif; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +/* Gradient text utility */ +.gradient-text { + background: linear-gradient(135deg, #ffffff 0%, #ef4444 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; + background-clip: text; +} + +/* Glass morphism card */ +.glass-card { + background: rgba(31, 41, 55, 0.8); + backdrop-filter: blur(10px); + border: 1px solid rgba(55, 65, 81, 0.5); +} + +/* Subtle grid background */ +.grid-bg { + background-image: + linear-gradient(rgba(239, 68, 68, 0.03) 1px, transparent 1px), + linear-gradient(90deg, rgba(239, 68, 68, 0.03) 1px, transparent 1px); + background-size: 40px 40px; +} + +/* Radial glow */ +.radial-glow { + background: radial-gradient(ellipse at center, rgba(239, 68, 68, 0.1) 0%, transparent 70%); +} + +/* Custom scrollbar */ +::-webkit-scrollbar { + width: 8px; +} + +::-webkit-scrollbar-track { + background: var(--bg-primary); +} + +::-webkit-scrollbar-thumb { + background: var(--bg-tertiary); + border-radius: 4px; +} + +::-webkit-scrollbar-thumb:hover { + background: #4b5563; +} + +/* Button hover effect */ +.btn-primary { + @apply bg-gradient-to-r from-red-500 to-red-600 text-white font-semibold + py-3 px-8 rounded-xl shadow-lg transition-all duration-300 + hover:scale-105 hover:shadow-xl hover:shadow-red-500/30 + active:scale-95; +} + +.btn-secondary { + @apply bg-transparent border border-gray-600 text-gray-300 font-medium + py-3 px-8 rounded-xl transition-all duration-300 + hover:border-gray-500 hover:text-white hover:bg-gray-800/50; +} + +/* Status badge animations */ +@keyframes spin { + to { transform: rotate(360deg); } +} + +.spinner { + animation: spin 1s linear infinite; +} + +/* Draw check animation for success */ +.check-path { + stroke-dasharray: 100; + stroke-dashoffset: 100; + animation: drawCheck 0.5s ease-out forwards; +} + +/* Reduced motion support */ +@media (prefers-reduced-motion: reduce) { + *, *::before, *::after { + animation-duration: 0.01ms !important; + animation-iteration-count: 1 !important; + transition-duration: 0.01ms !important; + } +} diff --git a/v3/internal/setupwizard/frontend/src/main.tsx b/v3/internal/setupwizard/frontend/src/main.tsx new file mode 100644 index 000000000..964aeb4c7 --- /dev/null +++ b/v3/internal/setupwizard/frontend/src/main.tsx @@ -0,0 +1,10 @@ +import React from 'react' +import ReactDOM from 'react-dom/client' +import App from './App' +import './index.css' + +ReactDOM.createRoot(document.getElementById('root')!).render( + + + , +) diff --git a/v3/internal/setupwizard/frontend/src/types.ts b/v3/internal/setupwizard/frontend/src/types.ts new file mode 100644 index 000000000..e8da97ba9 --- /dev/null +++ b/v3/internal/setupwizard/frontend/src/types.ts @@ -0,0 +1,61 @@ +export interface DependencyStatus { + name: string; + installed: boolean; + version?: string; + path?: string; + status: 'installed' | 'not_installed' | 'needs_update' | 'checking'; + required: boolean; + message?: string; +} + +export interface DockerStatus { + installed: boolean; + running: boolean; + version?: string; + imageBuilt: boolean; + imageName: string; + pullProgress: number; + pullStatus: 'idle' | 'pulling' | 'complete' | 'error'; + pullError?: string; +} + +export interface UserConfig { + developerName: string; + email: string; + defaultFramework: string; + projectDirectory: string; + editor: string; +} + +export interface WailsConfig { + info: { + companyName: string; + productName: string; + productIdentifier: string; + description: string; + copyright: string; + comments: string; + version: string; + }; +} + +export interface SystemInfo { + os: string; + arch: string; + wailsVersion: string; + goVersion: string; + homeDir: string; + gitName?: string; + gitEmail?: string; +} + +export interface WizardState { + currentStep: number; + dependencies: DependencyStatus[]; + docker: DockerStatus; + config: UserConfig; + system: SystemInfo; + startTime: string; +} + +export type Step = 'splash' | 'welcome' | 'dependencies' | 'docker' | 'config' | 'wails-config' | 'complete'; diff --git a/v3/internal/setupwizard/frontend/tailwind.config.js b/v3/internal/setupwizard/frontend/tailwind.config.js new file mode 100644 index 000000000..bdefa8bb3 --- /dev/null +++ b/v3/internal/setupwizard/frontend/tailwind.config.js @@ -0,0 +1,56 @@ +/** @type {import('tailwindcss').Config} */ +export default { + content: [ + "./index.html", + "./src/**/*.{js,ts,jsx,tsx}", + ], + theme: { + extend: { + colors: { + 'wails-red': { + DEFAULT: '#ef4444', + dark: '#dc2626', + light: '#f87171', + }, + }, + fontFamily: { + sans: ['Inter', '-apple-system', 'BlinkMacSystemFont', 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'sans-serif'], + }, + animation: { + 'fade-in': 'fadeIn 0.5s ease-out', + 'slide-up': 'slideUp 0.5s ease-out', + 'scale-in': 'scaleIn 0.3s ease-out', + 'pulse-glow': 'pulseGlow 2s ease-in-out infinite', + 'draw-check': 'drawCheck 0.5s ease-out forwards', + 'shimmer': 'shimmer 2s linear infinite', + }, + keyframes: { + fadeIn: { + '0%': { opacity: '0' }, + '100%': { opacity: '1' }, + }, + slideUp: { + '0%': { opacity: '0', transform: 'translateY(20px)' }, + '100%': { opacity: '1', transform: 'translateY(0)' }, + }, + scaleIn: { + '0%': { opacity: '0', transform: 'scale(0.9)' }, + '100%': { opacity: '1', transform: 'scale(1)' }, + }, + pulseGlow: { + '0%, 100%': { boxShadow: '0 0 20px rgba(239, 68, 68, 0.4)' }, + '50%': { boxShadow: '0 0 40px rgba(239, 68, 68, 0.6)' }, + }, + drawCheck: { + '0%': { strokeDashoffset: '100' }, + '100%': { strokeDashoffset: '0' }, + }, + shimmer: { + '0%': { backgroundPosition: '-200% 0' }, + '100%': { backgroundPosition: '200% 0' }, + }, + }, + }, + }, + plugins: [], +} diff --git a/v3/internal/setupwizard/frontend/tsconfig.json b/v3/internal/setupwizard/frontend/tsconfig.json new file mode 100644 index 000000000..109f0ac28 --- /dev/null +++ b/v3/internal/setupwizard/frontend/tsconfig.json @@ -0,0 +1,20 @@ +{ + "compilerOptions": { + "target": "ES2020", + "useDefineForClassFields": true, + "lib": ["ES2020", "DOM", "DOM.Iterable"], + "module": "ESNext", + "skipLibCheck": true, + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "isolatedModules": true, + "moduleDetection": "force", + "noEmit": true, + "jsx": "react-jsx", + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "noFallthroughCasesInSwitch": true + }, + "include": ["src"] +} diff --git a/v3/internal/setupwizard/frontend/vite.config.ts b/v3/internal/setupwizard/frontend/vite.config.ts new file mode 100644 index 000000000..927fd4858 --- /dev/null +++ b/v3/internal/setupwizard/frontend/vite.config.ts @@ -0,0 +1,10 @@ +import { defineConfig } from 'vite' +import react from '@vitejs/plugin-react' + +export default defineConfig({ + plugins: [react()], + build: { + outDir: 'dist', + emptyOutDir: true, + }, +}) diff --git a/v3/internal/setupwizard/wizard.go b/v3/internal/setupwizard/wizard.go new file mode 100644 index 000000000..8f37843f8 --- /dev/null +++ b/v3/internal/setupwizard/wizard.go @@ -0,0 +1,328 @@ +package setupwizard + +import ( + "context" + "embed" + "encoding/json" + "fmt" + "io/fs" + "net" + "net/http" + "os" + "os/exec" + "path/filepath" + "runtime" + "strings" + "sync" + "time" + + "github.com/pkg/browser" + "github.com/wailsapp/wails/v3/internal/operatingsystem" + "github.com/wailsapp/wails/v3/internal/version" + "gopkg.in/yaml.v3" +) + +//go:embed frontend/dist/* +var frontendFS embed.FS + +// DependencyStatus represents the status of a dependency +type DependencyStatus struct { + Name string `json:"name"` + Installed bool `json:"installed"` + Version string `json:"version,omitempty"` + Status string `json:"status"` // "installed", "not_installed", "needs_update" + Required bool `json:"required"` + Message string `json:"message,omitempty"` +} + +// WailsConfigInfo represents the info section of wails.yaml +type WailsConfigInfo struct { + CompanyName string `json:"companyName" yaml:"companyName"` + ProductName string `json:"productName" yaml:"productName"` + ProductIdentifier string `json:"productIdentifier" yaml:"productIdentifier"` + Description string `json:"description" yaml:"description"` + Copyright string `json:"copyright" yaml:"copyright"` + Comments string `json:"comments,omitempty" yaml:"comments,omitempty"` + Version string `json:"version" yaml:"version"` +} + +// WailsConfig represents the wails.yaml configuration +type WailsConfig struct { + Info WailsConfigInfo `json:"info" yaml:"info"` +} + +// SystemInfo contains detected system information +type SystemInfo struct { + OS string `json:"os"` + Arch string `json:"arch"` + WailsVersion string `json:"wailsVersion"` + GoVersion string `json:"goVersion"` + HomeDir string `json:"homeDir"` + OSName string `json:"osName,omitempty"` + OSVersion string `json:"osVersion,omitempty"` +} + +// WizardState represents the complete wizard state +type WizardState struct { + Dependencies []DependencyStatus `json:"dependencies"` + System SystemInfo `json:"system"` + StartTime time.Time `json:"startTime"` +} + +// Wizard is the setup wizard server +type Wizard struct { + server *http.Server + state WizardState + stateMu sync.RWMutex + done chan struct{} + shutdown chan struct{} +} + +// New creates a new setup wizard +func New() *Wizard { + return &Wizard{ + done: make(chan struct{}), + shutdown: make(chan struct{}), + state: WizardState{ + StartTime: time.Now(), + }, + } +} + +// Run starts the wizard and opens it in the browser +func (w *Wizard) Run() error { + // Initialize system info + w.initSystemInfo() + + // Find an available port + listener, err := net.Listen("tcp", "127.0.0.1:0") + if err != nil { + return fmt.Errorf("failed to find available port: %w", err) + } + + port := listener.Addr().(*net.TCPAddr).Port + url := fmt.Sprintf("http://127.0.0.1:%d", port) + + // Set up HTTP routes + mux := http.NewServeMux() + w.setupRoutes(mux) + + w.server = &http.Server{ + Handler: mux, + } + + // Start server in goroutine + go func() { + if err := w.server.Serve(listener); err != nil && err != http.ErrServerClosed { + fmt.Fprintf(os.Stderr, "Server error: %v\n", err) + } + }() + + fmt.Printf("Setup wizard running at %s\n", url) + + // Open browser + if err := browser.OpenURL(url); err != nil { + fmt.Printf("Please open %s in your browser\n", url) + } + + // Wait for completion or shutdown + select { + case <-w.done: + fmt.Println("\nSetup completed successfully!") + case <-w.shutdown: + fmt.Println("\nSetup wizard closed.") + } + + // Shutdown server + ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second) + defer cancel() + return w.server.Shutdown(ctx) +} + +func (w *Wizard) setupRoutes(mux *http.ServeMux) { + // API routes + mux.HandleFunc("/api/state", w.handleState) + mux.HandleFunc("/api/dependencies/check", w.handleCheckDependencies) + mux.HandleFunc("/api/wails-config", w.handleWailsConfig) + mux.HandleFunc("/api/complete", w.handleComplete) + mux.HandleFunc("/api/close", w.handleClose) + + // Serve frontend + frontendDist, err := fs.Sub(frontendFS, "frontend/dist") + if err != nil { + panic(err) + } + fileServer := http.FileServer(http.FS(frontendDist)) + + mux.HandleFunc("/", func(rw http.ResponseWriter, r *http.Request) { + // Try to serve the file + path := r.URL.Path + if path == "/" { + path = "/index.html" + } + + // Check if file exists + if _, err := fs.Stat(frontendDist, strings.TrimPrefix(path, "/")); err != nil { + // Serve index.html for SPA routing + r.URL.Path = "/" + } + + fileServer.ServeHTTP(rw, r) + }) +} + +func (w *Wizard) initSystemInfo() { + w.stateMu.Lock() + defer w.stateMu.Unlock() + + homeDir, _ := os.UserHomeDir() + + w.state.System = SystemInfo{ + OS: runtime.GOOS, + Arch: runtime.GOARCH, + WailsVersion: version.String(), + GoVersion: runtime.Version(), + HomeDir: homeDir, + } + + // Get OS details + if info, err := operatingsystem.Info(); err == nil { + w.state.System.OSName = info.Name + w.state.System.OSVersion = info.Version + } +} + +func (w *Wizard) handleState(rw http.ResponseWriter, r *http.Request) { + w.stateMu.RLock() + defer w.stateMu.RUnlock() + + rw.Header().Set("Content-Type", "application/json") + json.NewEncoder(rw).Encode(w.state) +} + +func (w *Wizard) handleCheckDependencies(rw http.ResponseWriter, r *http.Request) { + deps := w.checkAllDependencies() + + w.stateMu.Lock() + w.state.Dependencies = deps + w.stateMu.Unlock() + + rw.Header().Set("Content-Type", "application/json") + json.NewEncoder(rw).Encode(deps) +} + +func (w *Wizard) handleWailsConfig(rw http.ResponseWriter, r *http.Request) { + rw.Header().Set("Content-Type", "application/json") + + // Find wails.yaml in current directory or parent directories + configPath := findWailsConfig() + + switch r.Method { + case http.MethodGet: + if configPath == "" { + json.NewEncoder(rw).Encode(nil) + return + } + + data, err := os.ReadFile(configPath) + if err != nil { + json.NewEncoder(rw).Encode(nil) + return + } + + var config WailsConfig + if err := yaml.Unmarshal(data, &config); err != nil { + json.NewEncoder(rw).Encode(nil) + return + } + + json.NewEncoder(rw).Encode(config) + + case http.MethodPost: + var config WailsConfig + if err := json.NewDecoder(r.Body).Decode(&config); err != nil { + http.Error(rw, err.Error(), http.StatusBadRequest) + return + } + + if configPath == "" { + configPath = "wails.yaml" + } + + data, err := yaml.Marshal(&config) + if err != nil { + http.Error(rw, err.Error(), http.StatusInternalServerError) + return + } + + if err := os.WriteFile(configPath, data, 0644); err != nil { + http.Error(rw, err.Error(), http.StatusInternalServerError) + return + } + + json.NewEncoder(rw).Encode(map[string]string{"status": "saved", "path": configPath}) + + default: + http.Error(rw, "Method not allowed", http.StatusMethodNotAllowed) + } +} + +func findWailsConfig() string { + dir, err := os.Getwd() + if err != nil { + return "" + } + + for { + configPath := filepath.Join(dir, "wails.yaml") + if _, err := os.Stat(configPath); err == nil { + return configPath + } + + parent := filepath.Dir(dir) + if parent == dir { + break + } + dir = parent + } + + return "" +} + +func (w *Wizard) handleComplete(rw http.ResponseWriter, r *http.Request) { + w.stateMu.RLock() + state := w.state + w.stateMu.RUnlock() + + duration := time.Since(state.StartTime) + + response := map[string]interface{}{ + "status": "complete", + "duration": duration.String(), + } + + rw.Header().Set("Content-Type", "application/json") + json.NewEncoder(rw).Encode(response) + + close(w.done) +} + +func (w *Wizard) handleClose(rw http.ResponseWriter, r *http.Request) { + rw.Header().Set("Content-Type", "application/json") + json.NewEncoder(rw).Encode(map[string]string{"status": "closing"}) + + close(w.shutdown) +} + +// execCommand runs a command and returns its output +func execCommand(name string, args ...string) (string, error) { + cmd := exec.Command(name, args...) + output, err := cmd.Output() + return strings.TrimSpace(string(output)), err +} + +// commandExists checks if a command exists in PATH +func commandExists(name string) bool { + _, err := exec.LookPath(name) + return err == nil +} diff --git a/v3/internal/setupwizard/wizard_darwin.go b/v3/internal/setupwizard/wizard_darwin.go new file mode 100644 index 000000000..aab27d118 --- /dev/null +++ b/v3/internal/setupwizard/wizard_darwin.go @@ -0,0 +1,135 @@ +//go:build darwin + +package setupwizard + +import ( + "os/exec" + "strconv" + "strings" +) + +func (w *Wizard) checkAllDependencies() []DependencyStatus { + var deps []DependencyStatus + + // Check Xcode Command Line Tools + deps = append(deps, checkXcode()) + + // Check npm (common dependency) + deps = append(deps, checkNpm()) + + // Check Docker (optional) + deps = append(deps, checkDocker()) + + return deps +} + +func checkXcode() DependencyStatus { + dep := DependencyStatus{ + Name: "Xcode Command Line Tools", + Required: true, + } + + path, err := execCommand("xcode-select", "-p") + if err != nil { + dep.Status = "not_installed" + dep.Installed = false + dep.Message = "Run: xcode-select --install" + return dep + } + + dep.Installed = true + dep.Status = "installed" + + // Try to get version + cmd := exec.Command("pkgutil", "--pkg-info=com.apple.pkg.CLTools_Executables") + output, err := cmd.Output() + if err == nil { + lines := strings.Split(string(output), "\n") + for _, line := range lines { + if strings.HasPrefix(line, "version:") { + dep.Version = strings.TrimSpace(strings.TrimPrefix(line, "version:")) + break + } + } + } + + _ = path // suppress unused warning + return dep +} + +func checkNpm() DependencyStatus { + dep := DependencyStatus{ + Name: "npm", + Required: true, + } + + version, err := execCommand("npm", "-v") + if err != nil { + dep.Status = "not_installed" + dep.Installed = false + dep.Message = "npm is required. Install Node.js from https://nodejs.org/" + return dep + } + + dep.Version = version + + // Check minimum version (7.0.0) + parts := strings.Split(version, ".") + if len(parts) > 0 { + major, _ := strconv.Atoi(parts[0]) + if major < 7 { + dep.Status = "needs_update" + dep.Installed = true + dep.Message = "npm 7.0.0 or higher is required" + return dep + } + } + + dep.Installed = true + dep.Status = "installed" + return dep +} + +func checkDocker() DependencyStatus { + dep := DependencyStatus{ + Name: "docker", + Required: false, // Optional for cross-compilation + } + + version, err := execCommand("docker", "--version") + if err != nil { + dep.Status = "not_installed" + dep.Installed = false + dep.Message = "Optional - for cross-compilation" + return dep + } + + // Parse version from "Docker version 24.0.7, build afdd53b" + parts := strings.Split(version, ",") + if len(parts) > 0 { + dep.Version = strings.TrimPrefix(strings.TrimSpace(parts[0]), "Docker version ") + } + + // Check if daemon is running + _, err = execCommand("docker", "info") + if err != nil { + dep.Installed = true + dep.Status = "installed" + dep.Message = "Daemon not running" + return dep + } + + // Check for wails-cross image + imageCheck, _ := execCommand("docker", "image", "inspect", "wails-cross") + if imageCheck == "" || strings.Contains(imageCheck, "Error") { + dep.Installed = true + dep.Status = "installed" + dep.Message = "wails-cross image not built" + } else { + dep.Installed = true + dep.Status = "installed" + dep.Message = "Cross-compilation ready" + } + + return dep +} diff --git a/v3/internal/setupwizard/wizard_linux.go b/v3/internal/setupwizard/wizard_linux.go new file mode 100644 index 000000000..cb9e1bd46 --- /dev/null +++ b/v3/internal/setupwizard/wizard_linux.go @@ -0,0 +1,130 @@ +//go:build linux + +package setupwizard + +import ( + "strconv" + "strings" + + "github.com/wailsapp/wails/v3/internal/doctor/packagemanager" + "github.com/wailsapp/wails/v3/internal/operatingsystem" +) + +func (w *Wizard) checkAllDependencies() []DependencyStatus { + var deps []DependencyStatus + + // Get OS info for package manager detection + info, _ := operatingsystem.Info() + + // Find the package manager + pm := packagemanager.Find(info.ID) + if pm != nil { + // Get platform dependencies from the doctor package + platformDeps, _ := packagemanager.Dependencies(pm) + for _, dep := range platformDeps { + status := DependencyStatus{ + Name: dep.Name, + Required: !dep.Optional, + } + + if dep.Installed { + status.Installed = true + status.Status = "installed" + status.Version = dep.Version + } else { + status.Installed = false + status.Status = "not_installed" + if dep.InstallCommand != "" { + status.Message = "Install with: " + dep.InstallCommand + } + } + + deps = append(deps, status) + } + } + + // Check npm (common dependency) + deps = append(deps, checkNpm()) + + // Check Docker (optional) + deps = append(deps, checkDocker()) + + return deps +} + +func checkNpm() DependencyStatus { + dep := DependencyStatus{ + Name: "npm", + Required: true, + } + + version, err := execCommand("npm", "-v") + if err != nil { + dep.Status = "not_installed" + dep.Installed = false + dep.Message = "npm is required. Install Node.js from https://nodejs.org/" + return dep + } + + dep.Version = version + + // Check minimum version (7.0.0) + parts := strings.Split(version, ".") + if len(parts) > 0 { + major, _ := strconv.Atoi(parts[0]) + if major < 7 { + dep.Status = "needs_update" + dep.Installed = true + dep.Message = "npm 7.0.0 or higher is required" + return dep + } + } + + dep.Installed = true + dep.Status = "installed" + return dep +} + +func checkDocker() DependencyStatus { + dep := DependencyStatus{ + Name: "docker", + Required: false, // Optional for cross-compilation + } + + version, err := execCommand("docker", "--version") + if err != nil { + dep.Status = "not_installed" + dep.Installed = false + dep.Message = "Optional - for cross-compilation" + return dep + } + + // Parse version from "Docker version 24.0.7, build afdd53b" + parts := strings.Split(version, ",") + if len(parts) > 0 { + dep.Version = strings.TrimPrefix(strings.TrimSpace(parts[0]), "Docker version ") + } + + // Check if daemon is running + _, err = execCommand("docker", "info") + if err != nil { + dep.Installed = true + dep.Status = "installed" + dep.Message = "Daemon not running" + return dep + } + + // Check for wails-cross image + imageCheck, _ := execCommand("docker", "image", "inspect", "wails-cross") + if imageCheck == "" || strings.Contains(imageCheck, "Error") { + dep.Installed = true + dep.Status = "installed" + dep.Message = "wails-cross image not built" + } else { + dep.Installed = true + dep.Status = "installed" + dep.Message = "Cross-compilation ready" + } + + return dep +} diff --git a/v3/internal/setupwizard/wizard_windows.go b/v3/internal/setupwizard/wizard_windows.go new file mode 100644 index 000000000..afa2653a4 --- /dev/null +++ b/v3/internal/setupwizard/wizard_windows.go @@ -0,0 +1,142 @@ +//go:build windows + +package setupwizard + +import ( + "os" + "path/filepath" + "strconv" + "strings" +) + +func (w *Wizard) checkAllDependencies() []DependencyStatus { + var deps []DependencyStatus + + // Check WebView2 Runtime + deps = append(deps, checkWebView2()) + + // Check npm (common dependency) + deps = append(deps, checkNpm()) + + // Check Docker (optional) + deps = append(deps, checkDocker()) + + return deps +} + +func checkWebView2() DependencyStatus { + dep := DependencyStatus{ + Name: "WebView2 Runtime", + Required: true, + } + + // Check common installation paths + paths := []string{ + filepath.Join(os.Getenv("PROGRAMFILES(X86)"), "Microsoft", "EdgeWebView", "Application"), + filepath.Join(os.Getenv("LOCALAPPDATA"), "Microsoft", "EdgeWebView", "Application"), + filepath.Join(os.Getenv("PROGRAMFILES"), "Microsoft", "EdgeWebView", "Application"), + } + + for _, path := range paths { + if info, err := os.Stat(path); err == nil && info.IsDir() { + dep.Installed = true + dep.Status = "installed" + + // Try to get version from directory name + entries, _ := os.ReadDir(path) + for _, entry := range entries { + if entry.IsDir() { + name := entry.Name() + // Version directories look like "120.0.2210.91" + if len(name) > 0 && name[0] >= '0' && name[0] <= '9' { + dep.Version = name + break + } + } + } + return dep + } + } + + dep.Status = "not_installed" + dep.Installed = false + dep.Message = "Download from Microsoft Edge WebView2" + return dep +} + +func checkNpm() DependencyStatus { + dep := DependencyStatus{ + Name: "npm", + Required: true, + } + + version, err := execCommand("npm", "-v") + if err != nil { + dep.Status = "not_installed" + dep.Installed = false + dep.Message = "npm is required. Install Node.js from https://nodejs.org/" + return dep + } + + dep.Version = version + + // Check minimum version (7.0.0) + parts := strings.Split(version, ".") + if len(parts) > 0 { + major, _ := strconv.Atoi(parts[0]) + if major < 7 { + dep.Status = "needs_update" + dep.Installed = true + dep.Message = "npm 7.0.0 or higher is required" + return dep + } + } + + dep.Installed = true + dep.Status = "installed" + return dep +} + +func checkDocker() DependencyStatus { + dep := DependencyStatus{ + Name: "docker", + Required: false, // Optional for cross-compilation + } + + version, err := execCommand("docker", "--version") + if err != nil { + dep.Status = "not_installed" + dep.Installed = false + dep.Message = "Optional - for cross-compilation" + return dep + } + + // Parse version from "Docker version 24.0.7, build afdd53b" + parts := strings.Split(version, ",") + if len(parts) > 0 { + dep.Version = strings.TrimPrefix(strings.TrimSpace(parts[0]), "Docker version ") + } + + // Check if daemon is running + _, err = execCommand("docker", "info") + if err != nil { + dep.Installed = true + dep.Status = "installed" + dep.Message = "Daemon not running" + return dep + } + + // Check for wails-cross image + imageCheck, _ := execCommand("docker", "image", "inspect", "wails-cross") + if imageCheck == "" || strings.Contains(imageCheck, "Error") { + dep.Installed = true + dep.Status = "installed" + dep.Message = "wails-cross image not built" + } else { + dep.Installed = true + dep.Status = "installed" + dep.Message = "Cross-compilation ready" + } + + return dep +}