otx-swap 1.2.24 → 1.2.26

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -1,4 +1,4 @@
1
- (function(){"use strict";try{if(typeof document<"u"){var t=document.createElement("style");t.appendChild(document.createTextNode('.optx-widget .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.optx-widget .fixed{position:fixed}.optx-widget .absolute{position:absolute}.optx-widget .relative{position:relative}.optx-widget .inset-0{inset:0}.optx-widget .inset-2{inset:.5rem}.optx-widget .inset-x-0{left:0;right:0}.optx-widget .-bottom-1{bottom:-.25rem}.optx-widget .-bottom-2{bottom:-.5rem}.optx-widget .-right-1{right:-.25rem}.optx-widget .-top-2{top:-.5rem}.optx-widget .bottom-0{bottom:0}.optx-widget .bottom-full{bottom:100%}.optx-widget .left-0{left:0}.optx-widget .left-1\\/2{left:50%}.optx-widget .left-3{left:.75rem}.optx-widget .left-4{left:1rem}.optx-widget .right-0{right:0}.optx-widget .right-3{right:.75rem}.optx-widget .right-4{right:1rem}.optx-widget .top-1\\/2{top:50%}.optx-widget .top-full{top:100%}.optx-widget .z-10{z-index:10}.optx-widget .z-50{z-index:50}.optx-widget .z-\\[9999\\]{z-index:9999}.optx-widget .\\!m-0{margin:0!important}.optx-widget .-my-4{margin-top:-1rem;margin-bottom:-1rem}.optx-widget .mx-auto{margin-left:auto;margin-right:auto}.optx-widget .mb-1{margin-bottom:.25rem}.optx-widget .mb-2{margin-bottom:.5rem}.optx-widget .mb-3{margin-bottom:.75rem}.optx-widget .mb-4{margin-bottom:1rem}.optx-widget .mb-6{margin-bottom:1.5rem}.optx-widget .ml-2{margin-left:.5rem}.optx-widget .ml-3{margin-left:.75rem}.optx-widget .ml-auto{margin-left:auto}.optx-widget .mt-1{margin-top:.25rem}.optx-widget .mt-2{margin-top:.5rem}.optx-widget .mt-24{margin-top:6rem}.optx-widget .mt-3{margin-top:.75rem}.optx-widget .mt-4{margin-top:1rem}.optx-widget .mt-auto{margin-top:auto}.optx-widget .block{display:block}.optx-widget .inline-block{display:inline-block}.optx-widget .inline{display:inline}.optx-widget .flex{display:flex}.optx-widget .size-10{width:2.5rem;height:2.5rem}.optx-widget .size-12{width:3rem;height:3rem}.optx-widget .size-2{width:.5rem;height:.5rem}.optx-widget .size-20{width:5rem;height:5rem}.optx-widget .size-3{width:.75rem;height:.75rem}.optx-widget .size-4{width:1rem;height:1rem}.optx-widget .size-5{width:1.25rem;height:1.25rem}.optx-widget .size-8{width:2rem;height:2rem}.optx-widget .h-1\\.5{height:.375rem}.optx-widget .h-10{height:2.5rem}.optx-widget .h-12{height:3rem}.optx-widget .h-14{height:3.5rem}.optx-widget .h-16{height:4rem}.optx-widget .h-2{height:.5rem}.optx-widget .h-3{height:.75rem}.optx-widget .h-3\\.5{height:.875rem}.optx-widget .h-4{height:1rem}.optx-widget .h-5{height:1.25rem}.optx-widget .h-6{height:1.5rem}.optx-widget .h-8{height:2rem}.optx-widget .h-auto{height:auto}.optx-widget .h-full{height:100%}.optx-widget .max-h-\\[2\\.5rem\\]{max-height:2.5rem}.optx-widget .max-h-\\[2rem\\]{max-height:2rem}.optx-widget .max-h-\\[3rem\\]{max-height:3rem}.optx-widget .max-h-\\[5rem\\]{max-height:5rem}.optx-widget .max-h-\\[600px\\]{max-height:600px}.optx-widget .max-h-\\[60vh\\]{max-height:60vh}.optx-widget .max-h-\\[85vh\\]{max-height:85vh}.optx-widget .max-h-\\[96vh\\]{max-height:96vh}.optx-widget .w-1\\/3{width:33.333333%}.optx-widget .w-10{width:2.5rem}.optx-widget .w-12{width:3rem}.optx-widget .w-14{width:3.5rem}.optx-widget .w-16{width:4rem}.optx-widget .w-20{width:5rem}.optx-widget .w-24{width:6rem}.optx-widget .w-28{width:7rem}.optx-widget .w-3{width:.75rem}.optx-widget .w-3\\.5{width:.875rem}.optx-widget .w-32{width:8rem}.optx-widget .w-4{width:1rem}.optx-widget .w-48{width:12rem}.optx-widget .w-5{width:1.25rem}.optx-widget .w-6{width:1.5rem}.optx-widget .w-72{width:18rem}.optx-widget .w-8{width:2rem}.optx-widget .w-96{width:24rem}.optx-widget .w-auto{width:auto}.optx-widget .w-full{width:100%}.optx-widget .min-w-0{min-width:0px}.optx-widget .min-w-\\[140px\\]{min-width:140px}.optx-widget .max-w-2xl{max-width:42rem}.optx-widget .max-w-\\[280px\\]{max-width:280px}.optx-widget .max-w-\\[calc\\(100\\%-2rem\\)\\]{max-width:calc(100% - 2rem)}.optx-widget .max-w-md{max-width:28rem}.optx-widget .flex-1{flex:1 1 0%}.optx-widget .flex-shrink-0,.optx-widget .shrink-0{flex-shrink:0}.optx-widget .-translate-x-1\\/2{--tw-translate-x: -50%;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))}.optx-widget .-translate-y-1\\/2{--tw-translate-y: -50%;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))}.optx-widget .rotate-180{--tw-rotate: 180deg;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))}.optx-widget .rotate-45{--tw-rotate: 45deg;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))}.optx-widget .transform{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))}@keyframes pulse{50%{opacity:.5}}.optx-widget .animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.optx-widget .animate-spin{animation:spin 1s linear infinite}.optx-widget .cursor-not-allowed{cursor:not-allowed}.optx-widget .cursor-pointer{cursor:pointer}.optx-widget .resize{resize:both}.optx-widget .flex-col{flex-direction:column}.optx-widget .flex-wrap{flex-wrap:wrap}.optx-widget .items-end{align-items:flex-end}.optx-widget .items-center{align-items:center}.optx-widget .justify-end{justify-content:flex-end}.optx-widget .justify-center{justify-content:center}.optx-widget .justify-between{justify-content:space-between}.optx-widget .gap-0\\.5{gap:.125rem}.optx-widget .gap-1{gap:.25rem}.optx-widget .gap-1\\.5{gap:.375rem}.optx-widget .gap-2{gap:.5rem}.optx-widget .gap-3{gap:.75rem}.optx-widget .gap-4{gap:1rem}.optx-widget :is(.space-y-1>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.optx-widget :is(.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))}.optx-widget :is(.space-y-3>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.optx-widget :is(.divide-y>:not([hidden])~:not([hidden])){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.optx-widget :is(.divide-\\[var\\(--optimex-border\\)\\]>:not([hidden])~:not([hidden])){border-color:var(--optimex-border)}.optx-widget .overflow-auto{overflow:auto}.optx-widget .overflow-hidden{overflow:hidden}.optx-widget .overflow-y-auto{overflow-y:auto}.optx-widget .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.optx-widget .break-all{word-break:break-all}.optx-widget .rounded{border-radius:.25rem}.optx-widget .rounded-2xl{border-radius:1rem}.optx-widget .rounded-\\[0\\.25rem\\]{border-radius:.25rem}.optx-widget .rounded-\\[9999px\\]{border-radius:9999px}.optx-widget .rounded-\\[var\\(--optimex-overlay-radius\\)\\]{border-radius:var(--optimex-overlay-radius)}.optx-widget .rounded-\\[var\\(--optimex-radius-button\\)\\]{border-radius:var(--optimex-radius-button)}.optx-widget .rounded-\\[var\\(--optimex-radius-input\\)\\]{border-radius:var(--optimex-radius-input)}.optx-widget .rounded-\\[var\\(--optimex-radius-widget\\)\\]{border-radius:var(--optimex-radius-widget)}.optx-widget .rounded-full{border-radius:9999px}.optx-widget .rounded-lg{border-radius:.5rem}.optx-widget .rounded-md{border-radius:.375rem}.optx-widget .rounded-xl{border-radius:.75rem}.optx-widget .rounded-t-\\[var\\(--optimex-overlay-radius\\)\\]{border-top-left-radius:var(--optimex-overlay-radius);border-top-right-radius:var(--optimex-overlay-radius)}.optx-widget .rounded-t-sm{border-top-left-radius:.125rem;border-top-right-radius:.125rem}.optx-widget .border{border-width:1px}.optx-widget .border-2{border-width:2px}.optx-widget .border-4{border-width:4px}.optx-widget .border-b{border-bottom-width:1px}.optx-widget .border-l{border-left-width:1px}.optx-widget .border-r{border-right-width:1px}.optx-widget .border-t{border-top-width:1px}.optx-widget .border-none{border-style:none}.optx-widget .border-\\[var\\(--optimex-background\\)\\]{border-color:var(--optimex-background)}.optx-widget .border-\\[var\\(--optimex-border\\)\\]{border-color:var(--optimex-border)}.optx-widget .border-\\[var\\(--optimex-error\\)\\]{border-color:var(--optimex-error)}.optx-widget .border-\\[var\\(--optimex-primary\\)\\]{border-color:var(--optimex-primary)}.optx-widget .border-\\[var\\(--optimex-surface\\)\\]{border-color:var(--optimex-surface)}.optx-widget .border-current{border-color:currentColor}.optx-widget .border-transparent{border-color:transparent}.optx-widget .border-white\\/10{border-color:#ffffff1a}.optx-widget .border-white\\/5{border-color:#ffffff0d}.optx-widget .border-white\\/\\[0\\.02\\]{border-color:#ffffff05}.optx-widget .border-white\\/\\[0\\.05\\]{border-color:#ffffff0d}.optx-widget .border-t-transparent{border-top-color:transparent}.optx-widget .bg-\\[rgba\\(239\\,68\\,68\\,0\\.15\\)\\]{background-color:#ef444426}.optx-widget .bg-\\[rgba\\(34\\,197\\,94\\,0\\.15\\)\\]{background-color:#22c55e26}.optx-widget .bg-\\[rgba\\(59\\,130\\,246\\,0\\.15\\)\\]{background-color:#3b82f626}.optx-widget .bg-\\[var\\(--optimex-background\\)\\]{background-color:var(--optimex-background)}.optx-widget .bg-\\[var\\(--optimex-border\\)\\]{background-color:var(--optimex-border)}.optx-widget .bg-\\[var\\(--optimex-error\\)\\]{background-color:var(--optimex-error)}.optx-widget .bg-\\[var\\(--optimex-overlay-background\\)\\]{background-color:var(--optimex-overlay-background)}.optx-widget .bg-\\[var\\(--optimex-primary\\)\\]{background-color:var(--optimex-primary)}.optx-widget .bg-\\[var\\(--optimex-surface\\)\\]{background-color:var(--optimex-surface)}.optx-widget .bg-\\[var\\(--optimex-surface-hover\\)\\]{background-color:var(--optimex-surface-hover)}.optx-widget .bg-black\\/60{background-color:#0009}.optx-widget .bg-blue-500\\/20{background-color:#3b82f633}.optx-widget .bg-green-500\\/10{background-color:#22c55e1a}.optx-widget .bg-orange-500\\/20{background-color:#f9731633}.optx-widget .bg-purple-500\\/20{background-color:#a855f733}.optx-widget .bg-red-500\\/10{background-color:#ef44441a}.optx-widget .bg-transparent{background-color:transparent}.optx-widget .bg-white\\/10{background-color:#ffffff1a}.optx-widget .bg-white\\/20{background-color:#fff3}.optx-widget .bg-white\\/5{background-color:#ffffff0d}.optx-widget .bg-white\\/\\[0\\.02\\]{background-color:#ffffff05}.optx-widget .bg-yellow-500\\/10{background-color:#eab3081a}.optx-widget .bg-zinc-900\\/50{background-color:#18181b80}.optx-widget .stroke-\\[var\\(--optimex-error\\)\\]{stroke:var(--optimex-error)}.optx-widget .p-0{padding:0}.optx-widget .p-1{padding:.25rem}.optx-widget .p-1\\.5{padding:.375rem}.optx-widget .p-2{padding:.5rem}.optx-widget .p-3{padding:.75rem}.optx-widget .p-4{padding:1rem}.optx-widget .p-6{padding:1.5rem}.optx-widget .px-1\\.5{padding-left:.375rem;padding-right:.375rem}.optx-widget .px-2{padding-left:.5rem;padding-right:.5rem}.optx-widget .px-2\\.5{padding-left:.625rem;padding-right:.625rem}.optx-widget .px-3{padding-left:.75rem;padding-right:.75rem}.optx-widget .px-4{padding-left:1rem;padding-right:1rem}.optx-widget .px-6{padding-left:1.5rem;padding-right:1.5rem}.optx-widget .py-0\\.5{padding-top:.125rem;padding-bottom:.125rem}.optx-widget .py-1{padding-top:.25rem;padding-bottom:.25rem}.optx-widget .py-1\\.5{padding-top:.375rem;padding-bottom:.375rem}.optx-widget .py-12{padding-top:3rem;padding-bottom:3rem}.optx-widget .py-2{padding-top:.5rem;padding-bottom:.5rem}.optx-widget .py-3{padding-top:.75rem;padding-bottom:.75rem}.optx-widget .py-4{padding-top:1rem;padding-bottom:1rem}.optx-widget .py-8{padding-top:2rem;padding-bottom:2rem}.optx-widget .py-\\[6px\\]{padding-top:6px;padding-bottom:6px}.optx-widget .pb-3{padding-bottom:.75rem}.optx-widget .pb-4{padding-bottom:1rem}.optx-widget .pl-10{padding-left:2.5rem}.optx-widget .pl-2{padding-left:.5rem}.optx-widget .pr-10{padding-right:2.5rem}.optx-widget .pr-3{padding-right:.75rem}.optx-widget .pt-2{padding-top:.5rem}.optx-widget .pt-3{padding-top:.75rem}.optx-widget .text-left{text-align:left}.optx-widget .text-center{text-align:center}.optx-widget .text-2xl{font-size:1.5rem;line-height:2rem}.optx-widget .text-\\[10px\\]{font-size:10px}.optx-widget .text-base{font-size:1rem;line-height:1.5rem}.optx-widget .text-lg{font-size:1.125rem;line-height:1.75rem}.optx-widget .text-sm{font-size:.875rem;line-height:1.25rem}.optx-widget .text-xl{font-size:1.25rem;line-height:1.75rem}.optx-widget .text-xs{font-size:.75rem;line-height:1rem}.optx-widget .font-bold{font-weight:700}.optx-widget .font-medium{font-weight:500}.optx-widget .font-semibold{font-weight:600}.optx-widget .uppercase{text-transform:uppercase}.optx-widget .leading-none{line-height:1}.optx-widget .tracking-tight{letter-spacing:-.025em}.optx-widget .tracking-wider{letter-spacing:.05em}.optx-widget .text-\\[var\\(--optimex-error\\)\\]{color:var(--optimex-error)}.optx-widget .text-\\[var\\(--optimex-primary\\)\\]{color:var(--optimex-primary)}.optx-widget .text-\\[var\\(--optimex-success\\)\\]{color:var(--optimex-success)}.optx-widget .text-\\[var\\(--optimex-text\\)\\]{color:var(--optimex-text)}.optx-widget .text-\\[var\\(--optimex-text-secondary\\)\\]{color:var(--optimex-text-secondary)}.optx-widget .text-\\[var\\(--optimex-warning\\)\\]{color:var(--optimex-warning)}.optx-widget .text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.optx-widget .text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.optx-widget .text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.optx-widget .text-orange-400{--tw-text-opacity: 1;color:rgb(251 146 60 / var(--tw-text-opacity, 1))}.optx-widget .text-purple-400{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.optx-widget .text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.optx-widget .text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.optx-widget .text-yellow-500{--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity, 1))}.optx-widget .text-zinc-400{--tw-text-opacity: 1;color:rgb(161 161 170 / var(--tw-text-opacity, 1))}.optx-widget .text-zinc-500{--tw-text-opacity: 1;color:rgb(113 113 122 / var(--tw-text-opacity, 1))}.optx-widget .opacity-0{opacity:0}.optx-widget .opacity-50{opacity:.5}.optx-widget .opacity-70{opacity:.7}.optx-widget .shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.optx-widget .shadow-\\[0_0_15px_rgba\\(235\\,98\\,0\\,0\\.1\\)\\]{--tw-shadow: 0 0 15px rgba(235,98,0,.1);--tw-shadow-colored: 0 0 15px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.optx-widget .shadow-\\[0_0_15px_rgba\\(235\\,98\\,0\\,0\\.3\\)\\]{--tw-shadow: 0 0 15px rgba(235,98,0,.3);--tw-shadow-colored: 0 0 15px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.optx-widget .shadow-\\[0_0_8px_rgba\\(235\\,98\\,0\\,0\\.8\\)\\]{--tw-shadow: 0 0 8px rgba(235,98,0,.8);--tw-shadow-colored: 0 0 8px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.optx-widget .shadow-lg{--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)}.optx-widget .shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.optx-widget .shadow-xl{--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)}.optx-widget .outline-none{outline:2px solid transparent;outline-offset:2px}.optx-widget .outline{outline-style:solid}.optx-widget .blur{--tw-blur: blur(8px);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)}.optx-widget .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)}.optx-widget .backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.optx-widget .transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.optx-widget .transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.optx-widget .transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.optx-widget .transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.optx-widget .duration-200{transition-duration:.2s}.optx-widget .duration-300{transition-duration:.3s}.optx-widget{isolation:isolate;width:100%;min-width:0;max-width:100%;--optimex-primary: #ed6300;--optimex-background: hsla(0, 0%, 100%, .04);--optimex-surface: hsla(0, 0%, 0%, .2);--optimex-text: #ffffff;--optimex-text-secondary: hsla(0, 0%, 100%, .48);--optimex-error: #ff4d4f;--optimex-success: #52c41a;--optimex-overlay-background: #1a1a1a;--optimex-overlay-radius: .75rem;--optimex-radius-widget: 1rem;--optimex-radius-input: .75rem;--optimex-radius-button: .5rem;--optimex-font-family: "Inter", sans-serif;--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: ;font-family:var(--optimex-font-family);font-size:14px;line-height:1.5;color:var(--optimex-text);text-align:left;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.optx-widget .widget-container{background:var(--optimex-background);border:1px solid rgba(255,255,255,.05);border-radius:var(--optimex-radius-widget);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);width:100%;min-width:0;max-width:100%;box-sizing:border-box}.optx-widget *,.optx-widget *:before,.optx-widget *:after{box-sizing:border-box}.optx-widget button{font-family:inherit;line-height:inherit;margin:0;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.optx-widget input,.optx-widget select,.optx-widget textarea{font-family:inherit;line-height:inherit;margin:0}.optx-widget a{color:inherit;text-decoration:none}.optx-widget ul,.optx-widget ol{list-style:none;margin:0;padding:0}.optx-widget img{max-width:100%;height:auto}.optx-widget svg{display:inline-block;vertical-align:middle}.optx-widget .glow-orange{box-shadow:inset 0 0 15px #eb620026,0 0 20px #eb62001a}.optx-widget .glow-green{box-shadow:0 0 12px #22c55e33}.optx-widget .glow-red{box-shadow:0 0 12px #ef444433}@keyframes optx-status-pulse{0%,to{opacity:1}50%{opacity:.5}}.optx-widget .status-pulse{animation:optx-status-pulse 2s cubic-bezier(.4,0,.6,1) infinite}.optx-widget .placeholder\\:text-\\[var\\(--optimex-text-secondary\\)\\]::-moz-placeholder{color:var(--optimex-text-secondary)}.optx-widget .placeholder\\:text-\\[var\\(--optimex-text-secondary\\)\\]::placeholder{color:var(--optimex-text-secondary)}.optx-widget .focus-within\\:border-\\[var\\(--optimex-primary\\)\\]:focus-within{border-color:var(--optimex-primary)}.optx-widget .hover\\:scale-110:hover{--tw-scale-x: 1.1;--tw-scale-y: 1.1;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))}.optx-widget .hover\\:border-\\[var\\(--optimex-primary\\)\\]:hover{border-color:var(--optimex-primary)}.optx-widget .hover\\:bg-\\[rgba\\(239\\,68\\,68\\,0\\.2\\)\\]:hover{background-color:#ef444433}.optx-widget .hover\\:bg-\\[var\\(--optimex-primary-hover\\)\\]:hover{background-color:var(--optimex-primary-hover)}.optx-widget .hover\\:bg-\\[var\\(--optimex-surface-hover\\)\\]:hover{background-color:var(--optimex-surface-hover)}.optx-widget .hover\\:bg-white\\/10:hover{background-color:#ffffff1a}.optx-widget .hover\\:bg-white\\/5:hover{background-color:#ffffff0d}.optx-widget .hover\\:bg-white\\/\\[0\\.02\\]:hover{background-color:#ffffff05}.optx-widget .hover\\:text-\\[var\\(--optimex-primary\\)\\]:hover{color:var(--optimex-primary)}.optx-widget .hover\\:text-\\[var\\(--optimex-text\\)\\]:hover{color:var(--optimex-text)}.optx-widget .hover\\:text-\\[var\\(--optimex-text-secondary\\)\\]:hover{color:var(--optimex-text-secondary)}.optx-widget .hover\\:opacity-100:hover{opacity:1}.optx-widget .hover\\:opacity-70:hover{opacity:.7}.optx-widget .hover\\:shadow-lg:hover{--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)}.optx-widget .hover\\:brightness-110:hover{--tw-brightness: brightness(1.1);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)}.optx-widget .focus\\:border-\\[var\\(--optimex-primary\\)\\]:focus{border-color:var(--optimex-primary)}.optx-widget .focus\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.optx-widget .focus\\:ring-0:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.optx-widget .active\\:scale-95: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))}.optx-widget .active\\:scale-\\[0\\.98\\]:active{--tw-scale-x: .98;--tw-scale-y: .98;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))}.optx-widget .disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.optx-widget .disabled\\:opacity-50:disabled{opacity:.5}.optx-widget :is(.group:hover .group-hover\\:rotate-180){--tw-rotate: 180deg;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))}.optx-widget :is(.group:hover .group-hover\\:opacity-100){opacity:1}@media(min-width:640px){.optx-widget .sm\\:max-w-lg{max-width:32rem}.optx-widget .sm\\:text-left{text-align:left}}@media(min-width:768px){.optx-widget .md\\:h-\\[70vh\\]{height:70vh}}')),document.head.appendChild(t)}}catch(e){console.error("vite-plugin-css-injected-by-js",e)}})();
1
+ (function(){"use strict";try{if(typeof document<"u"){var t=document.createElement("style");t.appendChild(document.createTextNode('.optx-widget .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.optx-widget .fixed{position:fixed}.optx-widget .absolute{position:absolute}.optx-widget .relative{position:relative}.optx-widget .inset-0{inset:0}.optx-widget .inset-2{inset:.5rem}.optx-widget .inset-x-0{left:0;right:0}.optx-widget .-bottom-1{bottom:-.25rem}.optx-widget .-bottom-2{bottom:-.5rem}.optx-widget .-right-1{right:-.25rem}.optx-widget .-top-2{top:-.5rem}.optx-widget .bottom-0{bottom:0}.optx-widget .bottom-full{bottom:100%}.optx-widget .left-0{left:0}.optx-widget .left-1\\/2{left:50%}.optx-widget .left-3{left:.75rem}.optx-widget .left-4{left:1rem}.optx-widget .right-0{right:0}.optx-widget .right-3{right:.75rem}.optx-widget .right-4{right:1rem}.optx-widget .top-1\\/2{top:50%}.optx-widget .top-full{top:100%}.optx-widget .z-10{z-index:10}.optx-widget .z-50{z-index:50}.optx-widget .z-\\[9999\\]{z-index:9999}.optx-widget .\\!m-0{margin:0!important}.optx-widget .-my-4{margin-top:-1rem;margin-bottom:-1rem}.optx-widget .mx-auto{margin-left:auto;margin-right:auto}.optx-widget .mb-1{margin-bottom:.25rem}.optx-widget .mb-2{margin-bottom:.5rem}.optx-widget .mb-3{margin-bottom:.75rem}.optx-widget .mb-4{margin-bottom:1rem}.optx-widget .mb-6{margin-bottom:1.5rem}.optx-widget .ml-2{margin-left:.5rem}.optx-widget .ml-3{margin-left:.75rem}.optx-widget .ml-auto{margin-left:auto}.optx-widget .mt-1{margin-top:.25rem}.optx-widget .mt-2{margin-top:.5rem}.optx-widget .mt-24{margin-top:6rem}.optx-widget .mt-3{margin-top:.75rem}.optx-widget .mt-4{margin-top:1rem}.optx-widget .mt-auto{margin-top:auto}.optx-widget .block{display:block}.optx-widget .inline-block{display:inline-block}.optx-widget .inline{display:inline}.optx-widget .flex{display:flex}.optx-widget .size-10{width:2.5rem;height:2.5rem}.optx-widget .size-12{width:3rem;height:3rem}.optx-widget .size-2{width:.5rem;height:.5rem}.optx-widget .size-20{width:5rem;height:5rem}.optx-widget .size-3{width:.75rem;height:.75rem}.optx-widget .size-4{width:1rem;height:1rem}.optx-widget .size-5{width:1.25rem;height:1.25rem}.optx-widget .size-8{width:2rem;height:2rem}.optx-widget .h-1\\.5{height:.375rem}.optx-widget .h-10{height:2.5rem}.optx-widget .h-12{height:3rem}.optx-widget .h-14{height:3.5rem}.optx-widget .h-16{height:4rem}.optx-widget .h-2{height:.5rem}.optx-widget .h-3{height:.75rem}.optx-widget .h-3\\.5{height:.875rem}.optx-widget .h-4{height:1rem}.optx-widget .h-5{height:1.25rem}.optx-widget .h-6{height:1.5rem}.optx-widget .h-8{height:2rem}.optx-widget .h-auto{height:auto}.optx-widget .h-full{height:100%}.optx-widget .max-h-\\[2\\.5rem\\]{max-height:2.5rem}.optx-widget .max-h-\\[2rem\\]{max-height:2rem}.optx-widget .max-h-\\[3rem\\]{max-height:3rem}.optx-widget .max-h-\\[5rem\\]{max-height:5rem}.optx-widget .max-h-\\[600px\\]{max-height:600px}.optx-widget .max-h-\\[60vh\\]{max-height:60vh}.optx-widget .max-h-\\[85vh\\]{max-height:85vh}.optx-widget .max-h-\\[96vh\\]{max-height:96vh}.optx-widget .w-1\\/3{width:33.333333%}.optx-widget .w-10{width:2.5rem}.optx-widget .w-12{width:3rem}.optx-widget .w-14{width:3.5rem}.optx-widget .w-16{width:4rem}.optx-widget .w-20{width:5rem}.optx-widget .w-24{width:6rem}.optx-widget .w-28{width:7rem}.optx-widget .w-3{width:.75rem}.optx-widget .w-3\\.5{width:.875rem}.optx-widget .w-32{width:8rem}.optx-widget .w-4{width:1rem}.optx-widget .w-48{width:12rem}.optx-widget .w-5{width:1.25rem}.optx-widget .w-6{width:1.5rem}.optx-widget .w-72{width:18rem}.optx-widget .w-8{width:2rem}.optx-widget .w-96{width:24rem}.optx-widget .w-auto{width:auto}.optx-widget .w-full{width:100%}.optx-widget .min-w-0{min-width:0px}.optx-widget .min-w-\\[140px\\]{min-width:140px}.optx-widget .max-w-2xl{max-width:42rem}.optx-widget .max-w-\\[280px\\]{max-width:280px}.optx-widget .max-w-\\[calc\\(100\\%-2rem\\)\\]{max-width:calc(100% - 2rem)}.optx-widget .max-w-md{max-width:28rem}.optx-widget .flex-1{flex:1 1 0%}.optx-widget .flex-shrink-0,.optx-widget .shrink-0{flex-shrink:0}.optx-widget .-translate-x-1\\/2{--tw-translate-x: -50%;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))}.optx-widget .-translate-y-1\\/2{--tw-translate-y: -50%;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))}.optx-widget .rotate-180{--tw-rotate: 180deg;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))}.optx-widget .rotate-45{--tw-rotate: 45deg;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))}.optx-widget .transform{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))}@keyframes pulse{50%{opacity:.5}}.optx-widget .animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.optx-widget .animate-spin{animation:spin 1s linear infinite}.optx-widget .cursor-not-allowed{cursor:not-allowed}.optx-widget .cursor-pointer{cursor:pointer}.optx-widget .resize{resize:both}.optx-widget .flex-col{flex-direction:column}.optx-widget .flex-wrap{flex-wrap:wrap}.optx-widget .items-end{align-items:flex-end}.optx-widget .items-center{align-items:center}.optx-widget .justify-end{justify-content:flex-end}.optx-widget .justify-center{justify-content:center}.optx-widget .justify-between{justify-content:space-between}.optx-widget .gap-0\\.5{gap:.125rem}.optx-widget .gap-1{gap:.25rem}.optx-widget .gap-1\\.5{gap:.375rem}.optx-widget .gap-2{gap:.5rem}.optx-widget .gap-3{gap:.75rem}.optx-widget .gap-4{gap:1rem}.optx-widget :is(.space-y-1>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.optx-widget :is(.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))}.optx-widget :is(.space-y-3>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.optx-widget :is(.divide-y>:not([hidden])~:not([hidden])){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.optx-widget :is(.divide-\\[var\\(--optimex-border\\)\\]>:not([hidden])~:not([hidden])){border-color:var(--optimex-border)}.optx-widget .overflow-auto{overflow:auto}.optx-widget .overflow-hidden{overflow:hidden}.optx-widget .overflow-y-auto{overflow-y:auto}.optx-widget .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.optx-widget .break-all{word-break:break-all}.optx-widget .rounded{border-radius:.25rem}.optx-widget .rounded-2xl{border-radius:1rem}.optx-widget .rounded-\\[0\\.25rem\\]{border-radius:.25rem}.optx-widget .rounded-\\[9999px\\]{border-radius:9999px}.optx-widget .rounded-\\[var\\(--optimex-overlay-radius\\)\\]{border-radius:var(--optimex-overlay-radius)}.optx-widget .rounded-\\[var\\(--optimex-radius-button\\)\\]{border-radius:var(--optimex-radius-button)}.optx-widget .rounded-\\[var\\(--optimex-radius-input\\)\\]{border-radius:var(--optimex-radius-input)}.optx-widget .rounded-\\[var\\(--optimex-radius-widget\\)\\]{border-radius:var(--optimex-radius-widget)}.optx-widget .rounded-full{border-radius:9999px}.optx-widget .rounded-lg{border-radius:.5rem}.optx-widget .rounded-md{border-radius:.375rem}.optx-widget .rounded-xl{border-radius:.75rem}.optx-widget .rounded-t-\\[var\\(--optimex-overlay-radius\\)\\]{border-top-left-radius:var(--optimex-overlay-radius);border-top-right-radius:var(--optimex-overlay-radius)}.optx-widget .rounded-t-sm{border-top-left-radius:.125rem;border-top-right-radius:.125rem}.optx-widget .border{border-width:1px}.optx-widget .border-2{border-width:2px}.optx-widget .border-4{border-width:4px}.optx-widget .border-b{border-bottom-width:1px}.optx-widget .border-l{border-left-width:1px}.optx-widget .border-r{border-right-width:1px}.optx-widget .border-t{border-top-width:1px}.optx-widget .border-none{border-style:none}.optx-widget .border-\\[var\\(--optimex-background\\)\\]{border-color:var(--optimex-background)}.optx-widget .border-\\[var\\(--optimex-border\\)\\]{border-color:var(--optimex-border)}.optx-widget .border-\\[var\\(--optimex-error\\)\\]{border-color:var(--optimex-error)}.optx-widget .border-\\[var\\(--optimex-primary\\)\\]{border-color:var(--optimex-primary)}.optx-widget .border-\\[var\\(--optimex-surface\\)\\]{border-color:var(--optimex-surface)}.optx-widget .border-current{border-color:currentColor}.optx-widget .border-transparent{border-color:transparent}.optx-widget .border-white\\/10{border-color:#ffffff1a}.optx-widget .border-white\\/5{border-color:#ffffff0d}.optx-widget .border-white\\/\\[0\\.02\\]{border-color:#ffffff05}.optx-widget .border-white\\/\\[0\\.05\\]{border-color:#ffffff0d}.optx-widget .border-t-transparent{border-top-color:transparent}.optx-widget .bg-\\[rgba\\(239\\,68\\,68\\,0\\.15\\)\\]{background-color:#ef444426}.optx-widget .bg-\\[rgba\\(34\\,197\\,94\\,0\\.15\\)\\]{background-color:#22c55e26}.optx-widget .bg-\\[rgba\\(59\\,130\\,246\\,0\\.15\\)\\]{background-color:#3b82f626}.optx-widget .bg-\\[var\\(--optimex-background\\)\\]{background-color:var(--optimex-background)}.optx-widget .bg-\\[var\\(--optimex-border\\)\\]{background-color:var(--optimex-border)}.optx-widget .bg-\\[var\\(--optimex-error\\)\\]{background-color:var(--optimex-error)}.optx-widget .bg-\\[var\\(--optimex-overlay-background\\)\\]{background-color:var(--optimex-overlay-background)}.optx-widget .bg-\\[var\\(--optimex-primary\\)\\]{background-color:var(--optimex-primary)}.optx-widget .bg-\\[var\\(--optimex-surface\\)\\]{background-color:var(--optimex-surface)}.optx-widget .bg-\\[var\\(--optimex-surface-hover\\)\\]{background-color:var(--optimex-surface-hover)}.optx-widget .bg-black\\/60{background-color:#0009}.optx-widget .bg-blue-500\\/20{background-color:#3b82f633}.optx-widget .bg-green-500\\/10{background-color:#22c55e1a}.optx-widget .bg-orange-500\\/20{background-color:#f9731633}.optx-widget .bg-purple-500\\/20{background-color:#a855f733}.optx-widget .bg-red-500\\/10{background-color:#ef44441a}.optx-widget .bg-transparent{background-color:transparent}.optx-widget .bg-white\\/10{background-color:#ffffff1a}.optx-widget .bg-white\\/20{background-color:#fff3}.optx-widget .bg-white\\/5{background-color:#ffffff0d}.optx-widget .bg-white\\/\\[0\\.02\\]{background-color:#ffffff05}.optx-widget .bg-yellow-500\\/10{background-color:#eab3081a}.optx-widget .bg-zinc-900\\/50{background-color:#18181b80}.optx-widget .stroke-\\[var\\(--optimex-error\\)\\]{stroke:var(--optimex-error)}.optx-widget .p-0{padding:0}.optx-widget .p-1{padding:.25rem}.optx-widget .p-1\\.5{padding:.375rem}.optx-widget .p-2{padding:.5rem}.optx-widget .p-3{padding:.75rem}.optx-widget .p-4{padding:1rem}.optx-widget .p-6{padding:1.5rem}.optx-widget .px-1\\.5{padding-left:.375rem;padding-right:.375rem}.optx-widget .px-2{padding-left:.5rem;padding-right:.5rem}.optx-widget .px-2\\.5{padding-left:.625rem;padding-right:.625rem}.optx-widget .px-3{padding-left:.75rem;padding-right:.75rem}.optx-widget .px-4{padding-left:1rem;padding-right:1rem}.optx-widget .px-6{padding-left:1.5rem;padding-right:1.5rem}.optx-widget .py-0\\.5{padding-top:.125rem;padding-bottom:.125rem}.optx-widget .py-1{padding-top:.25rem;padding-bottom:.25rem}.optx-widget .py-1\\.5{padding-top:.375rem;padding-bottom:.375rem}.optx-widget .py-12{padding-top:3rem;padding-bottom:3rem}.optx-widget .py-2{padding-top:.5rem;padding-bottom:.5rem}.optx-widget .py-3{padding-top:.75rem;padding-bottom:.75rem}.optx-widget .py-4{padding-top:1rem;padding-bottom:1rem}.optx-widget .py-8{padding-top:2rem;padding-bottom:2rem}.optx-widget .py-\\[6px\\]{padding-top:6px;padding-bottom:6px}.optx-widget .pb-3{padding-bottom:.75rem}.optx-widget .pb-4{padding-bottom:1rem}.optx-widget .pl-10{padding-left:2.5rem}.optx-widget .pl-2{padding-left:.5rem}.optx-widget .pr-10{padding-right:2.5rem}.optx-widget .pr-3{padding-right:.75rem}.optx-widget .pt-2{padding-top:.5rem}.optx-widget .pt-3{padding-top:.75rem}.optx-widget .text-left{text-align:left}.optx-widget .text-center{text-align:center}.optx-widget .text-2xl{font-size:1.5rem;line-height:2rem}.optx-widget .text-\\[10px\\]{font-size:10px}.optx-widget .text-base{font-size:1rem;line-height:1.5rem}.optx-widget .text-lg{font-size:1.125rem;line-height:1.75rem}.optx-widget .text-sm{font-size:.875rem;line-height:1.25rem}.optx-widget .text-xl{font-size:1.25rem;line-height:1.75rem}.optx-widget .text-xs{font-size:.75rem;line-height:1rem}.optx-widget .font-bold{font-weight:700}.optx-widget .font-medium{font-weight:500}.optx-widget .font-semibold{font-weight:600}.optx-widget .uppercase{text-transform:uppercase}.optx-widget .leading-none{line-height:1}.optx-widget .tracking-tight{letter-spacing:-.025em}.optx-widget .tracking-wider{letter-spacing:.05em}.optx-widget .text-\\[var\\(--optimex-error\\)\\]{color:var(--optimex-error)}.optx-widget .text-\\[var\\(--optimex-primary\\)\\]{color:var(--optimex-primary)}.optx-widget .text-\\[var\\(--optimex-success\\)\\]{color:var(--optimex-success)}.optx-widget .text-\\[var\\(--optimex-text\\)\\]{color:var(--optimex-text)}.optx-widget .text-\\[var\\(--optimex-text-secondary\\)\\]{color:var(--optimex-text-secondary)}.optx-widget .text-\\[var\\(--optimex-warning\\)\\]{color:var(--optimex-warning)}.optx-widget .text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.optx-widget .text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.optx-widget .text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.optx-widget .text-orange-400{--tw-text-opacity: 1;color:rgb(251 146 60 / var(--tw-text-opacity, 1))}.optx-widget .text-purple-400{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.optx-widget .text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.optx-widget .text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.optx-widget .text-yellow-500{--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity, 1))}.optx-widget .text-zinc-400{--tw-text-opacity: 1;color:rgb(161 161 170 / var(--tw-text-opacity, 1))}.optx-widget .text-zinc-500{--tw-text-opacity: 1;color:rgb(113 113 122 / var(--tw-text-opacity, 1))}.optx-widget .opacity-0{opacity:0}.optx-widget .opacity-50{opacity:.5}.optx-widget .opacity-70{opacity:.7}.optx-widget .shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.optx-widget .shadow-\\[0_0_15px_rgba\\(235\\,98\\,0\\,0\\.1\\)\\]{--tw-shadow: 0 0 15px rgba(235,98,0,.1);--tw-shadow-colored: 0 0 15px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.optx-widget .shadow-\\[0_0_15px_rgba\\(235\\,98\\,0\\,0\\.3\\)\\]{--tw-shadow: 0 0 15px rgba(235,98,0,.3);--tw-shadow-colored: 0 0 15px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.optx-widget .shadow-\\[0_0_8px_rgba\\(235\\,98\\,0\\,0\\.8\\)\\]{--tw-shadow: 0 0 8px rgba(235,98,0,.8);--tw-shadow-colored: 0 0 8px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.optx-widget .shadow-lg{--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)}.optx-widget .shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.optx-widget .shadow-xl{--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)}.optx-widget .outline-none{outline:2px solid transparent;outline-offset:2px}.optx-widget .outline{outline-style:solid}.optx-widget .blur{--tw-blur: blur(8px);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)}.optx-widget .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)}.optx-widget .backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.optx-widget .transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.optx-widget .transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.optx-widget .transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.optx-widget .transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.optx-widget .duration-200{transition-duration:.2s}.optx-widget .duration-300{transition-duration:.3s}:root{--optimex-primary: #ed6300;--optimex-background: hsla(0, 0%, 100%, .04);--optimex-surface: hsla(0, 0%, 0%, .2);--optimex-text: #ffffff;--optimex-text-secondary: hsla(0, 0%, 100%, .48);--optimex-error: #ff4d4f;--optimex-success: #52c41a;--optimex-overlay-background: #343b47;--optimex-overlay-radius: .75rem;--optimex-radius-widget: 1rem;--optimex-radius-input: .75rem;--optimex-radius-button: .5rem;--optimex-font-family: "Inter", sans-serif}.optx-widget{isolation:isolate;width:100%;min-width:0;max-width:100%;--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: ;font-family:var(--optimex-font-family);font-size:14px;line-height:1.5;color:var(--optimex-text);text-align:left;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.optx-widget .widget-container{background:var(--optimex-background);border:1px solid rgba(255,255,255,.05);border-radius:var(--optimex-radius-widget);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);width:100%;min-width:0;max-width:100%;box-sizing:border-box}.optx-widget *,.optx-widget *:before,.optx-widget *:after{box-sizing:border-box}.optx-widget button{font-family:inherit;line-height:inherit;margin:0;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.optx-widget input,.optx-widget select,.optx-widget textarea{font-family:inherit;line-height:inherit;margin:0}.optx-widget a{color:inherit;text-decoration:none}.optx-widget ul,.optx-widget ol{list-style:none;margin:0;padding:0}.optx-widget img{max-width:100%;height:auto}.optx-widget svg{display:inline-block;vertical-align:middle}.optx-widget .glow-orange{box-shadow:inset 0 0 15px #eb620026,0 0 20px #eb62001a}.optx-widget .glow-green{box-shadow:0 0 12px #22c55e33}.optx-widget .glow-red{box-shadow:0 0 12px #ef444433}@keyframes optx-status-pulse{0%,to{opacity:1}50%{opacity:.5}}.optx-widget .status-pulse{animation:optx-status-pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes modal-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes modal-overlay-out{0%{opacity:1}to{opacity:0}}@keyframes modal-content-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes modal-content-out{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(.95)}}.animate-modal-overlay-in{animation:modal-overlay-in .2s ease-out}.animate-modal-overlay-out{animation:modal-overlay-out .15s ease-in}.animate-modal-in{animation:modal-content-in .2s ease-out}.animate-modal-out{animation:modal-content-out .15s ease-in}.optx-widget .placeholder\\:text-\\[var\\(--optimex-text-secondary\\)\\]::-moz-placeholder{color:var(--optimex-text-secondary)}.optx-widget .placeholder\\:text-\\[var\\(--optimex-text-secondary\\)\\]::placeholder{color:var(--optimex-text-secondary)}.optx-widget .focus-within\\:border-\\[var\\(--optimex-primary\\)\\]:focus-within{border-color:var(--optimex-primary)}.optx-widget .hover\\:scale-110:hover{--tw-scale-x: 1.1;--tw-scale-y: 1.1;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))}.optx-widget .hover\\:border-\\[var\\(--optimex-primary\\)\\]:hover{border-color:var(--optimex-primary)}.optx-widget .hover\\:bg-\\[rgba\\(239\\,68\\,68\\,0\\.2\\)\\]:hover{background-color:#ef444433}.optx-widget .hover\\:bg-\\[var\\(--optimex-primary-hover\\)\\]:hover{background-color:var(--optimex-primary-hover)}.optx-widget .hover\\:bg-\\[var\\(--optimex-surface-hover\\)\\]:hover{background-color:var(--optimex-surface-hover)}.optx-widget .hover\\:bg-white\\/10:hover{background-color:#ffffff1a}.optx-widget .hover\\:bg-white\\/5:hover{background-color:#ffffff0d}.optx-widget .hover\\:bg-white\\/\\[0\\.02\\]:hover{background-color:#ffffff05}.optx-widget .hover\\:text-\\[var\\(--optimex-primary\\)\\]:hover{color:var(--optimex-primary)}.optx-widget .hover\\:text-\\[var\\(--optimex-text\\)\\]:hover{color:var(--optimex-text)}.optx-widget .hover\\:text-\\[var\\(--optimex-text-secondary\\)\\]:hover{color:var(--optimex-text-secondary)}.optx-widget .hover\\:opacity-100:hover{opacity:1}.optx-widget .hover\\:opacity-70:hover{opacity:.7}.optx-widget .hover\\:shadow-lg:hover{--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)}.optx-widget .hover\\:brightness-110:hover{--tw-brightness: brightness(1.1);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)}.optx-widget .focus\\:border-\\[var\\(--optimex-primary\\)\\]:focus{border-color:var(--optimex-primary)}.optx-widget .focus\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.optx-widget .focus\\:ring-0:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.optx-widget .active\\:scale-95: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))}.optx-widget .active\\:scale-\\[0\\.98\\]:active{--tw-scale-x: .98;--tw-scale-y: .98;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))}.optx-widget .disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.optx-widget .disabled\\:opacity-50:disabled{opacity:.5}.optx-widget :is(.group:hover .group-hover\\:rotate-180){--tw-rotate: 180deg;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))}.optx-widget :is(.group:hover .group-hover\\:opacity-100){opacity:1}@media(min-width:640px){.optx-widget .sm\\:max-w-2xl{max-width:42rem}.optx-widget .sm\\:text-left{text-align:left}}@media(min-width:768px){.optx-widget .md\\:h-\\[70vh\\]{height:70vh}}')),document.head.appendChild(t)}}catch(e){console.error("vite-plugin-css-injected-by-js",e)}})();
2
2
  "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),p=require("react"),Tn=require("react-dom");function Rn(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const x=Rn(p),To=Rn(Tn);var it=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(e){return this.listeners.add(e),this.onSubscribe(),()=>{this.listeners.delete(e),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}},Me=typeof window>"u"||"Deno"in globalThis;function ae(){}function Ro(e,t){return typeof e=="function"?e(t):e}function tr(e){return typeof e=="number"&&e>=0&&e!==1/0}function On(e,t){return Math.max(e+(t||0)-Date.now(),0)}function He(e,t){return typeof e=="function"?e(t):e}function ce(e,t){return typeof e=="function"?e(t):e}function Vr(e,t){const{type:r="all",exact:n,fetchStatus:o,predicate:a,queryKey:l,stale:i}=e;if(l){if(n){if(t.queryHash!==pr(l,t.options))return!1}else if(!st(t.queryKey,l))return!1}if(r!=="all"){const c=t.isActive();if(r==="active"&&!c||r==="inactive"&&c)return!1}return!(typeof i=="boolean"&&t.isStale()!==i||o&&o!==t.state.fetchStatus||a&&!a(t))}function Ur(e,t){const{exact:r,status:n,predicate:o,mutationKey:a}=e;if(a){if(!t.options.mutationKey)return!1;if(r){if(nt(t.options.mutationKey)!==nt(a))return!1}else if(!st(t.options.mutationKey,a))return!1}return!(n&&t.state.status!==n||o&&!o(t))}function pr(e,t){return(t?.queryKeyHashFn||nt)(e)}function nt(e){return JSON.stringify(e,(t,r)=>sr(r)?Object.keys(r).sort().reduce((n,o)=>(n[o]=r[o],n),{}):r)}function st(e,t){return e===t?!0:typeof e!=typeof t?!1:e&&t&&typeof e=="object"&&typeof t=="object"?!Object.keys(t).some(r=>!st(e[r],t[r])):!1}function rr(e,t){if(e===t)return e;const r=Hr(e)&&Hr(t);if(r||sr(e)&&sr(t)){const n=r?e:Object.keys(e),o=n.length,a=r?t:Object.keys(t),l=a.length,i=r?[]:{};let c=0;for(let u=0;u<l;u++){const d=r?u:a[u];(!r&&n.includes(d)||r)&&e[d]===void 0&&t[d]===void 0?(i[d]=void 0,c++):(i[d]=rr(e[d],t[d]),i[d]===e[d]&&e[d]!==void 0&&c++)}return o===l&&c===o?e:i}return t}function nr(e,t){if(!t||Object.keys(e).length!==Object.keys(t).length)return!1;for(const r in e)if(e[r]!==t[r])return!1;return!0}function Hr(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function sr(e){if(!qr(e))return!1;const t=e.constructor;if(t===void 0)return!0;const r=t.prototype;return!(!qr(r)||!r.hasOwnProperty("isPrototypeOf")||Object.getPrototypeOf(e)!==Object.prototype)}function qr(e){return Object.prototype.toString.call(e)==="[object Object]"}function Oo(e){return new Promise(t=>{setTimeout(t,e)})}function or(e,t,r){if(typeof r.structuralSharing=="function")return r.structuralSharing(e,t);if(r.structuralSharing!==!1){if(process.env.NODE_ENV!=="production")try{return rr(e,t)}catch(n){console.error(`Structural sharing requires data to be JSON serializable. To fix this, turn off structuralSharing or return JSON-serializable data from your queryFn. [${r.queryHash}]: ${n}`)}return rr(e,t)}return t}function _o(e,t,r=0){const n=[...e,t];return r&&n.length>r?n.slice(1):n}function Ao(e,t,r=0){const n=[t,...e];return r&&n.length>r?n.slice(0,-1):n}var jt=Symbol();function _n(e,t){return process.env.NODE_ENV!=="production"&&e.queryFn===jt&&console.error(`Attempted to invoke queryFn when set to skipToken. This is likely a configuration error. Query hash: '${e.queryHash}'`),!e.queryFn&&t?.initialPromise?()=>t.initialPromise:!e.queryFn||e.queryFn===jt?()=>Promise.reject(new Error(`Missing queryFn: '${e.queryHash}'`)):e.queryFn}var Po=class extends it{#t;#e;#n;constructor(){super(),this.#n=e=>{if(!Me&&window.addEventListener){const t=()=>e();return window.addEventListener("visibilitychange",t,!1),()=>{window.removeEventListener("visibilitychange",t)}}}}onSubscribe(){this.#e||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#e?.(),this.#e=void 0)}setEventListener(e){this.#n=e,this.#e?.(),this.#e=e(t=>{typeof t=="boolean"?this.setFocused(t):this.onFocus()})}setFocused(e){this.#t!==e&&(this.#t=e,this.onFocus())}onFocus(){const e=this.isFocused();this.listeners.forEach(t=>{t(e)})}isFocused(){return typeof this.#t=="boolean"?this.#t:globalThis.document?.visibilityState!=="hidden"}},xr=new Po,Mo=class extends it{#t=!0;#e;#n;constructor(){super(),this.#n=e=>{if(!Me&&window.addEventListener){const t=()=>e(!0),r=()=>e(!1);return window.addEventListener("online",t,!1),window.addEventListener("offline",r,!1),()=>{window.removeEventListener("online",t),window.removeEventListener("offline",r)}}}}onSubscribe(){this.#e||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#e?.(),this.#e=void 0)}setEventListener(e){this.#n=e,this.#e?.(),this.#e=e(this.setOnline.bind(this))}setOnline(e){this.#t!==e&&(this.#t=e,this.listeners.forEach(r=>{r(e)}))}isOnline(){return this.#t}},St=new Mo;function ar(){let e,t;const r=new Promise((o,a)=>{e=o,t=a});r.status="pending",r.catch(()=>{});function n(o){Object.assign(r,o),delete r.resolve,delete r.reject}return r.resolve=o=>{n({status:"fulfilled",value:o}),e(o)},r.reject=o=>{n({status:"rejected",reason:o}),t(o)},r}function Io(e){return Math.min(1e3*2**e,3e4)}function An(e){return(e??"online")==="online"?St.isOnline():!0}var Pn=class extends Error{constructor(e){super("CancelledError"),this.revert=e?.revert,this.silent=e?.silent}};function Dt(e){return e instanceof Pn}function Mn(e){let t=!1,r=0,n=!1,o;const a=ar(),l=h=>{n||(m(new Pn(h)),e.abort?.())},i=()=>{t=!0},c=()=>{t=!1},u=()=>xr.isFocused()&&(e.networkMode==="always"||St.isOnline())&&e.canRun(),d=()=>An(e.networkMode)&&e.canRun(),f=h=>{n||(n=!0,e.onSuccess?.(h),o?.(),a.resolve(h))},m=h=>{n||(n=!0,e.onError?.(h),o?.(),a.reject(h))},b=()=>new Promise(h=>{o=y=>{(n||u())&&h(y)},e.onPause?.()}).then(()=>{o=void 0,n||e.onContinue?.()}),v=()=>{if(n)return;let h;const y=r===0?e.initialPromise:void 0;try{h=y??e.fn()}catch(g){h=Promise.reject(g)}Promise.resolve(h).then(f).catch(g=>{if(n)return;const S=e.retry??(Me?0:3),k=e.retryDelay??Io,w=typeof k=="function"?k(r,g):k,N=S===!0||typeof S=="number"&&r<S||typeof S=="function"&&S(r,g);if(t||!N){m(g);return}r++,e.onFail?.(r,g),Oo(w).then(()=>u()?void 0:b()).then(()=>{t?m(g):v()})})};return{promise:a,cancel:l,continue:()=>(o?.(),a),cancelRetry:i,continueRetry:c,canStart:d,start:()=>(d()?v():b().then(v),a)}}function Do(){let e=[],t=0,r=i=>{i()},n=i=>{i()},o=i=>setTimeout(i,0);const a=i=>{t?e.push(i):o(()=>{r(i)})},l=()=>{const i=e;e=[],i.length&&o(()=>{n(()=>{i.forEach(c=>{r(c)})})})};return{batch:i=>{let c;t++;try{c=i()}finally{t--,t||l()}return c},batchCalls:i=>(...c)=>{a(()=>{i(...c)})},schedule:a,setNotifyFunction:i=>{r=i},setBatchNotifyFunction:i=>{n=i},setScheduler:i=>{o=i}}}var te=Do(),In=class{#t;destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),tr(this.gcTime)&&(this.#t=setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(Me?1/0:300*1e3))}clearGcTimeout(){this.#t&&(clearTimeout(this.#t),this.#t=void 0)}},Lo=class extends In{#t;#e;#n;#r;#a;#o;constructor(e){super(),this.#o=!1,this.#a=e.defaultOptions,this.setOptions(e.options),this.observers=[],this.#n=e.cache,this.queryKey=e.queryKey,this.queryHash=e.queryHash,this.#t=Fo(this.options),this.state=e.state??this.#t,this.scheduleGc()}get meta(){return this.options.meta}get promise(){return this.#r?.promise}setOptions(e){this.options={...this.#a,...e},this.updateGcTime(this.options.gcTime)}optionalRemove(){!this.observers.length&&this.state.fetchStatus==="idle"&&this.#n.remove(this)}setData(e,t){const r=or(this.state.data,e,this.options);return this.#s({data:r,type:"success",dataUpdatedAt:t?.updatedAt,manual:t?.manual}),r}setState(e,t){this.#s({type:"setState",state:e,setStateOptions:t})}cancel(e){const t=this.#r?.promise;return this.#r?.cancel(e),t?t.then(ae).catch(ae):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}reset(){this.destroy(),this.setState(this.#t)}isActive(){return this.observers.some(e=>ce(e.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===jt||this.state.dataUpdateCount+this.state.errorUpdateCount===0}isStale(){return this.state.isInvalidated?!0:this.getObserversCount()>0?this.observers.some(e=>e.getCurrentResult().isStale):this.state.data===void 0}isStaleByTime(e=0){return this.state.isInvalidated||this.state.data===void 0||!On(this.state.dataUpdatedAt,e)}onFocus(){this.observers.find(t=>t.shouldFetchOnWindowFocus())?.refetch({cancelRefetch:!1}),this.#r?.continue()}onOnline(){this.observers.find(t=>t.shouldFetchOnReconnect())?.refetch({cancelRefetch:!1}),this.#r?.continue()}addObserver(e){this.observers.includes(e)||(this.observers.push(e),this.clearGcTimeout(),this.#n.notify({type:"observerAdded",query:this,observer:e}))}removeObserver(e){this.observers.includes(e)&&(this.observers=this.observers.filter(t=>t!==e),this.observers.length||(this.#r&&(this.#o?this.#r.cancel({revert:!0}):this.#r.cancelRetry()),this.scheduleGc()),this.#n.notify({type:"observerRemoved",query:this,observer:e}))}getObserversCount(){return this.observers.length}invalidate(){this.state.isInvalidated||this.#s({type:"invalidate"})}fetch(e,t){if(this.state.fetchStatus!=="idle"){if(this.state.data!==void 0&&t?.cancelRefetch)this.cancel({silent:!0});else if(this.#r)return this.#r.continueRetry(),this.#r.promise}if(e&&this.setOptions(e),!this.options.queryFn){const i=this.observers.find(c=>c.options.queryFn);i&&this.setOptions(i.options)}process.env.NODE_ENV!=="production"&&(Array.isArray(this.options.queryKey)||console.error("As of v4, queryKey needs to be an Array. If you are using a string like 'repoData', please change it to an Array, e.g. ['repoData']"));const r=new AbortController,n=i=>{Object.defineProperty(i,"signal",{enumerable:!0,get:()=>(this.#o=!0,r.signal)})},o=()=>{const i=_n(this.options,t),c={queryKey:this.queryKey,meta:this.meta};return n(c),this.#o=!1,this.options.persister?this.options.persister(i,c,this):i(c)},a={fetchOptions:t,options:this.options,queryKey:this.queryKey,state:this.state,fetchFn:o};n(a),this.options.behavior?.onFetch(a,this),this.#e=this.state,(this.state.fetchStatus==="idle"||this.state.fetchMeta!==a.fetchOptions?.meta)&&this.#s({type:"fetch",meta:a.fetchOptions?.meta});const l=i=>{Dt(i)&&i.silent||this.#s({type:"error",error:i}),Dt(i)||(this.#n.config.onError?.(i,this),this.#n.config.onSettled?.(this.state.data,i,this)),this.scheduleGc()};return this.#r=Mn({initialPromise:t?.initialPromise,fn:a.fetchFn,abort:r.abort.bind(r),onSuccess:i=>{if(i===void 0){process.env.NODE_ENV!=="production"&&console.error(`Query data cannot be undefined. Please make sure to return a value other than undefined from your query function. Affected query key: ${this.queryHash}`),l(new Error(`${this.queryHash} data is undefined`));return}try{this.setData(i)}catch(c){l(c);return}this.#n.config.onSuccess?.(i,this),this.#n.config.onSettled?.(i,this.state.error,this),this.scheduleGc()},onError:l,onFail:(i,c)=>{this.#s({type:"failed",failureCount:i,error:c})},onPause:()=>{this.#s({type:"pause"})},onContinue:()=>{this.#s({type:"continue"})},retry:a.options.retry,retryDelay:a.options.retryDelay,networkMode:a.options.networkMode,canRun:()=>!0}),this.#r.start()}#s(e){const t=r=>{switch(e.type){case"failed":return{...r,fetchFailureCount:e.failureCount,fetchFailureReason:e.error};case"pause":return{...r,fetchStatus:"paused"};case"continue":return{...r,fetchStatus:"fetching"};case"fetch":return{...r,...Dn(r.data,this.options),fetchMeta:e.meta??null};case"success":return{...r,data:e.data,dataUpdateCount:r.dataUpdateCount+1,dataUpdatedAt:e.dataUpdatedAt??Date.now(),error:null,isInvalidated:!1,status:"success",...!e.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};case"error":const n=e.error;return Dt(n)&&n.revert&&this.#e?{...this.#e,fetchStatus:"idle"}:{...r,error:n,errorUpdateCount:r.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:r.fetchFailureCount+1,fetchFailureReason:n,fetchStatus:"idle",status:"error"};case"invalidate":return{...r,isInvalidated:!0};case"setState":return{...r,...e.state}}};this.state=t(this.state),te.batch(()=>{this.observers.forEach(r=>{r.onQueryUpdate()}),this.#n.notify({query:this,type:"updated",action:e})})}};function Dn(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:An(t.networkMode)?"fetching":"paused",...e===void 0&&{error:null,status:"pending"}}}function Fo(e){const t=typeof e.initialData=="function"?e.initialData():e.initialData,r=t!==void 0,n=r?typeof e.initialDataUpdatedAt=="function"?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:r?n??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:r?"success":"pending",fetchStatus:"idle"}}var $o=class extends it{constructor(e={}){super(),this.config=e,this.#t=new Map}#t;build(e,t,r){const n=t.queryKey,o=t.queryHash??pr(n,t);let a=this.get(o);return a||(a=new Lo({cache:this,queryKey:n,queryHash:o,options:e.defaultQueryOptions(t),state:r,defaultOptions:e.getQueryDefaults(n)}),this.add(a)),a}add(e){this.#t.has(e.queryHash)||(this.#t.set(e.queryHash,e),this.notify({type:"added",query:e}))}remove(e){const t=this.#t.get(e.queryHash);t&&(e.destroy(),t===e&&this.#t.delete(e.queryHash),this.notify({type:"removed",query:e}))}clear(){te.batch(()=>{this.getAll().forEach(e=>{this.remove(e)})})}get(e){return this.#t.get(e)}getAll(){return[...this.#t.values()]}find(e){const t={exact:!0,...e};return this.getAll().find(r=>Vr(t,r))}findAll(e={}){const t=this.getAll();return Object.keys(e).length>0?t.filter(r=>Vr(e,r)):t}notify(e){te.batch(()=>{this.listeners.forEach(t=>{t(e)})})}onFocus(){te.batch(()=>{this.getAll().forEach(e=>{e.onFocus()})})}onOnline(){te.batch(()=>{this.getAll().forEach(e=>{e.onOnline()})})}},Bo=class extends In{#t;#e;#n;constructor(e){super(),this.mutationId=e.mutationId,this.#e=e.mutationCache,this.#t=[],this.state=e.state||zo(),this.setOptions(e.options),this.scheduleGc()}setOptions(e){this.options=e,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(e){this.#t.includes(e)||(this.#t.push(e),this.clearGcTimeout(),this.#e.notify({type:"observerAdded",mutation:this,observer:e}))}removeObserver(e){this.#t=this.#t.filter(t=>t!==e),this.scheduleGc(),this.#e.notify({type:"observerRemoved",mutation:this,observer:e})}optionalRemove(){this.#t.length||(this.state.status==="pending"?this.scheduleGc():this.#e.remove(this))}continue(){return this.#n?.continue()??this.execute(this.state.variables)}async execute(e){this.#n=Mn({fn:()=>this.options.mutationFn?this.options.mutationFn(e):Promise.reject(new Error("No mutationFn found")),onFail:(n,o)=>{this.#r({type:"failed",failureCount:n,error:o})},onPause:()=>{this.#r({type:"pause"})},onContinue:()=>{this.#r({type:"continue"})},retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>this.#e.canRun(this)});const t=this.state.status==="pending",r=!this.#n.canStart();try{if(!t){this.#r({type:"pending",variables:e,isPaused:r}),await this.#e.config.onMutate?.(e,this);const o=await this.options.onMutate?.(e);o!==this.state.context&&this.#r({type:"pending",context:o,variables:e,isPaused:r})}const n=await this.#n.start();return await this.#e.config.onSuccess?.(n,e,this.state.context,this),await this.options.onSuccess?.(n,e,this.state.context),await this.#e.config.onSettled?.(n,null,this.state.variables,this.state.context,this),await this.options.onSettled?.(n,null,e,this.state.context),this.#r({type:"success",data:n}),n}catch(n){try{throw await this.#e.config.onError?.(n,e,this.state.context,this),await this.options.onError?.(n,e,this.state.context),await this.#e.config.onSettled?.(void 0,n,this.state.variables,this.state.context,this),await this.options.onSettled?.(void 0,n,e,this.state.context),n}finally{this.#r({type:"error",error:n})}}finally{this.#e.runNext(this)}}#r(e){const t=r=>{switch(e.type){case"failed":return{...r,failureCount:e.failureCount,failureReason:e.error};case"pause":return{...r,isPaused:!0};case"continue":return{...r,isPaused:!1};case"pending":return{...r,context:e.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:e.isPaused,status:"pending",variables:e.variables,submittedAt:Date.now()};case"success":return{...r,data:e.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...r,data:void 0,error:e.error,failureCount:r.failureCount+1,failureReason:e.error,isPaused:!1,status:"error"}}};this.state=t(this.state),te.batch(()=>{this.#t.forEach(r=>{r.onMutationUpdate(e)}),this.#e.notify({mutation:this,type:"updated",action:e})})}};function zo(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0}}var Wo=class extends it{constructor(e={}){super(),this.config=e,this.#t=new Set,this.#e=new Map,this.#n=0}#t;#e;#n;build(e,t,r){const n=new Bo({mutationCache:this,mutationId:++this.#n,options:e.defaultMutationOptions(t),state:r});return this.add(n),n}add(e){this.#t.add(e);const t=ft(e);if(typeof t=="string"){const r=this.#e.get(t);r?r.push(e):this.#e.set(t,[e])}this.notify({type:"added",mutation:e})}remove(e){if(this.#t.delete(e)){const t=ft(e);if(typeof t=="string"){const r=this.#e.get(t);if(r)if(r.length>1){const n=r.indexOf(e);n!==-1&&r.splice(n,1)}else r[0]===e&&this.#e.delete(t)}}this.notify({type:"removed",mutation:e})}canRun(e){const t=ft(e);if(typeof t=="string"){const n=this.#e.get(t)?.find(o=>o.state.status==="pending");return!n||n===e}else return!0}runNext(e){const t=ft(e);return typeof t=="string"?this.#e.get(t)?.find(n=>n!==e&&n.state.isPaused)?.continue()??Promise.resolve():Promise.resolve()}clear(){te.batch(()=>{this.#t.forEach(e=>{this.notify({type:"removed",mutation:e})}),this.#t.clear(),this.#e.clear()})}getAll(){return Array.from(this.#t)}find(e){const t={exact:!0,...e};return this.getAll().find(r=>Ur(t,r))}findAll(e={}){return this.getAll().filter(t=>Ur(e,t))}notify(e){te.batch(()=>{this.listeners.forEach(t=>{t(e)})})}resumePausedMutations(){const e=this.getAll().filter(t=>t.state.isPaused);return te.batch(()=>Promise.all(e.map(t=>t.continue().catch(ae))))}};function ft(e){return e.options.scope?.id}function Qr(e){return{onFetch:(t,r)=>{const n=t.options,o=t.fetchOptions?.meta?.fetchMore?.direction,a=t.state.data?.pages||[],l=t.state.data?.pageParams||[];let i={pages:[],pageParams:[]},c=0;const u=async()=>{let d=!1;const f=v=>{Object.defineProperty(v,"signal",{enumerable:!0,get:()=>(t.signal.aborted?d=!0:t.signal.addEventListener("abort",()=>{d=!0}),t.signal)})},m=_n(t.options,t.fetchOptions),b=async(v,h,y)=>{if(d)return Promise.reject();if(h==null&&v.pages.length)return Promise.resolve(v);const g={queryKey:t.queryKey,pageParam:h,direction:y?"backward":"forward",meta:t.options.meta};f(g);const S=await m(g),{maxPages:k}=t.options,w=y?Ao:_o;return{pages:w(v.pages,S,k),pageParams:w(v.pageParams,h,k)}};if(o&&a.length){const v=o==="backward",h=v?Vo:Gr,y={pages:a,pageParams:l},g=h(n,y);i=await b(y,g,v)}else{const v=e??a.length;do{const h=c===0?l[0]??n.initialPageParam:Gr(n,i);if(c>0&&h==null)break;i=await b(i,h),c++}while(c<v)}return i};t.options.persister?t.fetchFn=()=>t.options.persister?.(u,{queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},r):t.fetchFn=u}}}function Gr(e,{pages:t,pageParams:r}){const n=t.length-1;return t.length>0?e.getNextPageParam(t[n],t,r[n],r):void 0}function Vo(e,{pages:t,pageParams:r}){return t.length>0?e.getPreviousPageParam?.(t[0],t,r[0],r):void 0}var Uo=class{#t;#e;#n;#r;#a;#o;#s;#i;constructor(e={}){this.#t=e.queryCache||new $o,this.#e=e.mutationCache||new Wo,this.#n=e.defaultOptions||{},this.#r=new Map,this.#a=new Map,this.#o=0}mount(){this.#o++,this.#o===1&&(this.#s=xr.subscribe(async e=>{e&&(await this.resumePausedMutations(),this.#t.onFocus())}),this.#i=St.subscribe(async e=>{e&&(await this.resumePausedMutations(),this.#t.onOnline())}))}unmount(){this.#o--,this.#o===0&&(this.#s?.(),this.#s=void 0,this.#i?.(),this.#i=void 0)}isFetching(e){return this.#t.findAll({...e,fetchStatus:"fetching"}).length}isMutating(e){return this.#e.findAll({...e,status:"pending"}).length}getQueryData(e){const t=this.defaultQueryOptions({queryKey:e});return this.#t.get(t.queryHash)?.state.data}ensureQueryData(e){const t=this.defaultQueryOptions(e),r=this.#t.build(this,t),n=r.state.data;return n===void 0?this.fetchQuery(e):(e.revalidateIfStale&&r.isStaleByTime(He(t.staleTime,r))&&this.prefetchQuery(t),Promise.resolve(n))}getQueriesData(e){return this.#t.findAll(e).map(({queryKey:t,state:r})=>{const n=r.data;return[t,n]})}setQueryData(e,t,r){const n=this.defaultQueryOptions({queryKey:e}),a=this.#t.get(n.queryHash)?.state.data,l=Ro(t,a);if(l!==void 0)return this.#t.build(this,n).setData(l,{...r,manual:!0})}setQueriesData(e,t,r){return te.batch(()=>this.#t.findAll(e).map(({queryKey:n})=>[n,this.setQueryData(n,t,r)]))}getQueryState(e){const t=this.defaultQueryOptions({queryKey:e});return this.#t.get(t.queryHash)?.state}removeQueries(e){const t=this.#t;te.batch(()=>{t.findAll(e).forEach(r=>{t.remove(r)})})}resetQueries(e,t){const r=this.#t,n={type:"active",...e};return te.batch(()=>(r.findAll(e).forEach(o=>{o.reset()}),this.refetchQueries(n,t)))}cancelQueries(e,t={}){const r={revert:!0,...t},n=te.batch(()=>this.#t.findAll(e).map(o=>o.cancel(r)));return Promise.all(n).then(ae).catch(ae)}invalidateQueries(e,t={}){return te.batch(()=>{if(this.#t.findAll(e).forEach(n=>{n.invalidate()}),e?.refetchType==="none")return Promise.resolve();const r={...e,type:e?.refetchType??e?.type??"active"};return this.refetchQueries(r,t)})}refetchQueries(e,t={}){const r={...t,cancelRefetch:t.cancelRefetch??!0},n=te.batch(()=>this.#t.findAll(e).filter(o=>!o.isDisabled()).map(o=>{let a=o.fetch(void 0,r);return r.throwOnError||(a=a.catch(ae)),o.state.fetchStatus==="paused"?Promise.resolve():a}));return Promise.all(n).then(ae)}fetchQuery(e){const t=this.defaultQueryOptions(e);t.retry===void 0&&(t.retry=!1);const r=this.#t.build(this,t);return r.isStaleByTime(He(t.staleTime,r))?r.fetch(t):Promise.resolve(r.state.data)}prefetchQuery(e){return this.fetchQuery(e).then(ae).catch(ae)}fetchInfiniteQuery(e){return e.behavior=Qr(e.pages),this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then(ae).catch(ae)}ensureInfiniteQueryData(e){return e.behavior=Qr(e.pages),this.ensureQueryData(e)}resumePausedMutations(){return St.isOnline()?this.#e.resumePausedMutations():Promise.resolve()}getQueryCache(){return this.#t}getMutationCache(){return this.#e}getDefaultOptions(){return this.#n}setDefaultOptions(e){this.#n=e}setQueryDefaults(e,t){this.#r.set(nt(e),{queryKey:e,defaultOptions:t})}getQueryDefaults(e){const t=[...this.#r.values()],r={};return t.forEach(n=>{st(e,n.queryKey)&&Object.assign(r,n.defaultOptions)}),r}setMutationDefaults(e,t){this.#a.set(nt(e),{mutationKey:e,defaultOptions:t})}getMutationDefaults(e){const t=[...this.#a.values()];let r={};return t.forEach(n=>{st(e,n.mutationKey)&&(r={...r,...n.defaultOptions})}),r}defaultQueryOptions(e){if(e._defaulted)return e;const t={...this.#n.queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:!0};return t.queryHash||(t.queryHash=pr(t.queryKey,t)),t.refetchOnReconnect===void 0&&(t.refetchOnReconnect=t.networkMode!=="always"),t.throwOnError===void 0&&(t.throwOnError=!!t.suspense),!t.networkMode&&t.persister&&(t.networkMode="offlineFirst"),t.queryFn===jt&&(t.enabled=!1),t}defaultMutationOptions(e){return e?._defaulted?e:{...this.#n.mutations,...e?.mutationKey&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:!0}}clear(){this.#t.clear(),this.#e.clear()}},Ho=class extends it{constructor(e,t){super(),this.options=t,this.#t=e,this.#i=null,this.#s=ar(),this.options.experimental_prefetchInRender||this.#s.reject(new Error("experimental_prefetchInRender feature flag is not enabled")),this.bindMethods(),this.setOptions(t)}#t;#e=void 0;#n=void 0;#r=void 0;#a;#o;#s;#i;#p;#f;#h;#c;#u;#l;#m=new Set;bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(this.#e.addObserver(this),Kr(this.#e,this.options)?this.#d():this.updateResult(),this.#b())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return ir(this.#e,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return ir(this.#e,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,this.#y(),this.#w(),this.#e.removeObserver(this)}setOptions(e,t){const r=this.options,n=this.#e;if(this.options=this.#t.defaultQueryOptions(e),this.options.enabled!==void 0&&typeof this.options.enabled!="boolean"&&typeof this.options.enabled!="function"&&typeof ce(this.options.enabled,this.#e)!="boolean")throw new Error("Expected enabled to be a boolean or a callback that returns a boolean");this.#C(),this.#e.setOptions(this.options),r._defaulted&&!nr(this.options,r)&&this.#t.getQueryCache().notify({type:"observerOptionsUpdated",query:this.#e,observer:this});const o=this.hasListeners();o&&Yr(this.#e,n,this.options,r)&&this.#d(),this.updateResult(t),o&&(this.#e!==n||ce(this.options.enabled,this.#e)!==ce(r.enabled,this.#e)||He(this.options.staleTime,this.#e)!==He(r.staleTime,this.#e))&&this.#x();const a=this.#v();o&&(this.#e!==n||ce(this.options.enabled,this.#e)!==ce(r.enabled,this.#e)||a!==this.#l)&&this.#g(a)}getOptimisticResult(e){const t=this.#t.getQueryCache().build(this.#t,e),r=this.createResult(t,e);return Qo(this,r)&&(this.#r=r,this.#o=this.options,this.#a=this.#e.state),r}getCurrentResult(){return this.#r}trackResult(e,t){const r={};return Object.keys(e).forEach(n=>{Object.defineProperty(r,n,{configurable:!1,enumerable:!0,get:()=>(this.trackProp(n),t?.(n),e[n])})}),r}trackProp(e){this.#m.add(e)}getCurrentQuery(){return this.#e}refetch({...e}={}){return this.fetch({...e})}fetchOptimistic(e){const t=this.#t.defaultQueryOptions(e),r=this.#t.getQueryCache().build(this.#t,t);return r.fetch().then(()=>this.createResult(r,t))}fetch(e){return this.#d({...e,cancelRefetch:e.cancelRefetch??!0}).then(()=>(this.updateResult(),this.#r))}#d(e){this.#C();let t=this.#e.fetch(this.options,e);return e?.throwOnError||(t=t.catch(ae)),t}#x(){this.#y();const e=He(this.options.staleTime,this.#e);if(Me||this.#r.isStale||!tr(e))return;const r=On(this.#r.dataUpdatedAt,e)+1;this.#c=setTimeout(()=>{this.#r.isStale||this.updateResult()},r)}#v(){return(typeof this.options.refetchInterval=="function"?this.options.refetchInterval(this.#e):this.options.refetchInterval)??!1}#g(e){this.#w(),this.#l=e,!(Me||ce(this.options.enabled,this.#e)===!1||!tr(this.#l)||this.#l===0)&&(this.#u=setInterval(()=>{(this.options.refetchIntervalInBackground||xr.isFocused())&&this.#d()},this.#l))}#b(){this.#x(),this.#g(this.#v())}#y(){this.#c&&(clearTimeout(this.#c),this.#c=void 0)}#w(){this.#u&&(clearInterval(this.#u),this.#u=void 0)}createResult(e,t){const r=this.#e,n=this.options,o=this.#r,a=this.#a,l=this.#o,c=e!==r?e.state:this.#n,{state:u}=e;let d={...u},f=!1,m;if(t._optimisticResults){const C=this.hasListeners(),j=!C&&Kr(e,t),O=C&&Yr(e,r,t,n);(j||O)&&(d={...d,...Dn(u.data,e.options)}),t._optimisticResults==="isRestoring"&&(d.fetchStatus="idle")}let{error:b,errorUpdatedAt:v,status:h}=d;if(t.select&&d.data!==void 0)if(o&&d.data===a?.data&&t.select===this.#p)m=this.#f;else try{this.#p=t.select,m=t.select(d.data),m=or(o?.data,m,t),this.#f=m,this.#i=null}catch(C){this.#i=C}else m=d.data;if(t.placeholderData!==void 0&&m===void 0&&h==="pending"){let C;if(o?.isPlaceholderData&&t.placeholderData===l?.placeholderData)C=o.data;else if(C=typeof t.placeholderData=="function"?t.placeholderData(this.#h?.state.data,this.#h):t.placeholderData,t.select&&C!==void 0)try{C=t.select(C),this.#i=null}catch(j){this.#i=j}C!==void 0&&(h="success",m=or(o?.data,C,t),f=!0)}this.#i&&(b=this.#i,m=this.#f,v=Date.now(),h="error");const y=d.fetchStatus==="fetching",g=h==="pending",S=h==="error",k=g&&y,w=m!==void 0,A={status:h,fetchStatus:d.fetchStatus,isPending:g,isSuccess:h==="success",isError:S,isInitialLoading:k,isLoading:k,data:m,dataUpdatedAt:d.dataUpdatedAt,error:b,errorUpdatedAt:v,failureCount:d.fetchFailureCount,failureReason:d.fetchFailureReason,errorUpdateCount:d.errorUpdateCount,isFetched:d.dataUpdateCount>0||d.errorUpdateCount>0,isFetchedAfterMount:d.dataUpdateCount>c.dataUpdateCount||d.errorUpdateCount>c.errorUpdateCount,isFetching:y,isRefetching:y&&!g,isLoadingError:S&&!w,isPaused:d.fetchStatus==="paused",isPlaceholderData:f,isRefetchError:S&&w,isStale:vr(e,t),refetch:this.refetch,promise:this.#s};if(this.options.experimental_prefetchInRender){const C=L=>{A.status==="error"?L.reject(A.error):A.data!==void 0&&L.resolve(A.data)},j=()=>{const L=this.#s=A.promise=ar();C(L)},O=this.#s;switch(O.status){case"pending":e.queryHash===r.queryHash&&C(O);break;case"fulfilled":(A.status==="error"||A.data!==O.value)&&j();break;case"rejected":(A.status!=="error"||A.error!==O.reason)&&j();break}}return A}updateResult(e){const t=this.#r,r=this.createResult(this.#e,this.options);if(this.#a=this.#e.state,this.#o=this.options,this.#a.data!==void 0&&(this.#h=this.#e),nr(r,t))return;this.#r=r;const n={},o=()=>{if(!t)return!0;const{notifyOnChangeProps:a}=this.options,l=typeof a=="function"?a():a;if(l==="all"||!l&&!this.#m.size)return!0;const i=new Set(l??this.#m);return this.options.throwOnError&&i.add("error"),Object.keys(this.#r).some(c=>{const u=c;return this.#r[u]!==t[u]&&i.has(u)})};e?.listeners!==!1&&o()&&(n.listeners=!0),this.#k({...n,...e})}#C(){const e=this.#t.getQueryCache().build(this.#t,this.options);if(e===this.#e)return;const t=this.#e;this.#e=e,this.#n=e.state,this.hasListeners()&&(t?.removeObserver(this),e.addObserver(this))}onQueryUpdate(){this.updateResult(),this.hasListeners()&&this.#b()}#k(e){te.batch(()=>{e.listeners&&this.listeners.forEach(t=>{t(this.#r)}),this.#t.getQueryCache().notify({query:this.#e,type:"observerResultsUpdated"})})}};function qo(e,t){return ce(t.enabled,e)!==!1&&e.state.data===void 0&&!(e.state.status==="error"&&t.retryOnMount===!1)}function Kr(e,t){return qo(e,t)||e.state.data!==void 0&&ir(e,t,t.refetchOnMount)}function ir(e,t,r){if(ce(t.enabled,e)!==!1){const n=typeof r=="function"?r(e):r;return n==="always"||n!==!1&&vr(e,t)}return!1}function Yr(e,t,r,n){return(e!==t||ce(n.enabled,e)===!1)&&(!r.suspense||e.state.status!=="error")&&vr(e,r)}function vr(e,t){return ce(t.enabled,e)!==!1&&e.isStaleByTime(He(t.staleTime,e))}function Qo(e,t){return!nr(e.getCurrentResult(),t)}var Ln=x.createContext(void 0),Go=e=>{const t=x.useContext(Ln);if(!t)throw new Error("No QueryClient set, use QueryClientProvider to set one");return t},Ko=({client:e,children:t})=>(x.useEffect(()=>(e.mount(),()=>{e.unmount()}),[e]),s.jsx(Ln.Provider,{value:e,children:t})),Fn=x.createContext(!1),Yo=()=>x.useContext(Fn);Fn.Provider;function Zo(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}var Xo=x.createContext(Zo()),Jo=()=>x.useContext(Xo);function ea(e,t){return typeof e=="function"?e(...t):!!e}function Zr(){}var ta=(e,t)=>{(e.suspense||e.throwOnError||e.experimental_prefetchInRender)&&(t.isReset()||(e.retryOnMount=!1))},ra=e=>{x.useEffect(()=>{e.clearReset()},[e])},na=({result:e,errorResetBoundary:t,throwOnError:r,query:n})=>e.isError&&!t.isReset()&&!e.isFetching&&n&&ea(r,[e.error,n]),sa=e=>{const t=e.staleTime;e.suspense&&(e.staleTime=typeof t=="function"?(...r)=>Math.max(t(...r),1e3):Math.max(t??1e3,1e3),typeof e.gcTime=="number"&&(e.gcTime=Math.max(e.gcTime,1e3)))},oa=(e,t)=>e.isLoading&&e.isFetching&&!t,aa=(e,t)=>e?.suspense&&t.isPending,Xr=(e,t,r)=>t.fetchOptimistic(e).catch(()=>{r.clearReset()});function ia(e,t,r){if(process.env.NODE_ENV!=="production"&&(typeof e!="object"||Array.isArray(e)))throw new Error('Bad argument type. Starting with v5, only the "Object" form is allowed when calling query related functions. Please use the error stack to find the culprit call. More info here: https://tanstack.com/query/latest/docs/react/guides/migrating-to-v5#supports-a-single-signature-one-object');const n=Go(),o=Yo(),a=Jo(),l=n.defaultQueryOptions(e);n.getDefaultOptions().queries?._experimental_beforeQuery?.(l),l._optimisticResults=o?"isRestoring":"optimistic",sa(l),ta(l,a),ra(a);const i=!n.getQueryCache().get(l.queryHash),[c]=x.useState(()=>new t(n,l)),u=c.getOptimisticResult(l),d=!o&&e.subscribed!==!1;if(x.useSyncExternalStore(x.useCallback(f=>{const m=d?c.subscribe(te.batchCalls(f)):Zr;return c.updateResult(),m},[c,d]),()=>c.getCurrentResult(),()=>c.getCurrentResult()),x.useEffect(()=>{c.setOptions(l,{listeners:!1})},[l,c]),aa(l,u))throw Xr(l,c,a);if(na({result:u,errorResetBoundary:a,throwOnError:l.throwOnError,query:n.getQueryCache().get(l.queryHash)}))throw u.error;return n.getDefaultOptions().queries?._experimental_afterQuery?.(l,u),l.experimental_prefetchInRender&&!Me&&oa(u,o)&&(i?Xr(l,c,a):n.getQueryCache().get(l.queryHash)?.promise)?.catch(Zr).finally(()=>{c.updateResult()}),l.notifyOnChangeProps?u:c.trackResult(u)}function Qe(e,t){return ia(e,Ho)}const la={widget:"1rem",input:"0.75rem",button:"0.5rem"},ca={primary:"#ffffff",secondary:"hsla(0, 0%, 100%, 0.48)"},ua={background:"#343b47",radius:"0.75rem"},oe={colors:{primary:"#ed6300",background:"hsla(0, 0%, 100%, 0.04)",surface:"hsla(0, 0%, 0%, 0.2)",text:ca,error:"#ff4d4f",success:"#52c41a"},radius:la,overlay:ua,fontFamily:"'Inter', sans-serif"},da=p.createContext(null);function fa({children:e,theme:t}){const r=p.useMemo(()=>t?{colors:{primary:t.colors?.primary??oe.colors.primary,background:t.colors?.background??oe.colors.background,surface:t.colors?.surface??oe.colors.surface,text:{primary:t.colors?.text?.primary??oe.colors.text.primary,secondary:t.colors?.text?.secondary??oe.colors.text.secondary},error:t.colors?.error??oe.colors.error,success:t.colors?.success??oe.colors.success},radius:{widget:t.radius?.widget??oe.radius.widget,input:t.radius?.input??oe.radius.input,button:t.radius?.button??oe.radius.button},overlay:{background:t.overlay?.background??oe.overlay.background,radius:t.overlay?.radius??oe.overlay.radius},fontFamily:t.fontFamily??oe.fontFamily}:oe,[t]),n=p.useMemo(()=>({"--optimex-primary":r.colors.primary,"--optimex-background":r.colors.background,"--optimex-surface":r.colors.surface,"--optimex-text":r.colors.text.primary,"--optimex-text-secondary":r.colors.text.secondary,"--optimex-error":r.colors.error,"--optimex-success":r.colors.success,"--optimex-radius-widget":r.radius.widget,"--optimex-radius-input":r.radius.input,"--optimex-radius-button":r.radius.button,"--optimex-overlay-background":r.overlay.background,"--optimex-overlay-radius":r.overlay.radius,"--optimex-font-family":r.fontFamily}),[r]);return s.jsx(da.Provider,{value:{theme:r},children:s.jsx("div",{style:n,className:"w-full",children:e})})}const $n=p.createContext(null);function ha({children:e,externalWalletClient:t,onRequestWallet:r}){const n=p.useMemo(()=>{const o=t?.evm?.address??null,a=t?.evm?.chain?.id??null,l=t?.btc?.address??null,i=t?.btc?.publicKey??null,c=t?.solana?.address??null,u=!!o,d=!!l,f=!!c;return{mode:"external",isExternalWallet:!0,isConnected:u||d||f,evmAddress:o,evmChainId:a,isEvmConnected:u,btcAddress:l,btcPublicKey:i,isBtcConnected:d,solanaAddress:c,isSolanaConnected:f,externalWalletClient:t,onRequestWallet:r,isConnecting:!1}},[t,r]);return s.jsx($n.Provider,{value:n,children:e})}class Lt extends Error{status;code;constructor(t,r,n){super(r),this.name="ApiError",this.status=t,this.code=n}}class Bn{baseUrl;headers;constructor(t){this.baseUrl=t.replace(/\/$/,""),this.headers={"Content-Type":"application/json"}}async request(t,r,n){const o=`${this.baseUrl}${r}`;try{const a=await fetch(o,{method:t,headers:this.headers,body:n?JSON.stringify(n):void 0});if(!a.ok){const i=await a.json().catch(()=>({}));throw new Lt(a.status,i.message||`Request failed with status ${a.status}`,i.code)}return(await a.json()).data}catch(a){throw a instanceof Lt?a:new Lt(0,a instanceof Error?a.message:"Network error","NETWORK_ERROR")}}async getTokens(){return this.request("GET","/v2/tokens")}async createQuote(t){return this.request("POST","/v2/trades/quote",t)}async submitTransaction(t,r){return this.request("POST","/v2/trades/submit-tx",{trade_id:t,tx_id:r})}async getTrade(t){return this.request("GET",`/v2/trades/${t}`)}async getTokenPrice(t){return this.request("GET",`/v2/tokens/${t}`)}async listTrades(t={}){const r=new URLSearchParams;t.limit&&r.set("limit",String(t.limit)),t.page&&r.set("page",String(t.page)),t.state&&r.set("state",t.state),t.from_user_address?.length&&t.from_user_address.forEach(a=>r.append("from_user_address",a)),t.to_user_address?.length&&t.to_user_address.forEach(a=>r.append("to_user_address",a));const n=r.toString(),o=n?`/v2/trades?${n}`:"/v2/trades";return this.request("GET",o)}}let Ue=null;function Ge(e){if(!Ue&&e&&(Ue=new Bn(e)),!Ue)throw new Error("API not initialized. Please provide baseUrl.");return Ue}function ma(e){return Ue=new Bn(e),Ue}const pa=["tokens"];function xa(e){return Qe({queryKey:pa,queryFn:async()=>Ge(e).getTokens(),staleTime:300*1e3,gcTime:1800*1e3,retry:3,retryDelay:t=>Math.min(1e3*2**t,3e4)})}const va=15e3,ga=1e4,K={EVM:"EVM",BTC:"BTC",SOLANA:"Solana"};function ba(e,t=4){return e?e.length<=t*2+3?e:`${e.slice(0,t+2)}...${e.slice(-t)}`:""}function ya(e,t,r=6){if(!e)return"0";let n;typeof e=="bigint"?n=e:typeof e=="string"?n=BigInt(e):n=BigInt(Math.floor(e));const o=BigInt(10**t),a=n/o,l=n%o;if(l===0n)return a.toString();const c=l.toString().padStart(t,"0").slice(0,r).replace(/0+$/,"");return c?`${a}.${c}`:a.toString()}function zn(e,t){if(!e||e==="0")return 0n;const[r,n=""]=e.split("."),o=n.slice(0,t).padEnd(t,"0"),a=r+o;return BigInt(a)}function Ne(e,t=18,r=6){if(!e)return"0";const n=String(e);if(n.includes(".")||!Number.isInteger(Number(n))){const o=parseFloat(n);return isNaN(o)?"0":o.toFixed(r).replace(/\.?0+$/,"")}return ya(n,t,r)}function wa(e){return/^0x[a-fA-F0-9]{40}$/.test(e)}function Ca(e){return/^[13][a-km-zA-HJ-NP-Z1-9]{25,34}$|^(bc1)[a-z0-9]{39,59}$/.test(e)}function ka(e){return/^[mn2][a-km-zA-HJ-NP-Z1-9]{25,34}$|^(tb1)[a-z0-9]{39,59}$/.test(e)}function ja(e){return/^[1-9A-HJ-NP-Za-km-z]{32,44}$/.test(e)}function gr(e,t,r){const n=e.trim();if(!n)return{isValid:!1,error:"Address is required"};switch(t){case K.EVM:return wa(n)?{isValid:!0}:{isValid:!1,error:`Invalid ${r} wallet address`};case K.BTC:if(r==="bitcoin_testnet"){if(!ka(n))return{isValid:!1,error:`Invalid ${r} wallet address`}}else if(!Ca(n))return{isValid:!1,error:`Invalid ${r} wallet address`};return{isValid:!0};case K.SOLANA:return ja(n)?{isValid:!0}:{isValid:!1,error:`Invalid ${r} wallet address`};default:return{isValid:!1,error:`Unsupported network type: ${t}`}}}const Sa=e=>["quote",e];function Ea(e,{from_token:t,to_token:r,amount:n,from_user_address:o,to_user_address:a,user_refund_pubkey:l,slippage:i="100",affiliate_fee_bps:c,affiliate_info:u,trade_timeout:d,script_timeout:f,enabled:m=!0,onQuote:b}){const v=r&&a?gr(a,r.network_type,r.network_id).isValid:!1,h=t&&r&&n&&parseFloat(n)>0&&o&&a&&l&&v;return Qe({queryKey:Sa({from_token:t,to_token:r,amount:n,from_user_address:o,to_user_address:a,user_refund_pubkey:l,slippage:i}),queryFn:async()=>{const y=Ge(e),g=zn(n,t.token_decimals).toString(),S=await y.createQuote({from_token_id:t.token_id,to_token_id:r.token_id,amount_in:g,slippage:i,from_user_address:o,to_user_address:a,user_refund_pubkey:l,affiliate_fee_bps:c,affiliate_info:u,trade_timeout:d,script_timeout:f});return b?.({quote:S,from_token:t,to_token:r,amount_in:n}),S},enabled:m&&!!h,staleTime:ga,refetchInterval:va,retry:2,retryDelay:1e3})}const Wn=p.createContext(null);function Na({children:e,value:t}){return s.jsx(Wn.Provider,{value:t,children:e})}function lt(){const e=p.useContext(Wn);if(!e)throw new Error("useWidgetConfig must be used within SwapWidget");return e}function Ta({className:e="h-6 w-6"}){return s.jsxs("svg",{className:e,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[s.jsx("rect",{width:"24",height:"24",rx:"6",fill:"#D0D0D8"}),s.jsx("rect",{x:"4",y:"4",width:"6.85714",height:"6.85714",rx:"3.42857",fill:"#FFD49F"}),s.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M8.98943 6.98062C9.06078 6.50027 8.69769 6.24205 8.20122 6.06979L8.36227 5.4191L7.96906 5.32039L7.81227 5.95393C7.7089 5.92798 7.60273 5.9035 7.49723 5.87925L7.65514 5.24153L7.26216 5.14282L7.101 5.79329C7.01544 5.77366 6.93144 5.75426 6.84991 5.73384L6.85036 5.73181L6.30809 5.59542L6.20348 6.01846C6.20348 6.01846 6.49523 6.08581 6.48907 6.08998C6.64832 6.13003 6.6771 6.23618 6.67229 6.32034L6.48884 7.06162C6.49982 7.06444 6.51404 7.0685 6.52972 7.07482L6.5164 7.07147L6.48817 7.06444L6.23103 8.10286C6.21155 8.1516 6.16216 8.2247 6.05084 8.19695C6.05476 8.2027 5.76503 8.12509 5.76503 8.12509L5.56982 8.57847L6.08152 8.70696C6.13867 8.72139 6.19513 8.73622 6.251 8.7509C6.2882 8.76067 6.32514 8.77037 6.36184 8.77984L6.19912 9.43798L6.59188 9.53669L6.75304 8.88554C6.86033 8.91487 6.96448 8.94195 7.06639 8.96744L6.9058 9.61554L7.299 9.71425L7.46173 9.05735C8.13224 9.18517 8.63643 9.13361 8.84866 8.52274C9.01967 8.03089 8.84015 7.74717 8.48737 7.56216C8.74428 7.50248 8.93781 7.33225 8.98943 6.98062ZM8.09134 8.24968C7.97986 8.70094 7.27864 8.51438 6.9578 8.42902L6.95779 8.42901C6.92893 8.42133 6.90314 8.41447 6.88114 8.40897L7.09706 7.53706C7.12385 7.54379 7.15659 7.55119 7.19367 7.55957C7.52551 7.63458 8.20558 7.78829 8.09134 8.24968ZM7.26037 7.15491C7.52787 7.22682 8.11136 7.38367 8.213 6.97354C8.31679 6.55403 7.74968 6.42757 7.47272 6.36581C7.44156 6.35886 7.41408 6.35273 7.39164 6.3471L7.19587 7.1379C7.21436 7.14254 7.23606 7.14838 7.26037 7.15491Z",fill:"#F7931A"}),s.jsx("rect",{x:"12.8572",y:"4",width:"6.85714",height:"6.85714",rx:"3.42857",fill:"white"}),s.jsx("path",{d:"M14.8567 7.47096L16.2848 8.30034V6.83321V5.14284L14.8567 7.47096Z",fill:"#898989"}),s.jsx("path",{d:"M16.2837 5.14284V6.8332V8.30033L17.7118 7.47096L16.2837 5.14284Z",fill:"#323232"}),s.jsx("path",{d:"M16.2837 6.83343L17.7114 7.47098L16.2837 8.30014V6.83343Z",fill:"#141414"}),s.jsx("path",{d:"M16.2848 6.83322L16.2853 6.83336V8.29993L16.2848 8.30035L14.8567 7.47097L16.2848 6.83322Z",fill:"#373737"}),s.jsx("path",{d:"M14.8567 7.73708L16.2848 9.71431V8.56604L14.8567 7.73708Z",fill:"#898989"}),s.jsx("path",{d:"M16.2837 8.56604V9.71431L17.7127 7.73708L16.2837 8.56604Z",fill:"#323232"}),s.jsx("rect",{x:"4",y:"12.8571",width:"6.85714",height:"6.85714",rx:"3.42857",fill:"#DCFFFB"}),s.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M8.68368 15.456C8.66445 15.4645 8.64369 15.469 8.6227 15.469H5.49249C5.47756 15.469 5.46296 15.4645 5.45047 15.4563C5.43798 15.448 5.42815 15.4362 5.42218 15.4223C5.41621 15.4084 5.41436 15.3931 5.41685 15.3782C5.41935 15.3633 5.42608 15.3494 5.43622 15.3383L6.0958 14.6209C6.11009 14.6053 6.12738 14.5929 6.14662 14.5844C6.16585 14.5758 6.18661 14.5714 6.2076 14.5714H9.33781C9.35286 14.5711 9.3677 14.5753 9.3804 14.5835C9.39311 14.5917 9.40317 14.6035 9.40925 14.6175C9.41536 14.6315 9.41722 14.6469 9.41465 14.662C9.41208 14.677 9.40518 14.691 9.39482 14.7021L8.7345 15.4195C8.72021 15.4351 8.70292 15.4475 8.68368 15.456ZM8.73471 15.9844C8.72037 15.9689 8.70306 15.9565 8.68384 15.948C8.66462 15.9395 8.64389 15.9351 8.62291 15.935H5.4927C5.47777 15.935 5.46317 15.9394 5.45068 15.9477C5.43819 15.956 5.42836 15.9678 5.42239 15.9817C5.41642 15.9955 5.41457 16.0108 5.41706 16.0258C5.41955 16.0407 5.42629 16.0545 5.43643 16.0656L6.09601 16.7835C6.11035 16.799 6.12766 16.8114 6.14688 16.8199C6.1661 16.8284 6.18683 16.8328 6.20781 16.8329H9.33802C9.35292 16.8328 9.36746 16.8284 9.3799 16.82C9.39235 16.8117 9.40211 16.7999 9.40804 16.7861C9.41396 16.7722 9.41579 16.7569 9.41326 16.742C9.41076 16.7272 9.40405 16.7133 9.39392 16.7023L8.73471 15.9844ZM9.39503 17.4295L8.73471 18.147C8.72042 18.1626 8.70313 18.175 8.68389 18.1835C8.66466 18.192 8.6439 18.1964 8.62291 18.1965H5.4927C5.47777 18.1964 5.46317 18.192 5.45068 18.1837C5.43819 18.1754 5.42836 18.1636 5.42239 18.1498C5.41642 18.1359 5.41457 18.1206 5.41706 18.1057C5.41955 18.0908 5.42629 18.0769 5.43643 18.0658L6.09601 17.3484C6.1103 17.3328 6.12759 17.3203 6.14683 17.3118C6.16606 17.3033 6.18682 17.2989 6.20781 17.2989H9.33802C9.35307 17.2986 9.3679 17.3028 9.38061 17.311C9.39332 17.3192 9.40338 17.331 9.40945 17.345C9.41557 17.3589 9.41743 17.3744 9.41486 17.3895C9.41229 17.4045 9.40539 17.4185 9.39503 17.4295Z",fill:"url(#paint0_linear_all_networks)"}),s.jsx("rect",{x:"12.8572",y:"12.8571",width:"6.85714",height:"6.85714",rx:"3.42857",fill:"#999CB3"}),s.jsx("path",{d:"M16.0979 17.4286V15.1429H16.473V17.4286H16.0979ZM15.1426 16.4692V16.097H17.4283V16.4692H15.1426Z",fill:"#2D3153"}),s.jsx("defs",{children:s.jsxs("linearGradient",{id:"paint0_linear_all_networks",x1:"7.82209",y1:"19.7701",x2:"10.7176",y2:"15.7425",gradientUnits:"userSpaceOnUse",children:[s.jsx("stop",{offset:"0.08",stopColor:"#9945FF"}),s.jsx("stop",{offset:"0.3",stopColor:"#8752F3"}),s.jsx("stop",{offset:"0.5",stopColor:"#5497D5"}),s.jsx("stop",{offset:"0.6",stopColor:"#43B4CA"}),s.jsx("stop",{offset:"0.72",stopColor:"#28E0B9"}),s.jsx("stop",{offset:"0.97",stopColor:"#19FB9B"})]})})]})}function Ra(e){return s.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",...e,children:s.jsx("path",{d:"M20 12l-1.41-1.41L13 16.17V4h-2v12.17l-5.58-5.59L4 12l8 8 8-8z"})})}function br({className:e="h-5 w-5"}){return s.jsx("svg",{className:e,fill:"currentColor",viewBox:"0 0 20 20",children:s.jsx("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z",clipRule:"evenodd"})})}function Vn({className:e="h-4 w-4"}){return s.jsx("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 9l-7 7-7-7"})})}function Un({className:e="h-5 w-5"}){return s.jsxs("svg",{className:e,fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,children:[s.jsx("circle",{cx:"12",cy:"12",r:"10",strokeOpacity:"0.25"}),s.jsx("path",{strokeLinecap:"round",d:"M12 2a10 10 0 019.17 6"})]})}function Oa({className:e="h-5 w-5"}){return s.jsx("svg",{className:e,fill:"currentColor",viewBox:"0 0 20 20",children:s.jsx("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z",clipRule:"evenodd"})})}function Ie({className:e="h-5 w-5"}){return s.jsx("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})}function _a(e){return s.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",...e,children:[s.jsx("rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2"}),s.jsx("path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"})]})}function Aa(e){return s.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor",...e,children:s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 6v6h4.5m4.5 0a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"})})}function Pa({className:e="h-3.5 w-3.5"}){return s.jsx("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M17 16l4-4m0 0l-4-4m4 4H7m6 4v1a3 3 0 01-3 3H6a3 3 0 01-3-3V7a3 3 0 013-3h4a3 3 0 013 3v1"})})}function Ma(e){return s.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 29 20",fill:"currentColor",...e,children:s.jsx("path",{d:"M18.1123 4.25181C17.9463 3.49057 17.537 2.8272 16.9727 2.31607C15.4792 0.978457 13.189 1.03283 11.7619 2.4357C11.2751 2.91419 10.9321 3.51232 10.7662 4.18656C10.6002 4.84993 10.6555 5.64381 10.4564 6.50293C10.1798 7.75354 9.53813 8.90629 8.6088 9.81978C7.6131 10.7985 6.34081 11.451 4.95788 11.6903C4.19451 11.8208 3.3205 11.7773 2.57925 12.0165C2.00396 12.2014 1.48398 12.5276 1.07463 12.9409C-0.374675 14.3981 -0.352546 16.7254 1.10782 18.1609C2.535 19.5637 4.84725 19.6181 6.32974 18.2696C6.72802 17.9107 7.04886 17.4757 7.25907 16.9755C7.67947 16.0076 7.52459 15.5944 7.65735 14.6483C7.73479 14.0936 7.87862 13.5608 8.08882 13.0388C8.31009 12.4841 8.3986 12.3319 8.70837 11.8643C9.29473 10.9943 10.0692 10.2548 10.9874 9.73278C12.0053 9.14554 13.178 8.81929 14.4392 8.81929C16.32 8.81929 18.0237 9.56966 19.2628 10.7768C20.2586 11.7446 20.9445 13.0061 21.1879 14.4199C21.3096 15.0941 21.2432 15.8227 21.4202 16.4861C21.5972 17.1386 21.9402 17.715 22.4049 18.1826C23.8763 19.629 26.266 19.629 27.7485 18.1826C29.1646 16.7906 29.231 14.5395 27.8923 13.0823C27.4498 12.6038 26.8855 12.234 26.2549 12.0274C25.4252 11.7664 25.0379 11.8643 24.1971 11.7555C22.6593 11.5598 21.2875 10.8638 20.2475 9.84153C19.1854 8.79754 18.4663 7.40554 18.2893 5.8613C18.1897 5.19793 18.2561 4.87168 18.1123 4.25181ZM16.9617 11.0486C15.5013 9.61316 13.1448 9.61316 11.6844 11.0486C10.2241 12.4841 10.2241 14.8005 11.6844 16.236C13.1448 17.6715 15.5013 17.6715 16.9617 16.236C18.422 14.8005 18.422 12.4841 16.9617 11.0486ZM26.0668 3.13169C24.6065 1.6962 22.25 1.6962 20.7896 3.13169C19.3292 4.56719 19.3292 6.88355 20.7896 8.31904C22.25 9.75453 24.6065 9.75453 26.0668 8.31904C27.5272 6.88355 27.5272 4.56719 26.0668 3.13169ZM7.95606 3.17519C6.49569 1.7397 4.13919 1.7397 2.67882 3.17519C1.21845 4.61069 1.21845 6.92705 2.67882 8.36254C4.13919 9.79803 6.49569 9.79803 7.95606 8.36254C9.41643 6.92705 9.41643 4.59981 7.95606 3.17519Z"})})}function Ia(e){return s.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 124 22",...e,children:s.jsx("path",{d:"M41.39 4.241c3.385 0 6.162 2.73 6.162 6.058s-2.777 6.003-6.162 6.003h-.62c-3.385 0-6.162-2.676-6.162-6.003S37.385 4.24 40.77 4.24zm-.3 10.745c2.877 0 4.825-2.317 4.825-4.644.055-2.37-1.903-4.796-4.824-4.796-2.976 0-4.879 2.425-4.824 4.796-.01 2.316 1.892 4.644 4.824 4.644m21.353-4.698c0 3.327-2.268 5.992-5.233 5.992h-.62c-2.422 0-3.905-.805-4.978-2.665V22H50.02V4.241h1.593V6.96c.963-1.925 2.666-2.719 4.979-2.719h.62c2.964 0 5.232 2.719 5.232 6.047m-1.703 0c0-2.317-1.649-4.644-4.559-4.644-2.312 0-4.259 1.925-4.259 4.23v.816c0 2.316 1.936 4.187 4.304 4.187 2.832 0 4.514-2.273 4.514-4.59m8.275 6.003c-.354 0-.72-.055-1.073-.196-.874-.305-1.593-.86-2.058-1.61a5 5 0 0 1-.465-1.109c-.1-.402-.155-.707-.155-1.11V5.765h-1.382v-1.36h1.382V.772h1.649v3.632h3.44v1.36h-3.44v6.144c0 1.762.774 2.828 2.722 2.828h1.438v1.566h-2.058zm6.018-15.28c0 .555-.409 1.012-.973 1.012A1.025 1.025 0 0 1 73.03 1.01C73.031.457 73.496 0 74.06 0s.973.457.973 1.011m-1.792 3.23h1.593v12.06h-1.593zm14.283 2.621c.819-1.718 2.511-2.62 4.47-2.62 3.075 0 4.47 2.729 4.47 5.502v6.558H94.87V9.396c0-5.655-6.881-4.698-6.881.196v6.71h-1.594V9.396c0-5.655-6.826-4.698-6.826.196v6.71h-1.637V4.242h1.593v2.065c1.637-2.925 6.716-2.773 7.999.555m17.436 8.124c1.847 0 3.695-1.164 4.304-2.73h1.593c-.819 2.316-2.877 4.035-5.543 4.035h-.664c-3.385 0-5.897-2.676-5.897-6.003s2.512-6.058 5.897-6.058h.664c3.341 0 5.897 2.73 5.897 6.058 0 .195 0 .402-.056.609H100.38c.121 2.273 2.268 4.089 4.58 4.089m4.624-5.296c-.099-2.273-2.257-4.133-4.613-4.133-2.312 0-4.47 1.86-4.569 4.133zM124 4.24l-5.133 6.058L124 16.302h-2.058l-4.104-4.84-4.105 4.84h-2.002l5.133-6.003-5.133-6.058h2.002l4.105 4.84 4.104-4.84zm-105.888-.49a3.67 3.67 0 0 0-1.14-1.935 3.817 3.817 0 0 0-5.21.12 3.67 3.67 0 0 0-.996 1.75c-.166.664-.11 1.458-.31 2.317A6.7 6.7 0 0 1 8.61 9.32a6.88 6.88 0 0 1-3.651 1.87c-.763.13-1.638.087-2.379.327a3.75 3.75 0 0 0-1.504.924 3.667 3.667 0 0 0 .033 5.22c1.427 1.403 3.74 1.457 5.222.109.398-.36.719-.794.93-1.294.42-.968.265-1.382.397-2.328a6.8 6.8 0 0 1 .432-1.61c.221-.554.31-.706.62-1.174a6.862 6.862 0 0 1 5.73-3.045c1.881 0 3.585.75 4.824 1.958a6.64 6.64 0 0 1 1.925 3.643c.122.674.055 1.403.232 2.066.177.653.52 1.229.985 1.697 1.471 1.446 3.861 1.446 5.343 0a3.666 3.666 0 0 0 .144-5.1 3.9 3.9 0 0 0-1.637-1.056c-.83-.26-1.217-.163-2.058-.271a6.86 6.86 0 0 1-3.95-1.914 6.65 6.65 0 0 1-1.958-3.98c-.1-.664-.033-.99-.177-1.61m-1.15 6.798a3.77 3.77 0 0 0-5.278 0 3.62 3.62 0 0 0 0 5.187 3.77 3.77 0 0 0 5.278 0 3.62 3.62 0 0 0 0-5.187m9.105-7.917a3.77 3.77 0 0 0-5.277 0 3.62 3.62 0 0 0 0 5.187 3.77 3.77 0 0 0 5.277 0 3.62 3.62 0 0 0 0-5.187m-18.11.043a3.77 3.77 0 0 0-5.278 0 3.62 3.62 0 0 0 0 5.188 3.77 3.77 0 0 0 5.277 0 3.62 3.62 0 0 0 0-5.188"})})}function Da(e){return s.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 25",fill:"none",...e,children:[s.jsx("mask",{id:"paste_mask",style:{maskType:"alpha"},maskUnits:"userSpaceOnUse",x:"0",y:"0",width:"24",height:"25",children:s.jsx("rect",{y:"0.5",width:"24",height:"24",fill:"#D9D9D9"})}),s.jsx("g",{mask:"url(#paste_mask)",children:s.jsx("path",{d:"M5.30775 20.9999C4.80908 20.9999 4.38308 20.8233 4.02975 20.4701C3.67658 20.1168 3.5 19.6908 3.5 19.1921V5.80762C3.5 5.30895 3.67658 4.88295 4.02975 4.52962C4.38308 4.17645 4.80908 3.99987 5.30775 3.99987H9.7135C9.852 3.5127 10.135 3.10887 10.5625 2.78837C10.99 2.46787 11.4692 2.30762 12 2.30762C12.5513 2.30762 13.0382 2.46787 13.4605 2.78837C13.883 3.10887 14.1635 3.5127 14.302 3.99987H18.6923C19.1909 3.99987 19.6169 4.17645 19.9703 4.52962C20.3234 4.88295 20.5 5.30895 20.5 5.80762V19.1921C20.5 19.6908 20.3234 20.1168 19.9703 20.4701C19.6169 20.8233 19.1909 20.9999 18.6923 20.9999H5.30775ZM5.30775 19.4999H18.6923C18.7692 19.4999 18.8398 19.4678 18.9038 19.4036C18.9679 19.3396 19 19.2691 19 19.1921V5.80762C19 5.73062 18.9679 5.66012 18.9038 5.59612C18.8398 5.53195 18.7692 5.49987 18.6923 5.49987H16.5V8.11512H7.5V5.49987H5.30775C5.23075 5.49987 5.16025 5.53195 5.09625 5.59612C5.03208 5.66012 5 5.73062 5 5.80762V19.1921C5 19.2691 5.03208 19.3396 5.09625 19.4036C5.16025 19.4678 5.23075 19.4999 5.30775 19.4999ZM12 5.61537C12.2577 5.61537 12.4728 5.52912 12.6453 5.35662C12.8176 5.18412 12.9038 4.96903 12.9038 4.71137C12.9038 4.4537 12.8176 4.23862 12.6453 4.06612C12.4728 3.89378 12.2577 3.80762 12 3.80762C11.7423 3.80762 11.5273 3.89378 11.3548 4.06612C11.1824 4.23862 11.0963 4.4537 11.0963 4.71137C11.0963 4.96903 11.1824 5.18412 11.3548 5.35662C11.5273 5.52912 11.7423 5.61537 12 5.61537Z",fill:"currentColor",fillOpacity:.48})})]})}function La(e){return s.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:[s.jsx("path",{d:"M4 12C4 7.58172 7.58172 4 12 4C15.0736 4 17.7555 5.6841 19.2291 8.16667M20 12C20 16.4183 16.4183 20 12 20C8.92638 20 6.24452 18.3159 4.77091 15.8333",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"}),s.jsx("path",{d:"M19 4V8H15",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"}),s.jsx("path",{d:"M5 20V16H9",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]})}function Fa(e){return s.jsxs("svg",{viewBox:"0 0 64 64",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:[s.jsx("circle",{cx:"32",cy:"32",r:"28",className:"fill-[var(--optimex-error)]/10 stroke-[var(--optimex-error)]",strokeWidth:"2"}),s.jsx("path",{d:"M20 22L26 28M26 22L20 28",className:"stroke-[var(--optimex-error)]",strokeWidth:"2.5",strokeLinecap:"round"}),s.jsx("path",{d:"M38 22L44 28M44 22L38 28",className:"stroke-[var(--optimex-error)]",strokeWidth:"2.5",strokeLinecap:"round"}),s.jsx("path",{d:"M22 44C26 38 38 38 42 44",className:"stroke-[var(--optimex-error)]",strokeWidth:"2.5",strokeLinecap:"round"})]})}function $a({className:e="h-5 w-5"}){return s.jsx("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"})})}function Ba({className:e="h-5 w-5"}){return s.jsxs("svg",{className:e,fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:[s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M10.325 4.317c.426-1.756 2.924-1.756 3.35 0a1.724 1.724 0 002.573 1.066c1.543-.94 3.31.826 2.37 2.37a1.724 1.724 0 001.065 2.572c1.756.426 1.756 2.924 0 3.35a1.724 1.724 0 00-1.066 2.573c.94 1.543-.826 3.31-2.37 2.37a1.724 1.724 0 00-2.572 1.065c-.426 1.756-2.924 1.756-3.35 0a1.724 1.724 0 00-2.573-1.066c-1.543.94-3.31-.826-2.37-2.37a1.724 1.724 0 00-1.065-2.572c-1.756-.426-1.756-2.924 0-3.35a1.724 1.724 0 001.066-2.573c-.94-1.543.826-3.31 2.37-2.37.996.608 2.296.07 2.572-1.065z"}),s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M15 12a3 3 0 11-6 0 3 3 0 016 0z"})]})}function Hn(e){return s.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",...e,children:[s.jsx("path",{d:"M19 7V4a1 1 0 0 0-1-1H5a2 2 0 0 0 0 4h15a1 1 0 0 1 1 1v4h-3a2 2 0 0 0 0 4h3a1 1 0 0 0 1-1v-2a1 1 0 0 0-1-1"}),s.jsx("path",{d:"M3 5v14a2 2 0 0 0 2 2h15a1 1 0 0 0 1-1v-4"})]})}function Jr({className:e="h-5 w-5"}){return s.jsx("svg",{className:e,fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"})})}function qn(e){return s.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 20 21",width:"20",height:"20",...e,children:s.jsx("path",{fill:"currentColor",d:"m11.299 2.846-.553 2.231q.557.126 1.103.263l.549-2.219 1.375.346-.563 2.277c1.737.603 3.008 1.506 2.759 3.188-.18 1.23-.858 1.827-1.757 2.036 1.234.647 1.862 1.641 1.264 3.362-.743 2.137-2.507 2.318-4.854 1.87l-.57 2.3-1.376-.345.562-2.269a53 53 0 0 1-1.096-.287l-.565 2.28-1.374-.346.57-2.304c-.322-.082-.65-.17-.982-.254L4 14.525l.684-1.587c.009.002 1.013.272 1 .251.389.098.562-.158.63-.33l.9-3.633.145.036a1 1 0 0 0-.142-.047l.64-2.593c.018-.295-.082-.667-.64-.807.02-.014-1-.25-1-.25l.367-1.48 1.898.476-.002.008q.43.106.88.207L9.922 2.5zM8.588 13.93c.933.233 3.81 1.164 4.236-.557.444-1.795-2.547-2.26-3.48-2.495zM9.69 9.483c.778.195 3.172.99 3.56-.575.404-1.634-2.098-1.998-2.875-2.193z"})})}function Qn(e){return s.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 14 12",width:"20",height:"20",...e,children:s.jsx("path",{fill:"currentColor",fillOpacity:.48,d:"M2.463 8.78a.44.44 0 0 1 .311-.129H13.5a.22.22 0 0 1 .156.376l-2.119 2.124a.44.44 0 0 1-.311.129H.5a.22.22 0 0 1-.156-.377zm0-7.932A.45.45 0 0 1 2.774.72H13.5a.221.221 0 0 1 .156.376L11.536 3.22a.44.44 0 0 1-.311.13H.5a.22.22 0 0 1-.156-.377zm9.074 3.941a.44.44 0 0 0-.311-.13H.5a.22.22 0 0 0-.156.377l2.12 2.124a.44.44 0 0 0 .31.129H13.5a.221.221 0 0 0 .156-.376z"})})}function Gn(e){return s.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 14 22",width:"20",height:"20",...e,children:[s.jsx("path",{fill:"currentColor",d:"M6.998 0 .5 11.204l6.498-3.069zM6.998 8.136.5 11.205l6.498 3.992z"}),s.jsx("path",{fill:"currentColor",d:"M13.496 11.204 6.997 0v8.135z"}),s.jsx("path",{fill:"currentColor",d:"m6.997 15.197 6.499-3.992-6.499-3.07zM.5 12.484 6.998 22v-5.526z"}),s.jsx("path",{fill:"currentColor",d:"M6.997 16.474V22l6.502-9.516z"})]})}function Kn(e){return s.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 25",width:"20",height:"20",...e,children:s.jsx("path",{fill:"currentColor",fillOpacity:.48,d:"M11.984 21.5c4.98 0 9.016-4.03 9.016-9s-4.036-9-9.016-9C7.26 3.5 3.385 7.127 3 11.743h11.917v1.514H3c.385 4.616 4.26 8.243 8.984 8.243"})})}function Yn(e){return s.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 25",width:"20",height:"20",...e,children:[s.jsxs("g",{fill:"currentColor",fillOpacity:.48,clipPath:"url(#arb_a)",children:[s.jsx("path",{d:"m12.089 14.49 2.278 3.68 2.105-1.255-2.992-4.852zM18.389 15.439l-.002-1.006-3.27-5.24-1.213 2.119 3.157 5.251 1.14-.68a.53.53 0 0 0 .188-.379zM4.688 16.387l1.611.956 5.363-8.85-.91-.024c-.776-.011-1.611.196-1.994.84l-3.046 4.857-1.024 1.62zM14.758 8.494l-2.4.009-5.426 9.214 1.897 1.123.515-.9z"}),s.jsx("path",{d:"M19.4 8.481a1.58 1.58 0 0 0-.718-1.264L12.72 3.69a1.51 1.51 0 0 0-1.368 0c-.05.026-5.8 3.456-5.8 3.456a1.572 1.572 0 0 0-.863 1.333v7.307l1.024-1.62-.009-5.638.007-.06a.52.52 0 0 1 .204-.332c.027-.02 5.875-3.502 5.893-3.512a.5.5 0 0 1 .45-.002l5.887 3.484c.139.091.226.246.234.415v6.984a.52.52 0 0 1-.176.38l-1.141.68-.589.35-2.105 1.256-2.134 1.272a.5.5 0 0 1-.364-.007L9.345 17.94l-.516.9 2.27 1.344.36.207c.161.08.393.127.602.127q.29 0 .556-.108l6.2-3.693c.355-.284.565-.712.584-1.175z"})]}),s.jsx("defs",{children:s.jsx("clipPath",{id:"arb_a",children:s.jsx("path",{fill:"currentColor",d:"M4 3h16v18H4z"})})})]})}function Zn(e){return s.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 25",width:"20",height:"20",...e,children:s.jsx("path",{fill:"currentColor",fillOpacity:.48,d:"M7.245 16.646q-1.431 0-2.343-.672C4.301 15.52 4 14.867 4 14.03c0-.18.02-.39.058-.647q.154-.862.441-2.08Q5.317 8 8.717 8c.614 0 1.171.102 1.657.314q.73.298 1.152.915.423.604.423 1.44 0 .249-.058.633a26 26 0 0 1-.435 2.08c-.282 1.095-.762 1.92-1.453 2.464-.685.538-1.606.8-2.758.8m.173-1.728c.448 0 .825-.134 1.139-.396q.481-.393.685-1.216c.185-.756.326-1.408.422-1.972q.05-.25.051-.518.002-1.094-1.139-1.094-.672.001-1.152.396-.471.393-.672 1.216c-.147.538-.288 1.19-.435 1.972q-.05.238-.051.505c-.007.743.384 1.107 1.152 1.107M12.506 16.531c-.09 0-.154-.025-.205-.083-.038-.064-.051-.134-.038-.218l1.657-7.808a.32.32 0 0 1 .135-.217.35.35 0 0 1 .23-.083h3.194q1.333.001 2.137.55c.544.371.82.902.82 1.6 0 .198-.026.41-.071.627-.198.922-.602 1.6-1.216 2.042q-.902.66-2.477.659h-1.619l-.55 2.63a.34.34 0 0 1-.135.218.35.35 0 0 1-.23.083zm4.25-4.589c.339 0 .627-.09.876-.275q.383-.277.506-.793.038-.203.038-.359c0-.23-.07-.41-.205-.531-.134-.128-.37-.192-.697-.192h-1.44l-.455 2.15z"})})}function Xn(e){return s.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 25",width:"20",height:"20",...e,children:[s.jsx("path",{fill:"currentColor",fillOpacity:.48,d:"m4.913 12.5.011 3.868 3.286 1.935v2.264L3 17.511V11.37zm0-3.868v2.254L3 9.754V7.5l1.913-1.133L6.836 7.5zM9.582 7.5l1.913-1.133L13.418 7.5l-1.923 1.132z"}),s.jsx("path",{fill:"currentColor",fillOpacity:.48,d:"M6.297 15.567v-2.265l1.913 1.132v2.254zm3.285 3.547 1.914 1.132 1.923-1.132v2.254L11.496 22.5l-1.914-1.132zM16.163 7.5l1.913-1.133L20 7.5v2.254l-1.923 1.132V8.632zm1.913 8.868.011-3.868L20 11.368v6.142l-5.208 3.056v-2.265z"}),s.jsx("path",{fill:"currentColor",fillOpacity:.48,d:"m16.704 15.567-1.914 1.122v-2.254l1.913-1.133z"}),s.jsx("path",{fill:"currentColor",fillOpacity:.48,d:"m16.704 9.434.01 2.264-3.294 1.934v3.878l-1.913 1.122-1.914-1.122v-3.878l-3.295-1.934V9.434L8.22 8.3l3.275 1.944L14.79 8.3l1.922 1.133zM6.297 5.566 11.496 2.5l5.208 3.066L14.791 6.7l-3.295-1.944L8.21 6.7z"})]})}const en={bitcoin:qn,solana:Qn,ethereum:Gn,base:Kn,arbitrum:Yn,optimism:Zn,bsc:Xn};function za(e){if(!e)return null;const t=e.toLowerCase().replace(/[\s_-]/g,"");return t in en?en[t]:t.includes("bitcoin")||t.includes("btc")?qn:t.includes("solana")||t.includes("sol")?Qn:t.includes("ethereum")||t.includes("eth")||t.includes("erc20")?Gn:t.includes("base")?Kn:t.includes("arbitrum")||t.includes("arb")?Yn:t.includes("optimism")||t.includes("op")?Zn:t.includes("bsc")||t.includes("binance")||t.includes("bnb")?Xn:null}function Wa(e){return e.length<=12?e:`${e.slice(0,6)}...${e.slice(-4)}`}function Va({icon:e,label:t,address:r,className:n=""}){const[o,a]=p.useState(!1),l=p.useCallback(async()=>{try{await navigator.clipboard.writeText(r),a(!0),setTimeout(()=>a(!1),2e3)}catch{console.error("Failed to copy")}},[r]);return s.jsxs("div",{className:`flex items-center justify-between px-4 py-3 ${n}`,children:[s.jsxs("div",{className:"flex items-center gap-2 text-[var(--optimex-text-secondary)]",children:[s.jsx(e,{className:"size-4"}),s.jsx("span",{className:"text-sm",children:t})]}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("span",{className:"text-sm font-medium text-[var(--optimex-text)]",children:Wa(r)}),s.jsx("button",{onClick:l,className:"p-1 rounded hover:bg-[var(--optimex-surface-hover)] transition-colors",title:o?"Copied!":"Copy",children:o?s.jsx(br,{className:"size-4 text-[var(--optimex-success)]"}):s.jsx(_a,{className:"size-4 text-[var(--optimex-text-secondary)]"})})]})]})}const Ua={primary:"bg-[var(--optimex-primary)] text-black hover:brightness-110 shadow-lg shadow-[var(--optimex-primary)]/30",secondary:"bg-[var(--optimex-surface)] text-[var(--optimex-text)] hover:bg-white/10 border border-white/10",ghost:"bg-transparent text-[var(--optimex-text-secondary)] hover:bg-white/10 hover:text-[var(--optimex-text)]",danger:"bg-[var(--optimex-error)] text-white hover:bg-[var(--optimex-error)]/90 hover:shadow-lg hover:shadow-[var(--optimex-error)]/25"},Ha={sm:"px-3 py-1.5 text-xs rounded-[var(--optimex-radius-button)] gap-1.5 max-h-[2rem]",md:"px-4 py-2 text-sm rounded-[var(--optimex-radius-button)] gap-2 max-h-[2.5rem]",lg:"px-6 py-3 text-sm rounded-[var(--optimex-radius-button)] gap-2 max-h-[3rem]"};function Jn({variant:e="primary",size:t="md",fullWidth:r=!1,isLoading:n=!1,leftIcon:o,rightIcon:a,children:l,className:i="",disabled:c,...u}){const d=c||n;return s.jsxs("button",{className:`
3
3
  group flex items-center justify-center font-semibold transition-all active:scale-[0.98]
4
4
  ${Ua[e]}
@@ -52,4 +52,4 @@ If you want to hide the \`${t.titleName}\`, you can wrap it with our VisuallyHid
52
52
 
53
53
  For more information, see https://radix-ui.com/primitives/docs/components/${t.docsSlug}`;return x.useEffect(()=>{e&&(document.getElementById(e)||console.error(r))},[r,e]),null},dc="DialogDescriptionWarning",fc=({contentRef:e,descriptionId:t})=>{const n=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${Qs(dc).contentName}}.`;return x.useEffect(()=>{const o=e.current?.getAttribute("aria-describedby");t&&o&&(document.getElementById(t)||console.warn(n))},[n,e,t]),null},jr=Ms,Sr=Ls,Er=Fs,Nr=$s,Tr=zs,Rr=Vs,Tt=Hs;function hc(e){if(typeof document>"u")return;let t=document.head||document.getElementsByTagName("head")[0],r=document.createElement("style");r.type="text/css",t.appendChild(r),r.styleSheet?r.styleSheet.cssText=e:r.appendChild(document.createTextNode(e))}const Gs=p.createContext({drawerRef:{current:null},overlayRef:{current:null},onPress:()=>{},onRelease:()=>{},onDrag:()=>{},onNestedDrag:()=>{},onNestedOpenChange:()=>{},onNestedRelease:()=>{},openProp:void 0,dismissible:!1,isOpen:!1,isDragging:!1,keyboardIsOpen:{current:!1},snapPointsOffset:null,snapPoints:null,handleOnly:!1,modal:!1,shouldFade:!1,activeSnapPoint:null,onOpenChange:()=>{},setActiveSnapPoint:()=>{},closeDrawer:()=>{},direction:"bottom",shouldAnimate:{current:!0},shouldScaleBackground:!1,setBackgroundColorOnScale:!0,noBodyStyles:!1,container:null,autoFocus:!1}),ct=()=>{const e=p.useContext(Gs);if(!e)throw new Error("useDrawerContext must be used within a Drawer.Root");return e};hc(`[data-vaul-drawer]{touch-action:none;will-change:transform;transition:transform .5s cubic-bezier(.32, .72, 0, 1);animation-duration:.5s;animation-timing-function:cubic-bezier(0.32,0.72,0,1)}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=bottom][data-state=open]{animation-name:slideFromBottom}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=bottom][data-state=closed]{animation-name:slideToBottom}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=top][data-state=open]{animation-name:slideFromTop}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=top][data-state=closed]{animation-name:slideToTop}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=left][data-state=open]{animation-name:slideFromLeft}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=left][data-state=closed]{animation-name:slideToLeft}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=right][data-state=open]{animation-name:slideFromRight}[data-vaul-drawer][data-vaul-snap-points=false][data-vaul-drawer-direction=right][data-state=closed]{animation-name:slideToRight}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=bottom]{transform:translate3d(0,var(--initial-transform,100%),0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=top]{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=left]{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}[data-vaul-drawer][data-vaul-snap-points=true][data-vaul-drawer-direction=right]{transform:translate3d(var(--initial-transform,100%),0,0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=top]{transform:translate3d(0,var(--snap-point-height,0),0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=bottom]{transform:translate3d(0,var(--snap-point-height,0),0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=left]{transform:translate3d(var(--snap-point-height,0),0,0)}[data-vaul-drawer][data-vaul-delayed-snap-points=true][data-vaul-drawer-direction=right]{transform:translate3d(var(--snap-point-height,0),0,0)}[data-vaul-overlay][data-vaul-snap-points=false]{animation-duration:.5s;animation-timing-function:cubic-bezier(0.32,0.72,0,1)}[data-vaul-overlay][data-vaul-snap-points=false][data-state=open]{animation-name:fadeIn}[data-vaul-overlay][data-state=closed]{animation-name:fadeOut}[data-vaul-animate=false]{animation:none!important}[data-vaul-overlay][data-vaul-snap-points=true]{opacity:0;transition:opacity .5s cubic-bezier(.32, .72, 0, 1)}[data-vaul-overlay][data-vaul-snap-points=true]{opacity:1}[data-vaul-drawer]:not([data-vaul-custom-container=true])::after{content:'';position:absolute;background:inherit;background-color:inherit}[data-vaul-drawer][data-vaul-drawer-direction=top]::after{top:initial;bottom:100%;left:0;right:0;height:200%}[data-vaul-drawer][data-vaul-drawer-direction=bottom]::after{top:100%;bottom:initial;left:0;right:0;height:200%}[data-vaul-drawer][data-vaul-drawer-direction=left]::after{left:initial;right:100%;top:0;bottom:0;width:200%}[data-vaul-drawer][data-vaul-drawer-direction=right]::after{left:100%;right:initial;top:0;bottom:0;width:200%}[data-vaul-overlay][data-vaul-snap-points=true]:not([data-vaul-snap-points-overlay=true]):not(
54
54
  [data-state=closed]
55
- ){opacity:0}[data-vaul-overlay][data-vaul-snap-points-overlay=true]{opacity:1}[data-vaul-handle]{display:block;position:relative;opacity:.7;background:#e2e2e4;margin-left:auto;margin-right:auto;height:5px;width:32px;border-radius:1rem;touch-action:pan-y}[data-vaul-handle]:active,[data-vaul-handle]:hover{opacity:1}[data-vaul-handle-hitarea]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:max(100%,2.75rem);height:max(100%,2.75rem);touch-action:inherit}@media (hover:hover) and (pointer:fine){[data-vaul-drawer]{user-select:none}}@media (pointer:fine){[data-vaul-handle-hitarea]:{width:100%;height:100%}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes fadeOut{to{opacity:0}}@keyframes slideFromBottom{from{transform:translate3d(0,var(--initial-transform,100%),0)}to{transform:translate3d(0,0,0)}}@keyframes slideToBottom{to{transform:translate3d(0,var(--initial-transform,100%),0)}}@keyframes slideFromTop{from{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}to{transform:translate3d(0,0,0)}}@keyframes slideToTop{to{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}}@keyframes slideFromLeft{from{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}to{transform:translate3d(0,0,0)}}@keyframes slideToLeft{to{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}}@keyframes slideFromRight{from{transform:translate3d(var(--initial-transform,100%),0,0)}to{transform:translate3d(0,0,0)}}@keyframes slideToRight{to{transform:translate3d(var(--initial-transform,100%),0,0)}}`);function mc(){const e=navigator.userAgent;return typeof window<"u"&&(/Firefox/.test(e)&&/Mobile/.test(e)||/FxiOS/.test(e))}function pc(){return Or(/^Mac/)}function xc(){return Or(/^iPhone/)}function yn(){return/^((?!chrome|android).)*safari/i.test(navigator.userAgent)}function vc(){return Or(/^iPad/)||pc()&&navigator.maxTouchPoints>1}function Ks(){return xc()||vc()}function Or(e){return typeof window<"u"&&window.navigator!=null?e.test(window.navigator.platform):void 0}const gc=24,bc=typeof window<"u"?p.useLayoutEffect:p.useEffect;function wn(...e){return(...t)=>{for(let r of e)typeof r=="function"&&r(...t)}}const Gt=typeof document<"u"&&window.visualViewport;function Cn(e){let t=window.getComputedStyle(e);return/(auto|scroll)/.test(t.overflow+t.overflowX+t.overflowY)}function Ys(e){for(Cn(e)&&(e=e.parentElement);e&&!Cn(e);)e=e.parentElement;return e||document.scrollingElement||document.documentElement}const yc=new Set(["checkbox","radio","range","color","file","image","button","submit","reset"]);let yt=0,Kt;function wc(e={}){let{isDisabled:t}=e;bc(()=>{if(!t)return yt++,yt===1&&Ks()&&(Kt=Cc()),()=>{yt--,yt===0&&Kt?.()}},[t])}function Cc(){let e,t=0,r=f=>{e=Ys(f.target),!(e===document.documentElement&&e===document.body)&&(t=f.changedTouches[0].pageY)},n=f=>{if(!e||e===document.documentElement||e===document.body){f.preventDefault();return}let m=f.changedTouches[0].pageY,b=e.scrollTop,v=e.scrollHeight-e.clientHeight;v!==0&&((b<=0&&m>t||b>=v&&m<t)&&f.preventDefault(),t=m)},o=f=>{let m=f.target;dr(m)&&m!==document.activeElement&&(f.preventDefault(),m.style.transform="translateY(-2000px)",m.focus(),requestAnimationFrame(()=>{m.style.transform=""}))},a=f=>{let m=f.target;dr(m)&&(m.style.transform="translateY(-2000px)",requestAnimationFrame(()=>{m.style.transform="",Gt&&(Gt.height<window.innerHeight?requestAnimationFrame(()=>{kn(m)}):Gt.addEventListener("resize",()=>kn(m),{once:!0}))}))},l=()=>{window.scrollTo(0,0)},i=window.pageXOffset,c=window.pageYOffset,u=wn(kc(document.documentElement,"paddingRight",`${window.innerWidth-document.documentElement.clientWidth}px`));window.scrollTo(0,0);let d=wn(tt(document,"touchstart",r,{passive:!1,capture:!0}),tt(document,"touchmove",n,{passive:!1,capture:!0}),tt(document,"touchend",o,{passive:!1,capture:!0}),tt(document,"focus",a,!0),tt(window,"scroll",l));return()=>{u(),d(),window.scrollTo(i,c)}}function kc(e,t,r){let n=e.style[t];return e.style[t]=r,()=>{e.style[t]=n}}function tt(e,t,r,n){return e.addEventListener(t,r,n),()=>{e.removeEventListener(t,r,n)}}function kn(e){let t=document.scrollingElement||document.documentElement;for(;e&&e!==t;){let r=Ys(e);if(r!==document.documentElement&&r!==document.body&&r!==e){let n=r.getBoundingClientRect().top,o=e.getBoundingClientRect().top,a=e.getBoundingClientRect().bottom;const l=r.getBoundingClientRect().bottom+gc;a>l&&(r.scrollTop+=o-n)}e=r.parentElement}}function dr(e){return e instanceof HTMLInputElement&&!yc.has(e.type)||e instanceof HTMLTextAreaElement||e instanceof HTMLElement&&e.isContentEditable}function jc(e,t){typeof e=="function"?e(t):e!=null&&(e.current=t)}function Sc(...e){return t=>e.forEach(r=>jc(r,t))}function Zs(...e){return x.useCallback(Sc(...e),e)}const Xs=new WeakMap;function ee(e,t,r=!1){if(!e||!(e instanceof HTMLElement))return;let n={};Object.entries(t).forEach(([o,a])=>{if(o.startsWith("--")){e.style.setProperty(o,a);return}n[o]=e.style[o],e.style[o]=a}),!r&&Xs.set(e,n)}function Ec(e,t){if(!e||!(e instanceof HTMLElement))return;let r=Xs.get(e);r&&(e.style[t]=r[t])}const X=e=>{switch(e){case"top":case"bottom":return!0;case"left":case"right":return!1;default:return e}};function wt(e,t){if(!e)return null;const r=window.getComputedStyle(e),n=r.transform||r.webkitTransform||r.mozTransform;let o=n.match(/^matrix3d\((.+)\)$/);return o?parseFloat(o[1].split(", ")[X(t)?13:12]):(o=n.match(/^matrix\((.+)\)$/),o?parseFloat(o[1].split(", ")[X(t)?5:4]):null)}function Nc(e){return 8*(Math.log(e+1)-2)}function Yt(e,t){if(!e)return()=>{};const r=e.style.cssText;return Object.assign(e.style,t),()=>{e.style.cssText=r}}function Tc(...e){return(...t)=>{for(const r of e)typeof r=="function"&&r(...t)}}const G={DURATION:.5,EASE:[.32,.72,0,1]},Js=.4,Rc=.25,Oc=100,eo=8,Ae=16,fr=26,Zt="vaul-dragging";function to(e){const t=p.useRef(e);return p.useEffect(()=>{t.current=e}),p.useMemo(()=>(...r)=>t.current==null?void 0:t.current.call(t,...r),[])}function _c({defaultProp:e,onChange:t}){const r=p.useState(e),[n]=r,o=p.useRef(n),a=to(t);return p.useEffect(()=>{o.current!==n&&(a(n),o.current=n)},[n,o,a]),r}function ro({prop:e,defaultProp:t,onChange:r=()=>{}}){const[n,o]=_c({defaultProp:t,onChange:r}),a=e!==void 0,l=a?e:n,i=to(r),c=p.useCallback(u=>{if(a){const f=typeof u=="function"?u(e):u;f!==e&&i(f)}else o(u)},[a,e,o,i]);return[l,c]}function Ac({activeSnapPointProp:e,setActiveSnapPointProp:t,snapPoints:r,drawerRef:n,overlayRef:o,fadeFromIndex:a,onSnapPointChange:l,direction:i="bottom",container:c,snapToSequentialPoint:u}){const[d,f]=ro({prop:e,defaultProp:r?.[0],onChange:t}),[m,b]=p.useState(typeof window<"u"?{innerWidth:window.innerWidth,innerHeight:window.innerHeight}:void 0);p.useEffect(()=>{function C(){b({innerWidth:window.innerWidth,innerHeight:window.innerHeight})}return window.addEventListener("resize",C),()=>window.removeEventListener("resize",C)},[]);const v=p.useMemo(()=>d===r?.[r.length-1]||null,[r,d]),h=p.useMemo(()=>{var C;return(C=r?.findIndex(j=>j===d))!=null?C:null},[r,d]),y=r&&r.length>0&&(a||a===0)&&!Number.isNaN(a)&&r[a]===d||!r,g=p.useMemo(()=>{const C=c?{width:c.getBoundingClientRect().width,height:c.getBoundingClientRect().height}:typeof window<"u"?{width:window.innerWidth,height:window.innerHeight}:{width:0,height:0};var j;return(j=r?.map(O=>{const L=typeof O=="string";let M=0;if(L&&(M=parseInt(O,10)),X(i)){const _=L?M:m?O*C.height:0;return m?i==="bottom"?C.height-_:-C.height+_:_}const $=L?M:m?O*C.width:0;return m?i==="right"?C.width-$:-C.width+$:$}))!=null?j:[]},[r,m,c]),S=p.useMemo(()=>h!==null?g?.[h]:null,[g,h]),k=p.useCallback(C=>{var j;const O=(j=g?.findIndex(L=>L===C))!=null?j:null;l(O),ee(n.current,{transition:`transform ${G.DURATION}s cubic-bezier(${G.EASE.join(",")})`,transform:X(i)?`translate3d(0, ${C}px, 0)`:`translate3d(${C}px, 0, 0)`}),g&&O!==g.length-1&&a!==void 0&&O!==a&&O<a?ee(o.current,{transition:`opacity ${G.DURATION}s cubic-bezier(${G.EASE.join(",")})`,opacity:"0"}):ee(o.current,{transition:`opacity ${G.DURATION}s cubic-bezier(${G.EASE.join(",")})`,opacity:"1"}),f(r?.[Math.max(O,0)])},[n.current,r,g,a,o,f]);p.useEffect(()=>{if(d||e){var C;const j=(C=r?.findIndex(O=>O===e||O===d))!=null?C:-1;g&&j!==-1&&typeof g[j]=="number"&&k(g[j])}},[d,e,r,g,k]);function w({draggedDistance:C,closeDrawer:j,velocity:O,dismissible:L}){if(a===void 0)return;const M=i==="bottom"||i==="right"?(S??0)-C:(S??0)+C,$=h===a-1,_=h===0,W=C>0;if($&&ee(o.current,{transition:`opacity ${G.DURATION}s cubic-bezier(${G.EASE.join(",")})`}),!u&&O>2&&!W){L?j():k(g[0]);return}if(!u&&O>2&&W&&g&&r){k(g[r.length-1]);return}const V=g?.reduce((U,E)=>typeof U!="number"||typeof E!="number"?U:Math.abs(E-M)<Math.abs(U-M)?E:U),Q=X(i)?window.innerHeight:window.innerWidth;if(O>Js&&Math.abs(C)<Q*.4){const U=W?1:-1;if(U>0&&v&&r){k(g[r.length-1]);return}if(_&&U<0&&L&&j(),h===null)return;k(g[h+U]);return}k(V)}function N({draggedDistance:C}){if(S===null)return;const j=i==="bottom"||i==="right"?S-C:S+C;(i==="bottom"||i==="right")&&j<g[g.length-1]||(i==="top"||i==="left")&&j>g[g.length-1]||ee(n.current,{transform:X(i)?`translate3d(0, ${j}px, 0)`:`translate3d(${j}px, 0, 0)`})}function A(C,j){if(!r||typeof h!="number"||!g||a===void 0)return null;const O=h===a-1;if(h>=a&&j)return 0;if(O&&!j)return 1;if(!y&&!O)return null;const M=O?h+1:h-1,$=O?g[M]-g[M-1]:g[M+1]-g[M],_=C/Math.abs($);return O?1-_:_}return{isLastSnapPoint:v,activeSnapPoint:d,shouldFade:y,getPercentageDragged:A,setActiveSnapPoint:f,activeSnapPointIndex:h,onRelease:w,onDrag:N,snapPointsOffset:g}}const Pc=()=>()=>{};function Mc(){const{direction:e,isOpen:t,shouldScaleBackground:r,setBackgroundColorOnScale:n,noBodyStyles:o}=ct(),a=p.useRef(null),l=p.useMemo(()=>document.body.style.backgroundColor,[]);function i(){return(window.innerWidth-fr)/window.innerWidth}p.useEffect(()=>{if(t&&r){a.current&&clearTimeout(a.current);const c=document.querySelector("[data-vaul-drawer-wrapper]")||document.querySelector("[vaul-drawer-wrapper]");if(!c)return;Tc(n&&!o?Yt(document.body,{background:"black"}):Pc,Yt(c,{transformOrigin:X(e)?"top":"left",transitionProperty:"transform, border-radius",transitionDuration:`${G.DURATION}s`,transitionTimingFunction:`cubic-bezier(${G.EASE.join(",")})`}));const u=Yt(c,{borderRadius:`${eo}px`,overflow:"hidden",...X(e)?{transform:`scale(${i()}) translate3d(0, calc(env(safe-area-inset-top) + 14px), 0)`}:{transform:`scale(${i()}) translate3d(calc(env(safe-area-inset-top) + 14px), 0, 0)`}});return()=>{u(),a.current=window.setTimeout(()=>{l?document.body.style.background=l:document.body.style.removeProperty("background")},G.DURATION*1e3)}}},[t,r,l])}let rt=null;function Ic({isOpen:e,modal:t,nested:r,hasBeenOpened:n,preventScrollRestoration:o,noBodyStyles:a}){const[l,i]=p.useState(()=>typeof window<"u"?window.location.href:""),c=p.useRef(0),u=p.useCallback(()=>{if(yn()&&rt===null&&e&&!a){rt={position:document.body.style.position,top:document.body.style.top,left:document.body.style.left,height:document.body.style.height,right:"unset"};const{scrollX:f,innerHeight:m}=window;document.body.style.setProperty("position","fixed","important"),Object.assign(document.body.style,{top:`${-c.current}px`,left:`${-f}px`,right:"0px",height:"auto"}),window.setTimeout(()=>window.requestAnimationFrame(()=>{const b=m-window.innerHeight;b&&c.current>=m&&(document.body.style.top=`${-(c.current+b)}px`)}),300)}},[e]),d=p.useCallback(()=>{if(yn()&&rt!==null&&!a){const f=-parseInt(document.body.style.top,10),m=-parseInt(document.body.style.left,10);Object.assign(document.body.style,rt),window.requestAnimationFrame(()=>{if(o&&l!==window.location.href){i(window.location.href);return}window.scrollTo(m,f)}),rt=null}},[l]);return p.useEffect(()=>{function f(){c.current=window.scrollY}return f(),window.addEventListener("scroll",f),()=>{window.removeEventListener("scroll",f)}},[]),p.useEffect(()=>{if(t)return()=>{typeof document>"u"||document.querySelector("[data-vaul-drawer]")||d()}},[t,d]),p.useEffect(()=>{r||!n||(e?(!window.matchMedia("(display-mode: standalone)").matches&&u(),t||window.setTimeout(()=>{d()},500)):d())},[e,n,l,t,r,u,d]),{restorePositionSetting:d}}function Dc({open:e,onOpenChange:t,children:r,onDrag:n,onRelease:o,snapPoints:a,shouldScaleBackground:l=!1,setBackgroundColorOnScale:i=!0,closeThreshold:c=Rc,scrollLockTimeout:u=Oc,dismissible:d=!0,handleOnly:f=!1,fadeFromIndex:m=a&&a.length-1,activeSnapPoint:b,setActiveSnapPoint:v,fixed:h,modal:y=!0,onClose:g,nested:S,noBodyStyles:k=!1,direction:w="bottom",defaultOpen:N=!1,disablePreventScroll:A=!0,snapToSequentialPoint:C=!1,preventScrollRestoration:j=!1,repositionInputs:O=!0,onAnimationEnd:L,container:M,autoFocus:$=!1}){var _,W;const[V=!1,Q]=ro({defaultProp:N,prop:e,onChange:P=>{t?.(P),!P&&!S&&yo(),setTimeout(()=>{L?.(P)},G.DURATION*1e3),P&&!y&&typeof window<"u"&&window.requestAnimationFrame(()=>{document.body.style.pointerEvents="auto"}),P||(document.body.style.pointerEvents="auto")}}),[U,E]=p.useState(!1),[ne,ie]=p.useState(!1),[Te,pe]=p.useState(!1),H=p.useRef(null),Z=p.useRef(null),de=p.useRef(null),be=p.useRef(null),F=p.useRef(null),xe=p.useRef(!1),ye=p.useRef(null),we=p.useRef(0),fe=p.useRef(!1),Re=p.useRef(!N),Ir=p.useRef(0),I=p.useRef(null),Dr=p.useRef(((_=I.current)==null?void 0:_.getBoundingClientRect().height)||0),Lr=p.useRef(((W=I.current)==null?void 0:W.getBoundingClientRect().width)||0),It=p.useRef(0),po=p.useCallback(P=>{a&&P===Xe.length-1&&(Z.current=new Date)},[]),{activeSnapPoint:xo,activeSnapPointIndex:$e,setActiveSnapPoint:Fr,onRelease:vo,snapPointsOffset:Xe,onDrag:go,shouldFade:$r,getPercentageDragged:bo}=Ac({snapPoints:a,activeSnapPointProp:b,setActiveSnapPointProp:v,drawerRef:I,fadeFromIndex:m,overlayRef:H,onSnapPointChange:po,direction:w,container:M,snapToSequentialPoint:C});wc({isDisabled:!V||ne||!y||Te||!U||!O||!A});const{restorePositionSetting:yo}=Ic({isOpen:V,modal:y,nested:S??!1,hasBeenOpened:U,preventScrollRestoration:j,noBodyStyles:k});function ut(){return(window.innerWidth-fr)/window.innerWidth}function wo(P){var z,q;!d&&!a||I.current&&!I.current.contains(P.target)||(Dr.current=((z=I.current)==null?void 0:z.getBoundingClientRect().height)||0,Lr.current=((q=I.current)==null?void 0:q.getBoundingClientRect().width)||0,ie(!0),de.current=new Date,Ks()&&window.addEventListener("touchend",()=>xe.current=!1,{once:!0}),P.target.setPointerCapture(P.pointerId),we.current=X(w)?P.pageY:P.pageX)}function Br(P,z){var q;let B=P;const Y=(q=window.getSelection())==null?void 0:q.toString(),se=I.current?wt(I.current,w):null,re=new Date;if(B.tagName==="SELECT"||B.hasAttribute("data-vaul-no-drag")||B.closest("[data-vaul-no-drag]"))return!1;if(w==="right"||w==="left")return!0;if(Z.current&&re.getTime()-Z.current.getTime()<500)return!1;if(se!==null&&(w==="bottom"?se>0:se<0))return!0;if(Y&&Y.length>0)return!1;if(F.current&&re.getTime()-F.current.getTime()<u&&se===0||z)return F.current=re,!1;for(;B;){if(B.scrollHeight>B.clientHeight){if(B.scrollTop!==0)return F.current=new Date,!1;if(B.getAttribute("role")==="dialog")return!0}B=B.parentNode}return!0}function Co(P){if(I.current&&ne){const z=w==="bottom"||w==="right"?1:-1,q=(we.current-(X(w)?P.pageY:P.pageX))*z,B=q>0,Y=a&&!d&&!B;if(Y&&$e===0)return;const se=Math.abs(q),re=document.querySelector("[data-vaul-drawer-wrapper]"),Ce=w==="bottom"||w==="top"?Dr.current:Lr.current;let le=se/Ce;const Oe=bo(se,B);if(Oe!==null&&(le=Oe),Y&&le>=1||!xe.current&&!Br(P.target,B))return;if(I.current.classList.add(Zt),xe.current=!0,ee(I.current,{transition:"none"}),ee(H.current,{transition:"none"}),a&&go({draggedDistance:q}),B&&!a){const he=Nc(q),dt=Math.min(he*-1,0)*z;ee(I.current,{transform:X(w)?`translate3d(0, ${dt}px, 0)`:`translate3d(${dt}px, 0, 0)`});return}const ke=1-le;if(($r||m&&$e===m-1)&&(n?.(P,le),ee(H.current,{opacity:`${ke}`,transition:"none"},!0)),re&&H.current&&l){const he=Math.min(ut()+le*(1-ut()),1),dt=8-le*8,Wr=Math.max(0,14-le*14);ee(re,{borderRadius:`${dt}px`,transform:X(w)?`scale(${he}) translate3d(0, ${Wr}px, 0)`:`scale(${he}) translate3d(${Wr}px, 0, 0)`,transition:"none"},!0)}if(!a){const he=se*z;ee(I.current,{transform:X(w)?`translate3d(0, ${he}px, 0)`:`translate3d(${he}px, 0, 0)`})}}}p.useEffect(()=>{window.requestAnimationFrame(()=>{Re.current=!0})},[]),p.useEffect(()=>{var P;function z(){if(!I.current||!O)return;const q=document.activeElement;if(dr(q)||fe.current){var B;const Y=((B=window.visualViewport)==null?void 0:B.height)||0,se=window.innerHeight;let re=se-Y;const Ce=I.current.getBoundingClientRect().height||0,le=Ce>se*.8;It.current||(It.current=Ce);const Oe=I.current.getBoundingClientRect().top;if(Math.abs(Ir.current-re)>60&&(fe.current=!fe.current),a&&a.length>0&&Xe&&$e){const ke=Xe[$e]||0;re+=ke}if(Ir.current=re,Ce>Y||fe.current){const ke=I.current.getBoundingClientRect().height;let he=ke;ke>Y&&(he=Y-(le?Oe:fr)),h?I.current.style.height=`${ke-Math.max(re,0)}px`:I.current.style.height=`${Math.max(he,Y-Oe)}px`}else mc()||(I.current.style.height=`${It.current}px`);a&&a.length>0&&!fe.current?I.current.style.bottom="0px":I.current.style.bottom=`${Math.max(re,0)}px`}}return(P=window.visualViewport)==null||P.addEventListener("resize",z),()=>{var q;return(q=window.visualViewport)==null?void 0:q.removeEventListener("resize",z)}},[$e,a,Xe]);function Je(P){ko(),g?.(),P||Q(!1),setTimeout(()=>{a&&Fr(a[0])},G.DURATION*1e3)}function zr(){if(!I.current)return;const P=document.querySelector("[data-vaul-drawer-wrapper]"),z=wt(I.current,w);ee(I.current,{transform:"translate3d(0, 0, 0)",transition:`transform ${G.DURATION}s cubic-bezier(${G.EASE.join(",")})`}),ee(H.current,{transition:`opacity ${G.DURATION}s cubic-bezier(${G.EASE.join(",")})`,opacity:"1"}),l&&z&&z>0&&V&&ee(P,{borderRadius:`${eo}px`,overflow:"hidden",...X(w)?{transform:`scale(${ut()}) translate3d(0, calc(env(safe-area-inset-top) + 14px), 0)`,transformOrigin:"top"}:{transform:`scale(${ut()}) translate3d(calc(env(safe-area-inset-top) + 14px), 0, 0)`,transformOrigin:"left"},transitionProperty:"transform, border-radius",transitionDuration:`${G.DURATION}s`,transitionTimingFunction:`cubic-bezier(${G.EASE.join(",")})`},!0)}function ko(){!ne||!I.current||(I.current.classList.remove(Zt),xe.current=!1,ie(!1),be.current=new Date)}function jo(P){if(!ne||!I.current)return;I.current.classList.remove(Zt),xe.current=!1,ie(!1),be.current=new Date;const z=wt(I.current,w);if(!P||!Br(P.target,!1)||!z||Number.isNaN(z)||de.current===null)return;const q=be.current.getTime()-de.current.getTime(),B=we.current-(X(w)?P.pageY:P.pageX),Y=Math.abs(B)/q;if(Y>.05&&(pe(!0),setTimeout(()=>{pe(!1)},200)),a){vo({draggedDistance:B*(w==="bottom"||w==="right"?1:-1),closeDrawer:Je,velocity:Y,dismissible:d}),o?.(P,!0);return}if(w==="bottom"||w==="right"?B>0:B<0){zr(),o?.(P,!0);return}if(Y>Js){Je(),o?.(P,!1);return}var se;const re=Math.min((se=I.current.getBoundingClientRect().height)!=null?se:0,window.innerHeight);var Ce;const le=Math.min((Ce=I.current.getBoundingClientRect().width)!=null?Ce:0,window.innerWidth),Oe=w==="left"||w==="right";if(Math.abs(z)>=(Oe?le:re)*c){Je(),o?.(P,!1);return}o?.(P,!0),zr()}p.useEffect(()=>(V&&(ee(document.documentElement,{scrollBehavior:"auto"}),Z.current=new Date),()=>{Ec(document.documentElement,"scrollBehavior")}),[V]);function So(P){const z=P?(window.innerWidth-Ae)/window.innerWidth:1,q=P?-Ae:0;ye.current&&window.clearTimeout(ye.current),ee(I.current,{transition:`transform ${G.DURATION}s cubic-bezier(${G.EASE.join(",")})`,transform:X(w)?`scale(${z}) translate3d(0, ${q}px, 0)`:`scale(${z}) translate3d(${q}px, 0, 0)`}),!P&&I.current&&(ye.current=setTimeout(()=>{const B=wt(I.current,w);ee(I.current,{transition:"none",transform:X(w)?`translate3d(0, ${B}px, 0)`:`translate3d(${B}px, 0, 0)`})},500))}function Eo(P,z){if(z<0)return;const q=(window.innerWidth-Ae)/window.innerWidth,B=q+z*(1-q),Y=-Ae+z*Ae;ee(I.current,{transform:X(w)?`scale(${B}) translate3d(0, ${Y}px, 0)`:`scale(${B}) translate3d(${Y}px, 0, 0)`,transition:"none"})}function No(P,z){const q=X(w)?window.innerHeight:window.innerWidth,B=z?(q-Ae)/q:1,Y=z?-Ae:0;z&&ee(I.current,{transition:`transform ${G.DURATION}s cubic-bezier(${G.EASE.join(",")})`,transform:X(w)?`scale(${B}) translate3d(0, ${Y}px, 0)`:`scale(${B}) translate3d(${Y}px, 0, 0)`})}return p.useEffect(()=>{y||window.requestAnimationFrame(()=>{document.body.style.pointerEvents="auto"})},[y]),p.createElement(jr,{defaultOpen:N,onOpenChange:P=>{!d&&!P||(P?E(!0):Je(!0),Q(P))},open:V},p.createElement(Gs.Provider,{value:{activeSnapPoint:xo,snapPoints:a,setActiveSnapPoint:Fr,drawerRef:I,overlayRef:H,onOpenChange:t,onPress:wo,onRelease:jo,onDrag:Co,dismissible:d,shouldAnimate:Re,handleOnly:f,isOpen:V,isDragging:ne,shouldFade:$r,closeDrawer:Je,onNestedDrag:Eo,onNestedOpenChange:So,onNestedRelease:No,keyboardIsOpen:fe,modal:y,snapPointsOffset:Xe,activeSnapPointIndex:$e,direction:w,shouldScaleBackground:l,setBackgroundColorOnScale:i,noBodyStyles:k,container:M,autoFocus:$}},r))}const no=p.forwardRef(function({...e},t){const{overlayRef:r,snapPoints:n,onRelease:o,shouldFade:a,isOpen:l,modal:i,shouldAnimate:c}=ct(),u=Zs(t,r),d=n&&n.length>0;if(!i)return null;const f=p.useCallback(m=>o(m),[o]);return p.createElement(Er,{onMouseUp:f,ref:u,"data-vaul-overlay":"","data-vaul-snap-points":l&&d?"true":"false","data-vaul-snap-points-overlay":l&&a?"true":"false","data-vaul-animate":c?.current?"true":"false",...e})});no.displayName="Drawer.Overlay";const so=p.forwardRef(function({onPointerDownOutside:e,style:t,onOpenAutoFocus:r,...n},o){const{drawerRef:a,onPress:l,onRelease:i,onDrag:c,keyboardIsOpen:u,snapPointsOffset:d,activeSnapPointIndex:f,modal:m,isOpen:b,direction:v,snapPoints:h,container:y,handleOnly:g,shouldAnimate:S,autoFocus:k}=ct(),[w,N]=p.useState(!1),A=Zs(o,a),C=p.useRef(null),j=p.useRef(null),O=p.useRef(!1),L=h&&h.length>0;Mc();const M=(_,W,V=0)=>{if(O.current)return!0;const Q=Math.abs(_.y),U=Math.abs(_.x),E=U>Q,ne=["bottom","right"].includes(W)?1:-1;if(W==="left"||W==="right"){if(!(_.x*ne<0)&&U>=0&&U<=V)return E}else if(!(_.y*ne<0)&&Q>=0&&Q<=V)return!E;return O.current=!0,!0};p.useEffect(()=>{L&&window.requestAnimationFrame(()=>{N(!0)})},[]);function $(_){C.current=null,O.current=!1,i(_)}return p.createElement(Nr,{"data-vaul-drawer-direction":v,"data-vaul-drawer":"","data-vaul-delayed-snap-points":w?"true":"false","data-vaul-snap-points":b&&L?"true":"false","data-vaul-custom-container":y?"true":"false","data-vaul-animate":S?.current?"true":"false",...n,ref:A,style:d&&d.length>0?{"--snap-point-height":`${d[f??0]}px`,...t}:t,onPointerDown:_=>{g||(n.onPointerDown==null||n.onPointerDown.call(n,_),C.current={x:_.pageX,y:_.pageY},l(_))},onOpenAutoFocus:_=>{r?.(_),k||_.preventDefault()},onPointerDownOutside:_=>{if(e?.(_),!m||_.defaultPrevented){_.preventDefault();return}u.current&&(u.current=!1)},onFocusOutside:_=>{if(!m){_.preventDefault();return}},onPointerMove:_=>{if(j.current=_,g||(n.onPointerMove==null||n.onPointerMove.call(n,_),!C.current))return;const W=_.pageY-C.current.y,V=_.pageX-C.current.x,Q=_.pointerType==="touch"?10:2;M({x:V,y:W},v,Q)?c(_):(Math.abs(V)>Q||Math.abs(W)>Q)&&(C.current=null)},onPointerUp:_=>{n.onPointerUp==null||n.onPointerUp.call(n,_),C.current=null,O.current=!1,i(_)},onPointerOut:_=>{n.onPointerOut==null||n.onPointerOut.call(n,_),$(j.current)},onContextMenu:_=>{n.onContextMenu==null||n.onContextMenu.call(n,_),j.current&&$(j.current)}})});so.displayName="Drawer.Content";const Lc=250,Fc=120,$c=p.forwardRef(function({preventCycle:e=!1,children:t,...r},n){const{closeDrawer:o,isDragging:a,snapPoints:l,activeSnapPoint:i,setActiveSnapPoint:c,dismissible:u,handleOnly:d,isOpen:f,onPress:m,onDrag:b}=ct(),v=p.useRef(null),h=p.useRef(!1);function y(){if(h.current){k();return}window.setTimeout(()=>{g()},Fc)}function g(){if(a||e||h.current){k();return}if(k(),!l||l.length===0){u||o();return}if(i===l[l.length-1]&&u){o();return}const N=l.findIndex(C=>C===i);if(N===-1)return;const A=l[N+1];c(A)}function S(){v.current=window.setTimeout(()=>{h.current=!0},Lc)}function k(){v.current&&window.clearTimeout(v.current),h.current=!1}return p.createElement("div",{onClick:y,onPointerCancel:k,onPointerDown:w=>{d&&m(w),S()},onPointerMove:w=>{d&&b(w)},ref:n,"data-vaul-drawer-visible":f?"true":"false","data-vaul-handle":"","aria-hidden":"true",...r},p.createElement("span",{"data-vaul-handle-hitarea":"","aria-hidden":"true"},t))});$c.displayName="Drawer.Handle";function Bc(e){const t=ct(),{container:r=t.container,...n}=e;return p.createElement(Sr,{container:r,...n})}const Pe={Root:Dc,Content:so,Overlay:no,Portal:Bc,Close:Tt,Title:Tr,Description:Rr};function zc(e=768){const[t,r]=p.useState(!1);return p.useEffect(()=>{const n=()=>{r(window.innerWidth<e)};return n(),window.addEventListener("resize",n),()=>window.removeEventListener("resize",n)},[e]),t}function Rt(...e){return ms(ts(e))}function _r({open:e,onOpenChange:t,children:r,title:n,description:o,className:a="",showCloseButton:l=!0}){return zc()?s.jsx(Pe.Root,{open:e,onOpenChange:t,children:s.jsxs(Pe.Portal,{children:[s.jsx(Pe.Overlay,{className:"fixed inset-0 z-[9999] bg-black/60 backdrop-blur-sm"}),s.jsxs(Pe.Content,{className:Rt("fixed inset-x-0 bottom-0 z-[9999] mt-24 flex max-h-[96vh] flex-col rounded-t-[var(--optimex-overlay-radius)] border-t border-white/10 bg-[var(--optimex-overlay-background)] outline-none",a),children:[s.jsx("div",{className:"mx-auto mt-4 h-1.5 w-12 flex-shrink-0 rounded-full bg-white/20"}),(n||l)&&s.jsxs("div",{className:"flex items-center justify-between border-b border-white/[0.05] px-4 pb-4 pt-2",children:[s.jsxs("div",{children:[n&&s.jsx(Pe.Title,{className:"text-lg font-bold text-[var(--optimex-text)]",children:n}),o&&s.jsx(Pe.Description,{className:"text-sm text-[var(--optimex-text-secondary)]",children:o})]}),l&&s.jsx(Pe.Close,{className:"rounded-[var(--optimex-radius-button)] p-1.5 text-[var(--optimex-text-secondary)] transition-colors hover:bg-white/10 hover:text-[var(--optimex-text)]",children:s.jsx(Ie,{})})]}),s.jsx("div",{className:"flex-1 overflow-auto",children:r})]})]})}):s.jsx(jr,{open:e,onOpenChange:t,children:s.jsxs(Sr,{children:[s.jsx(Er,{className:"fixed inset-0 z-[9999] bg-black/60 backdrop-blur-sm data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0"}),s.jsxs(Nr,{className:Rt("fixed left-1/2 top-1/2 z-[9999] flex max-h-[85vh] w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 flex-col rounded-[var(--optimex-overlay-radius)] border border-white/10 bg-[var(--optimex-overlay-background)] shadow-2xl outline-none duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 sm:max-w-lg",a),children:[(n||o||l)&&s.jsxs("div",{className:"flex flex-shrink-0 items-center justify-between border-b border-white/[0.05] p-4",children:[s.jsxs("div",{className:"flex flex-col gap-1.5",children:[n&&s.jsx(Tr,{className:"text-lg font-bold leading-none text-[var(--optimex-text)]",children:n}),o&&s.jsx(Rr,{className:"text-sm text-[var(--optimex-text-secondary)]",children:o})]}),l&&s.jsxs(Tt,{className:"rounded-[var(--optimex-radius-button)] p-1.5 text-[var(--optimex-text-secondary)] opacity-70 transition-opacity hover:opacity-100 hover:bg-white/10 focus:outline-none",children:[s.jsx(Ie,{}),s.jsx("span",{className:"sr-only",children:"Close"})]})]}),s.jsx("div",{className:"flex flex-1 flex-col overflow-hidden",children:r})]})]})})}const Wc=({children:e,className:t=""})=>s.jsx("div",{className:Rt("p-4",t),children:e}),Vc=({children:e,className:t=""})=>s.jsx("div",{className:Rt("flex gap-2 border-t border-white/[0.05] p-4",t),children:e});function hr({children:e,onClick:t,isActive:r=!1,type:n="button",className:o=""}){return s.jsx("button",{type:n,onClick:t,className:ps(`px-2 py-1 bg-white/5 rounded-md text-xs transition-colors shadow-sm border ${r?"border-[var(--optimex-primary)] text-[var(--optimex-text)]":"border-transparent text-[var(--optimex-text-secondary)] hover:bg-[var(--optimex-surface-hover)] hover:text-[var(--optimex-text)]"} ${o}`),children:e})}const Uc={"bottom-right":"right-0 top-full mt-2","bottom-left":"left-0 top-full mt-2","bottom-center":"left-1/2 -translate-x-1/2 top-full mt-2","top-right":"right-0 bottom-full mb-2","top-left":"left-0 bottom-full mb-2","top-center":"left-1/2 -translate-x-1/2 bottom-full mb-2"},Hc={"bottom-right":"-top-2 right-4 rotate-45 border-l border-t border-white/10","bottom-left":"-top-2 left-4 rotate-45 border-l border-t border-white/10","bottom-center":"-top-2 left-1/2 -translate-x-1/2 rotate-45 border-l border-t border-white/10","top-right":"-bottom-2 right-4 rotate-45 border-r border-b border-white/10","top-left":"-bottom-2 left-4 rotate-45 border-r border-b border-white/10","top-center":"-bottom-2 left-1/2 -translate-x-1/2 rotate-45 border-r border-b border-white/10"};function qc({isOpen:e,onClose:t,children:r,anchorRef:n,position:o="bottom-right",width:a="w-72",showArrow:l=!0,className:i="",ariaLabel:c}){const u=p.useRef(null);return p.useEffect(()=>{if(!e)return;const d=b=>{const v=b.target;u.current?.contains(v)||n?.current?.contains(v)||t()},f=b=>{b.key==="Escape"&&t()},m=setTimeout(()=>{document.addEventListener("mousedown",d),document.addEventListener("keydown",f)},0);return()=>{clearTimeout(m),document.removeEventListener("mousedown",d),document.removeEventListener("keydown",f)}},[e,t,n]),e?s.jsxs("div",{ref:u,className:`absolute z-50 rounded-[var(--optimex-overlay-radius)] border border-white/10 bg-[var(--optimex-overlay-background)] p-4 shadow-xl ${Uc[o]} ${a} ${i}`,role:"dialog","aria-label":c,children:[l&&s.jsx("div",{className:`absolute h-4 w-4 bg-[var(--optimex-overlay-background)] ${Hc[o]}`}),s.jsx("div",{className:"relative",children:r})]}):null}function Qc({value:e,onChange:t,placeholder:r,hasError:n=!1,leftIcon:o,rightContent:a,type:l="text",inputMode:i="text",disabled:c=!1,className:u=""}){return s.jsxs("div",{className:`flex rounded-[var(--optimex-radius-button)] items-center gap-2 bg-white/5 border py-3 px-3 transition-colors ${n?"border-[var(--optimex-error)]":"border-white/10 hover:border-[var(--optimex-primary)] focus-within:border-[var(--optimex-primary)]"} ${c?"opacity-50 cursor-not-allowed":""} ${u}`,children:[o&&s.jsx(o,{className:"size-5 text-[var(--optimex-text-secondary)] shrink-0"}),s.jsx("input",{type:l,inputMode:i,value:e,onChange:d=>t(d.target.value),placeholder:r,disabled:c,className:"flex-1 min-w-0 bg-transparent text-[var(--optimex-text)] text-sm placeholder:text-[var(--optimex-text-secondary)]/30 outline-none disabled:cursor-not-allowed"}),a]})}const Gc={sm:{container:"h-6 w-6",icon:"h-6 w-6",badge:"h-3 w-3"},md:{container:"h-8 w-8",icon:"h-8 w-8",badge:"h-4 w-4"},lg:{container:"h-10 w-10",icon:"h-10 w-10",badge:"h-5 w-5"},xl:{container:"h-14 w-14",icon:"h-14 w-14",badge:"h-6 w-6"}};function Le({token:e,size:t="md",showNetworkBadge:r=!0}){const n=Gc[t];return s.jsxs("div",{className:`relative shrink-0 ${n.container}`,children:[s.jsx("img",{src:e.token_logo_uri||"/placeholder-token.svg",alt:e.token_symbol,className:`${n.icon} rounded-[9999px] bg-[var(--optimex-background)]`,onError:o=>{o.target.src="/placeholder-token.svg"}}),r&&e.network_logo_uri&&s.jsx("img",{src:e.network_logo_uri,alt:e.network_name,className:`absolute -bottom-1 -right-1 ${n.badge} rounded-[9999px] border-2 border-[var(--optimex-surface)]`,onError:o=>{o.target.style.display="none"}})]})}const Kc="widget-container rounded-[var(--optimex-radius-widget)] p-4 shadow-2xl relative w-full min-w-0";function Ar({children:e,className:t}){return s.jsx("div",{className:t??Kc,children:e})}function Yc(){return s.jsxs("div",{className:"relative size-20 mb-4",children:[s.jsx("div",{className:"absolute inset-0 rounded-full bg-[var(--optimex-error)]/10 animate-pulse"}),s.jsx("div",{className:"absolute inset-2 rounded-full bg-[var(--optimex-error)]/20"}),s.jsx("div",{className:"absolute inset-0 flex items-center justify-center",children:s.jsx(Fa,{className:"size-10 text-[var(--optimex-error)]"})})]})}function Zc({error:e,onRetry:t,className:r}){const n=()=>{const o=e?.message?.toLowerCase()||"";return o.includes("network")||o.includes("fetch")?"Connection issue. Check your internet and try again.":o.includes("timeout")?"Request timed out. The server might be busy.":o.includes("401")||o.includes("403")?"Access denied. Please check your credentials.":o.includes("500")||o.includes("server")?"Server is having issues. Please try again later.":"Something went wrong while loading. Let's give it another shot!"};return s.jsx(Ar,{className:r,children:s.jsx("div",{className:"bg-[var(--optimex-surface)] rounded-2xl p-6 border border-white/[0.02]",children:s.jsxs("div",{className:"flex flex-col items-center justify-center text-center",children:[s.jsx(Yc,{}),s.jsx("h3",{className:"text-base font-bold text-[var(--optimex-text)] mb-1",children:"Oops! Something went wrong"}),s.jsx("p",{className:"text-sm text-[var(--optimex-text-secondary)] mb-6 max-w-[280px]",children:n()}),s.jsx(Jn,{onClick:t,size:"md",fullWidth:!0,leftIcon:s.jsx(La,{className:"size-4 transition-transform group-hover:rotate-180"}),children:"Try Again"}),e?.message&&s.jsxs("details",{className:"mt-4 w-full",children:[s.jsx("summary",{className:"cursor-pointer text-xs text-[var(--optimex-text-secondary)]/60 hover:text-[var(--optimex-text-secondary)] transition-colors",children:"Technical details"}),s.jsx("p",{className:"mt-2 bg-white/5 p-3 text-left text-xs text-[var(--optimex-text-secondary)] break-all border border-white/[0.02]",children:e.message})]})]})})})}function Xc({className:e}){return s.jsxs("div",{className:"flex flex-col gap-4",children:[s.jsxs("header",{className:"flex items-center justify-between px-2",children:[s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx("div",{className:"size-8 rounded-lg bg-[var(--optimex-primary)]/30 animate-pulse"}),s.jsx("div",{className:"h-6 w-28 rounded bg-white/10 animate-pulse"})]}),s.jsx("div",{className:"size-10 rounded-lg bg-white/5 animate-pulse"})]}),s.jsxs(Ar,{className:e,children:[s.jsxs("div",{className:"bg-[var(--optimex-surface)] rounded-2xl p-4 border border-white/[0.02] mb-2",children:[s.jsx("div",{className:"flex justify-between items-center mb-4",children:s.jsx("div",{className:"h-3 w-10 animate-pulse rounded bg-white/10"})}),s.jsxs("div",{className:"flex items-center justify-between gap-4",children:[s.jsxs("div",{className:"flex-1",children:[s.jsx("div",{className:"h-8 w-24 animate-pulse rounded bg-white/10 mb-2"}),s.jsx("div",{className:"h-3 w-16 animate-pulse rounded bg-white/5"})]}),s.jsxs("div",{className:"flex items-center gap-2 bg-white/5 p-2 pr-3 rounded-full border border-white/10",children:[s.jsx("div",{className:"size-8 rounded-full bg-white/10 animate-pulse"}),s.jsxs("div",{children:[s.jsx("div",{className:"h-4 w-12 animate-pulse rounded bg-white/10 mb-1"}),s.jsx("div",{className:"h-2 w-16 animate-pulse rounded bg-white/5"})]})]})]})]}),s.jsx("div",{className:"relative z-10 -my-4 flex justify-center",children:s.jsx("div",{className:"size-10 rounded-full bg-[var(--optimex-surface)] border-4 border-[var(--optimex-background)] animate-pulse"})}),s.jsxs("div",{className:"bg-[var(--optimex-surface)] rounded-2xl p-4 border border-white/[0.02] mb-4",children:[s.jsx("div",{className:"flex justify-between items-center mb-4",children:s.jsx("div",{className:"h-3 w-6 animate-pulse rounded bg-white/10"})}),s.jsxs("div",{className:"flex items-center justify-between gap-4",children:[s.jsxs("div",{className:"flex-1",children:[s.jsx("div",{className:"h-8 w-20 animate-pulse rounded bg-white/10 mb-2"}),s.jsx("div",{className:"h-3 w-14 animate-pulse rounded bg-white/5"})]}),s.jsxs("div",{className:"flex items-center gap-2 bg-white/5 p-2 pr-3 rounded-full border border-white/10",children:[s.jsx("div",{className:"size-8 rounded-full bg-white/10 animate-pulse"}),s.jsxs("div",{children:[s.jsx("div",{className:"h-4 w-12 animate-pulse rounded bg-white/10 mb-1"}),s.jsx("div",{className:"h-2 w-16 animate-pulse rounded bg-white/5"})]})]})]})]}),s.jsxs("div",{className:"bg-[var(--optimex-surface)] rounded-2xl p-4 border border-white/[0.02] mb-4",children:[s.jsx("div",{className:"h-3 w-28 animate-pulse rounded bg-white/10 mb-2"}),s.jsxs("div",{className:"flex items-center gap-2 bg-white/5 border border-white/10 py-3 px-3 rounded-md",children:[s.jsx("div",{className:"size-5 rounded-full bg-white/10 animate-pulse shrink-0"}),s.jsx("div",{className:"h-4 flex-1 animate-pulse rounded bg-white/5"})]}),s.jsx("div",{className:"h-2 w-48 animate-pulse rounded bg-white/5 mt-2"})]}),s.jsx("div",{className:"h-12 w-full animate-pulse rounded-xl bg-[var(--optimex-primary)]/30 bg-white/5 mt-2"}),s.jsx("div",{className:"mt-4 flex items-center justify-center",children:s.jsx("div",{className:"h-4 w-32 animate-pulse rounded bg-white/5"})})]})]})}const oo=p.createContext(null);function Jc({children:e}){const t=lt(),{data:r,isLoading:n,error:o,refetch:a}=xa(t.apiBaseUrl),l=t.renderLoading??Xc,i=t.renderError??Zc;if(n)return s.jsx(l,{});if(o||!r){const c=o instanceof Error?o:new Error("Failed to load tokens");return s.jsx(i,{error:c,onRetry:()=>a()})}return s.jsx(oo.Provider,{value:{tokensData:r,refetch:a},children:e})}function eu(){const e=p.useContext(oo);if(!e)throw new Error("useTokensData must be used within TokensProvider");return e}function tu({token:e,value:t,onChange:r,placeholder:n,error:o,onClose:a}){const l=p.useCallback(()=>{r("")},[r]),i=p.useCallback(async()=>{try{const f=await navigator.clipboard.readText();f&&r(f.trim())}catch(f){console.error("Failed to read clipboard:",f)}},[r]),c=()=>n||(e?`Enter ${e.network_name} address`:"Enter receiving address"),u=e?.network_name||"destination",d=p.useMemo(()=>za(e?.network_name)||Hn,[e?.network_name]);return s.jsxs("div",{className:"bg-[var(--optimex-surface)] rounded-[var(--optimex-radius-input)] p-4 border border-white/[0.05] animate-in slide-in-from-top-2 duration-300",children:[s.jsxs("div",{className:"flex justify-between items-center mb-2",children:[s.jsx("label",{className:"text-[var(--optimex-text-secondary)] text-xs",children:"Recipient Address"}),a&&s.jsx("button",{type:"button",onClick:l,className:"text-[var(--optimex-text-secondary)]/50 hover:text-[var(--optimex-text-secondary)] transition-colors",children:s.jsx(Ie,{className:"size-4"})})]}),s.jsx(Qc,{value:t,onChange:r,placeholder:c(),hasError:!!o,leftIcon:d,rightContent:t?s.jsx("button",{type:"button",onClick:l,className:"text-[var(--optimex-text-secondary)] hover:text-[var(--optimex-text)] transition-colors",children:s.jsx(Ie,{className:"size-5"})}):s.jsx("button",{type:"button",onClick:i,className:"text-[var(--optimex-text-secondary)] hover:text-[var(--optimex-primary)] transition-colors",children:s.jsx(Da,{className:"size-5"})})}),o?s.jsxs("p",{className:"text-[10px] text-[var(--optimex-error)] mt-2 flex items-center gap-1",children:[s.jsx(Jr,{className:"size-3"}),o]}):s.jsxs("p",{className:"text-[10px] text-[var(--optimex-text-secondary)] mt-2 flex items-center gap-1",children:[s.jsx(Jr,{className:"size-3"}),"Ensure the address matches the ",u," network."]})]})}function jn({token:e,value:t,onChange:r,readOnly:n=!1,onSelectToken:o,isLoading:a=!1,loadingText:l="Loading...",balance:i,isOutput:c=!1,isWalletConnected:u=!1,usdValue:d="$0.00"}){const f=h=>{if(n||!r)return;const y=h.target.value;/^[0-9]*\.?[0-9]*$/.test(y)&&r(y)},m=u&&!c&&i!==void 0,b=()=>{if(!i||!r||n)return;const h=(parseFloat(i)/2).toString();r(h)},v=()=>{!i||!r||n||r(i)};return s.jsxs("div",{className:"bg-[var(--optimex-surface)] rounded-[var(--optimex-radius-input)] p-4 flex flex-col gap-2 border border-white/[0.02] focus-within:border-[var(--optimex-primary)]/40 transition-colors",children:[s.jsxs("div",{className:"flex justify-between items-center",children:[s.jsx("span",{className:"text-[var(--optimex-text-secondary)] text-xs",children:c?"To":"From"}),s.jsx("div",{className:"flex items-center gap-2",children:m&&s.jsxs(s.Fragment,{children:[s.jsxs("span",{className:"text-[var(--optimex-text-secondary)] text-xs",children:["Balance: ",i," ",e?.token_symbol]}),s.jsxs("div",{className:"flex gap-2",children:[s.jsx(hr,{onClick:b,children:"50%"}),s.jsx(hr,{onClick:v,children:"Max"})]})]})})]}),s.jsxs("div",{className:"flex items-center justify-between gap-4",children:[s.jsxs("div",{className:"flex-1 min-w-0",children:[s.jsx("input",{type:"text",inputMode:"decimal",placeholder:"0.0",value:t,onChange:f,readOnly:n,className:"w-full bg-transparent border-none p-0 text-[var(--optimex-text)] text-2xl font-bold focus:ring-0 placeholder:text-[var(--optimex-text-secondary)]/30 outline-none"}),s.jsxs("p",{className:"text-[var(--optimex-text-secondary)] text-xs mt-1",children:["~",d]})]}),s.jsxs("button",{onClick:o,className:"flex items-center gap-2 bg-white/5 hover:bg-white/10 p-2 pr-3 rounded-[9999px] transition-all border border-white/10 active:scale-95 shrink-0",children:[e?s.jsxs(s.Fragment,{children:[s.jsx(Le,{token:e,size:"md"}),s.jsxs("div",{className:"text-left",children:[s.jsx("p",{className:"text-[var(--optimex-text)] text-sm font-bold leading-none",children:e.token_symbol}),s.jsx("p",{className:"text-[var(--optimex-text-secondary)] text-[10px] leading-none mt-1",children:e.network_name})]})]}):s.jsxs(s.Fragment,{children:[s.jsx("div",{className:"size-8 rounded-[9999px] bg-white/10"}),s.jsx("span",{className:"text-[var(--optimex-text)] text-sm font-bold",children:"Select"})]}),s.jsx(Vn,{className:"size-4 text-[var(--optimex-text-secondary)]"})]})]}),a&&s.jsxs("div",{className:"flex items-center justify-end gap-2 text-sm text-[var(--optimex-text-secondary)]",children:[s.jsx("div",{className:"size-3 animate-spin rounded-[9999px] border border-[var(--optimex-primary)] border-t-transparent"}),s.jsx("span",{children:l})]})]})}const Xt=[.5,.75,1];function ru({value:e,onChange:t}){const[r,n]=p.useState(""),[o,a]=p.useState(!Xt.includes(e)),l=p.useCallback(u=>{a(!1),n(""),t(u)},[t]),i=p.useCallback(u=>{const d=u.target.value;if(d===""||/^\d*\.?\d*$/.test(d)){n(d),a(!0);const f=parseFloat(d);!isNaN(f)&&f>0&&f<=50&&t(f)}},[t]),c=p.useCallback(()=>{a(!0),!r&&e&&n(Xt.includes(e)?"":String(e))},[r,e]);return s.jsxs("div",{className:"space-y-3",children:[s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsx("span",{className:"text-sm font-medium text-[var(--optimex-text)]",children:"Slippage Tolerance"}),s.jsxs("span",{className:"text-sm text-[var(--optimex-text-secondary)]",children:[e,"%"]})]}),s.jsxs("div",{className:"flex items-center gap-2",children:[Xt.map(u=>s.jsxs(hr,{onClick:()=>l(u),isActive:e===u&&!o,className:"flex-1",children:[u,"%"]},u)),s.jsxs("div",{className:`flex flex-1 items-center justify-center px-2 rounded-md transition-colors shadow-sm bg-white/5 border ${o?"border-[var(--optimex-primary)]":"border-transparent hover:bg-white/10"}`,children:[s.jsx("input",{type:"text",inputMode:"decimal",placeholder:"Custom",value:r,onChange:i,onFocus:c,className:"w-full min-w-0 py-[6px] bg-transparent text-center text-xs outline-none placeholder:text-[var(--optimex-text-secondary)] text-[var(--optimex-text)]"}),s.jsx("span",{className:"text-xs text-[var(--optimex-text-secondary)]",children:"%"})]})]}),e>5&&s.jsx("p",{className:"text-xs text-[var(--optimex-warning)]",children:"This may result in an unfavorable trade. Try lowering your slippage setting."})]})}function nu({isOpen:e,onClose:t,value:r,onChange:n,anchorRef:o}){const a=p.useCallback(l=>{n(l)},[n]);return s.jsx(qc,{isOpen:e,onClose:t,anchorRef:o,position:"bottom-right",width:"w-96",ariaLabel:"Slippage settings",children:s.jsx(ru,{value:r,onChange:a})})}const su=({title:e})=>s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx("div",{className:"size-8 bg-[var(--optimex-primary)] rounded-[var(--optimex-radius-button)] flex items-center justify-center shadow-[0_0_15px_rgba(235,98,0,0.3)]",children:s.jsx(Ma,{className:"w-5 h-auto text-white"})}),s.jsx("h2",{className:"text-xl font-bold tracking-tight text-[var(--optimex-text)]",children:e})]});function ou({title:e="Swap",headerLeft:t,slippage:r=.75,onSlippageChange:n,isSettingsOpen:o=!1,onSettingsToggle:a,onHistoryClick:l,hideHistory:i=!1}){const c=p.useRef(null);return s.jsxs("header",{className:"flex items-center justify-between px-2",children:[t??s.jsx(su,{title:e}),s.jsxs("div",{className:"flex items-center gap-2",children:[!i&&s.jsx("button",{onClick:l,className:"size-10 rounded-[var(--optimex-radius-button)] bg-white/5 hover:bg-white/10 text-[var(--optimex-text-secondary)] hover:text-[var(--optimex-text)] transition-colors flex items-center justify-center","aria-label":"Trade History",children:s.jsx(Aa,{className:"size-5"})}),s.jsxs("div",{className:"relative",children:[s.jsx("button",{ref:c,onClick:a,className:"size-10 rounded-[var(--optimex-radius-button)] bg-white/5 hover:bg-white/10 text-[var(--optimex-text-secondary)] hover:text-[var(--optimex-text)] transition-colors flex items-center justify-center","aria-label":"Settings",children:s.jsx(Ba,{className:"size-5"})}),s.jsx(nu,{isOpen:o,onClose:()=>a?.(),value:r,onChange:u=>n?.(u),anchorRef:c})]})]})]})}function ao({onClick:e,disabled:t}){return s.jsx("div",{className:"!m-0 absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 z-10",children:s.jsx("button",{onClick:e,disabled:t,className:"size-10 rounded-[9999px] bg-[var(--optimex-surface)] border-4 border-white/5 flex items-center justify-center text-[var(--optimex-primary)] hover:scale-110 transition-all shadow-xl disabled:cursor-not-allowed",children:s.jsx(Ra,{className:"size-5"})})})}function au({quote:e,fromToken:t,toToken:r,amount:n,slippage:o,isFetching:a}){const[l,i]=p.useState(!1),[c,u]=p.useState(!1),d=p.useCallback(()=>{u(g=>!g)},[]),f=p.useCallback(()=>{i(g=>!g)},[]),m=parseFloat(n)||0,b=parseFloat(e.min_amount_out)/Math.pow(10,r.token_decimals),v=m>0?b/m:0,h=b>0?m/b:0,y=()=>c?`1 ${r.token_symbol} = ${h.toFixed(6)} ${t.token_symbol}`:`1 ${t.token_symbol} = ${v.toFixed(6)} ${r.token_symbol}`;return s.jsxs("div",{className:"bg-white/[0.02] rounded-[var(--optimex-radius-button)] border border-white/5 overflow-hidden",children:[s.jsxs("button",{type:"button",onClick:f,className:"w-full flex items-center justify-between p-3 text-xs cursor-pointer hover:bg-white/[0.02] transition-colors",children:[s.jsx("div",{className:"flex items-center gap-2 text-[var(--optimex-text-secondary)] font-medium",children:a?s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("div",{className:"size-3 animate-spin rounded-[9999px] border border-[var(--optimex-primary)] border-t-transparent"}),s.jsx("span",{children:"Updating..."})]}):s.jsx("span",{role:"button",tabIndex:0,onClick:g=>{g.stopPropagation(),d()},onKeyDown:g=>{(g.key==="Enter"||g.key===" ")&&(g.stopPropagation(),d())},className:"hover:text-[var(--optimex-text)] transition-colors",children:y()})}),s.jsx(Vn,{className:`size-4 text-[var(--optimex-text-secondary)] transition-transform ${l?"rotate-180":""}`})]}),l&&s.jsxs("div",{className:"px-3 pb-3 space-y-2 text-xs border-t border-white/5",children:[s.jsxs("div",{className:"flex items-center justify-between pt-3",children:[s.jsx("span",{className:"text-[var(--optimex-text-secondary)]",children:"Min. Received"}),s.jsxs("span",{className:"font-medium text-[var(--optimex-text)]",children:[Ne(e.min_amount_out,r.token_decimals)," ",r.token_symbol]})]}),s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsx("span",{className:"text-[var(--optimex-text-secondary)]",children:"Est. Time"}),s.jsx("span",{className:"font-medium text-[var(--optimex-primary)]",children:"~10 minutes"})]}),s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsx("span",{className:"text-[var(--optimex-text-secondary)]",children:"Slippage Tolerance"}),s.jsxs("span",{className:"font-medium text-[var(--optimex-text)]",children:[o,"%"]})]})]})]})}function iu({text:e,disabled:t,onClick:r}){return s.jsx("button",{disabled:t,onClick:r,className:"w-full font-semibold text-black bg-[var(--optimex-primary)] hover:brightness-110 py-4 rounded-[var(--optimex-radius-button)] shadow-lg shadow-[var(--optimex-primary)]/30 flex items-center justify-center transition-all active:scale-[0.98] disabled:cursor-not-allowed disabled:opacity-50",children:e})}function lu(){return s.jsxs("a",{href:"https://optimex.com",target:"_blank",rel:"noopener noreferrer",className:"flex items-center justify-center gap-1.5 text-[var(--optimex-text-secondary)] text-[10px] opacity-50 hover:opacity-70 transition-opacity",children:[s.jsx("span",{children:"Powered by"}),s.jsx(Ia,{className:"h-3 w-auto"})]})}function cu({value:e,onChange:t,placeholder:r="Search by name or symbol..."}){return s.jsx("div",{className:"flex-shrink-0 p-4 pb-3",children:s.jsxs("div",{className:"relative",children:[s.jsx("input",{type:"text",placeholder:r,value:e,onChange:n=>t(n.target.value),className:"w-full rounded-xl bg-white/5 border border-white/10 px-4 py-3 pl-10 pr-10 text-[var(--optimex-text)] outline-none placeholder:text-[var(--optimex-text-secondary)]/60 transition-colors hover:border-[var(--optimex-primary)] focus:border-[var(--optimex-primary)]"}),s.jsx($a,{className:"absolute left-3 top-1/2 h-5 w-5 -translate-y-1/2 text-[var(--optimex-text-secondary)]"}),e&&s.jsx("button",{type:"button",onClick:()=>t(""),className:"absolute right-3 top-1/2 -translate-y-1/2 text-[var(--optimex-text-secondary)] hover:text-[var(--optimex-text)] transition-colors",children:s.jsx(Ie,{className:"size-5"})})]})})}function uu({networks:e,selectedNetwork:t,onSelectNetwork:r}){return s.jsxs("div",{className:"w-1/3 min-w-[140px] border-r border-white/[0.05] overflow-y-auto p-2",children:[s.jsx("div",{className:"mb-2 px-2 text-xs font-medium uppercase tracking-wider text-[var(--optimex-text-secondary)]",children:"Networks"}),s.jsxs("div",{className:"space-y-1 px-2",children:[s.jsxs("button",{onClick:()=>r(null),className:`flex w-full items-center gap-2 rounded-lg px-3 py-2 text-sm transition-colors ${t===null?"bg-white/5 text-[var(--optimex-text)]":"text-[var(--optimex-text-secondary)] hover:bg-white/5 hover:text-[var(--optimex-text)]"}`,children:[s.jsx(Ta,{}),s.jsx("span",{children:"All"})]}),e.map(n=>s.jsx(du,{network:n,isSelected:t===n.network_id,onSelect:()=>r(n.network_id)},n.network_id))]})]})}function du({network:e,isSelected:t,onSelect:r}){return s.jsxs("button",{onClick:r,className:`flex w-full items-center gap-2 rounded-lg px-3 py-2 text-sm transition-colors ${t?"bg-white/5 text-[var(--optimex-text)]":"text-[var(--optimex-text-secondary)] hover:bg-white/5 hover:text-[var(--optimex-text)]"}`,children:[e.logo_uri?s.jsx("img",{src:e.logo_uri,alt:e.name,className:"h-8 w-8 rounded-lg",onError:n=>{n.target.style.display="none"}}):s.jsx("div",{className:"h-6 w-6 rounded-full bg-white/10"}),s.jsx("span",{className:"truncate",children:e.name})]})}function fu({tokens:e,selectedSymbol:t,onSelectSymbol:r,maxVisible:n=12}){return s.jsxs("div",{className:"flex-shrink-0 border-b border-white/[0.05] p-2",children:[s.jsx("div",{className:"mb-2 px-2 text-xs font-medium uppercase tracking-wider text-[var(--optimex-text-secondary)]",children:"Tokens"}),s.jsxs("div",{className:"flex flex-wrap gap-1.5 overflow-hidden max-h-[5rem]",children:[s.jsx("button",{onClick:()=>r(null),className:`border rounded-lg px-2.5 py-1 text-xs font-medium transition-colors ${t===null?"border-[var(--optimex-primary)] text-[var(--optimex-text)]":"border-transparent text-[var(--optimex-text-secondary)] hover:bg-white/10 hover:text-[var(--optimex-text)]"}`,children:"All"}),e.slice(0,n).map(o=>s.jsx(hu,{token:o,isSelected:t===o.token_symbol,onSelect:()=>r(o.token_symbol)},o.token_symbol))]})]})}function hu({token:e,isSelected:t,onSelect:r}){return s.jsxs("button",{onClick:r,className:ps("flex items-center gap-1 rounded-lg px-2.5 py-1 text-xs font-medium transition-colors outline-none border bg-white/5",t?"border-[var(--optimex-primary)] text-[var(--optimex-text)]":"border-transparent text-[var(--optimex-text-secondary)] hover:bg-white/10 hover:text-[var(--optimex-text)]"),children:[e.token_logo_uri&&s.jsx("img",{src:e.token_logo_uri,alt:e.token_symbol,className:"h-4 w-4 rounded-full",onError:n=>{n.target.style.display="none"}}),e.token_symbol]})}function Ze(){const e=p.useContext($n);if(!e)throw new Error("useWallet must be used within WalletProvider");return e}function Mt(e){return`https://network-api-stg.bitdex.xyz/${e}/rpc/zwD70RMT9DrE8L5SaMnJNMF8m70Gum`}function mu(e){return e==="bitcoin_testnet"?"https://mempool.space/testnet4/api":"https://mempool.space/api"}function Pr(e){return!e.token_address||e.token_address===""||e.token_address==="native"||e.token_address==="0x0000000000000000000000000000000000000000"}function pu(e,t){if(!e||e==="0")return"0";const r=BigInt(e),n=BigInt(10**t),o=r/n,a=r%n;if(a===BigInt(0))return o.toString();let l=a.toString().padStart(t,"0");return l=l.replace(/0+$/,""),l.length>6&&(l=l.slice(0,6)),`${o}.${l}`}function xu(e){return`0x70a08231000000000000000000000000${e.toLowerCase().replace("0x","")}`}async function io(e,t){const r=await fetch(e,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!r.ok)throw new Error(`RPC request failed: ${r.status}`);return r.json()}async function vu(e,t){const n=await io(e,{jsonrpc:"2.0",method:"eth_getBalance",params:[t,"latest"],id:1});if(n.error)throw new Error(`RPC error: ${n.error.message}`);const o=n.result||"0x0";return BigInt(o).toString()}async function gu(e,t,r){const n={jsonrpc:"2.0",method:"eth_call",params:[{to:t,data:xu(r)},"latest"],id:1},o=await io(e,n);if(o.error)throw new Error(`RPC error: ${o.error.message}`);const a=o.result||"0x0";return BigInt(a).toString()}async function bu(e,t){const r=Mt(e.network_id),n=Pr(e);let o;return n?o=await vu(r,t):o=await gu(r,e.token_address,t),{rawBalance:o,isNative:n}}async function yu(e,t){const n=`${mu(e.network_id)}/address/${t}`,o=await fetch(n);if(!o.ok)throw new Error(`Mempool API request failed: ${o.status}`);const a=await o.json(),l=a.chain_stats.funded_txo_sum-a.chain_stats.spent_txo_sum,i=a.mempool_stats.funded_txo_sum-a.mempool_stats.spent_txo_sum;return{rawBalance:(l+i).toString(),isNative:!0}}async function lo(e,t){const r=await fetch(e,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!r.ok)throw new Error(`RPC request failed: ${r.status}`);return r.json()}async function wu(e,t){const n=await lo(e,{jsonrpc:"2.0",method:"getBalance",params:[t],id:1});if(n.error)throw new Error(`RPC error: ${n.error.message}`);return(n.result?.value||0).toString()}async function Cu(e,t,r){const o=await lo(e,{jsonrpc:"2.0",method:"getTokenAccountsByOwner",params:[r,{mint:t},{encoding:"jsonParsed"}],id:1});if(o.error)throw new Error(`RPC error: ${o.error.message}`);const a=o.result?.value||[];let l=BigInt(0);for(const i of a){const c=i.account.data.parsed.info.tokenAmount.amount;l+=BigInt(c)}return l.toString()}async function ku(e,t){const r=Mt(e.network_id),n=Pr(e);let o;return n?o=await wu(r,t):o=await Cu(r,e.token_address,t),{rawBalance:o,isNative:n}}function ju(e,t){if(!t)return!1;switch(t){case K.EVM:return e.isEvmConnected;case K.BTC:return e.isBtcConnected;case K.SOLANA:return e.isSolanaConnected;default:return!1}}function Su(e){if(!e)return"";switch(e){case K.EVM:return"EVM";case K.BTC:return"Bitcoin";case K.SOLANA:return"Solana";default:return e}}function Eu(e,t){if(!t)return null;switch(t){case K.EVM:return e.evmAddress;case K.BTC:return e.btcAddress;case K.SOLANA:return e.solanaAddress;default:return null}}async function co({provider:e,address:t,chainId:r,chainName:n="Unknown"}){let o=t;if(!o){const l=await e.request({method:"eth_accounts"});if(!l||l.length===0)throw new Error("No accounts found. Please connect your wallet first.");o=l[0]}let a=r;if(a===void 0){const l=await e.request({method:"eth_chainId"});a=parseInt(l,16)}return uo({provider:e,address:o,chainId:a,chainName:n})}function uo({provider:e,address:t,chainId:r,chainName:n="Unknown"}){return{address:t,publicKey:t,chain:{id:r,name:n,type:"EVM"},sendTransaction:async i=>{const c=i;return await e.request({method:"eth_sendTransaction",params:[{from:t,to:c.to,value:c.value?`0x${c.value.toString(16)}`:void 0,data:c.data}]})},getChainId:async()=>{const i=await e.request({method:"eth_chainId"});return parseInt(i,16)},switchChain:async i=>{try{await e.request({method:"wallet_switchEthereumChain",params:[{chainId:`0x${i.toString(16)}`}]})}catch(c){throw c.code===4902?new Error(`Chain ${i} not found in wallet. Please add it first.`):c}}}}const Nu=co;async function Tu(e,t){const r=e.token_address||"native";let n;switch(e.network_type){case K.BTC:n=await yu(e,t);break;case K.SOLANA:n=await ku(e,t);break;case K.EVM:default:n=await bu(e,t)}return{tokenId:r,networkId:e.network_id,walletAddress:t,rawBalance:n.rawBalance,formattedBalance:pu(n.rawBalance,e.token_decimals),updatedAt:Date.now()}}const Ru=30*1e3,Ou=15*1e3;function _u(e,t){return!e||!t?["balance"]:["balance",e.network_id,e.token_address||"native",t]}function fo({token:e,walletAddress:t,enabled:r=!0,polling:n=!1,pollingInterval:o=Ou}){const a=r&&!!e&&!!t,{data:l,isLoading:i,isFetching:c,error:u,refetch:d}=Qe({queryKey:_u(e,t),queryFn:()=>Tu(e,t),enabled:a,staleTime:Ru,retry:1,refetchOnWindowFocus:!1,refetchInterval:n?o:!1});return{balance:l,formattedBalance:l?.formattedBalance||"0",isLoading:a&&i,isFetching:a&&c,error:u,refetch:d}}function Au({token:e,isSelected:t,isDisabled:r,onSelect:n}){const o=Ze(),a=Eu(o,e.network_type),{formattedBalance:l,isLoading:i}=fo({token:e,walletAddress:a,enabled:!!a}),c=!!a;return s.jsxs("button",{onClick:n,disabled:r,className:`flex w-full items-center gap-3 rounded-lg p-2 transition-colors ${t?"bg-white/5 text-[var(--optimex-text)]":r?"cursor-not-allowed opacity-50":"hover:bg-white/5"}`,children:[s.jsx(Le,{token:e}),s.jsxs("div",{className:"flex-1 text-left",children:[s.jsx("div",{className:"text-sm text-[var(--optimex-text-secondary)]",children:e.token_name}),s.jsxs("div",{className:"flex items-center gap-2",children:[c&&s.jsx("span",{className:"text-sm font-medium text-[var(--optimex-text)]",children:i?s.jsx("span",{className:"inline-block h-4 w-12 animate-pulse rounded bg-white/10"}):l}),s.jsx("span",{className:"font-medium text-[var(--optimex-text)]",children:e.token_symbol})]})]}),t&&s.jsx(br,{className:"h-5 w-5 text-[var(--optimex-primary)]"})]})}function Pu({tokens:e,selectedTokenId:t,disabledTokenId:r,disabledTokenIds:n,isLoading:o,emptyMessage:a="No tokens available",onSelect:l}){return o?s.jsx("div",{className:"flex-1 overflow-y-auto p-2",children:s.jsx("div",{className:"flex items-center justify-center py-8",children:s.jsx("div",{className:"h-8 w-8 animate-spin rounded-full border-2 border-[var(--optimex-primary)] border-t-transparent"})})}):e.length===0?s.jsx("div",{className:"flex-1 overflow-y-auto p-2",children:s.jsx("div",{className:"py-8 text-center text-[var(--optimex-text-secondary)]",children:a})}):s.jsx("div",{className:"flex-1 overflow-y-auto p-2",children:s.jsx("div",{className:"space-y-1",children:e.map(i=>{const c=r===i.token_id||n?.has(i.token_id)===!0;return s.jsx(Au,{token:i,isSelected:t===i.token_id,isDisabled:c,onSelect:()=>l(i)},i.token_id)})})})}function Mu({isOpen:e,onClose:t,onSelect:r,tokensData:n,isLoading:o,selectedToken:a,disabledTokenId:l,disabledTokenIds:i,tokens:c,emptyMessage:u,title:d="Select Token",filterNetworkType:f}){const[m,b]=p.useState(""),[v,h]=p.useState(null),[y,g]=p.useState(null),S=p.useMemo(()=>n?.supported_networks?f?n.supported_networks.filter(M=>M.type===f):n.supported_networks:[],[n,f]),k=c??n?.tokens,w=p.useMemo(()=>k?k.filter(M=>{if(f&&M.network_type!==f||v&&M.network_id!==v)return!1;if(m){const $=(W,V)=>W.toLowerCase().includes(V.toLowerCase()),_=m.toLowerCase();return $(M.token_symbol,_)||$(M.token_name,_)||$(M.token_address,_)}return!0}):[],[k,m,v,f]),N=p.useMemo(()=>{if(!k)return[];const M=new Map;return k.forEach($=>{f&&$.network_type!==f||v&&$.network_id!==v||M.has($.token_symbol)||M.set($.token_symbol,$)}),Array.from(M.values())},[k,f,v]),A=p.useMemo(()=>y?w.filter(M=>M.token_symbol===y):w,[w,y]),C=()=>{b(""),h(null),g(null)},j=M=>{r(M),t(),C()},O=M=>{M||(t(),C())},L=M=>{h(M),g(null)};return s.jsx(_r,{open:e,onOpenChange:O,title:d,className:"h-full md:h-[70vh] max-h-[600px] w-full max-w-2xl",children:s.jsxs("div",{className:"flex h-full flex-col",children:[s.jsx(cu,{value:m,onChange:b}),s.jsxs("div",{className:"flex flex-1 overflow-hidden",children:[s.jsx(uu,{networks:S,selectedNetwork:v,onSelectNetwork:L}),s.jsxs("div",{className:"flex flex-1 flex-col overflow-hidden pl-2",children:[s.jsx(fu,{tokens:N,selectedSymbol:y,onSelectSymbol:g}),s.jsx(Pu,{tokens:A,selectedTokenId:a?.token_id,disabledTokenId:l,disabledTokenIds:i,isLoading:o,emptyMessage:m?"No tokens found":u??"No tokens available",onSelect:j})]})]})]})})}function Sn({token:e,amount:t,label:r,isEstimated:n=!1,highlight:o=!1,usdValue:a="$0.00"}){return s.jsx("div",{className:`p-4 rounded-xl border transition-all duration-200 ${o?"bg-zinc-900/50 border-[var(--optimex-primary)]/20 shadow-[0_0_15px_rgba(235,98,0,0.1)]":"bg-zinc-900/50 border-white/5"}`,children:s.jsxs("div",{className:"flex items-center gap-4",children:[s.jsx("div",{className:"size-12 flex items-center justify-center ",children:s.jsx(Le,{token:e,size:"lg"})}),s.jsxs("div",{className:"flex flex-col gap-0.5 min-w-0",children:[s.jsxs("p",{className:`text-xs font-medium uppercase tracking-wider ${o?"text-[var(--optimex-primary)]":"text-zinc-500"}`,children:[r," ",n&&"(Est.)"]}),s.jsx("p",{className:"text-white text-sm font-semibold truncate",children:e.token_symbol}),s.jsx("p",{className:"text-zinc-500 text-xs truncate",children:e.network_name})]}),s.jsxs("div",{className:"flex flex-col items-end gap-0.5 ml-auto shrink-0",children:[s.jsx("p",{className:"text-white text-lg font-bold",children:n?`~${t}`:t}),s.jsx("p",{className:"text-zinc-400 text-xs",children:a})]})]})})}function Iu({fromToken:e,toToken:t,fromAmount:r,toAmount:n,fromUsdValue:o="$0.00",toUsdValue:a="$0.00"}){return s.jsxs("div",{className:"relative flex flex-col gap-2",children:[s.jsx(Sn,{token:e,amount:r,label:"You Pay",usdValue:o}),s.jsx(ao,{onClick:()=>{},disabled:!0}),s.jsx(Sn,{token:t,amount:n,label:"You Receive",usdValue:a})]})}function Jt({label:e,value:t,borderTop:r}){return s.jsxs("div",{className:`flex justify-between items-center text-sm ${r?"pt-2 mt-2 border-t border-white/5":""}`,children:[s.jsx("span",{className:"text-zinc-500",children:e}),s.jsx("div",{className:"flex items-center gap-1 text-white font-medium",children:t})]})}function Du({minReceived:e,estimatedTime:t,slippage:r,networkFee:n="Included"}){return s.jsxs("div",{className:"bg-[var(--optimex-surface)] rounded-xl p-4 border border-white/5 space-y-3",children:[s.jsx(Jt,{label:"Min. Received",value:e}),s.jsx(Jt,{label:"Estimated Time",value:s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("div",{className:"size-2 bg-[var(--optimex-primary)] rounded-full animate-pulse shadow-[0_0_8px_rgba(235,98,0,0.8)]"}),s.jsx("span",{children:t})]})}),s.jsx(Jt,{label:"Slippage Tolerance",value:r})]})}const Lu=3e4,Fu=6e4;function Ot({symbol:e,enabled:t=!0}){const r=lt(),{data:n,isLoading:o,isError:a}=Qe({queryKey:["tokenPrice",e],queryFn:async()=>{if(!e)throw new Error("Symbol is required");return(await Ge(r.apiBaseUrl).getTokenPrice(e)).current_price},enabled:t&&!!e,staleTime:Lu,refetchInterval:Fu,retry:2});return{price:n??null,isLoading:o,isError:a,calculateUsdValue:i=>{if(!n||!i||isNaN(parseFloat(i)))return"$0.00";const c=parseFloat(i);if(c===0)return"$0.00";const u=c*n;return u<.01?"<$0.01":u<1?`$${u.toFixed(4)}`:u<1e3?`$${u.toFixed(2)}`:u<1e6?`$${(u/1e3).toFixed(2)}K`:`$${(u/1e6).toFixed(2)}M`}}}function $u({isOpen:e,onClose:t,onConfirm:r,fromToken:n,toToken:o,amountIn:a,quote:l,slippage:i,stage:c,receivingAddress:u=""}){const d=c!=="idle"&&c!=="confirming"&&c!=="error"&&c!=="submitted",f=c==="submitted",m=c==="error",b=Ne(l.min_amount_out,o.token_decimals),{calculateUsdValue:v}=Ot({symbol:n.token_symbol,enabled:e}),{calculateUsdValue:h}=Ot({symbol:o.token_symbol,enabled:e}),y=v(a),g=h(b),S=w=>{!w&&!d&&t()},k=f?"Swap Complete":m?"Swap Failed":"Review Swap";return s.jsxs(_r,{open:e,onOpenChange:S,title:k,showCloseButton:!d,className:"w-full max-w-md",children:[s.jsxs(Wc,{className:"space-y-3",children:[s.jsx(Iu,{fromToken:n,toToken:o,fromAmount:a,toAmount:b,fromUsdValue:y,toUsdValue:g}),s.jsx(Du,{minReceived:`${b} ${o.token_symbol}`,estimatedTime:"~10 minutes",slippage:`${i}%`}),u&&s.jsx("div",{className:"bg-[var(--optimex-surface)] rounded-xl px-2 border border-white/5",children:s.jsx(Va,{icon:Hn,label:"Receiving Address",address:u})})]}),s.jsx(Vc,{children:s.jsx(Mi,{state:d?"processing":f?"success":m?"error":"idle",onConfirm:f?t:r,confirmText:"Confirm Swap"})})]})}function Bu({swap:e}){const{tokens:t,modals:r,tokenSelect:n,actions:o,input:a,quote:l,execution:i}=e;return s.jsxs(s.Fragment,{children:[r.tokenSelect.isOpen&&s.jsx(Mu,{isOpen:r.tokenSelect.isOpen,onClose:r.tokenSelect.close,onSelect:o.selectToken,tokensData:t.data,isLoading:!1,selectedToken:n.type==="from"?t.from:t.to,disabledTokenId:n.type==="from"?t.to?.token_id:t.from?.token_id,tokens:n.type==="to"?t.availableTo:t.all,emptyMessage:n.type==="to"?"No available pairs for selected source token":void 0,title:n.type==="from"?"Select Source Token":"Select Destination Token"}),l.data&&t.from&&t.to&&r.confirm.isOpen&&s.jsx($u,{isOpen:r.confirm.isOpen,onClose:o.closeConfirmModal,onConfirm:o.confirmSwap,fromToken:t.from,toToken:t.to,amountIn:a.amount,quote:l.data,slippage:a.slippage,stage:i.stage,txHash:i.txHash,error:i.error,receivingAddress:e.addresses.receiving})]})}function Mr({status:e}){const t={pending:{icon:Un,text:"Processing",bgClass:"bg-yellow-500/10",textClass:"text-yellow-500",animate:!0},success:{icon:br,text:"Completed",bgClass:"bg-green-500/10",textClass:"text-green-500",animate:!1},failed:{icon:Oa,text:"Failed",bgClass:"bg-red-500/10",textClass:"text-red-500",animate:!1}},{icon:r,text:n,bgClass:o,textClass:a,animate:l}=t[e];return s.jsxs("div",{className:`flex items-center gap-1.5 px-2.5 py-1 rounded-full ${o}`,children:[s.jsx(r,{className:`w-4 h-4 ${a} ${l?"animate-spin":""}`}),s.jsx("span",{className:`text-xs font-medium ${a}`,children:n})]})}function zu({onClose:e}){return s.jsxs("div",{className:"bg-[var(--optimex-surface)] border border-[var(--optimex-border)] rounded-xl p-4 mt-3",children:[s.jsxs("div",{className:"flex items-center justify-between mb-3",children:[s.jsx("span",{className:"text-xs text-[var(--optimex-text-secondary)] font-medium",children:"Recent Trade"}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(Mr,{status:"pending"}),e&&s.jsx("button",{onClick:e,className:"text-[var(--optimex-text-secondary)] hover:text-[var(--optimex-text)] transition-colors cursor-pointer","aria-label":"Close",children:s.jsx(Ie,{className:"w-4 h-4"})})]})]}),s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("div",{className:"w-6 h-6 rounded-full bg-[var(--optimex-border)] animate-pulse"}),s.jsxs("div",{className:"flex flex-col gap-1",children:[s.jsx("div",{className:"w-16 h-4 bg-[var(--optimex-border)] rounded animate-pulse"}),s.jsx("div",{className:"w-10 h-3 bg-[var(--optimex-border)] rounded animate-pulse"})]})]}),s.jsx("div",{className:"flex items-center px-3",children:s.jsx("svg",{className:"w-5 h-5 text-[var(--optimex-text-secondary)]",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,children:s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M14 5l7 7m0 0l-7 7m7-7H3"})})}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsxs("div",{className:"flex flex-col items-end gap-1",children:[s.jsx("div",{className:"w-16 h-4 bg-[var(--optimex-border)] rounded animate-pulse"}),s.jsx("div",{className:"w-10 h-3 bg-[var(--optimex-border)] rounded animate-pulse"})]}),s.jsx("div",{className:"w-6 h-6 rounded-full bg-[var(--optimex-border)] animate-pulse"})]})]})]})}function Wu({trade:e,status:t,isLoading:r,onClose:n}){if(r||!e)return s.jsx(zu,{onClose:n});const o=e.from_token,a=e.to_token,l=Ne(e.amount_in,o.token_decimals),i=Ne(e.min_amount_out,a.token_decimals);return s.jsxs("div",{className:"bg-[var(--optimex-surface)] border border-[var(--optimex-border)] rounded-xl p-4 mt-3",children:[s.jsxs("div",{className:"flex items-center justify-between mb-3",children:[s.jsx("span",{className:"text-xs text-[var(--optimex-text-secondary)] font-medium",children:"Recent Trade"}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(Mr,{status:t}),n&&s.jsx("button",{onClick:n,className:"text-[var(--optimex-text-secondary)] hover:text-[var(--optimex-text)] transition-colors cursor-pointer","aria-label":"Close",children:s.jsx(Ie,{className:"w-4 h-4"})})]})]}),s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(Le,{token:o,size:"sm",showNetworkBadge:!1}),s.jsxs("div",{className:"flex flex-col",children:[s.jsx("span",{className:"text-sm font-semibold text-[var(--optimex-text)]",children:l}),s.jsx("span",{className:"text-xs text-[var(--optimex-text-secondary)]",children:o.token_symbol})]})]}),s.jsx("div",{className:"flex items-center px-3",children:s.jsx("svg",{className:"w-5 h-5 text-[var(--optimex-text-secondary)]",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,children:s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M14 5l7 7m0 0l-7 7m7-7H3"})})}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsxs("div",{className:"flex flex-col items-end",children:[s.jsx("span",{className:"text-sm font-semibold text-[var(--optimex-text)]",children:i}),s.jsx("span",{className:"text-xs text-[var(--optimex-text-secondary)]",children:a.token_symbol})]}),s.jsx(Le,{token:a,size:"sm",showNetworkBadge:!1})]})]})]})}const Vu=1e4;function Uu({apiBaseUrl:e,walletAddresses:t,enabled:r=!0,limit:n=20}){const{data:o,isLoading:a,isError:l,refetch:i}=Qe({queryKey:["trades",t,n],queryFn:async()=>Ge(e).listTrades({from_user_address:t,limit:n}),enabled:r&&!!t?.length,refetchInterval:Vu,retry:2,retryDelay:2e3});return{trades:o??[],isLoading:a,isError:l,refetch:i}}function Hu(e){if(!e)return"pending";switch(e.toLowerCase()){case"success":case"completed":return"success";case"failed":case"refunded":case"expired":return"failed";default:return"pending"}}function qu({trade:e}){const t=e.from_token,r=e.to_token,n=Hu(e.state),o=Ne(e.amount_in,t.token_decimals),a=Ne(e.min_amount_out,r.token_decimals);return s.jsxs("div",{className:"flex items-center justify-between p-3 rounded-lg bg-[var(--optimex-surface)] border border-[var(--optimex-border)]",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(Le,{token:t,size:"sm",showNetworkBadge:!1}),s.jsxs("div",{className:"flex flex-col",children:[s.jsx("span",{className:"text-sm font-semibold text-[var(--optimex-text)]",children:o}),s.jsx("span",{className:"text-xs text-[var(--optimex-text-secondary)]",children:t.token_symbol})]})]}),s.jsx("div",{className:"flex items-center px-2",children:s.jsx("svg",{className:"w-4 h-4 text-[var(--optimex-text-secondary)]",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,children:s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M14 5l7 7m0 0l-7 7m7-7H3"})})}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsxs("div",{className:"flex flex-col items-end",children:[s.jsx("span",{className:"text-sm font-semibold text-[var(--optimex-text)]",children:a}),s.jsx("span",{className:"text-xs text-[var(--optimex-text-secondary)]",children:r.token_symbol})]}),s.jsx(Le,{token:r,size:"sm",showNetworkBadge:!1})]}),s.jsx("div",{className:"ml-3",children:s.jsx(Mr,{status:n})})]})}function er(){return s.jsxs("div",{className:"flex items-center justify-between p-3 rounded-lg bg-[var(--optimex-surface)] border border-[var(--optimex-border)]",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("div",{className:"w-6 h-6 rounded-full bg-[var(--optimex-border)] animate-pulse"}),s.jsxs("div",{className:"flex flex-col gap-1",children:[s.jsx("div",{className:"w-14 h-4 bg-[var(--optimex-border)] rounded animate-pulse"}),s.jsx("div",{className:"w-8 h-3 bg-[var(--optimex-border)] rounded animate-pulse"})]})]}),s.jsx("div",{className:"w-4 h-4 bg-[var(--optimex-border)] rounded animate-pulse"}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsxs("div",{className:"flex flex-col items-end gap-1",children:[s.jsx("div",{className:"w-14 h-4 bg-[var(--optimex-border)] rounded animate-pulse"}),s.jsx("div",{className:"w-8 h-3 bg-[var(--optimex-border)] rounded animate-pulse"})]}),s.jsx("div",{className:"w-6 h-6 rounded-full bg-[var(--optimex-border)] animate-pulse"})]}),s.jsx("div",{className:"ml-3 w-20 h-6 bg-[var(--optimex-border)] rounded-full animate-pulse"})]})}function Qu(){return s.jsxs("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[s.jsx("div",{className:"w-16 h-16 mb-4 rounded-full bg-[var(--optimex-surface)] flex items-center justify-center",children:s.jsx("svg",{className:"w-8 h-8 text-[var(--optimex-text-secondary)]",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:1.5,children:s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 6v6h4.5m4.5 0a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"})})}),s.jsx("p",{className:"text-sm text-[var(--optimex-text-secondary)]",children:"No trade history yet"})]})}function Gu({open:e,onOpenChange:t,evmAddress:r,btcAddress:n,solanaAddress:o}){const a=lt(),l=[r,n,o].filter(u=>!!u),{trades:i,isLoading:c}=Uu({apiBaseUrl:a.apiBaseUrl,walletAddresses:l.length>0?l:void 0,enabled:e&&l.length>0});return s.jsx(_r,{open:e,onOpenChange:t,title:"Trade History",className:"w-full max-w-md",children:s.jsxs("div",{className:"p-4 space-y-3 max-h-[60vh] overflow-y-auto",children:[c?s.jsxs(s.Fragment,{children:[s.jsx(er,{}),s.jsx(er,{}),s.jsx(er,{})]}):i.length===0?s.jsx(Qu,{}):i.map(u=>s.jsx(qu,{trade:u},u.trade_id)),!c&&i.length>0&&s.jsxs("div",{className:"flex items-center justify-center gap-2 pt-2 text-xs text-[var(--optimex-text-secondary)]",children:[s.jsx(Un,{className:"w-3 h-3 animate-spin"}),s.jsx("span",{children:"Auto-refreshing"})]})]})})}function Ku(e,t){return p.useMemo(()=>{const r=e.trim();if(!t||!r)return{isValid:!r,error:void 0};const n=gr(r,t.network_type,t.network_id);return{isValid:n.isValid,error:n.isValid?void 0:n.error}},[e,t])}function Yu(){const[e,t]=p.useState(null),[r,n]=p.useState(!1),[o,a]=p.useState(!1),l=p.useCallback(()=>t("from"),[]),i=p.useCallback(()=>t("to"),[]),c=p.useCallback(()=>t(null),[]),u=p.useCallback(()=>n(!0),[]),d=p.useCallback(()=>n(!1),[]),f=p.useCallback(()=>a(b=>!b),[]),m=p.useCallback(()=>a(!1),[]);return{tokenSelect:{isOpen:e!==null,type:e,openFrom:l,openTo:i,close:c},confirm:{isOpen:r,open:u,close:d},settings:{isOpen:o,toggle:f,close:m}}}function Zu({fromToken:e,toToken:t,amount:r,fromUserAddress:n,toUserAddress:o,userRefundPubkey:a,slippage:l,config:i}){return p.useMemo(()=>{const c=o.trim(),u=i.affiliateAddress&&i.affiliateFee?[{provider:i.affiliateProvider??"optimex-widget",rate:String(i.affiliateFee),receiver:i.affiliateAddress,network:"ethereum"}]:void 0,d=Math.round(l*100);return{from_token:e,to_token:t,amount:r,from_user_address:n,to_user_address:c||null,user_refund_pubkey:a,slippage:String(d),affiliate_fee_bps:i.affiliateFee?String(i.affiliateFee):void 0,affiliate_info:u,trade_timeout:i.tradeTimeout,script_timeout:i.scriptTimeout}},[e,t,r,n,o,a,l,i.affiliateFee,i.affiliateAddress,i.affiliateProvider,i.tradeTimeout,i.scriptTimeout])}function Xu(e,t){return p.useMemo(()=>{if(!e||!t)return{walletAccount:void 0,evmWalletAccount:void 0};switch(e.network_type){case K.EVM:return{walletAccount:t.evm,evmWalletAccount:t.evm};case K.BTC:return{walletAccount:t.btc,evmWalletAccount:void 0};case K.SOLANA:return{walletAccount:t.solana,evmWalletAccount:void 0};default:return{walletAccount:void 0,evmWalletAccount:void 0}}},[e,t])}const En={BTC:1,EVM:2,Solana:3};function Ju(e){const{tokens:t,pairs:r,selectedFromToken:n}=e,o=p.useMemo(()=>{const b=new Map;if(!r)return b;for(const v of r){if(!v.is_active)continue;const h=b.get(v.from_token_id);h?h.add(v.to_token_id):b.set(v.from_token_id,new Set([v.to_token_id]))}return b},[r]),a=p.useMemo(()=>t??[],[t]),l=p.useMemo(()=>{const b=new Set;for(const v of a){const h=o.get(v.token_id);(!h||h.size===0)&&b.add(v.token_id)}return b},[a,o]),i=p.useMemo(()=>{if(!n)return[];const b=o.get(n.token_id);return!b||b.size===0?[]:a.filter(v=>b.has(v.token_id))},[n,o,a]),c=p.useCallback((b,v)=>o.get(b)?.has(v)??!1,[o]),u=p.useCallback(b=>(o.get(b)?.size??0)>0,[o]),d=p.useCallback(b=>[...b].sort((v,h)=>{const y=En[v.network_type]??99,g=En[h.network_type]??99;return y-g}),[]),f=p.useCallback(b=>{const v=o.get(b.token_id);if(!v||v.size===0)return null;const h=a.filter(g=>v.has(g.token_id));return h.length===0?null:d(h)[0]??null},[o,a,d]),m=p.useCallback(()=>{if(a.length===0)return null;const b=d(a);for(const v of b){const h=f(v);if(h)return{fromToken:v,toToken:h}}return null},[a,d,f]);return{allTokens:a,tokensWithoutPairs:l,availableToTokens:i,isPairValid:c,findBestToToken:f,hasValidPairs:u,getDefaultPair:m}}function ed(e){if(!e.chain_id||e.network_type!=="EVM")return;const t=parseInt(e.chain_id,10);return isNaN(t)?void 0:t}async function td(e,t){const r=ed(t);if(!r)throw new Error(`Cannot determine chain ID for token: ${t.token_id}`);return await e.getChainId()===r?!1:(await e.switchChain(r),!0)}const rd="0xdd62ed3e",nd="0x095ea7b3",sd="0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff";function mr(e){return e.toLowerCase().replace("0x","").padStart(64,"0")}function od(e){return e.toString(16).padStart(64,"0")}function ad(e){const t=e.startsWith("0x")?e.slice(2):e;return!t||t===""?0n:BigInt("0x"+t)}async function id(e,t,r,n){const o=Mt(e),a=rd+mr(r)+mr(n),i=await(await fetch(o,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({jsonrpc:"2.0",id:1,method:"eth_call",params:[{to:t,data:a},"latest"]})})).json();if(i.error)throw new Error(`Failed to check allowance: ${i.error.message}`);return ad(i.result)}function ld(e,t){const r=t?od(t):sd.slice(2);return`${nd}${mr(e)}${r}`}async function cd(e,t,r,n){const o=ld(r,n);return await e.sendTransaction({to:t,data:o})}async function ud(e,t,r=60,n=2e3){const o=Mt(e);for(let a=0;a<r;a++){const i=await(await fetch(o,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({jsonrpc:"2.0",id:1,method:"eth_getTransactionReceipt",params:[t]})})).json();if(i.error)throw new Error(`RPC error: ${i.error.message}`);if(i.result){const c=i.result;return{status:c.status==="0x1"?"success":"reverted",blockNumber:c.blockNumber,transactionHash:c.transactionHash}}await new Promise(c=>setTimeout(c,n))}throw new Error(`Transaction ${t} not confirmed after ${r} attempts`)}function dd(e){return e?"getChainId"in e&&"switchChain"in e&&typeof e.getChainId=="function"&&typeof e.switchChain=="function":!1}function fd({apiBaseUrl:e,onWalletTx:t,onSubmitTx:r,onError:n}){const[o,a]=p.useState({stage:"idle",txHash:null,tradeId:null,error:null}),l=p.useCallback(()=>{a({stage:"idle",txHash:null,tradeId:null,error:null})},[]),i=p.useCallback(()=>{a(f=>({stage:"idle",txHash:f.txHash,tradeId:f.tradeId,error:null}))},[]),c=p.useCallback((f,m,b)=>{a(v=>({...v,stage:"error",error:f})),n?.({error:f,stage:m,trade_id:b})},[n]),u=p.useCallback(async(f,m,b,v)=>{const h=b.deposit_address;if(!h)throw new Error("Missing deposit address for EVM transaction");a(k=>({...k,stage:"switching_chain"})),await td(f,m);const y=Pr(m);if(!y&&m.token_address&&(a(w=>({...w,stage:"checking_allowance"})),await id(m.network_id,m.token_address,f.address,h)<v)){a(A=>({...A,stage:"approving"}));const w=await cd(f,m.token_address,h,v);if((await ud(m.network_id,w)).status==="reverted")throw new Error("Token approval transaction reverted")}a(k=>({...k,stage:"broadcasting"}));const g={to:h,value:y?v:0n,data:b.payload?b.payload:void 0};return await f.sendTransaction(g)},[]),d=p.useCallback(async({quote:f,fromToken:m,toToken:b,amountIn:v,walletAccount:h,evmWalletAccount:y})=>{const g=Ge(e);try{a({stage:"confirming",txHash:null,tradeId:f.trade_id,error:null});const S=y||h;if(!S)throw new Error("Wallet not available");a(N=>({...N,stage:"signing"}));let k;const w=zn(v,m.token_decimals);if(m.network_type===K.EVM){const N=y||(dd(h)?h:null);if(N)k=await u(N,m,f,w);else{const A=f.deposit_address,C=f.payload?f.payload:void 0;if(!A)throw new Error("Missing deposit address for EVM transaction");a(O=>({...O,stage:"broadcasting"}));const j={to:A,value:w,data:C};k=await S.sendTransaction(j)}}else if(m.network_type===K.BTC){if(!f.deposit_address)throw new Error("Missing deposit address for BTC transaction");a(N=>({...N,stage:"broadcasting"})),k=await S.sendTransaction({toAddress:f.deposit_address,amount:w})}else if(m.network_type===K.SOLANA){if(!f.payload)throw new Error("Missing payload for Solana transaction");a(N=>({...N,stage:"broadcasting"})),k=await S.sendTransaction(f.payload)}else throw new Error(`Unsupported network type: ${m.network_type}`);t?.({trade_id:f.trade_id,tx_hash:k,from_token:m,to_token:b,amount_in:v}),a(N=>({...N,txHash:k,stage:"submitting"}));try{await g.submitTransaction(f.trade_id,k),r?.({trade_id:f.trade_id,tx_hash:k,status:"success"})}catch(N){throw r?.({trade_id:f.trade_id,tx_hash:k,status:"error",error:N.message}),N}return a(N=>({...N,stage:"submitted"})),{tradeId:f.trade_id,txHash:k}}catch(S){const k=o.stage==="approving"?"approval":"wallet_tx";throw c(S,k,f.trade_id),S}},[e,t,r,c,u,o.stage]);return{...o,executeSwap:d,resetState:l,resetStateKeepTradeId:i,isExecuting:o.stage!=="idle"&&o.stage!=="submitted"&&o.stage!=="error"}}function hd({defaultPair:e,isPairValid:t,findBestToToken:r,hasValidPairs:n,defaultSlippage:o=.75,selectingToken:a=null}){const[l,i]=p.useState(null),[c,u]=p.useState(null),[d,f]=p.useState(""),[m,b]=p.useState(""),[v,h]=p.useState(o),y=l??e?.fromToken??null,g=c??e?.toToken??null,S=p.useCallback(()=>{y&&g&&t(g.token_id,y.token_id)&&(i(g),u(y),f(""))},[y,g,t]),k=p.useCallback(w=>{if(a==="from"){if(!n(w.token_id))return!1;if(w.token_id===g?.token_id)u(y);else if(g&&!t(w.token_id,g.token_id)){const N=r(w);u(N)}return i(w),!0}else if(a==="to")return w.token_id===y?.token_id&&i(g),u(w),!0;return!1},[a,y,g,t,r,n]);return{fromToken:y,toToken:g,handleTokenSelect:k,handleSwapDirection:S,amount:d,setAmount:f,receivingAddress:m,setReceivingAddress:b,slippage:v,setSlippage:h}}function md({fromToken:e,toToken:t}){const r=Ze();return p.useMemo(()=>{const n=r.evmAddress,o=r.btcAddress,a=r.btcPublicKey;let l=null,i=null;return e?.network_type===K.EVM?(l=n,i=n):e?.network_type===K.BTC&&(l=o,i=a),{fromUserAddress:l,userRefundPubkey:i}},[r.evmAddress,r.btcAddress,r.btcPublicKey,e,t])}function pd({fromToken:e,toToken:t,amount:r,quote:n,isLoadingQuote:o,isFetchingQuote:a,receivingAddress:l,onConnectWallet:i,onSwap:c}){const u=Ze();return p.useMemo(()=>{if(!ju(u,e?.network_type)){const m=Su(e?.network_type);return{text:m?`Connect ${m} Wallet`:"Connect Wallet",disabled:!1,action:i}}return!e||!t?{text:"Select Tokens",disabled:!0,action:void 0}:!r||parseFloat(r)<=0?{text:"Enter Amount",disabled:!0,action:void 0}:l.trim()?gr(l,t.network_type,t.network_id).isValid?o||a?{text:"Getting Quote...",disabled:!0,action:void 0}:n?{text:"Review",disabled:!1,action:c}:{text:"Unable to Quote",disabled:!0,action:void 0}:{text:"Enter Receiving Address",disabled:!0,action:void 0}:{text:"Enter Receiving Address",disabled:!0,action:void 0}},[u.isEvmConnected,u.isBtcConnected,u.isSolanaConnected,e,t,r,o,a,n,i,c,l])}function xd({tokens:e,defaultFromToken:t,defaultToToken:r,isPairValid:n}){return p.useMemo(()=>{if(!t||!r||!e)return null;const o=e.find(l=>l.token_id===t),a=e.find(l=>l.token_id===r);return!o||!a?null:n(o.token_id,a.token_id)?{fromToken:o,toToken:a}:null},[e,t,r,n])}function vd(){const e=Ze(),t=lt(),r=Yu(),{tokensData:n}=eu(),o=n.tokens,a=n.pairs,{allTokens:l,tokensWithoutPairs:i,isPairValid:c,findBestToToken:u,hasValidPairs:d,getDefaultPair:f}=Ju({tokens:o,pairs:a,selectedFromToken:null}),b=xd({tokens:o,defaultFromToken:t.defaultFromToken,defaultToToken:t.defaultToToken,isPairValid:c})??f(),{fromToken:v,toToken:h,handleTokenSelect:y,handleSwapDirection:g,amount:S,setAmount:k,receivingAddress:w,setReceivingAddress:N,slippage:A,setSlippage:C}=hd({defaultPair:b,isPairValid:c,findBestToToken:u,hasValidPairs:d,defaultSlippage:t.defaultSlippage,selectingToken:r.tokenSelect.type}),j=p.useMemo(()=>v?l.filter(F=>c(v.token_id,F.token_id)):[],[v,l,c]),O=Ku(w,h),{fromUserAddress:L,userRefundPubkey:M}=md({fromToken:v,toToken:h}),$=Zu({fromToken:v,toToken:h,amount:S,fromUserAddress:L,toUserAddress:w,userRefundPubkey:M,slippage:A,config:{affiliateFee:t.affiliateFee,affiliateAddress:t.affiliateAddress,affiliateProvider:t.affiliateProvider,tradeTimeout:t.tradeTimeout,scriptTimeout:t.scriptTimeout}}),_=!!v&&!!h&&parseFloat(S)>0&&!!w.trim()&&!r.confirm.isOpen,{data:W,isLoading:V,isFetching:Q,refetch:U}=Ea(t.apiBaseUrl,{...$,enabled:_,onQuote:t.callbacks?.onQuote}),E=fd({apiBaseUrl:t.apiBaseUrl,onWalletTx:t.callbacks?.onWalletTx,onSubmitTx:t.callbacks?.onSubmitTx,onError:t.callbacks?.onError}),{walletAccount:ne,evmWalletAccount:ie}=Xu(v,e.externalWalletClient??void 0),Te=p.useCallback(()=>{e.isExternalWallet?e.onRequestWallet?.(v?.network_id??""):e.openConnectModal?.()},[e,v?.network_id]),pe=p.useCallback(()=>{!W||!v||!h||(E.resetState(),r.confirm.open())},[W,v,h,r.confirm,E]),H=p.useCallback((F=!1)=>{E.isExecuting||(r.confirm.close(),F&&E.resetStateKeepTradeId())},[E,r.confirm]),Z=p.useCallback(async()=>{if(!(!W||!v||!h))try{const{txHash:F}=await E.executeSwap({quote:W,fromToken:v,toToken:h,amountIn:S,walletAccount:ne,evmWalletAccount:ie});H(!!F),k(""),N("")}catch(F){console.error("Swap failed:",F)}},[W,v,h,S,ne,ie,E,H,k,N]),de=p.useCallback(F=>{y(F)&&r.tokenSelect.close()},[y,r.tokenSelect]),be=pd({fromToken:v,toToken:h,amount:S,quote:W,isLoadingQuote:V,isFetchingQuote:Q,receivingAddress:w,onConnectWallet:Te,onSwap:pe});return{tokens:{from:v,to:h,all:l,availableTo:j,withoutPairs:i,data:n},input:{amount:S,setAmount:k,receivingAddress:w,setReceivingAddress:N,slippage:A,setSlippage:C},quote:{data:W,isLoading:V,isFetching:Q,refetch:U},validation:{address:O},buttonState:be,modals:r,tokenSelect:{type:r.tokenSelect.type},actions:{selectToken:de,swapDirection:g,connectWallet:Te,openSwapConfirm:pe,closeConfirmModal:H,confirmSwap:Z},execution:{stage:E.stage,txHash:E.txHash,tradeId:E.tradeId,error:E.error,isExecuting:E.isExecuting},wallet:e,addresses:{sending:L,receiving:w}}}const gd=5e3;function Nn(e){if(!e)return"pending";switch(e.toLowerCase()){case"success":case"completed":return"success";case"failed":case"refunded":case"expired":return"failed";default:return"pending"}}function bd({apiBaseUrl:e,tradeId:t}){const{data:r,isLoading:n}=Qe({queryKey:["trade",t],queryFn:async()=>Ge(e).getTrade(t),enabled:!!t,refetchInterval:o=>{const a=o.state.data;return a&&Nn(a.state)==="success"?!1:gd},retry:!0,retryDelay:2e3});return{trade:r??null,status:Nn(r?.state),isLoading:n}}function ho(){const e=vd(),t=lt(),{tokens:r,input:n,quote:o,modals:a,buttonState:l,validation:i,actions:c,addresses:u,wallet:d,execution:f}=e,[m,b]=p.useState(!1),{trade:v,status:h,isLoading:y}=bd({apiBaseUrl:t.apiBaseUrl,tradeId:f.tradeId}),{formattedBalance:g}=fo({token:r.from,walletAddress:u.sending,enabled:!!r.from&&!!u.sending,polling:!0}),{calculateUsdValue:S}=Ot({symbol:r.from?.token_symbol,enabled:!!r.from}),{calculateUsdValue:k}=Ot({symbol:r.to?.token_symbol,enabled:!!r.to}),w=d.isConnected,N=S(n.amount),A=o.data?k(Ne(o.data.min_amount_out,r.to?.token_decimals||18)):"$0.00";return s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"flex flex-col gap-4 w-full min-w-0",children:[s.jsx(ou,{headerLeft:t.headerLeft,slippage:n.slippage,onSlippageChange:n.setSlippage,isSettingsOpen:a.settings.isOpen,onSettingsToggle:a.settings.toggle,onHistoryClick:()=>b(!0),hideHistory:t.hideHistory||!d.isConnected}),s.jsxs(Ar,{children:[s.jsxs("div",{className:"space-y-2 relative",children:[s.jsx(jn,{token:r.from,value:n.amount,onChange:n.setAmount,onSelectToken:a.tokenSelect.openFrom,balance:g,isWalletConnected:w,usdValue:N}),s.jsx(ao,{onClick:c.swapDirection}),s.jsx(jn,{token:r.to,value:o.data?Ne(o.data.min_amount_out,r.to?.token_decimals||18):"",readOnly:!0,onSelectToken:a.tokenSelect.openTo,isOutput:!0,usdValue:A})]}),s.jsx("div",{className:"mt-4",children:s.jsx(tu,{token:r.to,value:n.receivingAddress,onChange:n.setReceivingAddress,error:i.address.error})}),s.jsx("div",{className:"mt-4",children:s.jsx(iu,{text:l.text,disabled:l.disabled,onClick:l.action})}),o.data&&r.from&&r.to&&s.jsx("div",{className:"mt-4",children:s.jsx(au,{quote:o.data,fromToken:r.from,toToken:r.to,amount:n.amount,slippage:n.slippage,isFetching:o.isFetching,onRefresh:o.refetch})}),s.jsx("div",{className:"mt-4",children:s.jsx(lu,{})}),f.tradeId&&f.txHash&&s.jsx("div",{className:"mt-4",children:s.jsx(Wu,{trade:v,status:h,isLoading:y})})]})]}),s.jsx(Bu,{swap:e}),m&&s.jsx(Gu,{open:m,onOpenChange:b,evmAddress:d.evmAddress??void 0,btcAddress:d.btcAddress??void 0,solanaAddress:d.solanaAddress??void 0})]})}function yd({className:e,connectLabel:t="Connect Wallet",showNetworkBadge:r=!0,onClick:n}){const o=Ze(),a=o.evmAddress||o.btcAddress||o.solanaAddress,l=()=>{if(n){n();return}o.isExternalWallet?o.onRequestWallet?.():o.openConnectModal?.()},i=()=>r?o.isEvmConnected?s.jsx("span",{className:"rounded bg-blue-500/20 px-1.5 py-0.5 text-xs text-blue-400",children:"EVM"}):o.isBtcConnected?s.jsx("span",{className:"rounded bg-orange-500/20 px-1.5 py-0.5 text-xs text-orange-400",children:"BTC"}):o.isSolanaConnected?s.jsx("span",{className:"rounded bg-purple-500/20 px-1.5 py-0.5 text-xs text-purple-400",children:"SOL"}):null:null;return o.isConnected?s.jsxs("div",{className:`flex items-center gap-2 ${e||""}`,children:[i(),s.jsxs("button",{onClick:l,className:"group flex items-center gap-1.5 rounded-[0.25rem] bg-[var(--optimex-surface-hover)] px-3 py-1.5 text-sm text-[var(--optimex-text)] transition-colors hover:bg-[rgba(239,68,68,0.2)]",children:[s.jsx("span",{children:ba(a)}),s.jsx(Pa,{className:"h-3.5 w-3.5 opacity-0 transition-opacity group-hover:opacity-100"})]})]}):s.jsx("button",{onClick:l,className:`rounded-[0.25rem] bg-[var(--optimex-primary)] px-4 py-1.5 text-sm font-medium text-white transition-colors hover:bg-[var(--optimex-primary-hover)] ${e||""}`,children:t})}function mo(){const[e,t]=x.useState(!1);return s.jsxs("div",{children:[s.jsx("button",{onClick:()=>t(!0),style:{padding:"8px 16px",backgroundColor:"#ed6300",color:"white",border:"none",borderRadius:"8px",cursor:"pointer"},children:"Open Dialog Demo"}),s.jsx(jr,{open:e,onOpenChange:t,children:s.jsxs(Sr,{children:[s.jsx(Er,{style:{position:"fixed",inset:0,zIndex:9999,backgroundColor:"rgba(0, 0, 0, 0.6)",backdropFilter:"blur(4px)"}}),s.jsxs(Nr,{style:{position:"fixed",left:"50%",top:"50%",transform:"translate(-50%, -50%)",zIndex:9999,width:"90vw",maxWidth:"500px",maxHeight:"85vh",display:"flex",flexDirection:"column",backgroundColor:"#343b47",borderRadius:"12px",border:"1px solid rgba(255, 255, 255, 0.1)",boxShadow:"0 25px 50px -12px rgba(0, 0, 0, 0.25)",outline:"none"},children:[s.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"16px",borderBottom:"1px solid rgba(255, 255, 255, 0.05)"},children:[s.jsx(Tr,{style:{margin:0,fontSize:"18px",fontWeight:700,color:"#ffffff"},children:"Dialog Demo Title"}),s.jsx(Tt,{style:{padding:"6px",backgroundColor:"transparent",border:"none",borderRadius:"6px",color:"rgba(255, 255, 255, 0.48)",cursor:"pointer"},children:s.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:s.jsx("path",{d:"M18 6L6 18M6 6l12 12"})})})]}),s.jsxs("div",{style:{flex:1,overflow:"auto",padding:"16px"},children:[s.jsx(Rr,{style:{margin:0,fontSize:"14px",color:"rgba(255, 255, 255, 0.48)",lineHeight:1.5},children:"This is a simple dialog demo using Radix Dialog with inline styles. No CSS variables are used here."}),s.jsxs("div",{style:{marginTop:"16px"},children:[s.jsx("p",{style:{color:"#ffffff",margin:"0 0 8px"},children:"If this dialog renders correctly:"}),s.jsxs("ul",{style:{color:"rgba(255, 255, 255, 0.7)",margin:0,paddingLeft:"20px"},children:[s.jsx("li",{children:"Centered on screen vertically and horizontally"}),s.jsx("li",{children:"Dark background (#343b47)"}),s.jsx("li",{children:"Backdrop blur effect"}),s.jsx("li",{children:"Close button works"}),s.jsx("li",{children:"Press Escape to close"})]})]}),s.jsxs("div",{style:{marginTop:"16px"},children:[s.jsx("label",{style:{display:"block",color:"#ffffff",marginBottom:"8px"},children:"Test Input:"}),s.jsx("input",{type:"text",placeholder:"Type something...",style:{width:"100%",padding:"10px 12px",backgroundColor:"rgba(0, 0, 0, 0.2)",border:"1px solid rgba(255, 255, 255, 0.1)",borderRadius:"8px",color:"#ffffff",fontSize:"14px",outline:"none",boxSizing:"border-box"}})]})]}),s.jsxs("div",{style:{display:"flex",gap:"8px",justifyContent:"flex-end",padding:"16px",borderTop:"1px solid rgba(255, 255, 255, 0.05)"},children:[s.jsx(Tt,{style:{padding:"8px 16px",backgroundColor:"rgba(255, 255, 255, 0.1)",border:"none",borderRadius:"6px",color:"#ffffff",cursor:"pointer"},children:"Cancel"}),s.jsx("button",{onClick:()=>{alert("Confirmed!"),t(!1)},style:{padding:"8px 16px",backgroundColor:"#ed6300",border:"none",borderRadius:"6px",color:"#ffffff",cursor:"pointer"},children:"Confirm"})]})]})]})})]})}function wd({apiBaseUrl:e,walletClient:t,onRequestWallet:r,theme:n,defaultFromToken:o,defaultToToken:a,headerLeft:l,affiliateFee:i,affiliateAddress:c,affiliateProvider:u,tradeTimeout:d,scriptTimeout:f,defaultSlippage:m=.75,hideHistory:b=!1,children:v,renderLoading:h,renderError:y,queryClient:g,onQuote:S,onWalletTx:k,onSubmitTx:w,onSwapComplete:N,onError:A}){ma(e);const C=p.useMemo(()=>g??new Uo,[g]),O={apiBaseUrl:e,defaultSlippage:m,affiliateFee:i,affiliateAddress:c,affiliateProvider:u,tradeTimeout:d,scriptTimeout:f,defaultFromToken:o,defaultToToken:a,hideHistory:b,headerLeft:l,callbacks:{onQuote:S,onWalletTx:k,onSubmitTx:w,onSwapComplete:N,onError:A},renderLoading:h,renderError:y},L=v??s.jsx(ho,{});return s.jsx("div",{className:"optx-widget",children:s.jsx(Ko,{client:C,children:s.jsx(Na,{value:O,children:s.jsx(fa,{theme:n,children:s.jsx(ha,{externalWalletClient:t,onRequestWallet:r,children:s.jsxs(Jc,{children:[L,s.jsx(mo,{})]})})})})})})}exports.ConnectButton=yd;exports.DialogDemo=mo;exports.SwapCard=ho;exports.SwapWidget=wd;exports.createEvmWalletClient=co;exports.createEvmWalletClientAsync=Nu;exports.createEvmWalletClientSync=uo;exports.useWallet=Ze;
55
+ ){opacity:0}[data-vaul-overlay][data-vaul-snap-points-overlay=true]{opacity:1}[data-vaul-handle]{display:block;position:relative;opacity:.7;background:#e2e2e4;margin-left:auto;margin-right:auto;height:5px;width:32px;border-radius:1rem;touch-action:pan-y}[data-vaul-handle]:active,[data-vaul-handle]:hover{opacity:1}[data-vaul-handle-hitarea]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:max(100%,2.75rem);height:max(100%,2.75rem);touch-action:inherit}@media (hover:hover) and (pointer:fine){[data-vaul-drawer]{user-select:none}}@media (pointer:fine){[data-vaul-handle-hitarea]:{width:100%;height:100%}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes fadeOut{to{opacity:0}}@keyframes slideFromBottom{from{transform:translate3d(0,var(--initial-transform,100%),0)}to{transform:translate3d(0,0,0)}}@keyframes slideToBottom{to{transform:translate3d(0,var(--initial-transform,100%),0)}}@keyframes slideFromTop{from{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}to{transform:translate3d(0,0,0)}}@keyframes slideToTop{to{transform:translate3d(0,calc(var(--initial-transform,100%) * -1),0)}}@keyframes slideFromLeft{from{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}to{transform:translate3d(0,0,0)}}@keyframes slideToLeft{to{transform:translate3d(calc(var(--initial-transform,100%) * -1),0,0)}}@keyframes slideFromRight{from{transform:translate3d(var(--initial-transform,100%),0,0)}to{transform:translate3d(0,0,0)}}@keyframes slideToRight{to{transform:translate3d(var(--initial-transform,100%),0,0)}}`);function mc(){const e=navigator.userAgent;return typeof window<"u"&&(/Firefox/.test(e)&&/Mobile/.test(e)||/FxiOS/.test(e))}function pc(){return Or(/^Mac/)}function xc(){return Or(/^iPhone/)}function yn(){return/^((?!chrome|android).)*safari/i.test(navigator.userAgent)}function vc(){return Or(/^iPad/)||pc()&&navigator.maxTouchPoints>1}function Ks(){return xc()||vc()}function Or(e){return typeof window<"u"&&window.navigator!=null?e.test(window.navigator.platform):void 0}const gc=24,bc=typeof window<"u"?p.useLayoutEffect:p.useEffect;function wn(...e){return(...t)=>{for(let r of e)typeof r=="function"&&r(...t)}}const Gt=typeof document<"u"&&window.visualViewport;function Cn(e){let t=window.getComputedStyle(e);return/(auto|scroll)/.test(t.overflow+t.overflowX+t.overflowY)}function Ys(e){for(Cn(e)&&(e=e.parentElement);e&&!Cn(e);)e=e.parentElement;return e||document.scrollingElement||document.documentElement}const yc=new Set(["checkbox","radio","range","color","file","image","button","submit","reset"]);let yt=0,Kt;function wc(e={}){let{isDisabled:t}=e;bc(()=>{if(!t)return yt++,yt===1&&Ks()&&(Kt=Cc()),()=>{yt--,yt===0&&Kt?.()}},[t])}function Cc(){let e,t=0,r=f=>{e=Ys(f.target),!(e===document.documentElement&&e===document.body)&&(t=f.changedTouches[0].pageY)},n=f=>{if(!e||e===document.documentElement||e===document.body){f.preventDefault();return}let m=f.changedTouches[0].pageY,b=e.scrollTop,v=e.scrollHeight-e.clientHeight;v!==0&&((b<=0&&m>t||b>=v&&m<t)&&f.preventDefault(),t=m)},o=f=>{let m=f.target;dr(m)&&m!==document.activeElement&&(f.preventDefault(),m.style.transform="translateY(-2000px)",m.focus(),requestAnimationFrame(()=>{m.style.transform=""}))},a=f=>{let m=f.target;dr(m)&&(m.style.transform="translateY(-2000px)",requestAnimationFrame(()=>{m.style.transform="",Gt&&(Gt.height<window.innerHeight?requestAnimationFrame(()=>{kn(m)}):Gt.addEventListener("resize",()=>kn(m),{once:!0}))}))},l=()=>{window.scrollTo(0,0)},i=window.pageXOffset,c=window.pageYOffset,u=wn(kc(document.documentElement,"paddingRight",`${window.innerWidth-document.documentElement.clientWidth}px`));window.scrollTo(0,0);let d=wn(tt(document,"touchstart",r,{passive:!1,capture:!0}),tt(document,"touchmove",n,{passive:!1,capture:!0}),tt(document,"touchend",o,{passive:!1,capture:!0}),tt(document,"focus",a,!0),tt(window,"scroll",l));return()=>{u(),d(),window.scrollTo(i,c)}}function kc(e,t,r){let n=e.style[t];return e.style[t]=r,()=>{e.style[t]=n}}function tt(e,t,r,n){return e.addEventListener(t,r,n),()=>{e.removeEventListener(t,r,n)}}function kn(e){let t=document.scrollingElement||document.documentElement;for(;e&&e!==t;){let r=Ys(e);if(r!==document.documentElement&&r!==document.body&&r!==e){let n=r.getBoundingClientRect().top,o=e.getBoundingClientRect().top,a=e.getBoundingClientRect().bottom;const l=r.getBoundingClientRect().bottom+gc;a>l&&(r.scrollTop+=o-n)}e=r.parentElement}}function dr(e){return e instanceof HTMLInputElement&&!yc.has(e.type)||e instanceof HTMLTextAreaElement||e instanceof HTMLElement&&e.isContentEditable}function jc(e,t){typeof e=="function"?e(t):e!=null&&(e.current=t)}function Sc(...e){return t=>e.forEach(r=>jc(r,t))}function Zs(...e){return x.useCallback(Sc(...e),e)}const Xs=new WeakMap;function ee(e,t,r=!1){if(!e||!(e instanceof HTMLElement))return;let n={};Object.entries(t).forEach(([o,a])=>{if(o.startsWith("--")){e.style.setProperty(o,a);return}n[o]=e.style[o],e.style[o]=a}),!r&&Xs.set(e,n)}function Ec(e,t){if(!e||!(e instanceof HTMLElement))return;let r=Xs.get(e);r&&(e.style[t]=r[t])}const X=e=>{switch(e){case"top":case"bottom":return!0;case"left":case"right":return!1;default:return e}};function wt(e,t){if(!e)return null;const r=window.getComputedStyle(e),n=r.transform||r.webkitTransform||r.mozTransform;let o=n.match(/^matrix3d\((.+)\)$/);return o?parseFloat(o[1].split(", ")[X(t)?13:12]):(o=n.match(/^matrix\((.+)\)$/),o?parseFloat(o[1].split(", ")[X(t)?5:4]):null)}function Nc(e){return 8*(Math.log(e+1)-2)}function Yt(e,t){if(!e)return()=>{};const r=e.style.cssText;return Object.assign(e.style,t),()=>{e.style.cssText=r}}function Tc(...e){return(...t)=>{for(const r of e)typeof r=="function"&&r(...t)}}const G={DURATION:.5,EASE:[.32,.72,0,1]},Js=.4,Rc=.25,Oc=100,eo=8,Ae=16,fr=26,Zt="vaul-dragging";function to(e){const t=p.useRef(e);return p.useEffect(()=>{t.current=e}),p.useMemo(()=>(...r)=>t.current==null?void 0:t.current.call(t,...r),[])}function _c({defaultProp:e,onChange:t}){const r=p.useState(e),[n]=r,o=p.useRef(n),a=to(t);return p.useEffect(()=>{o.current!==n&&(a(n),o.current=n)},[n,o,a]),r}function ro({prop:e,defaultProp:t,onChange:r=()=>{}}){const[n,o]=_c({defaultProp:t,onChange:r}),a=e!==void 0,l=a?e:n,i=to(r),c=p.useCallback(u=>{if(a){const f=typeof u=="function"?u(e):u;f!==e&&i(f)}else o(u)},[a,e,o,i]);return[l,c]}function Ac({activeSnapPointProp:e,setActiveSnapPointProp:t,snapPoints:r,drawerRef:n,overlayRef:o,fadeFromIndex:a,onSnapPointChange:l,direction:i="bottom",container:c,snapToSequentialPoint:u}){const[d,f]=ro({prop:e,defaultProp:r?.[0],onChange:t}),[m,b]=p.useState(typeof window<"u"?{innerWidth:window.innerWidth,innerHeight:window.innerHeight}:void 0);p.useEffect(()=>{function C(){b({innerWidth:window.innerWidth,innerHeight:window.innerHeight})}return window.addEventListener("resize",C),()=>window.removeEventListener("resize",C)},[]);const v=p.useMemo(()=>d===r?.[r.length-1]||null,[r,d]),h=p.useMemo(()=>{var C;return(C=r?.findIndex(j=>j===d))!=null?C:null},[r,d]),y=r&&r.length>0&&(a||a===0)&&!Number.isNaN(a)&&r[a]===d||!r,g=p.useMemo(()=>{const C=c?{width:c.getBoundingClientRect().width,height:c.getBoundingClientRect().height}:typeof window<"u"?{width:window.innerWidth,height:window.innerHeight}:{width:0,height:0};var j;return(j=r?.map(O=>{const L=typeof O=="string";let M=0;if(L&&(M=parseInt(O,10)),X(i)){const _=L?M:m?O*C.height:0;return m?i==="bottom"?C.height-_:-C.height+_:_}const $=L?M:m?O*C.width:0;return m?i==="right"?C.width-$:-C.width+$:$}))!=null?j:[]},[r,m,c]),S=p.useMemo(()=>h!==null?g?.[h]:null,[g,h]),k=p.useCallback(C=>{var j;const O=(j=g?.findIndex(L=>L===C))!=null?j:null;l(O),ee(n.current,{transition:`transform ${G.DURATION}s cubic-bezier(${G.EASE.join(",")})`,transform:X(i)?`translate3d(0, ${C}px, 0)`:`translate3d(${C}px, 0, 0)`}),g&&O!==g.length-1&&a!==void 0&&O!==a&&O<a?ee(o.current,{transition:`opacity ${G.DURATION}s cubic-bezier(${G.EASE.join(",")})`,opacity:"0"}):ee(o.current,{transition:`opacity ${G.DURATION}s cubic-bezier(${G.EASE.join(",")})`,opacity:"1"}),f(r?.[Math.max(O,0)])},[n.current,r,g,a,o,f]);p.useEffect(()=>{if(d||e){var C;const j=(C=r?.findIndex(O=>O===e||O===d))!=null?C:-1;g&&j!==-1&&typeof g[j]=="number"&&k(g[j])}},[d,e,r,g,k]);function w({draggedDistance:C,closeDrawer:j,velocity:O,dismissible:L}){if(a===void 0)return;const M=i==="bottom"||i==="right"?(S??0)-C:(S??0)+C,$=h===a-1,_=h===0,W=C>0;if($&&ee(o.current,{transition:`opacity ${G.DURATION}s cubic-bezier(${G.EASE.join(",")})`}),!u&&O>2&&!W){L?j():k(g[0]);return}if(!u&&O>2&&W&&g&&r){k(g[r.length-1]);return}const V=g?.reduce((U,E)=>typeof U!="number"||typeof E!="number"?U:Math.abs(E-M)<Math.abs(U-M)?E:U),Q=X(i)?window.innerHeight:window.innerWidth;if(O>Js&&Math.abs(C)<Q*.4){const U=W?1:-1;if(U>0&&v&&r){k(g[r.length-1]);return}if(_&&U<0&&L&&j(),h===null)return;k(g[h+U]);return}k(V)}function N({draggedDistance:C}){if(S===null)return;const j=i==="bottom"||i==="right"?S-C:S+C;(i==="bottom"||i==="right")&&j<g[g.length-1]||(i==="top"||i==="left")&&j>g[g.length-1]||ee(n.current,{transform:X(i)?`translate3d(0, ${j}px, 0)`:`translate3d(${j}px, 0, 0)`})}function A(C,j){if(!r||typeof h!="number"||!g||a===void 0)return null;const O=h===a-1;if(h>=a&&j)return 0;if(O&&!j)return 1;if(!y&&!O)return null;const M=O?h+1:h-1,$=O?g[M]-g[M-1]:g[M+1]-g[M],_=C/Math.abs($);return O?1-_:_}return{isLastSnapPoint:v,activeSnapPoint:d,shouldFade:y,getPercentageDragged:A,setActiveSnapPoint:f,activeSnapPointIndex:h,onRelease:w,onDrag:N,snapPointsOffset:g}}const Pc=()=>()=>{};function Mc(){const{direction:e,isOpen:t,shouldScaleBackground:r,setBackgroundColorOnScale:n,noBodyStyles:o}=ct(),a=p.useRef(null),l=p.useMemo(()=>document.body.style.backgroundColor,[]);function i(){return(window.innerWidth-fr)/window.innerWidth}p.useEffect(()=>{if(t&&r){a.current&&clearTimeout(a.current);const c=document.querySelector("[data-vaul-drawer-wrapper]")||document.querySelector("[vaul-drawer-wrapper]");if(!c)return;Tc(n&&!o?Yt(document.body,{background:"black"}):Pc,Yt(c,{transformOrigin:X(e)?"top":"left",transitionProperty:"transform, border-radius",transitionDuration:`${G.DURATION}s`,transitionTimingFunction:`cubic-bezier(${G.EASE.join(",")})`}));const u=Yt(c,{borderRadius:`${eo}px`,overflow:"hidden",...X(e)?{transform:`scale(${i()}) translate3d(0, calc(env(safe-area-inset-top) + 14px), 0)`}:{transform:`scale(${i()}) translate3d(calc(env(safe-area-inset-top) + 14px), 0, 0)`}});return()=>{u(),a.current=window.setTimeout(()=>{l?document.body.style.background=l:document.body.style.removeProperty("background")},G.DURATION*1e3)}}},[t,r,l])}let rt=null;function Ic({isOpen:e,modal:t,nested:r,hasBeenOpened:n,preventScrollRestoration:o,noBodyStyles:a}){const[l,i]=p.useState(()=>typeof window<"u"?window.location.href:""),c=p.useRef(0),u=p.useCallback(()=>{if(yn()&&rt===null&&e&&!a){rt={position:document.body.style.position,top:document.body.style.top,left:document.body.style.left,height:document.body.style.height,right:"unset"};const{scrollX:f,innerHeight:m}=window;document.body.style.setProperty("position","fixed","important"),Object.assign(document.body.style,{top:`${-c.current}px`,left:`${-f}px`,right:"0px",height:"auto"}),window.setTimeout(()=>window.requestAnimationFrame(()=>{const b=m-window.innerHeight;b&&c.current>=m&&(document.body.style.top=`${-(c.current+b)}px`)}),300)}},[e]),d=p.useCallback(()=>{if(yn()&&rt!==null&&!a){const f=-parseInt(document.body.style.top,10),m=-parseInt(document.body.style.left,10);Object.assign(document.body.style,rt),window.requestAnimationFrame(()=>{if(o&&l!==window.location.href){i(window.location.href);return}window.scrollTo(m,f)}),rt=null}},[l]);return p.useEffect(()=>{function f(){c.current=window.scrollY}return f(),window.addEventListener("scroll",f),()=>{window.removeEventListener("scroll",f)}},[]),p.useEffect(()=>{if(t)return()=>{typeof document>"u"||document.querySelector("[data-vaul-drawer]")||d()}},[t,d]),p.useEffect(()=>{r||!n||(e?(!window.matchMedia("(display-mode: standalone)").matches&&u(),t||window.setTimeout(()=>{d()},500)):d())},[e,n,l,t,r,u,d]),{restorePositionSetting:d}}function Dc({open:e,onOpenChange:t,children:r,onDrag:n,onRelease:o,snapPoints:a,shouldScaleBackground:l=!1,setBackgroundColorOnScale:i=!0,closeThreshold:c=Rc,scrollLockTimeout:u=Oc,dismissible:d=!0,handleOnly:f=!1,fadeFromIndex:m=a&&a.length-1,activeSnapPoint:b,setActiveSnapPoint:v,fixed:h,modal:y=!0,onClose:g,nested:S,noBodyStyles:k=!1,direction:w="bottom",defaultOpen:N=!1,disablePreventScroll:A=!0,snapToSequentialPoint:C=!1,preventScrollRestoration:j=!1,repositionInputs:O=!0,onAnimationEnd:L,container:M,autoFocus:$=!1}){var _,W;const[V=!1,Q]=ro({defaultProp:N,prop:e,onChange:P=>{t?.(P),!P&&!S&&yo(),setTimeout(()=>{L?.(P)},G.DURATION*1e3),P&&!y&&typeof window<"u"&&window.requestAnimationFrame(()=>{document.body.style.pointerEvents="auto"}),P||(document.body.style.pointerEvents="auto")}}),[U,E]=p.useState(!1),[ne,ie]=p.useState(!1),[Te,pe]=p.useState(!1),H=p.useRef(null),Z=p.useRef(null),de=p.useRef(null),be=p.useRef(null),F=p.useRef(null),xe=p.useRef(!1),ye=p.useRef(null),we=p.useRef(0),fe=p.useRef(!1),Re=p.useRef(!N),Ir=p.useRef(0),I=p.useRef(null),Dr=p.useRef(((_=I.current)==null?void 0:_.getBoundingClientRect().height)||0),Lr=p.useRef(((W=I.current)==null?void 0:W.getBoundingClientRect().width)||0),It=p.useRef(0),po=p.useCallback(P=>{a&&P===Xe.length-1&&(Z.current=new Date)},[]),{activeSnapPoint:xo,activeSnapPointIndex:$e,setActiveSnapPoint:Fr,onRelease:vo,snapPointsOffset:Xe,onDrag:go,shouldFade:$r,getPercentageDragged:bo}=Ac({snapPoints:a,activeSnapPointProp:b,setActiveSnapPointProp:v,drawerRef:I,fadeFromIndex:m,overlayRef:H,onSnapPointChange:po,direction:w,container:M,snapToSequentialPoint:C});wc({isDisabled:!V||ne||!y||Te||!U||!O||!A});const{restorePositionSetting:yo}=Ic({isOpen:V,modal:y,nested:S??!1,hasBeenOpened:U,preventScrollRestoration:j,noBodyStyles:k});function ut(){return(window.innerWidth-fr)/window.innerWidth}function wo(P){var z,q;!d&&!a||I.current&&!I.current.contains(P.target)||(Dr.current=((z=I.current)==null?void 0:z.getBoundingClientRect().height)||0,Lr.current=((q=I.current)==null?void 0:q.getBoundingClientRect().width)||0,ie(!0),de.current=new Date,Ks()&&window.addEventListener("touchend",()=>xe.current=!1,{once:!0}),P.target.setPointerCapture(P.pointerId),we.current=X(w)?P.pageY:P.pageX)}function Br(P,z){var q;let B=P;const Y=(q=window.getSelection())==null?void 0:q.toString(),se=I.current?wt(I.current,w):null,re=new Date;if(B.tagName==="SELECT"||B.hasAttribute("data-vaul-no-drag")||B.closest("[data-vaul-no-drag]"))return!1;if(w==="right"||w==="left")return!0;if(Z.current&&re.getTime()-Z.current.getTime()<500)return!1;if(se!==null&&(w==="bottom"?se>0:se<0))return!0;if(Y&&Y.length>0)return!1;if(F.current&&re.getTime()-F.current.getTime()<u&&se===0||z)return F.current=re,!1;for(;B;){if(B.scrollHeight>B.clientHeight){if(B.scrollTop!==0)return F.current=new Date,!1;if(B.getAttribute("role")==="dialog")return!0}B=B.parentNode}return!0}function Co(P){if(I.current&&ne){const z=w==="bottom"||w==="right"?1:-1,q=(we.current-(X(w)?P.pageY:P.pageX))*z,B=q>0,Y=a&&!d&&!B;if(Y&&$e===0)return;const se=Math.abs(q),re=document.querySelector("[data-vaul-drawer-wrapper]"),Ce=w==="bottom"||w==="top"?Dr.current:Lr.current;let le=se/Ce;const Oe=bo(se,B);if(Oe!==null&&(le=Oe),Y&&le>=1||!xe.current&&!Br(P.target,B))return;if(I.current.classList.add(Zt),xe.current=!0,ee(I.current,{transition:"none"}),ee(H.current,{transition:"none"}),a&&go({draggedDistance:q}),B&&!a){const he=Nc(q),dt=Math.min(he*-1,0)*z;ee(I.current,{transform:X(w)?`translate3d(0, ${dt}px, 0)`:`translate3d(${dt}px, 0, 0)`});return}const ke=1-le;if(($r||m&&$e===m-1)&&(n?.(P,le),ee(H.current,{opacity:`${ke}`,transition:"none"},!0)),re&&H.current&&l){const he=Math.min(ut()+le*(1-ut()),1),dt=8-le*8,Wr=Math.max(0,14-le*14);ee(re,{borderRadius:`${dt}px`,transform:X(w)?`scale(${he}) translate3d(0, ${Wr}px, 0)`:`scale(${he}) translate3d(${Wr}px, 0, 0)`,transition:"none"},!0)}if(!a){const he=se*z;ee(I.current,{transform:X(w)?`translate3d(0, ${he}px, 0)`:`translate3d(${he}px, 0, 0)`})}}}p.useEffect(()=>{window.requestAnimationFrame(()=>{Re.current=!0})},[]),p.useEffect(()=>{var P;function z(){if(!I.current||!O)return;const q=document.activeElement;if(dr(q)||fe.current){var B;const Y=((B=window.visualViewport)==null?void 0:B.height)||0,se=window.innerHeight;let re=se-Y;const Ce=I.current.getBoundingClientRect().height||0,le=Ce>se*.8;It.current||(It.current=Ce);const Oe=I.current.getBoundingClientRect().top;if(Math.abs(Ir.current-re)>60&&(fe.current=!fe.current),a&&a.length>0&&Xe&&$e){const ke=Xe[$e]||0;re+=ke}if(Ir.current=re,Ce>Y||fe.current){const ke=I.current.getBoundingClientRect().height;let he=ke;ke>Y&&(he=Y-(le?Oe:fr)),h?I.current.style.height=`${ke-Math.max(re,0)}px`:I.current.style.height=`${Math.max(he,Y-Oe)}px`}else mc()||(I.current.style.height=`${It.current}px`);a&&a.length>0&&!fe.current?I.current.style.bottom="0px":I.current.style.bottom=`${Math.max(re,0)}px`}}return(P=window.visualViewport)==null||P.addEventListener("resize",z),()=>{var q;return(q=window.visualViewport)==null?void 0:q.removeEventListener("resize",z)}},[$e,a,Xe]);function Je(P){ko(),g?.(),P||Q(!1),setTimeout(()=>{a&&Fr(a[0])},G.DURATION*1e3)}function zr(){if(!I.current)return;const P=document.querySelector("[data-vaul-drawer-wrapper]"),z=wt(I.current,w);ee(I.current,{transform:"translate3d(0, 0, 0)",transition:`transform ${G.DURATION}s cubic-bezier(${G.EASE.join(",")})`}),ee(H.current,{transition:`opacity ${G.DURATION}s cubic-bezier(${G.EASE.join(",")})`,opacity:"1"}),l&&z&&z>0&&V&&ee(P,{borderRadius:`${eo}px`,overflow:"hidden",...X(w)?{transform:`scale(${ut()}) translate3d(0, calc(env(safe-area-inset-top) + 14px), 0)`,transformOrigin:"top"}:{transform:`scale(${ut()}) translate3d(calc(env(safe-area-inset-top) + 14px), 0, 0)`,transformOrigin:"left"},transitionProperty:"transform, border-radius",transitionDuration:`${G.DURATION}s`,transitionTimingFunction:`cubic-bezier(${G.EASE.join(",")})`},!0)}function ko(){!ne||!I.current||(I.current.classList.remove(Zt),xe.current=!1,ie(!1),be.current=new Date)}function jo(P){if(!ne||!I.current)return;I.current.classList.remove(Zt),xe.current=!1,ie(!1),be.current=new Date;const z=wt(I.current,w);if(!P||!Br(P.target,!1)||!z||Number.isNaN(z)||de.current===null)return;const q=be.current.getTime()-de.current.getTime(),B=we.current-(X(w)?P.pageY:P.pageX),Y=Math.abs(B)/q;if(Y>.05&&(pe(!0),setTimeout(()=>{pe(!1)},200)),a){vo({draggedDistance:B*(w==="bottom"||w==="right"?1:-1),closeDrawer:Je,velocity:Y,dismissible:d}),o?.(P,!0);return}if(w==="bottom"||w==="right"?B>0:B<0){zr(),o?.(P,!0);return}if(Y>Js){Je(),o?.(P,!1);return}var se;const re=Math.min((se=I.current.getBoundingClientRect().height)!=null?se:0,window.innerHeight);var Ce;const le=Math.min((Ce=I.current.getBoundingClientRect().width)!=null?Ce:0,window.innerWidth),Oe=w==="left"||w==="right";if(Math.abs(z)>=(Oe?le:re)*c){Je(),o?.(P,!1);return}o?.(P,!0),zr()}p.useEffect(()=>(V&&(ee(document.documentElement,{scrollBehavior:"auto"}),Z.current=new Date),()=>{Ec(document.documentElement,"scrollBehavior")}),[V]);function So(P){const z=P?(window.innerWidth-Ae)/window.innerWidth:1,q=P?-Ae:0;ye.current&&window.clearTimeout(ye.current),ee(I.current,{transition:`transform ${G.DURATION}s cubic-bezier(${G.EASE.join(",")})`,transform:X(w)?`scale(${z}) translate3d(0, ${q}px, 0)`:`scale(${z}) translate3d(${q}px, 0, 0)`}),!P&&I.current&&(ye.current=setTimeout(()=>{const B=wt(I.current,w);ee(I.current,{transition:"none",transform:X(w)?`translate3d(0, ${B}px, 0)`:`translate3d(${B}px, 0, 0)`})},500))}function Eo(P,z){if(z<0)return;const q=(window.innerWidth-Ae)/window.innerWidth,B=q+z*(1-q),Y=-Ae+z*Ae;ee(I.current,{transform:X(w)?`scale(${B}) translate3d(0, ${Y}px, 0)`:`scale(${B}) translate3d(${Y}px, 0, 0)`,transition:"none"})}function No(P,z){const q=X(w)?window.innerHeight:window.innerWidth,B=z?(q-Ae)/q:1,Y=z?-Ae:0;z&&ee(I.current,{transition:`transform ${G.DURATION}s cubic-bezier(${G.EASE.join(",")})`,transform:X(w)?`scale(${B}) translate3d(0, ${Y}px, 0)`:`scale(${B}) translate3d(${Y}px, 0, 0)`})}return p.useEffect(()=>{y||window.requestAnimationFrame(()=>{document.body.style.pointerEvents="auto"})},[y]),p.createElement(jr,{defaultOpen:N,onOpenChange:P=>{!d&&!P||(P?E(!0):Je(!0),Q(P))},open:V},p.createElement(Gs.Provider,{value:{activeSnapPoint:xo,snapPoints:a,setActiveSnapPoint:Fr,drawerRef:I,overlayRef:H,onOpenChange:t,onPress:wo,onRelease:jo,onDrag:Co,dismissible:d,shouldAnimate:Re,handleOnly:f,isOpen:V,isDragging:ne,shouldFade:$r,closeDrawer:Je,onNestedDrag:Eo,onNestedOpenChange:So,onNestedRelease:No,keyboardIsOpen:fe,modal:y,snapPointsOffset:Xe,activeSnapPointIndex:$e,direction:w,shouldScaleBackground:l,setBackgroundColorOnScale:i,noBodyStyles:k,container:M,autoFocus:$}},r))}const no=p.forwardRef(function({...e},t){const{overlayRef:r,snapPoints:n,onRelease:o,shouldFade:a,isOpen:l,modal:i,shouldAnimate:c}=ct(),u=Zs(t,r),d=n&&n.length>0;if(!i)return null;const f=p.useCallback(m=>o(m),[o]);return p.createElement(Er,{onMouseUp:f,ref:u,"data-vaul-overlay":"","data-vaul-snap-points":l&&d?"true":"false","data-vaul-snap-points-overlay":l&&a?"true":"false","data-vaul-animate":c?.current?"true":"false",...e})});no.displayName="Drawer.Overlay";const so=p.forwardRef(function({onPointerDownOutside:e,style:t,onOpenAutoFocus:r,...n},o){const{drawerRef:a,onPress:l,onRelease:i,onDrag:c,keyboardIsOpen:u,snapPointsOffset:d,activeSnapPointIndex:f,modal:m,isOpen:b,direction:v,snapPoints:h,container:y,handleOnly:g,shouldAnimate:S,autoFocus:k}=ct(),[w,N]=p.useState(!1),A=Zs(o,a),C=p.useRef(null),j=p.useRef(null),O=p.useRef(!1),L=h&&h.length>0;Mc();const M=(_,W,V=0)=>{if(O.current)return!0;const Q=Math.abs(_.y),U=Math.abs(_.x),E=U>Q,ne=["bottom","right"].includes(W)?1:-1;if(W==="left"||W==="right"){if(!(_.x*ne<0)&&U>=0&&U<=V)return E}else if(!(_.y*ne<0)&&Q>=0&&Q<=V)return!E;return O.current=!0,!0};p.useEffect(()=>{L&&window.requestAnimationFrame(()=>{N(!0)})},[]);function $(_){C.current=null,O.current=!1,i(_)}return p.createElement(Nr,{"data-vaul-drawer-direction":v,"data-vaul-drawer":"","data-vaul-delayed-snap-points":w?"true":"false","data-vaul-snap-points":b&&L?"true":"false","data-vaul-custom-container":y?"true":"false","data-vaul-animate":S?.current?"true":"false",...n,ref:A,style:d&&d.length>0?{"--snap-point-height":`${d[f??0]}px`,...t}:t,onPointerDown:_=>{g||(n.onPointerDown==null||n.onPointerDown.call(n,_),C.current={x:_.pageX,y:_.pageY},l(_))},onOpenAutoFocus:_=>{r?.(_),k||_.preventDefault()},onPointerDownOutside:_=>{if(e?.(_),!m||_.defaultPrevented){_.preventDefault();return}u.current&&(u.current=!1)},onFocusOutside:_=>{if(!m){_.preventDefault();return}},onPointerMove:_=>{if(j.current=_,g||(n.onPointerMove==null||n.onPointerMove.call(n,_),!C.current))return;const W=_.pageY-C.current.y,V=_.pageX-C.current.x,Q=_.pointerType==="touch"?10:2;M({x:V,y:W},v,Q)?c(_):(Math.abs(V)>Q||Math.abs(W)>Q)&&(C.current=null)},onPointerUp:_=>{n.onPointerUp==null||n.onPointerUp.call(n,_),C.current=null,O.current=!1,i(_)},onPointerOut:_=>{n.onPointerOut==null||n.onPointerOut.call(n,_),$(j.current)},onContextMenu:_=>{n.onContextMenu==null||n.onContextMenu.call(n,_),j.current&&$(j.current)}})});so.displayName="Drawer.Content";const Lc=250,Fc=120,$c=p.forwardRef(function({preventCycle:e=!1,children:t,...r},n){const{closeDrawer:o,isDragging:a,snapPoints:l,activeSnapPoint:i,setActiveSnapPoint:c,dismissible:u,handleOnly:d,isOpen:f,onPress:m,onDrag:b}=ct(),v=p.useRef(null),h=p.useRef(!1);function y(){if(h.current){k();return}window.setTimeout(()=>{g()},Fc)}function g(){if(a||e||h.current){k();return}if(k(),!l||l.length===0){u||o();return}if(i===l[l.length-1]&&u){o();return}const N=l.findIndex(C=>C===i);if(N===-1)return;const A=l[N+1];c(A)}function S(){v.current=window.setTimeout(()=>{h.current=!0},Lc)}function k(){v.current&&window.clearTimeout(v.current),h.current=!1}return p.createElement("div",{onClick:y,onPointerCancel:k,onPointerDown:w=>{d&&m(w),S()},onPointerMove:w=>{d&&b(w)},ref:n,"data-vaul-drawer-visible":f?"true":"false","data-vaul-handle":"","aria-hidden":"true",...r},p.createElement("span",{"data-vaul-handle-hitarea":"","aria-hidden":"true"},t))});$c.displayName="Drawer.Handle";function Bc(e){const t=ct(),{container:r=t.container,...n}=e;return p.createElement(Sr,{container:r,...n})}const Pe={Root:Dc,Content:so,Overlay:no,Portal:Bc,Close:Tt,Title:Tr,Description:Rr};function zc(e=768){const[t,r]=p.useState(!1);return p.useEffect(()=>{const n=()=>{r(window.innerWidth<e)};return n(),window.addEventListener("resize",n),()=>window.removeEventListener("resize",n)},[e]),t}function Rt(...e){return ms(ts(e))}function _r({open:e,onOpenChange:t,children:r,title:n,description:o,className:a="",showCloseButton:l=!0}){return zc()?s.jsx(Pe.Root,{open:e,onOpenChange:t,children:s.jsxs(Pe.Portal,{children:[s.jsx(Pe.Overlay,{className:"fixed inset-0 z-[9999] bg-black/60 backdrop-blur-sm"}),s.jsxs(Pe.Content,{className:Rt("fixed inset-x-0 bottom-0 z-[9999] mt-24 flex max-h-[96vh] flex-col rounded-t-[var(--optimex-overlay-radius)] border-t border-white/10 bg-[var(--optimex-overlay-background)] outline-none",a),children:[s.jsx("div",{className:"mx-auto mt-4 h-1.5 w-12 flex-shrink-0 rounded-full bg-white/20"}),(n||l)&&s.jsxs("div",{className:"flex items-center justify-between border-b border-white/[0.05] px-4 pb-4 pt-2",children:[s.jsxs("div",{children:[n&&s.jsx(Pe.Title,{className:"text-lg font-bold text-[var(--optimex-text)]",children:n}),o&&s.jsx(Pe.Description,{className:"text-sm text-[var(--optimex-text-secondary)]",children:o})]}),l&&s.jsx(Pe.Close,{className:"rounded-[var(--optimex-radius-button)] p-1.5 text-[var(--optimex-text-secondary)] transition-colors hover:bg-white/10 hover:text-[var(--optimex-text)]",children:s.jsx(Ie,{})})]}),s.jsx("div",{className:"flex-1 overflow-auto",children:r})]})]})}):s.jsx(jr,{open:e,onOpenChange:t,children:s.jsxs(Sr,{children:[s.jsx(Er,{className:"fixed inset-0 z-[9999] bg-black/60 backdrop-blur-sm data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0"}),s.jsxs(Nr,{className:Rt("fixed left-1/2 top-1/2 z-[9999] flex max-h-[85vh] w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 flex-col rounded-[var(--optimex-overlay-radius)] border border-white/10 bg-[var(--optimex-overlay-background)] shadow-2xl outline-none sm:max-w-2xl","data-[state=open]:animate-modal-in data-[state=closed]:animate-modal-out",a),children:[(n||o||l)&&s.jsxs("div",{className:"flex flex-shrink-0 items-center justify-between border-b border-white/[0.05] p-4",children:[s.jsxs("div",{className:"flex flex-col gap-1.5",children:[n&&s.jsx(Tr,{className:"text-lg font-bold leading-none text-[var(--optimex-text)]",children:n}),o&&s.jsx(Rr,{className:"text-sm text-[var(--optimex-text-secondary)]",children:o})]}),l&&s.jsxs(Tt,{className:"rounded-[var(--optimex-radius-button)] p-1.5 text-[var(--optimex-text-secondary)] opacity-70 transition-opacity hover:opacity-100 hover:bg-white/10 focus:outline-none",children:[s.jsx(Ie,{}),s.jsx("span",{className:"sr-only",children:"Close"})]})]}),s.jsx("div",{className:"flex flex-1 flex-col overflow-hidden",children:r})]})]})})}const Wc=({children:e,className:t=""})=>s.jsx("div",{className:Rt("p-4",t),children:e}),Vc=({children:e,className:t=""})=>s.jsx("div",{className:Rt("flex gap-2 border-t border-white/[0.05] p-4",t),children:e});function hr({children:e,onClick:t,isActive:r=!1,type:n="button",className:o=""}){return s.jsx("button",{type:n,onClick:t,className:ps(`px-2 py-1 bg-white/5 rounded-md text-xs transition-colors shadow-sm border ${r?"border-[var(--optimex-primary)] text-[var(--optimex-text)]":"border-transparent text-[var(--optimex-text-secondary)] hover:bg-[var(--optimex-surface-hover)] hover:text-[var(--optimex-text)]"} ${o}`),children:e})}const Uc={"bottom-right":"right-0 top-full mt-2","bottom-left":"left-0 top-full mt-2","bottom-center":"left-1/2 -translate-x-1/2 top-full mt-2","top-right":"right-0 bottom-full mb-2","top-left":"left-0 bottom-full mb-2","top-center":"left-1/2 -translate-x-1/2 bottom-full mb-2"},Hc={"bottom-right":"-top-2 right-4 rotate-45 border-l border-t border-white/10","bottom-left":"-top-2 left-4 rotate-45 border-l border-t border-white/10","bottom-center":"-top-2 left-1/2 -translate-x-1/2 rotate-45 border-l border-t border-white/10","top-right":"-bottom-2 right-4 rotate-45 border-r border-b border-white/10","top-left":"-bottom-2 left-4 rotate-45 border-r border-b border-white/10","top-center":"-bottom-2 left-1/2 -translate-x-1/2 rotate-45 border-r border-b border-white/10"};function qc({isOpen:e,onClose:t,children:r,anchorRef:n,position:o="bottom-right",width:a="w-72",showArrow:l=!0,className:i="",ariaLabel:c}){const u=p.useRef(null);return p.useEffect(()=>{if(!e)return;const d=b=>{const v=b.target;u.current?.contains(v)||n?.current?.contains(v)||t()},f=b=>{b.key==="Escape"&&t()},m=setTimeout(()=>{document.addEventListener("mousedown",d),document.addEventListener("keydown",f)},0);return()=>{clearTimeout(m),document.removeEventListener("mousedown",d),document.removeEventListener("keydown",f)}},[e,t,n]),e?s.jsxs("div",{ref:u,className:`absolute z-50 rounded-[var(--optimex-overlay-radius)] border border-white/10 bg-[var(--optimex-overlay-background)] p-4 shadow-xl ${Uc[o]} ${a} ${i}`,role:"dialog","aria-label":c,children:[l&&s.jsx("div",{className:`absolute h-4 w-4 bg-[var(--optimex-overlay-background)] ${Hc[o]}`}),s.jsx("div",{className:"relative",children:r})]}):null}function Qc({value:e,onChange:t,placeholder:r,hasError:n=!1,leftIcon:o,rightContent:a,type:l="text",inputMode:i="text",disabled:c=!1,className:u=""}){return s.jsxs("div",{className:`flex rounded-[var(--optimex-radius-button)] items-center gap-2 bg-white/5 border py-3 px-3 transition-colors ${n?"border-[var(--optimex-error)]":"border-white/10 hover:border-[var(--optimex-primary)] focus-within:border-[var(--optimex-primary)]"} ${c?"opacity-50 cursor-not-allowed":""} ${u}`,children:[o&&s.jsx(o,{className:"size-5 text-[var(--optimex-text-secondary)] shrink-0"}),s.jsx("input",{type:l,inputMode:i,value:e,onChange:d=>t(d.target.value),placeholder:r,disabled:c,className:"flex-1 min-w-0 bg-transparent text-[var(--optimex-text)] text-sm placeholder:text-[var(--optimex-text-secondary)]/30 outline-none disabled:cursor-not-allowed"}),a]})}const Gc={sm:{container:"h-6 w-6",icon:"h-6 w-6",badge:"h-3 w-3"},md:{container:"h-8 w-8",icon:"h-8 w-8",badge:"h-4 w-4"},lg:{container:"h-10 w-10",icon:"h-10 w-10",badge:"h-5 w-5"},xl:{container:"h-14 w-14",icon:"h-14 w-14",badge:"h-6 w-6"}};function Le({token:e,size:t="md",showNetworkBadge:r=!0}){const n=Gc[t];return s.jsxs("div",{className:`relative shrink-0 ${n.container}`,children:[s.jsx("img",{src:e.token_logo_uri||"/placeholder-token.svg",alt:e.token_symbol,className:`${n.icon} rounded-[9999px] bg-[var(--optimex-background)]`,onError:o=>{o.target.src="/placeholder-token.svg"}}),r&&e.network_logo_uri&&s.jsx("img",{src:e.network_logo_uri,alt:e.network_name,className:`absolute -bottom-1 -right-1 ${n.badge} rounded-[9999px] border-2 border-[var(--optimex-surface)]`,onError:o=>{o.target.style.display="none"}})]})}const Kc="widget-container rounded-[var(--optimex-radius-widget)] p-4 shadow-2xl relative w-full min-w-0";function Ar({children:e,className:t}){return s.jsx("div",{className:t??Kc,children:e})}function Yc(){return s.jsxs("div",{className:"relative size-20 mb-4",children:[s.jsx("div",{className:"absolute inset-0 rounded-full bg-[var(--optimex-error)]/10 animate-pulse"}),s.jsx("div",{className:"absolute inset-2 rounded-full bg-[var(--optimex-error)]/20"}),s.jsx("div",{className:"absolute inset-0 flex items-center justify-center",children:s.jsx(Fa,{className:"size-10 text-[var(--optimex-error)]"})})]})}function Zc({error:e,onRetry:t,className:r}){const n=()=>{const o=e?.message?.toLowerCase()||"";return o.includes("network")||o.includes("fetch")?"Connection issue. Check your internet and try again.":o.includes("timeout")?"Request timed out. The server might be busy.":o.includes("401")||o.includes("403")?"Access denied. Please check your credentials.":o.includes("500")||o.includes("server")?"Server is having issues. Please try again later.":"Something went wrong while loading. Let's give it another shot!"};return s.jsx(Ar,{className:r,children:s.jsx("div",{className:"bg-[var(--optimex-surface)] rounded-2xl p-6 border border-white/[0.02]",children:s.jsxs("div",{className:"flex flex-col items-center justify-center text-center",children:[s.jsx(Yc,{}),s.jsx("h3",{className:"text-base font-bold text-[var(--optimex-text)] mb-1",children:"Oops! Something went wrong"}),s.jsx("p",{className:"text-sm text-[var(--optimex-text-secondary)] mb-6 max-w-[280px]",children:n()}),s.jsx(Jn,{onClick:t,size:"md",fullWidth:!0,leftIcon:s.jsx(La,{className:"size-4 transition-transform group-hover:rotate-180"}),children:"Try Again"}),e?.message&&s.jsxs("details",{className:"mt-4 w-full",children:[s.jsx("summary",{className:"cursor-pointer text-xs text-[var(--optimex-text-secondary)]/60 hover:text-[var(--optimex-text-secondary)] transition-colors",children:"Technical details"}),s.jsx("p",{className:"mt-2 bg-white/5 p-3 text-left text-xs text-[var(--optimex-text-secondary)] break-all border border-white/[0.02]",children:e.message})]})]})})})}function Xc({className:e}){return s.jsxs("div",{className:"flex flex-col gap-4",children:[s.jsxs("header",{className:"flex items-center justify-between px-2",children:[s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx("div",{className:"size-8 rounded-lg bg-[var(--optimex-primary)]/30 animate-pulse"}),s.jsx("div",{className:"h-6 w-28 rounded bg-white/10 animate-pulse"})]}),s.jsx("div",{className:"size-10 rounded-lg bg-white/5 animate-pulse"})]}),s.jsxs(Ar,{className:e,children:[s.jsxs("div",{className:"bg-[var(--optimex-surface)] rounded-2xl p-4 border border-white/[0.02] mb-2",children:[s.jsx("div",{className:"flex justify-between items-center mb-4",children:s.jsx("div",{className:"h-3 w-10 animate-pulse rounded bg-white/10"})}),s.jsxs("div",{className:"flex items-center justify-between gap-4",children:[s.jsxs("div",{className:"flex-1",children:[s.jsx("div",{className:"h-8 w-24 animate-pulse rounded bg-white/10 mb-2"}),s.jsx("div",{className:"h-3 w-16 animate-pulse rounded bg-white/5"})]}),s.jsxs("div",{className:"flex items-center gap-2 bg-white/5 p-2 pr-3 rounded-full border border-white/10",children:[s.jsx("div",{className:"size-8 rounded-full bg-white/10 animate-pulse"}),s.jsxs("div",{children:[s.jsx("div",{className:"h-4 w-12 animate-pulse rounded bg-white/10 mb-1"}),s.jsx("div",{className:"h-2 w-16 animate-pulse rounded bg-white/5"})]})]})]})]}),s.jsx("div",{className:"relative z-10 -my-4 flex justify-center",children:s.jsx("div",{className:"size-10 rounded-full bg-[var(--optimex-surface)] border-4 border-[var(--optimex-background)] animate-pulse"})}),s.jsxs("div",{className:"bg-[var(--optimex-surface)] rounded-2xl p-4 border border-white/[0.02] mb-4",children:[s.jsx("div",{className:"flex justify-between items-center mb-4",children:s.jsx("div",{className:"h-3 w-6 animate-pulse rounded bg-white/10"})}),s.jsxs("div",{className:"flex items-center justify-between gap-4",children:[s.jsxs("div",{className:"flex-1",children:[s.jsx("div",{className:"h-8 w-20 animate-pulse rounded bg-white/10 mb-2"}),s.jsx("div",{className:"h-3 w-14 animate-pulse rounded bg-white/5"})]}),s.jsxs("div",{className:"flex items-center gap-2 bg-white/5 p-2 pr-3 rounded-full border border-white/10",children:[s.jsx("div",{className:"size-8 rounded-full bg-white/10 animate-pulse"}),s.jsxs("div",{children:[s.jsx("div",{className:"h-4 w-12 animate-pulse rounded bg-white/10 mb-1"}),s.jsx("div",{className:"h-2 w-16 animate-pulse rounded bg-white/5"})]})]})]})]}),s.jsxs("div",{className:"bg-[var(--optimex-surface)] rounded-2xl p-4 border border-white/[0.02] mb-4",children:[s.jsx("div",{className:"h-3 w-28 animate-pulse rounded bg-white/10 mb-2"}),s.jsxs("div",{className:"flex items-center gap-2 bg-white/5 border border-white/10 py-3 px-3 rounded-md",children:[s.jsx("div",{className:"size-5 rounded-full bg-white/10 animate-pulse shrink-0"}),s.jsx("div",{className:"h-4 flex-1 animate-pulse rounded bg-white/5"})]}),s.jsx("div",{className:"h-2 w-48 animate-pulse rounded bg-white/5 mt-2"})]}),s.jsx("div",{className:"h-12 w-full animate-pulse rounded-xl bg-[var(--optimex-primary)]/30 bg-white/5 mt-2"}),s.jsx("div",{className:"mt-4 flex items-center justify-center",children:s.jsx("div",{className:"h-4 w-32 animate-pulse rounded bg-white/5"})})]})]})}const oo=p.createContext(null);function Jc({children:e}){const t=lt(),{data:r,isLoading:n,error:o,refetch:a}=xa(t.apiBaseUrl),l=t.renderLoading??Xc,i=t.renderError??Zc;if(n)return s.jsx(l,{});if(o||!r){const c=o instanceof Error?o:new Error("Failed to load tokens");return s.jsx(i,{error:c,onRetry:()=>a()})}return s.jsx(oo.Provider,{value:{tokensData:r,refetch:a},children:e})}function eu(){const e=p.useContext(oo);if(!e)throw new Error("useTokensData must be used within TokensProvider");return e}function tu({token:e,value:t,onChange:r,placeholder:n,error:o,onClose:a}){const l=p.useCallback(()=>{r("")},[r]),i=p.useCallback(async()=>{try{const f=await navigator.clipboard.readText();f&&r(f.trim())}catch(f){console.error("Failed to read clipboard:",f)}},[r]),c=()=>n||(e?`Enter ${e.network_name} address`:"Enter receiving address"),u=e?.network_name||"destination",d=p.useMemo(()=>za(e?.network_name)||Hn,[e?.network_name]);return s.jsxs("div",{className:"bg-[var(--optimex-surface)] rounded-[var(--optimex-radius-input)] p-4 border border-white/[0.05] animate-in slide-in-from-top-2 duration-300",children:[s.jsxs("div",{className:"flex justify-between items-center mb-2",children:[s.jsx("label",{className:"text-[var(--optimex-text-secondary)] text-xs",children:"Recipient Address"}),a&&s.jsx("button",{type:"button",onClick:l,className:"text-[var(--optimex-text-secondary)]/50 hover:text-[var(--optimex-text-secondary)] transition-colors",children:s.jsx(Ie,{className:"size-4"})})]}),s.jsx(Qc,{value:t,onChange:r,placeholder:c(),hasError:!!o,leftIcon:d,rightContent:t?s.jsx("button",{type:"button",onClick:l,className:"text-[var(--optimex-text-secondary)] hover:text-[var(--optimex-text)] transition-colors",children:s.jsx(Ie,{className:"size-5"})}):s.jsx("button",{type:"button",onClick:i,className:"text-[var(--optimex-text-secondary)] hover:text-[var(--optimex-primary)] transition-colors",children:s.jsx(Da,{className:"size-5"})})}),o?s.jsxs("p",{className:"text-[10px] text-[var(--optimex-error)] mt-2 flex items-center gap-1",children:[s.jsx(Jr,{className:"size-3"}),o]}):s.jsxs("p",{className:"text-[10px] text-[var(--optimex-text-secondary)] mt-2 flex items-center gap-1",children:[s.jsx(Jr,{className:"size-3"}),"Ensure the address matches the ",u," network."]})]})}function jn({token:e,value:t,onChange:r,readOnly:n=!1,onSelectToken:o,isLoading:a=!1,loadingText:l="Loading...",balance:i,isOutput:c=!1,isWalletConnected:u=!1,usdValue:d="$0.00"}){const f=h=>{if(n||!r)return;const y=h.target.value;/^[0-9]*\.?[0-9]*$/.test(y)&&r(y)},m=u&&!c&&i!==void 0,b=()=>{if(!i||!r||n)return;const h=(parseFloat(i)/2).toString();r(h)},v=()=>{!i||!r||n||r(i)};return s.jsxs("div",{className:"bg-[var(--optimex-surface)] rounded-[var(--optimex-radius-input)] p-4 flex flex-col gap-2 border border-white/[0.02] focus-within:border-[var(--optimex-primary)]/40 transition-colors",children:[s.jsxs("div",{className:"flex justify-between items-center",children:[s.jsx("span",{className:"text-[var(--optimex-text-secondary)] text-xs",children:c?"To":"From"}),s.jsx("div",{className:"flex items-center gap-2",children:m&&s.jsxs(s.Fragment,{children:[s.jsxs("span",{className:"text-[var(--optimex-text-secondary)] text-xs",children:["Balance: ",i," ",e?.token_symbol]}),s.jsxs("div",{className:"flex gap-2",children:[s.jsx(hr,{onClick:b,children:"50%"}),s.jsx(hr,{onClick:v,children:"Max"})]})]})})]}),s.jsxs("div",{className:"flex items-center justify-between gap-4",children:[s.jsxs("div",{className:"flex-1 min-w-0",children:[s.jsx("input",{type:"text",inputMode:"decimal",placeholder:"0.0",value:t,onChange:f,readOnly:n,className:"w-full bg-transparent border-none p-0 text-[var(--optimex-text)] text-2xl font-bold focus:ring-0 placeholder:text-[var(--optimex-text-secondary)]/30 outline-none"}),s.jsxs("p",{className:"text-[var(--optimex-text-secondary)] text-xs mt-1",children:["~",d]})]}),s.jsxs("button",{onClick:o,className:"flex items-center gap-2 bg-white/5 hover:bg-white/10 p-2 pr-3 rounded-[9999px] transition-all border border-white/10 active:scale-95 shrink-0",children:[e?s.jsxs(s.Fragment,{children:[s.jsx(Le,{token:e,size:"md"}),s.jsxs("div",{className:"text-left",children:[s.jsx("p",{className:"text-[var(--optimex-text)] text-sm font-bold leading-none",children:e.token_symbol}),s.jsx("p",{className:"text-[var(--optimex-text-secondary)] text-[10px] leading-none mt-1",children:e.network_name})]})]}):s.jsxs(s.Fragment,{children:[s.jsx("div",{className:"size-8 rounded-[9999px] bg-white/10"}),s.jsx("span",{className:"text-[var(--optimex-text)] text-sm font-bold",children:"Select"})]}),s.jsx(Vn,{className:"size-4 text-[var(--optimex-text-secondary)]"})]})]}),a&&s.jsxs("div",{className:"flex items-center justify-end gap-2 text-sm text-[var(--optimex-text-secondary)]",children:[s.jsx("div",{className:"size-3 animate-spin rounded-[9999px] border border-[var(--optimex-primary)] border-t-transparent"}),s.jsx("span",{children:l})]})]})}const Xt=[.5,.75,1];function ru({value:e,onChange:t}){const[r,n]=p.useState(""),[o,a]=p.useState(!Xt.includes(e)),l=p.useCallback(u=>{a(!1),n(""),t(u)},[t]),i=p.useCallback(u=>{const d=u.target.value;if(d===""||/^\d*\.?\d*$/.test(d)){n(d),a(!0);const f=parseFloat(d);!isNaN(f)&&f>0&&f<=50&&t(f)}},[t]),c=p.useCallback(()=>{a(!0),!r&&e&&n(Xt.includes(e)?"":String(e))},[r,e]);return s.jsxs("div",{className:"space-y-3",children:[s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsx("span",{className:"text-sm font-medium text-[var(--optimex-text)]",children:"Slippage Tolerance"}),s.jsxs("span",{className:"text-sm text-[var(--optimex-text-secondary)]",children:[e,"%"]})]}),s.jsxs("div",{className:"flex items-center gap-2",children:[Xt.map(u=>s.jsxs(hr,{onClick:()=>l(u),isActive:e===u&&!o,className:"flex-1",children:[u,"%"]},u)),s.jsxs("div",{className:`flex flex-1 items-center justify-center px-2 rounded-md transition-colors shadow-sm bg-white/5 border ${o?"border-[var(--optimex-primary)]":"border-transparent hover:bg-white/10"}`,children:[s.jsx("input",{type:"text",inputMode:"decimal",placeholder:"Custom",value:r,onChange:i,onFocus:c,className:"w-full min-w-0 py-[6px] bg-transparent text-center text-xs outline-none placeholder:text-[var(--optimex-text-secondary)] text-[var(--optimex-text)]"}),s.jsx("span",{className:"text-xs text-[var(--optimex-text-secondary)]",children:"%"})]})]}),e>5&&s.jsx("p",{className:"text-xs text-[var(--optimex-warning)]",children:"This may result in an unfavorable trade. Try lowering your slippage setting."})]})}function nu({isOpen:e,onClose:t,value:r,onChange:n,anchorRef:o}){const a=p.useCallback(l=>{n(l)},[n]);return s.jsx(qc,{isOpen:e,onClose:t,anchorRef:o,position:"bottom-right",width:"w-96",ariaLabel:"Slippage settings",children:s.jsx(ru,{value:r,onChange:a})})}const su=({title:e})=>s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx("div",{className:"size-8 bg-[var(--optimex-primary)] rounded-[var(--optimex-radius-button)] flex items-center justify-center shadow-[0_0_15px_rgba(235,98,0,0.3)]",children:s.jsx(Ma,{className:"w-5 h-auto text-white"})}),s.jsx("h2",{className:"text-xl font-bold tracking-tight text-[var(--optimex-text)]",children:e})]});function ou({title:e="Swap",headerLeft:t,slippage:r=.75,onSlippageChange:n,isSettingsOpen:o=!1,onSettingsToggle:a,onHistoryClick:l,hideHistory:i=!1}){const c=p.useRef(null);return s.jsxs("header",{className:"flex items-center justify-between px-2",children:[t??s.jsx(su,{title:e}),s.jsxs("div",{className:"flex items-center gap-2",children:[!i&&s.jsx("button",{onClick:l,className:"size-10 rounded-[var(--optimex-radius-button)] bg-white/5 hover:bg-white/10 text-[var(--optimex-text-secondary)] hover:text-[var(--optimex-text)] transition-colors flex items-center justify-center","aria-label":"Trade History",children:s.jsx(Aa,{className:"size-5"})}),s.jsxs("div",{className:"relative",children:[s.jsx("button",{ref:c,onClick:a,className:"size-10 rounded-[var(--optimex-radius-button)] bg-white/5 hover:bg-white/10 text-[var(--optimex-text-secondary)] hover:text-[var(--optimex-text)] transition-colors flex items-center justify-center","aria-label":"Settings",children:s.jsx(Ba,{className:"size-5"})}),s.jsx(nu,{isOpen:o,onClose:()=>a?.(),value:r,onChange:u=>n?.(u),anchorRef:c})]})]})]})}function ao({onClick:e,disabled:t}){return s.jsx("div",{className:"!m-0 absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 z-10",children:s.jsx("button",{onClick:e,disabled:t,className:"size-10 rounded-[9999px] bg-[var(--optimex-surface)] border-4 border-white/5 flex items-center justify-center text-[var(--optimex-primary)] hover:scale-110 transition-all shadow-xl disabled:cursor-not-allowed",children:s.jsx(Ra,{className:"size-5"})})})}function au({quote:e,fromToken:t,toToken:r,amount:n,slippage:o,isFetching:a}){const[l,i]=p.useState(!1),[c,u]=p.useState(!1),d=p.useCallback(()=>{u(g=>!g)},[]),f=p.useCallback(()=>{i(g=>!g)},[]),m=parseFloat(n)||0,b=parseFloat(e.min_amount_out)/Math.pow(10,r.token_decimals),v=m>0?b/m:0,h=b>0?m/b:0,y=()=>c?`1 ${r.token_symbol} = ${h.toFixed(6)} ${t.token_symbol}`:`1 ${t.token_symbol} = ${v.toFixed(6)} ${r.token_symbol}`;return s.jsxs("div",{className:"bg-white/[0.02] rounded-[var(--optimex-radius-button)] border border-white/5 overflow-hidden",children:[s.jsxs("button",{type:"button",onClick:f,className:"w-full flex items-center justify-between p-3 text-xs cursor-pointer hover:bg-white/[0.02] transition-colors",children:[s.jsx("div",{className:"flex items-center gap-2 text-[var(--optimex-text-secondary)] font-medium",children:a?s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("div",{className:"size-3 animate-spin rounded-[9999px] border border-[var(--optimex-primary)] border-t-transparent"}),s.jsx("span",{children:"Updating..."})]}):s.jsx("span",{role:"button",tabIndex:0,onClick:g=>{g.stopPropagation(),d()},onKeyDown:g=>{(g.key==="Enter"||g.key===" ")&&(g.stopPropagation(),d())},className:"hover:text-[var(--optimex-text)] transition-colors",children:y()})}),s.jsx(Vn,{className:`size-4 text-[var(--optimex-text-secondary)] transition-transform ${l?"rotate-180":""}`})]}),l&&s.jsxs("div",{className:"px-3 pb-3 space-y-2 text-xs border-t border-white/5",children:[s.jsxs("div",{className:"flex items-center justify-between pt-3",children:[s.jsx("span",{className:"text-[var(--optimex-text-secondary)]",children:"Min. Received"}),s.jsxs("span",{className:"font-medium text-[var(--optimex-text)]",children:[Ne(e.min_amount_out,r.token_decimals)," ",r.token_symbol]})]}),s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsx("span",{className:"text-[var(--optimex-text-secondary)]",children:"Est. Time"}),s.jsx("span",{className:"font-medium text-[var(--optimex-primary)]",children:"~10 minutes"})]}),s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsx("span",{className:"text-[var(--optimex-text-secondary)]",children:"Slippage Tolerance"}),s.jsxs("span",{className:"font-medium text-[var(--optimex-text)]",children:[o,"%"]})]})]})]})}function iu({text:e,disabled:t,onClick:r}){return s.jsx("button",{disabled:t,onClick:r,className:"w-full font-semibold text-black bg-[var(--optimex-primary)] hover:brightness-110 py-4 rounded-[var(--optimex-radius-button)] shadow-lg shadow-[var(--optimex-primary)]/30 flex items-center justify-center transition-all active:scale-[0.98] disabled:cursor-not-allowed disabled:opacity-50",children:e})}function lu(){return s.jsxs("a",{href:"https://optimex.com",target:"_blank",rel:"noopener noreferrer",className:"flex items-center justify-center gap-1.5 text-[var(--optimex-text-secondary)] text-[10px] opacity-50 hover:opacity-70 transition-opacity",children:[s.jsx("span",{children:"Powered by"}),s.jsx(Ia,{className:"h-3 w-auto"})]})}function cu({value:e,onChange:t,placeholder:r="Search by name or symbol..."}){return s.jsx("div",{className:"flex-shrink-0 p-4 pb-3",children:s.jsxs("div",{className:"relative",children:[s.jsx("input",{type:"text",placeholder:r,value:e,onChange:n=>t(n.target.value),className:"w-full rounded-xl bg-white/5 border border-white/10 px-4 py-3 pl-10 pr-10 text-[var(--optimex-text)] outline-none placeholder:text-[var(--optimex-text-secondary)]/60 transition-colors hover:border-[var(--optimex-primary)] focus:border-[var(--optimex-primary)]"}),s.jsx($a,{className:"absolute left-3 top-1/2 h-5 w-5 -translate-y-1/2 text-[var(--optimex-text-secondary)]"}),e&&s.jsx("button",{type:"button",onClick:()=>t(""),className:"absolute right-3 top-1/2 -translate-y-1/2 text-[var(--optimex-text-secondary)] hover:text-[var(--optimex-text)] transition-colors",children:s.jsx(Ie,{className:"size-5"})})]})})}function uu({networks:e,selectedNetwork:t,onSelectNetwork:r}){return s.jsxs("div",{className:"w-1/3 min-w-[140px] border-r border-white/[0.05] overflow-y-auto p-2",children:[s.jsx("div",{className:"mb-2 px-2 text-xs font-medium uppercase tracking-wider text-[var(--optimex-text-secondary)]",children:"Networks"}),s.jsxs("div",{className:"space-y-1 px-2",children:[s.jsxs("button",{onClick:()=>r(null),className:`flex w-full items-center gap-2 rounded-lg px-3 py-2 text-sm transition-colors ${t===null?"bg-white/5 text-[var(--optimex-text)]":"text-[var(--optimex-text-secondary)] hover:bg-white/5 hover:text-[var(--optimex-text)]"}`,children:[s.jsx(Ta,{}),s.jsx("span",{children:"All"})]}),e.map(n=>s.jsx(du,{network:n,isSelected:t===n.network_id,onSelect:()=>r(n.network_id)},n.network_id))]})]})}function du({network:e,isSelected:t,onSelect:r}){return s.jsxs("button",{onClick:r,className:`flex w-full items-center gap-2 rounded-lg px-3 py-2 text-sm transition-colors ${t?"bg-white/5 text-[var(--optimex-text)]":"text-[var(--optimex-text-secondary)] hover:bg-white/5 hover:text-[var(--optimex-text)]"}`,children:[e.logo_uri?s.jsx("img",{src:e.logo_uri,alt:e.name,className:"h-8 w-8 rounded-lg",onError:n=>{n.target.style.display="none"}}):s.jsx("div",{className:"h-6 w-6 rounded-full bg-white/10"}),s.jsx("span",{className:"truncate",children:e.name})]})}function fu({tokens:e,selectedSymbol:t,onSelectSymbol:r,maxVisible:n=12}){return s.jsxs("div",{className:"flex-shrink-0 border-b border-white/[0.05] p-2",children:[s.jsx("div",{className:"mb-2 px-2 text-xs font-medium uppercase tracking-wider text-[var(--optimex-text-secondary)]",children:"Tokens"}),s.jsxs("div",{className:"flex flex-wrap gap-1.5 overflow-hidden max-h-[5rem]",children:[s.jsx("button",{onClick:()=>r(null),className:`border rounded-lg px-2.5 py-1 text-xs font-medium transition-colors ${t===null?"border-[var(--optimex-primary)] text-[var(--optimex-text)]":"border-transparent text-[var(--optimex-text-secondary)] hover:bg-white/10 hover:text-[var(--optimex-text)]"}`,children:"All"}),e.slice(0,n).map(o=>s.jsx(hu,{token:o,isSelected:t===o.token_symbol,onSelect:()=>r(o.token_symbol)},o.token_symbol))]})]})}function hu({token:e,isSelected:t,onSelect:r}){return s.jsxs("button",{onClick:r,className:ps("flex items-center gap-1 rounded-lg px-2.5 py-1 text-xs font-medium transition-colors outline-none border bg-white/5",t?"border-[var(--optimex-primary)] text-[var(--optimex-text)]":"border-transparent text-[var(--optimex-text-secondary)] hover:bg-white/10 hover:text-[var(--optimex-text)]"),children:[e.token_logo_uri&&s.jsx("img",{src:e.token_logo_uri,alt:e.token_symbol,className:"h-4 w-4 rounded-full",onError:n=>{n.target.style.display="none"}}),e.token_symbol]})}function Ze(){const e=p.useContext($n);if(!e)throw new Error("useWallet must be used within WalletProvider");return e}function Mt(e){return`https://network-api-stg.bitdex.xyz/${e}/rpc/zwD70RMT9DrE8L5SaMnJNMF8m70Gum`}function mu(e){return e==="bitcoin_testnet"?"https://mempool.space/testnet4/api":"https://mempool.space/api"}function Pr(e){return!e.token_address||e.token_address===""||e.token_address==="native"||e.token_address==="0x0000000000000000000000000000000000000000"}function pu(e,t){if(!e||e==="0")return"0";const r=BigInt(e),n=BigInt(10**t),o=r/n,a=r%n;if(a===BigInt(0))return o.toString();let l=a.toString().padStart(t,"0");return l=l.replace(/0+$/,""),l.length>6&&(l=l.slice(0,6)),`${o}.${l}`}function xu(e){return`0x70a08231000000000000000000000000${e.toLowerCase().replace("0x","")}`}async function io(e,t){const r=await fetch(e,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!r.ok)throw new Error(`RPC request failed: ${r.status}`);return r.json()}async function vu(e,t){const n=await io(e,{jsonrpc:"2.0",method:"eth_getBalance",params:[t,"latest"],id:1});if(n.error)throw new Error(`RPC error: ${n.error.message}`);const o=n.result||"0x0";return BigInt(o).toString()}async function gu(e,t,r){const n={jsonrpc:"2.0",method:"eth_call",params:[{to:t,data:xu(r)},"latest"],id:1},o=await io(e,n);if(o.error)throw new Error(`RPC error: ${o.error.message}`);const a=o.result||"0x0";return BigInt(a).toString()}async function bu(e,t){const r=Mt(e.network_id),n=Pr(e);let o;return n?o=await vu(r,t):o=await gu(r,e.token_address,t),{rawBalance:o,isNative:n}}async function yu(e,t){const n=`${mu(e.network_id)}/address/${t}`,o=await fetch(n);if(!o.ok)throw new Error(`Mempool API request failed: ${o.status}`);const a=await o.json(),l=a.chain_stats.funded_txo_sum-a.chain_stats.spent_txo_sum,i=a.mempool_stats.funded_txo_sum-a.mempool_stats.spent_txo_sum;return{rawBalance:(l+i).toString(),isNative:!0}}async function lo(e,t){const r=await fetch(e,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!r.ok)throw new Error(`RPC request failed: ${r.status}`);return r.json()}async function wu(e,t){const n=await lo(e,{jsonrpc:"2.0",method:"getBalance",params:[t],id:1});if(n.error)throw new Error(`RPC error: ${n.error.message}`);return(n.result?.value||0).toString()}async function Cu(e,t,r){const o=await lo(e,{jsonrpc:"2.0",method:"getTokenAccountsByOwner",params:[r,{mint:t},{encoding:"jsonParsed"}],id:1});if(o.error)throw new Error(`RPC error: ${o.error.message}`);const a=o.result?.value||[];let l=BigInt(0);for(const i of a){const c=i.account.data.parsed.info.tokenAmount.amount;l+=BigInt(c)}return l.toString()}async function ku(e,t){const r=Mt(e.network_id),n=Pr(e);let o;return n?o=await wu(r,t):o=await Cu(r,e.token_address,t),{rawBalance:o,isNative:n}}function ju(e,t){if(!t)return!1;switch(t){case K.EVM:return e.isEvmConnected;case K.BTC:return e.isBtcConnected;case K.SOLANA:return e.isSolanaConnected;default:return!1}}function Su(e){if(!e)return"";switch(e){case K.EVM:return"EVM";case K.BTC:return"Bitcoin";case K.SOLANA:return"Solana";default:return e}}function Eu(e,t){if(!t)return null;switch(t){case K.EVM:return e.evmAddress;case K.BTC:return e.btcAddress;case K.SOLANA:return e.solanaAddress;default:return null}}async function co({provider:e,address:t,chainId:r,chainName:n="Unknown"}){let o=t;if(!o){const l=await e.request({method:"eth_accounts"});if(!l||l.length===0)throw new Error("No accounts found. Please connect your wallet first.");o=l[0]}let a=r;if(a===void 0){const l=await e.request({method:"eth_chainId"});a=parseInt(l,16)}return uo({provider:e,address:o,chainId:a,chainName:n})}function uo({provider:e,address:t,chainId:r,chainName:n="Unknown"}){return{address:t,publicKey:t,chain:{id:r,name:n,type:"EVM"},sendTransaction:async i=>{const c=i;return await e.request({method:"eth_sendTransaction",params:[{from:t,to:c.to,value:c.value?`0x${c.value.toString(16)}`:void 0,data:c.data}]})},getChainId:async()=>{const i=await e.request({method:"eth_chainId"});return parseInt(i,16)},switchChain:async i=>{try{await e.request({method:"wallet_switchEthereumChain",params:[{chainId:`0x${i.toString(16)}`}]})}catch(c){throw c.code===4902?new Error(`Chain ${i} not found in wallet. Please add it first.`):c}}}}const Nu=co;async function Tu(e,t){const r=e.token_address||"native";let n;switch(e.network_type){case K.BTC:n=await yu(e,t);break;case K.SOLANA:n=await ku(e,t);break;case K.EVM:default:n=await bu(e,t)}return{tokenId:r,networkId:e.network_id,walletAddress:t,rawBalance:n.rawBalance,formattedBalance:pu(n.rawBalance,e.token_decimals),updatedAt:Date.now()}}const Ru=30*1e3,Ou=15*1e3;function _u(e,t){return!e||!t?["balance"]:["balance",e.network_id,e.token_address||"native",t]}function fo({token:e,walletAddress:t,enabled:r=!0,polling:n=!1,pollingInterval:o=Ou}){const a=r&&!!e&&!!t,{data:l,isLoading:i,isFetching:c,error:u,refetch:d}=Qe({queryKey:_u(e,t),queryFn:()=>Tu(e,t),enabled:a,staleTime:Ru,retry:1,refetchOnWindowFocus:!1,refetchInterval:n?o:!1});return{balance:l,formattedBalance:l?.formattedBalance||"0",isLoading:a&&i,isFetching:a&&c,error:u,refetch:d}}function Au({token:e,isSelected:t,isDisabled:r,onSelect:n}){const o=Ze(),a=Eu(o,e.network_type),{formattedBalance:l,isLoading:i}=fo({token:e,walletAddress:a,enabled:!!a}),c=!!a;return s.jsxs("button",{onClick:n,disabled:r,className:`flex w-full items-center gap-3 rounded-lg p-2 transition-colors ${t?"bg-white/5 text-[var(--optimex-text)]":r?"cursor-not-allowed opacity-50":"hover:bg-white/5"}`,children:[s.jsx(Le,{token:e}),s.jsxs("div",{className:"flex-1 text-left",children:[s.jsx("div",{className:"text-sm text-[var(--optimex-text-secondary)]",children:e.token_name}),s.jsxs("div",{className:"flex items-center gap-2",children:[c&&s.jsx("span",{className:"text-sm font-medium text-[var(--optimex-text)]",children:i?s.jsx("span",{className:"inline-block h-4 w-12 animate-pulse rounded bg-white/10"}):l}),s.jsx("span",{className:"font-medium text-[var(--optimex-text)]",children:e.token_symbol})]})]}),t&&s.jsx(br,{className:"h-5 w-5 text-[var(--optimex-primary)]"})]})}function Pu({tokens:e,selectedTokenId:t,disabledTokenId:r,disabledTokenIds:n,isLoading:o,emptyMessage:a="No tokens available",onSelect:l}){return o?s.jsx("div",{className:"flex-1 overflow-y-auto p-2",children:s.jsx("div",{className:"flex items-center justify-center py-8",children:s.jsx("div",{className:"h-8 w-8 animate-spin rounded-full border-2 border-[var(--optimex-primary)] border-t-transparent"})})}):e.length===0?s.jsx("div",{className:"flex-1 overflow-y-auto p-2",children:s.jsx("div",{className:"py-8 text-center text-[var(--optimex-text-secondary)]",children:a})}):s.jsx("div",{className:"flex-1 overflow-y-auto p-2",children:s.jsx("div",{className:"space-y-1",children:e.map(i=>{const c=r===i.token_id||n?.has(i.token_id)===!0;return s.jsx(Au,{token:i,isSelected:t===i.token_id,isDisabled:c,onSelect:()=>l(i)},i.token_id)})})})}function Mu({isOpen:e,onClose:t,onSelect:r,tokensData:n,isLoading:o,selectedToken:a,disabledTokenId:l,disabledTokenIds:i,tokens:c,emptyMessage:u,title:d="Select Token",filterNetworkType:f}){const[m,b]=p.useState(""),[v,h]=p.useState(null),[y,g]=p.useState(null),S=p.useMemo(()=>n?.supported_networks?f?n.supported_networks.filter(M=>M.type===f):n.supported_networks:[],[n,f]),k=c??n?.tokens,w=p.useMemo(()=>k?k.filter(M=>{if(f&&M.network_type!==f||v&&M.network_id!==v)return!1;if(m){const $=(W,V)=>W.toLowerCase().includes(V.toLowerCase()),_=m.toLowerCase();return $(M.token_symbol,_)||$(M.token_name,_)||$(M.token_address,_)}return!0}):[],[k,m,v,f]),N=p.useMemo(()=>{if(!k)return[];const M=new Map;return k.forEach($=>{f&&$.network_type!==f||v&&$.network_id!==v||M.has($.token_symbol)||M.set($.token_symbol,$)}),Array.from(M.values())},[k,f,v]),A=p.useMemo(()=>y?w.filter(M=>M.token_symbol===y):w,[w,y]),C=()=>{b(""),h(null),g(null)},j=M=>{r(M),t(),C()},O=M=>{M||(t(),C())},L=M=>{h(M),g(null)};return s.jsx(_r,{open:e,onOpenChange:O,title:d,className:"h-full md:h-[70vh] max-h-[600px] w-full max-w-2xl",children:s.jsxs("div",{className:"flex h-full flex-col",children:[s.jsx(cu,{value:m,onChange:b}),s.jsxs("div",{className:"flex flex-1 overflow-hidden",children:[s.jsx(uu,{networks:S,selectedNetwork:v,onSelectNetwork:L}),s.jsxs("div",{className:"flex flex-1 flex-col overflow-hidden pl-2",children:[s.jsx(fu,{tokens:N,selectedSymbol:y,onSelectSymbol:g}),s.jsx(Pu,{tokens:A,selectedTokenId:a?.token_id,disabledTokenId:l,disabledTokenIds:i,isLoading:o,emptyMessage:m?"No tokens found":u??"No tokens available",onSelect:j})]})]})]})})}function Sn({token:e,amount:t,label:r,isEstimated:n=!1,highlight:o=!1,usdValue:a="$0.00"}){return s.jsx("div",{className:`p-4 rounded-xl border transition-all duration-200 ${o?"bg-zinc-900/50 border-[var(--optimex-primary)]/20 shadow-[0_0_15px_rgba(235,98,0,0.1)]":"bg-zinc-900/50 border-white/5"}`,children:s.jsxs("div",{className:"flex items-center gap-4",children:[s.jsx("div",{className:"size-12 flex items-center justify-center ",children:s.jsx(Le,{token:e,size:"lg"})}),s.jsxs("div",{className:"flex flex-col gap-0.5 min-w-0",children:[s.jsxs("p",{className:`text-xs font-medium uppercase tracking-wider ${o?"text-[var(--optimex-primary)]":"text-zinc-500"}`,children:[r," ",n&&"(Est.)"]}),s.jsx("p",{className:"text-white text-sm font-semibold truncate",children:e.token_symbol}),s.jsx("p",{className:"text-zinc-500 text-xs truncate",children:e.network_name})]}),s.jsxs("div",{className:"flex flex-col items-end gap-0.5 ml-auto shrink-0",children:[s.jsx("p",{className:"text-white text-lg font-bold",children:n?`~${t}`:t}),s.jsx("p",{className:"text-zinc-400 text-xs",children:a})]})]})})}function Iu({fromToken:e,toToken:t,fromAmount:r,toAmount:n,fromUsdValue:o="$0.00",toUsdValue:a="$0.00"}){return s.jsxs("div",{className:"relative flex flex-col gap-2",children:[s.jsx(Sn,{token:e,amount:r,label:"You Pay",usdValue:o}),s.jsx(ao,{onClick:()=>{},disabled:!0}),s.jsx(Sn,{token:t,amount:n,label:"You Receive",usdValue:a})]})}function Jt({label:e,value:t,borderTop:r}){return s.jsxs("div",{className:`flex justify-between items-center text-sm ${r?"pt-2 mt-2 border-t border-white/5":""}`,children:[s.jsx("span",{className:"text-zinc-500",children:e}),s.jsx("div",{className:"flex items-center gap-1 text-white font-medium",children:t})]})}function Du({minReceived:e,estimatedTime:t,slippage:r,networkFee:n="Included"}){return s.jsxs("div",{className:"bg-[var(--optimex-surface)] rounded-xl p-4 border border-white/5 space-y-3",children:[s.jsx(Jt,{label:"Min. Received",value:e}),s.jsx(Jt,{label:"Estimated Time",value:s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("div",{className:"size-2 bg-[var(--optimex-primary)] rounded-full animate-pulse shadow-[0_0_8px_rgba(235,98,0,0.8)]"}),s.jsx("span",{children:t})]})}),s.jsx(Jt,{label:"Slippage Tolerance",value:r})]})}const Lu=3e4,Fu=6e4;function Ot({symbol:e,enabled:t=!0}){const r=lt(),{data:n,isLoading:o,isError:a}=Qe({queryKey:["tokenPrice",e],queryFn:async()=>{if(!e)throw new Error("Symbol is required");return(await Ge(r.apiBaseUrl).getTokenPrice(e)).current_price},enabled:t&&!!e,staleTime:Lu,refetchInterval:Fu,retry:2});return{price:n??null,isLoading:o,isError:a,calculateUsdValue:i=>{if(!n||!i||isNaN(parseFloat(i)))return"$0.00";const c=parseFloat(i);if(c===0)return"$0.00";const u=c*n;return u<.01?"<$0.01":u<1?`$${u.toFixed(4)}`:u<1e3?`$${u.toFixed(2)}`:u<1e6?`$${(u/1e3).toFixed(2)}K`:`$${(u/1e6).toFixed(2)}M`}}}function $u({isOpen:e,onClose:t,onConfirm:r,fromToken:n,toToken:o,amountIn:a,quote:l,slippage:i,stage:c,receivingAddress:u=""}){const d=c!=="idle"&&c!=="confirming"&&c!=="error"&&c!=="submitted",f=c==="submitted",m=c==="error",b=Ne(l.min_amount_out,o.token_decimals),{calculateUsdValue:v}=Ot({symbol:n.token_symbol,enabled:e}),{calculateUsdValue:h}=Ot({symbol:o.token_symbol,enabled:e}),y=v(a),g=h(b),S=w=>{!w&&!d&&t()},k=f?"Swap Complete":m?"Swap Failed":"Review Swap";return s.jsxs(_r,{open:e,onOpenChange:S,title:k,showCloseButton:!d,className:"w-full max-w-md",children:[s.jsxs(Wc,{className:"space-y-3",children:[s.jsx(Iu,{fromToken:n,toToken:o,fromAmount:a,toAmount:b,fromUsdValue:y,toUsdValue:g}),s.jsx(Du,{minReceived:`${b} ${o.token_symbol}`,estimatedTime:"~10 minutes",slippage:`${i}%`}),u&&s.jsx("div",{className:"bg-[var(--optimex-surface)] rounded-xl px-2 border border-white/5",children:s.jsx(Va,{icon:Hn,label:"Receiving Address",address:u})})]}),s.jsx(Vc,{children:s.jsx(Mi,{state:d?"processing":f?"success":m?"error":"idle",onConfirm:f?t:r,confirmText:"Confirm Swap"})})]})}function Bu({swap:e}){const{tokens:t,modals:r,tokenSelect:n,actions:o,input:a,quote:l,execution:i}=e;return s.jsxs(s.Fragment,{children:[r.tokenSelect.isOpen&&s.jsx(Mu,{isOpen:r.tokenSelect.isOpen,onClose:r.tokenSelect.close,onSelect:o.selectToken,tokensData:t.data,isLoading:!1,selectedToken:n.type==="from"?t.from:t.to,disabledTokenId:n.type==="from"?t.to?.token_id:t.from?.token_id,tokens:n.type==="to"?t.availableTo:t.all,emptyMessage:n.type==="to"?"No available pairs for selected source token":void 0,title:n.type==="from"?"Select Source Token":"Select Destination Token"}),l.data&&t.from&&t.to&&r.confirm.isOpen&&s.jsx($u,{isOpen:r.confirm.isOpen,onClose:o.closeConfirmModal,onConfirm:o.confirmSwap,fromToken:t.from,toToken:t.to,amountIn:a.amount,quote:l.data,slippage:a.slippage,stage:i.stage,txHash:i.txHash,error:i.error,receivingAddress:e.addresses.receiving})]})}function Mr({status:e}){const t={pending:{icon:Un,text:"Processing",bgClass:"bg-yellow-500/10",textClass:"text-yellow-500",animate:!0},success:{icon:br,text:"Completed",bgClass:"bg-green-500/10",textClass:"text-green-500",animate:!1},failed:{icon:Oa,text:"Failed",bgClass:"bg-red-500/10",textClass:"text-red-500",animate:!1}},{icon:r,text:n,bgClass:o,textClass:a,animate:l}=t[e];return s.jsxs("div",{className:`flex items-center gap-1.5 px-2.5 py-1 rounded-full ${o}`,children:[s.jsx(r,{className:`w-4 h-4 ${a} ${l?"animate-spin":""}`}),s.jsx("span",{className:`text-xs font-medium ${a}`,children:n})]})}function zu({onClose:e}){return s.jsxs("div",{className:"bg-[var(--optimex-surface)] border border-[var(--optimex-border)] rounded-xl p-4 mt-3",children:[s.jsxs("div",{className:"flex items-center justify-between mb-3",children:[s.jsx("span",{className:"text-xs text-[var(--optimex-text-secondary)] font-medium",children:"Recent Trade"}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(Mr,{status:"pending"}),e&&s.jsx("button",{onClick:e,className:"text-[var(--optimex-text-secondary)] hover:text-[var(--optimex-text)] transition-colors cursor-pointer","aria-label":"Close",children:s.jsx(Ie,{className:"w-4 h-4"})})]})]}),s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("div",{className:"w-6 h-6 rounded-full bg-[var(--optimex-border)] animate-pulse"}),s.jsxs("div",{className:"flex flex-col gap-1",children:[s.jsx("div",{className:"w-16 h-4 bg-[var(--optimex-border)] rounded animate-pulse"}),s.jsx("div",{className:"w-10 h-3 bg-[var(--optimex-border)] rounded animate-pulse"})]})]}),s.jsx("div",{className:"flex items-center px-3",children:s.jsx("svg",{className:"w-5 h-5 text-[var(--optimex-text-secondary)]",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,children:s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M14 5l7 7m0 0l-7 7m7-7H3"})})}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsxs("div",{className:"flex flex-col items-end gap-1",children:[s.jsx("div",{className:"w-16 h-4 bg-[var(--optimex-border)] rounded animate-pulse"}),s.jsx("div",{className:"w-10 h-3 bg-[var(--optimex-border)] rounded animate-pulse"})]}),s.jsx("div",{className:"w-6 h-6 rounded-full bg-[var(--optimex-border)] animate-pulse"})]})]})]})}function Wu({trade:e,status:t,isLoading:r,onClose:n}){if(r||!e)return s.jsx(zu,{onClose:n});const o=e.from_token,a=e.to_token,l=Ne(e.amount_in,o.token_decimals),i=Ne(e.min_amount_out,a.token_decimals);return s.jsxs("div",{className:"bg-[var(--optimex-surface)] border border-[var(--optimex-border)] rounded-xl p-4 mt-3",children:[s.jsxs("div",{className:"flex items-center justify-between mb-3",children:[s.jsx("span",{className:"text-xs text-[var(--optimex-text-secondary)] font-medium",children:"Recent Trade"}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(Mr,{status:t}),n&&s.jsx("button",{onClick:n,className:"text-[var(--optimex-text-secondary)] hover:text-[var(--optimex-text)] transition-colors cursor-pointer","aria-label":"Close",children:s.jsx(Ie,{className:"w-4 h-4"})})]})]}),s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(Le,{token:o,size:"sm",showNetworkBadge:!1}),s.jsxs("div",{className:"flex flex-col",children:[s.jsx("span",{className:"text-sm font-semibold text-[var(--optimex-text)]",children:l}),s.jsx("span",{className:"text-xs text-[var(--optimex-text-secondary)]",children:o.token_symbol})]})]}),s.jsx("div",{className:"flex items-center px-3",children:s.jsx("svg",{className:"w-5 h-5 text-[var(--optimex-text-secondary)]",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,children:s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M14 5l7 7m0 0l-7 7m7-7H3"})})}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsxs("div",{className:"flex flex-col items-end",children:[s.jsx("span",{className:"text-sm font-semibold text-[var(--optimex-text)]",children:i}),s.jsx("span",{className:"text-xs text-[var(--optimex-text-secondary)]",children:a.token_symbol})]}),s.jsx(Le,{token:a,size:"sm",showNetworkBadge:!1})]})]})]})}const Vu=1e4;function Uu({apiBaseUrl:e,walletAddresses:t,enabled:r=!0,limit:n=20}){const{data:o,isLoading:a,isError:l,refetch:i}=Qe({queryKey:["trades",t,n],queryFn:async()=>Ge(e).listTrades({from_user_address:t,limit:n}),enabled:r&&!!t?.length,refetchInterval:Vu,retry:2,retryDelay:2e3});return{trades:o??[],isLoading:a,isError:l,refetch:i}}function Hu(e){if(!e)return"pending";switch(e.toLowerCase()){case"success":case"completed":return"success";case"failed":case"refunded":case"expired":return"failed";default:return"pending"}}function qu({trade:e}){const t=e.from_token,r=e.to_token,n=Hu(e.state),o=Ne(e.amount_in,t.token_decimals),a=Ne(e.min_amount_out,r.token_decimals);return s.jsxs("div",{className:"flex items-center justify-between p-3 rounded-lg bg-[var(--optimex-surface)] border border-[var(--optimex-border)]",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(Le,{token:t,size:"sm",showNetworkBadge:!1}),s.jsxs("div",{className:"flex flex-col",children:[s.jsx("span",{className:"text-sm font-semibold text-[var(--optimex-text)]",children:o}),s.jsx("span",{className:"text-xs text-[var(--optimex-text-secondary)]",children:t.token_symbol})]})]}),s.jsx("div",{className:"flex items-center px-2",children:s.jsx("svg",{className:"w-4 h-4 text-[var(--optimex-text-secondary)]",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,children:s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M14 5l7 7m0 0l-7 7m7-7H3"})})}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsxs("div",{className:"flex flex-col items-end",children:[s.jsx("span",{className:"text-sm font-semibold text-[var(--optimex-text)]",children:a}),s.jsx("span",{className:"text-xs text-[var(--optimex-text-secondary)]",children:r.token_symbol})]}),s.jsx(Le,{token:r,size:"sm",showNetworkBadge:!1})]}),s.jsx("div",{className:"ml-3",children:s.jsx(Mr,{status:n})})]})}function er(){return s.jsxs("div",{className:"flex items-center justify-between p-3 rounded-lg bg-[var(--optimex-surface)] border border-[var(--optimex-border)]",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("div",{className:"w-6 h-6 rounded-full bg-[var(--optimex-border)] animate-pulse"}),s.jsxs("div",{className:"flex flex-col gap-1",children:[s.jsx("div",{className:"w-14 h-4 bg-[var(--optimex-border)] rounded animate-pulse"}),s.jsx("div",{className:"w-8 h-3 bg-[var(--optimex-border)] rounded animate-pulse"})]})]}),s.jsx("div",{className:"w-4 h-4 bg-[var(--optimex-border)] rounded animate-pulse"}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsxs("div",{className:"flex flex-col items-end gap-1",children:[s.jsx("div",{className:"w-14 h-4 bg-[var(--optimex-border)] rounded animate-pulse"}),s.jsx("div",{className:"w-8 h-3 bg-[var(--optimex-border)] rounded animate-pulse"})]}),s.jsx("div",{className:"w-6 h-6 rounded-full bg-[var(--optimex-border)] animate-pulse"})]}),s.jsx("div",{className:"ml-3 w-20 h-6 bg-[var(--optimex-border)] rounded-full animate-pulse"})]})}function Qu(){return s.jsxs("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[s.jsx("div",{className:"w-16 h-16 mb-4 rounded-full bg-[var(--optimex-surface)] flex items-center justify-center",children:s.jsx("svg",{className:"w-8 h-8 text-[var(--optimex-text-secondary)]",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:1.5,children:s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 6v6h4.5m4.5 0a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"})})}),s.jsx("p",{className:"text-sm text-[var(--optimex-text-secondary)]",children:"No trade history yet"})]})}function Gu({open:e,onOpenChange:t,evmAddress:r,btcAddress:n,solanaAddress:o}){const a=lt(),l=[r,n,o].filter(u=>!!u),{trades:i,isLoading:c}=Uu({apiBaseUrl:a.apiBaseUrl,walletAddresses:l.length>0?l:void 0,enabled:e&&l.length>0});return s.jsx(_r,{open:e,onOpenChange:t,title:"Trade History",className:"w-full max-w-md",children:s.jsxs("div",{className:"p-4 space-y-3 max-h-[60vh] overflow-y-auto",children:[c?s.jsxs(s.Fragment,{children:[s.jsx(er,{}),s.jsx(er,{}),s.jsx(er,{})]}):i.length===0?s.jsx(Qu,{}):i.map(u=>s.jsx(qu,{trade:u},u.trade_id)),!c&&i.length>0&&s.jsxs("div",{className:"flex items-center justify-center gap-2 pt-2 text-xs text-[var(--optimex-text-secondary)]",children:[s.jsx(Un,{className:"w-3 h-3 animate-spin"}),s.jsx("span",{children:"Auto-refreshing"})]})]})})}function Ku(e,t){return p.useMemo(()=>{const r=e.trim();if(!t||!r)return{isValid:!r,error:void 0};const n=gr(r,t.network_type,t.network_id);return{isValid:n.isValid,error:n.isValid?void 0:n.error}},[e,t])}function Yu(){const[e,t]=p.useState(null),[r,n]=p.useState(!1),[o,a]=p.useState(!1),l=p.useCallback(()=>t("from"),[]),i=p.useCallback(()=>t("to"),[]),c=p.useCallback(()=>t(null),[]),u=p.useCallback(()=>n(!0),[]),d=p.useCallback(()=>n(!1),[]),f=p.useCallback(()=>a(b=>!b),[]),m=p.useCallback(()=>a(!1),[]);return{tokenSelect:{isOpen:e!==null,type:e,openFrom:l,openTo:i,close:c},confirm:{isOpen:r,open:u,close:d},settings:{isOpen:o,toggle:f,close:m}}}function Zu({fromToken:e,toToken:t,amount:r,fromUserAddress:n,toUserAddress:o,userRefundPubkey:a,slippage:l,config:i}){return p.useMemo(()=>{const c=o.trim(),u=i.affiliateAddress&&i.affiliateFee?[{provider:i.affiliateProvider??"optimex-widget",rate:String(i.affiliateFee),receiver:i.affiliateAddress,network:"ethereum"}]:void 0,d=Math.round(l*100);return{from_token:e,to_token:t,amount:r,from_user_address:n,to_user_address:c||null,user_refund_pubkey:a,slippage:String(d),affiliate_fee_bps:i.affiliateFee?String(i.affiliateFee):void 0,affiliate_info:u,trade_timeout:i.tradeTimeout,script_timeout:i.scriptTimeout}},[e,t,r,n,o,a,l,i.affiliateFee,i.affiliateAddress,i.affiliateProvider,i.tradeTimeout,i.scriptTimeout])}function Xu(e,t){return p.useMemo(()=>{if(!e||!t)return{walletAccount:void 0,evmWalletAccount:void 0};switch(e.network_type){case K.EVM:return{walletAccount:t.evm,evmWalletAccount:t.evm};case K.BTC:return{walletAccount:t.btc,evmWalletAccount:void 0};case K.SOLANA:return{walletAccount:t.solana,evmWalletAccount:void 0};default:return{walletAccount:void 0,evmWalletAccount:void 0}}},[e,t])}const En={BTC:1,EVM:2,Solana:3};function Ju(e){const{tokens:t,pairs:r,selectedFromToken:n}=e,o=p.useMemo(()=>{const b=new Map;if(!r)return b;for(const v of r){if(!v.is_active)continue;const h=b.get(v.from_token_id);h?h.add(v.to_token_id):b.set(v.from_token_id,new Set([v.to_token_id]))}return b},[r]),a=p.useMemo(()=>t??[],[t]),l=p.useMemo(()=>{const b=new Set;for(const v of a){const h=o.get(v.token_id);(!h||h.size===0)&&b.add(v.token_id)}return b},[a,o]),i=p.useMemo(()=>{if(!n)return[];const b=o.get(n.token_id);return!b||b.size===0?[]:a.filter(v=>b.has(v.token_id))},[n,o,a]),c=p.useCallback((b,v)=>o.get(b)?.has(v)??!1,[o]),u=p.useCallback(b=>(o.get(b)?.size??0)>0,[o]),d=p.useCallback(b=>[...b].sort((v,h)=>{const y=En[v.network_type]??99,g=En[h.network_type]??99;return y-g}),[]),f=p.useCallback(b=>{const v=o.get(b.token_id);if(!v||v.size===0)return null;const h=a.filter(g=>v.has(g.token_id));return h.length===0?null:d(h)[0]??null},[o,a,d]),m=p.useCallback(()=>{if(a.length===0)return null;const b=d(a);for(const v of b){const h=f(v);if(h)return{fromToken:v,toToken:h}}return null},[a,d,f]);return{allTokens:a,tokensWithoutPairs:l,availableToTokens:i,isPairValid:c,findBestToToken:f,hasValidPairs:u,getDefaultPair:m}}function ed(e){if(!e.chain_id||e.network_type!=="EVM")return;const t=parseInt(e.chain_id,10);return isNaN(t)?void 0:t}async function td(e,t){const r=ed(t);if(!r)throw new Error(`Cannot determine chain ID for token: ${t.token_id}`);return await e.getChainId()===r?!1:(await e.switchChain(r),!0)}const rd="0xdd62ed3e",nd="0x095ea7b3",sd="0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff";function mr(e){return e.toLowerCase().replace("0x","").padStart(64,"0")}function od(e){return e.toString(16).padStart(64,"0")}function ad(e){const t=e.startsWith("0x")?e.slice(2):e;return!t||t===""?0n:BigInt("0x"+t)}async function id(e,t,r,n){const o=Mt(e),a=rd+mr(r)+mr(n),i=await(await fetch(o,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({jsonrpc:"2.0",id:1,method:"eth_call",params:[{to:t,data:a},"latest"]})})).json();if(i.error)throw new Error(`Failed to check allowance: ${i.error.message}`);return ad(i.result)}function ld(e,t){const r=t?od(t):sd.slice(2);return`${nd}${mr(e)}${r}`}async function cd(e,t,r,n){const o=ld(r,n);return await e.sendTransaction({to:t,data:o})}async function ud(e,t,r=60,n=2e3){const o=Mt(e);for(let a=0;a<r;a++){const i=await(await fetch(o,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({jsonrpc:"2.0",id:1,method:"eth_getTransactionReceipt",params:[t]})})).json();if(i.error)throw new Error(`RPC error: ${i.error.message}`);if(i.result){const c=i.result;return{status:c.status==="0x1"?"success":"reverted",blockNumber:c.blockNumber,transactionHash:c.transactionHash}}await new Promise(c=>setTimeout(c,n))}throw new Error(`Transaction ${t} not confirmed after ${r} attempts`)}function dd(e){return e?"getChainId"in e&&"switchChain"in e&&typeof e.getChainId=="function"&&typeof e.switchChain=="function":!1}function fd({apiBaseUrl:e,onWalletTx:t,onSubmitTx:r,onError:n}){const[o,a]=p.useState({stage:"idle",txHash:null,tradeId:null,error:null}),l=p.useCallback(()=>{a({stage:"idle",txHash:null,tradeId:null,error:null})},[]),i=p.useCallback(()=>{a(f=>({stage:"idle",txHash:f.txHash,tradeId:f.tradeId,error:null}))},[]),c=p.useCallback((f,m,b)=>{a(v=>({...v,stage:"error",error:f})),n?.({error:f,stage:m,trade_id:b})},[n]),u=p.useCallback(async(f,m,b,v)=>{const h=b.deposit_address;if(!h)throw new Error("Missing deposit address for EVM transaction");a(k=>({...k,stage:"switching_chain"})),await td(f,m);const y=Pr(m);if(!y&&m.token_address&&(a(w=>({...w,stage:"checking_allowance"})),await id(m.network_id,m.token_address,f.address,h)<v)){a(A=>({...A,stage:"approving"}));const w=await cd(f,m.token_address,h,v);if((await ud(m.network_id,w)).status==="reverted")throw new Error("Token approval transaction reverted")}a(k=>({...k,stage:"broadcasting"}));const g={to:h,value:y?v:0n,data:b.payload?b.payload:void 0};return await f.sendTransaction(g)},[]),d=p.useCallback(async({quote:f,fromToken:m,toToken:b,amountIn:v,walletAccount:h,evmWalletAccount:y})=>{const g=Ge(e);try{a({stage:"confirming",txHash:null,tradeId:f.trade_id,error:null});const S=y||h;if(!S)throw new Error("Wallet not available");a(N=>({...N,stage:"signing"}));let k;const w=zn(v,m.token_decimals);if(m.network_type===K.EVM){const N=y||(dd(h)?h:null);if(N)k=await u(N,m,f,w);else{const A=f.deposit_address,C=f.payload?f.payload:void 0;if(!A)throw new Error("Missing deposit address for EVM transaction");a(O=>({...O,stage:"broadcasting"}));const j={to:A,value:w,data:C};k=await S.sendTransaction(j)}}else if(m.network_type===K.BTC){if(!f.deposit_address)throw new Error("Missing deposit address for BTC transaction");a(N=>({...N,stage:"broadcasting"})),k=await S.sendTransaction({toAddress:f.deposit_address,amount:w})}else if(m.network_type===K.SOLANA){if(!f.payload)throw new Error("Missing payload for Solana transaction");a(N=>({...N,stage:"broadcasting"})),k=await S.sendTransaction(f.payload)}else throw new Error(`Unsupported network type: ${m.network_type}`);t?.({trade_id:f.trade_id,tx_hash:k,from_token:m,to_token:b,amount_in:v}),a(N=>({...N,txHash:k,stage:"submitting"}));try{await g.submitTransaction(f.trade_id,k),r?.({trade_id:f.trade_id,tx_hash:k,status:"success"})}catch(N){throw r?.({trade_id:f.trade_id,tx_hash:k,status:"error",error:N.message}),N}return a(N=>({...N,stage:"submitted"})),{tradeId:f.trade_id,txHash:k}}catch(S){const k=o.stage==="approving"?"approval":"wallet_tx";throw c(S,k,f.trade_id),S}},[e,t,r,c,u,o.stage]);return{...o,executeSwap:d,resetState:l,resetStateKeepTradeId:i,isExecuting:o.stage!=="idle"&&o.stage!=="submitted"&&o.stage!=="error"}}function hd({defaultPair:e,isPairValid:t,findBestToToken:r,hasValidPairs:n,defaultSlippage:o=.75,selectingToken:a=null}){const[l,i]=p.useState(null),[c,u]=p.useState(null),[d,f]=p.useState(""),[m,b]=p.useState(""),[v,h]=p.useState(o),y=l??e?.fromToken??null,g=c??e?.toToken??null,S=p.useCallback(()=>{y&&g&&t(g.token_id,y.token_id)&&(i(g),u(y),f(""))},[y,g,t]),k=p.useCallback(w=>{if(a==="from"){if(!n(w.token_id))return!1;if(w.token_id===g?.token_id)u(y);else if(g&&!t(w.token_id,g.token_id)){const N=r(w);u(N)}return i(w),!0}else if(a==="to")return w.token_id===y?.token_id&&i(g),u(w),!0;return!1},[a,y,g,t,r,n]);return{fromToken:y,toToken:g,handleTokenSelect:k,handleSwapDirection:S,amount:d,setAmount:f,receivingAddress:m,setReceivingAddress:b,slippage:v,setSlippage:h}}function md({fromToken:e,toToken:t}){const r=Ze();return p.useMemo(()=>{const n=r.evmAddress,o=r.btcAddress,a=r.btcPublicKey;let l=null,i=null;return e?.network_type===K.EVM?(l=n,i=n):e?.network_type===K.BTC&&(l=o,i=a),{fromUserAddress:l,userRefundPubkey:i}},[r.evmAddress,r.btcAddress,r.btcPublicKey,e,t])}function pd({fromToken:e,toToken:t,amount:r,quote:n,isLoadingQuote:o,isFetchingQuote:a,receivingAddress:l,onConnectWallet:i,onSwap:c}){const u=Ze();return p.useMemo(()=>{if(!ju(u,e?.network_type)){const m=Su(e?.network_type);return{text:m?`Connect ${m} Wallet`:"Connect Wallet",disabled:!1,action:i}}return!e||!t?{text:"Select Tokens",disabled:!0,action:void 0}:!r||parseFloat(r)<=0?{text:"Enter Amount",disabled:!0,action:void 0}:l.trim()?gr(l,t.network_type,t.network_id).isValid?o||a?{text:"Getting Quote...",disabled:!0,action:void 0}:n?{text:"Review",disabled:!1,action:c}:{text:"Unable to Quote",disabled:!0,action:void 0}:{text:"Enter Receiving Address",disabled:!0,action:void 0}:{text:"Enter Receiving Address",disabled:!0,action:void 0}},[u.isEvmConnected,u.isBtcConnected,u.isSolanaConnected,e,t,r,o,a,n,i,c,l])}function xd({tokens:e,defaultFromToken:t,defaultToToken:r,isPairValid:n}){return p.useMemo(()=>{if(!t||!r||!e)return null;const o=e.find(l=>l.token_id===t),a=e.find(l=>l.token_id===r);return!o||!a?null:n(o.token_id,a.token_id)?{fromToken:o,toToken:a}:null},[e,t,r,n])}function vd(){const e=Ze(),t=lt(),r=Yu(),{tokensData:n}=eu(),o=n.tokens,a=n.pairs,{allTokens:l,tokensWithoutPairs:i,isPairValid:c,findBestToToken:u,hasValidPairs:d,getDefaultPair:f}=Ju({tokens:o,pairs:a,selectedFromToken:null}),b=xd({tokens:o,defaultFromToken:t.defaultFromToken,defaultToToken:t.defaultToToken,isPairValid:c})??f(),{fromToken:v,toToken:h,handleTokenSelect:y,handleSwapDirection:g,amount:S,setAmount:k,receivingAddress:w,setReceivingAddress:N,slippage:A,setSlippage:C}=hd({defaultPair:b,isPairValid:c,findBestToToken:u,hasValidPairs:d,defaultSlippage:t.defaultSlippage,selectingToken:r.tokenSelect.type}),j=p.useMemo(()=>v?l.filter(F=>c(v.token_id,F.token_id)):[],[v,l,c]),O=Ku(w,h),{fromUserAddress:L,userRefundPubkey:M}=md({fromToken:v,toToken:h}),$=Zu({fromToken:v,toToken:h,amount:S,fromUserAddress:L,toUserAddress:w,userRefundPubkey:M,slippage:A,config:{affiliateFee:t.affiliateFee,affiliateAddress:t.affiliateAddress,affiliateProvider:t.affiliateProvider,tradeTimeout:t.tradeTimeout,scriptTimeout:t.scriptTimeout}}),_=!!v&&!!h&&parseFloat(S)>0&&!!w.trim()&&!r.confirm.isOpen,{data:W,isLoading:V,isFetching:Q,refetch:U}=Ea(t.apiBaseUrl,{...$,enabled:_,onQuote:t.callbacks?.onQuote}),E=fd({apiBaseUrl:t.apiBaseUrl,onWalletTx:t.callbacks?.onWalletTx,onSubmitTx:t.callbacks?.onSubmitTx,onError:t.callbacks?.onError}),{walletAccount:ne,evmWalletAccount:ie}=Xu(v,e.externalWalletClient??void 0),Te=p.useCallback(()=>{e.isExternalWallet?e.onRequestWallet?.(v?.network_id??""):e.openConnectModal?.()},[e,v?.network_id]),pe=p.useCallback(()=>{!W||!v||!h||(E.resetState(),r.confirm.open())},[W,v,h,r.confirm,E]),H=p.useCallback((F=!1)=>{E.isExecuting||(r.confirm.close(),F&&E.resetStateKeepTradeId())},[E,r.confirm]),Z=p.useCallback(async()=>{if(!(!W||!v||!h))try{const{txHash:F}=await E.executeSwap({quote:W,fromToken:v,toToken:h,amountIn:S,walletAccount:ne,evmWalletAccount:ie});H(!!F),k(""),N("")}catch(F){console.error("Swap failed:",F)}},[W,v,h,S,ne,ie,E,H,k,N]),de=p.useCallback(F=>{y(F)&&r.tokenSelect.close()},[y,r.tokenSelect]),be=pd({fromToken:v,toToken:h,amount:S,quote:W,isLoadingQuote:V,isFetchingQuote:Q,receivingAddress:w,onConnectWallet:Te,onSwap:pe});return{tokens:{from:v,to:h,all:l,availableTo:j,withoutPairs:i,data:n},input:{amount:S,setAmount:k,receivingAddress:w,setReceivingAddress:N,slippage:A,setSlippage:C},quote:{data:W,isLoading:V,isFetching:Q,refetch:U},validation:{address:O},buttonState:be,modals:r,tokenSelect:{type:r.tokenSelect.type},actions:{selectToken:de,swapDirection:g,connectWallet:Te,openSwapConfirm:pe,closeConfirmModal:H,confirmSwap:Z},execution:{stage:E.stage,txHash:E.txHash,tradeId:E.tradeId,error:E.error,isExecuting:E.isExecuting},wallet:e,addresses:{sending:L,receiving:w}}}const gd=5e3;function Nn(e){if(!e)return"pending";switch(e.toLowerCase()){case"success":case"completed":return"success";case"failed":case"refunded":case"expired":return"failed";default:return"pending"}}function bd({apiBaseUrl:e,tradeId:t}){const{data:r,isLoading:n}=Qe({queryKey:["trade",t],queryFn:async()=>Ge(e).getTrade(t),enabled:!!t,refetchInterval:o=>{const a=o.state.data;return a&&Nn(a.state)==="success"?!1:gd},retry:!0,retryDelay:2e3});return{trade:r??null,status:Nn(r?.state),isLoading:n}}function ho(){const e=vd(),t=lt(),{tokens:r,input:n,quote:o,modals:a,buttonState:l,validation:i,actions:c,addresses:u,wallet:d,execution:f}=e,[m,b]=p.useState(!1),{trade:v,status:h,isLoading:y}=bd({apiBaseUrl:t.apiBaseUrl,tradeId:f.tradeId}),{formattedBalance:g}=fo({token:r.from,walletAddress:u.sending,enabled:!!r.from&&!!u.sending,polling:!0}),{calculateUsdValue:S}=Ot({symbol:r.from?.token_symbol,enabled:!!r.from}),{calculateUsdValue:k}=Ot({symbol:r.to?.token_symbol,enabled:!!r.to}),w=d.isConnected,N=S(n.amount),A=o.data?k(Ne(o.data.min_amount_out,r.to?.token_decimals||18)):"$0.00";return s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"flex flex-col gap-4 w-full min-w-0",children:[s.jsx(ou,{headerLeft:t.headerLeft,slippage:n.slippage,onSlippageChange:n.setSlippage,isSettingsOpen:a.settings.isOpen,onSettingsToggle:a.settings.toggle,onHistoryClick:()=>b(!0),hideHistory:t.hideHistory||!d.isConnected}),s.jsxs(Ar,{children:[s.jsxs("div",{className:"space-y-2 relative",children:[s.jsx(jn,{token:r.from,value:n.amount,onChange:n.setAmount,onSelectToken:a.tokenSelect.openFrom,balance:g,isWalletConnected:w,usdValue:N}),s.jsx(ao,{onClick:c.swapDirection}),s.jsx(jn,{token:r.to,value:o.data?Ne(o.data.min_amount_out,r.to?.token_decimals||18):"",readOnly:!0,onSelectToken:a.tokenSelect.openTo,isOutput:!0,usdValue:A})]}),s.jsx("div",{className:"mt-4",children:s.jsx(tu,{token:r.to,value:n.receivingAddress,onChange:n.setReceivingAddress,error:i.address.error})}),s.jsx("div",{className:"mt-4",children:s.jsx(iu,{text:l.text,disabled:l.disabled,onClick:l.action})}),o.data&&r.from&&r.to&&s.jsx("div",{className:"mt-4",children:s.jsx(au,{quote:o.data,fromToken:r.from,toToken:r.to,amount:n.amount,slippage:n.slippage,isFetching:o.isFetching,onRefresh:o.refetch})}),s.jsx("div",{className:"mt-4",children:s.jsx(lu,{})}),f.tradeId&&f.txHash&&s.jsx("div",{className:"mt-4",children:s.jsx(Wu,{trade:v,status:h,isLoading:y})})]})]}),s.jsx(Bu,{swap:e}),m&&s.jsx(Gu,{open:m,onOpenChange:b,evmAddress:d.evmAddress??void 0,btcAddress:d.btcAddress??void 0,solanaAddress:d.solanaAddress??void 0})]})}function yd({className:e,connectLabel:t="Connect Wallet",showNetworkBadge:r=!0,onClick:n}){const o=Ze(),a=o.evmAddress||o.btcAddress||o.solanaAddress,l=()=>{if(n){n();return}o.isExternalWallet?o.onRequestWallet?.():o.openConnectModal?.()},i=()=>r?o.isEvmConnected?s.jsx("span",{className:"rounded bg-blue-500/20 px-1.5 py-0.5 text-xs text-blue-400",children:"EVM"}):o.isBtcConnected?s.jsx("span",{className:"rounded bg-orange-500/20 px-1.5 py-0.5 text-xs text-orange-400",children:"BTC"}):o.isSolanaConnected?s.jsx("span",{className:"rounded bg-purple-500/20 px-1.5 py-0.5 text-xs text-purple-400",children:"SOL"}):null:null;return o.isConnected?s.jsxs("div",{className:`flex items-center gap-2 ${e||""}`,children:[i(),s.jsxs("button",{onClick:l,className:"group flex items-center gap-1.5 rounded-[0.25rem] bg-[var(--optimex-surface-hover)] px-3 py-1.5 text-sm text-[var(--optimex-text)] transition-colors hover:bg-[rgba(239,68,68,0.2)]",children:[s.jsx("span",{children:ba(a)}),s.jsx(Pa,{className:"h-3.5 w-3.5 opacity-0 transition-opacity group-hover:opacity-100"})]})]}):s.jsx("button",{onClick:l,className:`rounded-[0.25rem] bg-[var(--optimex-primary)] px-4 py-1.5 text-sm font-medium text-white transition-colors hover:bg-[var(--optimex-primary-hover)] ${e||""}`,children:t})}function mo(){const[e,t]=x.useState(!1);return s.jsxs("div",{children:[s.jsx("button",{onClick:()=>t(!0),style:{padding:"8px 16px",backgroundColor:"#ed6300",color:"white",border:"none",borderRadius:"8px",cursor:"pointer"},children:"Open Dialog Demo"}),s.jsx(jr,{open:e,onOpenChange:t,children:s.jsxs(Sr,{children:[s.jsx(Er,{style:{position:"fixed",inset:0,zIndex:9999,backgroundColor:"rgba(0, 0, 0, 0.6)",backdropFilter:"blur(4px)"}}),s.jsxs(Nr,{style:{position:"fixed",left:"50%",top:"50%",transform:"translate(-50%, -50%)",zIndex:9999,width:"90vw",maxWidth:"500px",maxHeight:"85vh",display:"flex",flexDirection:"column",backgroundColor:"#343b47",borderRadius:"12px",border:"1px solid rgba(255, 255, 255, 0.1)",boxShadow:"0 25px 50px -12px rgba(0, 0, 0, 0.25)",outline:"none"},children:[s.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"16px",borderBottom:"1px solid rgba(255, 255, 255, 0.05)"},children:[s.jsx(Tr,{style:{margin:0,fontSize:"18px",fontWeight:700,color:"#ffffff"},children:"Dialog Demo Title"}),s.jsx(Tt,{style:{padding:"6px",backgroundColor:"transparent",border:"none",borderRadius:"6px",color:"rgba(255, 255, 255, 0.48)",cursor:"pointer"},children:s.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:s.jsx("path",{d:"M18 6L6 18M6 6l12 12"})})})]}),s.jsxs("div",{style:{flex:1,overflow:"auto",padding:"16px"},children:[s.jsx(Rr,{style:{margin:0,fontSize:"14px",color:"rgba(255, 255, 255, 0.48)",lineHeight:1.5},children:"This is a simple dialog demo using Radix Dialog with inline styles. No CSS variables are used here."}),s.jsxs("div",{style:{marginTop:"16px"},children:[s.jsx("p",{style:{color:"#ffffff",margin:"0 0 8px"},children:"If this dialog renders correctly:"}),s.jsxs("ul",{style:{color:"rgba(255, 255, 255, 0.7)",margin:0,paddingLeft:"20px"},children:[s.jsx("li",{children:"Centered on screen vertically and horizontally"}),s.jsx("li",{children:"Dark background (#343b47)"}),s.jsx("li",{children:"Backdrop blur effect"}),s.jsx("li",{children:"Close button works"}),s.jsx("li",{children:"Press Escape to close"})]})]}),s.jsxs("div",{style:{marginTop:"16px"},children:[s.jsx("label",{style:{display:"block",color:"#ffffff",marginBottom:"8px"},children:"Test Input:"}),s.jsx("input",{type:"text",placeholder:"Type something...",style:{width:"100%",padding:"10px 12px",backgroundColor:"rgba(0, 0, 0, 0.2)",border:"1px solid rgba(255, 255, 255, 0.1)",borderRadius:"8px",color:"#ffffff",fontSize:"14px",outline:"none",boxSizing:"border-box"}})]})]}),s.jsxs("div",{style:{display:"flex",gap:"8px",justifyContent:"flex-end",padding:"16px",borderTop:"1px solid rgba(255, 255, 255, 0.05)"},children:[s.jsx(Tt,{style:{padding:"8px 16px",backgroundColor:"rgba(255, 255, 255, 0.1)",border:"none",borderRadius:"6px",color:"#ffffff",cursor:"pointer"},children:"Cancel"}),s.jsx("button",{onClick:()=>{alert("Confirmed!"),t(!1)},style:{padding:"8px 16px",backgroundColor:"#ed6300",border:"none",borderRadius:"6px",color:"#ffffff",cursor:"pointer"},children:"Confirm"})]})]})]})})]})}function wd({apiBaseUrl:e,walletClient:t,onRequestWallet:r,theme:n,defaultFromToken:o,defaultToToken:a,headerLeft:l,affiliateFee:i,affiliateAddress:c,affiliateProvider:u,tradeTimeout:d,scriptTimeout:f,defaultSlippage:m=.75,hideHistory:b=!1,children:v,renderLoading:h,renderError:y,queryClient:g,onQuote:S,onWalletTx:k,onSubmitTx:w,onSwapComplete:N,onError:A}){ma(e);const C=p.useMemo(()=>g??new Uo,[g]),O={apiBaseUrl:e,defaultSlippage:m,affiliateFee:i,affiliateAddress:c,affiliateProvider:u,tradeTimeout:d,scriptTimeout:f,defaultFromToken:o,defaultToToken:a,hideHistory:b,headerLeft:l,callbacks:{onQuote:S,onWalletTx:k,onSubmitTx:w,onSwapComplete:N,onError:A},renderLoading:h,renderError:y},L=v??s.jsx(ho,{});return s.jsx("div",{className:"optx-widget",children:s.jsx(Ko,{client:C,children:s.jsx(Na,{value:O,children:s.jsx(fa,{theme:n,children:s.jsx(ha,{externalWalletClient:t,onRequestWallet:r,children:s.jsxs(Jc,{children:[L,s.jsx(mo,{})]})})})})})})}exports.ConnectButton=yd;exports.DialogDemo=mo;exports.SwapCard=ho;exports.SwapWidget=wd;exports.createEvmWalletClient=co;exports.createEvmWalletClientAsync=Nu;exports.createEvmWalletClientSync=uo;exports.useWallet=Ze;
package/dist/index.mjs CHANGED
@@ -1,4 +1,4 @@
1
- (function(){"use strict";try{if(typeof document<"u"){var t=document.createElement("style");t.appendChild(document.createTextNode('.optx-widget .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.optx-widget .fixed{position:fixed}.optx-widget .absolute{position:absolute}.optx-widget .relative{position:relative}.optx-widget .inset-0{inset:0}.optx-widget .inset-2{inset:.5rem}.optx-widget .inset-x-0{left:0;right:0}.optx-widget .-bottom-1{bottom:-.25rem}.optx-widget .-bottom-2{bottom:-.5rem}.optx-widget .-right-1{right:-.25rem}.optx-widget .-top-2{top:-.5rem}.optx-widget .bottom-0{bottom:0}.optx-widget .bottom-full{bottom:100%}.optx-widget .left-0{left:0}.optx-widget .left-1\\/2{left:50%}.optx-widget .left-3{left:.75rem}.optx-widget .left-4{left:1rem}.optx-widget .right-0{right:0}.optx-widget .right-3{right:.75rem}.optx-widget .right-4{right:1rem}.optx-widget .top-1\\/2{top:50%}.optx-widget .top-full{top:100%}.optx-widget .z-10{z-index:10}.optx-widget .z-50{z-index:50}.optx-widget .z-\\[9999\\]{z-index:9999}.optx-widget .\\!m-0{margin:0!important}.optx-widget .-my-4{margin-top:-1rem;margin-bottom:-1rem}.optx-widget .mx-auto{margin-left:auto;margin-right:auto}.optx-widget .mb-1{margin-bottom:.25rem}.optx-widget .mb-2{margin-bottom:.5rem}.optx-widget .mb-3{margin-bottom:.75rem}.optx-widget .mb-4{margin-bottom:1rem}.optx-widget .mb-6{margin-bottom:1.5rem}.optx-widget .ml-2{margin-left:.5rem}.optx-widget .ml-3{margin-left:.75rem}.optx-widget .ml-auto{margin-left:auto}.optx-widget .mt-1{margin-top:.25rem}.optx-widget .mt-2{margin-top:.5rem}.optx-widget .mt-24{margin-top:6rem}.optx-widget .mt-3{margin-top:.75rem}.optx-widget .mt-4{margin-top:1rem}.optx-widget .mt-auto{margin-top:auto}.optx-widget .block{display:block}.optx-widget .inline-block{display:inline-block}.optx-widget .inline{display:inline}.optx-widget .flex{display:flex}.optx-widget .size-10{width:2.5rem;height:2.5rem}.optx-widget .size-12{width:3rem;height:3rem}.optx-widget .size-2{width:.5rem;height:.5rem}.optx-widget .size-20{width:5rem;height:5rem}.optx-widget .size-3{width:.75rem;height:.75rem}.optx-widget .size-4{width:1rem;height:1rem}.optx-widget .size-5{width:1.25rem;height:1.25rem}.optx-widget .size-8{width:2rem;height:2rem}.optx-widget .h-1\\.5{height:.375rem}.optx-widget .h-10{height:2.5rem}.optx-widget .h-12{height:3rem}.optx-widget .h-14{height:3.5rem}.optx-widget .h-16{height:4rem}.optx-widget .h-2{height:.5rem}.optx-widget .h-3{height:.75rem}.optx-widget .h-3\\.5{height:.875rem}.optx-widget .h-4{height:1rem}.optx-widget .h-5{height:1.25rem}.optx-widget .h-6{height:1.5rem}.optx-widget .h-8{height:2rem}.optx-widget .h-auto{height:auto}.optx-widget .h-full{height:100%}.optx-widget .max-h-\\[2\\.5rem\\]{max-height:2.5rem}.optx-widget .max-h-\\[2rem\\]{max-height:2rem}.optx-widget .max-h-\\[3rem\\]{max-height:3rem}.optx-widget .max-h-\\[5rem\\]{max-height:5rem}.optx-widget .max-h-\\[600px\\]{max-height:600px}.optx-widget .max-h-\\[60vh\\]{max-height:60vh}.optx-widget .max-h-\\[85vh\\]{max-height:85vh}.optx-widget .max-h-\\[96vh\\]{max-height:96vh}.optx-widget .w-1\\/3{width:33.333333%}.optx-widget .w-10{width:2.5rem}.optx-widget .w-12{width:3rem}.optx-widget .w-14{width:3.5rem}.optx-widget .w-16{width:4rem}.optx-widget .w-20{width:5rem}.optx-widget .w-24{width:6rem}.optx-widget .w-28{width:7rem}.optx-widget .w-3{width:.75rem}.optx-widget .w-3\\.5{width:.875rem}.optx-widget .w-32{width:8rem}.optx-widget .w-4{width:1rem}.optx-widget .w-48{width:12rem}.optx-widget .w-5{width:1.25rem}.optx-widget .w-6{width:1.5rem}.optx-widget .w-72{width:18rem}.optx-widget .w-8{width:2rem}.optx-widget .w-96{width:24rem}.optx-widget .w-auto{width:auto}.optx-widget .w-full{width:100%}.optx-widget .min-w-0{min-width:0px}.optx-widget .min-w-\\[140px\\]{min-width:140px}.optx-widget .max-w-2xl{max-width:42rem}.optx-widget .max-w-\\[280px\\]{max-width:280px}.optx-widget .max-w-\\[calc\\(100\\%-2rem\\)\\]{max-width:calc(100% - 2rem)}.optx-widget .max-w-md{max-width:28rem}.optx-widget .flex-1{flex:1 1 0%}.optx-widget .flex-shrink-0,.optx-widget .shrink-0{flex-shrink:0}.optx-widget .-translate-x-1\\/2{--tw-translate-x: -50%;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))}.optx-widget .-translate-y-1\\/2{--tw-translate-y: -50%;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))}.optx-widget .rotate-180{--tw-rotate: 180deg;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))}.optx-widget .rotate-45{--tw-rotate: 45deg;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))}.optx-widget .transform{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))}@keyframes pulse{50%{opacity:.5}}.optx-widget .animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.optx-widget .animate-spin{animation:spin 1s linear infinite}.optx-widget .cursor-not-allowed{cursor:not-allowed}.optx-widget .cursor-pointer{cursor:pointer}.optx-widget .resize{resize:both}.optx-widget .flex-col{flex-direction:column}.optx-widget .flex-wrap{flex-wrap:wrap}.optx-widget .items-end{align-items:flex-end}.optx-widget .items-center{align-items:center}.optx-widget .justify-end{justify-content:flex-end}.optx-widget .justify-center{justify-content:center}.optx-widget .justify-between{justify-content:space-between}.optx-widget .gap-0\\.5{gap:.125rem}.optx-widget .gap-1{gap:.25rem}.optx-widget .gap-1\\.5{gap:.375rem}.optx-widget .gap-2{gap:.5rem}.optx-widget .gap-3{gap:.75rem}.optx-widget .gap-4{gap:1rem}.optx-widget :is(.space-y-1>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.optx-widget :is(.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))}.optx-widget :is(.space-y-3>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.optx-widget :is(.divide-y>:not([hidden])~:not([hidden])){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.optx-widget :is(.divide-\\[var\\(--optimex-border\\)\\]>:not([hidden])~:not([hidden])){border-color:var(--optimex-border)}.optx-widget .overflow-auto{overflow:auto}.optx-widget .overflow-hidden{overflow:hidden}.optx-widget .overflow-y-auto{overflow-y:auto}.optx-widget .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.optx-widget .break-all{word-break:break-all}.optx-widget .rounded{border-radius:.25rem}.optx-widget .rounded-2xl{border-radius:1rem}.optx-widget .rounded-\\[0\\.25rem\\]{border-radius:.25rem}.optx-widget .rounded-\\[9999px\\]{border-radius:9999px}.optx-widget .rounded-\\[var\\(--optimex-overlay-radius\\)\\]{border-radius:var(--optimex-overlay-radius)}.optx-widget .rounded-\\[var\\(--optimex-radius-button\\)\\]{border-radius:var(--optimex-radius-button)}.optx-widget .rounded-\\[var\\(--optimex-radius-input\\)\\]{border-radius:var(--optimex-radius-input)}.optx-widget .rounded-\\[var\\(--optimex-radius-widget\\)\\]{border-radius:var(--optimex-radius-widget)}.optx-widget .rounded-full{border-radius:9999px}.optx-widget .rounded-lg{border-radius:.5rem}.optx-widget .rounded-md{border-radius:.375rem}.optx-widget .rounded-xl{border-radius:.75rem}.optx-widget .rounded-t-\\[var\\(--optimex-overlay-radius\\)\\]{border-top-left-radius:var(--optimex-overlay-radius);border-top-right-radius:var(--optimex-overlay-radius)}.optx-widget .rounded-t-sm{border-top-left-radius:.125rem;border-top-right-radius:.125rem}.optx-widget .border{border-width:1px}.optx-widget .border-2{border-width:2px}.optx-widget .border-4{border-width:4px}.optx-widget .border-b{border-bottom-width:1px}.optx-widget .border-l{border-left-width:1px}.optx-widget .border-r{border-right-width:1px}.optx-widget .border-t{border-top-width:1px}.optx-widget .border-none{border-style:none}.optx-widget .border-\\[var\\(--optimex-background\\)\\]{border-color:var(--optimex-background)}.optx-widget .border-\\[var\\(--optimex-border\\)\\]{border-color:var(--optimex-border)}.optx-widget .border-\\[var\\(--optimex-error\\)\\]{border-color:var(--optimex-error)}.optx-widget .border-\\[var\\(--optimex-primary\\)\\]{border-color:var(--optimex-primary)}.optx-widget .border-\\[var\\(--optimex-surface\\)\\]{border-color:var(--optimex-surface)}.optx-widget .border-current{border-color:currentColor}.optx-widget .border-transparent{border-color:transparent}.optx-widget .border-white\\/10{border-color:#ffffff1a}.optx-widget .border-white\\/5{border-color:#ffffff0d}.optx-widget .border-white\\/\\[0\\.02\\]{border-color:#ffffff05}.optx-widget .border-white\\/\\[0\\.05\\]{border-color:#ffffff0d}.optx-widget .border-t-transparent{border-top-color:transparent}.optx-widget .bg-\\[rgba\\(239\\,68\\,68\\,0\\.15\\)\\]{background-color:#ef444426}.optx-widget .bg-\\[rgba\\(34\\,197\\,94\\,0\\.15\\)\\]{background-color:#22c55e26}.optx-widget .bg-\\[rgba\\(59\\,130\\,246\\,0\\.15\\)\\]{background-color:#3b82f626}.optx-widget .bg-\\[var\\(--optimex-background\\)\\]{background-color:var(--optimex-background)}.optx-widget .bg-\\[var\\(--optimex-border\\)\\]{background-color:var(--optimex-border)}.optx-widget .bg-\\[var\\(--optimex-error\\)\\]{background-color:var(--optimex-error)}.optx-widget .bg-\\[var\\(--optimex-overlay-background\\)\\]{background-color:var(--optimex-overlay-background)}.optx-widget .bg-\\[var\\(--optimex-primary\\)\\]{background-color:var(--optimex-primary)}.optx-widget .bg-\\[var\\(--optimex-surface\\)\\]{background-color:var(--optimex-surface)}.optx-widget .bg-\\[var\\(--optimex-surface-hover\\)\\]{background-color:var(--optimex-surface-hover)}.optx-widget .bg-black\\/60{background-color:#0009}.optx-widget .bg-blue-500\\/20{background-color:#3b82f633}.optx-widget .bg-green-500\\/10{background-color:#22c55e1a}.optx-widget .bg-orange-500\\/20{background-color:#f9731633}.optx-widget .bg-purple-500\\/20{background-color:#a855f733}.optx-widget .bg-red-500\\/10{background-color:#ef44441a}.optx-widget .bg-transparent{background-color:transparent}.optx-widget .bg-white\\/10{background-color:#ffffff1a}.optx-widget .bg-white\\/20{background-color:#fff3}.optx-widget .bg-white\\/5{background-color:#ffffff0d}.optx-widget .bg-white\\/\\[0\\.02\\]{background-color:#ffffff05}.optx-widget .bg-yellow-500\\/10{background-color:#eab3081a}.optx-widget .bg-zinc-900\\/50{background-color:#18181b80}.optx-widget .stroke-\\[var\\(--optimex-error\\)\\]{stroke:var(--optimex-error)}.optx-widget .p-0{padding:0}.optx-widget .p-1{padding:.25rem}.optx-widget .p-1\\.5{padding:.375rem}.optx-widget .p-2{padding:.5rem}.optx-widget .p-3{padding:.75rem}.optx-widget .p-4{padding:1rem}.optx-widget .p-6{padding:1.5rem}.optx-widget .px-1\\.5{padding-left:.375rem;padding-right:.375rem}.optx-widget .px-2{padding-left:.5rem;padding-right:.5rem}.optx-widget .px-2\\.5{padding-left:.625rem;padding-right:.625rem}.optx-widget .px-3{padding-left:.75rem;padding-right:.75rem}.optx-widget .px-4{padding-left:1rem;padding-right:1rem}.optx-widget .px-6{padding-left:1.5rem;padding-right:1.5rem}.optx-widget .py-0\\.5{padding-top:.125rem;padding-bottom:.125rem}.optx-widget .py-1{padding-top:.25rem;padding-bottom:.25rem}.optx-widget .py-1\\.5{padding-top:.375rem;padding-bottom:.375rem}.optx-widget .py-12{padding-top:3rem;padding-bottom:3rem}.optx-widget .py-2{padding-top:.5rem;padding-bottom:.5rem}.optx-widget .py-3{padding-top:.75rem;padding-bottom:.75rem}.optx-widget .py-4{padding-top:1rem;padding-bottom:1rem}.optx-widget .py-8{padding-top:2rem;padding-bottom:2rem}.optx-widget .py-\\[6px\\]{padding-top:6px;padding-bottom:6px}.optx-widget .pb-3{padding-bottom:.75rem}.optx-widget .pb-4{padding-bottom:1rem}.optx-widget .pl-10{padding-left:2.5rem}.optx-widget .pl-2{padding-left:.5rem}.optx-widget .pr-10{padding-right:2.5rem}.optx-widget .pr-3{padding-right:.75rem}.optx-widget .pt-2{padding-top:.5rem}.optx-widget .pt-3{padding-top:.75rem}.optx-widget .text-left{text-align:left}.optx-widget .text-center{text-align:center}.optx-widget .text-2xl{font-size:1.5rem;line-height:2rem}.optx-widget .text-\\[10px\\]{font-size:10px}.optx-widget .text-base{font-size:1rem;line-height:1.5rem}.optx-widget .text-lg{font-size:1.125rem;line-height:1.75rem}.optx-widget .text-sm{font-size:.875rem;line-height:1.25rem}.optx-widget .text-xl{font-size:1.25rem;line-height:1.75rem}.optx-widget .text-xs{font-size:.75rem;line-height:1rem}.optx-widget .font-bold{font-weight:700}.optx-widget .font-medium{font-weight:500}.optx-widget .font-semibold{font-weight:600}.optx-widget .uppercase{text-transform:uppercase}.optx-widget .leading-none{line-height:1}.optx-widget .tracking-tight{letter-spacing:-.025em}.optx-widget .tracking-wider{letter-spacing:.05em}.optx-widget .text-\\[var\\(--optimex-error\\)\\]{color:var(--optimex-error)}.optx-widget .text-\\[var\\(--optimex-primary\\)\\]{color:var(--optimex-primary)}.optx-widget .text-\\[var\\(--optimex-success\\)\\]{color:var(--optimex-success)}.optx-widget .text-\\[var\\(--optimex-text\\)\\]{color:var(--optimex-text)}.optx-widget .text-\\[var\\(--optimex-text-secondary\\)\\]{color:var(--optimex-text-secondary)}.optx-widget .text-\\[var\\(--optimex-warning\\)\\]{color:var(--optimex-warning)}.optx-widget .text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.optx-widget .text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.optx-widget .text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.optx-widget .text-orange-400{--tw-text-opacity: 1;color:rgb(251 146 60 / var(--tw-text-opacity, 1))}.optx-widget .text-purple-400{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.optx-widget .text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.optx-widget .text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.optx-widget .text-yellow-500{--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity, 1))}.optx-widget .text-zinc-400{--tw-text-opacity: 1;color:rgb(161 161 170 / var(--tw-text-opacity, 1))}.optx-widget .text-zinc-500{--tw-text-opacity: 1;color:rgb(113 113 122 / var(--tw-text-opacity, 1))}.optx-widget .opacity-0{opacity:0}.optx-widget .opacity-50{opacity:.5}.optx-widget .opacity-70{opacity:.7}.optx-widget .shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.optx-widget .shadow-\\[0_0_15px_rgba\\(235\\,98\\,0\\,0\\.1\\)\\]{--tw-shadow: 0 0 15px rgba(235,98,0,.1);--tw-shadow-colored: 0 0 15px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.optx-widget .shadow-\\[0_0_15px_rgba\\(235\\,98\\,0\\,0\\.3\\)\\]{--tw-shadow: 0 0 15px rgba(235,98,0,.3);--tw-shadow-colored: 0 0 15px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.optx-widget .shadow-\\[0_0_8px_rgba\\(235\\,98\\,0\\,0\\.8\\)\\]{--tw-shadow: 0 0 8px rgba(235,98,0,.8);--tw-shadow-colored: 0 0 8px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.optx-widget .shadow-lg{--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)}.optx-widget .shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.optx-widget .shadow-xl{--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)}.optx-widget .outline-none{outline:2px solid transparent;outline-offset:2px}.optx-widget .outline{outline-style:solid}.optx-widget .blur{--tw-blur: blur(8px);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)}.optx-widget .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)}.optx-widget .backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.optx-widget .transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.optx-widget .transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.optx-widget .transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.optx-widget .transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.optx-widget .duration-200{transition-duration:.2s}.optx-widget .duration-300{transition-duration:.3s}.optx-widget{isolation:isolate;width:100%;min-width:0;max-width:100%;--optimex-primary: #ed6300;--optimex-background: hsla(0, 0%, 100%, .04);--optimex-surface: hsla(0, 0%, 0%, .2);--optimex-text: #ffffff;--optimex-text-secondary: hsla(0, 0%, 100%, .48);--optimex-error: #ff4d4f;--optimex-success: #52c41a;--optimex-overlay-background: #1a1a1a;--optimex-overlay-radius: .75rem;--optimex-radius-widget: 1rem;--optimex-radius-input: .75rem;--optimex-radius-button: .5rem;--optimex-font-family: "Inter", sans-serif;--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: ;font-family:var(--optimex-font-family);font-size:14px;line-height:1.5;color:var(--optimex-text);text-align:left;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.optx-widget .widget-container{background:var(--optimex-background);border:1px solid rgba(255,255,255,.05);border-radius:var(--optimex-radius-widget);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);width:100%;min-width:0;max-width:100%;box-sizing:border-box}.optx-widget *,.optx-widget *:before,.optx-widget *:after{box-sizing:border-box}.optx-widget button{font-family:inherit;line-height:inherit;margin:0;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.optx-widget input,.optx-widget select,.optx-widget textarea{font-family:inherit;line-height:inherit;margin:0}.optx-widget a{color:inherit;text-decoration:none}.optx-widget ul,.optx-widget ol{list-style:none;margin:0;padding:0}.optx-widget img{max-width:100%;height:auto}.optx-widget svg{display:inline-block;vertical-align:middle}.optx-widget .glow-orange{box-shadow:inset 0 0 15px #eb620026,0 0 20px #eb62001a}.optx-widget .glow-green{box-shadow:0 0 12px #22c55e33}.optx-widget .glow-red{box-shadow:0 0 12px #ef444433}@keyframes optx-status-pulse{0%,to{opacity:1}50%{opacity:.5}}.optx-widget .status-pulse{animation:optx-status-pulse 2s cubic-bezier(.4,0,.6,1) infinite}.optx-widget .placeholder\\:text-\\[var\\(--optimex-text-secondary\\)\\]::-moz-placeholder{color:var(--optimex-text-secondary)}.optx-widget .placeholder\\:text-\\[var\\(--optimex-text-secondary\\)\\]::placeholder{color:var(--optimex-text-secondary)}.optx-widget .focus-within\\:border-\\[var\\(--optimex-primary\\)\\]:focus-within{border-color:var(--optimex-primary)}.optx-widget .hover\\:scale-110:hover{--tw-scale-x: 1.1;--tw-scale-y: 1.1;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))}.optx-widget .hover\\:border-\\[var\\(--optimex-primary\\)\\]:hover{border-color:var(--optimex-primary)}.optx-widget .hover\\:bg-\\[rgba\\(239\\,68\\,68\\,0\\.2\\)\\]:hover{background-color:#ef444433}.optx-widget .hover\\:bg-\\[var\\(--optimex-primary-hover\\)\\]:hover{background-color:var(--optimex-primary-hover)}.optx-widget .hover\\:bg-\\[var\\(--optimex-surface-hover\\)\\]:hover{background-color:var(--optimex-surface-hover)}.optx-widget .hover\\:bg-white\\/10:hover{background-color:#ffffff1a}.optx-widget .hover\\:bg-white\\/5:hover{background-color:#ffffff0d}.optx-widget .hover\\:bg-white\\/\\[0\\.02\\]:hover{background-color:#ffffff05}.optx-widget .hover\\:text-\\[var\\(--optimex-primary\\)\\]:hover{color:var(--optimex-primary)}.optx-widget .hover\\:text-\\[var\\(--optimex-text\\)\\]:hover{color:var(--optimex-text)}.optx-widget .hover\\:text-\\[var\\(--optimex-text-secondary\\)\\]:hover{color:var(--optimex-text-secondary)}.optx-widget .hover\\:opacity-100:hover{opacity:1}.optx-widget .hover\\:opacity-70:hover{opacity:.7}.optx-widget .hover\\:shadow-lg:hover{--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)}.optx-widget .hover\\:brightness-110:hover{--tw-brightness: brightness(1.1);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)}.optx-widget .focus\\:border-\\[var\\(--optimex-primary\\)\\]:focus{border-color:var(--optimex-primary)}.optx-widget .focus\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.optx-widget .focus\\:ring-0:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.optx-widget .active\\:scale-95: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))}.optx-widget .active\\:scale-\\[0\\.98\\]:active{--tw-scale-x: .98;--tw-scale-y: .98;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))}.optx-widget .disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.optx-widget .disabled\\:opacity-50:disabled{opacity:.5}.optx-widget :is(.group:hover .group-hover\\:rotate-180){--tw-rotate: 180deg;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))}.optx-widget :is(.group:hover .group-hover\\:opacity-100){opacity:1}@media(min-width:640px){.optx-widget .sm\\:max-w-lg{max-width:32rem}.optx-widget .sm\\:text-left{text-align:left}}@media(min-width:768px){.optx-widget .md\\:h-\\[70vh\\]{height:70vh}}')),document.head.appendChild(t)}}catch(e){console.error("vite-plugin-css-injected-by-js",e)}})();
1
+ (function(){"use strict";try{if(typeof document<"u"){var t=document.createElement("style");t.appendChild(document.createTextNode('.optx-widget .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.optx-widget .fixed{position:fixed}.optx-widget .absolute{position:absolute}.optx-widget .relative{position:relative}.optx-widget .inset-0{inset:0}.optx-widget .inset-2{inset:.5rem}.optx-widget .inset-x-0{left:0;right:0}.optx-widget .-bottom-1{bottom:-.25rem}.optx-widget .-bottom-2{bottom:-.5rem}.optx-widget .-right-1{right:-.25rem}.optx-widget .-top-2{top:-.5rem}.optx-widget .bottom-0{bottom:0}.optx-widget .bottom-full{bottom:100%}.optx-widget .left-0{left:0}.optx-widget .left-1\\/2{left:50%}.optx-widget .left-3{left:.75rem}.optx-widget .left-4{left:1rem}.optx-widget .right-0{right:0}.optx-widget .right-3{right:.75rem}.optx-widget .right-4{right:1rem}.optx-widget .top-1\\/2{top:50%}.optx-widget .top-full{top:100%}.optx-widget .z-10{z-index:10}.optx-widget .z-50{z-index:50}.optx-widget .z-\\[9999\\]{z-index:9999}.optx-widget .\\!m-0{margin:0!important}.optx-widget .-my-4{margin-top:-1rem;margin-bottom:-1rem}.optx-widget .mx-auto{margin-left:auto;margin-right:auto}.optx-widget .mb-1{margin-bottom:.25rem}.optx-widget .mb-2{margin-bottom:.5rem}.optx-widget .mb-3{margin-bottom:.75rem}.optx-widget .mb-4{margin-bottom:1rem}.optx-widget .mb-6{margin-bottom:1.5rem}.optx-widget .ml-2{margin-left:.5rem}.optx-widget .ml-3{margin-left:.75rem}.optx-widget .ml-auto{margin-left:auto}.optx-widget .mt-1{margin-top:.25rem}.optx-widget .mt-2{margin-top:.5rem}.optx-widget .mt-24{margin-top:6rem}.optx-widget .mt-3{margin-top:.75rem}.optx-widget .mt-4{margin-top:1rem}.optx-widget .mt-auto{margin-top:auto}.optx-widget .block{display:block}.optx-widget .inline-block{display:inline-block}.optx-widget .inline{display:inline}.optx-widget .flex{display:flex}.optx-widget .size-10{width:2.5rem;height:2.5rem}.optx-widget .size-12{width:3rem;height:3rem}.optx-widget .size-2{width:.5rem;height:.5rem}.optx-widget .size-20{width:5rem;height:5rem}.optx-widget .size-3{width:.75rem;height:.75rem}.optx-widget .size-4{width:1rem;height:1rem}.optx-widget .size-5{width:1.25rem;height:1.25rem}.optx-widget .size-8{width:2rem;height:2rem}.optx-widget .h-1\\.5{height:.375rem}.optx-widget .h-10{height:2.5rem}.optx-widget .h-12{height:3rem}.optx-widget .h-14{height:3.5rem}.optx-widget .h-16{height:4rem}.optx-widget .h-2{height:.5rem}.optx-widget .h-3{height:.75rem}.optx-widget .h-3\\.5{height:.875rem}.optx-widget .h-4{height:1rem}.optx-widget .h-5{height:1.25rem}.optx-widget .h-6{height:1.5rem}.optx-widget .h-8{height:2rem}.optx-widget .h-auto{height:auto}.optx-widget .h-full{height:100%}.optx-widget .max-h-\\[2\\.5rem\\]{max-height:2.5rem}.optx-widget .max-h-\\[2rem\\]{max-height:2rem}.optx-widget .max-h-\\[3rem\\]{max-height:3rem}.optx-widget .max-h-\\[5rem\\]{max-height:5rem}.optx-widget .max-h-\\[600px\\]{max-height:600px}.optx-widget .max-h-\\[60vh\\]{max-height:60vh}.optx-widget .max-h-\\[85vh\\]{max-height:85vh}.optx-widget .max-h-\\[96vh\\]{max-height:96vh}.optx-widget .w-1\\/3{width:33.333333%}.optx-widget .w-10{width:2.5rem}.optx-widget .w-12{width:3rem}.optx-widget .w-14{width:3.5rem}.optx-widget .w-16{width:4rem}.optx-widget .w-20{width:5rem}.optx-widget .w-24{width:6rem}.optx-widget .w-28{width:7rem}.optx-widget .w-3{width:.75rem}.optx-widget .w-3\\.5{width:.875rem}.optx-widget .w-32{width:8rem}.optx-widget .w-4{width:1rem}.optx-widget .w-48{width:12rem}.optx-widget .w-5{width:1.25rem}.optx-widget .w-6{width:1.5rem}.optx-widget .w-72{width:18rem}.optx-widget .w-8{width:2rem}.optx-widget .w-96{width:24rem}.optx-widget .w-auto{width:auto}.optx-widget .w-full{width:100%}.optx-widget .min-w-0{min-width:0px}.optx-widget .min-w-\\[140px\\]{min-width:140px}.optx-widget .max-w-2xl{max-width:42rem}.optx-widget .max-w-\\[280px\\]{max-width:280px}.optx-widget .max-w-\\[calc\\(100\\%-2rem\\)\\]{max-width:calc(100% - 2rem)}.optx-widget .max-w-md{max-width:28rem}.optx-widget .flex-1{flex:1 1 0%}.optx-widget .flex-shrink-0,.optx-widget .shrink-0{flex-shrink:0}.optx-widget .-translate-x-1\\/2{--tw-translate-x: -50%;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))}.optx-widget .-translate-y-1\\/2{--tw-translate-y: -50%;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))}.optx-widget .rotate-180{--tw-rotate: 180deg;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))}.optx-widget .rotate-45{--tw-rotate: 45deg;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))}.optx-widget .transform{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))}@keyframes pulse{50%{opacity:.5}}.optx-widget .animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.optx-widget .animate-spin{animation:spin 1s linear infinite}.optx-widget .cursor-not-allowed{cursor:not-allowed}.optx-widget .cursor-pointer{cursor:pointer}.optx-widget .resize{resize:both}.optx-widget .flex-col{flex-direction:column}.optx-widget .flex-wrap{flex-wrap:wrap}.optx-widget .items-end{align-items:flex-end}.optx-widget .items-center{align-items:center}.optx-widget .justify-end{justify-content:flex-end}.optx-widget .justify-center{justify-content:center}.optx-widget .justify-between{justify-content:space-between}.optx-widget .gap-0\\.5{gap:.125rem}.optx-widget .gap-1{gap:.25rem}.optx-widget .gap-1\\.5{gap:.375rem}.optx-widget .gap-2{gap:.5rem}.optx-widget .gap-3{gap:.75rem}.optx-widget .gap-4{gap:1rem}.optx-widget :is(.space-y-1>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.optx-widget :is(.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))}.optx-widget :is(.space-y-3>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.optx-widget :is(.divide-y>:not([hidden])~:not([hidden])){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.optx-widget :is(.divide-\\[var\\(--optimex-border\\)\\]>:not([hidden])~:not([hidden])){border-color:var(--optimex-border)}.optx-widget .overflow-auto{overflow:auto}.optx-widget .overflow-hidden{overflow:hidden}.optx-widget .overflow-y-auto{overflow-y:auto}.optx-widget .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.optx-widget .break-all{word-break:break-all}.optx-widget .rounded{border-radius:.25rem}.optx-widget .rounded-2xl{border-radius:1rem}.optx-widget .rounded-\\[0\\.25rem\\]{border-radius:.25rem}.optx-widget .rounded-\\[9999px\\]{border-radius:9999px}.optx-widget .rounded-\\[var\\(--optimex-overlay-radius\\)\\]{border-radius:var(--optimex-overlay-radius)}.optx-widget .rounded-\\[var\\(--optimex-radius-button\\)\\]{border-radius:var(--optimex-radius-button)}.optx-widget .rounded-\\[var\\(--optimex-radius-input\\)\\]{border-radius:var(--optimex-radius-input)}.optx-widget .rounded-\\[var\\(--optimex-radius-widget\\)\\]{border-radius:var(--optimex-radius-widget)}.optx-widget .rounded-full{border-radius:9999px}.optx-widget .rounded-lg{border-radius:.5rem}.optx-widget .rounded-md{border-radius:.375rem}.optx-widget .rounded-xl{border-radius:.75rem}.optx-widget .rounded-t-\\[var\\(--optimex-overlay-radius\\)\\]{border-top-left-radius:var(--optimex-overlay-radius);border-top-right-radius:var(--optimex-overlay-radius)}.optx-widget .rounded-t-sm{border-top-left-radius:.125rem;border-top-right-radius:.125rem}.optx-widget .border{border-width:1px}.optx-widget .border-2{border-width:2px}.optx-widget .border-4{border-width:4px}.optx-widget .border-b{border-bottom-width:1px}.optx-widget .border-l{border-left-width:1px}.optx-widget .border-r{border-right-width:1px}.optx-widget .border-t{border-top-width:1px}.optx-widget .border-none{border-style:none}.optx-widget .border-\\[var\\(--optimex-background\\)\\]{border-color:var(--optimex-background)}.optx-widget .border-\\[var\\(--optimex-border\\)\\]{border-color:var(--optimex-border)}.optx-widget .border-\\[var\\(--optimex-error\\)\\]{border-color:var(--optimex-error)}.optx-widget .border-\\[var\\(--optimex-primary\\)\\]{border-color:var(--optimex-primary)}.optx-widget .border-\\[var\\(--optimex-surface\\)\\]{border-color:var(--optimex-surface)}.optx-widget .border-current{border-color:currentColor}.optx-widget .border-transparent{border-color:transparent}.optx-widget .border-white\\/10{border-color:#ffffff1a}.optx-widget .border-white\\/5{border-color:#ffffff0d}.optx-widget .border-white\\/\\[0\\.02\\]{border-color:#ffffff05}.optx-widget .border-white\\/\\[0\\.05\\]{border-color:#ffffff0d}.optx-widget .border-t-transparent{border-top-color:transparent}.optx-widget .bg-\\[rgba\\(239\\,68\\,68\\,0\\.15\\)\\]{background-color:#ef444426}.optx-widget .bg-\\[rgba\\(34\\,197\\,94\\,0\\.15\\)\\]{background-color:#22c55e26}.optx-widget .bg-\\[rgba\\(59\\,130\\,246\\,0\\.15\\)\\]{background-color:#3b82f626}.optx-widget .bg-\\[var\\(--optimex-background\\)\\]{background-color:var(--optimex-background)}.optx-widget .bg-\\[var\\(--optimex-border\\)\\]{background-color:var(--optimex-border)}.optx-widget .bg-\\[var\\(--optimex-error\\)\\]{background-color:var(--optimex-error)}.optx-widget .bg-\\[var\\(--optimex-overlay-background\\)\\]{background-color:var(--optimex-overlay-background)}.optx-widget .bg-\\[var\\(--optimex-primary\\)\\]{background-color:var(--optimex-primary)}.optx-widget .bg-\\[var\\(--optimex-surface\\)\\]{background-color:var(--optimex-surface)}.optx-widget .bg-\\[var\\(--optimex-surface-hover\\)\\]{background-color:var(--optimex-surface-hover)}.optx-widget .bg-black\\/60{background-color:#0009}.optx-widget .bg-blue-500\\/20{background-color:#3b82f633}.optx-widget .bg-green-500\\/10{background-color:#22c55e1a}.optx-widget .bg-orange-500\\/20{background-color:#f9731633}.optx-widget .bg-purple-500\\/20{background-color:#a855f733}.optx-widget .bg-red-500\\/10{background-color:#ef44441a}.optx-widget .bg-transparent{background-color:transparent}.optx-widget .bg-white\\/10{background-color:#ffffff1a}.optx-widget .bg-white\\/20{background-color:#fff3}.optx-widget .bg-white\\/5{background-color:#ffffff0d}.optx-widget .bg-white\\/\\[0\\.02\\]{background-color:#ffffff05}.optx-widget .bg-yellow-500\\/10{background-color:#eab3081a}.optx-widget .bg-zinc-900\\/50{background-color:#18181b80}.optx-widget .stroke-\\[var\\(--optimex-error\\)\\]{stroke:var(--optimex-error)}.optx-widget .p-0{padding:0}.optx-widget .p-1{padding:.25rem}.optx-widget .p-1\\.5{padding:.375rem}.optx-widget .p-2{padding:.5rem}.optx-widget .p-3{padding:.75rem}.optx-widget .p-4{padding:1rem}.optx-widget .p-6{padding:1.5rem}.optx-widget .px-1\\.5{padding-left:.375rem;padding-right:.375rem}.optx-widget .px-2{padding-left:.5rem;padding-right:.5rem}.optx-widget .px-2\\.5{padding-left:.625rem;padding-right:.625rem}.optx-widget .px-3{padding-left:.75rem;padding-right:.75rem}.optx-widget .px-4{padding-left:1rem;padding-right:1rem}.optx-widget .px-6{padding-left:1.5rem;padding-right:1.5rem}.optx-widget .py-0\\.5{padding-top:.125rem;padding-bottom:.125rem}.optx-widget .py-1{padding-top:.25rem;padding-bottom:.25rem}.optx-widget .py-1\\.5{padding-top:.375rem;padding-bottom:.375rem}.optx-widget .py-12{padding-top:3rem;padding-bottom:3rem}.optx-widget .py-2{padding-top:.5rem;padding-bottom:.5rem}.optx-widget .py-3{padding-top:.75rem;padding-bottom:.75rem}.optx-widget .py-4{padding-top:1rem;padding-bottom:1rem}.optx-widget .py-8{padding-top:2rem;padding-bottom:2rem}.optx-widget .py-\\[6px\\]{padding-top:6px;padding-bottom:6px}.optx-widget .pb-3{padding-bottom:.75rem}.optx-widget .pb-4{padding-bottom:1rem}.optx-widget .pl-10{padding-left:2.5rem}.optx-widget .pl-2{padding-left:.5rem}.optx-widget .pr-10{padding-right:2.5rem}.optx-widget .pr-3{padding-right:.75rem}.optx-widget .pt-2{padding-top:.5rem}.optx-widget .pt-3{padding-top:.75rem}.optx-widget .text-left{text-align:left}.optx-widget .text-center{text-align:center}.optx-widget .text-2xl{font-size:1.5rem;line-height:2rem}.optx-widget .text-\\[10px\\]{font-size:10px}.optx-widget .text-base{font-size:1rem;line-height:1.5rem}.optx-widget .text-lg{font-size:1.125rem;line-height:1.75rem}.optx-widget .text-sm{font-size:.875rem;line-height:1.25rem}.optx-widget .text-xl{font-size:1.25rem;line-height:1.75rem}.optx-widget .text-xs{font-size:.75rem;line-height:1rem}.optx-widget .font-bold{font-weight:700}.optx-widget .font-medium{font-weight:500}.optx-widget .font-semibold{font-weight:600}.optx-widget .uppercase{text-transform:uppercase}.optx-widget .leading-none{line-height:1}.optx-widget .tracking-tight{letter-spacing:-.025em}.optx-widget .tracking-wider{letter-spacing:.05em}.optx-widget .text-\\[var\\(--optimex-error\\)\\]{color:var(--optimex-error)}.optx-widget .text-\\[var\\(--optimex-primary\\)\\]{color:var(--optimex-primary)}.optx-widget .text-\\[var\\(--optimex-success\\)\\]{color:var(--optimex-success)}.optx-widget .text-\\[var\\(--optimex-text\\)\\]{color:var(--optimex-text)}.optx-widget .text-\\[var\\(--optimex-text-secondary\\)\\]{color:var(--optimex-text-secondary)}.optx-widget .text-\\[var\\(--optimex-warning\\)\\]{color:var(--optimex-warning)}.optx-widget .text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.optx-widget .text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.optx-widget .text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.optx-widget .text-orange-400{--tw-text-opacity: 1;color:rgb(251 146 60 / var(--tw-text-opacity, 1))}.optx-widget .text-purple-400{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.optx-widget .text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.optx-widget .text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.optx-widget .text-yellow-500{--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity, 1))}.optx-widget .text-zinc-400{--tw-text-opacity: 1;color:rgb(161 161 170 / var(--tw-text-opacity, 1))}.optx-widget .text-zinc-500{--tw-text-opacity: 1;color:rgb(113 113 122 / var(--tw-text-opacity, 1))}.optx-widget .opacity-0{opacity:0}.optx-widget .opacity-50{opacity:.5}.optx-widget .opacity-70{opacity:.7}.optx-widget .shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.optx-widget .shadow-\\[0_0_15px_rgba\\(235\\,98\\,0\\,0\\.1\\)\\]{--tw-shadow: 0 0 15px rgba(235,98,0,.1);--tw-shadow-colored: 0 0 15px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.optx-widget .shadow-\\[0_0_15px_rgba\\(235\\,98\\,0\\,0\\.3\\)\\]{--tw-shadow: 0 0 15px rgba(235,98,0,.3);--tw-shadow-colored: 0 0 15px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.optx-widget .shadow-\\[0_0_8px_rgba\\(235\\,98\\,0\\,0\\.8\\)\\]{--tw-shadow: 0 0 8px rgba(235,98,0,.8);--tw-shadow-colored: 0 0 8px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.optx-widget .shadow-lg{--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)}.optx-widget .shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.optx-widget .shadow-xl{--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)}.optx-widget .outline-none{outline:2px solid transparent;outline-offset:2px}.optx-widget .outline{outline-style:solid}.optx-widget .blur{--tw-blur: blur(8px);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)}.optx-widget .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)}.optx-widget .backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.optx-widget .transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.optx-widget .transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.optx-widget .transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.optx-widget .transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.optx-widget .duration-200{transition-duration:.2s}.optx-widget .duration-300{transition-duration:.3s}:root{--optimex-primary: #ed6300;--optimex-background: hsla(0, 0%, 100%, .04);--optimex-surface: hsla(0, 0%, 0%, .2);--optimex-text: #ffffff;--optimex-text-secondary: hsla(0, 0%, 100%, .48);--optimex-error: #ff4d4f;--optimex-success: #52c41a;--optimex-overlay-background: #343b47;--optimex-overlay-radius: .75rem;--optimex-radius-widget: 1rem;--optimex-radius-input: .75rem;--optimex-radius-button: .5rem;--optimex-font-family: "Inter", sans-serif}.optx-widget{isolation:isolate;width:100%;min-width:0;max-width:100%;--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: ;font-family:var(--optimex-font-family);font-size:14px;line-height:1.5;color:var(--optimex-text);text-align:left;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.optx-widget .widget-container{background:var(--optimex-background);border:1px solid rgba(255,255,255,.05);border-radius:var(--optimex-radius-widget);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);width:100%;min-width:0;max-width:100%;box-sizing:border-box}.optx-widget *,.optx-widget *:before,.optx-widget *:after{box-sizing:border-box}.optx-widget button{font-family:inherit;line-height:inherit;margin:0;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.optx-widget input,.optx-widget select,.optx-widget textarea{font-family:inherit;line-height:inherit;margin:0}.optx-widget a{color:inherit;text-decoration:none}.optx-widget ul,.optx-widget ol{list-style:none;margin:0;padding:0}.optx-widget img{max-width:100%;height:auto}.optx-widget svg{display:inline-block;vertical-align:middle}.optx-widget .glow-orange{box-shadow:inset 0 0 15px #eb620026,0 0 20px #eb62001a}.optx-widget .glow-green{box-shadow:0 0 12px #22c55e33}.optx-widget .glow-red{box-shadow:0 0 12px #ef444433}@keyframes optx-status-pulse{0%,to{opacity:1}50%{opacity:.5}}.optx-widget .status-pulse{animation:optx-status-pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes modal-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes modal-overlay-out{0%{opacity:1}to{opacity:0}}@keyframes modal-content-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes modal-content-out{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(.95)}}.animate-modal-overlay-in{animation:modal-overlay-in .2s ease-out}.animate-modal-overlay-out{animation:modal-overlay-out .15s ease-in}.animate-modal-in{animation:modal-content-in .2s ease-out}.animate-modal-out{animation:modal-content-out .15s ease-in}.optx-widget .placeholder\\:text-\\[var\\(--optimex-text-secondary\\)\\]::-moz-placeholder{color:var(--optimex-text-secondary)}.optx-widget .placeholder\\:text-\\[var\\(--optimex-text-secondary\\)\\]::placeholder{color:var(--optimex-text-secondary)}.optx-widget .focus-within\\:border-\\[var\\(--optimex-primary\\)\\]:focus-within{border-color:var(--optimex-primary)}.optx-widget .hover\\:scale-110:hover{--tw-scale-x: 1.1;--tw-scale-y: 1.1;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))}.optx-widget .hover\\:border-\\[var\\(--optimex-primary\\)\\]:hover{border-color:var(--optimex-primary)}.optx-widget .hover\\:bg-\\[rgba\\(239\\,68\\,68\\,0\\.2\\)\\]:hover{background-color:#ef444433}.optx-widget .hover\\:bg-\\[var\\(--optimex-primary-hover\\)\\]:hover{background-color:var(--optimex-primary-hover)}.optx-widget .hover\\:bg-\\[var\\(--optimex-surface-hover\\)\\]:hover{background-color:var(--optimex-surface-hover)}.optx-widget .hover\\:bg-white\\/10:hover{background-color:#ffffff1a}.optx-widget .hover\\:bg-white\\/5:hover{background-color:#ffffff0d}.optx-widget .hover\\:bg-white\\/\\[0\\.02\\]:hover{background-color:#ffffff05}.optx-widget .hover\\:text-\\[var\\(--optimex-primary\\)\\]:hover{color:var(--optimex-primary)}.optx-widget .hover\\:text-\\[var\\(--optimex-text\\)\\]:hover{color:var(--optimex-text)}.optx-widget .hover\\:text-\\[var\\(--optimex-text-secondary\\)\\]:hover{color:var(--optimex-text-secondary)}.optx-widget .hover\\:opacity-100:hover{opacity:1}.optx-widget .hover\\:opacity-70:hover{opacity:.7}.optx-widget .hover\\:shadow-lg:hover{--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)}.optx-widget .hover\\:brightness-110:hover{--tw-brightness: brightness(1.1);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)}.optx-widget .focus\\:border-\\[var\\(--optimex-primary\\)\\]:focus{border-color:var(--optimex-primary)}.optx-widget .focus\\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.optx-widget .focus\\:ring-0:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.optx-widget .active\\:scale-95: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))}.optx-widget .active\\:scale-\\[0\\.98\\]:active{--tw-scale-x: .98;--tw-scale-y: .98;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))}.optx-widget .disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.optx-widget .disabled\\:opacity-50:disabled{opacity:.5}.optx-widget :is(.group:hover .group-hover\\:rotate-180){--tw-rotate: 180deg;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))}.optx-widget :is(.group:hover .group-hover\\:opacity-100){opacity:1}@media(min-width:640px){.optx-widget .sm\\:max-w-2xl{max-width:42rem}.optx-widget .sm\\:text-left{text-align:left}}@media(min-width:768px){.optx-widget .md\\:h-\\[70vh\\]{height:70vh}}')),document.head.appendChild(t)}}catch(e){console.error("vite-plugin-css-injected-by-js",e)}})();
2
2
  import { jsx as a, jsxs as p, Fragment as _e } from "react/jsx-runtime";
3
3
  import * as v from "react";
4
4
  import R, { createContext as Lt, useMemo as J, useContext as xr, useState as re, useCallback as z, useLayoutEffect as As, useEffect as Cr, useRef as Ln } from "react";
@@ -8073,7 +8073,9 @@ function Br({
8073
8073
  Dr,
8074
8074
  {
8075
8075
  className: It(
8076
- "fixed left-1/2 top-1/2 z-[9999] flex max-h-[85vh] w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 flex-col rounded-[var(--optimex-overlay-radius)] border border-white/10 bg-[var(--optimex-overlay-background)] shadow-2xl outline-none duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 sm:max-w-lg",
8076
+ "fixed left-1/2 top-1/2 z-[9999] flex max-h-[85vh] w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 flex-col rounded-[var(--optimex-overlay-radius)] border border-white/10 bg-[var(--optimex-overlay-background)] shadow-2xl outline-none sm:max-w-2xl",
8077
+ // Animation classes
8078
+ "data-[state=open]:animate-modal-in data-[state=closed]:animate-modal-out",
8077
8079
  s
8078
8080
  ),
8079
8081
  children: [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "otx-swap",
3
- "version": "1.2.24",
3
+ "version": "1.2.26",
4
4
  "type": "module",
5
5
  "dependencies": {
6
6
  "@radix-ui/react-dialog": "^1.1.15",