@spicenet-io/spiceflow-ui 3.2.0 → 3.2.1

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.js CHANGED
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- "use strict";var Zo=Object.create;var Us=Object.defineProperty;var Xo=Object.getOwnPropertyDescriptor;var Go=Object.getOwnPropertyNames;var Jo=Object.getPrototypeOf,$o=Object.prototype.hasOwnProperty;var _o=(t,n,s,r)=>{if(n&&typeof n=="object"||typeof n=="function")for(let i of Go(n))!$o.call(t,i)&&i!==s&&Us(t,i,{get:()=>n[i],enumerable:!(r=Xo(n,i))||r.enumerable});return t};var Sn=(t,n,s)=>(s=t!=null?Zo(Jo(t)):{},_o(n||!t||!t.__esModule?Us(s,"default",{value:t,enumerable:!0}):s,t));const e=require("react/jsx-runtime"),o=require("react"),Yn=require("lucide-react"),Y=require("./useSpiceBrand-BBtUTOno.js"),Ze=require("./Button-KtHGKIo6.js"),q=require("./index-WLbJouQ7.js"),ht=require("wagmi"),V=require("@spicenet-io/spiceflow-core"),O=require("viem"),en=require("@privy-io/react-auth"),Dn=require("@dynamic-labs/sdk-react-core"),gn=require("./providerWallet-DrwSLBof.js"),Zn=require("react-dom"),tn=require("viem/actions"),er=require("./auth-privy.cjs.js");var En=typeof document<"u"?document.currentScript:null;const Xn=({size:t=20,strokeWidth:n=2,color:s="currentColor",style:r})=>e.jsxs("svg",{width:t,height:t,viewBox:"0 0 24 24",fill:"none",stroke:s,strokeWidth:n,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",style:r,children:[e.jsx("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),e.jsx("line",{x1:"6",y1:"6",x2:"18",y2:"18"})]});var as="data:image/svg+xml,%3csvg width='108' height='22' viewBox='0 0 108 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M1.9916 11.9854V11.2041H3.98379C4.48835 11.2041 4.87897 11.0739 5.15566 10.8135C5.43236 10.5498 5.5707 10.1868 5.5707 9.72461V9.71484C5.5707 9.24935 5.43236 8.88639 5.15566 8.62598C4.87897 8.36556 4.48835 8.23535 3.98379 8.23535H1.9916V7.4541H4.2084C4.65111 7.4541 5.04173 7.5485 5.38027 7.7373C5.71882 7.92611 5.98411 8.18978 6.17617 8.52832C6.37148 8.86686 6.46914 9.25911 6.46914 9.70508V9.71484C6.46914 10.1608 6.37148 10.5547 6.17617 10.8965C5.98411 11.2383 5.71882 11.5052 5.38027 11.6973C5.04173 11.8893 4.65111 11.9854 4.2084 11.9854H1.9916ZM1.55215 14.5V7.4541H2.43106V14.5H1.55215ZM9.51875 14.5928C9.0207 14.5928 8.58939 14.4837 8.2248 14.2656C7.86348 14.0443 7.58353 13.7301 7.38496 13.3232C7.18965 12.9163 7.09199 12.4329 7.09199 11.873V11.8633C7.09199 11.3001 7.18965 10.8151 7.38496 10.4082C7.58353 10.0013 7.86348 9.6888 8.2248 9.4707C8.58939 9.2526 9.0207 9.14355 9.51875 9.14355C10.0201 9.14355 10.4514 9.2526 10.8127 9.4707C11.174 9.6888 11.4523 10.0013 11.6477 10.4082C11.8462 10.8151 11.9455 11.3001 11.9455 11.8633V11.873C11.9455 12.4329 11.8462 12.9163 11.6477 13.3232C11.4523 13.7301 11.174 14.0443 10.8127 14.2656C10.4514 14.4837 10.0201 14.5928 9.51875 14.5928ZM9.51875 13.8408C9.85078 13.8408 10.1324 13.7627 10.3635 13.6064C10.5946 13.4502 10.7704 13.2256 10.8908 12.9326C11.0145 12.6396 11.0764 12.2865 11.0764 11.873V11.8633C11.0764 11.4466 11.0145 11.0918 10.8908 10.7988C10.7704 10.5059 10.5946 10.2829 10.3635 10.1299C10.1324 9.97363 9.85078 9.89551 9.51875 9.89551C9.18672 9.89551 8.90514 9.97363 8.67402 10.1299C8.4429 10.2829 8.26549 10.5059 8.1418 10.7988C8.02135 11.0918 7.96113 11.4466 7.96113 11.8633V11.873C7.96113 12.2865 8.02135 12.6396 8.1418 12.9326C8.26549 13.2256 8.4429 13.4502 8.67402 13.6064C8.90514 13.7627 9.18672 13.8408 9.51875 13.8408ZM13.7842 14.5L12.3096 9.23633H13.1592L14.1943 13.4453H14.2725L15.4492 9.23633H16.2549L17.4316 13.4453H17.5098L18.5449 9.23633H19.3896L17.915 14.5H17.0605L15.8838 10.4277H15.8057L14.6338 14.5H13.7842ZM22.1658 14.5928C21.6645 14.5928 21.2332 14.4821 20.8719 14.2607C20.5138 14.0394 20.2371 13.7269 20.0418 13.3232C19.8497 12.9163 19.7537 12.4378 19.7537 11.8877V11.8828C19.7537 11.3392 19.8497 10.8623 20.0418 10.4521C20.2371 10.042 20.5122 9.72135 20.867 9.49023C21.2218 9.25911 21.6368 9.14355 22.1121 9.14355C22.5906 9.14355 23.0008 9.25423 23.3426 9.47559C23.6876 9.69694 23.9513 10.0062 24.1336 10.4033C24.3191 10.7972 24.4119 11.2562 24.4119 11.7803V12.1123H20.1932V11.4336H23.9773L23.5574 12.0537V11.7168C23.5574 11.3034 23.4956 10.9632 23.3719 10.6963C23.2482 10.4294 23.0773 10.2308 22.8592 10.1006C22.6411 9.96712 22.3904 9.90039 22.1072 9.90039C21.824 9.90039 21.5701 9.97038 21.3455 10.1104C21.1242 10.2471 20.9484 10.4505 20.8182 10.7207C20.688 10.9909 20.6229 11.3229 20.6229 11.7168V12.0537C20.6229 12.4281 20.6863 12.7487 20.8133 13.0156C20.9402 13.2793 21.1209 13.4827 21.3553 13.626C21.5896 13.766 21.8663 13.8359 22.1854 13.8359C22.423 13.8359 22.6297 13.8034 22.8055 13.7383C22.9813 13.6732 23.1261 13.5902 23.24 13.4893C23.354 13.3883 23.4337 13.2858 23.4793 13.1816L23.4988 13.1377H24.3484L24.3387 13.1768C24.2931 13.3558 24.2117 13.5299 24.0945 13.6992C23.9806 13.8652 23.8325 14.0166 23.6502 14.1533C23.4679 14.2868 23.2514 14.3942 23.0008 14.4756C22.7534 14.5537 22.4751 14.5928 22.1658 14.5928ZM25.4303 14.5V9.23633H26.2799V10.0176H26.358C26.4589 9.74089 26.6298 9.52604 26.8707 9.37305C27.1116 9.22005 27.4094 9.14355 27.7643 9.14355C27.8456 9.14355 27.9254 9.14844 28.0035 9.1582C28.0849 9.16471 28.1467 9.17122 28.1891 9.17773V10.0029C28.1012 9.98665 28.0149 9.97526 27.9303 9.96875C27.8489 9.95898 27.761 9.9541 27.6666 9.9541C27.3964 9.9541 27.1572 10.0078 26.9488 10.1152C26.7405 10.2227 26.5761 10.3724 26.4557 10.5645C26.3385 10.7565 26.2799 10.9811 26.2799 11.2383V14.5H25.4303ZM30.9408 14.5928C30.4395 14.5928 30.0082 14.4821 29.6469 14.2607C29.2888 14.0394 29.0121 13.7269 28.8168 13.3232C28.6247 12.9163 28.5287 12.4378 28.5287 11.8877V11.8828C28.5287 11.3392 28.6247 10.8623 28.8168 10.4521C29.0121 10.042 29.2872 9.72135 29.642 9.49023C29.9968 9.25911 30.4118 9.14355 30.8871 9.14355C31.3656 9.14355 31.7758 9.25423 32.1176 9.47559C32.4626 9.69694 32.7263 10.0062 32.9086 10.4033C33.0941 10.7972 33.1869 11.2562 33.1869 11.7803V12.1123H28.9682V11.4336H32.7523L32.3324 12.0537V11.7168C32.3324 11.3034 32.2706 10.9632 32.1469 10.6963C32.0232 10.4294 31.8523 10.2308 31.6342 10.1006C31.4161 9.96712 31.1654 9.90039 30.8822 9.90039C30.599 9.90039 30.3451 9.97038 30.1205 10.1104C29.8992 10.2471 29.7234 10.4505 29.5932 10.7207C29.463 10.9909 29.3979 11.3229 29.3979 11.7168V12.0537C29.3979 12.4281 29.4613 12.7487 29.5883 13.0156C29.7152 13.2793 29.8959 13.4827 30.1303 13.626C30.3646 13.766 30.6413 13.8359 30.9604 13.8359C31.198 13.8359 31.4047 13.8034 31.5805 13.7383C31.7563 13.6732 31.9011 13.5902 32.015 13.4893C32.129 13.3883 32.2087 13.2858 32.2543 13.1816L32.2738 13.1377H33.1234L33.1137 13.1768C33.0681 13.3558 32.9867 13.5299 32.8695 13.6992C32.7556 13.8652 32.6075 14.0166 32.4252 14.1533C32.2429 14.2868 32.0264 14.3942 31.7758 14.4756C31.5284 14.5537 31.2501 14.5928 30.9408 14.5928ZM36.1486 14.5928C35.7059 14.5928 35.3186 14.4805 34.9865 14.2559C34.6545 14.0312 34.3973 13.7155 34.215 13.3086C34.0328 12.8984 33.9416 12.4199 33.9416 11.873V11.8633C33.9416 11.3132 34.0328 10.8346 34.215 10.4277C34.3973 10.0208 34.6529 9.70508 34.9816 9.48047C35.3137 9.25586 35.7027 9.14355 36.1486 9.14355C36.3895 9.14355 36.6158 9.18262 36.8273 9.26074C37.0422 9.33561 37.2326 9.44141 37.3986 9.57812C37.5647 9.71484 37.6949 9.8776 37.7893 10.0664H37.8674V7.14648H38.717V14.5H37.8674V13.6602H37.7893C37.6818 13.8555 37.5467 14.0231 37.384 14.1631C37.2212 14.2998 37.0357 14.4056 36.8273 14.4805C36.619 14.5553 36.3928 14.5928 36.1486 14.5928ZM36.3439 13.8408C36.663 13.8408 36.938 13.7611 37.1691 13.6016C37.4003 13.4421 37.5777 13.2158 37.7014 12.9229C37.8251 12.6266 37.8869 12.2767 37.8869 11.873V11.8633C37.8869 11.4564 37.8251 11.1064 37.7014 10.8135C37.5777 10.5205 37.4003 10.2943 37.1691 10.1348C36.938 9.97526 36.663 9.89551 36.3439 9.89551C36.0249 9.89551 35.7499 9.97526 35.5188 10.1348C35.2909 10.291 35.1151 10.5156 34.9914 10.8086C34.871 11.1016 34.8107 11.4531 34.8107 11.8633V11.873C34.8107 12.2799 34.871 12.6315 34.9914 12.9277C35.1151 13.2207 35.2909 13.4469 35.5188 13.6064C35.7499 13.7627 36.0249 13.8408 36.3439 13.8408ZM45.1775 14.5928C44.9334 14.5928 44.7072 14.5553 44.4988 14.4805C44.2905 14.4056 44.1049 14.2998 43.9422 14.1631C43.7794 14.0231 43.6443 13.8555 43.5369 13.6602H43.4588V14.5H42.6092V7.14648H43.4588V10.0664H43.5369C43.6346 9.8776 43.7648 9.71484 43.9275 9.57812C44.0936 9.44141 44.2824 9.33561 44.4939 9.26074C44.7088 9.18262 44.9367 9.14355 45.1775 9.14355C45.6235 9.14355 46.0109 9.25586 46.3396 9.48047C46.6717 9.70508 46.9288 10.0208 47.1111 10.4277C47.2934 10.8346 47.3846 11.3132 47.3846 11.8633V11.873C47.3846 12.4199 47.2934 12.8984 47.1111 13.3086C46.9288 13.7155 46.6717 14.0312 46.3396 14.2559C46.0109 14.4805 45.6235 14.5928 45.1775 14.5928ZM44.9822 13.8408C45.3045 13.8408 45.5796 13.7627 45.8074 13.6064C46.0353 13.4469 46.2094 13.2207 46.3299 12.9277C46.4536 12.6315 46.5154 12.2799 46.5154 11.873V11.8633C46.5154 11.4531 46.4536 11.1016 46.3299 10.8086C46.2094 10.5156 46.0353 10.291 45.8074 10.1348C45.5796 9.97526 45.3045 9.89551 44.9822 9.89551C44.6632 9.89551 44.3881 9.97526 44.157 10.1348C43.9259 10.2943 43.7485 10.5205 43.6248 10.8135C43.5011 11.1064 43.4393 11.4564 43.4393 11.8633V11.873C43.4393 12.2767 43.5011 12.6266 43.6248 12.9229C43.7485 13.2158 43.9259 13.4421 44.157 13.6016C44.3881 13.7611 44.6632 13.8408 44.9822 13.8408ZM48.6568 16.3457C48.6015 16.3457 48.5396 16.3424 48.4713 16.3359C48.4029 16.3327 48.3395 16.3262 48.2809 16.3164V15.6182C48.3329 15.6279 48.3899 15.6344 48.4518 15.6377C48.5136 15.641 48.5738 15.6426 48.6324 15.6426C48.8733 15.6426 49.0702 15.5807 49.2232 15.457C49.3795 15.3333 49.5048 15.1201 49.5992 14.8174L49.6969 14.5049L47.7486 9.23633H48.6568L50.2779 14.0996L49.941 13.5674H50.3414L50.0045 14.0996L51.6207 9.23633H52.5143L50.4586 14.8223C50.3154 15.2161 50.164 15.5238 50.0045 15.7451C49.845 15.9665 49.6578 16.1211 49.443 16.209C49.2314 16.3001 48.9693 16.3457 48.6568 16.3457Z' fill='%230E0D0B'/%3e%3cpath d='M62.7081 13.27C62.742 13.27 62.7642 13.3057 62.7491 13.3362V13.336L61.1229 16.6083C61.0892 16.6761 60.9926 16.6759 60.959 16.6083L59.3382 13.336C59.3232 13.3057 59.3453 13.27 59.3792 13.27H62.7081Z' fill='%23EA4B4B'/%3e%3cpath d='M61.0026 9.71913C61.0194 9.68524 61.0678 9.68524 61.0845 9.71913L62.747 13.0897C62.762 13.12 62.7399 13.1557 62.706 13.1557H59.3763C59.3424 13.1557 59.3203 13.12 59.3353 13.0897L61.0026 9.71913Z' fill='%23EA4B4B'/%3e%3cpath d='M60.8426 9.63827C60.8766 9.63827 60.8987 9.6741 60.8835 9.70444L59.2164 13.0594C59.1995 13.0932 59.1513 13.0932 59.1345 13.0594L57.5001 9.77047C57.47 9.70962 57.5142 9.63827 57.5821 9.63827H60.8426Z' fill='%23EA4B4B'/%3e%3cpath d='M64.5036 9.63617C64.5715 9.63618 64.6157 9.70753 64.5855 9.76838H64.5854L62.9512 13.0573C62.9344 13.0911 62.8862 13.0912 62.8692 13.0573L61.2021 9.70235C61.187 9.672 61.2091 9.63617 61.2431 9.63617H64.5036Z' fill='%23EA4B4B'/%3e%3cpath d='M62.8284 6.18281C62.862 6.11518 62.9586 6.11518 62.9922 6.18281L64.5855 9.38969C64.6157 9.45054 64.5715 9.52189 64.5036 9.52189H61.2431C61.2091 9.52189 61.187 9.48605 61.2021 9.45571L62.8283 6.18265L62.8284 6.18281Z' fill='%23EA4B4B'/%3e%3cpath d='M62.3131 6.13196C62.381 6.13196 62.4252 6.20331 62.3951 6.26416C62.154 6.74935 61.9128 7.23455 61.6718 7.71975H61.6716C61.4225 8.22125 61.1733 8.72259 60.9242 9.22409C60.9074 9.25799 60.859 9.25799 60.8422 9.22409L60.6305 8.79587C60.6275 8.78957 60.6259 8.78263 60.6259 8.77553V6.22349C60.6259 6.17297 60.6668 6.13196 60.7173 6.13196H62.3131Z' fill='%23EA4B4B'/%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M74.8537 10.0096C75.2721 10.0096 75.654 10.1125 75.9993 10.3184C76.3513 10.5177 76.6303 10.8032 76.8361 11.1751C77.0487 11.547 77.1549 11.9953 77.1549 12.52V12.6495C77.1549 13.1675 77.052 13.6158 76.8461 13.9943C76.6402 14.3729 76.3613 14.6618 76.0093 14.861C75.664 15.0603 75.2788 15.1599 74.8537 15.1599C74.515 15.1599 74.2261 15.1134 73.9871 15.0204C73.7546 14.9341 73.5653 14.8212 73.4192 14.6817C73.2731 14.5423 73.1602 14.3995 73.0805 14.2534H72.941V16.9659L72.1541 16.0013V10.1491H72.9211V10.956H73.0352C73.2729 10.6733 73.3893 10.4911 73.6683 10.2985C73.9538 10.1059 74.349 10.0096 74.8537 10.0096ZM74.6445 10.7069C74.1464 10.7069 73.7347 10.8696 73.4092 11.195C73.0905 11.5138 72.9311 11.9621 72.9311 12.5399V12.6296C72.9311 13.2074 73.0905 13.659 73.4092 13.9844C73.7347 14.3032 74.1464 14.4626 74.6445 14.4626C75.1492 14.4626 75.5577 14.3032 75.8698 13.9844C76.1886 13.659 76.348 13.2074 76.348 12.6296V12.5399C76.348 11.9621 76.1886 11.5138 75.8698 11.195C75.5577 10.8696 75.1492 10.7069 74.6445 10.7069Z' fill='%230E0D0B'/%3e%3cpath d='M78.5848 11.9583L78.5555 15.4596L77.7681 14.4846V10.9583L78.5848 11.9583Z' fill='%230E0D0B'/%3e%3cpath d='M101.588 10.2986H102.444L103 10.986H101.588V10.9867H100.802L101.588 11.9623V14.1937C101.588 14.3929 101.685 14.4926 101.877 14.4926H102.379L102.928 15.17H101.668C101.389 15.17 101.173 15.0936 101.021 14.9409C100.874 14.7881 100.801 14.5789 100.801 14.3133V10.986H99.8799L99.3217 10.2986H100.801V9.13501H101.588V10.2986Z' fill='%230E0D0B'/%3e%3cpath d='M69.0133 7.90764C69.4848 7.90764 69.9065 7.99068 70.2784 8.15671C70.6569 8.3161 70.9525 8.55517 71.165 8.87395C71.3842 9.18609 71.4938 9.58126 71.4938 10.0594V10.4778H70.667V10.0594C70.667 9.72072 70.5939 9.44842 70.4477 9.24254C70.3083 9.03666 70.1124 8.88392 69.86 8.7843C69.6143 8.68469 69.332 8.63487 69.0133 8.63487C68.555 8.63487 68.1864 8.7378 67.9075 8.94367C67.6286 9.14291 67.4891 9.4285 67.4891 9.80041C67.4891 10.0461 67.5488 10.2453 67.6684 10.3981C67.7879 10.5508 67.9573 10.677 68.1764 10.7767C68.3956 10.8696 68.658 10.9527 68.9635 11.0257L69.4815 11.1552C69.8866 11.2416 70.2485 11.3611 70.5673 11.5138C70.8927 11.6599 71.1517 11.8625 71.3443 12.1215C71.5369 12.3739 71.6332 12.706 71.6332 13.1177C71.6332 13.5295 71.5303 13.8881 71.3244 14.1936C71.1185 14.4991 70.8263 14.7382 70.4477 14.9109C70.0758 15.0769 69.6375 15.1599 69.1328 15.1599C68.6281 15.1599 68.1765 15.0702 67.778 14.8909C67.3795 14.7116 67.0641 14.4426 66.8316 14.084C66.6058 13.7187 66.4929 13.2638 66.4929 12.7192V12.51H67.3197V12.7192C67.3197 13.297 67.4891 13.7287 67.8278 14.0143C68.1665 14.2932 68.6015 14.4327 69.1328 14.4327C69.6774 14.4327 70.0924 14.3098 70.378 14.0641C70.6636 13.8183 70.8064 13.5095 70.8064 13.1376C70.8064 12.8786 70.74 12.6727 70.6072 12.52C70.481 12.3673 70.3017 12.2444 70.0692 12.1514C69.8368 12.0518 69.5645 11.9655 69.2523 11.8924L68.7343 11.7629C68.3292 11.6566 67.9706 11.5271 67.6584 11.3744C67.3463 11.2216 67.1006 11.0224 66.9213 10.7767C66.7486 10.5243 66.6623 10.2022 66.6623 9.81035C66.6623 9.41852 66.7585 9.07981 66.9511 8.79424C67.1504 8.50866 67.426 8.28953 67.778 8.13678C68.1366 7.98404 68.5484 7.90764 69.0133 7.90764Z' fill='%230E0D0B'/%3e%3cpath d='M81.6544 10.0096C82.1193 10.0096 82.5145 10.0959 82.8399 10.2686C83.1719 10.4412 83.431 10.6704 83.6169 10.956C83.8095 11.2415 83.9324 11.5471 83.9855 11.8725L83.2185 12.0318C83.1853 11.7928 83.1056 11.5736 82.9794 11.3744C82.8598 11.1752 82.6905 11.0158 82.4713 10.8962C82.2521 10.7767 81.9832 10.7169 81.6644 10.7169C81.339 10.7169 81.0468 10.7899 80.7877 10.936C80.5354 11.0821 80.3328 11.2914 80.1801 11.5637C80.034 11.836 79.9609 12.1614 79.9609 12.5399V12.6296C79.9609 13.0081 80.034 13.3335 80.1801 13.6058C80.3328 13.8781 80.5354 14.0873 80.7877 14.2334C81.0468 14.3795 81.339 14.4526 81.6644 14.4526C82.1492 14.4526 82.5178 14.3264 82.7702 14.0741C83.0292 13.8217 83.1886 13.5095 83.2483 13.1376L84.0254 13.307C83.9523 13.6257 83.8195 13.9279 83.6269 14.2135C83.4343 14.4991 83.172 14.7282 82.8399 14.9009C82.5145 15.0735 82.1193 15.1599 81.6544 15.1599C81.1829 15.1599 80.7579 15.0603 80.3793 14.861C80.0074 14.6551 79.7119 14.363 79.4927 13.9844C79.2802 13.6059 79.1739 13.1575 79.1739 12.6395V12.5299C79.1739 12.0053 79.2802 11.557 79.4927 11.1851C79.7119 10.8066 80.0074 10.5177 80.3793 10.3184C80.7579 10.1126 81.1829 10.0096 81.6544 10.0096Z' fill='%230E0D0B'/%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M86.7515 10.0096C87.2097 10.0096 87.6149 10.1092 87.9668 10.3084C88.3188 10.501 88.5944 10.78 88.7937 11.1452C88.9929 11.5105 89.0925 11.9389 89.0925 12.4304V12.7889H85.1177C85.1377 13.3136 85.3071 13.7254 85.6258 14.0243C85.9446 14.3165 86.3431 14.4626 86.8212 14.4626C87.2396 14.4626 87.5617 14.3663 87.7875 14.1737C88.0133 13.9811 88.186 13.752 88.3056 13.4863L88.983 13.815C88.8833 14.0209 88.7439 14.2268 88.5646 14.4327C88.3919 14.6386 88.1628 14.8113 87.8772 14.9507C87.5983 15.0902 87.2396 15.1599 86.8013 15.1599C86.3099 15.1599 85.8782 15.057 85.5063 14.8511C85.1344 14.6386 84.8455 14.343 84.6396 13.9645C84.4337 13.5859 84.3307 13.1476 84.3307 12.6495V12.5299C84.3307 12.0252 84.4337 11.5836 84.6396 11.205C84.8455 10.8265 85.1311 10.5342 85.4963 10.3284C85.8616 10.1159 86.28 10.0096 86.7515 10.0096ZM86.7515 10.7069C86.3066 10.7069 85.9413 10.8331 85.6557 11.0855C85.3701 11.3378 85.1941 11.6898 85.1277 12.1414H88.2956C88.269 11.6898 88.113 11.3378 87.8274 11.0855C87.5485 10.8331 87.1898 10.7069 86.7515 10.7069Z' fill='%230E0D0B'/%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M97.1624 10.0096C97.6207 10.0096 98.0258 10.1092 98.3778 10.3084C98.7298 10.501 99.0054 10.78 99.2046 11.1452C99.4039 11.5105 99.5035 11.9389 99.5035 12.4304V12.7889H95.5287C95.5487 13.3136 95.718 13.7254 96.0368 14.0243C96.3555 14.3165 96.754 14.4626 97.2322 14.4626C97.6505 14.4626 97.9727 14.3663 98.1985 14.1737C98.4243 13.9811 98.5969 13.752 98.7165 13.4863L99.3939 13.815C99.2943 14.0209 99.1548 14.2268 98.9755 14.4327C98.8028 14.6386 98.5737 14.8113 98.2881 14.9507C98.0092 15.0902 97.6506 15.1599 97.2123 15.1599C96.7208 15.1599 96.2892 15.057 95.9172 14.8511C95.5453 14.6386 95.2564 14.343 95.0505 13.9645C94.8446 13.5859 94.7417 13.1476 94.7417 12.6495V12.5299C94.7417 12.0252 94.8446 11.5836 95.0505 11.205C95.2564 10.8265 95.542 10.5342 95.9073 10.3284C96.2725 10.1158 96.6909 10.0096 97.1624 10.0096ZM97.1624 10.7069C96.7175 10.7069 96.3522 10.8331 96.0666 11.0855C95.7811 11.3378 95.6051 11.6898 95.5387 12.1414H98.7066C98.68 11.6898 98.5239 11.3378 98.2383 11.0855C97.9594 10.8331 97.6008 10.7069 97.1624 10.7069Z' fill='%230E0D0B'/%3e%3cpath d='M92.2484 10.0594C92.6137 10.0594 92.9391 10.1358 93.2247 10.2885C93.5169 10.4413 93.7494 10.6671 93.9221 10.966C94.0947 11.2648 94.1811 11.6334 94.1811 12.0717V15.1458H93.394V12.1315C93.394 11.6467 93.2712 11.2947 93.0255 11.0755C92.7864 10.8564 92.461 10.7468 92.0492 10.7468C91.5777 10.7468 91.1925 10.8995 90.8936 11.205C90.6014 11.5105 90.4553 11.9655 90.4553 12.5698V15.1458H89.6683V10.1491H90.4354V10.9582H90.5361C90.7355 10.7018 90.8604 10.5342 91.1128 10.3483C91.3718 10.1557 91.7503 10.0594 92.2484 10.0594Z' fill='%230E0D0B'/%3e%3cpath d='M78.5932 10.9581H77.7681V10.1514H78.6L78.5932 10.9581Z' fill='%230E0D0B'/%3e%3c/svg%3e";const on=({isOpen:t,onClose:n,title:s,subtitle:r,children:i,overlayContent:l,overlayDimmed:a=!0,styles:c,theme:d,maxWidth:p="522px",dark:u,footerLinkText:f,bannerSrc:g,bannerAlt:h="Banner"})=>{const{theme:y,dark:w,dk:x,palette:k}=Y.useSpiceBrand(c,u),U=u??w,v=d||y,b=c?.fontFamily||v.typography.fontFamily||'"Helvetica Neue", sans-serif',B=c?.primaryColor||v.colors.primary;return t?e.jsx("div",{style:{position:"fixed",inset:0,backgroundColor:U?"rgba(0,0,0,0.72)":"rgba(0,0,0,0.5)",display:"flex",alignItems:"center",justifyContent:"center",padding:"16px",zIndex:50},children:e.jsx("div",{style:{backgroundColor:k.shellBorder,borderRadius:"12px",padding:"5px",width:"100%",maxWidth:p,boxSizing:"border-box",boxShadow:"0 22px 80px rgba(0, 0, 0, 0.45)"},children:e.jsxs("div",{style:{backgroundColor:k.shell,border:`1px solid ${k.shellInnerBorder}`,borderRadius:"9px",width:"100%",padding:"0",display:"flex",flexDirection:"column",position:"relative",overflow:"hidden"},children:[l&&a&&e.jsx("div",{style:{position:"absolute",inset:0,backgroundColor:"rgba(0, 0, 0, 0.4)",zIndex:5,pointerEvents:"none",borderRadius:"12px"}}),g&&e.jsxs("div",{style:{position:"relative",width:"100%"},children:[e.jsx("img",{src:g,style:{width:"100%",height:"auto",display:"block",borderRadius:"6px 6px 0 0"},alt:h,onError:T=>{T.target.style.display="none"}}),e.jsx("button",{onClick:n,"aria-label":"Close",style:{position:"absolute",top:"15px",right:"15px",color:k.textPrimary,padding:"8px",backgroundColor:"transparent",borderRadius:"9999px",border:"none",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",zIndex:1},children:e.jsx(Xn,{size:28,strokeWidth:2.5})})]}),e.jsxs("div",{style:{padding:"28px 28px 0 28px",position:"relative"},children:[!g&&e.jsx("button",{onClick:n,style:{position:"absolute",top:"18px",right:"18px",color:k.textSecondary,padding:"6px",backgroundColor:"transparent",borderRadius:"50%",border:"none",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",transition:"background-color 0.2s",fontSize:"18px",fontWeight:"600"},onMouseEnter:T=>{T.currentTarget.style.backgroundColor=U?`${B}1a`:"#f3f4f6"},onMouseLeave:T=>{T.currentTarget.style.backgroundColor="transparent"},children:e.jsx(Xn,{size:24,strokeWidth:2.4})}),e.jsx("h2",{style:{fontSize:"22px",fontWeight:"700",color:k.textPrimary,margin:"0",fontFamily:b,lineHeight:"1.12"},children:s})]}),r&&e.jsx("div",{style:{padding:"11px 28px 13px 28px",fontSize:"12px",color:k.textSecondary,margin:"0",lineHeight:"1.35",fontFamily:b,borderBottom:U?`1px solid ${x.cardBorder}`:"1px solid #cdcfd1"},children:r}),i,e.jsxs("div",{style:{padding:"4px 28px 12px 28px",margin:0,marginTop:"8px",display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsx("img",{src:as,alt:"Powered by SpiceNet",style:{height:"auto",width:"auto",opacity:U?.85:1,filter:U?"brightness(0) invert(1)":"none",margin:0,display:"block"}}),e.jsxs("a",{href:"https://spiceflow-docs.spicenet.io",target:"_blank",rel:"noopener noreferrer",style:{fontSize:"10px",color:k.textSecondary,textDecoration:"none",display:"flex",alignItems:"center",gap:"4px",fontFamily:b,lineHeight:"1"},children:[e.jsx("span",{children:"Learn more about"}),e.jsx("span",{style:{color:B,textDecoration:"underline",fontWeight:"500"},children:f??"Spicenet's Spice Flow \u2192"})]})]}),l]})})}):null},is=({message:t,type:n="success",duration:s=5e3,onClose:r,linkText:i,linkUrl:l})=>{const[a,c]=o.useState(!1),d=o.useRef(null);o.useEffect(()=>()=>{d.current&&clearTimeout(d.current)},[]),o.useEffect(()=>{const f=setTimeout(()=>{c(!0),d.current=setTimeout(r,300)},s);return()=>{clearTimeout(f),d.current&&(clearTimeout(d.current),d.current=null)}},[s,r]);const p=()=>{c(!0),d.current&&clearTimeout(d.current),d.current=setTimeout(r,300)},u={success:{background:"#ecfdf5",border:"#10b981",text:"#065f46",icon:"#10b981"},error:{background:"#fef2f2",border:"#ef4444",text:"#991b1b",icon:"#ef4444"},info:{background:"#FEF2F2",border:"#EA4B4B",text:"#374151",icon:"#EA4B4B"}}[n];return e.jsxs("div",{style:{position:"fixed",bottom:"24px",right:"24px",zIndex:9999,display:"flex",alignItems:"flex-start",gap:"12px",padding:"16px",backgroundColor:u.background,border:`1px solid ${u.border}`,borderRadius:"12px",boxShadow:"0 10px 25px rgba(0, 0, 0, 0.15)",maxWidth:"400px",minWidth:"300px",animation:a?"toastSlideOut 0.3s ease-out forwards":"toastSlideIn 0.3s ease-out forwards"},children:[e.jsxs("div",{style:{flexShrink:0,width:"24px",height:"24px",display:"flex",alignItems:"center",justifyContent:"center"},children:[n==="success"&&e.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:u.icon,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M22 11.08V12a10 10 0 1 1-5.93-9.14"}),e.jsx("polyline",{points:"22 4 12 14.01 9 11.01"})]}),n==="error"&&e.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:u.icon,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("circle",{cx:"12",cy:"12",r:"10"}),e.jsx("line",{x1:"15",y1:"9",x2:"9",y2:"15"}),e.jsx("line",{x1:"9",y1:"9",x2:"15",y2:"15"})]}),n==="info"&&e.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:u.icon,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("circle",{cx:"12",cy:"12",r:"10"}),e.jsx("line",{x1:"12",y1:"16",x2:"12",y2:"12"}),e.jsx("line",{x1:"12",y1:"8",x2:"12.01",y2:"8"})]})]}),e.jsxs("div",{style:{flex:1,minWidth:0},children:[e.jsx("p",{style:{margin:0,fontSize:"14px",fontWeight:500,color:u.text,lineHeight:1.5},children:t}),i&&l&&e.jsxs("a",{href:l,target:"_blank",rel:"noopener noreferrer",style:{display:"inline-flex",alignItems:"center",gap:"4px",marginTop:"8px",fontSize:"13px",fontWeight:500,color:"#EA4B4B",textDecoration:"none"},children:[i,e.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"}),e.jsx("polyline",{points:"15 3 21 3 21 9"}),e.jsx("line",{x1:"10",y1:"14",x2:"21",y2:"3"})]})]})]}),e.jsx("button",{onClick:p,style:{flexShrink:0,width:"24px",height:"24px",display:"flex",alignItems:"center",justifyContent:"center",background:"transparent",border:"none",cursor:"pointer",padding:0,color:"#9ca3af",transition:"color 0.15s ease"},onMouseEnter:f=>f.currentTarget.style.color="#6b7280",onMouseLeave:f=>f.currentTarget.style.color="#9ca3af",children:e.jsx(Xn,{size:18})}),e.jsx("style",{children:`
2
+ "use strict";var Go=Object.create;var Ls=Object.defineProperty;var Jo=Object.getOwnPropertyDescriptor;var $o=Object.getOwnPropertyNames;var _o=Object.getPrototypeOf,er=Object.prototype.hasOwnProperty;var tr=(t,n,s,r)=>{if(n&&typeof n=="object"||typeof n=="function")for(let a of $o(n))!er.call(t,a)&&a!==s&&Ls(t,a,{get:()=>n[a],enumerable:!(r=Jo(n,a))||r.enumerable});return t};var Sn=(t,n,s)=>(s=t!=null?Go(_o(t)):{},tr(n||!t||!t.__esModule?Ls(s,"default",{value:t,enumerable:!0}):s,t));const e=require("react/jsx-runtime"),o=require("react"),Yn=require("lucide-react"),K=require("./useSpiceBrand-BBtUTOno.js"),Ge=require("./Button-KtHGKIo6.js"),Q=require("./index-WLbJouQ7.js"),ft=require("wagmi"),V=require("@spicenet-io/spiceflow-core"),P=require("viem"),_t=require("@privy-io/react-auth"),Dn=require("@dynamic-labs/sdk-react-core"),mn=require("./providerWallet-DrwSLBof.js"),Zn=require("react-dom"),en=require("viem/actions"),nr=require("./auth-privy.cjs.js");var En=typeof document<"u"?document.currentScript:null;const Xn=({size:t=20,strokeWidth:n=2,color:s="currentColor",style:r})=>e.jsxs("svg",{width:t,height:t,viewBox:"0 0 24 24",fill:"none",stroke:s,strokeWidth:n,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",style:r,children:[e.jsx("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),e.jsx("line",{x1:"6",y1:"6",x2:"18",y2:"18"})]});var is="data:image/svg+xml,%3csvg width='108' height='22' viewBox='0 0 108 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M1.9916 11.9854V11.2041H3.98379C4.48835 11.2041 4.87897 11.0739 5.15566 10.8135C5.43236 10.5498 5.5707 10.1868 5.5707 9.72461V9.71484C5.5707 9.24935 5.43236 8.88639 5.15566 8.62598C4.87897 8.36556 4.48835 8.23535 3.98379 8.23535H1.9916V7.4541H4.2084C4.65111 7.4541 5.04173 7.5485 5.38027 7.7373C5.71882 7.92611 5.98411 8.18978 6.17617 8.52832C6.37148 8.86686 6.46914 9.25911 6.46914 9.70508V9.71484C6.46914 10.1608 6.37148 10.5547 6.17617 10.8965C5.98411 11.2383 5.71882 11.5052 5.38027 11.6973C5.04173 11.8893 4.65111 11.9854 4.2084 11.9854H1.9916ZM1.55215 14.5V7.4541H2.43106V14.5H1.55215ZM9.51875 14.5928C9.0207 14.5928 8.58939 14.4837 8.2248 14.2656C7.86348 14.0443 7.58353 13.7301 7.38496 13.3232C7.18965 12.9163 7.09199 12.4329 7.09199 11.873V11.8633C7.09199 11.3001 7.18965 10.8151 7.38496 10.4082C7.58353 10.0013 7.86348 9.6888 8.2248 9.4707C8.58939 9.2526 9.0207 9.14355 9.51875 9.14355C10.0201 9.14355 10.4514 9.2526 10.8127 9.4707C11.174 9.6888 11.4523 10.0013 11.6477 10.4082C11.8462 10.8151 11.9455 11.3001 11.9455 11.8633V11.873C11.9455 12.4329 11.8462 12.9163 11.6477 13.3232C11.4523 13.7301 11.174 14.0443 10.8127 14.2656C10.4514 14.4837 10.0201 14.5928 9.51875 14.5928ZM9.51875 13.8408C9.85078 13.8408 10.1324 13.7627 10.3635 13.6064C10.5946 13.4502 10.7704 13.2256 10.8908 12.9326C11.0145 12.6396 11.0764 12.2865 11.0764 11.873V11.8633C11.0764 11.4466 11.0145 11.0918 10.8908 10.7988C10.7704 10.5059 10.5946 10.2829 10.3635 10.1299C10.1324 9.97363 9.85078 9.89551 9.51875 9.89551C9.18672 9.89551 8.90514 9.97363 8.67402 10.1299C8.4429 10.2829 8.26549 10.5059 8.1418 10.7988C8.02135 11.0918 7.96113 11.4466 7.96113 11.8633V11.873C7.96113 12.2865 8.02135 12.6396 8.1418 12.9326C8.26549 13.2256 8.4429 13.4502 8.67402 13.6064C8.90514 13.7627 9.18672 13.8408 9.51875 13.8408ZM13.7842 14.5L12.3096 9.23633H13.1592L14.1943 13.4453H14.2725L15.4492 9.23633H16.2549L17.4316 13.4453H17.5098L18.5449 9.23633H19.3896L17.915 14.5H17.0605L15.8838 10.4277H15.8057L14.6338 14.5H13.7842ZM22.1658 14.5928C21.6645 14.5928 21.2332 14.4821 20.8719 14.2607C20.5138 14.0394 20.2371 13.7269 20.0418 13.3232C19.8497 12.9163 19.7537 12.4378 19.7537 11.8877V11.8828C19.7537 11.3392 19.8497 10.8623 20.0418 10.4521C20.2371 10.042 20.5122 9.72135 20.867 9.49023C21.2218 9.25911 21.6368 9.14355 22.1121 9.14355C22.5906 9.14355 23.0008 9.25423 23.3426 9.47559C23.6876 9.69694 23.9513 10.0062 24.1336 10.4033C24.3191 10.7972 24.4119 11.2562 24.4119 11.7803V12.1123H20.1932V11.4336H23.9773L23.5574 12.0537V11.7168C23.5574 11.3034 23.4956 10.9632 23.3719 10.6963C23.2482 10.4294 23.0773 10.2308 22.8592 10.1006C22.6411 9.96712 22.3904 9.90039 22.1072 9.90039C21.824 9.90039 21.5701 9.97038 21.3455 10.1104C21.1242 10.2471 20.9484 10.4505 20.8182 10.7207C20.688 10.9909 20.6229 11.3229 20.6229 11.7168V12.0537C20.6229 12.4281 20.6863 12.7487 20.8133 13.0156C20.9402 13.2793 21.1209 13.4827 21.3553 13.626C21.5896 13.766 21.8663 13.8359 22.1854 13.8359C22.423 13.8359 22.6297 13.8034 22.8055 13.7383C22.9813 13.6732 23.1261 13.5902 23.24 13.4893C23.354 13.3883 23.4337 13.2858 23.4793 13.1816L23.4988 13.1377H24.3484L24.3387 13.1768C24.2931 13.3558 24.2117 13.5299 24.0945 13.6992C23.9806 13.8652 23.8325 14.0166 23.6502 14.1533C23.4679 14.2868 23.2514 14.3942 23.0008 14.4756C22.7534 14.5537 22.4751 14.5928 22.1658 14.5928ZM25.4303 14.5V9.23633H26.2799V10.0176H26.358C26.4589 9.74089 26.6298 9.52604 26.8707 9.37305C27.1116 9.22005 27.4094 9.14355 27.7643 9.14355C27.8456 9.14355 27.9254 9.14844 28.0035 9.1582C28.0849 9.16471 28.1467 9.17122 28.1891 9.17773V10.0029C28.1012 9.98665 28.0149 9.97526 27.9303 9.96875C27.8489 9.95898 27.761 9.9541 27.6666 9.9541C27.3964 9.9541 27.1572 10.0078 26.9488 10.1152C26.7405 10.2227 26.5761 10.3724 26.4557 10.5645C26.3385 10.7565 26.2799 10.9811 26.2799 11.2383V14.5H25.4303ZM30.9408 14.5928C30.4395 14.5928 30.0082 14.4821 29.6469 14.2607C29.2888 14.0394 29.0121 13.7269 28.8168 13.3232C28.6247 12.9163 28.5287 12.4378 28.5287 11.8877V11.8828C28.5287 11.3392 28.6247 10.8623 28.8168 10.4521C29.0121 10.042 29.2872 9.72135 29.642 9.49023C29.9968 9.25911 30.4118 9.14355 30.8871 9.14355C31.3656 9.14355 31.7758 9.25423 32.1176 9.47559C32.4626 9.69694 32.7263 10.0062 32.9086 10.4033C33.0941 10.7972 33.1869 11.2562 33.1869 11.7803V12.1123H28.9682V11.4336H32.7523L32.3324 12.0537V11.7168C32.3324 11.3034 32.2706 10.9632 32.1469 10.6963C32.0232 10.4294 31.8523 10.2308 31.6342 10.1006C31.4161 9.96712 31.1654 9.90039 30.8822 9.90039C30.599 9.90039 30.3451 9.97038 30.1205 10.1104C29.8992 10.2471 29.7234 10.4505 29.5932 10.7207C29.463 10.9909 29.3979 11.3229 29.3979 11.7168V12.0537C29.3979 12.4281 29.4613 12.7487 29.5883 13.0156C29.7152 13.2793 29.8959 13.4827 30.1303 13.626C30.3646 13.766 30.6413 13.8359 30.9604 13.8359C31.198 13.8359 31.4047 13.8034 31.5805 13.7383C31.7563 13.6732 31.9011 13.5902 32.015 13.4893C32.129 13.3883 32.2087 13.2858 32.2543 13.1816L32.2738 13.1377H33.1234L33.1137 13.1768C33.0681 13.3558 32.9867 13.5299 32.8695 13.6992C32.7556 13.8652 32.6075 14.0166 32.4252 14.1533C32.2429 14.2868 32.0264 14.3942 31.7758 14.4756C31.5284 14.5537 31.2501 14.5928 30.9408 14.5928ZM36.1486 14.5928C35.7059 14.5928 35.3186 14.4805 34.9865 14.2559C34.6545 14.0312 34.3973 13.7155 34.215 13.3086C34.0328 12.8984 33.9416 12.4199 33.9416 11.873V11.8633C33.9416 11.3132 34.0328 10.8346 34.215 10.4277C34.3973 10.0208 34.6529 9.70508 34.9816 9.48047C35.3137 9.25586 35.7027 9.14355 36.1486 9.14355C36.3895 9.14355 36.6158 9.18262 36.8273 9.26074C37.0422 9.33561 37.2326 9.44141 37.3986 9.57812C37.5647 9.71484 37.6949 9.8776 37.7893 10.0664H37.8674V7.14648H38.717V14.5H37.8674V13.6602H37.7893C37.6818 13.8555 37.5467 14.0231 37.384 14.1631C37.2212 14.2998 37.0357 14.4056 36.8273 14.4805C36.619 14.5553 36.3928 14.5928 36.1486 14.5928ZM36.3439 13.8408C36.663 13.8408 36.938 13.7611 37.1691 13.6016C37.4003 13.4421 37.5777 13.2158 37.7014 12.9229C37.8251 12.6266 37.8869 12.2767 37.8869 11.873V11.8633C37.8869 11.4564 37.8251 11.1064 37.7014 10.8135C37.5777 10.5205 37.4003 10.2943 37.1691 10.1348C36.938 9.97526 36.663 9.89551 36.3439 9.89551C36.0249 9.89551 35.7499 9.97526 35.5188 10.1348C35.2909 10.291 35.1151 10.5156 34.9914 10.8086C34.871 11.1016 34.8107 11.4531 34.8107 11.8633V11.873C34.8107 12.2799 34.871 12.6315 34.9914 12.9277C35.1151 13.2207 35.2909 13.4469 35.5188 13.6064C35.7499 13.7627 36.0249 13.8408 36.3439 13.8408ZM45.1775 14.5928C44.9334 14.5928 44.7072 14.5553 44.4988 14.4805C44.2905 14.4056 44.1049 14.2998 43.9422 14.1631C43.7794 14.0231 43.6443 13.8555 43.5369 13.6602H43.4588V14.5H42.6092V7.14648H43.4588V10.0664H43.5369C43.6346 9.8776 43.7648 9.71484 43.9275 9.57812C44.0936 9.44141 44.2824 9.33561 44.4939 9.26074C44.7088 9.18262 44.9367 9.14355 45.1775 9.14355C45.6235 9.14355 46.0109 9.25586 46.3396 9.48047C46.6717 9.70508 46.9288 10.0208 47.1111 10.4277C47.2934 10.8346 47.3846 11.3132 47.3846 11.8633V11.873C47.3846 12.4199 47.2934 12.8984 47.1111 13.3086C46.9288 13.7155 46.6717 14.0312 46.3396 14.2559C46.0109 14.4805 45.6235 14.5928 45.1775 14.5928ZM44.9822 13.8408C45.3045 13.8408 45.5796 13.7627 45.8074 13.6064C46.0353 13.4469 46.2094 13.2207 46.3299 12.9277C46.4536 12.6315 46.5154 12.2799 46.5154 11.873V11.8633C46.5154 11.4531 46.4536 11.1016 46.3299 10.8086C46.2094 10.5156 46.0353 10.291 45.8074 10.1348C45.5796 9.97526 45.3045 9.89551 44.9822 9.89551C44.6632 9.89551 44.3881 9.97526 44.157 10.1348C43.9259 10.2943 43.7485 10.5205 43.6248 10.8135C43.5011 11.1064 43.4393 11.4564 43.4393 11.8633V11.873C43.4393 12.2767 43.5011 12.6266 43.6248 12.9229C43.7485 13.2158 43.9259 13.4421 44.157 13.6016C44.3881 13.7611 44.6632 13.8408 44.9822 13.8408ZM48.6568 16.3457C48.6015 16.3457 48.5396 16.3424 48.4713 16.3359C48.4029 16.3327 48.3395 16.3262 48.2809 16.3164V15.6182C48.3329 15.6279 48.3899 15.6344 48.4518 15.6377C48.5136 15.641 48.5738 15.6426 48.6324 15.6426C48.8733 15.6426 49.0702 15.5807 49.2232 15.457C49.3795 15.3333 49.5048 15.1201 49.5992 14.8174L49.6969 14.5049L47.7486 9.23633H48.6568L50.2779 14.0996L49.941 13.5674H50.3414L50.0045 14.0996L51.6207 9.23633H52.5143L50.4586 14.8223C50.3154 15.2161 50.164 15.5238 50.0045 15.7451C49.845 15.9665 49.6578 16.1211 49.443 16.209C49.2314 16.3001 48.9693 16.3457 48.6568 16.3457Z' fill='%230E0D0B'/%3e%3cpath d='M62.7081 13.27C62.742 13.27 62.7642 13.3057 62.7491 13.3362V13.336L61.1229 16.6083C61.0892 16.6761 60.9926 16.6759 60.959 16.6083L59.3382 13.336C59.3232 13.3057 59.3453 13.27 59.3792 13.27H62.7081Z' fill='%23EA4B4B'/%3e%3cpath d='M61.0026 9.71913C61.0194 9.68524 61.0678 9.68524 61.0845 9.71913L62.747 13.0897C62.762 13.12 62.7399 13.1557 62.706 13.1557H59.3763C59.3424 13.1557 59.3203 13.12 59.3353 13.0897L61.0026 9.71913Z' fill='%23EA4B4B'/%3e%3cpath d='M60.8426 9.63827C60.8766 9.63827 60.8987 9.6741 60.8835 9.70444L59.2164 13.0594C59.1995 13.0932 59.1513 13.0932 59.1345 13.0594L57.5001 9.77047C57.47 9.70962 57.5142 9.63827 57.5821 9.63827H60.8426Z' fill='%23EA4B4B'/%3e%3cpath d='M64.5036 9.63617C64.5715 9.63618 64.6157 9.70753 64.5855 9.76838H64.5854L62.9512 13.0573C62.9344 13.0911 62.8862 13.0912 62.8692 13.0573L61.2021 9.70235C61.187 9.672 61.2091 9.63617 61.2431 9.63617H64.5036Z' fill='%23EA4B4B'/%3e%3cpath d='M62.8284 6.18281C62.862 6.11518 62.9586 6.11518 62.9922 6.18281L64.5855 9.38969C64.6157 9.45054 64.5715 9.52189 64.5036 9.52189H61.2431C61.2091 9.52189 61.187 9.48605 61.2021 9.45571L62.8283 6.18265L62.8284 6.18281Z' fill='%23EA4B4B'/%3e%3cpath d='M62.3131 6.13196C62.381 6.13196 62.4252 6.20331 62.3951 6.26416C62.154 6.74935 61.9128 7.23455 61.6718 7.71975H61.6716C61.4225 8.22125 61.1733 8.72259 60.9242 9.22409C60.9074 9.25799 60.859 9.25799 60.8422 9.22409L60.6305 8.79587C60.6275 8.78957 60.6259 8.78263 60.6259 8.77553V6.22349C60.6259 6.17297 60.6668 6.13196 60.7173 6.13196H62.3131Z' fill='%23EA4B4B'/%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M74.8537 10.0096C75.2721 10.0096 75.654 10.1125 75.9993 10.3184C76.3513 10.5177 76.6303 10.8032 76.8361 11.1751C77.0487 11.547 77.1549 11.9953 77.1549 12.52V12.6495C77.1549 13.1675 77.052 13.6158 76.8461 13.9943C76.6402 14.3729 76.3613 14.6618 76.0093 14.861C75.664 15.0603 75.2788 15.1599 74.8537 15.1599C74.515 15.1599 74.2261 15.1134 73.9871 15.0204C73.7546 14.9341 73.5653 14.8212 73.4192 14.6817C73.2731 14.5423 73.1602 14.3995 73.0805 14.2534H72.941V16.9659L72.1541 16.0013V10.1491H72.9211V10.956H73.0352C73.2729 10.6733 73.3893 10.4911 73.6683 10.2985C73.9538 10.1059 74.349 10.0096 74.8537 10.0096ZM74.6445 10.7069C74.1464 10.7069 73.7347 10.8696 73.4092 11.195C73.0905 11.5138 72.9311 11.9621 72.9311 12.5399V12.6296C72.9311 13.2074 73.0905 13.659 73.4092 13.9844C73.7347 14.3032 74.1464 14.4626 74.6445 14.4626C75.1492 14.4626 75.5577 14.3032 75.8698 13.9844C76.1886 13.659 76.348 13.2074 76.348 12.6296V12.5399C76.348 11.9621 76.1886 11.5138 75.8698 11.195C75.5577 10.8696 75.1492 10.7069 74.6445 10.7069Z' fill='%230E0D0B'/%3e%3cpath d='M78.5848 11.9583L78.5555 15.4596L77.7681 14.4846V10.9583L78.5848 11.9583Z' fill='%230E0D0B'/%3e%3cpath d='M101.588 10.2986H102.444L103 10.986H101.588V10.9867H100.802L101.588 11.9623V14.1937C101.588 14.3929 101.685 14.4926 101.877 14.4926H102.379L102.928 15.17H101.668C101.389 15.17 101.173 15.0936 101.021 14.9409C100.874 14.7881 100.801 14.5789 100.801 14.3133V10.986H99.8799L99.3217 10.2986H100.801V9.13501H101.588V10.2986Z' fill='%230E0D0B'/%3e%3cpath d='M69.0133 7.90764C69.4848 7.90764 69.9065 7.99068 70.2784 8.15671C70.6569 8.3161 70.9525 8.55517 71.165 8.87395C71.3842 9.18609 71.4938 9.58126 71.4938 10.0594V10.4778H70.667V10.0594C70.667 9.72072 70.5939 9.44842 70.4477 9.24254C70.3083 9.03666 70.1124 8.88392 69.86 8.7843C69.6143 8.68469 69.332 8.63487 69.0133 8.63487C68.555 8.63487 68.1864 8.7378 67.9075 8.94367C67.6286 9.14291 67.4891 9.4285 67.4891 9.80041C67.4891 10.0461 67.5488 10.2453 67.6684 10.3981C67.7879 10.5508 67.9573 10.677 68.1764 10.7767C68.3956 10.8696 68.658 10.9527 68.9635 11.0257L69.4815 11.1552C69.8866 11.2416 70.2485 11.3611 70.5673 11.5138C70.8927 11.6599 71.1517 11.8625 71.3443 12.1215C71.5369 12.3739 71.6332 12.706 71.6332 13.1177C71.6332 13.5295 71.5303 13.8881 71.3244 14.1936C71.1185 14.4991 70.8263 14.7382 70.4477 14.9109C70.0758 15.0769 69.6375 15.1599 69.1328 15.1599C68.6281 15.1599 68.1765 15.0702 67.778 14.8909C67.3795 14.7116 67.0641 14.4426 66.8316 14.084C66.6058 13.7187 66.4929 13.2638 66.4929 12.7192V12.51H67.3197V12.7192C67.3197 13.297 67.4891 13.7287 67.8278 14.0143C68.1665 14.2932 68.6015 14.4327 69.1328 14.4327C69.6774 14.4327 70.0924 14.3098 70.378 14.0641C70.6636 13.8183 70.8064 13.5095 70.8064 13.1376C70.8064 12.8786 70.74 12.6727 70.6072 12.52C70.481 12.3673 70.3017 12.2444 70.0692 12.1514C69.8368 12.0518 69.5645 11.9655 69.2523 11.8924L68.7343 11.7629C68.3292 11.6566 67.9706 11.5271 67.6584 11.3744C67.3463 11.2216 67.1006 11.0224 66.9213 10.7767C66.7486 10.5243 66.6623 10.2022 66.6623 9.81035C66.6623 9.41852 66.7585 9.07981 66.9511 8.79424C67.1504 8.50866 67.426 8.28953 67.778 8.13678C68.1366 7.98404 68.5484 7.90764 69.0133 7.90764Z' fill='%230E0D0B'/%3e%3cpath d='M81.6544 10.0096C82.1193 10.0096 82.5145 10.0959 82.8399 10.2686C83.1719 10.4412 83.431 10.6704 83.6169 10.956C83.8095 11.2415 83.9324 11.5471 83.9855 11.8725L83.2185 12.0318C83.1853 11.7928 83.1056 11.5736 82.9794 11.3744C82.8598 11.1752 82.6905 11.0158 82.4713 10.8962C82.2521 10.7767 81.9832 10.7169 81.6644 10.7169C81.339 10.7169 81.0468 10.7899 80.7877 10.936C80.5354 11.0821 80.3328 11.2914 80.1801 11.5637C80.034 11.836 79.9609 12.1614 79.9609 12.5399V12.6296C79.9609 13.0081 80.034 13.3335 80.1801 13.6058C80.3328 13.8781 80.5354 14.0873 80.7877 14.2334C81.0468 14.3795 81.339 14.4526 81.6644 14.4526C82.1492 14.4526 82.5178 14.3264 82.7702 14.0741C83.0292 13.8217 83.1886 13.5095 83.2483 13.1376L84.0254 13.307C83.9523 13.6257 83.8195 13.9279 83.6269 14.2135C83.4343 14.4991 83.172 14.7282 82.8399 14.9009C82.5145 15.0735 82.1193 15.1599 81.6544 15.1599C81.1829 15.1599 80.7579 15.0603 80.3793 14.861C80.0074 14.6551 79.7119 14.363 79.4927 13.9844C79.2802 13.6059 79.1739 13.1575 79.1739 12.6395V12.5299C79.1739 12.0053 79.2802 11.557 79.4927 11.1851C79.7119 10.8066 80.0074 10.5177 80.3793 10.3184C80.7579 10.1126 81.1829 10.0096 81.6544 10.0096Z' fill='%230E0D0B'/%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M86.7515 10.0096C87.2097 10.0096 87.6149 10.1092 87.9668 10.3084C88.3188 10.501 88.5944 10.78 88.7937 11.1452C88.9929 11.5105 89.0925 11.9389 89.0925 12.4304V12.7889H85.1177C85.1377 13.3136 85.3071 13.7254 85.6258 14.0243C85.9446 14.3165 86.3431 14.4626 86.8212 14.4626C87.2396 14.4626 87.5617 14.3663 87.7875 14.1737C88.0133 13.9811 88.186 13.752 88.3056 13.4863L88.983 13.815C88.8833 14.0209 88.7439 14.2268 88.5646 14.4327C88.3919 14.6386 88.1628 14.8113 87.8772 14.9507C87.5983 15.0902 87.2396 15.1599 86.8013 15.1599C86.3099 15.1599 85.8782 15.057 85.5063 14.8511C85.1344 14.6386 84.8455 14.343 84.6396 13.9645C84.4337 13.5859 84.3307 13.1476 84.3307 12.6495V12.5299C84.3307 12.0252 84.4337 11.5836 84.6396 11.205C84.8455 10.8265 85.1311 10.5342 85.4963 10.3284C85.8616 10.1159 86.28 10.0096 86.7515 10.0096ZM86.7515 10.7069C86.3066 10.7069 85.9413 10.8331 85.6557 11.0855C85.3701 11.3378 85.1941 11.6898 85.1277 12.1414H88.2956C88.269 11.6898 88.113 11.3378 87.8274 11.0855C87.5485 10.8331 87.1898 10.7069 86.7515 10.7069Z' fill='%230E0D0B'/%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M97.1624 10.0096C97.6207 10.0096 98.0258 10.1092 98.3778 10.3084C98.7298 10.501 99.0054 10.78 99.2046 11.1452C99.4039 11.5105 99.5035 11.9389 99.5035 12.4304V12.7889H95.5287C95.5487 13.3136 95.718 13.7254 96.0368 14.0243C96.3555 14.3165 96.754 14.4626 97.2322 14.4626C97.6505 14.4626 97.9727 14.3663 98.1985 14.1737C98.4243 13.9811 98.5969 13.752 98.7165 13.4863L99.3939 13.815C99.2943 14.0209 99.1548 14.2268 98.9755 14.4327C98.8028 14.6386 98.5737 14.8113 98.2881 14.9507C98.0092 15.0902 97.6506 15.1599 97.2123 15.1599C96.7208 15.1599 96.2892 15.057 95.9172 14.8511C95.5453 14.6386 95.2564 14.343 95.0505 13.9645C94.8446 13.5859 94.7417 13.1476 94.7417 12.6495V12.5299C94.7417 12.0252 94.8446 11.5836 95.0505 11.205C95.2564 10.8265 95.542 10.5342 95.9073 10.3284C96.2725 10.1158 96.6909 10.0096 97.1624 10.0096ZM97.1624 10.7069C96.7175 10.7069 96.3522 10.8331 96.0666 11.0855C95.7811 11.3378 95.6051 11.6898 95.5387 12.1414H98.7066C98.68 11.6898 98.5239 11.3378 98.2383 11.0855C97.9594 10.8331 97.6008 10.7069 97.1624 10.7069Z' fill='%230E0D0B'/%3e%3cpath d='M92.2484 10.0594C92.6137 10.0594 92.9391 10.1358 93.2247 10.2885C93.5169 10.4413 93.7494 10.6671 93.9221 10.966C94.0947 11.2648 94.1811 11.6334 94.1811 12.0717V15.1458H93.394V12.1315C93.394 11.6467 93.2712 11.2947 93.0255 11.0755C92.7864 10.8564 92.461 10.7468 92.0492 10.7468C91.5777 10.7468 91.1925 10.8995 90.8936 11.205C90.6014 11.5105 90.4553 11.9655 90.4553 12.5698V15.1458H89.6683V10.1491H90.4354V10.9582H90.5361C90.7355 10.7018 90.8604 10.5342 91.1128 10.3483C91.3718 10.1557 91.7503 10.0594 92.2484 10.0594Z' fill='%230E0D0B'/%3e%3cpath d='M78.5932 10.9581H77.7681V10.1514H78.6L78.5932 10.9581Z' fill='%230E0D0B'/%3e%3c/svg%3e";const on=({isOpen:t,onClose:n,title:s,subtitle:r,children:a,overlayContent:l,overlayDimmed:i=!0,styles:d,theme:c,maxWidth:h="522px",dark:u,footerLinkText:f,bannerSrc:g,bannerAlt:p="Banner"})=>{const{theme:y,dark:v,dk:x,palette:k}=K.useSpiceBrand(d,u),U=u??v,S=c||y,C=d?.fontFamily||S.typography.fontFamily||'"Helvetica Neue", sans-serif',I=d?.primaryColor||S.colors.primary;return t?e.jsx("div",{style:{position:"fixed",inset:0,backgroundColor:U?"rgba(0,0,0,0.72)":"rgba(0,0,0,0.5)",display:"flex",alignItems:"center",justifyContent:"center",padding:"16px",zIndex:50},children:e.jsx("div",{style:{backgroundColor:k.shellBorder,borderRadius:"12px",padding:"5px",width:"100%",maxWidth:h,boxSizing:"border-box",boxShadow:"0 22px 80px rgba(0, 0, 0, 0.45)"},children:e.jsxs("div",{style:{backgroundColor:k.shell,border:`1px solid ${k.shellInnerBorder}`,borderRadius:"9px",width:"100%",padding:"0",display:"flex",flexDirection:"column",position:"relative",overflow:"hidden"},children:[l&&i&&e.jsx("div",{style:{position:"absolute",inset:0,backgroundColor:"rgba(0, 0, 0, 0.4)",zIndex:5,pointerEvents:"none",borderRadius:"12px"}}),g&&e.jsxs("div",{style:{position:"relative",width:"100%"},children:[e.jsx("img",{src:g,style:{width:"100%",height:"auto",display:"block",borderRadius:"6px 6px 0 0"},alt:p,onError:F=>{F.target.style.display="none"}}),e.jsx("button",{onClick:n,"aria-label":"Close",style:{position:"absolute",top:"15px",right:"15px",color:k.textPrimary,padding:"8px",backgroundColor:"transparent",borderRadius:"9999px",border:"none",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",zIndex:1},children:e.jsx(Xn,{size:28,strokeWidth:2.5})})]}),e.jsxs("div",{style:{padding:"28px 28px 0 28px",position:"relative"},children:[!g&&e.jsx("button",{onClick:n,style:{position:"absolute",top:"18px",right:"18px",color:k.textSecondary,padding:"6px",backgroundColor:"transparent",borderRadius:"50%",border:"none",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",transition:"background-color 0.2s",fontSize:"18px",fontWeight:"600"},onMouseEnter:F=>{F.currentTarget.style.backgroundColor=U?`${I}1a`:"#f3f4f6"},onMouseLeave:F=>{F.currentTarget.style.backgroundColor="transparent"},children:e.jsx(Xn,{size:24,strokeWidth:2.4})}),e.jsx("h2",{style:{fontSize:"22px",fontWeight:"700",color:k.textPrimary,margin:"0",fontFamily:C,lineHeight:"1.12"},children:s})]}),r&&e.jsx("div",{style:{padding:"11px 28px 13px 28px",fontSize:"12px",color:k.textSecondary,margin:"0",lineHeight:"1.35",fontFamily:C,borderBottom:U?`1px solid ${x.cardBorder}`:"1px solid #cdcfd1"},children:r}),a,e.jsxs("div",{style:{padding:"4px 28px 12px 28px",margin:0,marginTop:"8px",display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsx("img",{src:is,alt:"Powered by SpiceNet",style:{height:"auto",width:"auto",opacity:U?.85:1,filter:U?"brightness(0) invert(1)":"none",margin:0,display:"block"}}),e.jsxs("a",{href:"https://spiceflow-docs.spicenet.io",target:"_blank",rel:"noopener noreferrer",style:{fontSize:"10px",color:k.textSecondary,textDecoration:"none",display:"flex",alignItems:"center",gap:"4px",fontFamily:C,lineHeight:"1"},children:[e.jsx("span",{children:"Learn more about"}),e.jsx("span",{style:{color:I,textDecoration:"underline",fontWeight:"500"},children:f??"Spicenet's Spice Flow \u2192"})]})]}),l]})})}):null},ls=({message:t,type:n="success",duration:s=5e3,onClose:r,linkText:a,linkUrl:l})=>{const[i,d]=o.useState(!1),c=o.useRef(null);o.useEffect(()=>()=>{c.current&&clearTimeout(c.current)},[]),o.useEffect(()=>{const f=setTimeout(()=>{d(!0),c.current=setTimeout(r,300)},s);return()=>{clearTimeout(f),c.current&&(clearTimeout(c.current),c.current=null)}},[s,r]);const h=()=>{d(!0),c.current&&clearTimeout(c.current),c.current=setTimeout(r,300)},u={success:{background:"#ecfdf5",border:"#10b981",text:"#065f46",icon:"#10b981"},error:{background:"#fef2f2",border:"#ef4444",text:"#991b1b",icon:"#ef4444"},info:{background:"#FEF2F2",border:"#EA4B4B",text:"#374151",icon:"#EA4B4B"}}[n];return e.jsxs("div",{style:{position:"fixed",bottom:"24px",right:"24px",zIndex:9999,display:"flex",alignItems:"flex-start",gap:"12px",padding:"16px",backgroundColor:u.background,border:`1px solid ${u.border}`,borderRadius:"12px",boxShadow:"0 10px 25px rgba(0, 0, 0, 0.15)",maxWidth:"400px",minWidth:"300px",animation:i?"toastSlideOut 0.3s ease-out forwards":"toastSlideIn 0.3s ease-out forwards"},children:[e.jsxs("div",{style:{flexShrink:0,width:"24px",height:"24px",display:"flex",alignItems:"center",justifyContent:"center"},children:[n==="success"&&e.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:u.icon,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M22 11.08V12a10 10 0 1 1-5.93-9.14"}),e.jsx("polyline",{points:"22 4 12 14.01 9 11.01"})]}),n==="error"&&e.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:u.icon,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("circle",{cx:"12",cy:"12",r:"10"}),e.jsx("line",{x1:"15",y1:"9",x2:"9",y2:"15"}),e.jsx("line",{x1:"9",y1:"9",x2:"15",y2:"15"})]}),n==="info"&&e.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:u.icon,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("circle",{cx:"12",cy:"12",r:"10"}),e.jsx("line",{x1:"12",y1:"16",x2:"12",y2:"12"}),e.jsx("line",{x1:"12",y1:"8",x2:"12.01",y2:"8"})]})]}),e.jsxs("div",{style:{flex:1,minWidth:0},children:[e.jsx("p",{style:{margin:0,fontSize:"14px",fontWeight:500,color:u.text,lineHeight:1.5},children:t}),a&&l&&e.jsxs("a",{href:l,target:"_blank",rel:"noopener noreferrer",style:{display:"inline-flex",alignItems:"center",gap:"4px",marginTop:"8px",fontSize:"13px",fontWeight:500,color:"#EA4B4B",textDecoration:"none"},children:[a,e.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"}),e.jsx("polyline",{points:"15 3 21 3 21 9"}),e.jsx("line",{x1:"10",y1:"14",x2:"21",y2:"3"})]})]})]}),e.jsx("button",{onClick:h,style:{flexShrink:0,width:"24px",height:"24px",display:"flex",alignItems:"center",justifyContent:"center",background:"transparent",border:"none",cursor:"pointer",padding:0,color:"#9ca3af",transition:"color 0.15s ease"},onMouseEnter:f=>f.currentTarget.style.color="#6b7280",onMouseLeave:f=>f.currentTarget.style.color="#9ca3af",children:e.jsx(Xn,{size:18})}),e.jsx("style",{children:`
3
3
  @keyframes toastSlideIn {
4
4
  from {
5
5
  opacity: 0;
@@ -20,7 +20,7 @@
20
20
  transform: translateX(100%);
21
21
  }
22
22
  }
23
- `})]})},tr={WALLET_DISCONNECTED:"Wallet is not connected.",WALLET_REJECTED:"Transaction was rejected.",SIGNATURE_FAILED:"Signature failed. Please try again.",CONCURRENT_EXECUTION:"A transaction is already in progress.",ABORT:"Transaction was cancelled.",NO_VENUE_FOR_CHAIN:"No swap venue available for this chain.",NO_LIQUIDITY:"No liquidity available for this swap pair.",VENUE_API_ERROR:"Swap service error. Please try again.",ROUTE_TOKEN_NOT_FOUND:"Token not found in the registry.",ROUTE_UNSUPPORTED_INPUT:"This input token is not supported.",ROUTE_STRATEGY_ERROR:"No viable route found for this swap.",INVALID_PARAMS:"Invalid parameters. Please check your inputs.",RELAYER_ERROR:"Relayer error. Please try again.",RELAYER_EXECUTE_ERROR:"Transaction execution failed. Please try again.",RELAYER_STATUS_ERROR:"Failed to check transaction status.",ON_CHAIN_REVERT:"Transaction reverted on-chain. Please verify your inputs.",POLLING_EXHAUSTED:"Transaction status check timed out. It may still complete.",POLLING_CONSECUTIVE_FAILURES:"Lost connection to transaction status. It may still complete.",ALL_ATTEMPTS_FAILED:"All attempts failed. Please try again."},nr=[{test:t=>t.includes("user rejected")||t.includes("user denied")||t.includes("user cancelled")||t.includes("rejected the request")||t.includes("action_rejected"),message:"Transaction was rejected."},{test:t=>t.includes("4001"),message:"Transaction was rejected."},{test:t=>t.includes("insufficient funds")||t.includes("insufficient balance"),message:"Insufficient funds for this transaction."},{test:t=>t.includes("internal json-rpc error")||t.includes("internal error")||t.includes("an internal error was received"),message:"RPC Network error. Try switching your RPC endpoint or try again."},{test:t=>t.includes("network error")||t.includes("failed to fetch")||t.includes("econnrefused")||t.includes("timeout"),message:"Network connection error. Please check your connection."},{test:t=>t.includes("does not match the target chain")||t.includes("current chain of the wallet"),message:"Wrong network detected. Please switch to the correct network and try again."},{test:t=>t.includes("nonce too low")||t.includes("nonce has already been used"),message:"Transaction conflict. Please try again."},{test:t=>t.includes("cannot estimate gas")||t.includes("gas required exceeds"),message:"Unable to estimate gas. The transaction may fail \u2014 please verify your inputs."},{test:t=>t.includes("execution reverted")||t.includes("transaction reverted"),message:"Transaction would fail on-chain. Please verify your inputs and try again."}],Xt=(t,n="Something went wrong. Please try again.")=>{if(Y.isSpiceflowError(t)){if(t.code==="RELAYER_ERROR"&&/amount is too small|estimated fee|insufficient after fees/i.test(t.message))return t.message;const r=tr[t.code];if(r)return r}const s=Ls(t).toLowerCase();for(const{test:r,message:i}of nr)if(r(s))return i;return n},sr=t=>{if(Y.isSpiceflowError(t))return t.code==="WALLET_REJECTED";const n=Ls(t).toLowerCase();return n.includes("user rejected")||n.includes("user denied")||n.includes("user cancelled")||n.includes("rejected the request")||n.includes("action_rejected")||n.includes("4001")};function Ls(t){if(!t)return"";if(typeof t=="string")return t;const n=t,s=n.message||n.reason||"",r=n.details||"";return`${s} ${r}`.trim()}var zs="data:image/png;base64,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",ls="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAQlBMVEVMaXGGl/+Elf+HmP+Hmf+Hl/+Gl/+Flv+Glv+Gl/+Gl/+Gl/////+On/+Akv/4+f/v8f/i5v+9x//S2P+tuP+erP+W3PvUAAAAC3RSTlMArBlx7Isy/vvOXbb4wDYAAAAJcEhZcwAACxMAAAsTAQCanBgAAALuSURBVHjarVfbtqsgDOxu0UBpkOv//+pJRC0i2HZ58uTeqzOEyYXkduvY/Tn8KSEBpFB/w3O8/WTjoCSS6dn4S6rha477QxFGS0nHM56ckJL/ox73b+CDQAQJujKiQxTDR4qH4LN109gP8Ti/uyI46K4BUagTLZ4Cz+CZAsWzhx/oeP3RyImhjf/7ePzmxF8Hr7+zNsP3eL7GkWH4Bc8MlQ7P3/DMsIvFKHRLPzBsTWVBizIfVNMBg9H7mLQxTRdUkb9tfJxebNZjywuJW1bf2xcw4WXtzDF5bVqXuJ9HwETHNnPYeHRii0THgcwQyBxTBDQ9Fx7dEBr0TOCDYyeS6aigsFsCQIFgBh9YiVgxQA7EqM9KiCiS95nh5WsGPZ4k8ZZFRqfoY4shy9i8AaExxRgTMgcApuSODPMdRtn02wc7Z9HkPMsPa1ZVOsiRygga4udfZ5vTKKx/7GIBVFJHCUy0r705DNu3LQ9kEQ6NxMTXwWzhUTD7xlJr2MLvrZCBVazy2OD0iaC4BGh1k4cSLOSbbIuujKW4wT76aYefrGswuBJSEoBeUnaFk7nQcKEIJZRXMPsfM95O3p3KKAoRa/cJTh0pHKMybSqyiO8wMsG0wzODi7UK9u0Ah7FIJAj1+UyQcl4Gqi2uax+L/siJVKQyi+j251sbMoHTZrUqlctiojDGRX27WpivYNtdi4upKme0c/gXBmdzY7ZoOi/cWDeU7MJy+oKn3hzbT9/cFKt6pmKe9udnCoTeG103VW7EjrGZJMOD863GNzfVQ0EDP6aJUH61wBRHGZa23npYDDpuh8EnpPBRS6UUQOg9r8enzaDdmhmsPkH/da3bokkr/i0dwMmYU7lg0pRrwiVzNrW+n/dKhVzVVIbGnE9Jj86IA8glk87h+xGnGrJyzXwYNvdD1uUx7/qgeX3UvT5sXx/3ry8c11ee60vX9bXvvXjWfsC3i+d79YV19+WPH1bf/7B8Lxy8/isBINTp+v8Ph4CTcAywkiYAAAAASUVORK5CYII=",or="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAPFBMVEVMaXGZhueZh+eYhuWXheWYh+eYhuaXheCYhuaah+j//fmhjvOSf+Sdi+q8sOzNxO/m4fT08fapmuja0/Jb/wGxAAAACnRSTlMArEz/IYtsA87sGIEBYwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAmJJREFUeNqtV4uSgyAMRIECGhTk///1otTKG3s2Mzdz03aXbEJIQkhuYv9jIx+komhKDnxk4v1F1wT+SoxcUj3PWu8Ex39U8lH4bzt4QthL6tlDA8OP5Iv1vMADGFc5+uRQnDWdEES81EwbNquXqDuBx8va6ZcXktUYBOkc/3GixsBvwA8neFGGGO7hdyeGAsMXeM/wBJ8ziLv6LwYeisD4f4lHhiAXmH9FvzYV3AchOw6At9gFKW4KANDbsttGoSyCKd1Ab4uxkzezhBQaRfQygHB3oj2FhjwT9QgifErM6jiOrQgAXe2UmcuiIKSuHG+mki2XCH0kYqzgF1vETyYszLFaxLBMNdsgDGNFAazRoUcwrDMlDYz28RS0newGcCRlDa8TK4YgxuORGj9x8NYVEsxjKQSp/pNAw5YRcJI/JP5nYeqxjAxeIfCeRQQDyWOos/y5xR2V4NIgYhRJVkjgpralBPcvQH4PsBxIX0DjJqKRdgYLtsYPUyqh60CsACXEQew7ECvAICZp7DqwQEIQXaR+CkzaoeKr3FewQdqg4mIy36VgLyZWz4G96N5vs8sKj0UPSlJGy4fAbWX88SgGQYgJVjDXi7JaaxYo9Oj4UQ0lrHCGdN25ceiEfNoZSfIomjhcKN26DarT0q4gaiyfe2C9u9hWNUBvRghbG+yd1AZNFFrjmu+ucXMF2j60OObE7f0m+mrv/5qQkimpO+IU8fKXQ9bDMe/5oPl81P3BsP183EeGu3GoLBw/WHnuLF20sXQ9X/ueL57PV99w+Z7P5Vvj8j3fXr7j9X/f/5Vsrv9/K3NM7mGXOq0AAAAASUVORK5CYII=",cs="data:image/svg+xml,%3csvg width='8' height='11' viewBox='57 6 8 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3e %3cpath d='M62.7081 13.27C62.742 13.27 62.7642 13.3057 62.7491 13.3362V13.336L61.1229 16.6083C61.0892 16.6761 60.9926 16.6759 60.959 16.6083L59.3382 13.336C59.3232 13.3057 59.3453 13.27 59.3792 13.27H62.7081Z' fill='%23EA4B4B'/%3e %3cpath d='M61.0026 9.71913C61.0194 9.68524 61.0678 9.68524 61.0845 9.71913L62.747 13.0897C62.762 13.12 62.7399 13.1557 62.706 13.1557H59.3763C59.3424 13.1557 59.3203 13.12 59.3353 13.0897L61.0026 9.71913Z' fill='%23EA4B4B'/%3e %3cpath d='M60.8426 9.63827C60.8766 9.63827 60.8987 9.6741 60.8835 9.70444L59.2164 13.0594C59.1995 13.0932 59.1513 13.0932 59.1345 13.0594L57.5001 9.77047C57.47 9.70962 57.5142 9.63827 57.5821 9.63827H60.8426Z' fill='%23EA4B4B'/%3e %3cpath d='M64.5036 9.63617C64.5715 9.63618 64.6157 9.70753 64.5855 9.76838H64.5854L62.9512 13.0573C62.9344 13.0911 62.8862 13.0912 62.8692 13.0573L61.2021 9.70235C61.187 9.672 61.2091 9.63617 61.2431 9.63617H64.5036Z' fill='%23EA4B4B'/%3e %3cpath d='M62.8284 6.18281C62.862 6.11518 62.9586 6.11518 62.9922 6.18281L64.5855 9.38969C64.6157 9.45054 64.5715 9.52189 64.5036 9.52189H61.2431C61.2091 9.52189 61.187 9.48605 61.2021 9.45571L62.8283 6.18265L62.8284 6.18281Z' fill='%23EA4B4B'/%3e %3cpath d='M62.3131 6.13196C62.381 6.13196 62.4252 6.20331 62.3951 6.26416C62.154 6.74935 61.9128 7.23455 61.6718 7.71975H61.6716C61.4225 8.22125 61.1733 8.72259 60.9242 9.22409C60.9074 9.25799 60.859 9.25799 60.8422 9.22409L60.6305 8.79587C60.6275 8.78957 60.6259 8.78263 60.6259 8.77553V6.22349C60.6259 6.17297 60.6668 6.13196 60.7173 6.13196H62.3131Z' fill='%23EA4B4B'/%3e%3c/svg%3e";const yn=V.getChainMeta(1)?.logo??"";V.getChainMeta(42161)?.logo;const Nn=V.TOKENS.find(t=>t.symbol==="USDC")?.logo??"";V.TOKENS.find(t=>t.symbol==="WBTC")?.logo;const cn=Object.fromEntries([...V.getMainnetChains(),...V.getTestnetChains()].map(t=>[t.id,t.logo])),Wn={metamask:zs,metaMask:zs,rabby:ls,phantom:or},rr=Object.fromEntries(V.TOKENS.map(t=>[t.symbol,t.logo])),xn=({symbol:t,logoURI:n,size:s=20,theme:r})=>{const i=r||Ze.createTheme("dark"),[l,a]=o.useState(!1),c={width:`${s}px`,height:`${s}px`,borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",fontSize:`${s*.4}px`,fontWeight:i.typography.fontWeight.bold,flexShrink:0,overflow:"hidden",backgroundColor:"#ffffff"},d=t.toUpperCase(),p=n||rr[d];if(p&&!l)return e.jsx("img",{src:p,alt:t,style:{...c,objectFit:"cover"},onError:()=>a(!0)});const u=ar(t);return e.jsx("div",{style:{...c,...u.style},children:u.icon})},ar=t=>{const n=t.toUpperCase(),s={ETH:{bg:"#627EEA",text:"#FFFFFF",icon:"\u039E"},BTC:{bg:"#F7931A",text:"#FFFFFF",icon:"\u20BF"},USDC:{bg:"#2775CA",text:"#FFFFFF"},USDT:{bg:"#26A17B",text:"#FFFFFF"},DAI:{bg:"#F5AC37",text:"#FFFFFF"},WETH:{bg:"#627EEA",text:"#FFFFFF",icon:"\u039E"},WBTC:{bg:"#F09242",text:"#FFFFFF",icon:"\u20BF"},CBTC:{bg:"#F7931A",text:"#FFFFFF",icon:"\u20BF"},USD:{bg:"#26A17B",text:"#FFFFFF",icon:"$"},MATIC:{bg:"#8247E5",text:"#FFFFFF"},AVAX:{bg:"#E84142",text:"#FFFFFF"},SOL:{bg:"#9945FF",text:"#FFFFFF"},DOT:{bg:"#E6007A",text:"#FFFFFF"},ADA:{bg:"#0033AD",text:"#FFFFFF"},LINK:{bg:"#375BD2",text:"#FFFFFF"},UNI:{bg:"#FF007A",text:"#FFFFFF"},AAVE:{bg:"#B6509E",text:"#FFFFFF"},CRV:{bg:"#40E0D0",text:"#000000"}}[n];if(s)return{style:{backgroundColor:s.bg,color:s.text},icon:s.icon||n.charAt(0)};const r=n.split("").reduce((c,d)=>d.charCodeAt(0)+((c<<5)-c),0),i=Math.abs(r)%360,l=`hsl(${i}, 60%, 50%)`,a=i>180?"#FFFFFF":"#000000";return{style:{backgroundColor:l,color:a},icon:n.charAt(0)}};var ds="data:image/svg+xml,%3csvg width='15' height='15' viewBox='0 0 15 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M7.5 7.49993V10.4999M7.5 4.96868V4.96784M14.25 7.5C14.25 11.2279 11.2279 14.25 7.5 14.25C3.77208 14.25 0.75 11.2279 0.75 7.5C0.75 3.77208 3.77208 0.75 7.5 0.75C11.2279 0.75 14.25 3.77208 14.25 7.5Z' stroke='%23ED6969' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3e%3c/svg%3e";const ir=({isOpen:t,onClose:n,onComplete:s,title:r="Testnet Airdrop",description:i="Request testnet tokens for your wallet. A small gas fee is required to process the airdrop.",chainId:l,airdropTag:a="default",walletAddress:c,airdropTokens:d,getChainConfig:p,getSupportedTokens:u})=>{const f=Ze.createTheme("light"),{primaryColor:g}=Y.useSpiceBrand(),[h,y]=o.useState(null),[w,x]=o.useState(null),{chain:k}=ht.useAccount(),{data:U}=ht.useWalletClient(),{switchChainAsync:v}=ht.useSwitchChain(),b=o.useMemo(()=>u(l),[l,u]),B=o.useMemo(()=>b.filter(j=>!V.isNativeToken(j.address)),[b]),{data:T,refetch:W}=ht.useReadContracts({contracts:B.map(j=>({address:j.address,abi:O.erc20Abi,functionName:"balanceOf",args:[c],chainId:l})),blockTag:"pending"}),E=o.useCallback(()=>{W();const j=setTimeout(W,2e3),M=setTimeout(W,4e3);return()=>{clearTimeout(j),clearTimeout(M)}},[W]);o.useEffect(()=>t?E():void 0,[t,E]),o.useEffect(()=>{let j;const M=()=>{j?.(),j=E()};return window.addEventListener("airdrop-complete",M),()=>{j?.(),window.removeEventListener("airdrop-complete",M)}},[E]);const I=o.useMemo(()=>{const j=[];return B.forEach((M,ne)=>{if(!d.some(se=>se.toUpperCase()===M.symbol.toUpperCase()))return;const $=T?.[ne],L=$?.status==="success"?$.result:BigInt(0),Q=Number(L)/Math.pow(10,M.decimals);j.push({address:M.address,symbol:M.symbol,name:M.name,decimals:M.decimals,balance:L,balanceFormatted:Q})}),j},[B,T,d]),C=p(l),P="0x111115763723B53395308eC4c9AB9d5FB0844cae",J=o.useCallback(async j=>{if(!c||!l){x({message:"Wallet not connected",type:"error"});return}if(!U){x({message:"Wallet client not available",type:"error"});return}y(j.address);try{k?.id!==l&&await v({chainId:l});const M=q.getClientForChain(l),ne=await M.getGasPrice(),$=BigInt(21e3)*ne*BigInt(110)/BigInt(100),L=await U.sendTransaction({to:P,value:$});await M.waitForTransactionReceipt({hash:L,timeout:6e4,pollingInterval:2e3,confirmations:1});const Q=await Y.relayerService.requestAirdrop({chainId:l,tokenId:j.symbol==="WBTC"?"mWBTC":j.symbol,wallet:c,tag:a});if(Q.success){const se=C?.blockExplorer;x({message:`Successfully airdropped ${j.symbol}!`,type:"success",linkText:Q.txHash?"View Transaction":void 0,linkUrl:Q.txHash&&se?`${se}/tx/${Q.txHash}`:void 0}),window.dispatchEvent(new CustomEvent("airdrop-complete",{detail:{token:j.symbol,txHash:Q.txHash}})),s&&s()}else x({message:Q.errorMessage||"Airdrop failed",type:"error"})}catch(M){x({message:Xt(M,"Airdrop request failed"),type:"error"})}finally{y(null)}},[c,l,U,k,v,a,C,s]),K=o.useCallback(()=>{window.dispatchEvent(new CustomEvent("airdrop-skipped"))},[n]);return e.jsxs(on,{isOpen:t,onClose:n,title:r,subtitle:e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",gap:"5px",backgroundColor:"#f9fafb",border:"1px solid #ed6969",borderRadius:"8px",padding:"10px",margin:"0 0 0 0"},children:[e.jsx("img",{src:ds,alt:"Info",style:{width:"14px",height:"14px",marginTop:"2px",flexShrink:0}}),e.jsx("p",{style:{fontSize:"13px",color:"#374151",margin:0,lineHeight:"1.5"},children:i})]}),theme:f,maxWidth:"420px",children:[e.jsxs("div",{style:{padding:"0 24px 32px 24px"},children:[e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"12px"},children:I.length===0?e.jsx("p",{style:{textAlign:"center",color:"#6b7280",fontSize:"14px",padding:"20px 0"},children:"No airdrop tokens available for this chain."}):I.map(j=>{const M=h===j.address,ne=M||h!==null;return e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"12px 16px",borderRadius:"12px",border:"1px solid #e5e7eb",backgroundColor:"white",transition:"all 150ms ease"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px"},children:[e.jsx(xn,{symbol:j.symbol,size:36,theme:f}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:"16px",fontWeight:600,color:"#111827"},children:j.symbol}),e.jsxs("div",{style:{fontSize:"12px",color:"#6b7280",fontFamily:'"IBM Plex Mono", monospace'},children:["Balance:"," ",j.balanceFormatted?.toFixed(4)??"0.0000"]})]})]}),e.jsx(Ze.Button,{variant:"outline",size:"sm",onClick:()=>J(j),disabled:ne,loading:M,theme:f,styles:{button:{backgroundColor:g}},children:"Get Airdrop"})]},j.address)})}),e.jsx(Ze.Button,{variant:"outline",fullWidth:!0,onClick:K,disabled:h!==null,theme:f,styles:{button:{backgroundColor:g}},style:{marginTop:"20px"},children:"NEXT"})]}),w&&e.jsx(is,{message:w.message,type:w.type,linkText:w.linkText,linkUrl:w.linkUrl,onClose:()=>x(null)})]})},us=15,ps=({checkStepStatus:t,pollingInterval:n=4e3,retryStep:s,maxRetries:r=3})=>{const[i,l]=o.useState(null),a=o.useRef(null),c=o.useRef(!1),d=o.useRef(!1),p=o.useRef(null),u=o.useRef({}),f=o.useRef(0),g=o.useRef(0),h=o.useCallback(()=>{a.current&&(clearInterval(a.current),a.current=null)},[]),y=o.useCallback(()=>{p.current=null,l(null),u.current={},f.current=0,g.current=0,h()},[h]),w=o.useCallback((x,k)=>{h(),c.current=!1,d.current=!1,u.current={},f.current=0,g.current=0;const U={intentId:x,steps:k.map(b=>({...b,status:"pending"})),overallStatus:"processing"};p.current=U,l(U);const v=async()=>{if(c.current||d.current)return;d.current=!0,g.current+=1;const b=g.current;try{const B=p.current;if(!B)return;const T=B.steps.map(C=>({...C}));let W=!0,E=!1;for(let C=0;C<T.length;C++){const P=T[C];if(P.status!=="success"){if((P.stepId===0||C>0&&T[C-1].status==="success")&&(P.status==="pending"||P.status==="processing"))try{const J=await t(x,P.stepId);if(f.current=0,J.data.status==="success")T[C]={...P,status:"success",transactionHash:J.data.transactionHash},C+1<T.length&&T[C+1].status==="pending"&&(T[C+1]={...T[C+1],status:"processing"});else if(J.data.status==="executing"||J.data.status==="created")T[C]={...P,status:"processing"};else if(J.data.status==="reverted"){const K=u.current[P.stepId]||0;if(s&&K<r){u.current[P.stepId]=K+1;try{await s(x,P.stepId)}catch(j){console.error(`[useStatus] Retry failed for step ${P.stepId}:`,j)}T[C]={...P,status:"processing"}}else T[C]={...P,status:"failed",transactionHash:J.data.transactionHash},E=!0}else T[C]={...P,status:"processing"}}catch(J){f.current+=1,console.error(`[useStatus] Poll #${b}: Error checking step ${P.stepId} (consecutive errors: ${f.current}/${us}):`,J),f.current>=us&&(console.error(`[useStatus] Too many consecutive polling errors (${us}). Marking step ${P.stepId} as failed.`),T[C]={...P,status:"failed"},E=!0)}T[C].status!=="success"&&(W=!1)}}const I={...B,steps:T,overallStatus:E?"failed":W?"success":"processing"};p.current=I,l(I),(W||E)&&(c.current=!0,h())}finally{d.current=!1}};v(),a.current=setInterval(v,n)},[t,n,h,s,r]);return o.useEffect(()=>()=>{h()},[h]),{intentStatus:i,startStatusPolling:w,stopStatusPolling:h,clearStatus:y}};function Gn(t){const[n,s,r]=t.split(":");if(n!=="evm"||!s||!r)return null;const i=Number(s);if(!Number.isFinite(i))return null;const l=r.startsWith("0x")?r.toLowerCase():`0x${r.toLowerCase()}`;return{chainId:i,address:l}}function Ps(t){return(t??"").trim().replace(/^test\s+/i,"").replace(/^spice/i,"").toLowerCase().replace(/[^a-z0-9]/g,"")}function Os(t,n,s){const r=new Set(n.map(Ps).filter(Boolean)),i=l=>{if(s&&l.address.toLowerCase()===s.toLowerCase())return 0;const a=[l.symbol,l.name,l.equivalenceGroup].map(Ps).findIndex(c=>c&&r.has(c));return a===-1?4:a+1};return[...t].sort((l,a)=>{const c=i(l)-i(a);return c!==0?c:l.address.toLowerCase().localeCompare(a.address.toLowerCase())})}const Hs=typeof process<"u"&&process.env?.NEXT_PUBLIC_MORALIS_API_KEY||typeof{url:typeof document>"u"?require("url").pathToFileURL(__filename).href:En&&En.tagName.toUpperCase()==="SCRIPT"&&En.src||new URL("index.cjs.js",document.baseURI).href}<"u"&&void 0||"",lr="https://deep-index.moralis.io/api/v2.2";function Jn(t,n){const s=t.chainTokens?Object.keys(t.chainTokens):[],r=[];for(const i of s){const l=Gn(i);if(!l||l.chainId!==n)continue;const a=l.address;r.some(c=>c.toLowerCase()===a.toLowerCase())||r.push(a)}return Os(r.map(i=>{const l=V.getTokenByAddress(i,n);return{address:i,symbol:l?.symbol,name:l?.name,equivalenceGroup:l?.equivalenceGroup}}),[t.receiptTokenName,t.displaySymbol,t.symbol,t.displayName,t.name],t.chainId===n&&!t.isUniversal?t.address:void 0).map(i=>i.address)}function Vs(t,n,s){const r=V.getTokensForChain(s),i=r.find(a=>a.address.toLowerCase()===t.toLowerCase());if(i)return i;const l=V.getTokenByAddress(t,n);if(l)return Os(r.filter(a=>a.equivalenceGroup===l.equivalenceGroup),[l.symbol,l.name,l.equivalenceGroup])[0]}function bn(t,n){if(t.chainId===n)return t.address;const s=Vs(t.address,t.chainId,n);return s?s.address:null}async function Qs(t,n,s={}){const r=bn(t,n),i=Jn(t,n);if(i.length===0)return r;if(i.length===1)return i[0];const l=q.getChainsForAssets()[n];if(!l?.moralisName||!Hs)return r;const a=new Map,c=i.some(u=>V.isNativeToken(u));try{if(c)try{const g=q.getClientForChain(n);a.set("native",await g.getBalance({address:V.ESCROW_ADDRESS}))}catch{}const u=await fetch(`${lr}/wallets/${V.ESCROW_ADDRESS}/tokens?chain=${l.moralisName}`,{headers:{"X-API-Key":Hs}});if(!u.ok)return r;const f=await u.json();for(const g of f?.result||[]){const h=String(g.token_address||"").toLowerCase();if(h)try{a.set(h,BigInt(String(g.balance||"0")))}catch{}}}catch{return r}const d=s.requiredAmount??0n,p=i.map(u=>({candidate:u,balance:a.get(V.isNativeToken(u)?"native":u.toLowerCase())??0n})).filter(u=>u.balance>0n).sort((u,f)=>u.balance===f.balance?0:u.balance>f.balance?-1:1);return p.length===0?r:((d>0n?p.find(u=>u.balance>=d):p[0])??p[0]).candidate}function hs(t,n,s,r){const i=V.getTokenByAddress(t,n),l=V.getTokenByAddress(s,r);return i&&l?i.equivalenceGroup===l.equivalenceGroup:V.areEquivalent(t,s)}function $n(t,n){return hs(t.address,t.chainId,n.address,n.chainId)}const cr={usdc:[8453,1,42161,5115,4114],usdt:[1],wbtc:[1],weth:[8453,1],ctusd:[5115,4114],wcbtc:[5115,4114]};function _n(t){return t.replace(/^test\s+/i,"").replace(/^spice/i,"").trim()}function Cn(t){return _n(t).toLowerCase()}function dr(t,n){const s=new Set([n,_n(n),Cn(n)].map(r=>Cn(r)).filter(Boolean));return[...t].sort((r,i)=>{const l=Cn(r.symbol),a=Cn(i.symbol),c=Cn(r.name),d=Cn(i.name),p=s.has(l)?0:s.has(c)?1:2,u=s.has(a)?0:s.has(d)?1:2;return p!==u?p-u:r.address.toLowerCase().localeCompare(i.address.toLowerCase())})[0]}function ur(t){const n=t&&t.length>0?t:Object.keys(q.CHAIN_CONFIGS).map(Number).filter(Number.isFinite),s=new Map;for(const r of n){const i=q.getChainConfig(r);if(!i)continue;const l=`${r}:${V.ZERO_ADDRESS.toLowerCase()}`;s.has(l)||s.set(l,{address:V.ZERO_ADDRESS,chainId:r,symbol:i.nativeCurrency.symbol,name:i.nativeCurrency.name,decimals:i.nativeCurrency.decimals,isNative:!0,logoURI:i.logo});for(const a of i.supportedTokens??[]){const c=a.address.toLowerCase(),d=`${r}:${c}`;s.has(d)||s.set(d,{address:c,chainId:r,symbol:a.symbol,name:a.name,decimals:a.decimals,isNative:V.isNativeToken(c),logoURI:a.logo})}}return s}function pr(t,n){const s=ur(n),r=_n(t.tokenName),i=Cn(t.tokenName),l=Array.isArray(t.chainTokens)?t.chainTokens.map(h=>[h,void 0]):Object.entries(t.chainTokens??{}),a=l.map(([h])=>Gn(h)).filter(h=>h!==null),c=new Map(l.map(([h,y])=>[h,y])),d=(h,y)=>{const w=c.get(`evm:${y.chainId}:${y.address.slice(2).toLowerCase()}`);return{...h,name:typeof w?.name=="string"&&w.name.length>0?w.name:h.name,decimals:typeof w?.decimals=="number"?w.decimals:h.decimals}},p=a.map(h=>{const y=s.get(`${h.chainId}:${h.address.toLowerCase()}`);return y?d(y,h):void 0}).filter(h=>h!==void 0),u=cr[i]??[];if(u.length>0)for(const h of u){const y=p.find(w=>w.chainId===h);if(y)return y}if(p.length>0)return dr(p,t.tokenName);const f=Array.from(s.values()).filter(h=>Cn(h.symbol)===i||Cn(h.name)===i);if(u.length>0)for(const h of u){const y=f.find(w=>w.chainId===h);if(y)return y}if(f.length>0)return f[0];const g=a[0];if(g){const h=c.get(`evm:${g.chainId}:${g.address.slice(2).toLowerCase()}`);return{address:g.address,chainId:g.chainId,symbol:r||t.tokenName,name:typeof h?.name=="string"&&h.name.length>0?h.name:r||t.tokenName,decimals:typeof h?.decimals=="number"?h.decimals:t.decimals??18,isNative:V.isNativeToken(g.address),logoURI:void 0}}}function hr(t,n){let s;try{s=BigInt(t.balanceAvailable||"0")}catch{return null}if(s<=0n)return null;const r=pr(t,n),i=r?.decimals??t.decimals??18,l=t.decimals??i,a=r?.address??V.ZERO_ADDRESS,c=r?.chainId??0,d=_n(t.tokenName),p=r?.symbol??d,u=r?.name??d,f=parseFloat(O.formatUnits(s,l)),g=typeof t.balanceUsd=="number"?t.balanceUsd:typeof t.balanceUsd=="string"&&Number(t.balanceUsd)||0;return{address:a,symbol:p,name:u,decimals:i,chainId:c,balance:s,balanceFormatted:f,balanceUsd:g,isNative:r?.isNative??V.isNativeToken(a),logoURI:r?.logoURI,displaySymbol:t.tokenName||p,displayName:t.tokenName||u,displayChainName:"Spicenet",receiptTokenId:t.receiptToken,receiptTokenName:t.tokenName||u,receiptTokenDecimals:l,chainTokens:t.chainTokens&&!Array.isArray(t.chainTokens)?t.chainTokens:void 0,isUniversal:!0}}const An=({address:t,supportedChains:n,enabled:s=!0,refetchInterval:r})=>{const i=o.useContext(Y.SpiceFlowProviderContext)?.apiUrl||Y.RELAYER_API_URL,[l,a]=o.useState([]),[c,d]=o.useState(!1),[p,u]=o.useState(null),[f,g]=o.useState(!1),h=o.useRef(!1),y=o.useRef(!1),w=n?JSON.stringify([...n].sort()):"",x=o.useCallback(async(v=!1)=>{if(!t||!s){a([]),g(!1),h.current=!1;return}if(!y.current){y.current=!0,!h.current&&!v&&d(!0),u(null);try{const b=await fetch(`${i}/wallets/${t}/balance`,{cache:"no-store"});if(!b.ok)throw new Error(`Failed to fetch balance: ${b.status}`);const B=await b.json();if(B.balances&&Array.isArray(B.balances)){const T=B.balances.map(W=>hr({receiptToken:typeof W.receiptToken=="string"?W.receiptToken:void 0,tokenName:String(W.tokenName??""),balanceAvailable:String(W.balanceAvailable??"0"),chainTokens:Array.isArray(W.chainTokens)?W.chainTokens.filter(E=>typeof E=="string"):W.chainTokens&&typeof W.chainTokens=="object"?W.chainTokens:void 0,decimals:typeof W.decimals=="number"?W.decimals:void 0,balanceUsd:typeof W.balanceUsd=="number"||typeof W.balanceUsd=="string"?W.balanceUsd:null},n)).filter(W=>W!==null);a(T),g(T.length>0),h.current=!0}else a([]),g(!1)}catch(b){const B=b instanceof Error?b.message:"Failed to fetch balance";u(B),console.error("Error fetching Spice assets:",b),h.current||(a([]),g(!1))}finally{d(!1),y.current=!1}}},[t,s,w,i]);o.useEffect(()=>{s&&t&&(h.current=!1,x(!1))},[t,s,w]),o.useEffect(()=>{if(!s||!t||!r)return;const v=setInterval(()=>{x(!0)},r);return()=>clearInterval(v)},[t,s,r,w]);const k=o.useCallback(v=>l.filter(b=>b.chainId===v),[l]),U=o.useCallback(async()=>{await x(!0)},[x]);return{assets:l,loading:c,error:p,hasBalance:f,refetch:U,getAssetsByChain:k}},kn=(t,n=4)=>!isFinite(t)||t===0?"0":t<1e-4?"< 0.0001":t.toFixed(n),Bn=t=>isFinite(t)?t>0&&t<.01?"<$0.01":new Intl.NumberFormat("en-US",{style:"currency",currency:"USD",minimumFractionDigits:2,maximumFractionDigits:2}).format(t):"$0.00",fr=(t,n=6,s=4)=>t.length<=n+s?t:`${t.slice(0,n)}...${t.slice(-s)}`,Ks=t=>{const n=t.replace(/[^0-9.]/g,""),s=n.split(".");return s.length>2?s[0]+"."+s.slice(1).join(""):n},In=(t,n=6)=>!Number.isFinite(t)||t<=0?"0":t.toFixed(Math.min(Math.max(n,0),18)).replace(/\.?0+$/,""),xr=async t=>{try{return await navigator.clipboard.writeText(t),!0}catch(n){return console.error("Failed to copy to clipboard:",n),!1}},Un=({chainId:t,name:n,size:s=16})=>{const r=t&&(cn[t]||V.getChainMeta(t)?.logo)||"";return r?e.jsx("img",{src:r,alt:n||`Chain ${t}`,style:{width:`${s}px`,height:`${s}px`,borderRadius:"50%",objectFit:"cover",flexShrink:0}}):null};function fs(t){return t.displaySymbol||t.symbol}function mr(t){return t.displayName||t.displaySymbol||t.name||t.symbol}function xs(t){return t.displayChainName||q.getChainName(t.chainId)}const gr=({selectedAsset:t,assets:n,onAssetSelect:s,showDropdown:r,onToggleDropdown:i,disabled:l=!1,theme:a})=>{const c=a||Ze.createTheme("dark"),d=o.useRef(null),p=o.useRef(null),u=o.useRef(null),[f,g]=o.useState(null);o.useEffect(()=>{if(r&&p.current){const I=()=>{if(p.current){const C=p.current.getBoundingClientRect();g({top:C.bottom+6,right:window.innerWidth-C.right})}};return I(),window.addEventListener("scroll",I,!0),window.addEventListener("resize",I),()=>{window.removeEventListener("scroll",I,!0),window.removeEventListener("resize",I)}}else g(null)},[r]),o.useEffect(()=>{const I=C=>{d.current&&!d.current.contains(C.target)&&u.current&&!u.current.contains(C.target)&&r&&i()};return r&&document.addEventListener("mousedown",I),()=>{document.removeEventListener("mousedown",I)}},[r,i]);const[h,y]=o.useState(!1),w=c.mode==="light",x={backgroundColor:"transparent",border:`1px solid ${w?"#aaaaaa":c.colors.border}`,borderRadius:"6px",color:c.colors.text,cursor:l?"not-allowed":"pointer",padding:"8px 14px 8px 10px",width:"100%",display:"flex",flexDirection:"column",gap:"4px",opacity:l?.6:1,transition:"all 0.15s ease",transform:h?"scale(0.98)":"scale(1)"},k={display:"flex",justifyContent:"space-between",alignItems:"center",gap:"10px",minWidth:0},U={display:"flex",alignItems:"center",gap:"4px",paddingTop:"4px",borderTop:`1px solid ${c.colors.border}`},v=()=>f?{position:"fixed",top:`${f.top}px`,right:`${f.right}px`,backgroundColor:c.colors.secondary,border:`1px solid ${c.colors.border}`,borderRadius:c.borderRadius.md,boxShadow:c.shadows.lg,zIndex:100,width:"200px",maxHeight:"300px",overflow:"auto"}:{},b={backgroundColor:"transparent",border:"none",color:c.colors.text,cursor:"pointer",padding:c.spacing.sm,width:"100%",display:"flex",alignItems:"center",gap:c.spacing.sm,transition:`background-color ${c.animation.normal}`,":hover":{backgroundColor:c.colors.surfaceHover}},B={display:"flex",flexDirection:"column",alignItems:"flex-start",flex:1},T={fontSize:c.typography.fontSize.sm,fontWeight:c.typography.fontWeight.medium},W={fontSize:c.typography.fontSize.xs,color:c.colors.textMuted},E={transition:`transform ${c.animation.normal}`,transform:r?"rotate(180deg)":"rotate(0deg)",flexShrink:0};return e.jsxs(e.Fragment,{children:[e.jsx("div",{style:{position:"relative"},ref:d,children:e.jsxs("div",{ref:p,style:x,onClick:l?void 0:i,onMouseLeave:()=>{y(!1)},onMouseDown:()=>y(!0),onMouseUp:()=>y(!1),children:[e.jsxs("div",{style:k,children:[e.jsx("div",{style:{display:"flex",alignItems:"center",gap:"8px",flex:1,minWidth:0},children:t?.asset?e.jsxs(e.Fragment,{children:[e.jsx(xn,{symbol:t.asset.symbol,logoURI:t.asset.logoURI,theme:c,size:24}),e.jsx("span",{style:{fontSize:"15px",fontWeight:500,color:c.colors.text,lineHeight:"1.5",flex:1,minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:fs(t.asset)})]}):e.jsx("span",{style:{fontSize:"14px",color:c.colors.textMuted},children:"Select"})}),e.jsx("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:w?c.colors.textMuted:"#c7ccd4",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:E,children:e.jsx("path",{d:"M6 9l6 6 6-6"})})]}),t?.asset&&e.jsxs("div",{style:U,children:[!t.asset.displayChainName&&e.jsx(Un,{chainId:t.asset.chainId,theme:c}),e.jsx("span",{style:{fontSize:"11px",color:c.colors.textMuted},children:xs(t.asset)})]})]})}),r&&f&&Zn.createPortal(e.jsxs("div",{ref:u,style:v(),children:[n.length===0&&e.jsx("div",{style:{padding:"10px 12px",color:c.colors.textMuted,fontSize:c.typography.fontSize.xs},children:"No assets available"}),n.map(I=>e.jsxs("button",{style:b,onClick:()=>{s(I),i()},children:[e.jsx(xn,{symbol:I.symbol,logoURI:I.logoURI,theme:c},`${I.address}-${I.chainId}`),e.jsxs("div",{style:B,children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:c.spacing.xs},children:[e.jsx("span",{style:T,children:fs(I)}),!I.displayChainName&&e.jsx(Un,{chainId:I.chainId,theme:c})]}),e.jsxs("span",{style:W,children:[kn(I.balanceFormatted)," \u2022"," ",xs(I)]})]})]},I.receiptTokenId||`${I.address}-${I.chainId}`))]}),document.body)]})},yr=({assets:t,selectedAsset:n,onAssetSelect:s,onAmountChange:r,disabled:i=!1,loading:l=!1,label:a="Select Asset",showBalance:c=!0,showMaxButton:d=!0,placeholder:p="0.0",theme:u,styles:f,maxAmount:g,hideAmountInput:h=!1,displayAmount:y,dark:w})=>{const x=u||Ze.createTheme("dark"),{primaryColor:k,dark:U,dk:v}=Y.useSpiceBrand(f,w),b=w??U,[B,T]=o.useState(!1),[W,E]=o.useState(null),[I,C]=o.useState(null),[P,J]=o.useState(n?.amount||""),K=o.useRef(null),j=o.useRef("");o.useEffect(()=>{const ae=n?.asset?n.asset.receiptTokenId||`${n.asset.chainId}-${n.asset.address}`:"";ae!==j.current&&(J(n?.amount||""),j.current=ae)},[n?.asset?.chainId,n?.asset?.address,n?.amount]);const M=ae=>{let S=ae;S.startsWith(".")&&(S="0"+S);const z=Ks(S);if(!z){J(z),K.current&&clearTimeout(K.current),K.current=setTimeout(()=>{r(z)},300);return}if(g&&parseFloat(z)>parseFloat(g)){J(g),K.current&&clearTimeout(K.current),K.current=setTimeout(()=>{r(g)},300);return}if(n?.asset){const ie=parseFloat(z),me=n.asset.balanceFormatted,re=n.asset.decimals;if(!isNaN(ie)&&ie>me){const xe=In(Math.floor(me*10**re)/10**re,re);J(xe),K.current&&clearTimeout(K.current),K.current=setTimeout(()=>{r(xe)},300);return}}J(z),K.current&&clearTimeout(K.current),K.current=setTimeout(()=>{r(z)},300)},ne=ae=>{if(n?.asset){const S=n.asset.decimals,z=n.asset.balanceFormatted*ae/100;let ie=Math.floor(z*10**S)/10**S;g&&ie>parseFloat(g)&&(ie=parseFloat(g));const me=In(ie,S);J(me),K.current&&clearTimeout(K.current),r(me)}},$=n?.asset?.balanceFormatted??0,L=parseFloat(P)||0,Q=$>0?L/$*100:0;o.useEffect(()=>()=>{K.current&&clearTimeout(K.current)},[]);const se={backgroundColor:f?.assetSelector?.backgroundColor||f?.secondaryBackground||(b?v.cardBg:"#e9e9e9"),border:b?`0.5px solid ${v.cardBorder}`:"0.5px solid #A8A8A7",borderRadius:f?.assetSelector?.borderRadius||"6px",padding:f?.assetSelector?.padding||"16px",height:"auto",minHeight:h?void 0:"144px",display:"flex",flexDirection:"column",gap:"8px",position:"relative",opacity:i?.6:1};return l?e.jsx("div",{style:se,children:e.jsxs("div",{style:{flex:1,display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"8px"},children:[e.jsx("div",{style:{backgroundColor:b?v.hoverBg:"#d1d5db",borderRadius:"4px",height:"16px",width:"60px"}}),e.jsx("div",{style:{backgroundColor:b?v.hoverBg:"#d1d5db",borderRadius:"4px",height:"40px",width:"150px"}})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"flex-end",gap:"8px"},children:[e.jsx("div",{style:{backgroundColor:b?v.hoverBg:"#d1d5db",borderRadius:"4px",height:"12px",width:"80px"}}),e.jsx("div",{style:{backgroundColor:b?v.hoverBg:"#d1d5db",borderRadius:"6px",height:"46px",width:"128px"}})]})]})}):e.jsxs("div",{style:se,children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsx("span",{style:{fontFamily:f?.fontFamily||x.typography.fontFamily,fontSize:"16px",fontWeight:500,color:b?v.textSecondary:"#7d7c7b",lineHeight:"24px"},children:a}),c&&n?.asset&&e.jsxs("span",{style:{fontFamily:f?.fontFamily||x.typography.fontFamily,fontSize:"12px",fontWeight:500,color:b?v.textSecondary:"#71757a",lineHeight:"16px"},children:["Balance: ",kn(n.asset.balanceFormatted)]})]}),e.jsxs("div",{style:{display:"flex",justifyContent:h&&!y?"flex-start":"space-between",alignItems:"center",flex:1},children:[!h&&e.jsx("input",{type:"text",value:P,onChange:ae=>M(ae.target.value),placeholder:p,disabled:i||!n?.asset,style:{fontFamily:f?.fontFamily||x.typography.fontFamily,fontSize:"40px",fontWeight:700,color:i?b?"rgba(255, 255, 255, 0.16)":"rgba(14, 13, 11, 0.16)":P?b?"#ffffff":"#0e0d0b":b?"#4a5568":"#d1d5db",lineHeight:"1.08",letterSpacing:"-1.2px",backgroundColor:"transparent",border:"none",outline:"none",padding:0,width:"100%",maxWidth:"200px"}}),e.jsx("div",{style:{width:"176px",position:"relative",flexShrink:0},children:e.jsx(gr,{selectedAsset:n,assets:t,onAssetSelect:s,showDropdown:B,onToggleDropdown:()=>T(!B),disabled:i,theme:x})}),h&&y&&e.jsx("span",{style:{fontFamily:f?.fontFamily||x.typography.fontFamily,fontSize:"40px",fontWeight:700,color:b?"#ffffff":"#0e0d0b",lineHeight:"1.08",letterSpacing:"-1.2px",textAlign:"right",flex:1,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:y})]}),!h&&e.jsx("div",{style:{display:"flex",justifyContent:"flex-end",alignItems:"center",gap:"10px",height:"14px"},children:[0,25,50,75,100].map((ae,S)=>{const z=Math.abs(Q-ae)<1,ie=S===4,me=ae/100,re=W===ae,xe=I===ae;return e.jsx("button",{onClick:()=>ne(ae),onMouseEnter:()=>E(ae),onMouseLeave:()=>{E(null),C(null)},onMouseDown:()=>C(ae),onMouseUp:()=>C(null),disabled:i||!n?.asset,title:`${ae}%`,style:{width:"14px",height:"14px",padding:0,border:"none",backgroundColor:"transparent",cursor:i||!n?.asset?"not-allowed":"pointer",opacity:z?1:re?.8:.5,transform:xe?"scale(0.85)":re?"scale(1.15)":"scale(1)",transition:"all 0.15s ease"},children:e.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 14 14",children:[e.jsx("circle",{cx:"7",cy:"7",r:"6.84375",fill:ie?k:"none",stroke:ie?k:b?"#4a5568":"#3C3E42",strokeWidth:"0.3125"}),!ie&&me>0&&e.jsx("path",{d:`M 7 7 L 7 0.15625 A 6.84375 6.84375 0 ${me>.5?1:0} 1 ${7+6.84375*Math.sin(me*2*Math.PI)} ${7-6.84375*Math.cos(me*2*Math.PI)} Z`,fill:b?v.textSecondary:"#3C3E42"})]})},ae)})})]})},Fn=yr,br=()=>{const[t,n]=o.useState(!1);let s=null,r=null;try{s=Dn.useDynamicContext()}catch(u){r=u instanceof Error?u.message:String(u)}if(o.useEffect(()=>{n(!0)},[]),r)return{isReady:!1,isAuthenticated:!1,isConnected:!1,provider:"dynamic",actions:{signAuthorization:async()=>{throw new Error("Dynamic context not available")},signMessage:async()=>{throw new Error("Dynamic context not available")},getEthereumProvider:async()=>{throw new Error("Dynamic context not available")}}};const{user:i,primaryWallet:l,connectedWallets:a}=s||{},c=gn.getDynamicEmbeddedWallet({connectedWallets:a,primaryWallet:l})||l,d=!!i,p=c?.address;return{isReady:t&&!!s,isAuthenticated:d,isConnected:d&&!!p,address:p,provider:"dynamic",actions:{signAuthorization:async u=>{if(!c)throw new Error("Dynamic embedded wallet not available");const{isEthereumWallet:f}=await import("@dynamic-labs/ethereum");if(!f(c))throw new Error("Embedded wallet is not an Ethereum wallet");const g=c.connector,h={address:c.address,chainId:u.chainId,contractAddress:u.contractAddress,nonce:u.nonce},y={address:u.contractAddress,chainId:u.chainId,nonce:u.nonce},w=typeof g?.getWaasWalletClient=="function"?await g.getWaasWalletClient():null;if(w&&typeof w.signRawMessage=="function"){const{hashAuthorization:x}=await import("viem/experimental"),{parseSignature:k}=await import("viem"),U={address:u.contractAddress,chainId:u.chainId,nonce:u.nonce},v=g.getSignedSessionId,b=typeof v=="function"?await v.call(g):void 0,B=g.getAuthToken,T=typeof B=="function"?B.call(g):void 0,W=await w.signRawMessage({accountAddress:c.address,authToken:T,context:{eip7702Auth:U},message:x(U).slice(2),signedSessionId:b}),E=k(W);return{address:h.contractAddress,chainId:h.chainId,contractAddress:h.contractAddress,nonce:BigInt(h.nonce),r:E.r,s:E.s,yParity:Number(E.yParity)}}if(typeof g?.signAuthorization=="function"){typeof g.switchNetwork=="function"&&await g.switchNetwork({networkChainId:u.chainId});const x=await g.signAuthorization(y);return gn.normalizeAuthorization(x,h)}throw new Error("Dynamic embedded wallet does not support EIP-7702 authorization. Ensure @dynamic-labs packages are v4.15+.")},signMessage:async u=>{if(!c)throw new Error("Dynamic embedded wallet not available");const{isEthereumWallet:f}=await import("@dynamic-labs/ethereum");if(!f(c))throw new Error("Embedded wallet is not an Ethereum wallet");const g=typeof u=="object"&&"raw"in u?{raw:u.raw}:u,h=await c.getWalletClient();if(!h)throw new Error("Dynamic wallet client not available");return{signature:await h.signMessage({message:g,account:c.address})}},getEthereumProvider:async()=>{if(!c)throw new Error("Dynamic embedded wallet not available");const{isEthereumWallet:u}=await import("@dynamic-labs/ethereum");if(!u(c))throw new Error("Embedded wallet is not an Ethereum wallet");return gn.getProviderEthereumProvider(c)}}}},un=()=>{const t=o.useContext(Y.SpiceFlowProviderContext),n=t?.mode||"7702";let s=null,r=null;try{s=en.useWallets(),{user:r}=en.usePrivy()}catch{s=null}const i=en.getEmbeddedConnectedWallet(s?.wallets||[])?.address,l=r?.wallet?.address;let a=null;try{a=Dn.useDynamicContext()}catch{a=null}const c=(gn.getDynamicEmbeddedWallet(a)||a?.primaryWallet)?.address;if(!(!t||n!=="7702"))return t.provider==="privy"?i??l:t.provider==="dynamic"?c:i??l??c},Cr=()=>{const t=o.useContext(Y.SpiceFlowProviderContext)?.mode,{isConnected:n,address:s}=ht.useAccount();let r=null,i=null,l=null,a=null,c=null;try{r=en.usePrivy(),i=en.useSign7702Authorization(),l=en.useSignMessage(),a=en.useWallets()}catch(h){c=h instanceof Error?h.message:String(h)}if(c)return t==="ondemand"&&n&&s?{isReady:!0,isAuthenticated:!0,isConnected:!0,address:s,provider:"privy",actions:{signAuthorization:async()=>{throw new Error("Not available in ondemand mode")},signMessage:async()=>{throw new Error("Not available in ondemand mode")},getEthereumProvider:async()=>{throw new Error("Not available in ondemand mode")}}}:{isReady:!1,isAuthenticated:!1,isConnected:!1,provider:null,actions:{signAuthorization:async()=>{throw new Error("Privy not available")},signMessage:async()=>{throw new Error("Privy not available")},getEthereumProvider:async()=>{throw new Error("Privy not available")}}};const{ready:d=!1,authenticated:p=!1}=r||{},u=un(),f=en.getEmbeddedConnectedWallet(a?.wallets||[]),g=u||f?.address;return{isReady:t==="ondemand"?!0:d,isAuthenticated:t==="ondemand"?!0:p,isConnected:t==="ondemand"&&n&&!!s||d&&p&&!!u,address:t==="ondemand"&&!u&&n?s:u,provider:"privy",actions:{signAuthorization:async h=>{if(!i)throw new Error("Privy sign authorization not available");try{const y=await i.signAuthorization({contractAddress:h.contractAddress,chainId:h.chainId,nonce:h.nonce},{address:g});return delete y.v,y}catch(y){const w=y?.message||String(y);throw w.includes("not configured")||w.includes("chain")?new Error(`Chain ${h.chainId} is not configured in PrivyProvider. Add this chain to your Privy dashboard or supportedChainIds.`):y}},signMessage:async h=>{if(typeof h=="object"&&"raw"in h){if(!f)throw new Error("Embedded wallet not available for raw signing");const y=await f.getEthereumProvider(),{createWalletClient:w,custom:x}=await import("viem");return{signature:await w({account:f.address,transport:x(y)}).signMessage({account:f.address,message:h})}}if(!l)throw new Error("Privy sign message not available");return{signature:(await l.signMessage({message:h})).signature}},getEthereumProvider:async()=>{if(!f)throw new Error("Embedded wallet not available");return f.getEthereumProvider()}}}},pn=()=>{const t=o.useContext(Y.SpiceFlowProviderContext)?.provider,n=Cr(),s=br();return t==="privy"?n:t==="dynamic"?s:{isReady:!1,isAuthenticated:!1,isConnected:!1,provider:null,actions:{signAuthorization:async()=>{throw new Error("No wallet provider available")},signMessage:async()=>{throw new Error("No wallet provider available")},getEthereumProvider:async()=>{throw new Error("No wallet provider available")}}}};async function qs(t,n=3,s=1e3){let r;for(let i=0;i<=n;i++)try{return await t()}catch(l){r=l instanceof Error?l:new Error(String(l)),i<n&&(console.warn(`[withRetry] Attempt ${i+1}/${n} failed: ${r.message}. Retrying in ${s}ms...`),await new Promise(a=>setTimeout(a,s)))}throw r}const Ys=({isSuccess:t,type:n,chainName:s,explorerUrl:r,txHash:i,dark:l=!1,successBg:a="#d1fae5",successBorder:c="#6ee7b7",successText:d="#065f46",errorBg:p="#fee2e2",errorBorder:u="#fca5a5",errorText:f="#dc2626",textSecondary:g="#6b7280"})=>e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"14px 16px",borderRadius:"8px",backgroundColor:t?a:p,border:t?`1px solid ${c}`:`1px solid ${u}`},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px"},children:[e.jsx("div",{style:{width:"28px",height:"28px",borderRadius:"50%",backgroundColor:t?"#10b981":"#ef4444",display:"flex",alignItems:"center",justifyContent:"center"},children:t?e.jsx("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",children:e.jsx("path",{d:"M11.6667 3.5L5.25 9.91667L2.33333 7",stroke:"white",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})}):e.jsx("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",children:e.jsx("path",{d:"M10.5 3.5L3.5 10.5M3.5 3.5L10.5 10.5",stroke:"white",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}),e.jsxs("div",{children:[e.jsx("p",{style:{margin:0,fontSize:"14px",fontWeight:600,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px",color:t?d:f},children:t?`${n.toUpperCase()} CONFIRMED`:`${n.toUpperCase()} FAILED`}),e.jsxs("p",{style:{margin:"2px 0 0 0",fontSize:"12px",color:g},children:["on ",s]})]})]}),r&&i&&e.jsxs("a",{href:`${r}/tx/${i}`,target:"_blank",rel:"noopener noreferrer",style:{display:"flex",alignItems:"center",gap:"4px",fontSize:"13px",color:g,textDecoration:"none",whiteSpace:"nowrap"},children:["View on explorer",e.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",children:[e.jsx("path",{d:"M9 6.5V9.5C9 9.76522 8.89464 10.0196 8.70711 10.2071C8.51957 10.3946 8.26522 10.5 8 10.5H2.5C2.23478 10.5 1.98043 10.3946 1.79289 10.2071C1.60536 10.0196 1.5 9.76522 1.5 9.5V4C1.5 3.73478 1.60536 3.48043 1.79289 3.29289C1.98043 3.10536 2.23478 3 2.5 3H5.5",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),e.jsx("path",{d:"M7.5 1.5H10.5V4.5",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),e.jsx("path",{d:"M5 7L10.5 1.5",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"})]})]})]}),Ln=({isOpen:t,onClose:n,onComplete:s,closeOnComplete:r=!1,type:i,results:l,chainName:a="Network",explorerUrl:c,theme:d,styles:p,dark:u,intentStatus:f,onRetry:g,onNewTx:h,onRetryTx:y,asOverlay:w=!0,isProcessing:x=!1})=>{const k=d||Ze.createTheme("light"),{primaryColor:U,dark:v,dk:b}=Y.useSpiceBrand(p,u),[B,T]=o.useState(!1),W=v?b.cardBg:"#ffffff",E=v?"0 4px 20px rgba(0, 0, 0, 0.4)":"0 4px 20px rgba(0, 0, 0, 0.1)",I=v?"0 -4px 8px -2px rgba(0, 0, 0, 0.4)":"0 -4px 8px -2px rgba(0, 0, 0, 0.15)",C=v?b.textSecondary:"#6b7280",P=v?b.textPrimary:"#374151",J=v?b.inputBg:"#f9fafb",K=v?b.inputBorder:"#e5e7eb",j=v?b.inputBg:"#f3f4f6",M=v?b.inputBorder:"#e5e7eb",[ne,$]=o.useState(!0),[L,Q]=o.useState(null),[se,ae]=o.useState(null);o.useEffect(()=>{!t&&!f&&T(!1)},[t,f]);const S=()=>{T(!0),setTimeout(()=>{window.dispatchEvent(new CustomEvent("tx-complete",{detail:{type:i,results:l}})),window.dispatchEvent(new CustomEvent("spiceflow:action",{detail:{type:i,status:"success",results:l}})),s?.(),r&&n()},300)},z=()=>{$(!ne)};if(f){const{steps:re,overallStatus:xe}=f,le=xe==="processing",Pe=xe==="success",ke=xe==="failed",Be=re.filter(ye=>ye.transactionHash)[0],ve=re.length>1?re.map(ye=>ye.chainName).filter(Boolean).join(" and "):a!=="Network"?a:re[0]?.chainName||a,Ue=c||(Be?q.getExplorerUrl(Be.chainId,Be.transactionHash||"").replace(/\/tx\/.*$/,""):void 0),Te=e.jsxs(e.Fragment,{children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:"16px"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",cursor:"pointer"},onClick:z,children:[e.jsxs("span",{style:{fontSize:"13px",fontWeight:500,color:C,fontFamily:p?.fontFamily||k.typography.fontFamily},children:[le?`Processing ${i.charAt(0).toUpperCase()+i.slice(1)}`:`${i.charAt(0).toUpperCase()+i.slice(1)} results`," "]}),e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",style:{transform:ne?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.3s ease"},children:e.jsx("path",{d:"M4 6L8 10L12 6",stroke:C,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]}),!le&&e.jsx("button",{onClick:n,onMouseEnter:()=>Q("close"),onMouseLeave:()=>{Q(null),ae(null)},onMouseDown:()=>ae("close"),onMouseUp:()=>ae(null),style:{background:se==="close"?v?b.hoverBg:"#f3f4f6":L==="close"?v?b.inputBg:"#f9fafb":"none",border:"none",borderRadius:"4px",cursor:"pointer",padding:"4px",display:"flex",alignItems:"center",justifyContent:"center",color:L==="close"||se==="close"?P:C,transform:se==="close"?"scale(0.9)":L==="close"?"scale(1.1)":"scale(1)",transition:"all 0.15s ease"},children:e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",children:e.jsx("path",{d:"M12 4L4 12M4 4L12 12",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})})]}),e.jsx("div",{style:{marginBottom:"16px"},children:le?e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",padding:"20px 16px",borderRadius:"8px",backgroundColor:j,border:`1px solid ${M}`,gap:"12px"},children:[e.jsx(Ze.Spinner,{size:24,borderWidth:3,color:U}),e.jsxs("div",{children:[e.jsx("p",{style:{margin:0,fontSize:"14px",fontWeight:600,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px",color:P},children:"PROCESSING TRANSACTION"}),e.jsxs("p",{style:{margin:"2px 0 0 0",fontSize:"12px",color:C},children:["on ",ve]})]})]}):e.jsx(Ys,{isSuccess:Pe,type:i,chainName:ve,explorerUrl:Ue,txHash:Be?.transactionHash,dark:v,...v?{successBg:b.successBg,successBorder:b.successBorder,successText:b.successText,errorBg:b.errorBg,errorBorder:b.errorBorder,errorText:b.errorText}:{},textSecondary:C})}),e.jsx("div",{style:{overflow:"hidden",maxHeight:ne?"300px":"0px",opacity:ne?1:0,transition:"max-height 0.3s ease, opacity 0.3s ease",marginBottom:ne?"16px":"0"},children:e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"8px"},children:re.map((ye,Je)=>{const ze=ye.transactionHash?q.getExplorerUrl(ye.chainId,ye.transactionHash):null;return e.jsxs("div",{style:{padding:"10px 12px",borderRadius:"6px",backgroundColor:J,border:`1px solid ${K}`,display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsx("span",{style:{fontSize:"13px",color:P},children:ye.chainName?`On ${ye.chainName}`:ye.description||`Step ${Je+1}`}),e.jsxs("span",{style:{display:"flex",alignItems:"center",gap:"8px",fontSize:"12px",color:ye.status==="success"?"#10b981":ye.status==="failed"?"#ef4444":C,fontWeight:500},children:[ze&&e.jsx("a",{href:ze,target:"_blank",rel:"noopener noreferrer",style:{color:v?b.infoText:"#2563eb",textDecoration:"none"},onClick:ue=>ue.stopPropagation(),children:"View"}),ye.status==="success"?"\u2713":ye.status==="failed"?"\u2717":"\u25CB"]})]},Je)})})}),!le&&e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"8px"},children:[ke&&g&&e.jsx(Ze.Button,{variant:"outline",fullWidth:!0,onClick:g,theme:k,styles:p,dark:v,children:"TRY AGAIN"}),h&&e.jsxs(Ze.Button,{variant:"outline",fullWidth:!0,onClick:h,theme:k,styles:p,dark:v,children:["NEW ",i.toUpperCase()," \u2192"]})]})]});return w?e.jsxs("div",{style:{position:"absolute",bottom:0,left:0,right:0,zIndex:10,animation:B?"slideDown 0.3s ease-in forwards":"slideUp 0.3s ease-out forwards",pointerEvents:"auto"},children:[e.jsx("div",{style:{backgroundColor:W,borderRadius:"12px 12px 0 0",width:"100%",padding:"18px 24px 24px",boxShadow:I},children:Te}),e.jsx("style",{children:`
23
+ `})]})},sr={WALLET_DISCONNECTED:"Wallet is not connected.",WALLET_REJECTED:"Transaction was rejected.",SIGNATURE_FAILED:"Signature failed. Please try again.",CONCURRENT_EXECUTION:"A transaction is already in progress.",ABORT:"Transaction was cancelled.",NO_VENUE_FOR_CHAIN:"No swap venue available for this chain.",NO_LIQUIDITY:"No liquidity available for this swap pair.",VENUE_API_ERROR:"Swap service error. Please try again.",ROUTE_TOKEN_NOT_FOUND:"Token not found in the registry.",ROUTE_UNSUPPORTED_INPUT:"This input token is not supported.",ROUTE_STRATEGY_ERROR:"No viable route found for this swap.",INVALID_PARAMS:"Invalid parameters. Please check your inputs.",RELAYER_ERROR:"Relayer error. Please try again.",RELAYER_EXECUTE_ERROR:"Transaction execution failed. Please try again.",RELAYER_STATUS_ERROR:"Failed to check transaction status.",ON_CHAIN_REVERT:"Transaction reverted on-chain. Please verify your inputs.",POLLING_EXHAUSTED:"Transaction status check timed out. It may still complete.",POLLING_CONSECUTIVE_FAILURES:"Lost connection to transaction status. It may still complete.",ALL_ATTEMPTS_FAILED:"All attempts failed. Please try again."},or=[{test:t=>t.includes("user rejected")||t.includes("user denied")||t.includes("user cancelled")||t.includes("rejected the request")||t.includes("action_rejected"),message:"Transaction was rejected."},{test:t=>t.includes("4001"),message:"Transaction was rejected."},{test:t=>t.includes("insufficient funds")||t.includes("insufficient balance"),message:"Insufficient funds for this transaction."},{test:t=>t.includes("internal json-rpc error")||t.includes("internal error")||t.includes("an internal error was received"),message:"RPC Network error. Try switching your RPC endpoint or try again."},{test:t=>t.includes("network error")||t.includes("failed to fetch")||t.includes("econnrefused")||t.includes("timeout"),message:"Network connection error. Please check your connection."},{test:t=>t.includes("does not match the target chain")||t.includes("current chain of the wallet"),message:"Wrong network detected. Please switch to the correct network and try again."},{test:t=>t.includes("nonce too low")||t.includes("nonce has already been used"),message:"Transaction conflict. Please try again."},{test:t=>t.includes("cannot estimate gas")||t.includes("gas required exceeds"),message:"Unable to estimate gas. The transaction may fail \u2014 please verify your inputs."},{test:t=>t.includes("execution reverted")||t.includes("transaction reverted"),message:"Transaction would fail on-chain. Please verify your inputs and try again."}],Zt=(t,n="Something went wrong. Please try again.")=>{if(K.isSpiceflowError(t)){if(t.code==="RELAYER_ERROR"&&/amount is too small|estimated fee|insufficient after fees/i.test(t.message))return t.message;const r=sr[t.code];if(r)return r}const s=zs(t).toLowerCase();for(const{test:r,message:a}of or)if(r(s))return a;return n},rr=t=>{if(K.isSpiceflowError(t))return t.code==="WALLET_REJECTED";const n=zs(t).toLowerCase();return n.includes("user rejected")||n.includes("user denied")||n.includes("user cancelled")||n.includes("rejected the request")||n.includes("action_rejected")||n.includes("4001")};function zs(t){if(!t)return"";if(typeof t=="string")return t;const n=t,s=n.message||n.reason||"",r=n.details||"";return`${s} ${r}`.trim()}var Ps="data:image/png;base64,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",cs="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAQlBMVEVMaXGGl/+Elf+HmP+Hmf+Hl/+Gl/+Flv+Glv+Gl/+Gl/+Gl/////+On/+Akv/4+f/v8f/i5v+9x//S2P+tuP+erP+W3PvUAAAAC3RSTlMArBlx7Isy/vvOXbb4wDYAAAAJcEhZcwAACxMAAAsTAQCanBgAAALuSURBVHjarVfbtqsgDOxu0UBpkOv//+pJRC0i2HZ58uTeqzOEyYXkduvY/Tn8KSEBpFB/w3O8/WTjoCSS6dn4S6rha477QxFGS0nHM56ckJL/ox73b+CDQAQJujKiQxTDR4qH4LN109gP8Ti/uyI46K4BUagTLZ4Cz+CZAsWzhx/oeP3RyImhjf/7ePzmxF8Hr7+zNsP3eL7GkWH4Bc8MlQ7P3/DMsIvFKHRLPzBsTWVBizIfVNMBg9H7mLQxTRdUkb9tfJxebNZjywuJW1bf2xcw4WXtzDF5bVqXuJ9HwETHNnPYeHRii0THgcwQyBxTBDQ9Fx7dEBr0TOCDYyeS6aigsFsCQIFgBh9YiVgxQA7EqM9KiCiS95nh5WsGPZ4k8ZZFRqfoY4shy9i8AaExxRgTMgcApuSODPMdRtn02wc7Z9HkPMsPa1ZVOsiRygga4udfZ5vTKKx/7GIBVFJHCUy0r705DNu3LQ9kEQ6NxMTXwWzhUTD7xlJr2MLvrZCBVazy2OD0iaC4BGh1k4cSLOSbbIuujKW4wT76aYefrGswuBJSEoBeUnaFk7nQcKEIJZRXMPsfM95O3p3KKAoRa/cJTh0pHKMybSqyiO8wMsG0wzODi7UK9u0Ah7FIJAj1+UyQcl4Gqi2uax+L/siJVKQyi+j251sbMoHTZrUqlctiojDGRX27WpivYNtdi4upKme0c/gXBmdzY7ZoOi/cWDeU7MJy+oKn3hzbT9/cFKt6pmKe9udnCoTeG103VW7EjrGZJMOD863GNzfVQ0EDP6aJUH61wBRHGZa23npYDDpuh8EnpPBRS6UUQOg9r8enzaDdmhmsPkH/da3bokkr/i0dwMmYU7lg0pRrwiVzNrW+n/dKhVzVVIbGnE9Jj86IA8glk87h+xGnGrJyzXwYNvdD1uUx7/qgeX3UvT5sXx/3ry8c11ee60vX9bXvvXjWfsC3i+d79YV19+WPH1bf/7B8Lxy8/isBINTp+v8Ph4CTcAywkiYAAAAASUVORK5CYII=",ar="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAPFBMVEVMaXGZhueZh+eYhuWXheWYh+eYhuaXheCYhuaah+j//fmhjvOSf+Sdi+q8sOzNxO/m4fT08fapmuja0/Jb/wGxAAAACnRSTlMArEz/IYtsA87sGIEBYwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAmJJREFUeNqtV4uSgyAMRIECGhTk///1otTKG3s2Mzdz03aXbEJIQkhuYv9jIx+komhKDnxk4v1F1wT+SoxcUj3PWu8Ex39U8lH4bzt4QthL6tlDA8OP5Iv1vMADGFc5+uRQnDWdEES81EwbNquXqDuBx8va6ZcXktUYBOkc/3GixsBvwA8neFGGGO7hdyeGAsMXeM/wBJ8ziLv6LwYeisD4f4lHhiAXmH9FvzYV3AchOw6At9gFKW4KANDbsttGoSyCKd1Ab4uxkzezhBQaRfQygHB3oj2FhjwT9QgifErM6jiOrQgAXe2UmcuiIKSuHG+mki2XCH0kYqzgF1vETyYszLFaxLBMNdsgDGNFAazRoUcwrDMlDYz28RS0newGcCRlDa8TK4YgxuORGj9x8NYVEsxjKQSp/pNAw5YRcJI/JP5nYeqxjAxeIfCeRQQDyWOos/y5xR2V4NIgYhRJVkjgpralBPcvQH4PsBxIX0DjJqKRdgYLtsYPUyqh60CsACXEQew7ECvAICZp7DqwQEIQXaR+CkzaoeKr3FewQdqg4mIy36VgLyZWz4G96N5vs8sKj0UPSlJGy4fAbWX88SgGQYgJVjDXi7JaaxYo9Oj4UQ0lrHCGdN25ceiEfNoZSfIomjhcKN26DarT0q4gaiyfe2C9u9hWNUBvRghbG+yd1AZNFFrjmu+ucXMF2j60OObE7f0m+mrv/5qQkimpO+IU8fKXQ9bDMe/5oPl81P3BsP183EeGu3GoLBw/WHnuLF20sXQ9X/ueL57PV99w+Z7P5Vvj8j3fXr7j9X/f/5Vsrv9/K3NM7mGXOq0AAAAASUVORK5CYII=",ds="data:image/svg+xml,%3csvg width='8' height='11' viewBox='57 6 8 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3e %3cpath d='M62.7081 13.27C62.742 13.27 62.7642 13.3057 62.7491 13.3362V13.336L61.1229 16.6083C61.0892 16.6761 60.9926 16.6759 60.959 16.6083L59.3382 13.336C59.3232 13.3057 59.3453 13.27 59.3792 13.27H62.7081Z' fill='%23EA4B4B'/%3e %3cpath d='M61.0026 9.71913C61.0194 9.68524 61.0678 9.68524 61.0845 9.71913L62.747 13.0897C62.762 13.12 62.7399 13.1557 62.706 13.1557H59.3763C59.3424 13.1557 59.3203 13.12 59.3353 13.0897L61.0026 9.71913Z' fill='%23EA4B4B'/%3e %3cpath d='M60.8426 9.63827C60.8766 9.63827 60.8987 9.6741 60.8835 9.70444L59.2164 13.0594C59.1995 13.0932 59.1513 13.0932 59.1345 13.0594L57.5001 9.77047C57.47 9.70962 57.5142 9.63827 57.5821 9.63827H60.8426Z' fill='%23EA4B4B'/%3e %3cpath d='M64.5036 9.63617C64.5715 9.63618 64.6157 9.70753 64.5855 9.76838H64.5854L62.9512 13.0573C62.9344 13.0911 62.8862 13.0912 62.8692 13.0573L61.2021 9.70235C61.187 9.672 61.2091 9.63617 61.2431 9.63617H64.5036Z' fill='%23EA4B4B'/%3e %3cpath d='M62.8284 6.18281C62.862 6.11518 62.9586 6.11518 62.9922 6.18281L64.5855 9.38969C64.6157 9.45054 64.5715 9.52189 64.5036 9.52189H61.2431C61.2091 9.52189 61.187 9.48605 61.2021 9.45571L62.8283 6.18265L62.8284 6.18281Z' fill='%23EA4B4B'/%3e %3cpath d='M62.3131 6.13196C62.381 6.13196 62.4252 6.20331 62.3951 6.26416C62.154 6.74935 61.9128 7.23455 61.6718 7.71975H61.6716C61.4225 8.22125 61.1733 8.72259 60.9242 9.22409C60.9074 9.25799 60.859 9.25799 60.8422 9.22409L60.6305 8.79587C60.6275 8.78957 60.6259 8.78263 60.6259 8.77553V6.22349C60.6259 6.17297 60.6668 6.13196 60.7173 6.13196H62.3131Z' fill='%23EA4B4B'/%3e%3c/svg%3e";const yn=V.getChainMeta(1)?.logo??"";V.getChainMeta(42161)?.logo;const Nn=V.TOKENS.find(t=>t.symbol==="USDC")?.logo??"";V.TOKENS.find(t=>t.symbol==="WBTC")?.logo;const ln=Object.fromEntries([...V.getMainnetChains(),...V.getTestnetChains()].map(t=>[t.id,t.logo])),Wn={metamask:Ps,metaMask:Ps,rabby:cs,phantom:ar},ir=Object.fromEntries(V.TOKENS.map(t=>[t.symbol,t.logo])),xn=({symbol:t,logoURI:n,size:s=20,theme:r})=>{const a=r||Ge.createTheme("dark"),[l,i]=o.useState(!1),d={width:`${s}px`,height:`${s}px`,borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",fontSize:`${s*.4}px`,fontWeight:a.typography.fontWeight.bold,flexShrink:0,overflow:"hidden",backgroundColor:"#ffffff"},c=t.toUpperCase(),h=n||ir[c];if(h&&!l)return e.jsx("img",{src:h,alt:t,style:{...d,objectFit:"cover"},onError:()=>i(!0)});const u=lr(t);return e.jsx("div",{style:{...d,...u.style},children:u.icon})},lr=t=>{const n=t.toUpperCase(),s={ETH:{bg:"#627EEA",text:"#FFFFFF",icon:"\u039E"},BTC:{bg:"#F7931A",text:"#FFFFFF",icon:"\u20BF"},USDC:{bg:"#2775CA",text:"#FFFFFF"},USDT:{bg:"#26A17B",text:"#FFFFFF"},DAI:{bg:"#F5AC37",text:"#FFFFFF"},WETH:{bg:"#627EEA",text:"#FFFFFF",icon:"\u039E"},WBTC:{bg:"#F09242",text:"#FFFFFF",icon:"\u20BF"},CBTC:{bg:"#F7931A",text:"#FFFFFF",icon:"\u20BF"},USD:{bg:"#26A17B",text:"#FFFFFF",icon:"$"},MATIC:{bg:"#8247E5",text:"#FFFFFF"},AVAX:{bg:"#E84142",text:"#FFFFFF"},SOL:{bg:"#9945FF",text:"#FFFFFF"},DOT:{bg:"#E6007A",text:"#FFFFFF"},ADA:{bg:"#0033AD",text:"#FFFFFF"},LINK:{bg:"#375BD2",text:"#FFFFFF"},UNI:{bg:"#FF007A",text:"#FFFFFF"},AAVE:{bg:"#B6509E",text:"#FFFFFF"},CRV:{bg:"#40E0D0",text:"#000000"}}[n];if(s)return{style:{backgroundColor:s.bg,color:s.text},icon:s.icon||n.charAt(0)};const r=n.split("").reduce((d,c)=>c.charCodeAt(0)+((d<<5)-d),0),a=Math.abs(r)%360,l=`hsl(${a}, 60%, 50%)`,i=a>180?"#FFFFFF":"#000000";return{style:{backgroundColor:l,color:i},icon:n.charAt(0)}};var us="data:image/svg+xml,%3csvg width='15' height='15' viewBox='0 0 15 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M7.5 7.49993V10.4999M7.5 4.96868V4.96784M14.25 7.5C14.25 11.2279 11.2279 14.25 7.5 14.25C3.77208 14.25 0.75 11.2279 0.75 7.5C0.75 3.77208 3.77208 0.75 7.5 0.75C11.2279 0.75 14.25 3.77208 14.25 7.5Z' stroke='%23ED6969' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3e%3c/svg%3e";const cr=({isOpen:t,onClose:n,onComplete:s,title:r="Testnet Airdrop",description:a="Request testnet tokens for your wallet. A small gas fee is required to process the airdrop.",chainId:l,airdropTag:i="default",walletAddress:d,airdropTokens:c,getChainConfig:h,getSupportedTokens:u})=>{const f=Ge.createTheme("light"),{primaryColor:g}=K.useSpiceBrand(),[p,y]=o.useState(null),[v,x]=o.useState(null),{chain:k}=ft.useAccount(),{data:U}=ft.useWalletClient(),{switchChainAsync:S}=ft.useSwitchChain(),C=o.useMemo(()=>u(l),[l,u]),I=o.useMemo(()=>C.filter(A=>!V.isNativeToken(A.address)),[C]),{data:F,refetch:W}=ft.useReadContracts({contracts:I.map(A=>({address:A.address,abi:P.erc20Abi,functionName:"balanceOf",args:[d],chainId:l})),blockTag:"pending"}),E=o.useCallback(()=>{W();const A=setTimeout(W,2e3),O=setTimeout(W,4e3);return()=>{clearTimeout(A),clearTimeout(O)}},[W]);o.useEffect(()=>t?E():void 0,[t,E]),o.useEffect(()=>{let A;const O=()=>{A?.(),A=E()};return window.addEventListener("airdrop-complete",O),()=>{A?.(),window.removeEventListener("airdrop-complete",O)}},[E]);const B=o.useMemo(()=>{const A=[];return I.forEach((O,L)=>{if(!c.some(oe=>oe.toUpperCase()===O.symbol.toUpperCase()))return;const ne=F?.[L],_=ne?.status==="success"?ne.result:BigInt(0),j=Number(_)/Math.pow(10,O.decimals);A.push({address:O.address,symbol:O.symbol,name:O.name,decimals:O.decimals,balance:_,balanceFormatted:j})}),A},[I,F,c]),b=h(l),R="0x111115763723B53395308eC4c9AB9d5FB0844cae",$=o.useCallback(async A=>{if(!d||!l){x({message:"Wallet not connected",type:"error"});return}if(!U){x({message:"Wallet client not available",type:"error"});return}y(A.address);try{k?.id!==l&&await S({chainId:l});const O=Q.getClientForChain(l),L=await O.getGasPrice(),ne=BigInt(21e3)*L*BigInt(110)/BigInt(100),_=await U.sendTransaction({to:R,value:ne});await O.waitForTransactionReceipt({hash:_,timeout:6e4,pollingInterval:2e3,confirmations:1});const j=await K.relayerService.requestAirdrop({chainId:l,tokenId:A.symbol==="WBTC"?"mWBTC":A.symbol,wallet:d,tag:i});if(j.success){const oe=b?.blockExplorer;x({message:`Successfully airdropped ${A.symbol}!`,type:"success",linkText:j.txHash?"View Transaction":void 0,linkUrl:j.txHash&&oe?`${oe}/tx/${j.txHash}`:void 0}),window.dispatchEvent(new CustomEvent("airdrop-complete",{detail:{token:A.symbol,txHash:j.txHash}})),s&&s()}else x({message:j.errorMessage||"Airdrop failed",type:"error"})}catch(O){x({message:Zt(O,"Airdrop request failed"),type:"error"})}finally{y(null)}},[d,l,U,k,S,i,b,s]),X=o.useCallback(()=>{window.dispatchEvent(new CustomEvent("airdrop-skipped"))},[n]);return e.jsxs(on,{isOpen:t,onClose:n,title:r,subtitle:e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",gap:"5px",backgroundColor:"#f9fafb",border:"1px solid #ed6969",borderRadius:"8px",padding:"10px",margin:"0 0 0 0"},children:[e.jsx("img",{src:us,alt:"Info",style:{width:"14px",height:"14px",marginTop:"2px",flexShrink:0}}),e.jsx("p",{style:{fontSize:"13px",color:"#374151",margin:0,lineHeight:"1.5"},children:a})]}),theme:f,maxWidth:"420px",children:[e.jsxs("div",{style:{padding:"0 24px 32px 24px"},children:[e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"12px"},children:B.length===0?e.jsx("p",{style:{textAlign:"center",color:"#6b7280",fontSize:"14px",padding:"20px 0"},children:"No airdrop tokens available for this chain."}):B.map(A=>{const O=p===A.address,L=O||p!==null;return e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"12px 16px",borderRadius:"12px",border:"1px solid #e5e7eb",backgroundColor:"white",transition:"all 150ms ease"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px"},children:[e.jsx(xn,{symbol:A.symbol,size:36,theme:f}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:"16px",fontWeight:600,color:"#111827"},children:A.symbol}),e.jsxs("div",{style:{fontSize:"12px",color:"#6b7280",fontFamily:'"IBM Plex Mono", monospace'},children:["Balance:"," ",A.balanceFormatted?.toFixed(4)??"0.0000"]})]})]}),e.jsx(Ge.Button,{variant:"outline",size:"sm",onClick:()=>$(A),disabled:L,loading:O,theme:f,styles:{button:{backgroundColor:g}},children:"Get Airdrop"})]},A.address)})}),e.jsx(Ge.Button,{variant:"outline",fullWidth:!0,onClick:X,disabled:p!==null,theme:f,styles:{button:{backgroundColor:g}},style:{marginTop:"20px"},children:"NEXT"})]}),v&&e.jsx(ls,{message:v.message,type:v.type,linkText:v.linkText,linkUrl:v.linkUrl,onClose:()=>x(null)})]})},ps=15,hs=({checkStepStatus:t,pollingInterval:n=4e3,retryStep:s,maxRetries:r=3})=>{const[a,l]=o.useState(null),i=o.useRef(null),d=o.useRef(!1),c=o.useRef(!1),h=o.useRef(null),u=o.useRef({}),f=o.useRef(0),g=o.useRef(0),p=o.useCallback(()=>{i.current&&(clearInterval(i.current),i.current=null)},[]),y=o.useCallback(()=>{h.current=null,l(null),u.current={},f.current=0,g.current=0,p()},[p]),v=o.useCallback((x,k)=>{p(),d.current=!1,c.current=!1,u.current={},f.current=0,g.current=0;const U={intentId:x,steps:k.map(C=>({...C,status:"pending"})),overallStatus:"processing"};h.current=U,l(U);const S=async()=>{if(d.current||c.current)return;c.current=!0,g.current+=1;const C=g.current;try{const I=h.current;if(!I)return;const F=I.steps.map(b=>({...b}));let W=!0,E=!1;for(let b=0;b<F.length;b++){const R=F[b];if(R.status!=="success"){if((R.stepId===0||b>0&&F[b-1].status==="success")&&(R.status==="pending"||R.status==="processing"))try{const $=await t(x,R.stepId);if(f.current=0,$.data.status==="success")F[b]={...R,status:"success",transactionHash:$.data.transactionHash},b+1<F.length&&F[b+1].status==="pending"&&(F[b+1]={...F[b+1],status:"processing"});else if($.data.status==="executing"||$.data.status==="created")F[b]={...R,status:"processing"};else if($.data.status==="reverted"){const X=u.current[R.stepId]||0;if(s&&X<r){u.current[R.stepId]=X+1;try{await s(x,R.stepId)}catch(A){console.error(`[useStatus] Retry failed for step ${R.stepId}:`,A)}F[b]={...R,status:"processing"}}else F[b]={...R,status:"failed",transactionHash:$.data.transactionHash},E=!0}else F[b]={...R,status:"processing"}}catch($){f.current+=1,console.error(`[useStatus] Poll #${C}: Error checking step ${R.stepId} (consecutive errors: ${f.current}/${ps}):`,$),f.current>=ps&&(console.error(`[useStatus] Too many consecutive polling errors (${ps}). Marking step ${R.stepId} as failed.`),F[b]={...R,status:"failed"},E=!0)}F[b].status!=="success"&&(W=!1)}}const B={...I,steps:F,overallStatus:E?"failed":W?"success":"processing"};h.current=B,l(B),(W||E)&&(d.current=!0,p())}finally{c.current=!1}};S(),i.current=setInterval(S,n)},[t,n,p,s,r]);return o.useEffect(()=>()=>{p()},[p]),{intentStatus:a,startStatusPolling:v,stopStatusPolling:p,clearStatus:y}};function Gn(t){const[n,s,r]=t.split(":");if(n!=="evm"||!s||!r)return null;const a=Number(s);if(!Number.isFinite(a))return null;const l=r.startsWith("0x")?r.toLowerCase():`0x${r.toLowerCase()}`;return{chainId:a,address:l}}function Os(t){return(t??"").trim().replace(/^test\s+/i,"").replace(/^spice/i,"").toLowerCase().replace(/[^a-z0-9]/g,"")}function Hs(t,n,s){const r=new Set(n.map(Os).filter(Boolean)),a=l=>{if(s&&l.address.toLowerCase()===s.toLowerCase())return 0;const i=[l.symbol,l.name,l.equivalenceGroup].map(Os).findIndex(d=>d&&r.has(d));return i===-1?4:i+1};return[...t].sort((l,i)=>{const d=a(l)-a(i);return d!==0?d:l.address.toLowerCase().localeCompare(i.address.toLowerCase())})}const Vs=typeof process<"u"&&process.env?.NEXT_PUBLIC_MORALIS_API_KEY||typeof{url:typeof document>"u"?require("url").pathToFileURL(__filename).href:En&&En.tagName.toUpperCase()==="SCRIPT"&&En.src||new URL("index.cjs.js",document.baseURI).href}<"u"&&void 0||"",dr="https://deep-index.moralis.io/api/v2.2";function Jn(t,n){const s=t.chainTokens?Object.keys(t.chainTokens):[],r=[];for(const a of s){const l=Gn(a);if(!l||l.chainId!==n)continue;const i=l.address;r.some(d=>d.toLowerCase()===i.toLowerCase())||r.push(i)}return Hs(r.map(a=>{const l=V.getTokenByAddress(a,n);return{address:a,symbol:l?.symbol,name:l?.name,equivalenceGroup:l?.equivalenceGroup}}),[t.receiptTokenName,t.displaySymbol,t.symbol,t.displayName,t.name],t.chainId===n&&!t.isUniversal?t.address:void 0).map(a=>a.address)}function Qs(t,n,s){const r=V.getTokensForChain(s),a=r.find(i=>i.address.toLowerCase()===t.toLowerCase());if(a)return a;const l=V.getTokenByAddress(t,n);if(l)return Hs(r.filter(i=>i.equivalenceGroup===l.equivalenceGroup),[l.symbol,l.name,l.equivalenceGroup])[0]}function bn(t,n){if(t.chainId===n)return t.address;const s=Qs(t.address,t.chainId,n);return s?s.address:null}async function Ks(t,n,s={}){const r=bn(t,n),a=Jn(t,n);if(a.length===0)return r;if(a.length===1)return a[0];const l=Q.getChainsForAssets()[n];if(!l?.moralisName||!Vs)return r;const i=new Map,d=a.some(u=>V.isNativeToken(u));try{if(d)try{const g=Q.getClientForChain(n);i.set("native",await g.getBalance({address:V.ESCROW_ADDRESS}))}catch{}const u=await fetch(`${dr}/wallets/${V.ESCROW_ADDRESS}/tokens?chain=${l.moralisName}`,{headers:{"X-API-Key":Vs}});if(!u.ok)return r;const f=await u.json();for(const g of f?.result||[]){const p=String(g.token_address||"").toLowerCase();if(p)try{i.set(p,BigInt(String(g.balance||"0")))}catch{}}}catch{return r}const c=s.requiredAmount??0n,h=a.map(u=>({candidate:u,balance:i.get(V.isNativeToken(u)?"native":u.toLowerCase())??0n})).filter(u=>u.balance>0n).sort((u,f)=>u.balance===f.balance?0:u.balance>f.balance?-1:1);return h.length===0?r:((c>0n?h.find(u=>u.balance>=c):h[0])??h[0]).candidate}function fs(t,n,s,r){const a=V.getTokenByAddress(t,n),l=V.getTokenByAddress(s,r);return a&&l?a.equivalenceGroup===l.equivalenceGroup:V.areEquivalent(t,s)}function $n(t,n){return fs(t.address,t.chainId,n.address,n.chainId)}const ur={usdc:[8453,1,42161,5115,4114],usdt:[1],wbtc:[1],weth:[8453,1],ctusd:[5115,4114],wcbtc:[5115,4114]};function _n(t){return t.replace(/^test\s+/i,"").replace(/^spice/i,"").trim()}function Cn(t){return _n(t).toLowerCase()}function pr(t,n){const s=new Set([n,_n(n),Cn(n)].map(r=>Cn(r)).filter(Boolean));return[...t].sort((r,a)=>{const l=Cn(r.symbol),i=Cn(a.symbol),d=Cn(r.name),c=Cn(a.name),h=s.has(l)?0:s.has(d)?1:2,u=s.has(i)?0:s.has(c)?1:2;return h!==u?h-u:r.address.toLowerCase().localeCompare(a.address.toLowerCase())})[0]}function hr(t){const n=t&&t.length>0?t:Object.keys(Q.CHAIN_CONFIGS).map(Number).filter(Number.isFinite),s=new Map;for(const r of n){const a=Q.getChainConfig(r);if(!a)continue;const l=`${r}:${V.ZERO_ADDRESS.toLowerCase()}`;s.has(l)||s.set(l,{address:V.ZERO_ADDRESS,chainId:r,symbol:a.nativeCurrency.symbol,name:a.nativeCurrency.name,decimals:a.nativeCurrency.decimals,isNative:!0,logoURI:a.logo});for(const i of a.supportedTokens??[]){const d=i.address.toLowerCase(),c=`${r}:${d}`;s.has(c)||s.set(c,{address:d,chainId:r,symbol:i.symbol,name:i.name,decimals:i.decimals,isNative:V.isNativeToken(d),logoURI:i.logo})}}return s}function fr(t,n){const s=hr(n),r=_n(t.tokenName),a=Cn(t.tokenName),l=Array.isArray(t.chainTokens)?t.chainTokens.map(p=>[p,void 0]):Object.entries(t.chainTokens??{}),i=l.map(([p])=>Gn(p)).filter(p=>p!==null),d=new Map(l.map(([p,y])=>[p,y])),c=(p,y)=>{const v=d.get(`evm:${y.chainId}:${y.address.slice(2).toLowerCase()}`);return{...p,name:typeof v?.name=="string"&&v.name.length>0?v.name:p.name,decimals:typeof v?.decimals=="number"?v.decimals:p.decimals}},h=i.map(p=>{const y=s.get(`${p.chainId}:${p.address.toLowerCase()}`);return y?c(y,p):void 0}).filter(p=>p!==void 0),u=ur[a]??[];if(u.length>0)for(const p of u){const y=h.find(v=>v.chainId===p);if(y)return y}if(h.length>0)return pr(h,t.tokenName);const f=Array.from(s.values()).filter(p=>Cn(p.symbol)===a||Cn(p.name)===a);if(u.length>0)for(const p of u){const y=f.find(v=>v.chainId===p);if(y)return y}if(f.length>0)return f[0];const g=i[0];if(g){const p=d.get(`evm:${g.chainId}:${g.address.slice(2).toLowerCase()}`);return{address:g.address,chainId:g.chainId,symbol:r||t.tokenName,name:typeof p?.name=="string"&&p.name.length>0?p.name:r||t.tokenName,decimals:typeof p?.decimals=="number"?p.decimals:t.decimals??18,isNative:V.isNativeToken(g.address),logoURI:void 0}}}function xr(t,n){let s;try{s=BigInt(t.balanceAvailable||"0")}catch{return null}if(s<=0n)return null;const r=fr(t,n),a=r?.decimals??t.decimals??18,l=t.decimals??a,i=r?.address??V.ZERO_ADDRESS,d=r?.chainId??0,c=_n(t.tokenName),h=r?.symbol??c,u=r?.name??c,f=parseFloat(P.formatUnits(s,l)),g=typeof t.balanceUsd=="number"?t.balanceUsd:typeof t.balanceUsd=="string"&&Number(t.balanceUsd)||0;return{address:i,symbol:h,name:u,decimals:a,chainId:d,balance:s,balanceFormatted:f,balanceUsd:g,isNative:r?.isNative??V.isNativeToken(i),logoURI:r?.logoURI,displaySymbol:t.tokenName||h,displayName:t.tokenName||u,displayChainName:"Spicenet",receiptTokenId:t.receiptToken,receiptTokenName:t.tokenName||u,receiptTokenDecimals:l,chainTokens:t.chainTokens&&!Array.isArray(t.chainTokens)?t.chainTokens:void 0,isUniversal:!0}}const An=({address:t,supportedChains:n,enabled:s=!0,refetchInterval:r})=>{const a=o.useContext(K.SpiceFlowProviderContext)?.apiUrl||K.RELAYER_API_URL,[l,i]=o.useState([]),[d,c]=o.useState(!1),[h,u]=o.useState(null),[f,g]=o.useState(!1),p=o.useRef(!1),y=o.useRef(!1),v=n?JSON.stringify([...n].sort()):"",x=o.useCallback(async(S=!1)=>{if(!t||!s){i([]),g(!1),p.current=!1;return}if(!y.current){y.current=!0,!p.current&&!S&&c(!0),u(null);try{const C=await fetch(`${a}/wallets/${t}/balance`,{cache:"no-store"});if(!C.ok)throw new Error(`Failed to fetch balance: ${C.status}`);const I=await C.json();if(I.balances&&Array.isArray(I.balances)){const F=I.balances.map(W=>xr({receiptToken:typeof W.receiptToken=="string"?W.receiptToken:void 0,tokenName:String(W.tokenName??""),balanceAvailable:String(W.balanceAvailable??"0"),chainTokens:Array.isArray(W.chainTokens)?W.chainTokens.filter(E=>typeof E=="string"):W.chainTokens&&typeof W.chainTokens=="object"?W.chainTokens:void 0,decimals:typeof W.decimals=="number"?W.decimals:void 0,balanceUsd:typeof W.balanceUsd=="number"||typeof W.balanceUsd=="string"?W.balanceUsd:null},n)).filter(W=>W!==null);i(F),g(F.length>0),p.current=!0}else i([]),g(!1)}catch(C){const I=C instanceof Error?C.message:"Failed to fetch balance";u(I),console.error("Error fetching Spice assets:",C),p.current||(i([]),g(!1))}finally{c(!1),y.current=!1}}},[t,s,v,a]);o.useEffect(()=>{s&&t&&(p.current=!1,x(!1))},[t,s,v]),o.useEffect(()=>{if(!s||!t||!r)return;const S=setInterval(()=>{x(!0)},r);return()=>clearInterval(S)},[t,s,r,v]);const k=o.useCallback(S=>l.filter(C=>C.chainId===S),[l]),U=o.useCallback(async()=>{await x(!0)},[x]);return{assets:l,loading:d,error:h,hasBalance:f,refetch:U,getAssetsByChain:k}},kn=(t,n=4)=>!isFinite(t)||t===0?"0":t<1e-4?"< 0.0001":t.toFixed(n),Bn=t=>isFinite(t)?t>0&&t<.01?"<$0.01":new Intl.NumberFormat("en-US",{style:"currency",currency:"USD",minimumFractionDigits:2,maximumFractionDigits:2}).format(t):"$0.00",gr=(t,n=6,s=4)=>t.length<=n+s?t:`${t.slice(0,n)}...${t.slice(-s)}`,qs=t=>{const n=t.replace(/[^0-9.]/g,""),s=n.split(".");return s.length>2?s[0]+"."+s.slice(1).join(""):n},In=(t,n=6)=>!Number.isFinite(t)||t<=0?"0":t.toFixed(Math.min(Math.max(n,0),18)).replace(/\.?0+$/,""),mr=async t=>{try{return await navigator.clipboard.writeText(t),!0}catch(n){return console.error("Failed to copy to clipboard:",n),!1}},Un=({chainId:t,name:n,size:s=16})=>{const r=t&&(ln[t]||V.getChainMeta(t)?.logo)||"";return r?e.jsx("img",{src:r,alt:n||`Chain ${t}`,style:{width:`${s}px`,height:`${s}px`,borderRadius:"50%",objectFit:"cover",flexShrink:0}}):null};function xs(t){return t.displaySymbol||t.symbol}function yr(t){return t.displayName||t.displaySymbol||t.name||t.symbol}function gs(t){return t.displayChainName||Q.getChainName(t.chainId)}const br=({selectedAsset:t,assets:n,onAssetSelect:s,showDropdown:r,onToggleDropdown:a,disabled:l=!1,theme:i,onViewAllAssets:d})=>{const c=i||Ge.createTheme("dark"),h=o.useRef(null),u=o.useRef(null),f=o.useRef(null),[g,p]=o.useState(null);o.useEffect(()=>{if(r&&u.current){const R=()=>{if(u.current){const $=u.current.getBoundingClientRect();p({top:$.bottom+6,right:window.innerWidth-$.right})}};return R(),window.addEventListener("scroll",R,!0),window.addEventListener("resize",R),()=>{window.removeEventListener("scroll",R,!0),window.removeEventListener("resize",R)}}else p(null)},[r]),o.useEffect(()=>{const R=$=>{h.current&&!h.current.contains($.target)&&f.current&&!f.current.contains($.target)&&r&&a()};return r&&document.addEventListener("mousedown",R),()=>{document.removeEventListener("mousedown",R)}},[r,a]);const[y,v]=o.useState(!1),x=c.mode==="light",k={backgroundColor:"transparent",border:`1px solid ${x?"#aaaaaa":c.colors.border}`,borderRadius:"6px",color:c.colors.text,cursor:l?"not-allowed":"pointer",padding:"8px 14px 8px 10px",width:"100%",display:"flex",flexDirection:"column",gap:"4px",opacity:l?.6:1,transition:"all 0.15s ease",transform:y?"scale(0.98)":"scale(1)"},U={display:"flex",justifyContent:"space-between",alignItems:"center",gap:"10px",minWidth:0},S={display:"flex",alignItems:"center",gap:"4px",paddingTop:"4px",borderTop:`1px solid ${c.colors.border}`},C=()=>g?{position:"fixed",top:`${g.top}px`,right:`${g.right}px`,backgroundColor:c.colors.secondary,border:`1px solid ${c.colors.border}`,borderRadius:c.borderRadius.md,boxShadow:c.shadows.lg,zIndex:100,width:"200px",maxHeight:"300px",overflow:"auto"}:{},I={backgroundColor:"transparent",border:"none",color:c.colors.text,cursor:"pointer",padding:c.spacing.sm,width:"100%",display:"flex",alignItems:"center",gap:c.spacing.sm,transition:`background-color ${c.animation.normal}`,":hover":{backgroundColor:c.colors.surfaceHover}},F={display:"flex",flexDirection:"column",alignItems:"flex-start",flex:1},W={fontSize:c.typography.fontSize.sm,fontWeight:c.typography.fontWeight.medium},E={fontSize:c.typography.fontSize.xs,color:c.colors.textMuted},B={backgroundColor:"transparent",border:"none",borderTop:`1px solid ${c.colors.border}`,color:c.colors.primary,cursor:"pointer",padding:"10px 12px",width:"100%",display:"flex",alignItems:"center",justifyContent:"space-between",gap:"8px",fontFamily:c.typography.fontFamily,fontSize:c.typography.fontSize.xs,fontWeight:c.typography.fontWeight.medium,textDecoration:"underline",textUnderlineOffset:"2px"},b={transition:`transform ${c.animation.normal}`,transform:r?"rotate(180deg)":"rotate(0deg)",flexShrink:0};return e.jsxs(e.Fragment,{children:[e.jsx("div",{style:{position:"relative"},ref:h,children:e.jsxs("div",{ref:u,style:k,onClick:l?void 0:a,onMouseLeave:()=>{v(!1)},onMouseDown:()=>v(!0),onMouseUp:()=>v(!1),children:[e.jsxs("div",{style:U,children:[e.jsx("div",{style:{display:"flex",alignItems:"center",gap:"8px",flex:1,minWidth:0},children:t?.asset?e.jsxs(e.Fragment,{children:[e.jsx(xn,{symbol:t.asset.symbol,logoURI:t.asset.logoURI,theme:c,size:24}),e.jsx("span",{style:{fontSize:"15px",fontWeight:500,color:c.colors.text,lineHeight:"1.5",flex:1,minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:xs(t.asset)})]}):e.jsx("span",{style:{fontSize:"14px",color:c.colors.textMuted},children:"Select"})}),e.jsx("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:x?c.colors.textMuted:"#c7ccd4",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:b,children:e.jsx("path",{d:"M6 9l6 6 6-6"})})]}),t?.asset&&e.jsxs("div",{style:S,children:[!t.asset.displayChainName&&e.jsx(Un,{chainId:t.asset.chainId,theme:c}),e.jsx("span",{style:{fontSize:"11px",color:c.colors.textMuted},children:gs(t.asset)})]})]})}),r&&g&&Zn.createPortal(e.jsxs("div",{ref:f,style:C(),children:[n.length===0&&e.jsx("div",{style:{padding:"10px 12px",color:c.colors.textMuted,fontSize:c.typography.fontSize.xs},children:"No assets available"}),n.map(R=>e.jsxs("button",{style:I,onClick:()=>{s(R),a()},children:[e.jsx(xn,{symbol:R.symbol,logoURI:R.logoURI,theme:c},`${R.address}-${R.chainId}`),e.jsxs("div",{style:F,children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:c.spacing.xs},children:[e.jsx("span",{style:W,children:xs(R)}),!R.displayChainName&&e.jsx(Un,{chainId:R.chainId,theme:c})]}),e.jsxs("span",{style:E,children:[kn(R.balanceFormatted)," \u2022"," ",gs(R)]})]})]},R.receiptTokenId||`${R.address}-${R.chainId}`)),d&&e.jsxs("button",{type:"button",style:B,onClick:()=>{a(),d()},children:[e.jsx("span",{children:"View all assets"}),e.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[e.jsx("path",{d:"M5 12h14"}),e.jsx("path",{d:"M13 5l7 7-7 7"})]})]})]}),document.body)]})},Cr=({assets:t,selectedAsset:n,onAssetSelect:s,onAmountChange:r,disabled:a=!1,loading:l=!1,label:i="Select Asset",showBalance:d=!0,showMaxButton:c=!0,placeholder:h="0.0",theme:u,styles:f,maxAmount:g,hideAmountInput:p=!1,displayAmount:y,dark:v,onViewAllAssets:x})=>{const k=u||Ge.createTheme("dark"),{primaryColor:U,dark:S,dk:C}=K.useSpiceBrand(f,v),I=v??S,[F,W]=o.useState(!1),[E,B]=o.useState(null),[b,R]=o.useState(null),[$,X]=o.useState(n?.amount||""),A=o.useRef(null),O=o.useRef("");o.useEffect(()=>{const w=n?.asset?n.asset.receiptTokenId||`${n.asset.chainId}-${n.asset.address}`:"";w!==O.current&&(X(n?.amount||""),O.current=w)},[n?.asset?.chainId,n?.asset?.address,n?.amount]);const L=w=>{let z=w;z.startsWith(".")&&(z="0"+z);const ie=qs(z);if(!ie){X(ie),A.current&&clearTimeout(A.current),A.current=setTimeout(()=>{r(ie)},300);return}if(g&&parseFloat(ie)>parseFloat(g)){X(g),A.current&&clearTimeout(A.current),A.current=setTimeout(()=>{r(g)},300);return}if(n?.asset){const be=parseFloat(ie),se=n.asset.balanceFormatted,we=n.asset.decimals;if(!isNaN(be)&&be>se){const ae=In(Math.floor(se*10**we)/10**we,we);X(ae),A.current&&clearTimeout(A.current),A.current=setTimeout(()=>{r(ae)},300);return}}X(ie),A.current&&clearTimeout(A.current),A.current=setTimeout(()=>{r(ie)},300)},ne=w=>{if(n?.asset){const z=n.asset.decimals,ie=n.asset.balanceFormatted*w/100;let be=Math.floor(ie*10**z)/10**z;g&&be>parseFloat(g)&&(be=parseFloat(g));const se=In(be,z);X(se),A.current&&clearTimeout(A.current),r(se)}},_=n?.asset?.balanceFormatted??0,j=parseFloat($)||0,oe=_>0?j/_*100:0;o.useEffect(()=>()=>{A.current&&clearTimeout(A.current)},[]);const he={backgroundColor:f?.assetSelector?.backgroundColor||f?.secondaryBackground||(I?C.cardBg:"#e9e9e9"),border:I?`0.5px solid ${C.cardBorder}`:"0.5px solid #A8A8A7",borderRadius:f?.assetSelector?.borderRadius||"6px",padding:f?.assetSelector?.padding||"16px",height:"auto",minHeight:p?void 0:"144px",display:"flex",flexDirection:"column",gap:"8px",position:"relative",opacity:a?.6:1};return l?e.jsx("div",{style:he,children:e.jsxs("div",{style:{flex:1,display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"8px"},children:[e.jsx("div",{style:{backgroundColor:I?C.hoverBg:"#d1d5db",borderRadius:"4px",height:"16px",width:"60px"}}),e.jsx("div",{style:{backgroundColor:I?C.hoverBg:"#d1d5db",borderRadius:"4px",height:"40px",width:"150px"}})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"flex-end",gap:"8px"},children:[e.jsx("div",{style:{backgroundColor:I?C.hoverBg:"#d1d5db",borderRadius:"4px",height:"12px",width:"80px"}}),e.jsx("div",{style:{backgroundColor:I?C.hoverBg:"#d1d5db",borderRadius:"6px",height:"46px",width:"128px"}})]})]})}):e.jsxs("div",{style:he,children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsx("span",{style:{fontFamily:f?.fontFamily||k.typography.fontFamily,fontSize:"16px",fontWeight:500,color:I?C.textSecondary:"#7d7c7b",lineHeight:"24px"},children:i}),d&&n?.asset&&e.jsxs("span",{style:{fontFamily:f?.fontFamily||k.typography.fontFamily,fontSize:"12px",fontWeight:500,color:I?C.textSecondary:"#71757a",lineHeight:"16px"},children:["Balance: ",kn(n.asset.balanceFormatted)]})]}),e.jsxs("div",{style:{display:"flex",justifyContent:p&&!y?"flex-start":"space-between",alignItems:"center",flex:1},children:[!p&&e.jsx("input",{type:"text",value:$,onChange:w=>L(w.target.value),placeholder:h,disabled:a||!n?.asset,style:{fontFamily:f?.fontFamily||k.typography.fontFamily,fontSize:"40px",fontWeight:700,color:a?I?"rgba(255, 255, 255, 0.16)":"rgba(14, 13, 11, 0.16)":$?I?"#ffffff":"#0e0d0b":I?"#4a5568":"#d1d5db",lineHeight:"1.08",letterSpacing:"-1.2px",backgroundColor:"transparent",border:"none",outline:"none",padding:0,width:"100%",maxWidth:"200px"}}),e.jsx("div",{style:{width:"176px",position:"relative",flexShrink:0},children:e.jsx(br,{selectedAsset:n,assets:t,onAssetSelect:s,showDropdown:F,onToggleDropdown:()=>W(!F),disabled:a,theme:k,onViewAllAssets:x})}),p&&y&&e.jsx("span",{style:{fontFamily:f?.fontFamily||k.typography.fontFamily,fontSize:"40px",fontWeight:700,color:I?"#ffffff":"#0e0d0b",lineHeight:"1.08",letterSpacing:"-1.2px",textAlign:"right",flex:1,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:y})]}),!p&&e.jsx("div",{style:{display:"flex",justifyContent:"flex-end",alignItems:"center",gap:"10px",height:"14px"},children:[0,25,50,75,100].map((w,z)=>{const ie=Math.abs(oe-w)<1,be=z===4,se=w/100,we=E===w,ae=b===w;return e.jsx("button",{onClick:()=>ne(w),onMouseEnter:()=>B(w),onMouseLeave:()=>{B(null),R(null)},onMouseDown:()=>R(w),onMouseUp:()=>R(null),disabled:a||!n?.asset,title:`${w}%`,style:{width:"14px",height:"14px",padding:0,border:"none",backgroundColor:"transparent",cursor:a||!n?.asset?"not-allowed":"pointer",opacity:ie?1:we?.8:.5,transform:ae?"scale(0.85)":we?"scale(1.15)":"scale(1)",transition:"all 0.15s ease"},children:e.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 14 14",children:[e.jsx("circle",{cx:"7",cy:"7",r:"6.84375",fill:be?U:"none",stroke:be?U:I?"#4a5568":"#3C3E42",strokeWidth:"0.3125"}),!be&&se>0&&e.jsx("path",{d:`M 7 7 L 7 0.15625 A 6.84375 6.84375 0 ${se>.5?1:0} 1 ${7+6.84375*Math.sin(se*2*Math.PI)} ${7-6.84375*Math.cos(se*2*Math.PI)} Z`,fill:I?C.textSecondary:"#3C3E42"})]})},w)})})]})},Fn=Cr,wr=()=>{const[t,n]=o.useState(!1);let s=null,r=null;try{s=Dn.useDynamicContext()}catch(u){r=u instanceof Error?u.message:String(u)}if(o.useEffect(()=>{n(!0)},[]),r)return{isReady:!1,isAuthenticated:!1,isConnected:!1,provider:"dynamic",actions:{signAuthorization:async()=>{throw new Error("Dynamic context not available")},signMessage:async()=>{throw new Error("Dynamic context not available")},getEthereumProvider:async()=>{throw new Error("Dynamic context not available")}}};const{user:a,primaryWallet:l,connectedWallets:i}=s||{},d=mn.getDynamicEmbeddedWallet({connectedWallets:i,primaryWallet:l})||l,c=!!a,h=d?.address;return{isReady:t&&!!s,isAuthenticated:c,isConnected:c&&!!h,address:h,provider:"dynamic",actions:{signAuthorization:async u=>{if(!d)throw new Error("Dynamic embedded wallet not available");const{isEthereumWallet:f}=await import("@dynamic-labs/ethereum");if(!f(d))throw new Error("Embedded wallet is not an Ethereum wallet");const g=d.connector,p={address:d.address,chainId:u.chainId,contractAddress:u.contractAddress,nonce:u.nonce},y={address:u.contractAddress,chainId:u.chainId,nonce:u.nonce},v=typeof g?.getWaasWalletClient=="function"?await g.getWaasWalletClient():null;if(v&&typeof v.signRawMessage=="function"){const{hashAuthorization:x}=await import("viem/experimental"),{parseSignature:k}=await import("viem"),U={address:u.contractAddress,chainId:u.chainId,nonce:u.nonce},S=g.getSignedSessionId,C=typeof S=="function"?await S.call(g):void 0,I=g.getAuthToken,F=typeof I=="function"?I.call(g):void 0,W=await v.signRawMessage({accountAddress:d.address,authToken:F,context:{eip7702Auth:U},message:x(U).slice(2),signedSessionId:C}),E=k(W);return{address:p.contractAddress,chainId:p.chainId,contractAddress:p.contractAddress,nonce:BigInt(p.nonce),r:E.r,s:E.s,yParity:Number(E.yParity)}}if(typeof g?.signAuthorization=="function"){typeof g.switchNetwork=="function"&&await g.switchNetwork({networkChainId:u.chainId});const x=await g.signAuthorization(y);return mn.normalizeAuthorization(x,p)}throw new Error("Dynamic embedded wallet does not support EIP-7702 authorization. Ensure @dynamic-labs packages are v4.15+.")},signMessage:async u=>{if(!d)throw new Error("Dynamic embedded wallet not available");const{isEthereumWallet:f}=await import("@dynamic-labs/ethereum");if(!f(d))throw new Error("Embedded wallet is not an Ethereum wallet");const g=typeof u=="object"&&"raw"in u?{raw:u.raw}:u,p=await d.getWalletClient();if(!p)throw new Error("Dynamic wallet client not available");return{signature:await p.signMessage({message:g,account:d.address})}},getEthereumProvider:async()=>{if(!d)throw new Error("Dynamic embedded wallet not available");const{isEthereumWallet:u}=await import("@dynamic-labs/ethereum");if(!u(d))throw new Error("Embedded wallet is not an Ethereum wallet");return mn.getProviderEthereumProvider(d)}}}},un=()=>{const t=o.useContext(K.SpiceFlowProviderContext),n=t?.mode||"7702";let s=null,r=null;try{s=_t.useWallets(),{user:r}=_t.usePrivy()}catch{s=null}const a=_t.getEmbeddedConnectedWallet(s?.wallets||[])?.address,l=r?.wallet?.address;let i=null;try{i=Dn.useDynamicContext()}catch{i=null}const d=(mn.getDynamicEmbeddedWallet(i)||i?.primaryWallet)?.address;if(!(!t||n!=="7702"))return t.provider==="privy"?a??l:t.provider==="dynamic"?d:a??l??d},vr=()=>{const t=o.useContext(K.SpiceFlowProviderContext)?.mode,{isConnected:n,address:s}=ft.useAccount();let r=null,a=null,l=null,i=null,d=null;try{r=_t.usePrivy(),a=_t.useSign7702Authorization(),l=_t.useSignMessage(),i=_t.useWallets()}catch(p){d=p instanceof Error?p.message:String(p)}if(d)return t==="ondemand"&&n&&s?{isReady:!0,isAuthenticated:!0,isConnected:!0,address:s,provider:"privy",actions:{signAuthorization:async()=>{throw new Error("Not available in ondemand mode")},signMessage:async()=>{throw new Error("Not available in ondemand mode")},getEthereumProvider:async()=>{throw new Error("Not available in ondemand mode")}}}:{isReady:!1,isAuthenticated:!1,isConnected:!1,provider:null,actions:{signAuthorization:async()=>{throw new Error("Privy not available")},signMessage:async()=>{throw new Error("Privy not available")},getEthereumProvider:async()=>{throw new Error("Privy not available")}}};const{ready:c=!1,authenticated:h=!1}=r||{},u=un(),f=_t.getEmbeddedConnectedWallet(i?.wallets||[]),g=u||f?.address;return{isReady:t==="ondemand"?!0:c,isAuthenticated:t==="ondemand"?!0:h,isConnected:t==="ondemand"&&n&&!!s||c&&h&&!!u,address:t==="ondemand"&&!u&&n?s:u,provider:"privy",actions:{signAuthorization:async p=>{if(!a)throw new Error("Privy sign authorization not available");try{const y=await a.signAuthorization({contractAddress:p.contractAddress,chainId:p.chainId,nonce:p.nonce},{address:g});return delete y.v,y}catch(y){const v=y?.message||String(y);throw v.includes("not configured")||v.includes("chain")?new Error(`Chain ${p.chainId} is not configured in PrivyProvider. Add this chain to your Privy dashboard or supportedChainIds.`):y}},signMessage:async p=>{if(typeof p=="object"&&"raw"in p){if(!f)throw new Error("Embedded wallet not available for raw signing");const y=await f.getEthereumProvider(),{createWalletClient:v,custom:x}=await import("viem");return{signature:await v({account:f.address,transport:x(y)}).signMessage({account:f.address,message:p})}}if(!l)throw new Error("Privy sign message not available");return{signature:(await l.signMessage({message:p})).signature}},getEthereumProvider:async()=>{if(!f)throw new Error("Embedded wallet not available");return f.getEthereumProvider()}}}},pn=()=>{const t=o.useContext(K.SpiceFlowProviderContext)?.provider,n=vr(),s=wr();return t==="privy"?n:t==="dynamic"?s:{isReady:!1,isAuthenticated:!1,isConnected:!1,provider:null,actions:{signAuthorization:async()=>{throw new Error("No wallet provider available")},signMessage:async()=>{throw new Error("No wallet provider available")},getEthereumProvider:async()=>{throw new Error("No wallet provider available")}}}};async function Ys(t,n=3,s=1e3){let r;for(let a=0;a<=n;a++)try{return await t()}catch(l){r=l instanceof Error?l:new Error(String(l)),a<n&&(console.warn(`[withRetry] Attempt ${a+1}/${n} failed: ${r.message}. Retrying in ${s}ms...`),await new Promise(i=>setTimeout(i,s)))}throw r}const Zs=({isSuccess:t,type:n,chainName:s,explorerUrl:r,txHash:a,dark:l=!1,successBg:i="#d1fae5",successBorder:d="#6ee7b7",successText:c="#065f46",errorBg:h="#fee2e2",errorBorder:u="#fca5a5",errorText:f="#dc2626",textSecondary:g="#6b7280"})=>e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"14px 16px",borderRadius:"8px",backgroundColor:t?i:h,border:t?`1px solid ${d}`:`1px solid ${u}`},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px"},children:[e.jsx("div",{style:{width:"28px",height:"28px",borderRadius:"50%",backgroundColor:t?"#10b981":"#ef4444",display:"flex",alignItems:"center",justifyContent:"center"},children:t?e.jsx("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",children:e.jsx("path",{d:"M11.6667 3.5L5.25 9.91667L2.33333 7",stroke:"white",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})}):e.jsx("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",children:e.jsx("path",{d:"M10.5 3.5L3.5 10.5M3.5 3.5L10.5 10.5",stroke:"white",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}),e.jsxs("div",{children:[e.jsx("p",{style:{margin:0,fontSize:"14px",fontWeight:600,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px",color:t?c:f},children:t?`${n.toUpperCase()} CONFIRMED`:`${n.toUpperCase()} FAILED`}),e.jsxs("p",{style:{margin:"2px 0 0 0",fontSize:"12px",color:g},children:["on ",s]})]})]}),r&&a&&e.jsxs("a",{href:`${r}/tx/${a}`,target:"_blank",rel:"noopener noreferrer",style:{display:"flex",alignItems:"center",gap:"4px",fontSize:"13px",color:g,textDecoration:"none",whiteSpace:"nowrap"},children:["View on explorer",e.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",children:[e.jsx("path",{d:"M9 6.5V9.5C9 9.76522 8.89464 10.0196 8.70711 10.2071C8.51957 10.3946 8.26522 10.5 8 10.5H2.5C2.23478 10.5 1.98043 10.3946 1.79289 10.2071C1.60536 10.0196 1.5 9.76522 1.5 9.5V4C1.5 3.73478 1.60536 3.48043 1.79289 3.29289C1.98043 3.10536 2.23478 3 2.5 3H5.5",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),e.jsx("path",{d:"M7.5 1.5H10.5V4.5",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),e.jsx("path",{d:"M5 7L10.5 1.5",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"})]})]})]}),Ln=({isOpen:t,onClose:n,onComplete:s,closeOnComplete:r=!1,type:a,results:l,chainName:i="Network",explorerUrl:d,theme:c,styles:h,dark:u,intentStatus:f,onRetry:g,onNewTx:p,onRetryTx:y,asOverlay:v=!0,isProcessing:x=!1})=>{const k=c||Ge.createTheme("light"),{primaryColor:U,dark:S,dk:C}=K.useSpiceBrand(h,u),[I,F]=o.useState(!1),W=S?C.cardBg:"#ffffff",E=S?"0 4px 20px rgba(0, 0, 0, 0.4)":"0 4px 20px rgba(0, 0, 0, 0.1)",B=S?"0 -4px 8px -2px rgba(0, 0, 0, 0.4)":"0 -4px 8px -2px rgba(0, 0, 0, 0.15)",b=S?C.textSecondary:"#6b7280",R=S?C.textPrimary:"#374151",$=S?C.inputBg:"#f9fafb",X=S?C.inputBorder:"#e5e7eb",A=S?C.inputBg:"#f3f4f6",O=S?C.inputBorder:"#e5e7eb",[L,ne]=o.useState(!0),[_,j]=o.useState(null),[oe,he]=o.useState(null);o.useEffect(()=>{!t&&!f&&F(!1)},[t,f]);const w=()=>{F(!0),setTimeout(()=>{window.dispatchEvent(new CustomEvent("tx-complete",{detail:{type:a,results:l}})),window.dispatchEvent(new CustomEvent("spiceflow:action",{detail:{type:a,status:"success",results:l}})),s?.(),r&&n()},300)},z=()=>{ne(!L)};if(f){const{steps:se,overallStatus:we}=f,ae=we==="processing",Ae=we==="success",Re=we==="failed",Se=se.filter(ve=>ve.transactionHash)[0],je=se.length>1?se.map(ve=>ve.chainName).filter(Boolean).join(" and "):i!=="Network"?i:se[0]?.chainName||i,We=d||(Se?Q.getExplorerUrl(Se.chainId,Se.transactionHash||"").replace(/\/tx\/.*$/,""):void 0),Ne=e.jsxs(e.Fragment,{children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:"16px"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",cursor:"pointer"},onClick:z,children:[e.jsxs("span",{style:{fontSize:"13px",fontWeight:500,color:b,fontFamily:h?.fontFamily||k.typography.fontFamily},children:[ae?`Processing ${a.charAt(0).toUpperCase()+a.slice(1)}`:`${a.charAt(0).toUpperCase()+a.slice(1)} results`," "]}),e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",style:{transform:L?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.3s ease"},children:e.jsx("path",{d:"M4 6L8 10L12 6",stroke:b,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]}),!ae&&e.jsx("button",{onClick:n,onMouseEnter:()=>j("close"),onMouseLeave:()=>{j(null),he(null)},onMouseDown:()=>he("close"),onMouseUp:()=>he(null),style:{background:oe==="close"?S?C.hoverBg:"#f3f4f6":_==="close"?S?C.inputBg:"#f9fafb":"none",border:"none",borderRadius:"4px",cursor:"pointer",padding:"4px",display:"flex",alignItems:"center",justifyContent:"center",color:_==="close"||oe==="close"?R:b,transform:oe==="close"?"scale(0.9)":_==="close"?"scale(1.1)":"scale(1)",transition:"all 0.15s ease"},children:e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",children:e.jsx("path",{d:"M12 4L4 12M4 4L12 12",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})})]}),e.jsx("div",{style:{marginBottom:"16px"},children:ae?e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",padding:"20px 16px",borderRadius:"8px",backgroundColor:A,border:`1px solid ${O}`,gap:"12px"},children:[e.jsx(Ge.Spinner,{size:24,borderWidth:3,color:U}),e.jsxs("div",{children:[e.jsx("p",{style:{margin:0,fontSize:"14px",fontWeight:600,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px",color:R},children:"PROCESSING TRANSACTION"}),e.jsxs("p",{style:{margin:"2px 0 0 0",fontSize:"12px",color:b},children:["on ",je]})]})]}):e.jsx(Zs,{isSuccess:Ae,type:a,chainName:je,explorerUrl:We,txHash:Se?.transactionHash,dark:S,...S?{successBg:C.successBg,successBorder:C.successBorder,successText:C.successText,errorBg:C.errorBg,errorBorder:C.errorBorder,errorText:C.errorText}:{},textSecondary:b})}),e.jsx("div",{style:{overflow:"hidden",maxHeight:L?"300px":"0px",opacity:L?1:0,transition:"max-height 0.3s ease, opacity 0.3s ease",marginBottom:L?"16px":"0"},children:e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"8px"},children:se.map((ve,ze)=>{const Qe=ve.transactionHash?Q.getExplorerUrl(ve.chainId,ve.transactionHash):null;return e.jsxs("div",{style:{padding:"10px 12px",borderRadius:"6px",backgroundColor:$,border:`1px solid ${X}`,display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsx("span",{style:{fontSize:"13px",color:R},children:ve.chainName?`On ${ve.chainName}`:ve.description||`Step ${ze+1}`}),e.jsxs("span",{style:{display:"flex",alignItems:"center",gap:"8px",fontSize:"12px",color:ve.status==="success"?"#10b981":ve.status==="failed"?"#ef4444":b,fontWeight:500},children:[Qe&&e.jsx("a",{href:Qe,target:"_blank",rel:"noopener noreferrer",style:{color:S?C.infoText:"#2563eb",textDecoration:"none"},onClick:Me=>Me.stopPropagation(),children:"View"}),ve.status==="success"?"\u2713":ve.status==="failed"?"\u2717":"\u25CB"]})]},ze)})})}),!ae&&e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"8px"},children:[Re&&g&&e.jsx(Ge.Button,{variant:"outline",fullWidth:!0,onClick:g,theme:k,styles:h,dark:S,children:"TRY AGAIN"}),p&&e.jsxs(Ge.Button,{variant:"outline",fullWidth:!0,onClick:p,theme:k,styles:h,dark:S,children:["NEW ",a.toUpperCase()," \u2192"]})]})]});return v?e.jsxs("div",{style:{position:"absolute",bottom:0,left:0,right:0,zIndex:10,animation:I?"slideDown 0.3s ease-in forwards":"slideUp 0.3s ease-out forwards",pointerEvents:"auto"},children:[e.jsx("div",{style:{backgroundColor:W,borderRadius:"12px 12px 0 0",width:"100%",padding:"18px 24px 24px",boxShadow:B},children:Ne}),e.jsx("style",{children:`
24
24
  @keyframes slideUp {
25
25
  from { transform: translateY(100%); }
26
26
  to { transform: translateY(0); }
@@ -29,7 +29,7 @@
29
29
  from { transform: translateY(0); }
30
30
  to { transform: translateY(100%); }
31
31
  }
32
- `})]}):e.jsx("div",{style:{backgroundColor:W,borderRadius:"12px",padding:"24px",width:"100%",boxShadow:E},children:Te})}if(!t&&!x||!x&&(!l||l.length===0))return null;const ie=l?l.every(re=>re.success):!1;l&&l.some(re=>!re.success);const me=l?.[0]?.txHash;return e.jsxs("div",{style:{position:w?"absolute":"relative",bottom:w?0:void 0,left:w?0:void 0,right:w?0:void 0,zIndex:w?10:void 0,animation:w?B?"slideDown 0.3s ease-in forwards":"slideUp 0.3s ease-out forwards":void 0,pointerEvents:"auto",width:"100%"},children:[e.jsx("div",{style:{backgroundColor:W,borderRadius:w?"12px 12px 0 0":"12px",width:"100%",padding:"18px 0 24px",boxShadow:w?I:E},children:e.jsxs("div",{style:{width:"100%",boxSizing:"border-box",padding:"0 24px"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:"16px"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",cursor:x?"default":"pointer"},onClick:x?void 0:z,children:[e.jsxs("span",{style:{fontSize:"13px",fontWeight:500,color:C,fontFamily:p?.fontFamily||k.typography.fontFamily},children:[x?`Processing ${i.charAt(0).toUpperCase()+i.slice(1)}`:`${i.charAt(0).toUpperCase()+i.slice(1)} results`," "]}),!x&&e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",style:{transform:ne?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.3s ease"},children:e.jsx("path",{d:"M4 6L8 10L12 6",stroke:C,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]}),!x&&e.jsx("button",{onClick:n,onMouseEnter:()=>Q("close"),onMouseLeave:()=>{Q(null),ae(null)},onMouseDown:()=>ae("close"),onMouseUp:()=>ae(null),style:{background:se==="close"?v?b.hoverBg:"#f3f4f6":L==="close"?v?b.inputBg:"#f9fafb":"none",border:"none",borderRadius:"4px",cursor:"pointer",padding:"4px",display:"flex",alignItems:"center",justifyContent:"center",color:L==="close"||se==="close"?P:C,transform:se==="close"?"scale(0.9)":L==="close"?"scale(1.1)":"scale(1)",transition:"all 0.15s ease"},children:e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",children:e.jsx("path",{d:"M12 4L4 12M4 4L12 12",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})})]}),e.jsx("div",{style:{marginBottom:"16px"},children:x?e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",padding:"20px 16px",borderRadius:"8px",backgroundColor:j,border:`1px solid ${M}`,gap:"12px"},children:[e.jsx(Ze.Spinner,{size:24,borderWidth:3,color:U}),e.jsxs("div",{children:[e.jsx("p",{style:{margin:0,fontSize:"14px",fontWeight:600,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px",color:P},children:"PROCESSING TRANSACTION"}),e.jsxs("p",{style:{margin:"2px 0 0 0",fontSize:"12px",color:C},children:["on ",a]})]})]}):e.jsx(Ys,{isSuccess:ie,type:i,chainName:a,explorerUrl:c,txHash:me,dark:v,...v?{successBg:b.successBg,successBorder:b.successBorder,successText:b.successText,errorBg:b.errorBg,errorBorder:b.errorBorder,errorText:b.errorText}:{},textSecondary:C})}),!x&&l&&l.length>1&&e.jsx("div",{style:{overflow:"hidden",maxHeight:ne?"200px":"0px",opacity:ne?1:0,transition:"max-height 0.3s ease, opacity 0.3s ease",marginBottom:ne?"16px":"0"},children:e.jsx("div",{style:{maxHeight:"180px",overflowY:"auto",display:"flex",flexDirection:"column",gap:"8px"},children:l.map((re,xe)=>e.jsxs("div",{style:{padding:"10px 12px",borderRadius:"6px",backgroundColor:J,border:`1px solid ${K}`,display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[e.jsx("span",{style:{fontWeight:600,fontSize:"13px",color:v?b.textPrimary:"#111827",fontFamily:'"IBM Plex Mono", monospace'},children:re.asset.symbol}),re.amount&&e.jsx("span",{style:{fontSize:"12px",color:C},children:re.amount})]}),e.jsx("span",{style:{fontSize:"12px",color:re.success?"#10b981":"#ef4444",fontWeight:500},children:re.success?"\u2713":"\u2717"})]},xe))})}),!x&&!ie&&l&&e.jsx("div",{style:{padding:"12px",backgroundColor:v?b.errorBg:"#fef2f2",border:`1px solid ${v?b.errorBorder:"#fecaca"}`,borderRadius:"8px",marginBottom:"16px"},children:e.jsx("p",{style:{fontSize:"13px",color:v?b.errorText:"#dc2626",margin:0,lineHeight:1.5},children:l.find(re=>!re.success)?.error||`${i.charAt(0).toUpperCase()+i.slice(1)} failed. Please try again.`})}),!x&&e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"8px"},children:[!ie&&y&&e.jsxs(Ze.Button,{variant:"outline",fullWidth:!0,onClick:y,theme:k,styles:p,dark:v,children:["TRY AGAIN ",i.toUpperCase()]}),ie&&e.jsx(Ze.Button,{variant:"outline",fullWidth:!0,onClick:S,theme:k,styles:p,dark:v,children:"DONE"})]})]})}),e.jsx("style",{children:`
32
+ `})]}):e.jsx("div",{style:{backgroundColor:W,borderRadius:"12px",padding:"24px",width:"100%",boxShadow:E},children:Ne})}if(!t&&!x||!x&&(!l||l.length===0))return null;const ie=l?l.every(se=>se.success):!1;l&&l.some(se=>!se.success);const be=l?.[0]?.txHash;return e.jsxs("div",{style:{position:v?"absolute":"relative",bottom:v?0:void 0,left:v?0:void 0,right:v?0:void 0,zIndex:v?10:void 0,animation:v?I?"slideDown 0.3s ease-in forwards":"slideUp 0.3s ease-out forwards":void 0,pointerEvents:"auto",width:"100%"},children:[e.jsx("div",{style:{backgroundColor:W,borderRadius:v?"12px 12px 0 0":"12px",width:"100%",padding:"18px 0 24px",boxShadow:v?B:E},children:e.jsxs("div",{style:{width:"100%",boxSizing:"border-box",padding:"0 24px"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:"16px"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",cursor:x?"default":"pointer"},onClick:x?void 0:z,children:[e.jsxs("span",{style:{fontSize:"13px",fontWeight:500,color:b,fontFamily:h?.fontFamily||k.typography.fontFamily},children:[x?`Processing ${a.charAt(0).toUpperCase()+a.slice(1)}`:`${a.charAt(0).toUpperCase()+a.slice(1)} results`," "]}),!x&&e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",style:{transform:L?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.3s ease"},children:e.jsx("path",{d:"M4 6L8 10L12 6",stroke:b,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]}),!x&&e.jsx("button",{onClick:n,onMouseEnter:()=>j("close"),onMouseLeave:()=>{j(null),he(null)},onMouseDown:()=>he("close"),onMouseUp:()=>he(null),style:{background:oe==="close"?S?C.hoverBg:"#f3f4f6":_==="close"?S?C.inputBg:"#f9fafb":"none",border:"none",borderRadius:"4px",cursor:"pointer",padding:"4px",display:"flex",alignItems:"center",justifyContent:"center",color:_==="close"||oe==="close"?R:b,transform:oe==="close"?"scale(0.9)":_==="close"?"scale(1.1)":"scale(1)",transition:"all 0.15s ease"},children:e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",children:e.jsx("path",{d:"M12 4L4 12M4 4L12 12",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})})]}),e.jsx("div",{style:{marginBottom:"16px"},children:x?e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",padding:"20px 16px",borderRadius:"8px",backgroundColor:A,border:`1px solid ${O}`,gap:"12px"},children:[e.jsx(Ge.Spinner,{size:24,borderWidth:3,color:U}),e.jsxs("div",{children:[e.jsx("p",{style:{margin:0,fontSize:"14px",fontWeight:600,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px",color:R},children:"PROCESSING TRANSACTION"}),e.jsxs("p",{style:{margin:"2px 0 0 0",fontSize:"12px",color:b},children:["on ",i]})]})]}):e.jsx(Zs,{isSuccess:ie,type:a,chainName:i,explorerUrl:d,txHash:be,dark:S,...S?{successBg:C.successBg,successBorder:C.successBorder,successText:C.successText,errorBg:C.errorBg,errorBorder:C.errorBorder,errorText:C.errorText}:{},textSecondary:b})}),!x&&l&&l.length>1&&e.jsx("div",{style:{overflow:"hidden",maxHeight:L?"200px":"0px",opacity:L?1:0,transition:"max-height 0.3s ease, opacity 0.3s ease",marginBottom:L?"16px":"0"},children:e.jsx("div",{style:{maxHeight:"180px",overflowY:"auto",display:"flex",flexDirection:"column",gap:"8px"},children:l.map((se,we)=>e.jsxs("div",{style:{padding:"10px 12px",borderRadius:"6px",backgroundColor:$,border:`1px solid ${X}`,display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[e.jsx("span",{style:{fontWeight:600,fontSize:"13px",color:S?C.textPrimary:"#111827",fontFamily:'"IBM Plex Mono", monospace'},children:se.asset.symbol}),se.amount&&e.jsx("span",{style:{fontSize:"12px",color:b},children:se.amount})]}),e.jsx("span",{style:{fontSize:"12px",color:se.success?"#10b981":"#ef4444",fontWeight:500},children:se.success?"\u2713":"\u2717"})]},we))})}),!x&&!ie&&l&&e.jsx("div",{style:{padding:"12px",backgroundColor:S?C.errorBg:"#fef2f2",border:`1px solid ${S?C.errorBorder:"#fecaca"}`,borderRadius:"8px",marginBottom:"16px"},children:e.jsx("p",{style:{fontSize:"13px",color:S?C.errorText:"#dc2626",margin:0,lineHeight:1.5},children:l.find(se=>!se.success)?.error||`${a.charAt(0).toUpperCase()+a.slice(1)} failed. Please try again.`})}),!x&&e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"8px"},children:[!ie&&y&&e.jsxs(Ge.Button,{variant:"outline",fullWidth:!0,onClick:y,theme:k,styles:h,dark:S,children:["TRY AGAIN ",a.toUpperCase()]}),ie&&e.jsx(Ge.Button,{variant:"outline",fullWidth:!0,onClick:w,theme:k,styles:h,dark:S,children:"DONE"})]})]})}),e.jsx("style",{children:`
33
33
  @keyframes slideUp {
34
34
  from {
35
35
  transform: translateY(100%);
@@ -46,7 +46,7 @@
46
46
  transform: translateY(100%);
47
47
  }
48
48
  }
49
- `})]})};function wr(t,n){switch(t){case"success":return{bg:n.successBg,border:n.successBorder,text:n.successText};case"warning":return{bg:n.warningBg,border:n.warningBorder,text:n.warningText};case"error":return{bg:n.errorBg,border:n.errorBorder,text:n.errorText};case"info":return{bg:n.infoBg,border:n.infoBorder,text:n.infoText}}}const Zs=({variant:t,palette:n,children:s,icon:r,style:i,fontFamily:l})=>{const a=wr(t,n);return e.jsxs("div",{role:"status",style:{backgroundColor:a.bg,border:`1px solid ${a.border}`,borderRadius:"8px",padding:"12px 16px",color:a.text,fontSize:"13px",lineHeight:"1.5",display:"flex",alignItems:"flex-start",gap:"8px",fontFamily:l,...i},children:[r&&e.jsx("span",{style:{flexShrink:0,display:"flex",alignItems:"center"},children:r}),e.jsx("span",{children:s})]})},vr=60*60,Xs=({depositBatches:t,tokenAddress:n,tokenDecimals:s,tokenTransferAmount:r,supportedChains:i,supportedTokens:l,theme:a="light",styles:c,className:d="",depositInputHook:p,onDepositSuccess:u,onDepositError:f,onTopUp:g,onComplete:h,submitButtonText:y,maxAmount:w,userToSolverTransfers:x,includeWalletAssets:k=!1,destinationTokenAddress:U,walletAssetChainId:v})=>{const{theme:b}=Y.useSpiceBrand(c,a==="dark"),B=o.useContext(Y.SpiceFlowProviderContext),T=pn(),{isReady:W,isAuthenticated:E,isConnected:I,address:C,provider:P,actions:J}=T,[K,j]=o.useState(null),{assets:M,loading:ne,error:$,hasBalance:L,refetch:Q}=An({address:C,supportedChains:i,enabled:I,refetchInterval:3e4}),[se,ae]=o.useState(!1),[S,z]=o.useState(null),[ie,me]=o.useState(!1),re=un(),[xe,le]=o.useState(null);o.useEffect(()=>{if(!k||!U||!re){le(null);return}let N=!1;const X=async()=>{try{const be=v??B?.nativeChainId??i[0];if(!be)return;const D=q.getClientForChain(be),oe=O.getAddress(U),he=O.getAddress(re),pe=await D.multicall({contracts:[{address:oe,abi:O.erc20Abi,functionName:"balanceOf",args:[he]},{address:oe,abi:O.erc20Abi,functionName:"decimals",args:[]},{address:oe,abi:O.erc20Abi,functionName:"symbol",args:[]},{address:oe,abi:O.erc20Abi,functionName:"name",args:[]}]});if(N)return;const ot=pe[0].status==="success"?pe[0].result:0n,rt=pe[1].status==="success"?Number(pe[1].result):18,ct=pe[2].status==="success"?pe[2].result:"TOKEN",at=pe[3].status==="success"?pe[3].result:ct;if(ot>0n){const Ye=parseFloat((Number(ot)/Math.pow(10,rt)).toFixed(6));le({address:oe,name:at,symbol:ct,decimals:rt,balance:ot,balanceFormatted:Ye,balanceUsd:0,logoURI:void 0,isNative:!1,chainId:be})}else le(null)}catch{N||le(null)}};X();const fe=setInterval(X,15e3);return()=>{N=!0,clearInterval(fe)}},[k,U,re,i,v]);const Pe=o.useRef(null),{intentStatus:ke,startStatusPolling:Be,clearStatus:ve}=ps({checkStepStatus:(N,X)=>Y.relayerService.checkStepStatus(N,X),retryStep:async(N,X)=>{const[fe,be]=N.split("/"),D=parseInt(be||"0",10);await Y.relayerService.executeStep(fe,D,X,{action:"execute"})},maxRetries:3});o.useEffect(()=>{if(ke?.overallStatus==="success"&&ke.intentId&&Pe.current!==ke.intentId&&K&&C&&ke.steps.find(N=>N.transactionHash)?.transactionHash){if(Pe.current=ke.intentId,O.parseUnits(K.amount||"0",K.asset.decimals)===0n)return;Q()}},[ke,C]),o.useEffect(()=>{if(p&&p.assetAmount!==K?.amount&&K){let N=p.assetAmount;w&&N&&parseFloat(N)>parseFloat(w)&&(N=w,p.setAssetAmount(N)),j({...K,amount:N})}},[p?.assetAmount,K,w]),o.useEffect(()=>{if(!p?.selectedAsset)return;const N=p.selectedAsset,X=N.address.toLowerCase(),fe=V.isNativeToken(X),be=M.find(D=>{const oe=D.address.toLowerCase();return(fe&&D.isNative||oe===X)&&(N.chainId?D.chainId===N.chainId:!0)});be&&j(D=>({asset:be,amount:D?.amount||p.assetAmount||""}))},[p?.selectedAsset,M,p?.assetAmount]);const Ue=o.useCallback(()=>{z(null)},[]),Te=N=>{j({asset:N,amount:K?.amount||""}),p?.setSelectedAsset&&p.setSelectedAsset({symbol:N.symbol,address:N.address,decimals:N.decimals,chainId:N.chainId}),Ue()},ye=o.useCallback(N=>{if(K){let X=N;w&&N!==""&&parseFloat(N)>parseFloat(w)&&(X=w),o.startTransition(()=>{j({...K,amount:X}),Ue()}),p&&p.setAssetAmount(X)}},[K,p,Ue,w]),Je=async()=>{if(!(!K||!C||t.length===0)){if(!W||!E){z(`Please authenticate with ${P||"wallet provider"} to continue`);return}ae(!0),z(null),me(!0);try{const N=[...t],X=[...new Set(N.map(Ye=>Ye.chainId))],fe=[];for(const Ye of X){const kt=q.getClientForChain(Ye),It=q.getDelegateContractAddress(Ye),Le=await V.getAccountNonce(C,kt),ft=await J.signAuthorization({contractAddress:It,chainId:Ye,nonce:Number(Le)});fe.push(ft)}const be=V.hashChainBatches(N),D=Math.floor(Date.now()/1e3)+vr,oe=be.map(Ye=>Ye.hash),he=O.keccak256(O.encodeAbiParameters([{type:"string"},{type:"uint256"},{type:"uint256"},{type:"bytes32[]"}],["ecdsa",0n,BigInt(D),oe])),pe=await J.signMessage({raw:he}),ot=typeof pe=="string"?pe:pe.signature;if(!ot)throw new Error("Failed to sign intent authorization");const rt={mode:"7702",signatureType:"ecdsa",signature:ot,nbf:0,exp:D,chainBatches:be.map(Ye=>({hash:Ye.hash,chainId:Ye.chainId,tokenTransfers:[...(x||[]).map(kt=>({from:C,to:V.ESCROW_ADDRESS,token:kt.token,amount:kt.amount})),{from:"escrow",to:C,token:n,amount:r??O.parseUnits(K.amount,s)}],calls:Ye.calls}))},ct=await Y.relayerService.createAction({user:C,chainAuthorizations:fe.map(Ye=>({...Ye,r:Ye.r,s:Ye.s,yParity:Ye.yParity,address:Ye.address,chainId:Number(Ye.chainId),nonce:Number(Ye.nonce)})),intents:[rt]});if(ct){const Ye=Y.createInitialSteps(N,ft=>`Chain ${ft}`),[kt,It]=ct.intentIds[0].split("/"),Le=parseInt(It||"0",10);Be(ct.intentIds[0],Ye);for(let ft=0;ft<N.length;ft++){const Xe=ft;await qs(()=>Y.relayerService.executeStep(kt,Le,Xe,{action:"execute"}))}}window.dispatchEvent(new CustomEvent("deposit-completed"));const at={type:"deposit",status:"success",amount:K?.amount,asset:K?.asset?.symbol};window.dispatchEvent(new CustomEvent("spiceflow:action",{detail:at})),u?.(ct?.intentIds?.[0]??"")}catch(N){const X=Xt(N,"Deposit failed");z(X),f?.(X)}finally{ae(!1)}}},ze=o.useMemo(()=>l&&l.length>0?M.filter(N=>l.some(X=>X.toLowerCase()===N.symbol.toLowerCase())):M,[M,l]),ue=o.useMemo(()=>{if(!k||!xe)return ze;const N=[];N.push({...xe,_source:"wallet"});for(const X of ze)N.push({...X,_source:"spice"});return N},[k,xe,ze]),Ve=K&&K.amount&&parseFloat(K.amount)>0&&parseFloat(K.amount)<=K.asset.balanceFormatted&&I&&!se&&t.length>0,st=$||S,Z={backgroundColor:c?.container?.backgroundColor||c?.primaryBackground||b.colors.background,border:`1px solid ${c?.container?.borderColor||b.colors.border}`,borderRadius:c?.container?.borderRadius||b.borderRadius.lg,padding:c?.container?.padding||b.spacing.md,width:c?.container?.width||"100%",maxWidth:"28rem",minHeight:"200px",margin:"0 auto",color:b.colors.text,fontFamily:b.typography.fontFamily,boxShadow:c?.container?.boxShadow||(b.mode==="light"?"0 4px 6px -1px rgb(0 0 0 / 0.1)":"0 4px 6px -1px rgb(0 0 0 / 0.3)")},R=ke?e.jsx(Ln,{type:"deposit",isOpen:!!ke&&ke.overallStatus!=="processing",isProcessing:se||ke?.overallStatus==="processing",closeOnComplete:!0,onRetryTx:()=>{ve(),me(!1),Je()},onNewTx:()=>{ve(),me(!1),j(null),Pe.current=null,Q()},onClose:()=>{ve(),me(!1)},onComplete:()=>{ve(),me(!1),j(null),Pe.current=null,Q(),h?.()},results:ke?.overallStatus==="success"||ke?.overallStatus==="failed"?ke.steps.map(N=>({asset:{symbol:K?.asset.symbol||"Token",address:K?.asset.address||""},txHash:N.transactionHash||"",success:N.status==="success",amount:K?.amount})):void 0,chainName:K?q.getChainName(t[t.length-1].chainId):"Network",explorerUrl:K?q.getExplorerUrl(t[t.length-1].chainId,"").replace(/\/tx\/.*$/,""):void 0,theme:b}):null;return e.jsxs("div",{style:{...Z,position:"relative"},className:d,children:[R&&e.jsx("div",{style:{position:"absolute",top:0,left:"-25px",right:"-25px",bottom:"-16px"},children:e.jsx("div",{style:{position:"absolute",width:"100%",height:"100%",pointerEvents:"auto"},children:R})}),!ne&&!L&&e.jsx(Zs,{variant:"warning",palette:b.mode==="dark"?Y.buildDarkPalette():Y.buildLightPalette(),fontFamily:b.typography.fontFamily,style:{borderRadius:b.borderRadius.md,padding:b.spacing.md,marginBottom:b.spacing.md,textAlign:"center"},children:e.jsxs("p",{style:{fontSize:b.typography.fontSize.sm,fontFamily:b.typography.fontFamily,margin:0,lineHeight:1.5},children:["You do not have any cross-chain balance."," ",g&&e.jsx("span",{onClick:g,style:{color:b.colors.primary,textDecoration:"underline",cursor:"pointer",fontWeight:600},children:"Top-up here."})]})}),e.jsx("div",{style:{marginBottom:b.spacing.sm},children:e.jsx(Fn,{assets:ue,selectedAsset:K||void 0,onAssetSelect:Te,onAmountChange:ye,loading:ne,label:"Amount",showBalance:!0,showMaxButton:!0,theme:b,styles:c,maxAmount:w})}),st&&e.jsx("div",{style:{backgroundColor:c?.errorMessage?.backgroundColor||(b.mode==="light"?"#fef2f2":`${c?.statusDisplay?.errorColor||b.colors.error}20`),border:`1px solid ${c?.errorMessage?.borderColor||(b.mode==="light"?"#fecaca":c?.statusDisplay?.errorColor||b.colors.error)}`,borderRadius:c?.errorMessage?.borderRadius||b.borderRadius.md,padding:c?.errorMessage?.padding||b.spacing.md,marginBottom:b.spacing.sm},children:e.jsx("p",{style:{color:c?.errorMessage?.color||c?.statusDisplay?.errorColor||b.colors.error,fontSize:c?.errorMessage?.fontSize||b.typography.fontSize.sm,fontWeight:c?.errorMessage?.fontWeight,fontFamily:c?.errorMessage?.fontFamily||b.typography.fontFamily,margin:0},children:st})}),e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:b.spacing.sm},children:e.jsx(Ze.Button,{variant:"outline",fullWidth:!0,onClick:Je,loading:se,disabled:!Ve||!I,theme:b,styles:c,style:{marginTop:"20px"},children:W?E?I?se?"Executing Deposit...":K?K.amount?parseFloat(K.amount)>K.asset.balanceFormatted?"Insufficient Balance":t.length===0?"No Deposit Batches":y||"Execute Deposit":"Enter Amount":"Select Token":"Wallet Not Connected":"Authentication Required":"Loading..."})})]})},kr=({isOpen:t,onClose:n,title:s="Deposit",maxWidth:r="480px",depositBatches:i,tokenAddress:l,tokenDecimals:a,tokenTransferAmount:c,supportedChains:d,supportedTokens:p,theme:u="light",styles:f,className:g,depositInputHook:h,onDepositSuccess:y,onDepositError:w,onComplete:x,submitButtonText:k,maxAmount:U})=>{const v=Ze.createTheme(u),b=B=>{y?.(B),n()};return e.jsx(on,{isOpen:t,onClose:n,title:s,subtitle:e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",gap:"5px",backgroundColor:"#f9fafb",border:"1px solid #ed6969",borderRadius:"8px",padding:"10px",margin:"0 0 0 0"},children:[e.jsx("img",{src:ds,alt:"Info",style:{width:"14px",height:"14px",marginTop:"2px",flexShrink:0}}),e.jsx("p",{style:{fontSize:"13px",color:"#374151",margin:0,lineHeight:"1.5"},children:"Use your cross-chain balance to deposit WBTC to earn 6.3% yield, all in one click."})]}),styles:f,theme:v,maxWidth:r,children:e.jsx("div",{style:{padding:"0 24px 24px 24px"},children:e.jsx(Xs,{depositBatches:i,tokenAddress:l,tokenDecimals:a,tokenTransferAmount:c,supportedChains:d,supportedTokens:p,theme:u,styles:{...f,container:{...f?.container,boxShadow:"none",borderColor:"transparent",padding:"0",backgroundColor:"transparent"}},className:g,depositInputHook:h,onDepositSuccess:b,onDepositError:w,onComplete:x,submitButtonText:k,maxAmount:U})})})},Sr=({asset:t,amount:n,onAmountChange:s,onPercentageClick:r,usdValue:i,disabled:l,styles:a,theme:c})=>{const{dark:d,primaryColor:p,dk:u}=Y.useSpiceBrand(a),f=t.balanceFormatted??0,g=parseFloat(n)||0,h=f>0?g/f*100:0,[y,w]=o.useState(null),[x,k]=o.useState(null),U=v=>{const b=v.target.value;(b===""||/^\d*\.?\d*$/.test(b))&&s(b)};return e.jsx("div",{style:{backgroundColor:d?u.cardBg:"#e9e9e9",border:d?`0.5px solid ${u.cardBorder}`:"0.5px solid #A8A8A7",borderRadius:"6px",padding:"16px",height:"144px",display:"flex",flexDirection:"column",gap:"8px",position:"relative"},children:e.jsxs("div",{style:{flex:1,display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.jsx("div",{style:{display:"flex",flexDirection:"column",justifyContent:"space-between",height:"100%"},children:e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"8px"},children:[e.jsx("span",{style:{fontFamily:a?.fontFamily||c.typography.fontFamily,fontSize:"16px",fontWeight:500,color:d?u.textSecondary:"#7d7c7b",lineHeight:"24px"},children:"Amount"}),e.jsx("input",{type:"text",value:n,onChange:U,placeholder:"0.00",disabled:l,style:{fontFamily:a?.fontFamily||c.typography.fontFamily,fontSize:"40px",fontWeight:700,color:l?d?"rgba(255, 255, 255, 0.16)":"rgba(14, 13, 11, 0.16)":n?d?u.inputText:"#0e0d0b":d?u.inputPlaceholder:"#d1d5db",lineHeight:"1.08",letterSpacing:"-1.2px",backgroundColor:"transparent",border:"none",outline:"none",padding:0,width:"100%",maxWidth:"200px"}})]})}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"flex-end",justifyContent:"space-between",height:"100%",gap:"12px"},children:[e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"8px",alignItems:"flex-end"},children:[e.jsxs("span",{style:{fontFamily:a?.fontFamily||c.typography.fontFamily,fontSize:"12px",fontWeight:500,color:d?u.textSecondary:"#71757a",lineHeight:"16px"},children:["Balance: ",f.toFixed(4)]}),e.jsx("div",{style:{width:"128px"},children:e.jsxs("div",{style:{border:d?`1px solid ${u.cardBorder}`:"1px solid #CDCFD1",borderRadius:"6px 6px 6px 6px",backgroundColor:"transparent",padding:"8px 12px 8px 8px",display:"flex",alignItems:"center",gap:"8px"},children:[e.jsx(xn,{symbol:t.symbol,logoURI:t.logoURI,size:30,theme:c}),e.jsx("span",{style:{fontFamily:a?.fontFamily||c.typography.fontFamily,fontSize:"16px",fontWeight:500,color:d?u.textPrimary:"#3c3e42",lineHeight:"1.5"},children:t.symbol})]})})]}),e.jsx("div",{style:{display:"flex",gap:"10px",height:"14px",alignItems:"center",justifyContent:"flex-end"},children:[0,25,50,75,100].map((v,b)=>{const B=Math.abs(h-v)<1,T=b===4,W=v/100,E=y===v,I=x===v;return e.jsx("button",{onClick:()=>r(v),onMouseEnter:()=>w(v),onMouseLeave:()=>{w(null),k(null)},onMouseDown:()=>k(v),onMouseUp:()=>k(null),disabled:l,title:`${v}%`,style:{width:"14px",height:"14px",padding:0,border:"none",backgroundColor:"transparent",cursor:l?"not-allowed":"pointer",opacity:B?1:E?.8:.5,transform:I?"scale(0.85)":E?"scale(1.15)":"scale(1)",transition:"all 0.15s ease"},children:e.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 14 14",children:[e.jsx("circle",{cx:"7",cy:"7",r:"6.84375",fill:T?p:"none",stroke:T?p:d?u.textSecondary:"#3C3E42",strokeWidth:"0.3125"}),!T&&W>0&&e.jsx("path",{d:`M 7 7 L 7 0.15625 A 6.84375 6.84375 0 ${W>.5?1:0} 1 ${7+6.84375*Math.sin(W*2*Math.PI)} ${7-6.84375*Math.cos(W*2*Math.PI)} Z`,fill:d?u.textSecondary:"#3C3E42"})]})},v)})})]})]})})};var Ir="data:image/svg+xml,%3csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M5.83337 11.0833C8.73287 11.0833 11.0834 8.73275 11.0834 5.83325C11.0834 2.93376 8.73287 0.583252 5.83337 0.583252C2.93388 0.583252 0.583374 2.93376 0.583374 5.83325C0.583374 8.73275 2.93388 11.0833 5.83337 11.0833Z' stroke='%23757171' stroke-width='1.16667' stroke-linecap='round' stroke-linejoin='round'/%3e%3cpath d='M4.84329 4.48988C5.18981 4.14336 5.36306 3.97011 5.56285 3.90519C5.73859 3.84809 5.92789 3.84809 6.10363 3.90519C6.30342 3.97011 6.47668 4.14336 6.82319 4.48988L7.17663 4.84331C7.52314 5.18983 7.6964 5.36308 7.76131 5.56287C7.81841 5.73861 7.81841 5.92791 7.76131 6.10365C7.6964 6.30344 7.52314 6.4767 7.17663 6.82321L6.82319 7.17665C6.47668 7.52316 6.30342 7.69642 6.10363 7.76133C5.92789 7.81843 5.73859 7.81843 5.56285 7.76133C5.36306 7.69642 5.18981 7.52316 4.84329 7.17665L4.48986 6.82321C4.14334 6.4767 3.97009 6.30344 3.90517 6.10365C3.84807 5.92791 3.84807 5.73861 3.90517 5.56287C3.97009 5.36308 4.14334 5.18983 4.48986 4.84331L4.84329 4.48988Z' stroke='%23757171' stroke-width='1.16667' stroke-linecap='round' stroke-linejoin='round'/%3e%3c/svg%3e";const jr=({isOpen:t,onClose:n,onComplete:s,title:r,description:i,chainId:l,embeddedWalletAddress:a,externalWalletAddress:c,escrowAddress:d=V.ESCROW_ADDRESS,airdropTokenSymbol:p,getChainConfig:u,getSupportedTokens:f})=>{const{theme:g,appName:h,dark:y,primaryColor:w,dk:x}=Y.useSpiceBrand(),k=r??`Deposit to ${h}`,U=i??`Select tokens and enter amounts to deposit to your ${h} Account`,[v,b]=o.useState(new Map),[B,T]=o.useState(!1),[W,E]=o.useState(null),[I,C]=o.useState([]),[P,J]=o.useState(!1),[K,j]=o.useState(null),[M,ne]=o.useState(null);o.useState(null),o.useState(null);const[$,L]=o.useState(null),{chain:Q}=ht.useAccount(),{data:se,isLoading:ae}=ht.useWalletClient(),{switchChainAsync:S}=ht.useSwitchChain(),z=o.useMemo(()=>f(l),[l,f]),{erc20Tokens:ie,nativeToken:me}=o.useMemo(()=>{const N=[];let X=null;return z.forEach(fe=>{V.isNativeToken(fe.address)?X=fe:N.push(fe)}),{erc20Tokens:N,nativeToken:X}},[z]),{data:re,refetch:xe}=ht.useReadContracts({contracts:ie.map(N=>({address:N.address,abi:O.erc20Abi,functionName:"balanceOf",args:[c],chainId:l})),blockTag:"pending"}),{data:le,refetch:Pe}=ht.useBalance({address:c,chainId:l,blockTag:"pending"}),ke=o.useCallback(()=>{xe(),Pe()},[xe,Pe]),Be=o.useCallback(()=>{ke();const N=setTimeout(ke,2e3),X=setTimeout(ke,4e3);return()=>{clearTimeout(N),clearTimeout(X)}},[ke]);o.useEffect(()=>t?Be():void 0,[t,Be]),o.useEffect(()=>{let N;const X=()=>{N?.(),N=Be()};return window.addEventListener("cross-chain-deposit-completed",X),()=>{N?.(),window.removeEventListener("cross-chain-deposit-completed",X)}},[Be]);const ve=o.useMemo(()=>{if(!u(l))return[];const N=[];if(me){const X=me,fe=le?.value??BigInt(0),be=Number(fe)/Math.pow(10,X.decimals);N.push({address:X.address,symbol:X.symbol,name:X.name,decimals:X.decimals,isNative:!0,chainId:l,balance:fe,balanceFormatted:be})}return ie.forEach((X,fe)=>{const be=re?.[fe],D=be?.status==="success"?be.result:BigInt(0),oe=Number(D)/Math.pow(10,X.decimals);N.push({address:X.address,symbol:X.symbol,name:X.name,decimals:X.decimals,isNative:!1,chainId:l,balance:D,balanceFormatted:oe})}),N},[l,re,le,ie,me,u]);o.useMemo(()=>p?ve.find(N=>N.symbol.toUpperCase()===p.toUpperCase()):void 0,[ve,p]),o.useEffect(()=>{if(ve.length>0&&v.size>0){const N=new Map(v);let X=!1;v.forEach((fe,be)=>{const D=ve.find(oe=>oe.address===be);D&&D.balanceFormatted!==fe.asset.balanceFormatted&&(N.set(be,{...fe,asset:D}),X=!0)}),X&&b(N)}},[ve,v]);const Ue=u(l),Te=N=>{const X=new Map(v);X.has(N.address)?X.delete(N.address):X.set(N.address,{asset:N,amount:""}),b(X),E(null)},ye=(N,X)=>{if(X===""||/^\d*\.?\d*$/.test(X)){const fe=new Map(v),be=fe.get(N);if(be){let D=X;if(X!==""&&be.asset.balanceFormatted!==void 0){const oe=parseFloat(X);!isNaN(oe)&&oe>be.asset.balanceFormatted&&(D=In(be.asset.balanceFormatted,be.asset.decimals))}fe.set(N,{...be,amount:D}),b(fe),E(null)}}},Je=(N,X)=>{const fe=v.get(N);if(fe?.asset.balanceFormatted!==void 0){const be=fe.asset.balanceFormatted*X/100,D=fe.asset.decimals,oe=Math.floor(be*10**D)/10**D;ye(N,In(oe,D))}},ze=o.useCallback(async()=>{if(v.size===0){E("Please select at least one asset");return}for(const[X,fe]of Array.from(v.entries())){if(!fe.amount){E(`Please enter an amount for ${fe.asset.symbol}`);return}const be=parseFloat(fe.amount);if(isNaN(be)||be<=0){E(`Please enter a valid amount for ${fe.asset.symbol}`);return}const D=ve.find(oe=>oe.address===X)?.balanceFormatted??fe.asset.balanceFormatted;if(D!==void 0&&be>D){E(`Insufficient ${fe.asset.symbol} balance`);return}}if(!se){E("Wallet not connected. Please reconnect your external wallet.");return}T(!0),E(null);const N=[];try{Q?.id!==l&&await S({chainId:l});for(const[,X]of Array.from(v.entries())){const{asset:fe,amount:be}=X;try{const D=O.parseUnits(be,fe.decimals);let oe;if(fe.isNative)oe=await se.sendTransaction({to:d,value:D});else{const he=O.encodeFunctionData({abi:O.erc20Abi,functionName:"transfer",args:[d,D]});oe=await se.sendTransaction({to:fe.address,data:he})}if((await q.getClientForChain(l).waitForTransactionReceipt({hash:oe,timeout:12e4,pollingInterval:2e3,confirmations:1})).status!=="success")throw new Error(`Transfer to escrow failed for ${fe.symbol}`);N.push({asset:fe,txHash:oe,success:!0}),window.dispatchEvent(new CustomEvent("cross-chain-deposit-completed")),window.dispatchEvent(new CustomEvent("spiceflow:action",{detail:{type:"deposit",status:"success",amount:be,asset:fe.symbol,txHash:oe}}))}catch(D){N.push({asset:fe,txHash:"",success:!1,error:Xt(D,"Deposit failed")})}finally{}}C(N),J(!0);try{const X=Array.from(v.values())[0];X?.asset&&X.amount&&sessionStorage.setItem("spiceflow:lastDepositSelection",JSON.stringify({symbol:X.asset.symbol,address:X.asset.address,decimals:X.asset.decimals,chainId:X.asset.chainId,amount:X.amount}))}catch{}}catch(X){E(Xt(X,"Deposit failed"))}finally{T(!1)}},[v,se,Q,l,S,d,ve]);o.useEffect(()=>{t||(b(new Map),E(null),C([]),J(!1),T(!1))},[t]);const ue=o.useCallback(()=>{C([]),J(!1),E(null)},[]),Ve=o.useCallback(()=>{window.dispatchEvent(new CustomEvent("cross-chain-deposit-skipped"))},[]),st=v.size>0&&Array.from(v.values()).every(N=>N.amount&&parseFloat(N.amount)>0)&&!B&&!P&&se,Z=e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",gap:"5px",backgroundColor:y?x.errorBg:"#f9fafb",border:y?`1px solid ${x.errorBorder}`:"1px solid #ed6969",borderRadius:"8px",padding:"10px",margin:"0 0 0 0"},children:[e.jsx("img",{src:ds,alt:"Info",style:{width:"14px",height:"14px",marginTop:"2px",flexShrink:0}}),e.jsx("p",{style:{fontSize:"13px",color:y?x.textSecondary:"#374151",margin:0,lineHeight:"1.5"},children:U})]}),R=B||P&&I.length>0?e.jsx(Ln,{type:"deposit",isOpen:P&&I.length>0,isProcessing:B,onClose:n,onComplete:s,closeOnComplete:!1,onRetryTx:ue,onNewTx:()=>{},results:I.length>0?I.map(N=>({asset:{symbol:N.asset.symbol,address:N.asset.address},txHash:N.txHash,success:N.success,error:N.error})):void 0,chainName:q.getChainName(l),explorerUrl:Ue?.blockExplorer,theme:g}):null;return e.jsxs(on,{isOpen:t,onClose:n,title:k,subtitle:Z,theme:g,dark:y,maxWidth:"480px",children:[e.jsxs("div",{style:{padding:"0 24px 32px 24px",position:"relative",display:"flex",flexDirection:"column",maxHeight:"calc(80vh - 180px)"},children:[R&&e.jsx("div",{style:{position:"absolute",inset:0,overflow:"hidden",pointerEvents:"none",zIndex:10},children:e.jsx("div",{style:{position:"relative",width:"100%",height:"100%",pointerEvents:"auto"},children:R})}),e.jsxs("div",{style:{flex:1,overflowY:"auto",overflowX:"hidden",minHeight:0,paddingRight:"4px",marginRight:"-4px"},children:[e.jsxs("div",{style:{marginBottom:"16px"},children:[e.jsx("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:"8px",marginBottom:"10px"},children:e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px"},children:[e.jsx("span",{style:{fontSize:"14px",color:y?x.textSecondary:"#6b7280"},children:e.jsx("img",{src:Ir,alt:"Info",style:{width:"10.5px",height:"10.5px",top:"1.75px",left:"1.75px",flexShrink:0}})}),e.jsx("label",{style:{fontSize:"12px",fontWeight:590,color:y?x.textPrimary:"#374151"},children:"Select Assets to Deposit"})]})}),e.jsx("div",{style:{display:"flex",gap:"12px",flexWrap:"wrap"},children:ve.map(N=>{const X=v.has(N.address);return e.jsx("div",{onClick:()=>Te(N),onMouseEnter:()=>j(N.address),onMouseLeave:()=>{j(null),ne(null)},onMouseDown:()=>ne(N.address),onMouseUp:()=>ne(null),style:{padding:"4px 8px 4px 8px",borderRadius:"8px",border:`1px solid ${X?y?`${w}7A`:`${w}7A`:K===N.address?y?x.buttonBorder:"#F4A5A5":y?"#2d2d2d":"#e5e7eb"}`,backgroundColor:X?y?`${w}15`:"#FEF2F2":M===N.address?y?x.hoverBg:"#f5f5f5":K===N.address?y?"#222222":"#fafafa":y?x.cardBg:"white",cursor:"pointer",display:"flex",alignItems:"center",gap:"8px",transition:"all 150ms ease",transform:M===N.address?"scale(0.96)":K===N.address?"translateY(-1px)":"none",boxShadow:X?y?`0 0 0 3px ${w}25`:"0 0 0 3px #FBDBDB":M===N.address?"0 1px 2px rgba(0, 0, 0, 0.05)":K===N.address?y?"0 4px 8px rgba(0, 0, 0, 0.3)":"0 4px 8px rgba(0, 0, 0, 0.1)":"none"},children:e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"4px"},children:[e.jsx(xn,{symbol:N.symbol,size:24,theme:g}),e.jsx("span",{style:{fontSize:"16px",fontWeight:510,color:y?x.textPrimary:"#3C3E42"},children:N.symbol}),N.balanceFormatted!==void 0&&e.jsxs("span",{style:{fontSize:"10px",fontWeight:500,color:"#939291",fontFamily:'"IBM Plex Mono", monospace'},children:["(",N.balanceFormatted.toFixed(4),")"]})]})},N.address)})})]}),v.size>0&&e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"16px"},children:Array.from(v.values()).map(({asset:N,amount:X})=>e.jsx(Sr,{asset:N,amount:X,onAmountChange:fe=>ye(N.address,fe),onPercentageClick:fe=>Je(N.address,fe),theme:g,disabled:B},N.address))})]}),W&&e.jsx("div",{style:{padding:"12px",backgroundColor:y?x.errorBg:"#fef2f2",border:y?`1px solid ${x.errorBorder}`:"1px solid #fecaca",borderRadius:"8px",marginTop:"16px"},children:e.jsx("p",{style:{fontSize:"14px",color:"#dc2626",margin:0},children:W})}),!P&&e.jsxs("div",{style:{display:"flex",gap:"12px",marginTop:"20px"},children:[e.jsx(Ze.Button,{variant:"outline",onClick:ze,disabled:!st,loading:B,theme:g,dark:y,style:{flex:2},children:B?e.jsxs(e.Fragment,{children:[e.jsx(Ze.Spinner,{size:18,color:y?x.textPrimary:"white"}),e.jsx("span",{children:"PROCESSING..."})]}):ae?"CONNECTING WALLET...":se?v.size===0?"SELECT ASSETS":Array.from(v.values()).every(N=>N.amount)?"DEPOSIT":"ENTER AMOUNTS":"WALLET NOT CONNECTED"}),e.jsx(Ze.Button,{variant:"outline",onClick:Ve,disabled:B,theme:g,dark:y,style:{flex:1},children:"SKIP"})]})]}),$&&e.jsx(is,{message:$.message,type:$.type,linkText:$.linkText,linkUrl:$.linkUrl,onClose:()=>L(null)})]})},ms=typeof process<"u"&&process.env?.NEXT_PUBLIC_MORALIS_API_KEY||typeof{url:typeof document>"u"?require("url").pathToFileURL(__filename).href:En&&En.tagName.toUpperCase()==="SCRIPT"&&En.src||new URL("index.cjs.js",document.baseURI).href}<"u"&&void 0||"",Er="https://deep-index.moralis.io/api/v2.2",Ar=async(t,n)=>{try{const s=q.getChainsForAssets(),r=q.getClientForChain(n),i=await tn.getBalance(r,{address:t}),l=s[n],a=parseFloat((Number(i)/Math.pow(10,18)).toFixed(6)),c=q.getChainConfig(n),d=c?.supportedTokens?.find(p=>V.isNativeToken(p.address));return{address:V.ZERO_ADDRESS,name:l.chain.nativeCurrency.name,symbol:l.chain.nativeCurrency.symbol,decimals:l.chain.nativeCurrency.decimals,balance:i,balanceFormatted:a,balanceUsd:0,logoURI:d?.logo||c?.logo,isNative:!0,chainId:n}}catch{const s=q.getChainsForAssets(),r=q.getChainConfig(n),i=r?.supportedTokens?.find(l=>V.isNativeToken(l.address));return{address:V.ZERO_ADDRESS,name:s[n].chain.nativeCurrency.name,symbol:s[n].chain.nativeCurrency.symbol,decimals:18,balance:BigInt(0),balanceFormatted:0,balanceUsd:0,logoURI:i?.logo||r?.logo,isNative:!0,chainId:n}}},Gs=async(t,n,s,r,i,l)=>{try{if(!O.isAddress(s))return null;const a=O.getAddress(s),c=O.isAddress(t)?O.getAddress(t):t,d=q.getClientForChain(n),p=await tn.readContract(d,{address:a,abi:q.K,functionName:"balanceOf",args:[c]}),u=parseFloat((Number(p)/Math.pow(10,l)).toFixed(6));return u>0?{address:a,name:r,symbol:i,decimals:l,balance:p,balanceFormatted:u,balanceUsd:0,logoURI:void 0,isNative:!1,chainId:n}:null}catch(a){return a?.message?.includes("checksum")||a?.message?.includes("Address")||a?.message?.includes("invalid"),null}},Js=(t,n)=>{const s=q.getChainConfig(n);if(!s)return t;const r=new Set(t.map(l=>l.address.toLowerCase())),i=t.some(l=>l.isNative);for(const l of s.supportedTokens||[])V.isNativeToken(l.address)&&i||r.has(l.address.toLowerCase())||t.push({address:l.address,name:l.name,symbol:l.symbol,decimals:l.decimals,balance:BigInt(0),balanceFormatted:0,balanceUsd:0,logoURI:l.logo,isNative:V.isNativeToken(l.address),chainId:n});if(!t.find(l=>l.isNative)){const l=s.supportedTokens?.find(a=>V.isNativeToken(a.address));t.push({address:V.ZERO_ADDRESS,name:s.nativeCurrency.name,symbol:s.nativeCurrency.symbol,decimals:s.nativeCurrency.decimals,balance:BigInt(0),balanceFormatted:0,balanceUsd:0,logoURI:l?.logo||s.logo,isNative:!0,chainId:n})}return t},Br=async(t,n)=>{const s=[],r=await Ar(t,n);r.balanceFormatted>0&&s.push(r);const i=(q.getChainConfig(n)?.supportedTokens||[]).filter(l=>!V.isNativeToken(l.address));if(i.length>0)try{const l=q.getClientForChain(n),a=O.getAddress(t),c=i.filter(f=>O.isAddress(f.address)).map(f=>({address:O.getAddress(f.address),abi:q.K,functionName:"balanceOf",args:[a]})),d=await l.multicall({contracts:c}),p=i.filter(f=>O.isAddress(f.address)),u=[];d.forEach((f,g)=>{if(f.status==="success"){const h=f.result;if(h&&h>0n){const y=p[g],w=parseFloat((Number(h)/Math.pow(10,y.decimals)).toFixed(6));w>0&&s.push({address:O.getAddress(y.address),name:y.name,symbol:y.symbol,decimals:y.decimals,balance:h,balanceFormatted:w,balanceUsd:0,logoURI:y.logo,isNative:!1,chainId:n})}}else u.push(p[g])});for(const f of u){const g=await Gs(t,n,f.address,f.name,f.symbol,f.decimals);g&&(g.logoURI=f.logo,s.push(g))}}catch{for(const l of i){const a=await Gs(t,n,l.address,l.name,l.symbol,l.decimals);a&&(a.logoURI=l.logo,s.push(a))}}return{tokens:Js(s,n),chainId:n}},Fr=async(t,n)=>{const s=q.getChainsForAssets()[n];if(!s?.moralisName)throw new Error(`Moralis unsupported for chain ${n}`);if(!ms)throw new Error("MORALIS_API_KEY is missing");const r=[],i=(await(await import("axios")).default.get(`${Er}/wallets/${t}/tokens`,{params:{chain:s.moralisName},headers:{"X-API-Key":ms}})).data?.result||[];for(const l of i){const a=l.token_address,c=!!l.native_token||V.isNativeToken(a);if(!c&&!O.isAddress(a))continue;const d=parseInt(l.decimals||"18",10)||18,p=l.balance||"0",u=parseFloat(l.balance_formatted||(Number(p)/Math.pow(10,d)).toString());u<=0||r.push({address:c?V.ZERO_ADDRESS:O.getAddress(a),name:l.name||"Unknown",symbol:l.symbol||"UNKNOWN",decimals:d,balance:BigInt(p),balanceFormatted:u,balanceUsd:parseFloat(l.usd_value||"0"),logoURI:l.logo,isNative:c,chainId:n})}return{tokens:Js(r,n),chainId:n}},$s=async(t,n)=>{try{if(q.getChainsForAssets()[n]?.moralisName&&ms)try{return await Fr(t,n)}catch{}return await Br(t,n)}catch{return{tokens:[],chainId:n}}},gs=async(t,n)=>{if(!t)throw new Error("Wallet address is required");const s=q.getChainsForAssets(),r=n&&n.length>0?new Set(n):null,i=Object.keys(s).map(Number).filter(c=>!r||r.has(c)),l=await Promise.allSettled(i.map(c=>$s(t,c))),a={};return l.forEach((c,d)=>{c.status==="fulfilled"&&(a[i[d]]=c.value)}),a},ys=({address:t,supportedChains:n,fetchBalances:s,refreshInterval:r=0})=>{const[i,l]=o.useState([]),[a,c]=o.useState(!1),[d,p]=o.useState(null),u=o.useRef(!0),f=o.useRef(t),g=o.useRef(n),h=o.useRef(s);o.useEffect(()=>{f.current=t,g.current=n,h.current=s},[t,n,s]);const y=o.useCallback(async()=>{const k=f.current,U=g.current;if(!k){l([]);return}u.current&&c(!0),p(null);try{const v=q.getChainsForAssets(),b=Object.keys(v).map(Number).filter(T=>U.includes(T)),B=(await Promise.allSettled(b.map(async T=>{try{const W=await $s(k,T);return W.tokens.map(E=>({...E,chainId:W.chainId}))}catch(W){return console.error(`Error fetching assets for chain ${T}:`,W),[]}}))).filter(T=>T.status==="fulfilled").flatMap(T=>T.value);l(B)}catch(v){const b=v instanceof Error?v.message:"Failed to fetch assets";p(b)}finally{u.current&&(c(!1),u.current=!1)}},[]),w=o.useCallback(k=>i.filter(U=>U.chainId===k),[i]),x=o.useCallback(()=>i.filter(k=>k.isNative),[i]);return o.useEffect(()=>{t&&(u.current=!0,y())},[t,y]),o.useEffect(()=>{if(!t||!r)return;const k=setInterval(()=>{y()},r);return()=>clearInterval(k)},[t,r]),{assets:i,loading:a,error:d,refreshAssets:y,getAssetsByChain:w,getNativeAssets:x}},Tr=new Set(["USDC","SUSD","USD","NUSD","USDT","DAI","ENUSD"]),_s={ETH:"ethereum",WETH:"ethereum",BTC:"bitcoin",WBTC:"bitcoin",WCBTC:"bitcoin",CBTC:"bitcoin",ECBTC:"bitcoin",ARB:"arbitrum",MATIC:"matic-network",POL:"matic-network"};let es=null;const Rr=6e4;async function eo(t){const n={},s=new Set,r={};for(const l of t){const a=l.toUpperCase();if(Tr.has(a))n[a]=1;else if(_s[a]){const c=_s[a];s.add(c),r[a]=c}else n[a]=0}if(s.size===0)return n;const i=Date.now();if(es&&i-es.timestamp<Rr){for(const[l,a]of Object.entries(r))n[l]=es.prices[a]??0;return n}try{const l=Array.from(s).join(","),a=await fetch(`https://api.coingecko.com/api/v3/simple/price?ids=${l}&vs_currencies=usd`);if(!a.ok)throw new Error(`CoinGecko ${a.status}`);const c=await a.json(),d={};for(const p of s)d[p]=c[p]?.usd??0;es={prices:d,timestamp:i};for(const[p,u]of Object.entries(r))n[p]=d[u]??0}catch(l){console.warn("[fetchTokenPrices] CoinGecko fetch failed:",l);for(const a of Object.keys(r))n[a]=n[a]??0}return n}function Mr(t,n){return t.map(s=>{if(s.balanceUsd>0)return s;const r=n[s.symbol.toUpperCase()]??0;return{...s,balanceUsd:s.balanceFormatted*r}})}const Dr=new Set(["cbtc","btc","wbtc","wcbtc","tbtc"]),Nr=new Set(["usdc","usdt","dai","usdc.e","usdbc"]);async function Wr(){const t=(await eo(["BTC"])).BTC;if(!t||t<=0)throw new Error("Failed to fetch BTC/USD price");return t}function Ur(t){return Dr.has(t.toLowerCase())}function Lr(t){return Nr.has(t.toLowerCase())}function zr(t,n,s,r){const i=10n**12n,l=BigInt(Math.round(r*Number(i))),a=n-s,c=10n**BigInt(Math.abs(a));let d=t*l/i;return a>0?d=d/c:a<0&&(d=d*c),d}var to="data:image/svg+xml,%3csvg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M4.51484 1.22476C5.04689 0.494255 5.87167 0 6.83333 0C7.79352 0 8.62302 0.493038 9.15721 1.22447C10.0512 1.08473 10.9879 1.32154 11.6665 2.00014C12.3456 2.67921 12.5823 3.61677 12.4419 4.51135C13.1714 5.04616 13.6667 5.87042 13.6667 6.83333C13.6667 7.79624 13.1714 8.62051 12.4419 9.15532C12.5823 10.0499 12.3456 10.9875 11.6665 11.6665C10.986 12.3471 10.049 12.5769 9.15858 12.4403C8.62445 13.1728 7.79434 13.6667 6.83333 13.6667C5.86959 13.6667 5.04474 13.1705 4.50996 12.44C3.619 12.5772 2.68116 12.3475 2.00014 11.6665C1.31939 10.9858 1.08903 10.0476 1.23037 9.15532C0.501138 8.62162 0 7.79824 0 6.83333C0 5.86843 0.501137 5.04504 1.23037 4.51135C1.08903 3.61904 1.31939 2.68089 2.00014 2.00014C2.67986 1.32042 3.61766 1.08457 4.51484 1.22476ZM9.20928 5.95387C9.51334 5.74624 9.59152 5.33144 9.38389 5.02737C9.17626 4.72331 8.76145 4.64514 8.45739 4.85277L8.3995 4.89229C7.48372 5.51764 6.69012 6.30153 6.05487 7.20477L5.30449 6.45518C5.044 6.19497 4.62189 6.1952 4.36168 6.45569C4.10147 6.71618 4.10169 7.13829 4.36218 7.3985L5.7 8.73489C5.84693 8.88167 6.05387 8.95158 6.25971 8.924C6.46555 8.89641 6.64677 8.77448 6.74987 8.5942C7.34322 7.55668 8.16436 6.6674 9.1514 5.9934L9.20928 5.95387Z' fill='%23EA4B4B'/%3e%3c/svg%3e",Pr="data:image/png;base64,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",Or="data:image/png;base64,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";const Hr=({size:t=20,active:n=!1,dark:s=!1})=>e.jsxs("svg",{width:t,height:t,viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[e.jsx("rect",{x:"2",y:"4",width:"16",height:"2",rx:"1",fill:n?s?"#e5e7eb":"#111827":s?"#9ca3af":"#374151"}),e.jsx("rect",{x:"4",y:"9",width:"12",height:"2",rx:"1",fill:n?s?"#e5e7eb":"#111827":"#9ca3af"}),e.jsx("rect",{x:"6",y:"14",width:"8",height:"2",rx:"1",fill:n?s?"#e5e7eb":"#111827":"#9ca3af"})]}),no=({checked:t,primaryColor:n="#ef4444",dark:s=!1})=>e.jsx("div",{style:{width:"18px",height:"18px",borderRadius:"4px",border:t?"none":`2px solid ${s?"#4b5563":"#d1d5db"}`,backgroundColor:t?n:"transparent",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0,transition:"all 0.15s ease"},children:t&&e.jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:e.jsx("path",{d:"M2.5 6L5 8.5L9.5 3.5",stroke:"white",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}),Vr=({isOpen:t,onClose:n,onTokenSelect:s,walletAddress:r,supportedChainIds:i,network:l,prefetchedAssets:a,styles:c,dark:d,allowedTokens:p})=>{const[u,f]=o.useState(""),[g,h]=o.useState(null),[y,w]=o.useState(null),[x,k]=o.useState(!1),[U,v]=o.useState(new Set),[b,B]=o.useState([]),T=o.useRef(null),W=o.useContext(Y.SpiceFlowProviderContext),E=l||W?.network||"testnet",{dark:I,primaryColor:C,dk:P}=Y.useSpiceBrand(c,d),J=I?P.inputBg:"#FAFAFA",K=I?P.inputBorder:"#e5e7eb",j=I?P.inputText:"#374151",M=I?P.inputPlaceholder:"#9ca3af",ne=I?P.cardBg:"white",$=I?`${C}55`:"#F4A5A5",L=I?"0 4px 12px rgba(0, 0, 0, 0.4)":"0 4px 12px rgba(0, 0, 0, 0.15)",Q=I?P.hoverBg:"#E9E9E9",se=I?P.hoverBg:"#f9fafb",ae=I?P.textPrimary:"#374151",S=I?P.textPrimary:"#111827",z=I?P.textSecondary:"#9ca3af",ie=I?`${C}22`:"#FBDBDB",me=I?`${C}55`:"#F4A5A5",re=o.useMemo(()=>i||W?.supportedChainIds||V.getChainIdsByNetwork(E),[i,W?.supportedChainIds,E]),xe=o.useMemo(()=>re.map(Z=>{const R=q.getChainConfig(Z);return R?{id:Z,name:R.displayName,icon:cn[Z]||yn}:null}).filter(Boolean),[re]),le=o.useMemo(()=>{const Z=new Set,R=new Set;for(const N of re){const X=q.getChainConfig(N);if(X){Z.add(X.nativeCurrency?.symbol?.toUpperCase()||"ETH");for(const fe of X.supportedTokens||[])Z.add(fe.symbol.toUpperCase()),R.add(fe.address.toLowerCase())}}return{symbols:Z,addresses:R}},[re]),Pe=a===void 0,{assets:ke,loading:Be}=ys({address:Pe?r:void 0,supportedChains:re,fetchBalances:gs,refreshInterval:t?5e3:0}),ve=a??(Pe?ke:[]),Ue=a===null||Pe&&Be,Te=o.useMemo(()=>{if(!ve)return[];let Z=ve.filter(R=>R.isNative?!0:le.symbols.has(R.symbol.toUpperCase())||le.addresses.has(R.address.toLowerCase()));return p&&p.length>0&&(Z=Z.filter(R=>p.includes(R.symbol.toLowerCase())||R.isNative&&p.includes("native"))),Z},[ve,le,p]);o.useEffect(()=>{if(!Te||Te.length===0){B([]);return}const Z=Te.filter(X=>X.balanceUsd===0&&X.balanceFormatted>0).map(X=>X.symbol),R=Array.from(new Set(Z));if(R.length===0){B(Te);return}let N=!1;return eo(R).then(X=>{N||B(Mr(Te,X))}),()=>{N=!0}},[Te]);const ye=o.useMemo(()=>{let Z=b.filter(R=>R.balanceUsd>=.01||R.balanceFormatted>=1e-4||R.balanceFormatted===0);if(U.size>0&&(Z=Z.filter(R=>U.has(R.chainId))),u.trim()){const R=u.toLowerCase();Z=Z.filter(N=>N.name.toLowerCase().includes(R)||N.symbol.toLowerCase().includes(R)||N.address.toLowerCase().includes(R))}return Z.sort((R,N)=>{const X=R.balanceFormatted>0?1:0,fe=N.balanceFormatted>0?1:0;return fe!==X?fe-X:N.balanceUsd!==R.balanceUsd?N.balanceUsd-R.balanceUsd:N.balanceFormatted-R.balanceFormatted}),Z},[b,u,U]),Je=Z=>`${Z.chainId}-${Z.address}`;o.useEffect(()=>{const Z=document.createElement("link");return Z.href="https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@100;200;300;400;500;600;700&display=swap",Z.rel="stylesheet",document.head.appendChild(Z),()=>{document.head.removeChild(Z)}},[]),o.useEffect(()=>{t||(f(""),h(null),k(!1),v(new Set))},[t]),o.useEffect(()=>{if(!x)return;const Z=R=>{T.current&&!T.current.contains(R.target)&&k(!1)};return document.addEventListener("mousedown",Z),()=>document.removeEventListener("mousedown",Z)},[x]);const ze=Z=>{s(Z)},ue=Z=>{v(R=>{const N=new Set(R);return N.has(Z)?N.delete(Z):N.add(Z),N})},Ve=()=>{v(new Set)},st=U.size===0;return e.jsxs(on,{isOpen:t,onClose:n,title:"Select a Token",bannerSrc:Or,bannerAlt:"Select token banner",styles:c,dark:I,children:[e.jsx("div",{style:{padding:"20px 20px"},children:e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",backgroundColor:J,borderRadius:"10px",boxShadow:I?"0 2px 4px rgba(0, 0, 0, 0.3)":"0 2px 4px rgba(0, 0, 0, 0.1)",padding:"7px 5px",border:`1px solid ${K}`},children:[e.jsx(Yn.Search,{style:{color:M},size:24}),e.jsx("input",{type:"text",placeholder:"Search token name, symbol or address",value:u,onChange:Z=>f(Z.target.value),style:{flex:1,backgroundColor:J,outline:"none",border:"none",color:j,fontSize:"15px",fontWeight:"400"}}),e.jsxs("div",{ref:T,style:{position:"relative",flexShrink:0},children:[e.jsx("button",{onClick:()=>k(Z=>!Z),style:{display:"flex",alignItems:"center",justifyContent:"center",padding:"5px",borderRadius:"3px",backgroundColor:x||!st?Q:"transparent",border:"none",cursor:"pointer",transition:"background-color 0.15s"},children:e.jsx(Hr,{size:20,active:!st,dark:I})}),x&&e.jsxs("div",{style:{position:"absolute",top:"calc(100% + 8px)",right:0,backgroundColor:ne,borderRadius:"8px",border:`1px solid ${$}`,boxShadow:L,padding:"8px",minWidth:"220px",zIndex:100},children:[e.jsxs("button",{onClick:Ve,style:{width:"100%",display:"flex",alignItems:"center",gap:"10px",padding:"8px",borderRadius:"6px",backgroundColor:"transparent",border:"none",cursor:"pointer",transition:"background-color 0.15s"},onMouseEnter:Z=>Z.currentTarget.style.backgroundColor=se,onMouseLeave:Z=>Z.currentTarget.style.backgroundColor="transparent",children:[e.jsx(no,{checked:st,primaryColor:C,dark:I}),e.jsx("img",{src:Pr,alt:"All Networks",style:{width:"20px",height:"20px",borderRadius:"4px",objectFit:"cover"}}),e.jsx("span",{style:{fontFamily:'"IBM Plex Mono", monospace',fontSize:"12px",fontWeight:600,letterSpacing:"0.5px",color:ae},children:"ALL NETWORKS"})]}),xe.map(Z=>e.jsxs("button",{onClick:()=>ue(Z.id),style:{width:"100%",display:"flex",alignItems:"center",gap:"10px",padding:"8px",borderRadius:"6px",backgroundColor:"transparent",border:"none",cursor:"pointer",transition:"background-color 0.15s"},onMouseEnter:R=>R.currentTarget.style.backgroundColor=se,onMouseLeave:R=>R.currentTarget.style.backgroundColor="transparent",children:[e.jsx(no,{checked:U.has(Z.id),primaryColor:C,dark:I}),e.jsx("img",{src:Z.icon,alt:Z.name,style:{width:"20px",height:"20px",borderRadius:"50%"}}),e.jsx("span",{style:{fontFamily:'"IBM Plex Mono", monospace',fontSize:"12px",fontWeight:600,letterSpacing:"0.5px",color:ae},children:Z.name.toUpperCase()})]},Z.id))]})]})]})}),e.jsxs("div",{style:{padding:"0 32px 20px",display:"flex",flexDirection:"column",gap:"8px",maxHeight:"400px",overflowY:"auto"},children:[Ue&&e.jsx("div",{style:{padding:"24px 8px",textAlign:"center",fontFamily:'"IBM Plex Mono", monospace',fontSize:"13px",color:z},children:"Loading balances..."}),!Ue&&ye.length===0&&e.jsx("div",{style:{padding:"24px 8px",textAlign:"center",fontFamily:'"IBM Plex Mono", monospace',fontSize:"13px",color:z},children:"No tokens found"}),ye.map(Z=>{const R=Je(Z),N=g===R,X=y===R,fe=q.getChainConfig(Z.chainId)?.displayName||`Chain ${Z.chainId}`;return e.jsxs("button",{onClick:()=>ze(Z),onMouseEnter:()=>w(R),onMouseLeave:()=>w(null),style:{width:"100%",display:"flex",alignItems:"center",gap:"16px",padding:"8px",borderRadius:"8px",backgroundColor:N?ie:"transparent",border:N||X?`1px solid ${me}`:"1px solid transparent",cursor:"pointer",transition:"all 0.2s"},children:[e.jsx("div",{style:{flexShrink:0},children:e.jsx(xn,{symbol:Z.symbol,logoURI:Z.logoURI,size:40})}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"flex-start",gap:"2px",flex:1,minWidth:0},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px"},children:[e.jsx("span",{style:{fontFamily:'"IBM Plex Mono", monospace',fontSize:"15px",fontWeight:500,letterSpacing:"0.4px",color:S,textAlign:"left"},children:Z.name}),e.jsx("img",{src:to,alt:"Verified",style:{width:"14px",height:"14px"}})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"4px"},children:[cn[Z.chainId]&&e.jsx("img",{src:cn[Z.chainId],alt:"",style:{width:"14px",height:"14px",borderRadius:"50%"}}),e.jsxs("span",{style:{fontFamily:'"IBM Plex Mono", monospace',fontSize:"12px",fontWeight:400,color:z,textAlign:"left"},children:[Z.symbol," \xB7 ",fe]})]})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"flex-end",gap:"2px",flexShrink:0},children:[Z.balanceUsd>0&&e.jsx("span",{style:{fontFamily:'"IBM Plex Mono", monospace',fontSize:"16px",fontWeight:600,color:S},children:Bn(Z.balanceUsd)}),e.jsxs("span",{style:{fontFamily:'"IBM Plex Mono", monospace',fontSize:"12px",fontWeight:400,color:z},children:[kn(Z.balanceFormatted)," ",Z.symbol]})]})]},R)})]})]})};var Qr="data:image/png;base64,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";const so=t=>{const n=(t.id||"").toLowerCase(),s=(t.name||"").toLowerCase();return n.startsWith("io.privy.wallet")||s.includes("privy wallet")},Kr=({dark:t,dk:n,primaryColor:s,disabled:r,onError:i})=>{const[l,a]=o.useState(!1),{connectWallet:c}=en.useConnectWallet({onSuccess:()=>{a(!1)},onError:d=>{a(!1),i(Xt(d,"Failed to connect wallet."))}});return e.jsxs("button",{onClick:()=>{r||l||(a(!0),c({walletChainType:"ethereum-only"}))},disabled:r||l,style:{width:"100%",display:"flex",alignItems:"center",gap:"14px",padding:"10px",borderRadius:"8px",backgroundColor:l?t?n.hoverBg:"#f3f4f6":"transparent",border:`2px solid ${t?`${s}33`:`${s}55`}`,cursor:r||l?"not-allowed":"pointer",opacity:r?.6:1,transition:"all 0.2s"},children:[e.jsx("div",{style:{width:"40px",height:"40px",borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:t?n.cardBg:"#f3f4f6"},children:e.jsx("img",{src:Wn.metamask,alt:"Browser wallet",style:{width:"26px",height:"26px",objectFit:"contain"}})}),e.jsx("span",{className:"ibm-plex-mono",style:{fontSize:"17px",fontWeight:500,letterSpacing:"0.4px",color:t?n.textPrimary:"#111827",flex:1,textAlign:"left",fontFamily:'"IBM Plex Mono", monospace'},children:l?"Opening wallet picker...":"MetaMask / Browser Wallet"})]})},qr=({isOpen:t,onClose:n,onWalletSelect:s,onContinue:r,requiredChainId:i,styles:l})=>{const{dark:a,primaryColor:c,dk:d,theme:p}=Y.useSpiceBrand(l),u=o.useContext(Y.SpiceFlowProviderContext),[f,g]=o.useState(null),[h,y]=o.useState(!1),[w,x]=o.useState(null),[k,U]=o.useState(!1),[v,b]=o.useState(null),[B,T]=o.useState("idle"),[W,E]=o.useState(null),[I,C]=o.useState(!1),[P,J]=o.useState(!1),[K,j]=o.useState(!1),[M,ne]=o.useState(!1);o.useEffect(()=>{t||(x(null),U(!1),y(!1),b(null),C(!1))},[t]);const{address:$,chain:L,connector:Q,isConnected:se}=ht.useAccount(),ae=$,S=se&&!!ae,{connectors:z,connect:ie}=ht.useConnect(),{disconnect:me}=ht.useDisconnect(),{switchChainAsync:re}=ht.useSwitchChain(),{reconnect:xe}=ht.useReconnect(),le=o.useRef(new Map),Pe=o.useRef(!1),ke=V.getChainIdsByNetwork(u?.network||"testnet");o.useEffect(()=>{t&&!S&&!Pe.current&&xe()},[t,S,xe]),o.useEffect(()=>{t||(Pe.current=!1)},[t]);const Be=o.useCallback(async D=>{if(le.current.has(D)){const oe=le.current.get(D);T(oe?"eligible":"ineligible"),C(!oe);return}T("checking"),E(null);try{const oe=await fetch(`https://portal-api.spicenet.io/api/v1/devnet/eligibility/admin?address=${D}`,{method:"GET",headers:{"Content-Type":"application/json","X-Api-Key":"c1820ce3-48ef-497d-8f17-ea80d0b4a608"}});if(!oe.ok)throw new Error(`Eligibility check failed with status ${oe.status}`);const he=(await oe.json())?.isEligible||!1;le.current.set(D,he),T(he?"eligible":"ineligible"),C(!he)}catch(oe){console.error("Eligibility check failed:",oe),T("error"),E("Could not verify eligibility. Please retry.")}},[]);o.useEffect(()=>{t&&S&&ae&&T("eligible")},[t,S,ae,Be]);const ve=o.useRef(L);o.useEffect(()=>{ve.current=L},[L]);const Ue=i?q.getChainConfig(i):null,Te=i?cn[i]||yn:L?.id&&cn[L.id]||yn,ye=Ue?.displayName||L?.name||`Chain ${L?.id||i}`,Je=L?.id?cn[L.id]||yn:Te,ze=L?.name?L.name:L?.id?`Chain ${L.id}`:"Not detected",ue=D=>D.type==="announced"||typeof D.ready=="boolean"&&D.ready?!0:D.type==="injected"?typeof window<"u"&&!!window.ethereum:!0,Ve=z.filter(D=>{const oe=D.name.toLowerCase(),he=(D.id||"").toLowerCase();return u?.provider==="privy"&&so(D)||["safe"].includes(D.type)?!1:D.type==="walletConnect"?!!D?.options?.projectId:D.type==="announced"?!0:D.type==="injected"||["metamask","rabby","phantom","coinbase","trust","rainbow"].some(pe=>oe.includes(pe)||he.includes(pe))?ue(D):!1}),st=async D=>{if(!(k||h))try{if(U(!0),b(D.uid),x(null),await ie({connector:D}),await new Promise(oe=>setTimeout(oe,500)),s&&s(D.id),i){y(!0);try{if(L?.id!==i){await re({chainId:i});let oe=0;const he=20;for(;oe<he;){if(await new Promise(pe=>setTimeout(pe,100)),ve.current?.id===i){x(null);break}oe++}ve.current?.id!==i&&x("Please switch to the correct network in your wallet to continue.")}}catch(oe){console.error("Chain switch error:",oe),oe.code===4902||oe.name==="ChainNotConfiguredError"?x("This network is not configured in your wallet. Please add it manually to continue."):oe.code===4001?x("Network switch cancelled. Please switch manually in your wallet to continue."):x("Unable to switch network. Please switch manually in your wallet to continue.")}finally{y(!1)}}await new Promise(oe=>setTimeout(oe,800)),ae&&T("eligible")}catch(oe){console.error("Connection error:",oe),sr(oe)?x("Connection rejected. Please try again."):x(Xt(oe,"Failed to connect wallet."))}finally{U(!1),b(null)}},Z=D=>{if(D.icon)return D.icon;const oe=(D.name||"").toLowerCase();for(const[he,pe]of Object.entries(Wn))if(oe.includes(he.toLowerCase()))return pe;if(!so(D)&&(D.type==="injected"||D.type==="announced")&&typeof window<"u"&&window.ethereum){const he=window.ethereum;if(he.isMetaMask)return Wn.metamask;if(he.isRabby)return Wn.rabby;if(he.isPhantom)return Wn.phantom}return null},R=async D=>{if(!h){y(!0),x(null),ne(!1);try{await re({chainId:D});let oe=0;const he=20;for(;oe<he;){if(await new Promise(pe=>setTimeout(pe,100)),ve.current?.id===D){x(null);break}oe++}ve.current?.id!==D&&x("Unable to switch to the correct network. Please switch manually in your wallet to continue.")}catch(oe){console.error("Manual chain switch error:",oe),oe.code===4902||oe.name==="ChainNotConfiguredError"?x("This network is not configured in your wallet. Please add it manually to continue."):oe.code===4001?x("Network switch cancelled. Please switch manually in your wallet to continue."):x("Unable to switch network. Please switch manually in your wallet to continue.")}finally{y(!1)}}},N=async()=>{if(!h){if(!i){ne(D=>!D);return}y(!0),x(null);try{await re({chainId:i});let D=0;const oe=20;for(;D<oe;){if(await new Promise(he=>setTimeout(he,100)),ve.current?.id===i){x(null);break}D++}ve.current?.id!==i&&x("Unable to switch to the correct network. Please switch manually in your wallet to continue.")}catch(D){console.error("Manual chain switch error:",D),D.code===4902||D.name==="ChainNotConfiguredError"?x("This network is not configured in your wallet. Please add it manually to continue."):D.code===4001?x("Network switch cancelled. Please switch manually in your wallet to continue."):x("Unable to switch network. Please switch manually in your wallet to continue.")}finally{y(!1)}}},X=async()=>{Pe.current=!0;try{await me()}finally{le.current.clear(),x(null),U(!1),y(!1),b(null),T("idle"),E(null),C(!1),ne(!1)}},fe=S&&!h&&!k&&B==="eligible"&&(!i||L?.id===i),be=S&&!h&&!k&&B==="eligible"&&i&&L?.id!==i;return e.jsxs(on,{isOpen:t,onClose:n,title:"Connect Wallet",styles:l,dark:a,bannerSrc:Qr,bannerAlt:"Connect wallet banner",children:[i===421614&&!S&&e.jsx("div",{style:{padding:"0 24px",marginTop:"20px"},children:e.jsxs("div",{style:{padding:"12px 16px",backgroundColor:a?d.infoBg:"#EFF6FF",borderRadius:"8px",border:`1px solid ${a?d.infoBorder:"#BFDBFE"}`,display:"flex",alignItems:"center",gap:"10px"},children:[e.jsx("div",{style:{width:"32px",height:"32px",borderRadius:"50%",backgroundColor:a?d.inputBg:"#DBEAFE",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},children:e.jsx("img",{src:ls,alt:"Rabby",style:{width:"20px",height:"20px",objectFit:"contain"}})}),e.jsxs("div",{style:{flex:1},children:[e.jsx("p",{style:{margin:"0 0 4px 0",color:a?d.infoText:"#1E40AF",fontSize:"13px",fontWeight:600},children:"Recommended Wallet"}),e.jsx("p",{style:{margin:0,color:a?d.infoText:"#1E3A8A",fontSize:"12px",lineHeight:"1.4",opacity:a?.85:1},children:"For Arbitrum Sepolia, we recommend using Rabby wallet instead of MetaMask for the best experience."})]})]})}),e.jsxs("div",{style:{padding:"0 24px 20px",display:"flex",flexDirection:"column",gap:"12px",marginTop:"20px"},children:[w&&e.jsxs("div",{style:{padding:"12px",backgroundColor:a?d.warningBg:"#fef3c7",borderRadius:"8px",border:`1px solid ${a?d.warningBorder:"#fde68a"}`},children:[e.jsx("p",{style:{margin:"0 0 10px 0",color:a?d.warningText:"#92400e",fontSize:"14px"},children:w}),e.jsx("button",{onClick:N,disabled:h,style:{width:"100%",padding:"8px 12px",borderRadius:"6px",border:`1px solid ${a?d.warningBorder:"#fbbf24"}`,backgroundColor:a?d.cardBg:"white",cursor:h?"not-allowed":"pointer",fontWeight:600,fontSize:"13px",color:a?d.warningText:"#92400e",opacity:h?.6:1},children:h?"Switching...":"Try Switch Again"})]}),h&&e.jsxs("div",{style:{padding:"12px",backgroundColor:a?d.infoBg:"#dbeafe",borderRadius:"8px",display:"flex",alignItems:"center",gap:"10px",marginTop:"20px"},children:[e.jsx(Ze.Spinner,{size:20,color:a?d.infoText:"#3b82f6"}),e.jsx("p",{style:{margin:0,color:a?d.infoText:"#1e40af",fontSize:"14px"},children:"Switching network..."})]}),S&&B==="checking"&&e.jsx("div",{style:{padding:"12px",backgroundColor:a?d.warningBg:"#fef3c7",borderRadius:"8px",border:`1px solid ${a?d.warningBorder:"#fde68a"}`},children:e.jsxs("p",{style:{margin:0,color:a?d.warningText:"#92400e",fontSize:"14px"},children:["Checking eligibility for ",ae?.slice(0,6),"..."]})}),S&&B==="error"&&e.jsxs("div",{style:{padding:"12px",backgroundColor:a?d.errorBg:"#fef2f2",borderRadius:"8px",border:`1px solid ${a?d.errorBorder:"#fecdd3"}`},children:[e.jsx("p",{style:{margin:0,color:a?d.errorText:"#b91c1c",fontSize:"14px"},children:W||"Eligibility check failed. Please try again."}),e.jsx("button",{onClick:()=>ae&&Be(ae),style:{marginTop:"10px",padding:"8px 12px",borderRadius:"6px",border:`1px solid ${a?d.errorBorder:"#e5e7eb"}`,backgroundColor:a?d.cardBg:"white",cursor:"pointer",fontWeight:600,color:a?d.errorText:"inherit"},children:"Retry eligibility check"})]}),S&&i===421614&&Q&&(Q.name.toLowerCase().includes("metamask")||Q.type==="injected")&&e.jsxs("div",{style:{padding:"12px 16px",backgroundColor:a?d.infoBg:"#EFF6FF",borderRadius:"8px",border:`1px solid ${a?d.infoBorder:"#BFDBFE"}`,display:"flex",alignItems:"center",gap:"10px"},children:[e.jsx("div",{style:{width:"32px",height:"32px",borderRadius:"50%",backgroundColor:a?d.inputBg:"#DBEAFE",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},children:e.jsx("img",{src:ls,alt:"Rabby",style:{width:"20px",height:"20px",objectFit:"contain"}})}),e.jsxs("div",{style:{flex:1},children:[e.jsx("p",{style:{margin:"0 0 4px 0",color:a?d.infoText:"#1E40AF",fontSize:"13px",fontWeight:600},children:"Recommended Wallet"}),e.jsx("p",{style:{margin:0,color:a?d.infoText:"#1E3A8A",fontSize:"12px",lineHeight:"1.4",opacity:a?.85:1},children:"For Arbitrum Sepolia, we recommend using Rabby wallet instead of MetaMask for the best experience."})]})]}),S&&ae?e.jsxs("div",{style:{border:`1px solid ${a?d.successBorder:"#02974F"}`,borderRadius:"8px",overflow:"hidden",marginTop:"20px"},children:[e.jsxs("div",{style:{backgroundColor:a?d.successBg:"#00FFA81C",padding:"14px 18px",display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[e.jsx("div",{style:{width:"22px",height:"22px",borderRadius:"50%",backgroundColor:"#02974F",display:"flex",alignItems:"center",justifyContent:"center",color:"white",fontSize:"14px",fontWeight:"bold"},children:"\u2713"}),e.jsx("span",{className:"ibm-plex-mono",style:{color:a?d.successText:"#02974F",fontWeight:600,fontSize:"14px",letterSpacing:"0.5px"},children:"WALLET CONNECTED"})]}),e.jsx("div",{style:{width:"38px",height:"38px",borderRadius:"50%",backgroundColor:a?d.cardBg:"#f3f4f6",display:"flex",alignItems:"center",justifyContent:"center",overflow:"hidden"},children:Q&&Z(Q)?e.jsx("img",{src:Z(Q),alt:Q.name,style:{width:"24px",height:"24px",objectFit:"contain"}}):e.jsx("span",{style:{fontSize:"16px",fontWeight:"bold",color:a?d.textPrimary:"inherit"},children:Q?.name?.charAt(0)||"W"})})]}),e.jsxs("div",{style:{padding:"18px",backgroundColor:a?d.cardBg:"white"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:"14px"},children:[e.jsx("span",{className:"ibm-plex-mono",style:{color:a?d.textSecondary:"#939291",fontSize:"13px",fontWeight:500,letterSpacing:"0.3px"},children:"ADDRESS:"}),e.jsxs("span",{className:"ibm-plex-mono",style:{color:a?d.textPrimary:"black",fontSize:"14px",fontWeight:600,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.3px"},children:[ae.slice(0,6),"...",ae.slice(-4)]})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:"16px"},children:[e.jsx("span",{className:"ibm-plex-mono",style:{color:a?d.textSecondary:"#939291",fontSize:"13px",fontWeight:500,letterSpacing:"0.3px"},children:"NETWORK:"}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px"},children:[e.jsx("img",{src:Je,alt:ze,style:{width:"20px",height:"20px",borderRadius:"50%",objectFit:"contain"}}),e.jsx("span",{style:{color:a?d.textPrimary:"black",fontSize:"14px",fontWeight:500},children:ze}),i&&L?.id===i?e.jsx("div",{style:{width:"16px",height:"16px",borderRadius:"50%",backgroundColor:"#02974F",display:"flex",alignItems:"center",justifyContent:"center",color:"white",fontSize:"10px",fontWeight:"bold"},children:"\u2713"}):i?e.jsx("div",{style:{width:"16px",height:"16px",borderRadius:"50%",backgroundColor:"#EF4444",display:"flex",alignItems:"center",justifyContent:"center",color:"white",fontSize:"10px",fontWeight:"bold"},children:"!"}):null,e.jsx("button",{onClick:N,disabled:h,style:{background:"none",border:"none",color:a?c:"#3C3E42",fontSize:"11px",fontWeight:500,textDecoration:"underline",cursor:h?"not-allowed":"pointer",padding:0,marginLeft:"4px",opacity:h?.6:1},children:h?"Switching...":"Switch"})]})]}),M&&e.jsx("div",{style:{marginBottom:"12px",border:`1px solid ${a?d.inputBorder:"#E5E7EB"}`,borderRadius:"8px",overflow:"hidden",backgroundColor:a?d.cardBg:"#f9fafb"},children:ke.map(D=>{const oe=q.getChainConfig(D);if(!oe)return null;const he=L?.id===D;return e.jsxs("button",{onClick:()=>{he?ne(!1):R(D)},style:{width:"100%",display:"flex",alignItems:"center",gap:"8px",padding:"10px 12px",backgroundColor:he?a?`${c}15`:`${c}10`:"transparent",border:"none",borderBottom:`1px solid ${a?d.inputBorder:"#E5E7EB"}`,cursor:he?"default":"pointer",transition:"background-color 0.15s"},onMouseEnter:pe=>{he||(pe.currentTarget.style.backgroundColor=a?"rgba(255,255,255,0.05)":"rgba(0,0,0,0.03)")},onMouseLeave:pe=>{pe.currentTarget.style.backgroundColor=he?a?`${c}15`:`${c}10`:"transparent"},children:[e.jsx("img",{src:cn[D]||yn,alt:oe.displayName,style:{width:"20px",height:"20px",borderRadius:"50%",objectFit:"contain"}}),e.jsx("span",{style:{fontSize:"13px",fontWeight:he?600:400,color:a?d.textPrimary:"#1f2937",fontFamily:'"IBM Plex Mono", monospace'},children:oe.displayName}),he&&e.jsx("span",{style:{marginLeft:"auto",fontSize:"11px",color:c,fontWeight:500},children:"Connected"})]},D)})}),e.jsxs("button",{className:"ibm-plex-mono",onClick:X,style:{width:"100%",padding:"10px",backgroundColor:"transparent",border:`1px solid ${a?d.inputBorder:"#E5E7EB"}`,borderRadius:"6px",cursor:"pointer",fontSize:"13px",fontWeight:500,color:a?d.textSecondary:"#9CA3AF",display:"flex",alignItems:"center",justifyContent:"center",gap:"6px"},children:[e.jsx("span",{style:{fontSize:"16px"},children:"\u27F2"}),"DISCONNECT"]})]})]}):e.jsxs(e.Fragment,{children:[u?.provider==="privy"&&e.jsx(Kr,{dark:a,dk:d,primaryColor:c,disabled:k||h,onError:x}),Ve.map(D=>{const oe=ue(D),he=v===D.uid,pe=!oe||k||he;return e.jsxs("button",{onClick:()=>{pe||st(D)},onMouseEnter:()=>!pe&&g(D.uid),onMouseLeave:()=>g(null),disabled:pe,style:{width:"100%",display:"flex",alignItems:"center",gap:"14px",padding:"10px",borderRadius:"8px",backgroundColor:he?a?d.hoverBg:"#f3f4f6":"transparent",border:f===D.uid&&!pe?`2px solid ${a?`${c}44`:`${c}66`}`:"2px solid transparent",cursor:pe?"not-allowed":"pointer",opacity:pe?.6:1,transition:"all 0.2s"},children:[e.jsx("div",{style:{width:"40px",height:"40px",borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:a?d.cardBg:"#f3f4f6"},children:Z(D)?e.jsx("img",{src:Z(D),alt:D.name,style:{width:"26px",height:"26px",objectFit:"contain"}}):e.jsx("span",{style:{fontSize:"16px",fontWeight:"bold",color:a?d.textPrimary:"inherit"},children:D.name.charAt(0)})}),e.jsxs("span",{className:"ibm-plex-mono",style:{fontSize:"17px",fontWeight:500,letterSpacing:"0.4px",color:pe?a?d.inputPlaceholder:"#9ca3af":a?d.textPrimary:"#111827",flex:1,textAlign:"left",fontFamily:'"IBM Plex Mono", monospace'},children:[he?"Connecting...":D.name,!oe&&!he&&e.jsx("span",{style:{fontSize:"12px",marginLeft:"8px"},children:"(Not detected)"})]})]},D.uid)})]})]}),be&&!w&&e.jsx("div",{style:{padding:"0 24px 20px"},children:e.jsxs("div",{style:{padding:"12px",backgroundColor:a?d.warningBg:"#fef3c7",borderRadius:"8px",border:`1px solid ${a?d.warningBorder:"#fde68a"}`},children:[e.jsxs("p",{style:{margin:"0 0 10px 0",color:a?d.warningText:"#92400e",fontSize:"14px"},children:["Please switch to ",ye," to continue."]}),e.jsx("button",{onClick:N,disabled:h,style:{width:"100%",padding:"8px 12px",borderRadius:"6px",border:`1px solid ${a?d.warningBorder:"#fbbf24"}`,backgroundColor:a?d.cardBg:"white",cursor:h?"not-allowed":"pointer",fontWeight:600,fontSize:"13px",color:a?d.warningText:"#92400e",opacity:h?.6:1},children:h?"Switching...":"Switch Network"})]})}),e.jsx("div",{style:{padding:"0 24px 25px"},children:(()=>{const D=!fe,oe=K?`${c}cc`:P?`${c}ee`:c;return e.jsx(Ze.Button,{variant:"outline",fullWidth:!0,onClick:async()=>{fe&&(await new Promise(he=>setTimeout(he,300)),r?await r():n())},disabled:D,theme:p,onMouseEnter:()=>J(!0),onMouseLeave:()=>{J(!1),j(!1)},onMouseDown:()=>j(!0),onMouseUp:()=>j(!1),style:{height:"56px",backgroundColor:D?l?.button?.disabledBackgroundColor??`${c}88`:oe,color:l?.button?.color||(a?d.textPrimary:"#0e0d0b"),border:`1.5px solid ${a?`${c}88`:"#0e0d0b"}`,fontSize:"20px",fontWeight:600,letterSpacing:"1.5px",fontFamily:'"IBM Plex Mono", monospace',transition:"all 150ms ease",transform:D?"none":K?"scale(0.98)":P?"translateY(-2px)":"none",boxShadow:K?`2px 2px 0px ${a?c:"#0e0d0b"}`:P&&!D?`5px 5px 0px ${d.shell}, 6px 6px 0px ${a?`${c}88`:"#0e0d0b"}`:`3px 3px 0px ${d.shell}, 4px 4px 0px ${a?`${c}88`:"#0e0d0b"}`,cursor:D?"not-allowed":"pointer",opacity:D?.78:1,borderRadius:"12px"},children:k?"CONNECTING...":h?"SWITCHING NETWORK...":B==="checking"?"CHECKING ELIGIBILITY...":"CONTINUE"})})()}),I&&e.jsx("div",{style:{position:"fixed",inset:0,backgroundColor:a?"rgba(0, 0, 0, 0.72)":"rgba(0, 0, 0, 0.55)",display:"flex",alignItems:"center",justifyContent:"center",padding:"16px",zIndex:60},children:e.jsxs("div",{style:{backgroundColor:a?d.cardBg:"white",borderRadius:"12px",padding:"28px",width:"100%",maxWidth:"420px",textAlign:"center",boxShadow:"0 20px 60px rgba(0, 0, 0, 0.18)"},children:[e.jsx("p",{className:"ibm-plex-mono",style:{fontSize:"14px",fontWeight:600,letterSpacing:"0.4px",color:"#EF4444",marginBottom:"10px"},children:"ACCESS BLOCKED"}),e.jsx("h3",{style:{margin:"0 0 12px",fontSize:"22px",fontWeight:600,color:a?d.textPrimary:"inherit"},children:"Sorry, you're not eligible"}),e.jsx("p",{style:{margin:"0 0 18px",color:a?d.textSecondary:"#4B5563"},children:"This wallet does not meet the eligibility requirements to deposit assets."}),e.jsx("button",{onClick:async()=>{le.current.clear(),await X(),n()},style:{width:"100%",padding:"12px",borderRadius:"8px",border:"none",backgroundColor:a?"white":"#111827",color:a?"#111827":"white",fontWeight:600,cursor:"pointer"},children:"Disconnect wallet"})]})})]})},hn=t=>t?.address?{address:t.address,wallet:t,getWalletClient:n=>gn.getProviderWalletClient(t,n),getEthereumProvider:n=>gn.getProviderEthereumProvider(t,n)}:null,zn=()=>{const t=o.useContext(Y.SpiceFlowProviderContext),{address:n,connector:s}=ht.useAccount();let r=null,i=null;try{r=en.useWallets(),{user:i}=en.usePrivy()}catch{r=null,i=null}let l=null;try{l=Dn.useDynamicContext()}catch{l=null}const a=r?.wallets||[],c=en.getEmbeddedConnectedWallet(a),d=c?.address?.toLowerCase(),p=a.find(v=>v.connectorType!=="embedded"&&v.address?.toLowerCase()!==d),u=gn.getDynamicEmbeddedWallet(l),f=gn.getDynamicExternalWallet(l),g=n&&s?{address:n,connector:s,getEthereumProvider:()=>s.getProvider()}:null,h=t?.provider,y=hn(c)||hn(u),w=hn(g)||hn(p)||hn(f)||null,x=h==="dynamic"?hn(u):h==="privy"?hn(c):y,k=h==="dynamic"?hn(g)||hn(f):h==="privy"?hn(g)||hn(p):w,U=h==="dynamic"?x?.address:h==="privy"?x?.address||i?.wallet?.address:y?.address||i?.wallet?.address;return{embeddedWallet:x,externalWallet:k,embeddedAddress:U,externalAddress:k?.address}},oo="spiceflow:pendingDeposit",ts="spiceflow:pendingDepositChanged";function ro(t,n,s){return`${oo}:${t.toLowerCase()}:${n}:${s.toLowerCase()}`}function bs(){try{const t="__spiceflow_storage_test__";return localStorage.setItem(t,"1"),localStorage.removeItem(t),!0}catch{return!1}}function Yr(t){if(!bs())return;const n=ro(t.embeddedWalletAddress,t.chainId,t.tokenAddress);try{localStorage.setItem(n,JSON.stringify(t)),window.dispatchEvent(new Event(ts))}catch(s){console.error("[pendingDeposit] Failed to save:",s)}}function Zr(t){if(!bs())return[];const n=`${oo}:${t.toLowerCase()}:`,s=[],r=Date.now();for(let i=0;i<localStorage.length;i++){const l=localStorage.key(i);if(!(!l||!l.startsWith(n)))try{const a=localStorage.getItem(l);if(!a)continue;const c=JSON.parse(a);if(r-c.timestamp>6048e5){localStorage.removeItem(l);continue}s.push(c)}catch{localStorage.removeItem(l)}}return s}function Cs(t,n,s){if(!bs())return;const r=ro(t,n,s);localStorage.removeItem(r),window.dispatchEvent(new Event(ts))}var ao="data:image/svg+xml,%3csvg width='10' height='10' viewBox='0 0 10 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M5 4.99995V6.99995M5 3.31245V3.31189M9.5 5C9.5 7.48528 7.48528 9.5 5 9.5C2.51472 9.5 0.5 7.48528 0.5 5C0.5 2.51472 2.51472 0.5 5 0.5C7.48528 0.5 9.5 2.51472 9.5 5Z' stroke='black' stroke-opacity='0.4' stroke-linecap='round' stroke-linejoin='round'/%3e%3c/svg%3e";const Xr=({isOpen:t,onClose:n,onConfirm:s,data:r,isExecuting:i=!1,error:l=null,theme:a,styles:c,intentStatus:d,postDepositStatus:p="idle",hasPostDepositInstruction:u=!1})=>{const{dark:f,dk:g,theme:h}=Y.useSpiceBrand(c),[y,w]=o.useState(!1),[x,k]=o.useState(!0);o.useEffect(()=>{t||w(!1)},[t]);const U=()=>{w(!0),setTimeout(()=>{n()},300)},v=()=>{k(!x)};if(!t||!r)return null;const b=d?.overallStatus==="processing",B=d?.overallStatus==="success",T=!!d,W=!T&&u,E=W&&p==="executing",I=W&&p==="success",C=B&&u&&(p==="idle"||p==="executing")||E,P=B&&(!u||p==="success"||p==="error")||I||W&&p==="error",J=f?g.cardBg:"#ffffff",K=f?"0 -4px 20px rgba(0, 0, 0, 0.4)":"0 -4px 20px rgba(0, 0, 0, 0.15)",j=f?g.textSecondary:"#6b7280",M=f?g.textPrimary:"#1f2937",ne=f?g.textPrimary:"#1f2937";return e.jsxs("div",{style:{position:"absolute",bottom:0,left:0,right:0,zIndex:10,animation:y?"slideDown 0.3s ease-in":"slideUp 0.3s ease-out",pointerEvents:"auto"},children:[e.jsxs("div",{style:{backgroundColor:J,borderRadius:"0",width:"100%",maxWidth:"522px",margin:"0 auto",padding:"18px 24px",boxShadow:K},children:[!B&&!I&&e.jsxs(e.Fragment,{children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:a.spacing.md},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",cursor:"pointer"},onClick:v,children:[e.jsx("span",{style:{fontSize:"13px",fontWeight:a.typography.fontWeight.medium,color:j,fontFamily:c?.fontFamily||a.typography.fontFamily},children:"Transaction Details"}),e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",style:{transform:x?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.3s ease"},children:e.jsx("path",{d:"M4 6L8 10L12 6",stroke:j,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]}),e.jsx("button",{onClick:$=>{$.stopPropagation(),n()},style:{background:"none",border:"none",cursor:"pointer",padding:"4px",display:"flex",alignItems:"center",justifyContent:"center",color:j,transition:"color 0.2s ease"},onMouseEnter:$=>{$.currentTarget.style.color=ne},onMouseLeave:$=>{$.currentTarget.style.color=j},children:e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",children:e.jsx("path",{d:"M12 4L4 12M4 4L12 12",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})})]}),e.jsxs("div",{style:{marginBottom:a.spacing.lg,display:"flex",flexDirection:"column",gap:a.spacing.md,overflow:"hidden",maxHeight:x?"200px":"0px",opacity:x?1:0,transition:"max-height 0.3s ease, opacity 0.3s ease"},children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsx("span",{style:{fontSize:a.typography.fontSize.sm,fontWeight:500,color:j,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px"},children:"NETWORK"}),e.jsx("span",{style:{fontSize:a.typography.fontSize.sm,fontWeight:500,color:M,fontFamily:'"IBM Plex Mono", monospace'},children:r.network})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsx("span",{style:{fontSize:a.typography.fontSize.sm,fontWeight:500,color:j,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px"},children:"DEPOSITED AMOUNT"}),e.jsx("span",{style:{fontSize:a.typography.fontSize.sm,fontWeight:500,color:a.colors.success,fontFamily:'"IBM Plex Mono", monospace'},children:r.amount})]}),r.creditedAmount&&e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsx("span",{style:{fontSize:a.typography.fontSize.sm,fontWeight:500,color:j,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px"},children:"CREDITED AMOUNT"}),e.jsx("span",{style:{fontSize:a.typography.fontSize.sm,fontWeight:500,color:M,fontFamily:'"IBM Plex Mono", monospace'},children:r.creditedAmount})]}),r.spicenetFee&&e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsx("span",{style:{fontSize:a.typography.fontSize.sm,fontWeight:500,color:j,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px"},children:"SPICENET FEE"}),e.jsx("span",{style:{fontSize:a.typography.fontSize.sm,fontWeight:500,color:M,fontFamily:'"IBM Plex Mono", monospace'},children:r.spicenetFee})]}),r.networkFee&&e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsx("span",{style:{fontSize:a.typography.fontSize.sm,fontWeight:500,color:j,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px"},children:"EST. GAS FEE"}),e.jsx("span",{style:{fontSize:a.typography.fontSize.sm,fontWeight:500,color:M,fontFamily:'"IBM Plex Mono", monospace'},children:r.networkFee})]})]})]}),l&&!T&&e.jsx("div",{style:{marginBottom:a.spacing.md,padding:a.spacing.md,backgroundColor:c?.errorMessage?.backgroundColor||(a.mode==="light"?"#fef2f2":`${a.colors.error}20`),border:`1px solid ${c?.errorMessage?.borderColor||(a.mode==="light"?"#fecaca":a.colors.error)}`,borderRadius:c?.errorMessage?.borderRadius||a.borderRadius.md},children:e.jsx("p",{style:{color:c?.errorMessage?.color||a.colors.error,fontSize:c?.errorMessage?.fontSize||a.typography.fontSize.sm,margin:0,fontFamily:c?.errorMessage?.fontFamily||c?.fontFamily||a.typography.fontFamily},children:l})}),e.jsx(Ze.Button,{onClick:P?U:s,variant:"outline",fullWidth:!0,disabled:i||b||C||E,styles:c,theme:h,children:i||b||E||C?"PROCESSING...":P?"CONTINUE \u2192":"CONFIRM DEPOSIT"}),P&&e.jsx("p",{style:{marginTop:a.spacing.md,marginBottom:0,fontSize:"14px",color:j,textAlign:"center",fontFamily:c?.fontFamily||a.typography.fontFamily},children:"Your funds are now available in your Account"}),e.jsx("div",{style:{marginTop:a.spacing.md,display:"flex",justifyContent:"center",alignItems:"center"},children:e.jsx("img",{src:as,alt:"Powered by SpiceNet",style:{height:"auto",width:"130px",opacity:1,filter:f?"brightness(0) invert(1) opacity(0.7)":"none"}})})]}),e.jsx("style",{children:`
49
+ `})]})};function kr(t,n){switch(t){case"success":return{bg:n.successBg,border:n.successBorder,text:n.successText};case"warning":return{bg:n.warningBg,border:n.warningBorder,text:n.warningText};case"error":return{bg:n.errorBg,border:n.errorBorder,text:n.errorText};case"info":return{bg:n.infoBg,border:n.infoBorder,text:n.infoText}}}const Xs=({variant:t,palette:n,children:s,icon:r,style:a,fontFamily:l})=>{const i=kr(t,n);return e.jsxs("div",{role:"status",style:{backgroundColor:i.bg,border:`1px solid ${i.border}`,borderRadius:"8px",padding:"12px 16px",color:i.text,fontSize:"13px",lineHeight:"1.5",display:"flex",alignItems:"flex-start",gap:"8px",fontFamily:l,...a},children:[r&&e.jsx("span",{style:{flexShrink:0,display:"flex",alignItems:"center"},children:r}),e.jsx("span",{children:s})]})},Sr=60*60,Gs=({depositBatches:t,tokenAddress:n,tokenDecimals:s,tokenTransferAmount:r,supportedChains:a,supportedTokens:l,theme:i="light",styles:d,className:c="",depositInputHook:h,onDepositSuccess:u,onDepositError:f,onTopUp:g,onComplete:p,submitButtonText:y,maxAmount:v,userToSolverTransfers:x,includeWalletAssets:k=!1,destinationTokenAddress:U,walletAssetChainId:S})=>{const{theme:C}=K.useSpiceBrand(d,i==="dark"),I=o.useContext(K.SpiceFlowProviderContext),F=pn(),{isReady:W,isAuthenticated:E,isConnected:B,address:b,provider:R,actions:$}=F,[X,A]=o.useState(null),{assets:O,loading:L,error:ne,hasBalance:_,refetch:j}=An({address:b,supportedChains:a,enabled:B,refetchInterval:3e4}),[oe,he]=o.useState(!1),[w,z]=o.useState(null),[ie,be]=o.useState(!1),se=un(),[we,ae]=o.useState(null);o.useEffect(()=>{if(!k||!U||!se){ae(null);return}let N=!1;const J=async()=>{try{const me=S??I?.nativeChainId??a[0];if(!me)return;const G=Q.getClientForChain(me),H=P.getAddress(U),de=P.getAddress(se),ue=await G.multicall({contracts:[{address:H,abi:P.erc20Abi,functionName:"balanceOf",args:[de]},{address:H,abi:P.erc20Abi,functionName:"decimals",args:[]},{address:H,abi:P.erc20Abi,functionName:"symbol",args:[]},{address:H,abi:P.erc20Abi,functionName:"name",args:[]}]});if(N)return;const tt=ue[0].status==="success"?ue[0].result:0n,ht=ue[1].status==="success"?Number(ue[1].result):18,Je=ue[2].status==="success"?ue[2].result:"TOKEN",mt=ue[3].status==="success"?ue[3].result:Je;if(tt>0n){const Le=parseFloat((Number(tt)/Math.pow(10,ht)).toFixed(6));ae({address:H,name:mt,symbol:Je,decimals:ht,balance:tt,balanceFormatted:Le,balanceUsd:0,logoURI:void 0,isNative:!1,chainId:me})}else ae(null)}catch{N||ae(null)}};J();const xe=setInterval(J,15e3);return()=>{N=!0,clearInterval(xe)}},[k,U,se,a,S]);const Ae=o.useRef(null),{intentStatus:Re,startStatusPolling:Se,clearStatus:je}=hs({checkStepStatus:(N,J)=>K.relayerService.checkStepStatus(N,J),retryStep:async(N,J)=>{const[xe,me]=N.split("/"),G=parseInt(me||"0",10);await K.relayerService.executeStep(xe,G,J,{action:"execute"})},maxRetries:3});o.useEffect(()=>{if(Re?.overallStatus==="success"&&Re.intentId&&Ae.current!==Re.intentId&&X&&b&&Re.steps.find(N=>N.transactionHash)?.transactionHash){if(Ae.current=Re.intentId,P.parseUnits(X.amount||"0",X.asset.decimals)===0n)return;j()}},[Re,b]),o.useEffect(()=>{if(h&&h.assetAmount!==X?.amount&&X){let N=h.assetAmount;v&&N&&parseFloat(N)>parseFloat(v)&&(N=v,h.setAssetAmount(N)),A({...X,amount:N})}},[h?.assetAmount,X,v]),o.useEffect(()=>{if(!h?.selectedAsset)return;const N=h.selectedAsset,J=N.address.toLowerCase(),xe=V.isNativeToken(J),me=O.find(G=>{const H=G.address.toLowerCase();return(xe&&G.isNative||H===J)&&(N.chainId?G.chainId===N.chainId:!0)});me&&A(G=>({asset:me,amount:G?.amount||h.assetAmount||""}))},[h?.selectedAsset,O,h?.assetAmount]);const We=o.useCallback(()=>{z(null)},[]),Ne=N=>{A({asset:N,amount:X?.amount||""}),h?.setSelectedAsset&&h.setSelectedAsset({symbol:N.symbol,address:N.address,decimals:N.decimals,chainId:N.chainId}),We()},ve=o.useCallback(N=>{if(X){let J=N;v&&N!==""&&parseFloat(N)>parseFloat(v)&&(J=v),o.startTransition(()=>{A({...X,amount:J}),We()}),h&&h.setAssetAmount(J)}},[X,h,We,v]),ze=async()=>{if(!(!X||!b||t.length===0)){if(!W||!E){z(`Please authenticate with ${R||"wallet provider"} to continue`);return}he(!0),z(null),be(!0);try{const N=[...t],J=[...new Set(N.map(Le=>Le.chainId))],xe=[];for(const Le of J){const At=Q.getClientForChain(Le),yt=Q.getDelegateContractAddress(Le),Pe=await V.getAccountNonce(b,At),lt=await $.signAuthorization({contractAddress:yt,chainId:Le,nonce:Number(Pe)});xe.push(lt)}const me=V.hashChainBatches(N),G=Math.floor(Date.now()/1e3)+Sr,H=me.map(Le=>Le.hash),de=P.keccak256(P.encodeAbiParameters([{type:"string"},{type:"uint256"},{type:"uint256"},{type:"bytes32[]"}],["ecdsa",0n,BigInt(G),H])),ue=await $.signMessage({raw:de}),tt=typeof ue=="string"?ue:ue.signature;if(!tt)throw new Error("Failed to sign intent authorization");const ht={mode:"7702",signatureType:"ecdsa",signature:tt,nbf:0,exp:G,chainBatches:me.map(Le=>({hash:Le.hash,chainId:Le.chainId,tokenTransfers:[...(x||[]).map(At=>({from:b,to:V.ESCROW_ADDRESS,token:At.token,amount:At.amount})),{from:"escrow",to:b,token:n,amount:r??P.parseUnits(X.amount,s)}],calls:Le.calls}))},Je=await K.relayerService.createAction({user:b,chainAuthorizations:xe.map(Le=>({...Le,r:Le.r,s:Le.s,yParity:Le.yParity,address:Le.address,chainId:Number(Le.chainId),nonce:Number(Le.nonce)})),intents:[ht]});if(Je){const Le=K.createInitialSteps(N,lt=>`Chain ${lt}`),[At,yt]=Je.intentIds[0].split("/"),Pe=parseInt(yt||"0",10);Se(Je.intentIds[0],Le);for(let lt=0;lt<N.length;lt++){const _e=lt;await Ys(()=>K.relayerService.executeStep(At,Pe,_e,{action:"execute"}))}}window.dispatchEvent(new CustomEvent("deposit-completed"));const mt={type:"deposit",status:"success",amount:X?.amount,asset:X?.asset?.symbol};window.dispatchEvent(new CustomEvent("spiceflow:action",{detail:mt})),u?.(Je?.intentIds?.[0]??"")}catch(N){const J=Zt(N,"Deposit failed");z(J),f?.(J)}finally{he(!1)}}},Qe=o.useMemo(()=>l&&l.length>0?O.filter(N=>l.some(J=>J.toLowerCase()===N.symbol.toLowerCase())):O,[O,l]),Me=o.useMemo(()=>{if(!k||!we)return Qe;const N=[];N.push({...we,_source:"wallet"});for(const J of Qe)N.push({...J,_source:"spice"});return N},[k,we,Qe]),ge=X&&X.amount&&parseFloat(X.amount)>0&&parseFloat(X.amount)<=X.asset.balanceFormatted&&B&&!oe&&t.length>0,$e=ne||w,q={backgroundColor:d?.container?.backgroundColor||d?.primaryBackground||C.colors.background,border:`1px solid ${d?.container?.borderColor||C.colors.border}`,borderRadius:d?.container?.borderRadius||C.borderRadius.lg,padding:d?.container?.padding||C.spacing.md,width:d?.container?.width||"100%",maxWidth:"28rem",minHeight:"200px",margin:"0 auto",color:C.colors.text,fontFamily:C.typography.fontFamily,boxShadow:d?.container?.boxShadow||(C.mode==="light"?"0 4px 6px -1px rgb(0 0 0 / 0.1)":"0 4px 6px -1px rgb(0 0 0 / 0.3)")},M=Re?e.jsx(Ln,{type:"deposit",isOpen:!!Re&&Re.overallStatus!=="processing",isProcessing:oe||Re?.overallStatus==="processing",closeOnComplete:!0,onRetryTx:()=>{je(),be(!1),ze()},onNewTx:()=>{je(),be(!1),A(null),Ae.current=null,j()},onClose:()=>{je(),be(!1)},onComplete:()=>{je(),be(!1),A(null),Ae.current=null,j(),p?.()},results:Re?.overallStatus==="success"||Re?.overallStatus==="failed"?Re.steps.map(N=>({asset:{symbol:X?.asset.symbol||"Token",address:X?.asset.address||""},txHash:N.transactionHash||"",success:N.status==="success",amount:X?.amount})):void 0,chainName:X?Q.getChainName(t[t.length-1].chainId):"Network",explorerUrl:X?Q.getExplorerUrl(t[t.length-1].chainId,"").replace(/\/tx\/.*$/,""):void 0,theme:C}):null;return e.jsxs("div",{style:{...q,position:"relative"},className:c,children:[M&&e.jsx("div",{style:{position:"absolute",top:0,left:"-25px",right:"-25px",bottom:"-16px"},children:e.jsx("div",{style:{position:"absolute",width:"100%",height:"100%",pointerEvents:"auto"},children:M})}),!L&&!_&&e.jsx(Xs,{variant:"warning",palette:C.mode==="dark"?K.buildDarkPalette():K.buildLightPalette(),fontFamily:C.typography.fontFamily,style:{borderRadius:C.borderRadius.md,padding:C.spacing.md,marginBottom:C.spacing.md,textAlign:"center"},children:e.jsxs("p",{style:{fontSize:C.typography.fontSize.sm,fontFamily:C.typography.fontFamily,margin:0,lineHeight:1.5},children:["You do not have any cross-chain balance."," ",g&&e.jsx("span",{onClick:g,style:{color:C.colors.primary,textDecoration:"underline",cursor:"pointer",fontWeight:600},children:"Top-up here."})]})}),e.jsx("div",{style:{marginBottom:C.spacing.sm},children:e.jsx(Fn,{assets:Me,selectedAsset:X||void 0,onAssetSelect:Ne,onAmountChange:ve,loading:L,label:"Amount",showBalance:!0,showMaxButton:!0,theme:C,styles:d,maxAmount:v})}),$e&&e.jsx("div",{style:{backgroundColor:d?.errorMessage?.backgroundColor||(C.mode==="light"?"#fef2f2":`${d?.statusDisplay?.errorColor||C.colors.error}20`),border:`1px solid ${d?.errorMessage?.borderColor||(C.mode==="light"?"#fecaca":d?.statusDisplay?.errorColor||C.colors.error)}`,borderRadius:d?.errorMessage?.borderRadius||C.borderRadius.md,padding:d?.errorMessage?.padding||C.spacing.md,marginBottom:C.spacing.sm},children:e.jsx("p",{style:{color:d?.errorMessage?.color||d?.statusDisplay?.errorColor||C.colors.error,fontSize:d?.errorMessage?.fontSize||C.typography.fontSize.sm,fontWeight:d?.errorMessage?.fontWeight,fontFamily:d?.errorMessage?.fontFamily||C.typography.fontFamily,margin:0},children:$e})}),e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:C.spacing.sm},children:e.jsx(Ge.Button,{variant:"outline",fullWidth:!0,onClick:ze,loading:oe,disabled:!ge||!B,theme:C,styles:d,style:{marginTop:"20px"},children:W?E?B?oe?"Executing Deposit...":X?X.amount?parseFloat(X.amount)>X.asset.balanceFormatted?"Insufficient Balance":t.length===0?"No Deposit Batches":y||"Execute Deposit":"Enter Amount":"Select Token":"Wallet Not Connected":"Authentication Required":"Loading..."})})]})},Ir=({isOpen:t,onClose:n,title:s="Deposit",maxWidth:r="480px",depositBatches:a,tokenAddress:l,tokenDecimals:i,tokenTransferAmount:d,supportedChains:c,supportedTokens:h,theme:u="light",styles:f,className:g,depositInputHook:p,onDepositSuccess:y,onDepositError:v,onComplete:x,submitButtonText:k,maxAmount:U})=>{const S=Ge.createTheme(u),C=I=>{y?.(I),n()};return e.jsx(on,{isOpen:t,onClose:n,title:s,subtitle:e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",gap:"5px",backgroundColor:"#f9fafb",border:"1px solid #ed6969",borderRadius:"8px",padding:"10px",margin:"0 0 0 0"},children:[e.jsx("img",{src:us,alt:"Info",style:{width:"14px",height:"14px",marginTop:"2px",flexShrink:0}}),e.jsx("p",{style:{fontSize:"13px",color:"#374151",margin:0,lineHeight:"1.5"},children:"Use your cross-chain balance to deposit WBTC to earn 6.3% yield, all in one click."})]}),styles:f,theme:S,maxWidth:r,children:e.jsx("div",{style:{padding:"0 24px 24px 24px"},children:e.jsx(Gs,{depositBatches:a,tokenAddress:l,tokenDecimals:i,tokenTransferAmount:d,supportedChains:c,supportedTokens:h,theme:u,styles:{...f,container:{...f?.container,boxShadow:"none",borderColor:"transparent",padding:"0",backgroundColor:"transparent"}},className:g,depositInputHook:p,onDepositSuccess:C,onDepositError:v,onComplete:x,submitButtonText:k,maxAmount:U})})})},jr=({asset:t,amount:n,onAmountChange:s,onPercentageClick:r,usdValue:a,disabled:l,styles:i,theme:d})=>{const{dark:c,primaryColor:h,dk:u}=K.useSpiceBrand(i),f=t.balanceFormatted??0,g=parseFloat(n)||0,p=f>0?g/f*100:0,[y,v]=o.useState(null),[x,k]=o.useState(null),U=S=>{const C=S.target.value;(C===""||/^\d*\.?\d*$/.test(C))&&s(C)};return e.jsx("div",{style:{backgroundColor:c?u.cardBg:"#e9e9e9",border:c?`0.5px solid ${u.cardBorder}`:"0.5px solid #A8A8A7",borderRadius:"6px",padding:"16px",height:"144px",display:"flex",flexDirection:"column",gap:"8px",position:"relative"},children:e.jsxs("div",{style:{flex:1,display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.jsx("div",{style:{display:"flex",flexDirection:"column",justifyContent:"space-between",height:"100%"},children:e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"8px"},children:[e.jsx("span",{style:{fontFamily:i?.fontFamily||d.typography.fontFamily,fontSize:"16px",fontWeight:500,color:c?u.textSecondary:"#7d7c7b",lineHeight:"24px"},children:"Amount"}),e.jsx("input",{type:"text",value:n,onChange:U,placeholder:"0.00",disabled:l,style:{fontFamily:i?.fontFamily||d.typography.fontFamily,fontSize:"40px",fontWeight:700,color:l?c?"rgba(255, 255, 255, 0.16)":"rgba(14, 13, 11, 0.16)":n?c?u.inputText:"#0e0d0b":c?u.inputPlaceholder:"#d1d5db",lineHeight:"1.08",letterSpacing:"-1.2px",backgroundColor:"transparent",border:"none",outline:"none",padding:0,width:"100%",maxWidth:"200px"}})]})}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"flex-end",justifyContent:"space-between",height:"100%",gap:"12px"},children:[e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"8px",alignItems:"flex-end"},children:[e.jsxs("span",{style:{fontFamily:i?.fontFamily||d.typography.fontFamily,fontSize:"12px",fontWeight:500,color:c?u.textSecondary:"#71757a",lineHeight:"16px"},children:["Balance: ",f.toFixed(4)]}),e.jsx("div",{style:{width:"128px"},children:e.jsxs("div",{style:{border:c?`1px solid ${u.cardBorder}`:"1px solid #CDCFD1",borderRadius:"6px 6px 6px 6px",backgroundColor:"transparent",padding:"8px 12px 8px 8px",display:"flex",alignItems:"center",gap:"8px"},children:[e.jsx(xn,{symbol:t.symbol,logoURI:t.logoURI,size:30,theme:d}),e.jsx("span",{style:{fontFamily:i?.fontFamily||d.typography.fontFamily,fontSize:"16px",fontWeight:500,color:c?u.textPrimary:"#3c3e42",lineHeight:"1.5"},children:t.symbol})]})})]}),e.jsx("div",{style:{display:"flex",gap:"10px",height:"14px",alignItems:"center",justifyContent:"flex-end"},children:[0,25,50,75,100].map((S,C)=>{const I=Math.abs(p-S)<1,F=C===4,W=S/100,E=y===S,B=x===S;return e.jsx("button",{onClick:()=>r(S),onMouseEnter:()=>v(S),onMouseLeave:()=>{v(null),k(null)},onMouseDown:()=>k(S),onMouseUp:()=>k(null),disabled:l,title:`${S}%`,style:{width:"14px",height:"14px",padding:0,border:"none",backgroundColor:"transparent",cursor:l?"not-allowed":"pointer",opacity:I?1:E?.8:.5,transform:B?"scale(0.85)":E?"scale(1.15)":"scale(1)",transition:"all 0.15s ease"},children:e.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 14 14",children:[e.jsx("circle",{cx:"7",cy:"7",r:"6.84375",fill:F?h:"none",stroke:F?h:c?u.textSecondary:"#3C3E42",strokeWidth:"0.3125"}),!F&&W>0&&e.jsx("path",{d:`M 7 7 L 7 0.15625 A 6.84375 6.84375 0 ${W>.5?1:0} 1 ${7+6.84375*Math.sin(W*2*Math.PI)} ${7-6.84375*Math.cos(W*2*Math.PI)} Z`,fill:c?u.textSecondary:"#3C3E42"})]})},S)})})]})]})})};var Er="data:image/svg+xml,%3csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M5.83337 11.0833C8.73287 11.0833 11.0834 8.73275 11.0834 5.83325C11.0834 2.93376 8.73287 0.583252 5.83337 0.583252C2.93388 0.583252 0.583374 2.93376 0.583374 5.83325C0.583374 8.73275 2.93388 11.0833 5.83337 11.0833Z' stroke='%23757171' stroke-width='1.16667' stroke-linecap='round' stroke-linejoin='round'/%3e%3cpath d='M4.84329 4.48988C5.18981 4.14336 5.36306 3.97011 5.56285 3.90519C5.73859 3.84809 5.92789 3.84809 6.10363 3.90519C6.30342 3.97011 6.47668 4.14336 6.82319 4.48988L7.17663 4.84331C7.52314 5.18983 7.6964 5.36308 7.76131 5.56287C7.81841 5.73861 7.81841 5.92791 7.76131 6.10365C7.6964 6.30344 7.52314 6.4767 7.17663 6.82321L6.82319 7.17665C6.47668 7.52316 6.30342 7.69642 6.10363 7.76133C5.92789 7.81843 5.73859 7.81843 5.56285 7.76133C5.36306 7.69642 5.18981 7.52316 4.84329 7.17665L4.48986 6.82321C4.14334 6.4767 3.97009 6.30344 3.90517 6.10365C3.84807 5.92791 3.84807 5.73861 3.90517 5.56287C3.97009 5.36308 4.14334 5.18983 4.48986 4.84331L4.84329 4.48988Z' stroke='%23757171' stroke-width='1.16667' stroke-linecap='round' stroke-linejoin='round'/%3e%3c/svg%3e";const Ar=({isOpen:t,onClose:n,onComplete:s,title:r,description:a,chainId:l,embeddedWalletAddress:i,externalWalletAddress:d,escrowAddress:c=V.ESCROW_ADDRESS,airdropTokenSymbol:h,getChainConfig:u,getSupportedTokens:f})=>{const{theme:g,appName:p,dark:y,primaryColor:v,dk:x}=K.useSpiceBrand(),k=r??`Deposit to ${p}`,U=a??`Select tokens and enter amounts to deposit to your ${p} Account`,[S,C]=o.useState(new Map),[I,F]=o.useState(!1),[W,E]=o.useState(null),[B,b]=o.useState([]),[R,$]=o.useState(!1),[X,A]=o.useState(null),[O,L]=o.useState(null);o.useState(null),o.useState(null);const[ne,_]=o.useState(null),{chain:j}=ft.useAccount(),{data:oe,isLoading:he}=ft.useWalletClient(),{switchChainAsync:w}=ft.useSwitchChain(),z=o.useMemo(()=>f(l),[l,f]),{erc20Tokens:ie,nativeToken:be}=o.useMemo(()=>{const N=[];let J=null;return z.forEach(xe=>{V.isNativeToken(xe.address)?J=xe:N.push(xe)}),{erc20Tokens:N,nativeToken:J}},[z]),{data:se,refetch:we}=ft.useReadContracts({contracts:ie.map(N=>({address:N.address,abi:P.erc20Abi,functionName:"balanceOf",args:[d],chainId:l})),blockTag:"pending"}),{data:ae,refetch:Ae}=ft.useBalance({address:d,chainId:l,blockTag:"pending"}),Re=o.useCallback(()=>{we(),Ae()},[we,Ae]),Se=o.useCallback(()=>{Re();const N=setTimeout(Re,2e3),J=setTimeout(Re,4e3);return()=>{clearTimeout(N),clearTimeout(J)}},[Re]);o.useEffect(()=>t?Se():void 0,[t,Se]),o.useEffect(()=>{let N;const J=()=>{N?.(),N=Se()};return window.addEventListener("cross-chain-deposit-completed",J),()=>{N?.(),window.removeEventListener("cross-chain-deposit-completed",J)}},[Se]);const je=o.useMemo(()=>{if(!u(l))return[];const N=[];if(be){const J=be,xe=ae?.value??BigInt(0),me=Number(xe)/Math.pow(10,J.decimals);N.push({address:J.address,symbol:J.symbol,name:J.name,decimals:J.decimals,isNative:!0,chainId:l,balance:xe,balanceFormatted:me})}return ie.forEach((J,xe)=>{const me=se?.[xe],G=me?.status==="success"?me.result:BigInt(0),H=Number(G)/Math.pow(10,J.decimals);N.push({address:J.address,symbol:J.symbol,name:J.name,decimals:J.decimals,isNative:!1,chainId:l,balance:G,balanceFormatted:H})}),N},[l,se,ae,ie,be,u]);o.useMemo(()=>h?je.find(N=>N.symbol.toUpperCase()===h.toUpperCase()):void 0,[je,h]),o.useEffect(()=>{if(je.length>0&&S.size>0){const N=new Map(S);let J=!1;S.forEach((xe,me)=>{const G=je.find(H=>H.address===me);G&&G.balanceFormatted!==xe.asset.balanceFormatted&&(N.set(me,{...xe,asset:G}),J=!0)}),J&&C(N)}},[je,S]);const We=u(l),Ne=N=>{const J=new Map(S);J.has(N.address)?J.delete(N.address):J.set(N.address,{asset:N,amount:""}),C(J),E(null)},ve=(N,J)=>{if(J===""||/^\d*\.?\d*$/.test(J)){const xe=new Map(S),me=xe.get(N);if(me){let G=J;if(J!==""&&me.asset.balanceFormatted!==void 0){const H=parseFloat(J);!isNaN(H)&&H>me.asset.balanceFormatted&&(G=In(me.asset.balanceFormatted,me.asset.decimals))}xe.set(N,{...me,amount:G}),C(xe),E(null)}}},ze=(N,J)=>{const xe=S.get(N);if(xe?.asset.balanceFormatted!==void 0){const me=xe.asset.balanceFormatted*J/100,G=xe.asset.decimals,H=Math.floor(me*10**G)/10**G;ve(N,In(H,G))}},Qe=o.useCallback(async()=>{if(S.size===0){E("Please select at least one asset");return}for(const[J,xe]of Array.from(S.entries())){if(!xe.amount){E(`Please enter an amount for ${xe.asset.symbol}`);return}const me=parseFloat(xe.amount);if(isNaN(me)||me<=0){E(`Please enter a valid amount for ${xe.asset.symbol}`);return}const G=je.find(H=>H.address===J)?.balanceFormatted??xe.asset.balanceFormatted;if(G!==void 0&&me>G){E(`Insufficient ${xe.asset.symbol} balance`);return}}if(!oe){E("Wallet not connected. Please reconnect your external wallet.");return}F(!0),E(null);const N=[];try{j?.id!==l&&await w({chainId:l});for(const[,J]of Array.from(S.entries())){const{asset:xe,amount:me}=J;try{const G=P.parseUnits(me,xe.decimals);let H;if(xe.isNative)H=await oe.sendTransaction({to:c,value:G});else{const de=P.encodeFunctionData({abi:P.erc20Abi,functionName:"transfer",args:[c,G]});H=await oe.sendTransaction({to:xe.address,data:de})}if((await Q.getClientForChain(l).waitForTransactionReceipt({hash:H,timeout:12e4,pollingInterval:2e3,confirmations:1})).status!=="success")throw new Error(`Transfer to escrow failed for ${xe.symbol}`);N.push({asset:xe,txHash:H,success:!0}),window.dispatchEvent(new CustomEvent("cross-chain-deposit-completed")),window.dispatchEvent(new CustomEvent("spiceflow:action",{detail:{type:"deposit",status:"success",amount:me,asset:xe.symbol,txHash:H}}))}catch(G){N.push({asset:xe,txHash:"",success:!1,error:Zt(G,"Deposit failed")})}finally{}}b(N),$(!0);try{const J=Array.from(S.values())[0];J?.asset&&J.amount&&sessionStorage.setItem("spiceflow:lastDepositSelection",JSON.stringify({symbol:J.asset.symbol,address:J.asset.address,decimals:J.asset.decimals,chainId:J.asset.chainId,amount:J.amount}))}catch{}}catch(J){E(Zt(J,"Deposit failed"))}finally{F(!1)}},[S,oe,j,l,w,c,je]);o.useEffect(()=>{t||(C(new Map),E(null),b([]),$(!1),F(!1))},[t]);const Me=o.useCallback(()=>{b([]),$(!1),E(null)},[]),ge=o.useCallback(()=>{window.dispatchEvent(new CustomEvent("cross-chain-deposit-skipped"))},[]),$e=S.size>0&&Array.from(S.values()).every(N=>N.amount&&parseFloat(N.amount)>0)&&!I&&!R&&oe,q=e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",gap:"5px",backgroundColor:y?x.errorBg:"#f9fafb",border:y?`1px solid ${x.errorBorder}`:"1px solid #ed6969",borderRadius:"8px",padding:"10px",margin:"0 0 0 0"},children:[e.jsx("img",{src:us,alt:"Info",style:{width:"14px",height:"14px",marginTop:"2px",flexShrink:0}}),e.jsx("p",{style:{fontSize:"13px",color:y?x.textSecondary:"#374151",margin:0,lineHeight:"1.5"},children:U})]}),M=I||R&&B.length>0?e.jsx(Ln,{type:"deposit",isOpen:R&&B.length>0,isProcessing:I,onClose:n,onComplete:s,closeOnComplete:!1,onRetryTx:Me,onNewTx:()=>{},results:B.length>0?B.map(N=>({asset:{symbol:N.asset.symbol,address:N.asset.address},txHash:N.txHash,success:N.success,error:N.error})):void 0,chainName:Q.getChainName(l),explorerUrl:We?.blockExplorer,theme:g}):null;return e.jsxs(on,{isOpen:t,onClose:n,title:k,subtitle:q,theme:g,dark:y,maxWidth:"480px",children:[e.jsxs("div",{style:{padding:"0 24px 32px 24px",position:"relative",display:"flex",flexDirection:"column",maxHeight:"calc(80vh - 180px)"},children:[M&&e.jsx("div",{style:{position:"absolute",inset:0,overflow:"hidden",pointerEvents:"none",zIndex:10},children:e.jsx("div",{style:{position:"relative",width:"100%",height:"100%",pointerEvents:"auto"},children:M})}),e.jsxs("div",{style:{flex:1,overflowY:"auto",overflowX:"hidden",minHeight:0,paddingRight:"4px",marginRight:"-4px"},children:[e.jsxs("div",{style:{marginBottom:"16px"},children:[e.jsx("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:"8px",marginBottom:"10px"},children:e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px"},children:[e.jsx("span",{style:{fontSize:"14px",color:y?x.textSecondary:"#6b7280"},children:e.jsx("img",{src:Er,alt:"Info",style:{width:"10.5px",height:"10.5px",top:"1.75px",left:"1.75px",flexShrink:0}})}),e.jsx("label",{style:{fontSize:"12px",fontWeight:590,color:y?x.textPrimary:"#374151"},children:"Select Assets to Deposit"})]})}),e.jsx("div",{style:{display:"flex",gap:"12px",flexWrap:"wrap"},children:je.map(N=>{const J=S.has(N.address);return e.jsx("div",{onClick:()=>Ne(N),onMouseEnter:()=>A(N.address),onMouseLeave:()=>{A(null),L(null)},onMouseDown:()=>L(N.address),onMouseUp:()=>L(null),style:{padding:"4px 8px 4px 8px",borderRadius:"8px",border:`1px solid ${J?y?`${v}7A`:`${v}7A`:X===N.address?y?x.buttonBorder:"#F4A5A5":y?"#2d2d2d":"#e5e7eb"}`,backgroundColor:J?y?`${v}15`:"#FEF2F2":O===N.address?y?x.hoverBg:"#f5f5f5":X===N.address?y?"#222222":"#fafafa":y?x.cardBg:"white",cursor:"pointer",display:"flex",alignItems:"center",gap:"8px",transition:"all 150ms ease",transform:O===N.address?"scale(0.96)":X===N.address?"translateY(-1px)":"none",boxShadow:J?y?`0 0 0 3px ${v}25`:"0 0 0 3px #FBDBDB":O===N.address?"0 1px 2px rgba(0, 0, 0, 0.05)":X===N.address?y?"0 4px 8px rgba(0, 0, 0, 0.3)":"0 4px 8px rgba(0, 0, 0, 0.1)":"none"},children:e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"4px"},children:[e.jsx(xn,{symbol:N.symbol,size:24,theme:g}),e.jsx("span",{style:{fontSize:"16px",fontWeight:510,color:y?x.textPrimary:"#3C3E42"},children:N.symbol}),N.balanceFormatted!==void 0&&e.jsxs("span",{style:{fontSize:"10px",fontWeight:500,color:"#939291",fontFamily:'"IBM Plex Mono", monospace'},children:["(",N.balanceFormatted.toFixed(4),")"]})]})},N.address)})})]}),S.size>0&&e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"16px"},children:Array.from(S.values()).map(({asset:N,amount:J})=>e.jsx(jr,{asset:N,amount:J,onAmountChange:xe=>ve(N.address,xe),onPercentageClick:xe=>ze(N.address,xe),theme:g,disabled:I},N.address))})]}),W&&e.jsx("div",{style:{padding:"12px",backgroundColor:y?x.errorBg:"#fef2f2",border:y?`1px solid ${x.errorBorder}`:"1px solid #fecaca",borderRadius:"8px",marginTop:"16px"},children:e.jsx("p",{style:{fontSize:"14px",color:"#dc2626",margin:0},children:W})}),!R&&e.jsxs("div",{style:{display:"flex",gap:"12px",marginTop:"20px"},children:[e.jsx(Ge.Button,{variant:"outline",onClick:Qe,disabled:!$e,loading:I,theme:g,dark:y,style:{flex:2},children:I?e.jsxs(e.Fragment,{children:[e.jsx(Ge.Spinner,{size:18,color:y?x.textPrimary:"white"}),e.jsx("span",{children:"PROCESSING..."})]}):he?"CONNECTING WALLET...":oe?S.size===0?"SELECT ASSETS":Array.from(S.values()).every(N=>N.amount)?"DEPOSIT":"ENTER AMOUNTS":"WALLET NOT CONNECTED"}),e.jsx(Ge.Button,{variant:"outline",onClick:ge,disabled:I,theme:g,dark:y,style:{flex:1},children:"SKIP"})]})]}),ne&&e.jsx(ls,{message:ne.message,type:ne.type,linkText:ne.linkText,linkUrl:ne.linkUrl,onClose:()=>_(null)})]})},ms=typeof process<"u"&&process.env?.NEXT_PUBLIC_MORALIS_API_KEY||typeof{url:typeof document>"u"?require("url").pathToFileURL(__filename).href:En&&En.tagName.toUpperCase()==="SCRIPT"&&En.src||new URL("index.cjs.js",document.baseURI).href}<"u"&&void 0||"",Br="https://deep-index.moralis.io/api/v2.2",Fr=async(t,n)=>{try{const s=Q.getChainsForAssets(),r=Q.getClientForChain(n),a=await en.getBalance(r,{address:t}),l=s[n],i=parseFloat((Number(a)/Math.pow(10,18)).toFixed(6)),d=Q.getChainConfig(n),c=d?.supportedTokens?.find(h=>V.isNativeToken(h.address));return{address:V.ZERO_ADDRESS,name:l.chain.nativeCurrency.name,symbol:l.chain.nativeCurrency.symbol,decimals:l.chain.nativeCurrency.decimals,balance:a,balanceFormatted:i,balanceUsd:0,logoURI:c?.logo||d?.logo,isNative:!0,chainId:n}}catch{const s=Q.getChainsForAssets(),r=Q.getChainConfig(n),a=r?.supportedTokens?.find(l=>V.isNativeToken(l.address));return{address:V.ZERO_ADDRESS,name:s[n].chain.nativeCurrency.name,symbol:s[n].chain.nativeCurrency.symbol,decimals:18,balance:BigInt(0),balanceFormatted:0,balanceUsd:0,logoURI:a?.logo||r?.logo,isNative:!0,chainId:n}}},Js=async(t,n,s,r,a,l)=>{try{if(!P.isAddress(s))return null;const i=P.getAddress(s),d=P.isAddress(t)?P.getAddress(t):t,c=Q.getClientForChain(n),h=await en.readContract(c,{address:i,abi:Q.K,functionName:"balanceOf",args:[d]}),u=parseFloat((Number(h)/Math.pow(10,l)).toFixed(6));return u>0?{address:i,name:r,symbol:a,decimals:l,balance:h,balanceFormatted:u,balanceUsd:0,logoURI:void 0,isNative:!1,chainId:n}:null}catch(i){return i?.message?.includes("checksum")||i?.message?.includes("Address")||i?.message?.includes("invalid"),null}},$s=(t,n)=>{const s=Q.getChainConfig(n);if(!s)return t;const r=new Set(t.map(l=>l.address.toLowerCase())),a=t.some(l=>l.isNative);for(const l of s.supportedTokens||[])V.isNativeToken(l.address)&&a||r.has(l.address.toLowerCase())||t.push({address:l.address,name:l.name,symbol:l.symbol,decimals:l.decimals,balance:BigInt(0),balanceFormatted:0,balanceUsd:0,logoURI:l.logo,isNative:V.isNativeToken(l.address),chainId:n});if(!t.find(l=>l.isNative)){const l=s.supportedTokens?.find(i=>V.isNativeToken(i.address));t.push({address:V.ZERO_ADDRESS,name:s.nativeCurrency.name,symbol:s.nativeCurrency.symbol,decimals:s.nativeCurrency.decimals,balance:BigInt(0),balanceFormatted:0,balanceUsd:0,logoURI:l?.logo||s.logo,isNative:!0,chainId:n})}return t},Tr=async(t,n)=>{const s=[],r=await Fr(t,n);r.balanceFormatted>0&&s.push(r);const a=(Q.getChainConfig(n)?.supportedTokens||[]).filter(l=>!V.isNativeToken(l.address));if(a.length>0)try{const l=Q.getClientForChain(n),i=P.getAddress(t),d=a.filter(f=>P.isAddress(f.address)).map(f=>({address:P.getAddress(f.address),abi:Q.K,functionName:"balanceOf",args:[i]})),c=await l.multicall({contracts:d}),h=a.filter(f=>P.isAddress(f.address)),u=[];c.forEach((f,g)=>{if(f.status==="success"){const p=f.result;if(p&&p>0n){const y=h[g],v=parseFloat((Number(p)/Math.pow(10,y.decimals)).toFixed(6));v>0&&s.push({address:P.getAddress(y.address),name:y.name,symbol:y.symbol,decimals:y.decimals,balance:p,balanceFormatted:v,balanceUsd:0,logoURI:y.logo,isNative:!1,chainId:n})}}else u.push(h[g])});for(const f of u){const g=await Js(t,n,f.address,f.name,f.symbol,f.decimals);g&&(g.logoURI=f.logo,s.push(g))}}catch{for(const l of a){const i=await Js(t,n,l.address,l.name,l.symbol,l.decimals);i&&(i.logoURI=l.logo,s.push(i))}}return{tokens:$s(s,n),chainId:n}},Rr=async(t,n)=>{const s=Q.getChainsForAssets()[n];if(!s?.moralisName)throw new Error(`Moralis unsupported for chain ${n}`);if(!ms)throw new Error("MORALIS_API_KEY is missing");const r=[],a=(await(await import("axios")).default.get(`${Br}/wallets/${t}/tokens`,{params:{chain:s.moralisName},headers:{"X-API-Key":ms}})).data?.result||[];for(const l of a){const i=l.token_address,d=!!l.native_token||V.isNativeToken(i);if(!d&&!P.isAddress(i))continue;const c=parseInt(l.decimals||"18",10)||18,h=l.balance||"0",u=parseFloat(l.balance_formatted||(Number(h)/Math.pow(10,c)).toString());u<=0||r.push({address:d?V.ZERO_ADDRESS:P.getAddress(i),name:l.name||"Unknown",symbol:l.symbol||"UNKNOWN",decimals:c,balance:BigInt(h),balanceFormatted:u,balanceUsd:parseFloat(l.usd_value||"0"),logoURI:l.logo,isNative:d,chainId:n})}return{tokens:$s(r,n),chainId:n}},_s=async(t,n)=>{try{if(Q.getChainsForAssets()[n]?.moralisName&&ms)try{return await Rr(t,n)}catch{}return await Tr(t,n)}catch{return{tokens:[],chainId:n}}},ys=async(t,n)=>{if(!t)throw new Error("Wallet address is required");const s=Q.getChainsForAssets(),r=n&&n.length>0?new Set(n):null,a=Object.keys(s).map(Number).filter(d=>!r||r.has(d)),l=await Promise.allSettled(a.map(d=>_s(t,d))),i={};return l.forEach((d,c)=>{d.status==="fulfilled"&&(i[a[c]]=d.value)}),i},bs=({address:t,supportedChains:n,fetchBalances:s,refreshInterval:r=0})=>{const[a,l]=o.useState([]),[i,d]=o.useState(!1),[c,h]=o.useState(null),u=o.useRef(!0),f=o.useRef(t),g=o.useRef(n),p=o.useRef(s);o.useEffect(()=>{f.current=t,g.current=n,p.current=s},[t,n,s]);const y=o.useCallback(async()=>{const k=f.current,U=g.current;if(!k){l([]);return}u.current&&d(!0),h(null);try{const S=Q.getChainsForAssets(),C=Object.keys(S).map(Number).filter(F=>U.includes(F)),I=(await Promise.allSettled(C.map(async F=>{try{const W=await _s(k,F);return W.tokens.map(E=>({...E,chainId:W.chainId}))}catch(W){return console.error(`Error fetching assets for chain ${F}:`,W),[]}}))).filter(F=>F.status==="fulfilled").flatMap(F=>F.value);l(I)}catch(S){const C=S instanceof Error?S.message:"Failed to fetch assets";h(C)}finally{u.current&&(d(!1),u.current=!1)}},[]),v=o.useCallback(k=>a.filter(U=>U.chainId===k),[a]),x=o.useCallback(()=>a.filter(k=>k.isNative),[a]);return o.useEffect(()=>{t&&(u.current=!0,y())},[t,y]),o.useEffect(()=>{if(!t||!r)return;const k=setInterval(()=>{y()},r);return()=>clearInterval(k)},[t,r]),{assets:a,loading:i,error:c,refreshAssets:y,getAssetsByChain:v,getNativeAssets:x}},Mr=new Set(["USDC","SUSD","USD","NUSD","USDT","DAI","ENUSD"]),eo={ETH:"ethereum",WETH:"ethereum",BTC:"bitcoin",WBTC:"bitcoin",WCBTC:"bitcoin",CBTC:"bitcoin",ECBTC:"bitcoin",ARB:"arbitrum",MATIC:"matic-network",POL:"matic-network"};let es=null;const Dr=6e4;async function to(t){const n={},s=new Set,r={};for(const l of t){const i=l.toUpperCase();if(Mr.has(i))n[i]=1;else if(eo[i]){const d=eo[i];s.add(d),r[i]=d}else n[i]=0}if(s.size===0)return n;const a=Date.now();if(es&&a-es.timestamp<Dr){for(const[l,i]of Object.entries(r))n[l]=es.prices[i]??0;return n}try{const l=Array.from(s).join(","),i=await fetch(`https://api.coingecko.com/api/v3/simple/price?ids=${l}&vs_currencies=usd`);if(!i.ok)throw new Error(`CoinGecko ${i.status}`);const d=await i.json(),c={};for(const h of s)c[h]=d[h]?.usd??0;es={prices:c,timestamp:a};for(const[h,u]of Object.entries(r))n[h]=c[u]??0}catch(l){console.warn("[fetchTokenPrices] CoinGecko fetch failed:",l);for(const i of Object.keys(r))n[i]=n[i]??0}return n}function Nr(t,n){return t.map(s=>{if(s.balanceUsd>0)return s;const r=n[s.symbol.toUpperCase()]??0;return{...s,balanceUsd:s.balanceFormatted*r}})}const Wr=new Set(["cbtc","btc","wbtc","wcbtc","tbtc"]),Ur=new Set(["usdc","usdt","dai","usdc.e","usdbc"]);async function Lr(){const t=(await to(["BTC"])).BTC;if(!t||t<=0)throw new Error("Failed to fetch BTC/USD price");return t}function zr(t){return Wr.has(t.toLowerCase())}function Pr(t){return Ur.has(t.toLowerCase())}function Or(t,n,s,r){const a=10n**12n,l=BigInt(Math.round(r*Number(a))),i=n-s,d=10n**BigInt(Math.abs(i));let c=t*l/a;return i>0?c=c/d:i<0&&(c=c*d),c}var no="data:image/svg+xml,%3csvg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M4.51484 1.22476C5.04689 0.494255 5.87167 0 6.83333 0C7.79352 0 8.62302 0.493038 9.15721 1.22447C10.0512 1.08473 10.9879 1.32154 11.6665 2.00014C12.3456 2.67921 12.5823 3.61677 12.4419 4.51135C13.1714 5.04616 13.6667 5.87042 13.6667 6.83333C13.6667 7.79624 13.1714 8.62051 12.4419 9.15532C12.5823 10.0499 12.3456 10.9875 11.6665 11.6665C10.986 12.3471 10.049 12.5769 9.15858 12.4403C8.62445 13.1728 7.79434 13.6667 6.83333 13.6667C5.86959 13.6667 5.04474 13.1705 4.50996 12.44C3.619 12.5772 2.68116 12.3475 2.00014 11.6665C1.31939 10.9858 1.08903 10.0476 1.23037 9.15532C0.501138 8.62162 0 7.79824 0 6.83333C0 5.86843 0.501137 5.04504 1.23037 4.51135C1.08903 3.61904 1.31939 2.68089 2.00014 2.00014C2.67986 1.32042 3.61766 1.08457 4.51484 1.22476ZM9.20928 5.95387C9.51334 5.74624 9.59152 5.33144 9.38389 5.02737C9.17626 4.72331 8.76145 4.64514 8.45739 4.85277L8.3995 4.89229C7.48372 5.51764 6.69012 6.30153 6.05487 7.20477L5.30449 6.45518C5.044 6.19497 4.62189 6.1952 4.36168 6.45569C4.10147 6.71618 4.10169 7.13829 4.36218 7.3985L5.7 8.73489C5.84693 8.88167 6.05387 8.95158 6.25971 8.924C6.46555 8.89641 6.64677 8.77448 6.74987 8.5942C7.34322 7.55668 8.16436 6.6674 9.1514 5.9934L9.20928 5.95387Z' fill='%23EA4B4B'/%3e%3c/svg%3e",Hr="data:image/png;base64,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",Vr="data:image/png;base64,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";const Qr=({size:t=20,active:n=!1,dark:s=!1})=>e.jsxs("svg",{width:t,height:t,viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[e.jsx("rect",{x:"2",y:"4",width:"16",height:"2",rx:"1",fill:n?s?"#e5e7eb":"#111827":s?"#9ca3af":"#374151"}),e.jsx("rect",{x:"4",y:"9",width:"12",height:"2",rx:"1",fill:n?s?"#e5e7eb":"#111827":"#9ca3af"}),e.jsx("rect",{x:"6",y:"14",width:"8",height:"2",rx:"1",fill:n?s?"#e5e7eb":"#111827":"#9ca3af"})]}),so=({checked:t,primaryColor:n="#ef4444",dark:s=!1})=>e.jsx("div",{style:{width:"18px",height:"18px",borderRadius:"4px",border:t?"none":`2px solid ${s?"#4b5563":"#d1d5db"}`,backgroundColor:t?n:"transparent",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0,transition:"all 0.15s ease"},children:t&&e.jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:e.jsx("path",{d:"M2.5 6L5 8.5L9.5 3.5",stroke:"white",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}),Kr=({isOpen:t,onClose:n,onTokenSelect:s,walletAddress:r,supportedChainIds:a,network:l,prefetchedAssets:i,styles:d,dark:c,allowedTokens:h})=>{const[u,f]=o.useState(""),[g,p]=o.useState(null),[y,v]=o.useState(null),[x,k]=o.useState(!1),[U,S]=o.useState(new Set),[C,I]=o.useState([]),F=o.useRef(null),W=o.useContext(K.SpiceFlowProviderContext),E=l||W?.network||"testnet",{dark:B,primaryColor:b,dk:R}=K.useSpiceBrand(d,c),$=B?R.inputBg:"#FAFAFA",X=B?R.inputBorder:"#e5e7eb",A=B?R.inputText:"#374151",O=B?R.inputPlaceholder:"#9ca3af",L=B?R.cardBg:"white",ne=B?`${b}55`:"#F4A5A5",_=B?"0 4px 12px rgba(0, 0, 0, 0.4)":"0 4px 12px rgba(0, 0, 0, 0.15)",j=B?R.hoverBg:"#E9E9E9",oe=B?R.hoverBg:"#f9fafb",he=B?R.textPrimary:"#374151",w=B?R.textPrimary:"#111827",z=B?R.textSecondary:"#9ca3af",ie=B?`${b}22`:"#FBDBDB",be=B?`${b}55`:"#F4A5A5",se=o.useMemo(()=>a||W?.supportedChainIds||V.getChainIdsByNetwork(E),[a,W?.supportedChainIds,E]),we=o.useMemo(()=>se.map(q=>{const M=Q.getChainConfig(q);return M?{id:q,name:M.displayName,icon:ln[q]||yn}:null}).filter(Boolean),[se]),ae=o.useMemo(()=>{const q=new Set,M=new Set;for(const N of se){const J=Q.getChainConfig(N);if(J){q.add(J.nativeCurrency?.symbol?.toUpperCase()||"ETH");for(const xe of J.supportedTokens||[])q.add(xe.symbol.toUpperCase()),M.add(xe.address.toLowerCase())}}return{symbols:q,addresses:M}},[se]),Ae=i===void 0,{assets:Re,loading:Se}=bs({address:Ae?r:void 0,supportedChains:se,fetchBalances:ys,refreshInterval:t?5e3:0}),je=i??(Ae?Re:[]),We=i===null||Ae&&Se,Ne=o.useMemo(()=>{if(!je)return[];let q=je.filter(M=>M.isNative?!0:ae.symbols.has(M.symbol.toUpperCase())||ae.addresses.has(M.address.toLowerCase()));return h&&h.length>0&&(q=q.filter(M=>h.includes(M.symbol.toLowerCase())||M.isNative&&h.includes("native"))),q},[je,ae,h]);o.useEffect(()=>{if(!Ne||Ne.length===0){I([]);return}const q=Ne.filter(J=>J.balanceUsd===0&&J.balanceFormatted>0).map(J=>J.symbol),M=Array.from(new Set(q));if(M.length===0){I(Ne);return}let N=!1;return to(M).then(J=>{N||I(Nr(Ne,J))}),()=>{N=!0}},[Ne]);const ve=o.useMemo(()=>{let q=C.filter(M=>M.balanceUsd>=.01||M.balanceFormatted>=1e-4||M.balanceFormatted===0);if(U.size>0&&(q=q.filter(M=>U.has(M.chainId))),u.trim()){const M=u.toLowerCase();q=q.filter(N=>N.name.toLowerCase().includes(M)||N.symbol.toLowerCase().includes(M)||N.address.toLowerCase().includes(M))}return q.sort((M,N)=>{const J=M.balanceFormatted>0?1:0,xe=N.balanceFormatted>0?1:0;return xe!==J?xe-J:N.balanceUsd!==M.balanceUsd?N.balanceUsd-M.balanceUsd:N.balanceFormatted-M.balanceFormatted}),q},[C,u,U]),ze=q=>`${q.chainId}-${q.address}`;o.useEffect(()=>{const q=document.createElement("link");return q.href="https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@100;200;300;400;500;600;700&display=swap",q.rel="stylesheet",document.head.appendChild(q),()=>{document.head.removeChild(q)}},[]),o.useEffect(()=>{t||(f(""),p(null),k(!1),S(new Set))},[t]),o.useEffect(()=>{if(!x)return;const q=M=>{F.current&&!F.current.contains(M.target)&&k(!1)};return document.addEventListener("mousedown",q),()=>document.removeEventListener("mousedown",q)},[x]);const Qe=q=>{s(q)},Me=q=>{S(M=>{const N=new Set(M);return N.has(q)?N.delete(q):N.add(q),N})},ge=()=>{S(new Set)},$e=U.size===0;return e.jsxs(on,{isOpen:t,onClose:n,title:"Select a Token",bannerSrc:Vr,bannerAlt:"Select token banner",styles:d,dark:B,children:[e.jsx("div",{style:{padding:"20px 20px"},children:e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",backgroundColor:$,borderRadius:"10px",boxShadow:B?"0 2px 4px rgba(0, 0, 0, 0.3)":"0 2px 4px rgba(0, 0, 0, 0.1)",padding:"7px 5px",border:`1px solid ${X}`},children:[e.jsx(Yn.Search,{style:{color:O},size:24}),e.jsx("input",{type:"text",placeholder:"Search token name, symbol or address",value:u,onChange:q=>f(q.target.value),style:{flex:1,backgroundColor:$,outline:"none",border:"none",color:A,fontSize:"15px",fontWeight:"400"}}),e.jsxs("div",{ref:F,style:{position:"relative",flexShrink:0},children:[e.jsx("button",{onClick:()=>k(q=>!q),style:{display:"flex",alignItems:"center",justifyContent:"center",padding:"5px",borderRadius:"3px",backgroundColor:x||!$e?j:"transparent",border:"none",cursor:"pointer",transition:"background-color 0.15s"},children:e.jsx(Qr,{size:20,active:!$e,dark:B})}),x&&e.jsxs("div",{style:{position:"absolute",top:"calc(100% + 8px)",right:0,backgroundColor:L,borderRadius:"8px",border:`1px solid ${ne}`,boxShadow:_,padding:"8px",minWidth:"220px",zIndex:100},children:[e.jsxs("button",{onClick:ge,style:{width:"100%",display:"flex",alignItems:"center",gap:"10px",padding:"8px",borderRadius:"6px",backgroundColor:"transparent",border:"none",cursor:"pointer",transition:"background-color 0.15s"},onMouseEnter:q=>q.currentTarget.style.backgroundColor=oe,onMouseLeave:q=>q.currentTarget.style.backgroundColor="transparent",children:[e.jsx(so,{checked:$e,primaryColor:b,dark:B}),e.jsx("img",{src:Hr,alt:"All Networks",style:{width:"20px",height:"20px",borderRadius:"4px",objectFit:"cover"}}),e.jsx("span",{style:{fontFamily:'"IBM Plex Mono", monospace',fontSize:"12px",fontWeight:600,letterSpacing:"0.5px",color:he},children:"ALL NETWORKS"})]}),we.map(q=>e.jsxs("button",{onClick:()=>Me(q.id),style:{width:"100%",display:"flex",alignItems:"center",gap:"10px",padding:"8px",borderRadius:"6px",backgroundColor:"transparent",border:"none",cursor:"pointer",transition:"background-color 0.15s"},onMouseEnter:M=>M.currentTarget.style.backgroundColor=oe,onMouseLeave:M=>M.currentTarget.style.backgroundColor="transparent",children:[e.jsx(so,{checked:U.has(q.id),primaryColor:b,dark:B}),e.jsx("img",{src:q.icon,alt:q.name,style:{width:"20px",height:"20px",borderRadius:"50%"}}),e.jsx("span",{style:{fontFamily:'"IBM Plex Mono", monospace',fontSize:"12px",fontWeight:600,letterSpacing:"0.5px",color:he},children:q.name.toUpperCase()})]},q.id))]})]})]})}),e.jsxs("div",{style:{padding:"0 32px 20px",display:"flex",flexDirection:"column",gap:"8px",maxHeight:"400px",overflowY:"auto"},children:[We&&e.jsx("div",{style:{padding:"24px 8px",textAlign:"center",fontFamily:'"IBM Plex Mono", monospace',fontSize:"13px",color:z},children:"Loading balances..."}),!We&&ve.length===0&&e.jsx("div",{style:{padding:"24px 8px",textAlign:"center",fontFamily:'"IBM Plex Mono", monospace',fontSize:"13px",color:z},children:"No tokens found"}),ve.map(q=>{const M=ze(q),N=g===M,J=y===M,xe=Q.getChainConfig(q.chainId)?.displayName||`Chain ${q.chainId}`;return e.jsxs("button",{onClick:()=>Qe(q),onMouseEnter:()=>v(M),onMouseLeave:()=>v(null),style:{width:"100%",display:"flex",alignItems:"center",gap:"16px",padding:"8px",borderRadius:"8px",backgroundColor:N?ie:"transparent",border:N||J?`1px solid ${be}`:"1px solid transparent",cursor:"pointer",transition:"all 0.2s"},children:[e.jsx("div",{style:{flexShrink:0},children:e.jsx(xn,{symbol:q.symbol,logoURI:q.logoURI,size:40})}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"flex-start",gap:"2px",flex:1,minWidth:0},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px"},children:[e.jsx("span",{style:{fontFamily:'"IBM Plex Mono", monospace',fontSize:"15px",fontWeight:500,letterSpacing:"0.4px",color:w,textAlign:"left"},children:q.name}),e.jsx("img",{src:no,alt:"Verified",style:{width:"14px",height:"14px"}})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"4px"},children:[ln[q.chainId]&&e.jsx("img",{src:ln[q.chainId],alt:"",style:{width:"14px",height:"14px",borderRadius:"50%"}}),e.jsxs("span",{style:{fontFamily:'"IBM Plex Mono", monospace',fontSize:"12px",fontWeight:400,color:z,textAlign:"left"},children:[q.symbol," \xB7 ",xe]})]})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"flex-end",gap:"2px",flexShrink:0},children:[q.balanceUsd>0&&e.jsx("span",{style:{fontFamily:'"IBM Plex Mono", monospace',fontSize:"16px",fontWeight:600,color:w},children:Bn(q.balanceUsd)}),e.jsxs("span",{style:{fontFamily:'"IBM Plex Mono", monospace',fontSize:"12px",fontWeight:400,color:z},children:[kn(q.balanceFormatted)," ",q.symbol]})]})]},M)})]})]})};var qr="data:image/png;base64,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";const oo=t=>{const n=(t.id||"").toLowerCase(),s=(t.name||"").toLowerCase();return n.startsWith("io.privy.wallet")||s.includes("privy wallet")},Yr=({dark:t,dk:n,primaryColor:s,disabled:r,onError:a})=>{const[l,i]=o.useState(!1),{connectWallet:d}=_t.useConnectWallet({onSuccess:()=>{i(!1)},onError:c=>{i(!1),a(Zt(c,"Failed to connect wallet."))}});return e.jsxs("button",{onClick:()=>{r||l||(i(!0),d({walletChainType:"ethereum-only"}))},disabled:r||l,style:{width:"100%",display:"flex",alignItems:"center",gap:"14px",padding:"10px",borderRadius:"8px",backgroundColor:l?t?n.hoverBg:"#f3f4f6":"transparent",border:`2px solid ${t?`${s}33`:`${s}55`}`,cursor:r||l?"not-allowed":"pointer",opacity:r?.6:1,transition:"all 0.2s"},children:[e.jsx("div",{style:{width:"40px",height:"40px",borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:t?n.cardBg:"#f3f4f6"},children:e.jsx("img",{src:Wn.metamask,alt:"Browser wallet",style:{width:"26px",height:"26px",objectFit:"contain"}})}),e.jsx("span",{className:"ibm-plex-mono",style:{fontSize:"17px",fontWeight:500,letterSpacing:"0.4px",color:t?n.textPrimary:"#111827",flex:1,textAlign:"left",fontFamily:'"IBM Plex Mono", monospace'},children:l?"Opening wallet picker...":"MetaMask / Browser Wallet"})]})},Zr=({isOpen:t,onClose:n,onWalletSelect:s,onContinue:r,requiredChainId:a,styles:l})=>{const{dark:i,primaryColor:d,dk:c,theme:h}=K.useSpiceBrand(l),u=o.useContext(K.SpiceFlowProviderContext),[f,g]=o.useState(null),[p,y]=o.useState(!1),[v,x]=o.useState(null),[k,U]=o.useState(!1),[S,C]=o.useState(null),[I,F]=o.useState("idle"),[W,E]=o.useState(null),[B,b]=o.useState(!1),[R,$]=o.useState(!1),[X,A]=o.useState(!1),[O,L]=o.useState(!1);o.useEffect(()=>{t||(x(null),U(!1),y(!1),C(null),b(!1))},[t]);const{address:ne,chain:_,connector:j,isConnected:oe}=ft.useAccount(),he=ne,w=oe&&!!he,{connectors:z,connect:ie}=ft.useConnect(),{disconnect:be}=ft.useDisconnect(),{switchChainAsync:se}=ft.useSwitchChain(),{reconnect:we}=ft.useReconnect(),ae=o.useRef(new Map),Ae=o.useRef(!1),Re=V.getChainIdsByNetwork(u?.network||"testnet");o.useEffect(()=>{t&&!w&&!Ae.current&&we()},[t,w,we]),o.useEffect(()=>{t||(Ae.current=!1)},[t]);const Se=o.useCallback(async G=>{if(ae.current.has(G)){const H=ae.current.get(G);F(H?"eligible":"ineligible"),b(!H);return}F("checking"),E(null);try{const H=await fetch(`https://portal-api.spicenet.io/api/v1/devnet/eligibility/admin?address=${G}`,{method:"GET",headers:{"Content-Type":"application/json","X-Api-Key":"c1820ce3-48ef-497d-8f17-ea80d0b4a608"}});if(!H.ok)throw new Error(`Eligibility check failed with status ${H.status}`);const de=(await H.json())?.isEligible||!1;ae.current.set(G,de),F(de?"eligible":"ineligible"),b(!de)}catch(H){console.error("Eligibility check failed:",H),F("error"),E("Could not verify eligibility. Please retry.")}},[]);o.useEffect(()=>{t&&w&&he&&F("eligible")},[t,w,he,Se]);const je=o.useRef(_);o.useEffect(()=>{je.current=_},[_]);const We=a?Q.getChainConfig(a):null,Ne=a?ln[a]||yn:_?.id&&ln[_.id]||yn,ve=We?.displayName||_?.name||`Chain ${_?.id||a}`,ze=_?.id?ln[_.id]||yn:Ne,Qe=_?.name?_.name:_?.id?`Chain ${_.id}`:"Not detected",Me=G=>G.type==="announced"||typeof G.ready=="boolean"&&G.ready?!0:G.type==="injected"?typeof window<"u"&&!!window.ethereum:!0,ge=z.filter(G=>{const H=G.name.toLowerCase(),de=(G.id||"").toLowerCase();return u?.provider==="privy"&&oo(G)||["safe"].includes(G.type)?!1:G.type==="walletConnect"?!!G?.options?.projectId:G.type==="announced"?!0:G.type==="injected"||["metamask","rabby","phantom","coinbase","trust","rainbow"].some(ue=>H.includes(ue)||de.includes(ue))?Me(G):!1}),$e=async G=>{if(!(k||p))try{if(U(!0),C(G.uid),x(null),await ie({connector:G}),await new Promise(H=>setTimeout(H,500)),s&&s(G.id),a){y(!0);try{if(_?.id!==a){await se({chainId:a});let H=0;const de=20;for(;H<de;){if(await new Promise(ue=>setTimeout(ue,100)),je.current?.id===a){x(null);break}H++}je.current?.id!==a&&x("Please switch to the correct network in your wallet to continue.")}}catch(H){console.error("Chain switch error:",H),H.code===4902||H.name==="ChainNotConfiguredError"?x("This network is not configured in your wallet. Please add it manually to continue."):H.code===4001?x("Network switch cancelled. Please switch manually in your wallet to continue."):x("Unable to switch network. Please switch manually in your wallet to continue.")}finally{y(!1)}}await new Promise(H=>setTimeout(H,800)),he&&F("eligible")}catch(H){console.error("Connection error:",H),rr(H)?x("Connection rejected. Please try again."):x(Zt(H,"Failed to connect wallet."))}finally{U(!1),C(null)}},q=G=>{if(G.icon)return G.icon;const H=(G.name||"").toLowerCase();for(const[de,ue]of Object.entries(Wn))if(H.includes(de.toLowerCase()))return ue;if(!oo(G)&&(G.type==="injected"||G.type==="announced")&&typeof window<"u"&&window.ethereum){const de=window.ethereum;if(de.isMetaMask)return Wn.metamask;if(de.isRabby)return Wn.rabby;if(de.isPhantom)return Wn.phantom}return null},M=async G=>{if(!p){y(!0),x(null),L(!1);try{await se({chainId:G});let H=0;const de=20;for(;H<de;){if(await new Promise(ue=>setTimeout(ue,100)),je.current?.id===G){x(null);break}H++}je.current?.id!==G&&x("Unable to switch to the correct network. Please switch manually in your wallet to continue.")}catch(H){console.error("Manual chain switch error:",H),H.code===4902||H.name==="ChainNotConfiguredError"?x("This network is not configured in your wallet. Please add it manually to continue."):H.code===4001?x("Network switch cancelled. Please switch manually in your wallet to continue."):x("Unable to switch network. Please switch manually in your wallet to continue.")}finally{y(!1)}}},N=async()=>{if(!p){if(!a){L(G=>!G);return}y(!0),x(null);try{await se({chainId:a});let G=0;const H=20;for(;G<H;){if(await new Promise(de=>setTimeout(de,100)),je.current?.id===a){x(null);break}G++}je.current?.id!==a&&x("Unable to switch to the correct network. Please switch manually in your wallet to continue.")}catch(G){console.error("Manual chain switch error:",G),G.code===4902||G.name==="ChainNotConfiguredError"?x("This network is not configured in your wallet. Please add it manually to continue."):G.code===4001?x("Network switch cancelled. Please switch manually in your wallet to continue."):x("Unable to switch network. Please switch manually in your wallet to continue.")}finally{y(!1)}}},J=async()=>{Ae.current=!0;try{await be()}finally{ae.current.clear(),x(null),U(!1),y(!1),C(null),F("idle"),E(null),b(!1),L(!1)}},xe=w&&!p&&!k&&I==="eligible"&&(!a||_?.id===a),me=w&&!p&&!k&&I==="eligible"&&a&&_?.id!==a;return e.jsxs(on,{isOpen:t,onClose:n,title:"Connect Wallet",styles:l,dark:i,bannerSrc:qr,bannerAlt:"Connect wallet banner",children:[a===421614&&!w&&e.jsx("div",{style:{padding:"0 24px",marginTop:"20px"},children:e.jsxs("div",{style:{padding:"12px 16px",backgroundColor:i?c.infoBg:"#EFF6FF",borderRadius:"8px",border:`1px solid ${i?c.infoBorder:"#BFDBFE"}`,display:"flex",alignItems:"center",gap:"10px"},children:[e.jsx("div",{style:{width:"32px",height:"32px",borderRadius:"50%",backgroundColor:i?c.inputBg:"#DBEAFE",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},children:e.jsx("img",{src:cs,alt:"Rabby",style:{width:"20px",height:"20px",objectFit:"contain"}})}),e.jsxs("div",{style:{flex:1},children:[e.jsx("p",{style:{margin:"0 0 4px 0",color:i?c.infoText:"#1E40AF",fontSize:"13px",fontWeight:600},children:"Recommended Wallet"}),e.jsx("p",{style:{margin:0,color:i?c.infoText:"#1E3A8A",fontSize:"12px",lineHeight:"1.4",opacity:i?.85:1},children:"For Arbitrum Sepolia, we recommend using Rabby wallet instead of MetaMask for the best experience."})]})]})}),e.jsxs("div",{style:{padding:"0 24px 20px",display:"flex",flexDirection:"column",gap:"12px",marginTop:"20px"},children:[v&&e.jsxs("div",{style:{padding:"12px",backgroundColor:i?c.warningBg:"#fef3c7",borderRadius:"8px",border:`1px solid ${i?c.warningBorder:"#fde68a"}`},children:[e.jsx("p",{style:{margin:"0 0 10px 0",color:i?c.warningText:"#92400e",fontSize:"14px"},children:v}),e.jsx("button",{onClick:N,disabled:p,style:{width:"100%",padding:"8px 12px",borderRadius:"6px",border:`1px solid ${i?c.warningBorder:"#fbbf24"}`,backgroundColor:i?c.cardBg:"white",cursor:p?"not-allowed":"pointer",fontWeight:600,fontSize:"13px",color:i?c.warningText:"#92400e",opacity:p?.6:1},children:p?"Switching...":"Try Switch Again"})]}),p&&e.jsxs("div",{style:{padding:"12px",backgroundColor:i?c.infoBg:"#dbeafe",borderRadius:"8px",display:"flex",alignItems:"center",gap:"10px",marginTop:"20px"},children:[e.jsx(Ge.Spinner,{size:20,color:i?c.infoText:"#3b82f6"}),e.jsx("p",{style:{margin:0,color:i?c.infoText:"#1e40af",fontSize:"14px"},children:"Switching network..."})]}),w&&I==="checking"&&e.jsx("div",{style:{padding:"12px",backgroundColor:i?c.warningBg:"#fef3c7",borderRadius:"8px",border:`1px solid ${i?c.warningBorder:"#fde68a"}`},children:e.jsxs("p",{style:{margin:0,color:i?c.warningText:"#92400e",fontSize:"14px"},children:["Checking eligibility for ",he?.slice(0,6),"..."]})}),w&&I==="error"&&e.jsxs("div",{style:{padding:"12px",backgroundColor:i?c.errorBg:"#fef2f2",borderRadius:"8px",border:`1px solid ${i?c.errorBorder:"#fecdd3"}`},children:[e.jsx("p",{style:{margin:0,color:i?c.errorText:"#b91c1c",fontSize:"14px"},children:W||"Eligibility check failed. Please try again."}),e.jsx("button",{onClick:()=>he&&Se(he),style:{marginTop:"10px",padding:"8px 12px",borderRadius:"6px",border:`1px solid ${i?c.errorBorder:"#e5e7eb"}`,backgroundColor:i?c.cardBg:"white",cursor:"pointer",fontWeight:600,color:i?c.errorText:"inherit"},children:"Retry eligibility check"})]}),w&&a===421614&&j&&(j.name.toLowerCase().includes("metamask")||j.type==="injected")&&e.jsxs("div",{style:{padding:"12px 16px",backgroundColor:i?c.infoBg:"#EFF6FF",borderRadius:"8px",border:`1px solid ${i?c.infoBorder:"#BFDBFE"}`,display:"flex",alignItems:"center",gap:"10px"},children:[e.jsx("div",{style:{width:"32px",height:"32px",borderRadius:"50%",backgroundColor:i?c.inputBg:"#DBEAFE",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},children:e.jsx("img",{src:cs,alt:"Rabby",style:{width:"20px",height:"20px",objectFit:"contain"}})}),e.jsxs("div",{style:{flex:1},children:[e.jsx("p",{style:{margin:"0 0 4px 0",color:i?c.infoText:"#1E40AF",fontSize:"13px",fontWeight:600},children:"Recommended Wallet"}),e.jsx("p",{style:{margin:0,color:i?c.infoText:"#1E3A8A",fontSize:"12px",lineHeight:"1.4",opacity:i?.85:1},children:"For Arbitrum Sepolia, we recommend using Rabby wallet instead of MetaMask for the best experience."})]})]}),w&&he?e.jsxs("div",{style:{border:`1px solid ${i?c.successBorder:"#02974F"}`,borderRadius:"8px",overflow:"hidden",marginTop:"20px"},children:[e.jsxs("div",{style:{backgroundColor:i?c.successBg:"#00FFA81C",padding:"14px 18px",display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[e.jsx("div",{style:{width:"22px",height:"22px",borderRadius:"50%",backgroundColor:"#02974F",display:"flex",alignItems:"center",justifyContent:"center",color:"white",fontSize:"14px",fontWeight:"bold"},children:"\u2713"}),e.jsx("span",{className:"ibm-plex-mono",style:{color:i?c.successText:"#02974F",fontWeight:600,fontSize:"14px",letterSpacing:"0.5px"},children:"WALLET CONNECTED"})]}),e.jsx("div",{style:{width:"38px",height:"38px",borderRadius:"50%",backgroundColor:i?c.cardBg:"#f3f4f6",display:"flex",alignItems:"center",justifyContent:"center",overflow:"hidden"},children:j&&q(j)?e.jsx("img",{src:q(j),alt:j.name,style:{width:"24px",height:"24px",objectFit:"contain"}}):e.jsx("span",{style:{fontSize:"16px",fontWeight:"bold",color:i?c.textPrimary:"inherit"},children:j?.name?.charAt(0)||"W"})})]}),e.jsxs("div",{style:{padding:"18px",backgroundColor:i?c.cardBg:"white"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:"14px"},children:[e.jsx("span",{className:"ibm-plex-mono",style:{color:i?c.textSecondary:"#939291",fontSize:"13px",fontWeight:500,letterSpacing:"0.3px"},children:"ADDRESS:"}),e.jsxs("span",{className:"ibm-plex-mono",style:{color:i?c.textPrimary:"black",fontSize:"14px",fontWeight:600,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.3px"},children:[he.slice(0,6),"...",he.slice(-4)]})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:"16px"},children:[e.jsx("span",{className:"ibm-plex-mono",style:{color:i?c.textSecondary:"#939291",fontSize:"13px",fontWeight:500,letterSpacing:"0.3px"},children:"NETWORK:"}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px"},children:[e.jsx("img",{src:ze,alt:Qe,style:{width:"20px",height:"20px",borderRadius:"50%",objectFit:"contain"}}),e.jsx("span",{style:{color:i?c.textPrimary:"black",fontSize:"14px",fontWeight:500},children:Qe}),a&&_?.id===a?e.jsx("div",{style:{width:"16px",height:"16px",borderRadius:"50%",backgroundColor:"#02974F",display:"flex",alignItems:"center",justifyContent:"center",color:"white",fontSize:"10px",fontWeight:"bold"},children:"\u2713"}):a?e.jsx("div",{style:{width:"16px",height:"16px",borderRadius:"50%",backgroundColor:"#EF4444",display:"flex",alignItems:"center",justifyContent:"center",color:"white",fontSize:"10px",fontWeight:"bold"},children:"!"}):null,e.jsx("button",{onClick:N,disabled:p,style:{background:"none",border:"none",color:i?d:"#3C3E42",fontSize:"11px",fontWeight:500,textDecoration:"underline",cursor:p?"not-allowed":"pointer",padding:0,marginLeft:"4px",opacity:p?.6:1},children:p?"Switching...":"Switch"})]})]}),O&&e.jsx("div",{style:{marginBottom:"12px",border:`1px solid ${i?c.inputBorder:"#E5E7EB"}`,borderRadius:"8px",overflow:"hidden",backgroundColor:i?c.cardBg:"#f9fafb"},children:Re.map(G=>{const H=Q.getChainConfig(G);if(!H)return null;const de=_?.id===G;return e.jsxs("button",{onClick:()=>{de?L(!1):M(G)},style:{width:"100%",display:"flex",alignItems:"center",gap:"8px",padding:"10px 12px",backgroundColor:de?i?`${d}15`:`${d}10`:"transparent",border:"none",borderBottom:`1px solid ${i?c.inputBorder:"#E5E7EB"}`,cursor:de?"default":"pointer",transition:"background-color 0.15s"},onMouseEnter:ue=>{de||(ue.currentTarget.style.backgroundColor=i?"rgba(255,255,255,0.05)":"rgba(0,0,0,0.03)")},onMouseLeave:ue=>{ue.currentTarget.style.backgroundColor=de?i?`${d}15`:`${d}10`:"transparent"},children:[e.jsx("img",{src:ln[G]||yn,alt:H.displayName,style:{width:"20px",height:"20px",borderRadius:"50%",objectFit:"contain"}}),e.jsx("span",{style:{fontSize:"13px",fontWeight:de?600:400,color:i?c.textPrimary:"#1f2937",fontFamily:'"IBM Plex Mono", monospace'},children:H.displayName}),de&&e.jsx("span",{style:{marginLeft:"auto",fontSize:"11px",color:d,fontWeight:500},children:"Connected"})]},G)})}),e.jsxs("button",{className:"ibm-plex-mono",onClick:J,style:{width:"100%",padding:"10px",backgroundColor:"transparent",border:`1px solid ${i?c.inputBorder:"#E5E7EB"}`,borderRadius:"6px",cursor:"pointer",fontSize:"13px",fontWeight:500,color:i?c.textSecondary:"#9CA3AF",display:"flex",alignItems:"center",justifyContent:"center",gap:"6px"},children:[e.jsx("span",{style:{fontSize:"16px"},children:"\u27F2"}),"DISCONNECT"]})]})]}):e.jsxs(e.Fragment,{children:[u?.provider==="privy"&&e.jsx(Yr,{dark:i,dk:c,primaryColor:d,disabled:k||p,onError:x}),ge.map(G=>{const H=Me(G),de=S===G.uid,ue=!H||k||de;return e.jsxs("button",{onClick:()=>{ue||$e(G)},onMouseEnter:()=>!ue&&g(G.uid),onMouseLeave:()=>g(null),disabled:ue,style:{width:"100%",display:"flex",alignItems:"center",gap:"14px",padding:"10px",borderRadius:"8px",backgroundColor:de?i?c.hoverBg:"#f3f4f6":"transparent",border:f===G.uid&&!ue?`2px solid ${i?`${d}44`:`${d}66`}`:"2px solid transparent",cursor:ue?"not-allowed":"pointer",opacity:ue?.6:1,transition:"all 0.2s"},children:[e.jsx("div",{style:{width:"40px",height:"40px",borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:i?c.cardBg:"#f3f4f6"},children:q(G)?e.jsx("img",{src:q(G),alt:G.name,style:{width:"26px",height:"26px",objectFit:"contain"}}):e.jsx("span",{style:{fontSize:"16px",fontWeight:"bold",color:i?c.textPrimary:"inherit"},children:G.name.charAt(0)})}),e.jsxs("span",{className:"ibm-plex-mono",style:{fontSize:"17px",fontWeight:500,letterSpacing:"0.4px",color:ue?i?c.inputPlaceholder:"#9ca3af":i?c.textPrimary:"#111827",flex:1,textAlign:"left",fontFamily:'"IBM Plex Mono", monospace'},children:[de?"Connecting...":G.name,!H&&!de&&e.jsx("span",{style:{fontSize:"12px",marginLeft:"8px"},children:"(Not detected)"})]})]},G.uid)})]})]}),me&&!v&&e.jsx("div",{style:{padding:"0 24px 20px"},children:e.jsxs("div",{style:{padding:"12px",backgroundColor:i?c.warningBg:"#fef3c7",borderRadius:"8px",border:`1px solid ${i?c.warningBorder:"#fde68a"}`},children:[e.jsxs("p",{style:{margin:"0 0 10px 0",color:i?c.warningText:"#92400e",fontSize:"14px"},children:["Please switch to ",ve," to continue."]}),e.jsx("button",{onClick:N,disabled:p,style:{width:"100%",padding:"8px 12px",borderRadius:"6px",border:`1px solid ${i?c.warningBorder:"#fbbf24"}`,backgroundColor:i?c.cardBg:"white",cursor:p?"not-allowed":"pointer",fontWeight:600,fontSize:"13px",color:i?c.warningText:"#92400e",opacity:p?.6:1},children:p?"Switching...":"Switch Network"})]})}),e.jsx("div",{style:{padding:"0 24px 25px"},children:(()=>{const G=!xe,H=X?`${d}cc`:R?`${d}ee`:d;return e.jsx(Ge.Button,{variant:"outline",fullWidth:!0,onClick:async()=>{xe&&(await new Promise(de=>setTimeout(de,300)),r?await r():n())},disabled:G,theme:h,onMouseEnter:()=>$(!0),onMouseLeave:()=>{$(!1),A(!1)},onMouseDown:()=>A(!0),onMouseUp:()=>A(!1),style:{height:"56px",backgroundColor:G?l?.button?.disabledBackgroundColor??`${d}88`:H,color:l?.button?.color||(i?c.textPrimary:"#0e0d0b"),border:`1.5px solid ${i?`${d}88`:"#0e0d0b"}`,fontSize:"20px",fontWeight:600,letterSpacing:"1.5px",fontFamily:'"IBM Plex Mono", monospace',transition:"all 150ms ease",transform:G?"none":X?"scale(0.98)":R?"translateY(-2px)":"none",boxShadow:X?`2px 2px 0px ${i?d:"#0e0d0b"}`:R&&!G?`5px 5px 0px ${c.shell}, 6px 6px 0px ${i?`${d}88`:"#0e0d0b"}`:`3px 3px 0px ${c.shell}, 4px 4px 0px ${i?`${d}88`:"#0e0d0b"}`,cursor:G?"not-allowed":"pointer",opacity:G?.78:1,borderRadius:"12px"},children:k?"CONNECTING...":p?"SWITCHING NETWORK...":I==="checking"?"CHECKING ELIGIBILITY...":"CONTINUE"})})()}),B&&e.jsx("div",{style:{position:"fixed",inset:0,backgroundColor:i?"rgba(0, 0, 0, 0.72)":"rgba(0, 0, 0, 0.55)",display:"flex",alignItems:"center",justifyContent:"center",padding:"16px",zIndex:60},children:e.jsxs("div",{style:{backgroundColor:i?c.cardBg:"white",borderRadius:"12px",padding:"28px",width:"100%",maxWidth:"420px",textAlign:"center",boxShadow:"0 20px 60px rgba(0, 0, 0, 0.18)"},children:[e.jsx("p",{className:"ibm-plex-mono",style:{fontSize:"14px",fontWeight:600,letterSpacing:"0.4px",color:"#EF4444",marginBottom:"10px"},children:"ACCESS BLOCKED"}),e.jsx("h3",{style:{margin:"0 0 12px",fontSize:"22px",fontWeight:600,color:i?c.textPrimary:"inherit"},children:"Sorry, you're not eligible"}),e.jsx("p",{style:{margin:"0 0 18px",color:i?c.textSecondary:"#4B5563"},children:"This wallet does not meet the eligibility requirements to deposit assets."}),e.jsx("button",{onClick:async()=>{ae.current.clear(),await J(),n()},style:{width:"100%",padding:"12px",borderRadius:"8px",border:"none",backgroundColor:i?"white":"#111827",color:i?"#111827":"white",fontWeight:600,cursor:"pointer"},children:"Disconnect wallet"})]})})]})},hn=t=>t?.address?{address:t.address,wallet:t,getWalletClient:n=>mn.getProviderWalletClient(t,n),getEthereumProvider:n=>mn.getProviderEthereumProvider(t,n)}:null,zn=()=>{const t=o.useContext(K.SpiceFlowProviderContext),{address:n,connector:s}=ft.useAccount();let r=null,a=null;try{r=_t.useWallets(),{user:a}=_t.usePrivy()}catch{r=null,a=null}let l=null;try{l=Dn.useDynamicContext()}catch{l=null}const i=r?.wallets||[],d=_t.getEmbeddedConnectedWallet(i),c=d?.address?.toLowerCase(),h=i.find(S=>S.connectorType!=="embedded"&&S.address?.toLowerCase()!==c),u=mn.getDynamicEmbeddedWallet(l),f=mn.getDynamicExternalWallet(l),g=n&&s?{address:n,connector:s,getEthereumProvider:()=>s.getProvider()}:null,p=t?.provider,y=hn(d)||hn(u),v=hn(g)||hn(h)||hn(f)||null,x=p==="dynamic"?hn(u):p==="privy"?hn(d):y,k=p==="dynamic"?hn(g)||hn(f):p==="privy"?hn(g)||hn(h):v,U=p==="dynamic"?x?.address:p==="privy"?x?.address||a?.wallet?.address:y?.address||a?.wallet?.address;return{embeddedWallet:x,externalWallet:k,embeddedAddress:U,externalAddress:k?.address}},ro="spiceflow:pendingDeposit",ts="spiceflow:pendingDepositChanged";function ao(t,n,s){return`${ro}:${t.toLowerCase()}:${n}:${s.toLowerCase()}`}function Cs(){try{const t="__spiceflow_storage_test__";return localStorage.setItem(t,"1"),localStorage.removeItem(t),!0}catch{return!1}}function Xr(t){if(!Cs())return;const n=ao(t.embeddedWalletAddress,t.chainId,t.tokenAddress);try{localStorage.setItem(n,JSON.stringify(t)),window.dispatchEvent(new Event(ts))}catch(s){console.error("[pendingDeposit] Failed to save:",s)}}function Gr(t){if(!Cs())return[];const n=`${ro}:${t.toLowerCase()}:`,s=[],r=Date.now();for(let a=0;a<localStorage.length;a++){const l=localStorage.key(a);if(!(!l||!l.startsWith(n)))try{const i=localStorage.getItem(l);if(!i)continue;const d=JSON.parse(i);if(r-d.timestamp>6048e5){localStorage.removeItem(l);continue}s.push(d)}catch{localStorage.removeItem(l)}}return s}function ws(t,n,s){if(!Cs())return;const r=ao(t,n,s);localStorage.removeItem(r),window.dispatchEvent(new Event(ts))}var io="data:image/svg+xml,%3csvg width='10' height='10' viewBox='0 0 10 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M5 4.99995V6.99995M5 3.31245V3.31189M9.5 5C9.5 7.48528 7.48528 9.5 5 9.5C2.51472 9.5 0.5 7.48528 0.5 5C0.5 2.51472 2.51472 0.5 5 0.5C7.48528 0.5 9.5 2.51472 9.5 5Z' stroke='black' stroke-opacity='0.4' stroke-linecap='round' stroke-linejoin='round'/%3e%3c/svg%3e";const Jr=({isOpen:t,onClose:n,onConfirm:s,data:r,isExecuting:a=!1,error:l=null,theme:i,styles:d,intentStatus:c,postDepositStatus:h="idle",hasPostDepositInstruction:u=!1})=>{const{dark:f,dk:g,theme:p}=K.useSpiceBrand(d),[y,v]=o.useState(!1),[x,k]=o.useState(!0);o.useEffect(()=>{t||v(!1)},[t]);const U=()=>{v(!0),setTimeout(()=>{n()},300)},S=()=>{k(!x)};if(!t||!r)return null;const C=c?.overallStatus==="processing",I=c?.overallStatus==="success",F=!!c,W=!F&&u,E=W&&h==="executing",B=W&&h==="success",b=I&&u&&(h==="idle"||h==="executing")||E,R=I&&(!u||h==="success"||h==="error")||B||W&&h==="error",$=f?g.cardBg:"#ffffff",X=f?"0 -4px 20px rgba(0, 0, 0, 0.4)":"0 -4px 20px rgba(0, 0, 0, 0.15)",A=f?g.textSecondary:"#6b7280",O=f?g.textPrimary:"#1f2937",L=f?g.textPrimary:"#1f2937";return e.jsxs("div",{style:{position:"absolute",bottom:0,left:0,right:0,zIndex:10,animation:y?"slideDown 0.3s ease-in":"slideUp 0.3s ease-out",pointerEvents:"auto"},children:[e.jsxs("div",{style:{backgroundColor:$,borderRadius:"0",width:"100%",maxWidth:"522px",margin:"0 auto",padding:"18px 24px",boxShadow:X},children:[!I&&!B&&e.jsxs(e.Fragment,{children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:i.spacing.md},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",cursor:"pointer"},onClick:S,children:[e.jsx("span",{style:{fontSize:"13px",fontWeight:i.typography.fontWeight.medium,color:A,fontFamily:d?.fontFamily||i.typography.fontFamily},children:"Transaction Details"}),e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",style:{transform:x?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.3s ease"},children:e.jsx("path",{d:"M4 6L8 10L12 6",stroke:A,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]}),e.jsx("button",{onClick:ne=>{ne.stopPropagation(),n()},style:{background:"none",border:"none",cursor:"pointer",padding:"4px",display:"flex",alignItems:"center",justifyContent:"center",color:A,transition:"color 0.2s ease"},onMouseEnter:ne=>{ne.currentTarget.style.color=L},onMouseLeave:ne=>{ne.currentTarget.style.color=A},children:e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",children:e.jsx("path",{d:"M12 4L4 12M4 4L12 12",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})})]}),e.jsxs("div",{style:{marginBottom:i.spacing.lg,display:"flex",flexDirection:"column",gap:i.spacing.md,overflow:"hidden",maxHeight:x?"200px":"0px",opacity:x?1:0,transition:"max-height 0.3s ease, opacity 0.3s ease"},children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:A,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px"},children:"NETWORK"}),e.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:O,fontFamily:'"IBM Plex Mono", monospace'},children:r.network})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:A,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px"},children:"DEPOSITED AMOUNT"}),e.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:i.colors.success,fontFamily:'"IBM Plex Mono", monospace'},children:r.amount})]}),r.creditedAmount&&e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:A,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px"},children:"CREDITED AMOUNT"}),e.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:O,fontFamily:'"IBM Plex Mono", monospace'},children:r.creditedAmount})]}),r.spicenetFee&&e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:A,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px"},children:"SPICENET FEE"}),e.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:O,fontFamily:'"IBM Plex Mono", monospace'},children:r.spicenetFee})]}),r.networkFee&&e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:A,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px"},children:"EST. GAS FEE"}),e.jsx("span",{style:{fontSize:i.typography.fontSize.sm,fontWeight:500,color:O,fontFamily:'"IBM Plex Mono", monospace'},children:r.networkFee})]})]})]}),l&&!F&&e.jsx("div",{style:{marginBottom:i.spacing.md,padding:i.spacing.md,backgroundColor:d?.errorMessage?.backgroundColor||(i.mode==="light"?"#fef2f2":`${i.colors.error}20`),border:`1px solid ${d?.errorMessage?.borderColor||(i.mode==="light"?"#fecaca":i.colors.error)}`,borderRadius:d?.errorMessage?.borderRadius||i.borderRadius.md},children:e.jsx("p",{style:{color:d?.errorMessage?.color||i.colors.error,fontSize:d?.errorMessage?.fontSize||i.typography.fontSize.sm,margin:0,fontFamily:d?.errorMessage?.fontFamily||d?.fontFamily||i.typography.fontFamily},children:l})}),e.jsx(Ge.Button,{onClick:R?U:s,variant:"outline",fullWidth:!0,disabled:a||C||b||E,styles:d,theme:p,children:a||C||E||b?"PROCESSING...":R?"CONTINUE \u2192":"CONFIRM DEPOSIT"}),R&&e.jsx("p",{style:{marginTop:i.spacing.md,marginBottom:0,fontSize:"14px",color:A,textAlign:"center",fontFamily:d?.fontFamily||i.typography.fontFamily},children:"Your funds are now available in your Account"}),e.jsx("div",{style:{marginTop:i.spacing.md,display:"flex",justifyContent:"center",alignItems:"center"},children:e.jsx("img",{src:is,alt:"Powered by SpiceNet",style:{height:"auto",width:"130px",opacity:1,filter:f?"brightness(0) invert(1) opacity(0.7)":"none"}})})]}),e.jsx("style",{children:`
50
50
  @keyframes slideUp {
51
51
  from {
52
52
  transform: translateY(100%);
@@ -63,7 +63,7 @@
63
63
  transform: translateY(100%);
64
64
  }
65
65
  }
66
- `})]})},Gr=({intentStatus:t,postDepositSuccess:n=!1,postDepositAmount:s=null,postDepositStatus:r="idle",depositActionLabel:i="Post-Deposit Instruction",sourceChainName:l="Source Chain",directDepositStatus:a="idle",directDepositTxHash:c=null,directDepositChainId:d=null,styles:p})=>{const{dark:u,dk:f}=Y.useSpiceBrand(p),[g,h]=o.useState([]),y=o.useRef(null),w=u?f.cardBg:"#ffffff",x=u?f.textPrimary:"#374151",k=u?`${f.cardBorder}`:"rgba(255, 255, 255, 0.2)",U=u?f.inputBorder:"#d1d5db",v=u?f.textSecondary:"#6b7280",b=u?f.successBg||"#064e3b":"#d1fae5",B=u?f.successText||"#6ee7b7":"#065f46",T=u?f.successBorder||"#065f4633":"#75FFD036",W=u?f.errorBg||"#7f1d1d":"#fecaca",E=u?f.errorText||"#fca5a5":"#991b1b",I=u?f.errorBorder||"#991b1b33":"#FCA5A536",C=t?.overallStatus==="processing",P=t?.overallStatus==="success",J=P&&r!=="idle",K=i;return o.useEffect(()=>((a==="success"&&!C&&!P||n&&!C)&&(y.current=setTimeout(()=>{h([])},6e3)),()=>{y.current&&clearTimeout(y.current)}),[a,n,C,P]),o.useEffect(()=>{const j=[];if(a==="processing"&&j.push({id:"direct-processing",type:"direct-processing",content:"PROCESSING DEPOSIT...",borderColor:k,backgroundColor:w,textColor:x,icon:e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",style:{flexShrink:0,animation:"spin 1s linear infinite"},children:[e.jsx("circle",{cx:"10",cy:"10",r:"8",stroke:U,strokeWidth:"3",fill:"none"}),e.jsx("circle",{cx:"10",cy:"10",r:"8",stroke:v,strokeWidth:"3",fill:"none",strokeDasharray:"40",strokeDashoffset:"10",strokeLinecap:"round"})]})}),a==="success"){const M=c&&d?q.getExplorerUrl(d,c):void 0;j.push({id:"direct-success",type:"direct-success",content:"DEPOSIT CONFIRMED",borderColor:T,backgroundColor:b,textColor:B,explorerUrl:M!=="#"?M:void 0,icon:e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",style:{flexShrink:0},children:[e.jsx("circle",{cx:"10",cy:"10",r:"10",fill:"#10b981"}),e.jsx("path",{d:"M6 10l3 3 5-6",stroke:"#ffffff",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]})})}if(C&&j.push({id:"processing",type:"processing",content:"VERIFYING TRANSACTION SIGNATURE",borderColor:k,backgroundColor:w,textColor:x,icon:e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",style:{flexShrink:0,animation:"spin 1s linear infinite"},children:[e.jsx("circle",{cx:"10",cy:"10",r:"8",stroke:U,strokeWidth:"3",fill:"none"}),e.jsx("circle",{cx:"10",cy:"10",r:"8",stroke:v,strokeWidth:"3",fill:"none",strokeDasharray:"40",strokeDashoffset:"10",strokeLinecap:"round"})]})}),P&&(j.push({id:"submitted",type:"submitted",content:"SUBMITTED TRANSACTION TO BLOCKCHAIN",borderColor:T,backgroundColor:b,textColor:B,icon:e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",style:{flexShrink:0},children:[e.jsx("circle",{cx:"10",cy:"10",r:"10",fill:"#10b981"}),e.jsx("path",{d:"M6 10l3 3 5-6",stroke:"#ffffff",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]})}),j.push({id:"deposit-success",type:"deposit-success",content:`DEPOSIT TO ${l.toUpperCase()} SUCCESSFUL`,borderColor:T,backgroundColor:b,textColor:B,icon:e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",style:{flexShrink:0},children:[e.jsx("circle",{cx:"10",cy:"10",r:"10",fill:"#10b981"}),e.jsx("path",{d:"M6 10l3 3 5-6",stroke:"#ffffff",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]})})),J){const M=r==="success"?T:r==="error"?I:k,ne=r==="success"?b:r==="error"?W:w,$=r==="success"?B:r==="error"?E:x;let L="";r==="executing"?L=`EXECUTING ${K.toUpperCase()}...`:r==="success"?L=`${K.toUpperCase()} CONFIRMED`:r==="error"&&(L=`${K.toUpperCase()} FAILED`);let Q;r==="executing"?Q=e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",style:{flexShrink:0,animation:"spin 1s linear infinite"},children:[e.jsx("circle",{cx:"10",cy:"10",r:"8",stroke:U,strokeWidth:"3",fill:"none"}),e.jsx("circle",{cx:"10",cy:"10",r:"8",stroke:v,strokeWidth:"3",fill:"none",strokeDasharray:"40",strokeDashoffset:"10",strokeLinecap:"round"})]}):r==="success"?Q=e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",style:{flexShrink:0},children:[e.jsx("circle",{cx:"10",cy:"10",r:"10",fill:"#10b981"}),e.jsx("path",{d:"M6 10l3 3 5-6",stroke:"#ffffff",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]}):r==="error"&&(Q=e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",style:{flexShrink:0},children:[e.jsx("circle",{cx:"10",cy:"10",r:"10",fill:"#ef4444"}),e.jsx("path",{d:"M6 6l8 8M14 6l-8 8",stroke:"#ffffff",strokeWidth:"2",strokeLinecap:"round"})]})),j.push({id:"post-deposit",type:"post-deposit",content:L,status:r,borderColor:M,backgroundColor:ne,textColor:$,icon:Q})}n&&s&&j.push({id:"post-deposit-success",type:"post-deposit-success",content:`SUCCESSFULLY DEPOSITED ${s}`,borderColor:T,backgroundColor:b,textColor:B,icon:e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",style:{flexShrink:0},children:[e.jsx("circle",{cx:"10",cy:"10",r:"10",fill:"#10b981"}),e.jsx("path",{d:"M6 10l3 3 5-6",stroke:"#ffffff",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]})}),h(M=>{const ne=new Set(j.map(Q=>Q.id)),$=[],L=new Set;for(const Q of M)if(ne.has(Q.id)){const se=j.find(ae=>ae.id===Q.id);$.push(se),L.add(Q.id)}for(const Q of j)L.has(Q.id)||$.push(Q);if($.length>3){const Q=[],se=[];for(const z of $)z.type==="processing"||z.type==="post-deposit"&&z.status==="executing"?Q.push(z):se.push(z);const ae=[...Q],S=3-ae.length;return S>0&&se.length>0&&ae.push(...se.slice(-S)),ae}return $})},[C,P,J,r,n,s,K,l,a,c,d,u]),g.length===0?null:e.jsxs("div",{style:{position:"absolute",top:"56px",left:"24px",right:"24px",zIndex:100,display:"flex",flexDirection:"column",gap:"8px",pointerEvents:"none"},children:[g.map(j=>e.jsx("div",{style:{borderRadius:"12px",border:`4px solid ${j.borderColor}`,background:"transparent",animation:"fadeInSlide 0.4s ease-out"},children:e.jsxs("div",{style:{backgroundColor:j.backgroundColor,borderRadius:"8px",padding:"14px 16px",display:"flex",alignItems:"center",gap:"12px"},children:[j.icon,e.jsx("span",{style:{fontSize:"13px",fontWeight:"600",color:j.textColor,letterSpacing:"0.3px",fontFamily:'"Helvetica Neue", sans-serif',flex:1},children:j.content}),j.explorerUrl&&e.jsx("a",{href:j.explorerUrl,target:"_blank",rel:"noopener noreferrer",style:{fontSize:"12px",fontWeight:"600",color:j.textColor,textDecoration:"underline",whiteSpace:"nowrap",pointerEvents:"auto",opacity:.8},children:"View tx"})]})},j.id)),e.jsx("style",{children:`
66
+ `})]})},$r=({intentStatus:t,postDepositSuccess:n=!1,postDepositAmount:s=null,postDepositStatus:r="idle",depositActionLabel:a="Post-Deposit Instruction",sourceChainName:l="Source Chain",directDepositStatus:i="idle",directDepositTxHash:d=null,directDepositChainId:c=null,styles:h})=>{const{dark:u,dk:f}=K.useSpiceBrand(h),[g,p]=o.useState([]),y=o.useRef(null),v=u?f.cardBg:"#ffffff",x=u?f.textPrimary:"#374151",k=u?`${f.cardBorder}`:"rgba(255, 255, 255, 0.2)",U=u?f.inputBorder:"#d1d5db",S=u?f.textSecondary:"#6b7280",C=u?f.successBg||"#064e3b":"#d1fae5",I=u?f.successText||"#6ee7b7":"#065f46",F=u?f.successBorder||"#065f4633":"#75FFD036",W=u?f.errorBg||"#7f1d1d":"#fecaca",E=u?f.errorText||"#fca5a5":"#991b1b",B=u?f.errorBorder||"#991b1b33":"#FCA5A536",b=t?.overallStatus==="processing",R=t?.overallStatus==="success",$=R&&r!=="idle",X=a;return o.useEffect(()=>((i==="success"&&!b&&!R||n&&!b)&&(y.current=setTimeout(()=>{p([])},6e3)),()=>{y.current&&clearTimeout(y.current)}),[i,n,b,R]),o.useEffect(()=>{const A=[];if(i==="processing"&&A.push({id:"direct-processing",type:"direct-processing",content:"PROCESSING DEPOSIT...",borderColor:k,backgroundColor:v,textColor:x,icon:e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",style:{flexShrink:0,animation:"spin 1s linear infinite"},children:[e.jsx("circle",{cx:"10",cy:"10",r:"8",stroke:U,strokeWidth:"3",fill:"none"}),e.jsx("circle",{cx:"10",cy:"10",r:"8",stroke:S,strokeWidth:"3",fill:"none",strokeDasharray:"40",strokeDashoffset:"10",strokeLinecap:"round"})]})}),i==="success"){const O=d&&c?Q.getExplorerUrl(c,d):void 0;A.push({id:"direct-success",type:"direct-success",content:"DEPOSIT CONFIRMED",borderColor:F,backgroundColor:C,textColor:I,explorerUrl:O!=="#"?O:void 0,icon:e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",style:{flexShrink:0},children:[e.jsx("circle",{cx:"10",cy:"10",r:"10",fill:"#10b981"}),e.jsx("path",{d:"M6 10l3 3 5-6",stroke:"#ffffff",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]})})}if(b&&A.push({id:"processing",type:"processing",content:"VERIFYING TRANSACTION SIGNATURE",borderColor:k,backgroundColor:v,textColor:x,icon:e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",style:{flexShrink:0,animation:"spin 1s linear infinite"},children:[e.jsx("circle",{cx:"10",cy:"10",r:"8",stroke:U,strokeWidth:"3",fill:"none"}),e.jsx("circle",{cx:"10",cy:"10",r:"8",stroke:S,strokeWidth:"3",fill:"none",strokeDasharray:"40",strokeDashoffset:"10",strokeLinecap:"round"})]})}),R&&(A.push({id:"submitted",type:"submitted",content:"SUBMITTED TRANSACTION TO BLOCKCHAIN",borderColor:F,backgroundColor:C,textColor:I,icon:e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",style:{flexShrink:0},children:[e.jsx("circle",{cx:"10",cy:"10",r:"10",fill:"#10b981"}),e.jsx("path",{d:"M6 10l3 3 5-6",stroke:"#ffffff",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]})}),A.push({id:"deposit-success",type:"deposit-success",content:`DEPOSIT TO ${l.toUpperCase()} SUCCESSFUL`,borderColor:F,backgroundColor:C,textColor:I,icon:e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",style:{flexShrink:0},children:[e.jsx("circle",{cx:"10",cy:"10",r:"10",fill:"#10b981"}),e.jsx("path",{d:"M6 10l3 3 5-6",stroke:"#ffffff",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]})})),$){const O=r==="success"?F:r==="error"?B:k,L=r==="success"?C:r==="error"?W:v,ne=r==="success"?I:r==="error"?E:x;let _="";r==="executing"?_=`EXECUTING ${X.toUpperCase()}...`:r==="success"?_=`${X.toUpperCase()} CONFIRMED`:r==="error"&&(_=`${X.toUpperCase()} FAILED`);let j;r==="executing"?j=e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",style:{flexShrink:0,animation:"spin 1s linear infinite"},children:[e.jsx("circle",{cx:"10",cy:"10",r:"8",stroke:U,strokeWidth:"3",fill:"none"}),e.jsx("circle",{cx:"10",cy:"10",r:"8",stroke:S,strokeWidth:"3",fill:"none",strokeDasharray:"40",strokeDashoffset:"10",strokeLinecap:"round"})]}):r==="success"?j=e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",style:{flexShrink:0},children:[e.jsx("circle",{cx:"10",cy:"10",r:"10",fill:"#10b981"}),e.jsx("path",{d:"M6 10l3 3 5-6",stroke:"#ffffff",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]}):r==="error"&&(j=e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",style:{flexShrink:0},children:[e.jsx("circle",{cx:"10",cy:"10",r:"10",fill:"#ef4444"}),e.jsx("path",{d:"M6 6l8 8M14 6l-8 8",stroke:"#ffffff",strokeWidth:"2",strokeLinecap:"round"})]})),A.push({id:"post-deposit",type:"post-deposit",content:_,status:r,borderColor:O,backgroundColor:L,textColor:ne,icon:j})}n&&s&&A.push({id:"post-deposit-success",type:"post-deposit-success",content:`SUCCESSFULLY DEPOSITED ${s}`,borderColor:F,backgroundColor:C,textColor:I,icon:e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",style:{flexShrink:0},children:[e.jsx("circle",{cx:"10",cy:"10",r:"10",fill:"#10b981"}),e.jsx("path",{d:"M6 10l3 3 5-6",stroke:"#ffffff",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]})}),p(O=>{const L=new Set(A.map(j=>j.id)),ne=[],_=new Set;for(const j of O)if(L.has(j.id)){const oe=A.find(he=>he.id===j.id);ne.push(oe),_.add(j.id)}for(const j of A)_.has(j.id)||ne.push(j);if(ne.length>3){const j=[],oe=[];for(const z of ne)z.type==="processing"||z.type==="post-deposit"&&z.status==="executing"?j.push(z):oe.push(z);const he=[...j],w=3-he.length;return w>0&&oe.length>0&&he.push(...oe.slice(-w)),he}return ne})},[b,R,$,r,n,s,X,l,i,d,c,u]),g.length===0?null:e.jsxs("div",{style:{position:"absolute",top:"56px",left:"24px",right:"24px",zIndex:100,display:"flex",flexDirection:"column",gap:"8px",pointerEvents:"none"},children:[g.map(A=>e.jsx("div",{style:{borderRadius:"12px",border:`4px solid ${A.borderColor}`,background:"transparent",animation:"fadeInSlide 0.4s ease-out"},children:e.jsxs("div",{style:{backgroundColor:A.backgroundColor,borderRadius:"8px",padding:"14px 16px",display:"flex",alignItems:"center",gap:"12px"},children:[A.icon,e.jsx("span",{style:{fontSize:"13px",fontWeight:"600",color:A.textColor,letterSpacing:"0.3px",fontFamily:'"Helvetica Neue", sans-serif',flex:1},children:A.content}),A.explorerUrl&&e.jsx("a",{href:A.explorerUrl,target:"_blank",rel:"noopener noreferrer",style:{fontSize:"12px",fontWeight:"600",color:A.textColor,textDecoration:"underline",whiteSpace:"nowrap",pointerEvents:"auto",opacity:.8},children:"View tx"})]})},A.id)),e.jsx("style",{children:`
67
67
  @keyframes fadeInSlide {
68
68
  from {
69
69
  opacity: 0;
@@ -74,7 +74,7 @@
74
74
  transform: translateY(0);
75
75
  }
76
76
  }
77
- `})]})};function Jr({sourceChainId:t,selectedAsset:n,destinationChainId:s,destinationTokenAddress:r,isCrossDenomination:i,convertedUsdAmount:l}){const a=V.normalizeNativeTokenAddress(n.asset.address),c=r;let d,p;if(c&&s)if(d=q.CHAIN_CONFIGS[s]?.supportedTokens?.find(u=>u.address.toLowerCase()===c.toLowerCase())?.decimals??n.asset.decimals,i){if(!l)throw new Error("Destination amount is still being calculated. Please retry in a moment.");p=l}else{const u=O.parseUnits(n.amount,n.asset.decimals);p=V.convertAmountBetweenDecimals(u,n.asset.decimals,d)}return{sourceChainId:t,depositTokenAddress:a,depositAmount:n.amount,depositTokenDecimals:n.asset.decimals,destinationChainId:s,destinationTokenAddress:c,destinationAmount:p,destinationTokenDecimals:d}}async function $r(t,n){if(!t)return[];if(Array.isArray(t))return t;const s=t;return t.length>=2?s(n.depositAmount,n.depositTokenAddress):s(n)}const ns="0x111115763723B53395308eC4c9AB9d5FB0844cae",_r=60*60,io=o.memo(({isOpen:t,onClose:n,onDepositSelect:s,depositBatches:r,supportedChains:i,title:l,styles:a,onDepositAssetChange:c,assetInputHook:d,externalWalletAddress:p,allowedTokens:u,onDepositAmountChange:f,allowSecondAsset:g=!1,destinationChainId:h,destinationTokenAddress:y,onDepositExecute:w,depositActionLabel:x,nativeChainId:k,airdrop:U=!1,sponsorGas:v=!1,preSelectedAsset:b,escrowOnly:B=!1,escrowTokenAddress:T,escrowAmount:W,escrowTokenDecimals:E,escrowTokenSymbol:I,onDepositSuccess:C,embeddedWalletAddress:P})=>{const J=o.useContext(Y.SpiceFlowProviderContext)?.mode||"7702",K=d?.assetAmount||"",{theme:j,dark:M,appName:ne,primaryColor:$,dk:L}=Y.useSpiceBrand(a),Q=pn(),{isReady:se,isAuthenticated:ae,actions:S}=Q,{externalWallet:z}=zn(),ie=un()||P,me=J!="7702",re=me?!!p:se&&ae&&!!ie,xe=ie,le=p,Pe=xe??le,{data:ke}=ht.useWalletClient(),{switchChainAsync:Be}=ht.useSwitchChain(),{chain:ve}=ht.useAccount();ht.useConfig();const[Ue,Te]=o.useState(ke),ye=o.useRef(null);o.useEffect(()=>{if(!z||!le){ye.current=null,Te(ke);return}if(z.address?.toLowerCase()!==le?.toLowerCase()){ye.current=null,Te(ke);return}z.getEthereumProvider().then(async m=>{ye.current=m;const A=await m.request({method:"eth_chainId"}),F=parseInt(A,16),H=q.getChainConfig(F),ce=await z.getWalletClient(F);Te(H?O.createWalletClient({account:le,chain:H.viemChain,transport:O.custom(m)}):ce)}).catch(()=>{ye.current=null,Te(ke)})},[z,le,ke]);const Je=o.useRef(ve);o.useEffect(()=>{Je.current=ve},[ve]);const ze=o.useRef(null),[ue,Ve]=o.useState([]),[st]=o.useState([]),{assets:Z,loading:R,error:N,refreshAssets:X}=ys({address:B?xe:le||xe,supportedChains:i,fetchBalances:gs,refreshInterval:t?5e3:0}),fe=o.useMemo(()=>{const m=i.flatMap(A=>q.getAllAssetsForChain(A,Z));return u&&u.length>0?m.filter(A=>u.includes(A.symbol.toLowerCase())||A.isNative&&u.includes("native")).sort((A,F)=>{const H=A.balance>BigInt(0)?1:0;return(F.balance>BigInt(0)?1:0)-H}):m.filter(A=>A.balance>BigInt(0))},[i,Z,u]),be=o.useMemo(()=>{if(!ue[0]?.asset)return[];const m=ue[0].asset.chainId;return fe.filter(A=>A.chainId===m)},[fe,ue]),[D,oe]=o.useState(!1),[he,pe]=o.useState(null),[ot,rt]=o.useState("idle"),[ct,at]=o.useState(null),[Ye,kt]=o.useState(!1),[It,Le]=o.useState(null),[ft,Xe]=o.useState("idle"),[$t,zt]=o.useState(null),[dt,qt]=o.useState(null),[Bt,De]=o.useState(!1),[yt,jt]=o.useState(!1),[Ft,Pt]=o.useState(null),[Yt,Et]=o.useState(null),[tt,rn]=o.useState(!1),[St,Ot]=o.useState(!1),[Ht,Rt]=o.useState(null),[We,ut]=o.useState(null),[nt,Tt]=o.useState(null),{intentStatus:Ge,startStatusPolling:G,clearStatus:_}=ps({checkStepStatus:(m,A)=>Y.relayerService.checkStepStatus(m,A),pollingInterval:1e3,retryStep:async(m,A)=>{const[F,H]=m.split("/"),ce=parseInt(H||"0",10);await Y.relayerService.executeStep(F,ce,A,{action:"execute"})},maxRetries:3}),je=o.useCallback((m,A)=>{const F=q.CHAIN_CONFIGS[A];return F?F.supportedTokens?.find(H=>H.address.toLowerCase()===m.toLowerCase())?.symbol??null:null},[]),Oe=o.useMemo(()=>{const m=ue[0]?.asset;if(!m||!y||!h)return!1;const A=je(y,h);return Ur(m.symbol)&&!!A&&Lr(A)},[ue,y,h,je]);o.useEffect(()=>{ue.length>0&&K!==ue[0]?.amount&&Ve(m=>{if(m.length===0)return m;const A=[...m];return A[0]={...A[0],amount:K||""},A})},[K]),o.useEffect(()=>{ue.length!==0&&Ve(m=>m.map(A=>{if(!A.asset)return A;const F=fe.find(H=>H.chainId===A.asset.chainId&&H.address.toLowerCase()===A.asset.address.toLowerCase());return F?{...A,asset:F,amount:A.amount}:A}))},[Z]),o.useEffect(()=>{if(!b||ue.length>0||fe.length===0)return;const m=fe.find(A=>A.chainId===b.chainId&&A.address.toLowerCase()===b.address.toLowerCase());m&&(Ve([{asset:m,amount:""}]),c?.(m))},[b,fe,ue.length]);const it=o.useRef(null);o.useEffect(()=>{if(me&&Ge?.overallStatus==="success"&&w&&ot==="idle"){const m=it.current,A=ze.current;m&&(async()=>{try{rt("executing"),await w(m),rt("success"),Le(m),kt(!0);const F=Array.isArray(A)?A[0]:void 0,H={type:"deposit",status:"success",amount:m,asset:F?.tokenAddress,sourceChain:F?String(F.chainId):void 0,txHash:F?.txHash};window.dispatchEvent(new CustomEvent("spiceflow:action",{detail:H})),C?.(H)}catch(F){console.error("onDepositExecute failed:",F),rt("error"),at(Xt(F,"Post-deposit instruction failed"))}finally{it.current=null,ze.current=null}})()}},[Ge?.overallStatus,me,ot]);const xt=o.useCallback(()=>{pe(null)},[]);o.useEffect(()=>{t||(kt(!1),Le(null),Xe("idle"),zt(null),qt(null))},[t]);const At=o.useCallback(async()=>{const m=le||xe,A="0x111115763723B53395308eC4c9AB9d5FB0844cae";if(Pt(null),Et(null),!m){Et("Connect your wallet before requesting an airdrop");return}const F=ue[0]?.asset?.chainId??i[0];if(!F){Et("No chain selected for airdrop");return}if(!Ue){Et("External wallet not connected");return}jt(!0);try{if(ve?.id!==F){Pt("Switching network...");try{await Be({chainId:F});let Ae=0;const et=20;for(;Ae<et&&(await new Promise(Lt=>setTimeout(Lt,100)),Je.current?.id!==F);)Ae++;if(Je.current?.id!==F)throw new Error(`Failed to switch to chain ${F}. Please switch manually in your wallet.`)}catch(Ae){throw Ae.code===4902||Ae.name==="ChainNotConfiguredError"?new Error(`Chain ${F} is not configured in your wallet. Please add it manually.`):Ae}}Pt("Estimating required gas amount...");const H=q.getClientForChain(F),ce=await H.getGasPrice(),ge=BigInt(65e3)*ce,Ie=BigInt(120),we=ge*Ie/BigInt(100);Pt("Sending gas deposit to solver...");const Fe=await Ue.sendTransaction({to:A,value:we});if(Pt("Waiting for transaction confirmation..."),(await H.waitForTransactionReceipt({hash:Fe,timeout:12e4,pollingInterval:2e3,confirmations:2})).status!=="success")throw new Error("Gas deposit transaction failed");Pt("Requesting airdrop...");const Ce=await Y.relayerService.requestAirdrop({chainId:F,tokenId:"spiceUsd",wallet:m,tag:"default"});if(!Ce.success){Et(Ce.errorMessage||"Failed to request airdrop");return}Pt("Airdrop requested successfully.")}catch(H){Et(Xt(H,"Airdrop request failed"))}finally{jt(!1)}},[xe,le,ue,i,Ue,ve,Be]),Mt=(m,A)=>{Ve(F=>{const H=[...F];return H[A]={asset:m,amount:H[A]?.amount||""},H}),A===0&&c?.(m),xt()},Qe=o.useCallback(async(m,A)=>{if(Ve(F=>{const H=[...F];return H[A]&&(H[A]={...H[A],amount:m}),H}),xt(),A===0)if(d?.setAssetAmount(m),Oe&&m&&parseFloat(m)>0)try{const F=Ht??await Wr();Ht||Rt(F);const H=ue[0]?.asset;if(!H)return;const ce=O.parseUnits(m,H.decimals),ge=y?je(y,h):null,Ie=q.CHAIN_CONFIGS[h]?.supportedTokens?.find(Ae=>Ae.address.toLowerCase()===y.toLowerCase())?.decimals??6,we=zr(ce,H.decimals,Ie,F);ut(we);const Fe=O.formatUnits(we,Ie),Ce=F.toLocaleString("en-US",{maximumFractionDigits:0});Tt(`${m} ${H.symbol} \u2248 $${parseFloat(Fe).toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:2})} ${ge??"USD"} (rate: $${Ce}/BTC)`),f?.(Fe)}catch(F){console.error("Failed to fetch BTC/USD price:",F),Tt(null),ut(null),f?.(m)}else Tt(null),ut(null),f?.(m)},[xt,d,f,Oe,Ht,ue,y,h,je]),Ut=o.useCallback(()=>{ue.length<2&&Ve(m=>[...m,{asset:null,amount:""}])},[ue.length]),pt=o.useCallback(m=>{Ve(A=>A.filter((F,H)=>H!==m)),xt()},[xt]),$e=o.useRef(!1),wt=o.useRef(!1);o.useEffect(()=>{t||($e.current=!1,wt.current=!1,bt(null))},[t]);const[Vt,_t]=o.useState(!1),[mn,Qt]=o.useState(null),[Ne,bt]=o.useState(null),[Dt,nn]=o.useState(!1),[Kt,ee]=o.useState(null),te=o.useMemo(()=>{const m=ue[0];if(ue.length!==1||!m?.asset||!m.amount||parseFloat(m.amount)<=0)return null;try{return{asset:m.asset,amount:O.parseUnits(m.amount,m.asset.decimals),token:V.normalizeNativeTokenAddress(m.asset.address),chainId:m.asset.chainId}}catch{return null}},[ue]),Re=o.useCallback(async()=>{if(!xe||!te)return null;const{asset:m,amount:A,token:F,chainId:H}=te,ce=m.isNative||V.isNativeToken(F),ge=A>1n?1n:0n,Ie=[ce?{to:V.ESCROW_ADDRESS,value:A,data:"0x"}:{to:F,value:0n,data:O.encodeFunctionData({abi:q.K,functionName:"transfer",args:[V.ESCROW_ADDRESS,A]})}];ge>0n&&Ie.push(ce?{to:ns,value:ge,data:"0x"}:{to:F,value:0n,data:O.encodeFunctionData({abi:q.K,functionName:"transfer",args:[ns,ge]})});const we={chainId:H,tokenTransfers:[{from:xe,to:V.ESCROW_ADDRESS,token:F,amount:A}],calls:Ie},Fe=(await Y.relayerService.estimateBatchGas({user:xe,outputToken:F,chainBatches:[{...we,hash:V.hashChainBatches([we])[0].hash}]})).gasFee,Ce=B&&Fe<A?A-Fe:A;return{fee:Fe,net:Ce,token:F,chainId:H}},[xe,te,B]);o.useEffect(()=>{let m=!1;if(!t||me||!te){bt(null),ee(null),nn(!1);return}return(async()=>{ee(null),nn(!0);try{const A=await Re();m||bt(A)}catch(A){if(m)return;bt(null),ee(A instanceof Error?A.message:"Failed to estimate gas fee")}finally{m||nn(!1)}})(),()=>{m=!0}},[t,me,te,Re]);const Ke=async()=>{if(ue.length===0||!ue[0]?.asset)return;const m=ue.filter(ge=>ge.asset&&ge.amount&&parseFloat(ge.amount)>0);if(m.length===0)return;const A=m[0],F=q.getChainConfig(A.asset.chainId),H=m.map(ge=>{const Ie=parseFloat(ge.amount);return`${isNaN(Ie)?ge.amount:Ie.toPrecision(6).replace(/\.?0+$/,"")} ${ge.asset.symbol}`}).join(", "),ce={network:F?.displayName||`Chain ${A.asset.chainId}`,amount:H,symbol:"",chainId:A.asset.chainId};if(!me&&m.length===1&&Ne){const ge=m[0];ce.creditedAmount=`${O.formatUnits(Ne.net,ge.asset.decimals)} ${ge.asset.symbol}`,ce.networkFee=`${O.formatUnits(Ne.fee,ge.asset.decimals)} ${ge.asset.symbol}`}Qt(ce),_t(!0)},qe=async()=>{const m=ue.filter(F=>F.asset&&F.amount&&parseFloat(F.amount)>0);if(m.length===0){console.error("[DepositModal] No valid assets for deposit"),pe("Please select an asset and enter an amount");return}if(!B&&!le){pe("External wallet not connected. Please connect your wallet in the previous step.");return}if(!me){if(!xe||!ie){pe("Missing embedded wallet address");return}if(!se||!ae){pe("Please authenticate with your wallet provider to continue");return}}if(mt){pe(mt);return}if(Ee){pe(Ee);return}oe(!0),pe(null);let A=!1;try{const F=m[0].asset.chainId;let H=Ue;if(!B){if(!H)throw new Error("External wallet not connected");if(ye.current){let ce=null;try{const Ie=await ye.current.request({method:"eth_chainId"});ce=parseInt(Ie,16)}catch{}if(ce!==F)try{await ye.current.request({method:"wallet_switchEthereumChain",params:[{chainId:`0x${F.toString(16)}`}]})}catch(Ie){if(Ie.code===4902||Ie?.message?.includes("Unrecognized chain ID")){const we=q.getChainConfig(F);we&&await ye.current.request({method:"wallet_addEthereumChain",params:[{chainId:`0x${F.toString(16)}`,chainName:we.name||`Chain ${F}`,nativeCurrency:we.nativeCurrency||{name:"ETH",symbol:"ETH",decimals:18},rpcUrls:[q.getRpcUrlForChain(F)||we.rpcUrl],blockExplorerUrls:we.blockExplorer?[we.blockExplorer]:void 0}]})}else throw Ie}const ge=q.getChainConfig(F);ge&&(H=O.createWalletClient({account:le,chain:ge.viemChain,transport:O.custom(ye.current)}))}}if(me){if(!H)throw new Error("External wallet not connected");if(!le)throw new Error("External wallet address not available");if(k&&F===k){const ce=q.getChainConfig(F),ge=m.map(we=>`${we.amount} ${we.asset.symbol}`).join(", ");Qt({network:ce?.displayName||`Chain ${F}`,amount:ge,symbol:"",chainId:F}),_t(!0);let Ie=null;Xe("processing"),qt(F);for(const we of m){const Fe=O.parseUnits(we.amount,we.asset.decimals),Ce=V.normalizeNativeTokenAddress(we.asset.address),Ae=we.asset.isNative||V.isNativeToken(Ce)?await H.sendTransaction({to:V.ESCROW_ADDRESS,value:Fe}):await H.sendTransaction({to:Ce,data:O.encodeFunctionData({abi:q.K,functionName:"transfer",args:[V.ESCROW_ADDRESS,Fe]})}),et=await q.getClientForChain(F).waitForTransactionReceipt({hash:Ae,timeout:12e4,pollingInterval:2e3,confirmations:2});if(et.status!=="success")throw new Error(`Escrow deposit failed for ${we.asset.symbol}`);Ie=et.transactionHash,zt(et.transactionHash)}if(m[0]?.amount){const we=m[0].amount;if(w){rt("executing");try{await w(we),rt("success")}catch(Ce){console.error("onDepositExecute failed:",Ce),rt("error"),at(Ce?.message||"Post-deposit instruction failed")}}else rt("success");Xe("success"),Le(we),kt(!0);const Fe={type:"deposit",status:"success",amount:we,asset:m[0].asset.symbol,sourceChain:ce?.displayName||`Chain ${F}`,txHash:Ie??void 0};window.dispatchEvent(new CustomEvent("spiceflow:action",{detail:Fe})),C?.(Fe)}X(),s&&s(m[0].asset)}else{const ce=h||k;if(!ce)throw new Error("Destination chain ID is required for non-7702 mode. Either pass destinationChainId to <SpiceDeposit> or set nativeChainId on <SpiceFlowProvider>.");const ge=q.getDelegateContractAddress(F),Ie=V.ESCROW_ADDRESS,we=[];let Fe=null;for(const Ce of m){const Ae=O.parseUnits(Ce.amount,Ce.asset.decimals),et=V.normalizeNativeTokenAddress(Ce.asset.address),Lt=Ce.asset.isNative||V.isNativeToken(et),Nt=Ie,Gt=Lt?await H.sendTransaction({to:Ie,value:Ae}):await H.sendTransaction({to:et,data:O.encodeFunctionData({abi:q.K,functionName:"transfer",args:[Nt,Ae]})});Fe||(Fe=Gt);const an=q.getClientForChain(F),fn=await an.waitForTransactionReceipt({hash:Gt,timeout:12e4,pollingInterval:2e3,confirmations:2});if(fn.status!=="success")throw new Error(`Transfer failed for ${Ce.asset.symbol}`);await an.getBlockNumber()-fn.blockNumber<2&&await new Promise(Wt=>setTimeout(Wt,3e3)),ze.current||(ze.current=[]),ze.current.push({txHash:Gt,sender:le,tokenAddress:et,chainId:F,amount:Ae.toString(),user:Pe}),we.push({tokenAddress:et,tokenAmount:Ae.toString(),sender:le,receiver:Ie})}if(!Fe)throw new Error("No transaction hash generated");if(!y){const Ce=ze.current?.[0];Ce&&Fe&&V.normalizeNativeTokenAddress(Ce.tokenAddress);const Ae={type:"deposit",status:"success",amount:m[0]?.amount,asset:m[0]?.asset?.symbol,sourceChain:q.getChainName(F),txHash:Fe};window.dispatchEvent(new CustomEvent("spiceflow:action",{detail:Ae})),C?.(Ae),ze.current=null,it.current=m[0]?.amount||null,X(),s&&s(m[0].asset),_t(!1);return}if(v&&k){const Ce=O.parseUnits("0.05",18);we.push({tokenAddress:V.ZERO_ADDRESS,tokenAmount:Ce.toString(),sender:le,receiver:Ie})}if(J==="ondemand"){const Ce={to:ge,value:BigInt(0),data:"0x"},Ae=await q.getTokenDecimals(ce,y);let et=BigInt(0);for(const dn of we){const Vn=BigInt(dn.tokenAmount),jn=V.normalizeNativeTokenAddress(dn.tokenAddress),Qn=m.find(lt=>V.normalizeNativeTokenAddress(lt.asset.address).toLowerCase()===jn.toLowerCase());let Rn;Qn?Rn=Qn.asset.decimals:Rn=await q.getTokenDecimals(F,V.ZERO_ADDRESS);const Mn=V.convertAmountBetweenDecimals(Vn,Rn,Ae);et+=Mn}Oe&&We&&(et=We);const Lt={chainId:F,tokenTransfers:we.map(dn=>({from:dn.sender,to:dn.receiver,token:dn.tokenAddress,amount:BigInt(dn.tokenAmount)})),call:Ce},Nt=Oe&&We?[{from:le,to:V.ESCROW_ADDRESS,token:V.normalizeNativeTokenAddress(m[0].asset.address),amount:O.parseUnits(m[0].amount,m[0].asset.decimals)}]:[],Gt={chainId:ce,tokenTransfers:[...Nt,{from:"escrow",to:le,token:y,amount:et}],call:{to:y,value:BigInt(0),data:"0x"}},an={user:le,intents:[{mode:"non-7702:on-demand",chainBatches:[Lt,Gt]}]},fn=await Y.relayerService.createAction(an),Wt=fn.actionId,ln=fn.intentIds[0];if(!Fe)throw new Error("No transaction hash available");q.getChainConfig(F)?.displayName||q.getChainName(F),G(ln,Y.createInitialSteps([{chainId:F,calls:[Ce]},{chainId:ce,calls:[Gt.call]}],dn=>q.getChainName(dn))),await Y.relayerService.executeStep(Wt,0,0,{action:"execute",hash:Fe}),m[0]?.amount&&(it.current=m[0].amount),X(),s&&s(m[0].asset),_t(!1)}else throw new Error("Presign mode not yet fully supported for cross-chain deposits")}}else{const ce=V.ESCROW_ADDRESS,ge=[],Ie=m[0],we=Ie&&m.length===1&&Ne&&Ne.chainId===F&&Ne.token.toLowerCase()===V.normalizeNativeTokenAddress(Ie.asset.address).toLowerCase()?O.formatUnits(Ne.net,Ie.asset.decimals):Ie?.amount;for(const lt of m){const Jt=O.parseUnits(lt.amount,lt.asset.decimals),Zt=m.length===1&&!!Ne&&Ne.chainId===F&&Ne.token.toLowerCase()===V.normalizeNativeTokenAddress(lt.asset.address).toLowerCase(),vn=Zt?Ne.fee:0n,sn=Zt?Ne.net:Jt,Ds=B?Jt:Jt+vn,Kn=V.normalizeNativeTokenAddress(lt.asset.address),qn=lt.asset.isNative||V.isNativeToken(Kn);if(!B){const qo=qn?await H.sendTransaction({to:xe,value:Ds}):await H.sendTransaction({to:Kn,data:O.encodeFunctionData({abi:q.K,functionName:"transfer",args:[xe,Ds]})});Yr({chainId:F,tokenAddress:V.normalizeNativeTokenAddress(lt.asset.address),tokenSymbol:lt.asset.symbol,tokenDecimals:lt.asset.decimals,amount:lt.amount,rawAmount:Jt.toString(),embeddedWalletAddress:xe,externalWalletAddress:le,timestamp:Date.now(),isNative:qn});const Ns=q.getClientForChain(F),Ws=await Ns.waitForTransactionReceipt({hash:qo,timeout:12e4,pollingInterval:2e3,confirmations:2});if(Ws.status!=="success")throw new Error(`Transfer to embedded wallet failed for ${lt.asset.symbol}`);await Ns.getBlockNumber()-Ws.blockNumber<2&&await new Promise(Yo=>setTimeout(Yo,3e3))}ge.push(qn?{to:ce,value:sn,data:"0x"}:{to:Kn,value:BigInt(0),data:O.encodeFunctionData({abi:q.K,functionName:"transfer",args:[ce,sn]})}),vn>0n&&ge.push(qn?{to:ns,value:vn,data:"0x"}:{to:Kn,value:BigInt(0),data:O.encodeFunctionData({abi:q.K,functionName:"transfer",args:[ns,vn]})})}const Fe=await q.getClientForChain(F).getBlockNumber(),Ce=ge.map(lt=>({...lt,to:O.getAddress(lt.to)})),Ae={chainId:F,recentBlock:Fe,calls:Ce,tokenTransfers:[]},et=Jr({sourceChainId:F,selectedAsset:Ie&&we?{...Ie,amount:we}:m[0],destinationChainId:h,destinationTokenAddress:y,isCrossDenomination:Oe,convertedUsdAmount:We}),Lt=await $r(r,et),Nt=[Ae,...Lt];if(!xe)throw new Error("Address not available");const Gt=[...new Set(Nt.map(lt=>lt.chainId))],an=[];for(const lt of Gt){const Jt=q.getDelegateContractAddress(lt),Zt=q.getClientForChain(lt),vn=await V.getAccountNonce(xe,Zt),sn=await S.signAuthorization({contractAddress:Jt,chainId:lt,nonce:Number(vn)});an.push({r:sn.r,s:sn.s,yParity:sn.yParity,chainId:sn.chainId,nonce:Number(sn.nonce),address:sn.address})}const fn=V.hashChainBatches(Nt),Wt=Math.floor(Date.now()/1e3)+_r,ln=fn.map(lt=>lt.hash),dn=O.keccak256(O.encodeAbiParameters([{type:"string"},{type:"uint256"},{type:"uint256"},{type:"bytes32[]"}],["ecdsa",0n,BigInt(Wt),ln])),{signature:Vn}=await S.signMessage({raw:dn});if(!Vn)throw new Error("Failed to sign intent authorization");const jn=[];if(Oe&&We&&y){const lt=ue[0]?.asset;if(lt){const Jt=O.parseUnits(ue[0].amount,lt.decimals);jn.push({from:xe,to:V.ESCROW_ADDRESS,token:V.normalizeNativeTokenAddress(lt.address),amount:Jt}),jn.push({from:"escrow",to:xe,token:y,amount:We})}}const Qn={mode:"7702",signatureType:"ecdsa",signature:Vn,nbf:0,exp:Wt,chainBatches:fn.map((lt,Jt)=>({hash:lt.hash,chainId:Nt[Jt].chainId,tokenTransfers:Jt===1&&jn.length>0?jn:Nt[Jt].tokenTransfers??[],calls:Nt[Jt].calls}))},Rn={user:xe,chainAuthorizations:an,intents:[Qn]},Mn=await Y.relayerService.createAction(Rn);if(Mn){const lt=Mn.actionId;for(let Zt=0;Zt<Nt.length;Zt++){const vn=await Y.relayerService.executeStep(lt,0,Zt,{action:"execute"});if(Zt===0&&vn.transactionHash)for(const sn of m)O.parseUnits(sn.amount,sn.asset.decimals),V.normalizeNativeTokenAddress(sn.asset.address)}for(const Zt of m)Cs(xe,F,V.normalizeNativeTokenAddress(Zt.asset.address));const Jt=Y.createInitialSteps(Nt,Zt=>q.getChainName(Zt));if(G(Mn.intentIds[0],Jt),X(),w&&m[0]?.amount)try{rt("executing"),await w(we||m[0].amount),rt("success"),Le(we||m[0].amount),kt(!0)}catch(Zt){console.error("onDepositExecute failed (7702):",Zt),rt("error"),at(Zt?.message||"Post-deposit instruction failed")}s&&s(m[0].asset)}}}catch(F){A=!0,console.error("[DepositModal] executeDeposit CAUGHT ERROR:",F),console.error("[DepositModal] Error details:",{message:F?.message,code:F?.code,name:F?.name,stack:F?.stack?.slice(0,500)}),pe(Xt(F,"Deposit failed")),_()}finally{oe(!1),A&&Xe("idle"),A||!Ge&&ot!=="idle"||_t(!1)}},mt=o.useMemo(()=>{for(const m of ue)if(!(!m?.asset||!m.amount||parseFloat(m.amount)<=0))try{const A=m.asset.decimals,F=O.parseUnits(m.amount,A);if(F<=0n)continue;const H=V.getEquivalenceGroup(V.normalizeNativeTokenAddress(m.asset.address)),ce=m.asset.receiptTokenDecimals??(H==="ETH"||H==="ARB"?18:H==="USDC"||H==="SUSD"||H==="WBTC"||H==="CBTC"?6:void 0);if(ce===void 0||A<=ce||V.convertAmountBetweenDecimals(F,A,ce)>0n)continue;return`Amount too small. Minimum deposit for this asset is ${O.formatUnits(10n**BigInt(A-ce),A)} ${m.asset.symbol}.`}catch{continue}return null},[ue]),gt=!me&&!!te,Ct=!!te&&!!Ne&&Ne.chainId===te.chainId&&Ne.token.toLowerCase()===te.token.toLowerCase(),Ee=o.useMemo(()=>{if(!gt||!te||!Ct)return null;const m=B?te.amount:te.amount+Ne.fee;return te.asset.balance>=m?null:`Insufficient ${te.asset.symbol}. Need ${O.formatUnits(m,te.asset.decimals)} ${te.asset.symbol} including gas.`},[gt,te,Ct,Ne,B]),Me=!gt||Ct&&!Dt&&!Kt&&!Ee,vt=ue.length>0&&ue[0]?.asset&&ue[0]?.amount&&parseFloat(ue[0].amount)>0&&re&&!D&&!mt&&!Ee&&Me;o.useEffect(()=>{if(!B||!T||!W||$e.current||!re)return;const m=i[0];if(!m)return;const A=q.getAllAssetsForChain(m,[]).find(H=>H.address.toLowerCase()===T.toLowerCase());let F;if(A)F=A;else if(E!==void 0&&I)F={address:T,symbol:I,name:I,decimals:E,chainId:m,balance:BigInt(0),balanceFormatted:0,balanceUsd:0,isNative:V.isNativeToken(T)};else{console.warn("[DepositModal] escrowOnly: no matching asset and missing escrowTokenDecimals/escrowTokenSymbol for",T);return}$e.current=!0,Ve([{asset:F,amount:W}])},[B,T,W,E,I,re,i]),o.useEffect(()=>{!B||!vt||wt.current||D||(wt.current=!0,qe())},[B,vt,D]);const de=N||he||mt||Ee,Se=()=>{if(D)return"Executing Deposit...";if(!re)return"Wallet Not Connected";if(J==="7702"){if(!se)return"Loading...";if(!ae)return"Authentication Required"}return ue[0]?.asset?ue[0]?.amount?mt?"AMOUNT TOO SMALL":Ee?"INSUFFICIENT BALANCE":gt&&!Me?Kt?"GAS UNAVAILABLE":"ESTIMATING GAS":"DEPOSIT":"ENTER AMOUNT":"SELECT TOKEN"};if(!t)return null;const _e=e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",gap:"3px"},children:[e.jsx("img",{src:ao,alt:"Info",style:{width:"10px",height:"10px",marginTop:"4px",flexShrink:0}}),e.jsx("p",{style:{fontSize:"12px",color:M?L.textSecondary:"#6b7280",margin:"0",lineHeight:"1.4",fontFamily:'"Helvetica Neue", sans-serif'},children:`Deposit collateral to your ${ne} Account from 9+ EVM blockchains.`})]}),He=(m,A,F=M?L.textPrimary:"#111827")=>e.jsxs("div",{style:{display:"flex",justifyContent:"space-between"},children:[e.jsx("span",{style:{fontSize:"12px",color:M?L.textSecondary:"#6b7280",fontFamily:'"IBM Plex Mono", monospace',fontWeight:500,letterSpacing:"0.03em"},children:m}),e.jsx("span",{style:{fontSize:"13px",color:F,fontWeight:500,fontFamily:'"IBM Plex Mono", monospace'},children:A})]});return e.jsx(on,{isOpen:t,onClose:n,title:l||`Deposit to your ${ne} account`,subtitle:_e,dark:M,overlayContent:Vt||Ge||ot!=="idle"&&w?e.jsx("div",{}):void 0,styles:a,theme:j,children:e.jsxs("div",{style:{padding:"24px 24px 5px 24px"},children:[ue.map((m,A)=>{const F=ue.length===1?"Deposit":`Asset ${A+1}`;return e.jsxs("div",{style:{marginBottom:j.spacing.md,position:"relative"},children:[U&&A===0&&e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"8px"},children:[e.jsx("div",{style:{fontSize:"11px",color:Yt?M?L.errorText:"#b91c1c":M?L.successText:"#047857",fontFamily:a?.fontFamily||j.typography.fontFamily,flex:1,minWidth:0},children:Yt||Ft||""}),e.jsxs("div",{style:{display:"flex",gap:"4px",flexShrink:0,alignItems:"center"},children:[e.jsx("button",{onClick:At,disabled:yt,style:{padding:"4px 8px",borderRadius:"4px",border:`1px solid ${M?L.inputBorder:"#D1D5DB"}`,background:M?L.inputBg:"#E5E7EB",color:M?L.textSecondary:"#4B5563",fontSize:"11px",fontWeight:500,cursor:yt?"default":"pointer",transition:"all 0.2s",display:"flex",alignItems:"center"},onMouseEnter:H=>{yt||(H.currentTarget.style.color=M?L.textPrimary:"#1F2937",H.currentTarget.style.background=M?L.inputBorder:"#D1D5DB")},onMouseLeave:H=>{H.currentTarget.style.color=M?L.textSecondary:"#4B5563",H.currentTarget.style.background=M?L.inputBg:"#E5E7EB"},children:yt?"Requesting...":"Airdrop"}),e.jsxs("div",{onMouseEnter:()=>De(!0),onMouseLeave:()=>De(!1),style:{position:"relative",width:"14px",height:"14px",borderRadius:"50%",backgroundColor:M?L.textSecondary:"#9CA3AF",color:"white",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"9px",fontWeight:"bold",cursor:"help",flexShrink:0},children:["i",Bt&&e.jsxs("div",{style:{position:"absolute",bottom:"calc(100% + 8px)",right:0,backgroundColor:M?L.inputBg:"#1F2937",color:"white",padding:"8px 12px",borderRadius:"6px",fontSize:"12px",whiteSpace:"nowrap",boxShadow:"0 4px 6px rgba(0, 0, 0, 0.1)",zIndex:100},children:["This is testnet USDC, and it won't be available on mainnet",e.jsx("div",{style:{position:"absolute",top:"100%",right:"10px",width:0,height:0,borderLeft:"6px solid transparent",borderRight:"6px solid transparent",borderTop:`6px solid ${M?L.inputBg:"#1F2937"}`}})]})]})]})]}),e.jsx(Fn,{assets:A===0?fe:be,selectedAsset:m||void 0,onAssetSelect:H=>Mt(H,A),onAmountChange:H=>Qe(H,A),loading:R,label:F,showBalance:!0,theme:j,styles:a,allowSecondAsset:g&&A===0,onAddAsset:Ut,canAddAsset:ue.length===1&&!!ue[0]?.asset}),A===1&&e.jsx("button",{onClick:()=>pt(A),style:{position:"absolute",top:"-2px",right:"-2px",background:M?`${L.cardBg}ee`:"rgba(255, 255, 255, 0.9)",border:`1px solid ${M?L.cardBorder:"#e5e7eb"}`,borderRadius:"50%",cursor:"pointer",color:j.colors.textMuted,fontSize:"16px",padding:"2px",width:"22px",height:"22px",display:"flex",alignItems:"center",justifyContent:"center",transition:"all 0.2s",boxShadow:"0 1px 3px rgba(0, 0, 0, 0.1)"},onMouseEnter:H=>{H.currentTarget.style.color=M?L.errorText:"#ef4444",H.currentTarget.style.background=M?L.cardBg:"#fff",H.currentTarget.style.borderColor=M?L.errorBorder:"#fecaca"},onMouseLeave:H=>{H.currentTarget.style.color=j.colors.textMuted,H.currentTarget.style.background=M?`${L.cardBg}ee`:"rgba(255, 255, 255, 0.9)",H.currentTarget.style.borderColor=M?L.cardBorder:"#e5e7eb"},title:"Remove asset",children:"\xD7"})]},`asset-${A}`)}),ue.length===0&&e.jsxs("div",{style:{marginBottom:j.spacing.md},children:[U&&e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"8px"},children:[e.jsx("div",{style:{fontSize:"11px",color:Yt?M?L.errorText:"#b91c1c":M?L.successText:"#047857",fontFamily:a?.fontFamily||j.typography.fontFamily,flex:1,minWidth:0},children:Yt||Ft||""}),e.jsxs("div",{style:{display:"flex",gap:"4px",flexShrink:0,alignItems:"center"},children:[e.jsx("button",{onClick:At,disabled:yt,style:{padding:"4px 8px",borderRadius:"4px",border:`1px solid ${M?L.inputBorder:"#D1D5DB"}`,background:M?L.inputBg:"#E5E7EB",color:M?L.textSecondary:"#4B5563",fontSize:"11px",fontWeight:500,cursor:yt?"default":"pointer",transition:"all 0.2s",display:"flex",alignItems:"center"},onMouseEnter:m=>{yt||(m.currentTarget.style.color=M?L.textPrimary:"#1F2937",m.currentTarget.style.background=M?L.inputBorder:"#D1D5DB")},onMouseLeave:m=>{m.currentTarget.style.color=M?L.textSecondary:"#4B5563",m.currentTarget.style.background=M?L.inputBg:"#E5E7EB"},children:yt?"Requesting...":"Airdrop"}),e.jsxs("div",{onMouseEnter:()=>De(!0),onMouseLeave:()=>De(!1),style:{position:"relative",width:"14px",height:"14px",borderRadius:"50%",backgroundColor:M?L.textSecondary:"#9CA3AF",color:"white",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"9px",fontWeight:"bold",cursor:"help",flexShrink:0},children:["i",Bt&&e.jsxs("div",{style:{position:"absolute",bottom:"calc(100% + 8px)",right:0,backgroundColor:M?L.inputBg:"#1F2937",color:"white",padding:"8px 12px",borderRadius:"6px",fontSize:"12px",whiteSpace:"nowrap",boxShadow:"0 4px 6px rgba(0, 0, 0, 0.1)",zIndex:100},children:["This is testnet USDC, and it won't be available on mainnet",e.jsx("div",{style:{position:"absolute",top:"100%",right:"10px",width:0,height:0,borderLeft:"6px solid transparent",borderRight:"6px solid transparent",borderTop:`6px solid ${M?L.inputBg:"#1F2937"}`}})]})]})]})]}),e.jsx(Fn,{assets:fe,selectedAsset:void 0,onAssetSelect:m=>Mt(m,0),onAmountChange:m=>Qe(m,0),loading:R,label:"Deposit",showBalance:!0,theme:j,styles:a,allowSecondAsset:g,onAddAsset:Ut,canAddAsset:!1},"initial-selector")]}),st.length>0&&e.jsx("div",{style:{marginBottom:j.spacing.sm},children:e.jsxs("div",{style:{backgroundColor:a?.infoCard?.backgroundColor||a?.tertiaryBackground||(M?L.inputBg:"#f9fafb"),border:`1px solid ${a?.infoCard?.borderColor||(M?L.cardBorder:"#e5e7eb")}`,borderRadius:a?.infoCard?.borderRadius||j.borderRadius.md,padding:a?.infoCard?.padding||j.spacing.sm},children:[e.jsx("div",{style:{fontSize:a?.infoCard?.title?.fontSize||j.typography.fontSize.xs,fontWeight:a?.infoCard?.title?.fontWeight||j.typography.fontWeight.medium,color:a?.infoCard?.title?.color||j.colors.text,fontFamily:a?.infoCard?.title?.fontFamily||j.typography.fontFamily,marginBottom:"4px"},children:"Deposit Batches Ready"}),e.jsxs("div",{style:{fontSize:a?.infoCard?.description?.fontSize||j.typography.fontSize.xs,color:a?.infoCard?.description?.color||j.colors.textSecondary,fontFamily:a?.infoCard?.description?.fontFamily||j.typography.fontFamily},children:[st.length," deposit batch",st.length>1?"es":""," across chains:"," ",[...new Set(st.map(m=>m.chainId))].join(", ")]})]})}),gt&&te&&e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"7px",marginBottom:j.spacing.md,padding:"0 2px"},children:[He("EST. GAS FEE",Dt?"Estimating...":Kt?"Unavailable":Ct?`${O.formatUnits(Ne.fee,te.asset.decimals)} ${te.asset.symbol}`:"Estimating...",Kt?"#f87171":void 0),He("CREDITED",Kt?"Unavailable":Ct?`${O.formatUnits(Ne.net,te.asset.decimals)} ${te.asset.symbol}`:"Estimating...",Kt?"#f87171":void 0),He("TOTAL REQUIRED",Kt?"Unavailable":Ct?`${O.formatUnits(B?te.amount:te.amount+Ne.fee,te.asset.decimals)} ${te.asset.symbol}`:"Estimating...",Ee?M?L.errorText:"#dc2626":void 0),Kt&&e.jsx("div",{style:{padding:"8px 10px",borderRadius:"7px",backgroundColor:M?L.errorBg:"#fef2f2",border:`1px solid ${M?L.errorBorder:"#fecaca"}`,color:M?L.errorText:"#dc2626",fontSize:"12px",lineHeight:1.4,fontFamily:a?.fontFamily||j.typography.fontFamily},children:Kt})]}),e.jsx(Gr,{intentStatus:Ge,postDepositSuccess:Ye,postDepositAmount:It,postDepositStatus:ot,depositActionLabel:x,sourceChainName:ue[0]?.asset?.chainId?q.getChainName(ue[0].asset.chainId):"Destination Chain",directDepositStatus:ft,directDepositTxHash:$t,directDepositChainId:dt,styles:a}),e.jsx(Xr,{isOpen:Vt||!!Ge||ot!=="idle"&&!!w,onClose:()=>{_t(!1),Ge&&_();const m=ot==="success"&&!Ge,A=Ge?.overallStatus==="success"&&ot==="success"&&w;(m||A)&&n()},onConfirm:qe,data:mn,isExecuting:D,error:he,theme:j,styles:a,intentStatus:Ge,postDepositStatus:ot,hasPostDepositInstruction:!!w}),nt&&e.jsxs("div",{style:{padding:"8px 12px",marginBottom:"8px",backgroundColor:M?L.warningBg:"#fffbeb",border:`1px solid ${M?L.warningBorder:"#fde68a"}`,borderRadius:j.borderRadius.md,fontSize:"12px",color:M?L.warningText:"#92400e",lineHeight:"1.4"},children:["\u26A1 ",nt]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:0,marginBottom:0,margin:0,padding:0},children:[de?e.jsx("div",{style:{marginBottom:"10px",fontSize:"12px",lineHeight:"1.45",color:M?L.errorText:"#dc2626",fontFamily:a?.fontFamily||j.typography.fontFamily},children:de}):null,(()=>{const m=!vt||!re||D,A=St?`${$}cc`:tt?`${$}ee`:$;return e.jsx(Ze.Button,{variant:"outline",fullWidth:!0,onClick:Ke,disabled:m,theme:j,onMouseEnter:()=>rn(!0),onMouseLeave:()=>{rn(!1),Ot(!1)},onMouseDown:()=>Ot(!0),onMouseUp:()=>Ot(!1),style:{height:"56px",backgroundColor:m?a?.button?.disabledBackgroundColor??`${$}88`:A,color:a?.button?.color||(M?L.textPrimary:"#0e0d0b"),border:`1.5px solid ${M?`${$}88`:"#0e0d0b"}`,fontSize:"20px",fontWeight:600,letterSpacing:"1.5px",fontFamily:'"IBM Plex Mono", monospace',transition:"all 150ms ease",transform:m?"none":St?"scale(0.98)":tt?"translateY(-2px)":"none",boxShadow:St?`2px 2px 0px ${M?$:"#0e0d0b"}`:tt&&!m?`5px 5px 0px ${L.shell}, 6px 6px 0px ${M?`${$}88`:"#0e0d0b"}`:`3px 3px 0px ${L.shell}, 4px 4px 0px ${M?`${$}88`:"#0e0d0b"}`,cursor:m?"not-allowed":"pointer",opacity:m?.78:1,borderRadius:"12px"},children:Se()})})()]})]})})}),ea=({isOpen:t,onClose:n,deposits:s,onComplete:r,onCancel:i,onSkip:l,onChangeWallet:a,isProcessing:c,error:d,styles:p})=>{const{dark:u,dk:f,theme:g}=Y.useSpiceBrand(p);if(!t||s.length===0)return null;const h=s[0],y=p?.fontFamily||'"Helvetica Neue", sans-serif',w='"IBM Plex Mono", monospace',x=q.getChainName(h.chainId),k=parseFloat(h.amount).toPrecision(6).replace(/\.?0+$/,""),U=O.formatUnits(h.verifiedBalance,h.tokenDecimals);return e.jsx(on,{isOpen:t,onClose:n,title:"Incomplete Deposit",styles:p,children:e.jsxs("div",{style:{padding:"18px 24px 24px",fontFamily:y},children:[e.jsx("p",{style:{fontSize:"14px",color:f.textSecondary,lineHeight:"1.6",margin:"0 0 18px 0"},children:"Funds were sent to your embedded wallet but the deposit was not completed."}),e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"minmax(0, 1fr) auto",gap:"14px 18px",marginBottom:"24px",padding:"16px 18px",backgroundColor:u?f.cardBg:"#f8fafc",border:`1px solid ${u?f.cardBorder:"#e5e7eb"}`,borderRadius:u?"14px":"10px",boxShadow:u?"inset 0 1px 0 rgba(255,255,255,0.03)":"0 1px 2px rgba(16,24,40,0.04)"},children:[e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"4px"},children:[e.jsx("span",{style:{fontSize:"12px",fontWeight:600,color:f.textSecondary,fontFamily:w,letterSpacing:"0.8px"},children:"NETWORK"}),e.jsx("span",{style:{fontSize:"18px",fontWeight:600,color:f.textPrimary,fontFamily:y,lineHeight:1.2},children:x})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"4px",alignItems:"flex-end",textAlign:"right"},children:[e.jsx("span",{style:{fontSize:"12px",fontWeight:600,color:f.textSecondary,fontFamily:w,letterSpacing:"0.8px"},children:"DEPOSITED AMOUNT"}),e.jsxs("span",{style:{fontSize:"24px",fontWeight:700,color:f.successText,fontFamily:w,lineHeight:1.1},children:[k," ",h.tokenSymbol]}),e.jsx("span",{style:{fontSize:"12px",color:f.textSecondary,fontWeight:500,fontFamily:y},children:"Sent to embedded wallet"})]})]}),!h.hasFullBalance&&h.verifiedBalance>0n&&e.jsxs("div",{style:{marginBottom:"16px",padding:"8px 12px",backgroundColor:u?f.warningBg:"#fef3c7",border:`1px solid ${u?f.warningBorder:"#fcd34d"}`,borderRadius:"8px",fontSize:"13px",color:u?f.warningText:"#92400e",lineHeight:"1.4"},children:["Partial balance \u2014 only ",parseFloat(U).toFixed(4)," ",h.tokenSymbol," available."]}),d&&e.jsx("div",{style:{marginBottom:"16px",padding:"10px 12px",backgroundColor:u?f.errorBg:"#fef2f2",border:`1px solid ${u?f.errorBorder:"#fca5a5"}`,borderRadius:"8px",fontSize:"13px",color:u?f.errorText:"#991b1b",lineHeight:"1.4"},children:d}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"12px"},children:[e.jsx(Ze.Button,{variant:"outline",fullWidth:!0,disabled:c,onClick:()=>r(h),theme:g,dark:u,styles:p,children:"CONFIRM DEPOSIT"}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"10px"},children:[e.jsx(Ze.Button,{variant:"ghost",fullWidth:!0,disabled:c,onClick:()=>i(h),theme:g,dark:u,style:{height:"48px",fontSize:"13px",letterSpacing:"0.4px",color:u?f.textPrimary:"#374151",border:`1px solid ${u?f.cardBorder:"#d1d5db"}`,borderRadius:"12px",backgroundColor:u?"rgba(255,255,255,0.02)":"#ffffff"},children:c?"RETURNING...":"RETURN FUNDS"}),e.jsxs("div",{style:{display:"grid",gridTemplateColumns:a?"1fr 1fr":"1fr",gap:"10px"},children:[e.jsx(Ze.Button,{variant:"ghost",fullWidth:!0,disabled:c,onClick:l,theme:g,dark:u,style:{height:"44px",fontSize:"12px",letterSpacing:"0.4px",color:f.textSecondary,border:`1px solid ${u?f.cardBorder:"#d1d5db"}`,borderRadius:"12px",backgroundColor:"transparent"},children:"NEW DEPOSIT"}),a&&e.jsx(Ze.Button,{variant:"ghost",fullWidth:!0,disabled:c,onClick:a,theme:g,dark:u,style:{height:"44px",fontSize:"12px",letterSpacing:"0.4px",color:f.textSecondary,border:`1px solid ${u?f.cardBorder:"#d1d5db"}`,borderRadius:"12px",backgroundColor:"transparent"},children:"CHANGE WALLET"})]})]})]}),s.length>1&&e.jsxs("p",{style:{fontSize:"12px",color:f.textSecondary,textAlign:"center",marginTop:"14px",marginBottom:0,lineHeight:"1.5"},children:[s.length," incomplete deposits found \u2014 resolving one at a time."]})]})})},ws=t=>{const[n,s]=o.useState(!1),r=o.useContext(Y.SpiceFlowProviderContext),{dark:i,dk:l}=Y.useSpiceBrand();if(o.useEffect(()=>{s(!0)},[]),!n)return e.jsx("div",{className:t.className,children:e.jsx("button",{disabled:!0,style:{padding:"12px 24px",fontSize:"16px",backgroundColor:i?l.hoverBg:"#ccc",color:i?l.textSecondary:"white",border:i?`1px solid ${l.buttonBorder}`:"none",borderRadius:"4px",cursor:"not-allowed"},children:"Loading..."})});if(!r){const a='ProviderLogin must be used within SpiceFlowProvider. Please wrap your app with <SpiceFlowProvider provider="privy" | "dynamic">.';return e.jsx("div",{className:t.className,children:e.jsx("button",{onClick:()=>{t.onAuthError&&t.onAuthError(a)},style:{padding:"12px 24px",fontSize:"16px",backgroundColor:i?l.errorBg:"#dc2626",color:i?l.errorText:"white",border:i?`1px solid ${l.errorBorder}`:"none",borderRadius:"4px",cursor:"pointer"},children:"Provider Not Found"})})}if(r.provider==="privy")return e.jsx(er.PrivyLogin,{...t});if(r.provider==="dynamic"){const a='Dynamic provider is not supported in this build of @spicenet-io/spiceflow-ui. Use provider="privy" instead.';return e.jsx("div",{className:t.className,children:e.jsx("button",{onClick:()=>{t.onAuthError&&t.onAuthError(a)},style:{padding:"12px 24px",fontSize:"16px",backgroundColor:i?l.errorBg:"#dc2626",color:i?l.errorText:"white",border:i?`1px solid ${l.errorBorder}`:"none",borderRadius:"4px",cursor:"pointer"},children:"Dynamic Not Supported"})})}return null},ta=5*60*1e3;function lo(t,n){const[s,r]=o.useState([]),[i,l]=o.useState(!1),a=o.useRef(n);a.current=n;const c=o.useRef(0),d=o.useRef(0),p=o.useCallback(async({forceDiscovery:u=!1}={})=>{if(!t){r([]);return}const f=++d.current,g=()=>f!==d.current;l(!0);try{const h=[],y=Zr(t);for(const U of y){if(g())return;try{const v=q.getClientForChain(U.chainId);let b;if(U.isNative||V.isNativeToken(U.tokenAddress)?b=await tn.getBalance(v,{address:t}):b=await tn.readContract(v,{address:O.getAddress(U.tokenAddress),abi:q.K,functionName:"balanceOf",args:[t]}),g())return;b>0n?h.push({...U,verifiedBalance:b,hasFullBalance:b>=BigInt(U.rawAmount)}):Date.now()-U.timestamp>15*60*1e3&&Cs(t,U.chainId,U.tokenAddress)}catch(v){console.warn(`[usePendingDeposit] Failed to verify balance for ${U.tokenSymbol} on chain ${U.chainId}:`,v),h.push({...U,verifiedBalance:0n,hasFullBalance:!1})}}if(g())return;const w=a.current,x=Date.now(),k=u||x-c.current>=ta;if(w?.network&&k){c.current=x;const U=w.chainIds??V.getChainIdsByNetwork(w.network),v=new Set(h.map(B=>`${B.chainId}:${B.tokenAddress.toLowerCase()}`)),b=[];for(const B of U){const T=q.getChainConfig(B);if(T?.supportedTokens)for(const W of T.supportedTokens){if(V.isNativeToken(W.address))continue;const E=`${B}:${W.address.toLowerCase()}`;v.has(E)||b.push((async()=>{try{const I=q.getClientForChain(B),C=await tn.readContract(I,{address:O.getAddress(W.address),abi:q.K,functionName:"balanceOf",args:[t]});return C>0n?{chainId:B,tokenAddress:W.address,tokenSymbol:W.symbol,tokenDecimals:W.decimals,amount:O.formatUnits(C,W.decimals),rawAmount:C.toString(),embeddedWalletAddress:t,externalWalletAddress:"",timestamp:0,isNative:!1,verifiedBalance:C,hasFullBalance:!0}:null}catch{return null}})())}}if(b.length>0){const B=await Promise.allSettled(b);if(g())return;for(const T of B)T.status==="fulfilled"&&T.value&&h.push(T.value)}}g()||r(h)}catch(h){console.error("[usePendingDeposit] Verification error:",h),g()||r([])}finally{g()||l(!1)}},[t]);return o.useEffect(()=>{p({forceDiscovery:!0});const u=a.current?.pollIntervalMs??3e4;if(u<=0||!t)return()=>{d.current++};const f=setInterval(()=>{p({forceDiscovery:!1})},u),g=()=>p({forceDiscovery:!0});return window.addEventListener(ts,g),()=>{d.current++,window.removeEventListener(ts,g),clearInterval(f)}},[p,t]),{pendingDeposits:s,loading:i,refresh:()=>p({forceDiscovery:!0})}}function na(t,n,s,r,i){return{address:n,symbol:s||"UNKNOWN",name:s||"Unknown Token",decimals:r||18,chainId:t,balance:0n,balanceFormatted:i?parseFloat(i):0,balanceUsd:0,isNative:V.isNativeToken(n)}}const sa=({isOpen:t,onClose:n,styles:s,depositBatches:r,allowedTokens:i,onDepositAmountChange:l,destinationChainId:a,destinationTokenAddress:c,onDepositExecute:d,depositActionLabel:p,airdrop:u=!1,sponsorGas:f=!1,escrowRecovery:g,skipTokenSelection:h=!1,onDepositSuccess:y,skipRecovery:w=!1})=>{const x=o.useContext(Y.SpiceFlowProviderContext);if(!x)return e.jsx("div",{children:"Error: SpiceDeposit must be used within SpiceFlowProvider"});const k=(x.mode||"7702")!="7702",U=k,v=x.nativeChainId,b=x.network||"testnet",{dark:B,dk:T}=Y.useSpiceBrand(s),W=!!g,E=()=>U?"connect-wallet":"provider-login",[I,C]=o.useState(E()),[P,J]=o.useState(null),[K,j]=o.useState(!1),M=pn(),{isReady:ne,isAuthenticated:$,actions:L}=M,Q=un(),{address:se}=ht.useAccount(),{externalAddress:ae}=zn(),S=ae??se,z=!!S,{pendingDeposits:ie,loading:me,refresh:re}=lo(Q,{network:b,chainIds:x.supportedChainIds}),[xe,le]=o.useState(null),[Pe,ke]=o.useState(!1),[Be,ve]=o.useState(null),[Ue,Te]=o.useState(!1),[ye,Je]=o.useState("idle");o.useEffect(()=>{t&&!w&&!W&&!xe&&!Ue&&ye==="idle"&&$&&Q&&z&&S&&!me&&ie.length>0&&I!=="recovery"&&I!=="deposit"&&C("recovery")},[t,w,W,$,Q,z,S,me,ie,I,xe,Ue,ye]);const ze=o.useCallback(D=>{const oe={address:D.tokenAddress,symbol:D.tokenSymbol,name:D.tokenSymbol,decimals:D.tokenDecimals,chainId:D.chainId,balance:D.verifiedBalance,balanceFormatted:parseFloat(D.amount),balanceUsd:0,isNative:D.isNative};J(oe),le(D),C("deposit")},[]),ue=o.useCallback(()=>{Te(!0),C($&&Q&&z&&S?h?"deposit":"select-token":$&&Q?"connect-wallet":"provider-login")},[$,Q,z,S,h]),Ve=o.useCallback(()=>{ve(null),Je("awaiting-disconnect"),C("connect-wallet")},[]),st=o.useCallback(async D=>{ke(!0),ve(null);try{if(!Q)throw new Error("Embedded wallet not available");const oe=await L.getEthereumProvider(),he=q.getChainConfig(D.chainId);await oe.request({method:"wallet_switchEthereumChain",params:[{chainId:`0x${D.chainId.toString(16)}`}]});const pe=q.getClientForChain(D.chainId),ot=await tn.getBalance(pe,{address:Q}),rt=he?.viemChain?.name||`chain ${D.chainId}`;if(ot===0n)throw new Error(`Your embedded wallet has no ETH on ${rt} to pay for gas. We recommend completing the deposit instead \u2014 it doesn't require gas.`);const ct=O.createWalletClient({account:Q,transport:O.custom(oe),chain:he?.viemChain});let at;D.isNative||V.isNativeToken(D.tokenAddress)?at=await ct.sendTransaction({to:D.externalWalletAddress,value:D.verifiedBalance,chain:he?.viemChain}):at=await ct.sendTransaction({to:D.tokenAddress,data:O.encodeFunctionData({abi:q.K,functionName:"transfer",args:[D.externalWalletAddress,D.verifiedBalance]}),chain:he?.viemChain}),await pe.waitForTransactionReceipt({hash:at,confirmations:1}),Cs(D.embeddedWalletAddress,D.chainId,D.tokenAddress),re(),ie.length<=1&&C(E())}catch(oe){const he=oe?.message||"Failed to return funds",pe=/insufficient funds for gas/i.test(he);ve(pe?"Not enough ETH in your embedded wallet to cover gas fees. Complete the deposit instead \u2014 it doesn't require gas.":he)}finally{ke(!1)}},[L,Q,ie,re]);o.useEffect(()=>{t||(le(null),ve(null),ke(!1),Te(!1),Je("idle"))},[t]),o.useEffect(()=>{if(ye!=="idle"){if(ye==="awaiting-disconnect"){(!z||!S)&&Je("awaiting-reconnect");return}t&&!me&&ie.length>0&&$&&Q&&(Je("idle"),C("recovery"))}},[ye,z,S,t,me,ie,$,Q]),o.useEffect(()=>{!W||!t||($&&Q?(j(!0),!P&&g?.chainId&&g?.tokenAddress&&J(na(g.chainId,g.tokenAddress,g.tokenSymbol,g.tokenDecimals,g.amount)),C("deposit")):C("provider-login"))},[W,t,I,$,Q]);const{assets:Z,loading:R}=ys({address:S,supportedChains:x.supportedChainIds,fetchBalances:gs,refreshInterval:t?5e3:0}),N=o.useCallback(()=>{j(!0),C(W?"deposit":"connect-wallet")},[W]),X=o.useCallback(async()=>{if((!z||!S)&&(await new Promise(D=>setTimeout(D,500)),!z||!S)){alert("Please connect your wallet first");return}C(h?"deposit":"select-token")},[z,S,h]),fe=o.useCallback(D=>{J(D),C("deposit")},[]),be=o.useCallback(()=>{n()},[n]);if(o.useEffect(()=>{if(!t){const D=setTimeout(()=>{W||(C(E()),J(null)),j(!1)},300);return()=>clearTimeout(D)}},[t,W,g?.chainId]),o.useEffect(()=>{t&&I==="deposit"&&!P&&!W&&!xe&&!h&&C("select-token")},[t,I,P,W,xe,h]),o.useEffect(()=>{if(!U&&t&&I==="provider-login"&&ne&&$&&Q&&!K){const D=setTimeout(()=>{j(!0),C("connect-wallet")},100);return()=>clearTimeout(D)}},[U,t,I,ne,$,Q,K]),!t)return null;if(I==="recovery")return e.jsx(ea,{isOpen:t,onClose:be,deposits:ie,onComplete:ze,onCancel:st,onSkip:ue,onChangeWallet:Ve,isProcessing:Pe,error:Be,styles:s});if(I==="provider-login"&&!U)return e.jsx("div",{style:{position:"fixed",inset:0,backgroundColor:"rgba(0, 0, 0, 0.5)",display:"flex",alignItems:"center",justifyContent:"center",padding:"16px",zIndex:50},children:e.jsx("div",{style:{backgroundColor:B?T.cardBg:"white",borderRadius:"9px",padding:"32px 24px",maxWidth:"400px",width:"100%"},children:e.jsx(ws,{onAuthSuccess:N,autoTrigger:!0})})});if(I==="connect-wallet")return e.jsx(qr,{isOpen:t,onClose:be,onContinue:X,requiredChainId:k?v:void 0,styles:s});if(I==="select-token")return S?e.jsx(Vr,{isOpen:t,onClose:be,onTokenSelect:fe,walletAddress:S,supportedChainIds:x.supportedChainIds,network:b,prefetchedAssets:R?null:Z??null,styles:s,dark:B,allowedTokens:i}):(C("connect-wallet"),null);if(I==="deposit"){if(!P&&!h)return null;const D=!!xe;return e.jsx(io,{isOpen:t,onClose:be,supportedChains:P?[P.chainId]:x.supportedChainIds??[],styles:s,externalWalletAddress:S,depositBatches:D?void 0:r,allowedTokens:i,onDepositAmountChange:l,destinationChainId:a,destinationTokenAddress:c,onDepositExecute:d,depositActionLabel:p,nativeChainId:v,airdrop:u,sponsorGas:f,preSelectedAsset:P??void 0,escrowOnly:W||D,escrowTokenAddress:D?xe.tokenAddress:g?.tokenAddress,escrowAmount:D?xe.amount:g?.amount,escrowTokenDecimals:D?xe.tokenDecimals:g?.tokenDecimals,escrowTokenSymbol:D?xe.tokenSymbol:g?.tokenSymbol,onDepositSuccess:y,embeddedWalletAddress:Q})}return null},co=t=>o.useContext(Y.SpiceFlowProviderContext)?e.jsx(sa,{...t}):e.jsx("div",{children:"Error: SpiceDeposit must be used within SpiceFlowProvider"}),oa=({isOpen:t,onClose:n,onChainSelect:s,supportedChains:r,closeOnSelect:i=!0,styles:l})=>{const{theme:a,dark:c,primaryColor:d,dk:p}=Y.useSpiceBrand(l),[u,f]=o.useState(""),[g,h]=o.useState(null),[y,w]=o.useState(null),[x,k]=o.useState(!1),[U,v]=o.useState(null),{switchChainAsync:b}=ht.useSwitchChain(),B=o.useMemo(()=>new Set(r||[]),[r]),T=o.useMemo(()=>{if(!r||r.length===0)return[];const C=[];return r.forEach((P,J)=>{if(typeof P!="number")return;const K=q.getChainConfig(P);K&&C.push({id:P.toString(),name:K.displayName,icon:cn[P]||yn,chainId:P,verified:!0,order:J})}),C},[r]);o.useEffect(()=>{g&&!B.has(parseInt(g,10))&&h(null)},[g,B]);const W=o.useMemo(()=>T.filter(C=>C.name.toLowerCase().includes(u.toLowerCase())).sort((C,P)=>C.order-P.order),[T,u]),E=async()=>{if(!g)return;const C=parseInt(g,10);k(!0),v(null);try{await b({chainId:C}),s&&s(g),i&&n()}catch(P){console.error("Failed to switch chain:",P),v(Xt(P,"Failed to switch chain."))}finally{k(!1)}},I=!g||x;return e.jsxs(on,{isOpen:t,onClose:n,title:"Select Chain",styles:l,theme:a,dark:c,children:[e.jsx("div",{style:{padding:"24px 20px"},children:e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",backgroundColor:c?p.inputBg:"#FAFAFA",borderRadius:"4px",boxShadow:c?"none":"0 2px 4px rgba(0, 0, 0, 0.1)",padding:"10px 5px",border:c?`1px solid ${p.inputBorder}`:"1px solid #e5e7eb"},children:[e.jsx(Yn.Search,{style:{color:c?p.textSecondary:"#9ca3af"},size:24}),e.jsx("input",{type:"text",placeholder:"Search chain name, symbol or address",value:u,onChange:C=>f(C.target.value),style:{flex:1,backgroundColor:c?p.inputBg:"#FAFAFA",outline:"none",border:"none",color:c?p.textPrimary:"#374151",fontSize:"14px",fontWeight:"400"}}),e.jsx("div",{style:{display:"flex",alignItems:"center",gap:"2px",color:"#999",fontSize:"14px",fontWeight:500,flexShrink:0},children:e.jsx("div",{style:{padding:"5px 5px",borderRadius:"3px",fontSize:"13px",backgroundColor:c?p.cardBg:"#E9E9E9",color:c?p.textSecondary:"#485066"},children:"\u2318F"})}),e.jsx("button",{style:{color:c?p.textSecondary:"#9ca3af",fontSize:"20px",fontWeight:500,border:"none",background:"none",cursor:"pointer"}})]})}),e.jsx("div",{style:{padding:"0 32px 20px",display:"flex",flexDirection:"column",gap:"12px"},children:W.map(C=>{const P=g===C.id,J=y===C.id;return e.jsxs("button",{onClick:()=>h(C.id),onMouseEnter:()=>w(C.id),onMouseLeave:()=>w(null),style:{width:"100%",display:"flex",alignItems:"center",gap:"16px",padding:"8px",borderRadius:"8px",backgroundColor:P?c?`${d}15`:`${d}12`:"transparent",border:P?c?`1px solid ${d}66`:`1px solid ${d}88`:J?c?`1px solid ${d}44`:`1px solid ${d}66`:"1px solid transparent",cursor:"pointer",transition:"all 0.2s"},children:[e.jsx("div",{style:{width:"40px",height:"40px",borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"30px"},children:e.jsx("img",{src:C.icon,alt:C.name,style:{width:"100%",height:"100%",borderRadius:"50%"}})}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px",flex:1},children:[e.jsx("span",{style:{fontFamily:'"IBM Plex Mono", monospace',fontSize:"17px",fontWeight:500,letterSpacing:"0.4px",color:c?p.textPrimary:"#111827",textAlign:"left"},children:C.name}),C.verified&&e.jsx("img",{src:to,alt:"Verified",style:{width:"16px",height:"16px",filter:c?"brightness(0) invert(1)":"none"}})]})]},C.id)})}),e.jsx("div",{style:{padding:"0 25px 25px"},children:e.jsxs(Ze.Button,{variant:"outline",onClick:E,disabled:I,fullWidth:!0,theme:a,styles:l,dark:c,children:["SELECT",e.jsx(Yn.ChevronRight,{size:20})]})})]})},uo=({title:t,icon:n,amount:s,children:r,defaultExpanded:i=!1})=>{const[l,a]=o.useState(i),{dark:c,primaryColor:d,dk:p}=Y.useSpiceBrand(),u=f=>{f?.stopPropagation(),a(!l)};return e.jsxs("div",{style:{backgroundColor:c?p.cardBg:"#FAFAFA",borderRadius:"12px",padding:"12px 16px",border:c?`1px solid ${d}33`:"0.5px solid #939291",boxShadow:c?`0 0 15px ${d}22`:"4px 4px 0px 0px #E1E1E1",marginBottom:"12px"},children:[e.jsxs("div",{onClick:u,onKeyDown:f=>{(f.key==="Enter"||f.key===" ")&&(f.preventDefault(),u())},role:"button",tabIndex:0,style:{display:"flex",alignItems:"center",justifyContent:"space-between",cursor:"pointer",width:"100%"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px",flex:1,minWidth:0},children:[n&&e.jsx("img",{src:n,alt:t,style:{width:"20px",height:"20px",flexShrink:0},onError:f=>{const g=f.target;g.style.display="none"}}),e.jsx("span",{className:"ibm-plex-mono",style:{fontSize:"14px",fontWeight:500,fontFamily:'"IBM Plex Mono", monospace',color:c?"#ffffff":"#17171A",letterSpacing:"0.5px",textTransform:"uppercase",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:t})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",flexShrink:0},children:[e.jsx("span",{style:{fontSize:"18px",fontWeight:600,color:c?"#ffffff":"#262523",whiteSpace:"nowrap"},children:s}),e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",style:{transform:l?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.2s ease",flexShrink:0},children:e.jsx("path",{d:"M4 6L8 10L12 6",stroke:c?p.textSecondary:"#262523",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]})]}),l&&r&&e.jsx("div",{style:{marginTop:"16px",paddingTop:"16px",borderTop:c?`1px solid ${d}22`:"1px solid #D0D2D8"},children:r})]})},ra=t=>cn[t]||null,ss=({name:t,balance:n,icon:s,subtitle:r,networks:i,onClick:l})=>{const{dark:a,dk:c}=Y.useSpiceBrand();return e.jsxs("div",{onClick:l,style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"12px 0",cursor:l?"pointer":"default",transition:"opacity 0.2s ease"},onMouseEnter:d=>{l&&(d.currentTarget.style.opacity="0.7")},onMouseLeave:d=>{d.currentTarget.style.opacity="1"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px"},children:[s&&e.jsx("div",{style:{width:"25px",height:"25px",borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",overflow:"hidden"},children:typeof s=="string"?e.jsx("img",{src:s,alt:t,style:{width:"100%",height:"100%",objectFit:"cover"},onError:d=>{console.warn(`Failed to load image: ${s}`);const p=d.target;p.style.display="none"}}):s}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"2px",flex:1},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[e.jsx("span",{style:{fontSize:"14px",fontWeight:600,color:a?"#ffffff":"#1A1A1A",fontFamily:'"IBM Plex Mono", monospace',textTransform:"uppercase",letterSpacing:"0.3px"},children:t}),t==="USDC"&&e.jsx("div",{style:{width:"16px",height:"16px",borderRadius:"50%",backgroundColor:"#ef4444",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},children:e.jsx("svg",{style:{width:"12px",height:"12px",color:"white"},fill:"currentColor",viewBox:"0 0 20 20",children:e.jsx("path",{fillRule:"evenodd",d:"M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z",clipRule:"evenodd"})})}),i&&i.length>0&&e.jsx("div",{style:{display:"flex",alignItems:"center",gap:"4px"},children:i.map(d=>{const p=ra(d);return p?e.jsx("img",{src:p,alt:`Chain ${d}`,style:{width:"16px",height:"16px",borderRadius:"50%",objectFit:"cover"}},d):e.jsx(Un,{chainId:d,size:16},d)})})]}),r&&e.jsx("span",{style:{fontSize:"11px",fontWeight:400,color:a?c.textSecondary:"#6B7280",fontFamily:'"IBM Plex Mono", monospace',textTransform:"none"},children:r})]})]}),e.jsx("span",{style:{fontSize:"14px",fontWeight:600,color:a?"#ffffff":"#1A1A1A",fontFamily:'"IBM Plex Mono", monospace'},children:n})]})},po=({isOpen:t,position:n,title:s,items:r,selectedId:i,onSelect:l,portalAttribute:a})=>{const{dark:c,primaryColor:d}=Y.useSpiceBrand(),[p,u]=o.useState(null),[f,g]=o.useState(!1);return o.useEffect(()=>{if(!t){g(!1);return}const h=requestAnimationFrame(()=>{requestAnimationFrame(()=>g(!0))});return()=>cancelAnimationFrame(h)},[t]),!t||!n||r.length===0?null:Zn.createPortal(e.jsxs("div",{[`data-${a}-popover`]:"true",style:{position:"fixed",top:`${n.top}px`,left:`${n.left}px`,opacity:f?1:0,transform:f?"scale(1) translateY(0)":"scale(0.96) translateY(-6px)",transition:"opacity 0.2s ease-out, transform 0.2s ease-out",backgroundColor:c?"rgba(20,20,20,0.75)":"rgba(255,255,255,0.82)",backdropFilter:"blur(20px)",WebkitBackdropFilter:"blur(20px)",borderRadius:"14px",padding:"10px 12px",boxShadow:"0 20px 60px rgba(0,0,0,0.18), 0 4px 16px rgba(0,0,0,0.08)",border:`1px solid ${c?"rgba(255,255,255,0.18)":"rgba(0,0,0,0.18)"}`,minWidth:"220px",zIndex:9999,fontFamily:'"IBM Plex Mono", monospace'},children:[e.jsx("div",{style:{marginBottom:"6px"},children:e.jsx("span",{style:{fontSize:"11px",fontWeight:500,color:c?"#fff":"#0e0d0b",textTransform:"uppercase",letterSpacing:"1px"},children:s})}),e.jsx("div",{style:{borderBottom:`1.5px dashed ${c?"rgba(255,255,255,0.15)":"rgba(0,0,0,0.12)"}`,marginBottom:"6px"}}),e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"2px"},children:r.map(h=>{const y=i===h.id,w=p===h.id;return e.jsxs("button",{onClick:x=>{x.stopPropagation(),l(h.id)},onMouseEnter:()=>u(h.id),onMouseLeave:()=>u(null),style:{display:"flex",alignItems:"center",gap:"8px",padding:"6px 4px",borderRadius:"8px",border:"none",cursor:"pointer",backgroundColor:y?c?"rgba(255,255,255,0.1)":"rgba(0,0,0,0.06)":w?c?"rgba(255,255,255,0.07)":"rgba(0,0,0,0.04)":"transparent",transition:"background-color 0.15s",width:"100%",fontFamily:'"IBM Plex Mono", monospace'},children:[h.icon&&e.jsx("img",{src:h.icon,alt:h.label,style:{width:"22px",height:"22px",borderRadius:"50%"}}),e.jsx("span",{style:{fontSize:"13px",fontWeight:y?700:500,textTransform:"uppercase",color:c?"#fff":"#0e0d0b",letterSpacing:"0.5px",flex:1,textAlign:"left"},children:h.label}),h.detail&&e.jsx("span",{style:{fontSize:"11px",fontWeight:500,color:c?"rgba(255,255,255,0.5)":"rgba(0,0,0,0.4)"},children:h.detail}),y&&e.jsx("svg",{width:"14",height:"14",viewBox:"0 0 16 16",fill:"none",style:{flexShrink:0},children:e.jsx("path",{d:"M3 8L6.5 11.5L13 5",stroke:d,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]},h.id)})})]}),document.body)},aa=t=>new Promise(n=>setTimeout(n,t));function Pn(t){return V.isSpicenetChainId(t.chainId)}function ia({chainBatches:t,tokenAddress:n,tokenTransferAmount:s,useCustomTransfers:r}){if(!(t.some(Pn)||!(r?t.some(i=>Pn(i)?!1:(i.tokenTransfers??[]).some(l=>l.from==="escrow"&&BigInt(l.amount??0)>0n)):s>0n)))throw new Y.SpiceflowError("INVALID_PARAMS","Payouts funded from Spice balance require a Spicenet funding batch before the destination chain batch. Deposits into Spice balance and gas-only actions do not need one.",{tokenAddress:n,tokenTransferAmount:s.toString(),useCustomTransfers:!!r})}function la(t,n,s,r){n.forEach((i,l)=>{if(!i.to||!i.from||!i.token||i.amount===void 0)throw new Y.SpiceflowError("INVALID_TOKEN_TRANSFER",`tokenTransfers[${l}] on chain ${t} is missing required fields (to/from/token/amount). This usually means the embedded wallet wasn't ready when the intent was built \u2014 please retry.`,{chainId:t,transferIndex:l,transfer:{from:i.from,to:i.to,token:i.token,amount:i.amount?.toString()},signingAddress:s,useCustomTransfers:r})})}function ho({user:t,chainBatches:n,tokenAddress:s,tokenTransferAmount:r,exp:i,signature:l,chainAuthorizations:a,useCustomTransfers:c}){const d=V.hashChainBatches(n),p=n.filter(u=>!Pn(u)).length;if(ia({chainBatches:n,tokenAddress:s,tokenTransferAmount:r,useCustomTransfers:c}),!c&&r>0n&&p>1)throw new Y.SpiceflowError("INVALID_PARAMS","Multiple non-Spicenet batches require explicit tokenTransfers. Pass useCustomTransfers with per-batch transfers instead of relying on the default escrow payout injection.",{nonSpicenetBatchCount:p,tokenAddress:s,tokenTransferAmount:r.toString()});return{user:t,...a?{chainAuthorizations:a}:{},intents:[{mode:"7702",signatureType:"ecdsa",signature:l,nbf:0,exp:i,chainBatches:d.map((u,f)=>{const g=n[f],h=Pn(g)?[]:c?g.tokenTransfers??[]:r>0n?[{from:"escrow",to:t,token:s,amount:r}]:[];return la(Number(u.chainId),h,t,c),{hash:u.hash,chainId:Number(u.chainId),tokenTransfers:h,calls:u.calls}})}]}}let vs=!1;function os(){const{address:t,isConnected:n,isAuthenticated:s,actions:r}=pn(),[i,l]=o.useState(null),a=o.useRef(r),c=o.useRef(new Map);a.current=r;const d=o.useCallback(async(f,g,h)=>{const y=[...new Set(f.filter(x=>!Pn(x)).map(x=>x.chainId))],w=[];for(const x of y){const k=q.getClientForChain(x),U=q.getDelegateContractAddress(x),v=Number(await V.getAccountNonce(g,k)),b=[g.toLowerCase(),x,U.toLowerCase(),v].join(":"),B=c.current.get(b);if(B){w.push(B);continue}if(h?.aborted)throw new Y.SpiceflowError("ABORT","Gasless transaction aborted");const T=await a.current.signAuthorization({contractAddress:U,chainId:x,nonce:v}),W={r:T.r,s:T.s,yParity:T.yParity,address:T.address??U,chainId:Number(T.chainId??x),nonce:Number(T.nonce??v)};c.current.set(b,W),w.push(W)}return w},[]),p=o.useCallback(async(f,g,h,y,w,x)=>{const k=(U,v,b)=>{y?.({step:U,message:v,...b})};if(vs)throw new Y.SpiceflowError("CONCURRENT_EXECUTION","A gasless transaction is already in progress. Please wait.");vs=!0;try{if(!t)throw new Y.SpiceflowError("WALLET_DISCONNECTED","No wallet connected. Please log in first.");const U=x?.userOverride||t;if(x?.depositToEscrow){const{token:Q,amount:se}=x.depositToEscrow,ae=O.encodeFunctionData({abi:q.K,functionName:"transfer",args:[V.ESCROW_ADDRESS,se]}),S=f[f.length-1];S.calls=[...S.calls,{to:Q,value:0n,data:ae}]}k("signing-delegation","Sign delegation in your wallet...");const v=await d(f,U,w);if(w?.aborted)throw new Y.SpiceflowError("ABORT","Gasless transaction aborted");k("signing-intent","Sign the intent in your wallet...");const b=BigInt(Math.floor(Date.now()/1e3)+3600),B=V.hashChainBatches(f).map(Q=>Q.hash),T=O.keccak256(O.encodeAbiParameters([{type:"string"},{type:"uint256"},{type:"uint256"},{type:"bytes32[]"}],["ecdsa",0n,b,B])),W=await a.current.signMessage({raw:T}),E=typeof W=="string"?W:W.signature;if(!E)throw new Y.SpiceflowError("SIGNATURE_FAILED","Failed to sign intent authorization. The wallet returned an empty signature.");if(w?.aborted)throw new Y.SpiceflowError("ABORT","Gasless transaction aborted");k("submitting","Submitting to relayer...");const I=ho({user:U,chainBatches:f,tokenAddress:g,tokenTransferAmount:h,exp:Number(b),signature:E,chainAuthorizations:v,useCustomTransfers:x?.useCustomTransfers}),C=await Y.relayerService.estimateActionFees(I);l(C);const P=await Y.relayerService.createAction(I),[J,K]=P.intentIds[0].split("/"),j=parseInt(K||"0",10),M=`${J}/${j}`;k("executing","Executing on chain..."),k("executing","Executing on chain...",{actionId:J,intentId:M,intentIndex:j,totalSteps:f.length});const ne=f.length;let $;const L=async Q=>{let se="pending",ae,S=0;await(async()=>{S++;try{const xe=await Y.relayerService.executeStep(J,j,Q,{action:"execute"});xe.transactionHash&&(ae=xe.transactionHash);const le=await Y.relayerService.checkStepStatus(M,Q);le.data.status&&(se=le.data.status,le.data.transactionHash&&(ae=le.data.transactionHash))}catch(xe){console.warn(`[GaslessExecution] executeStep ${Q} attempt ${S} error (will poll):`,xe.message)}})();let z=0;const ie=120;let me=0;const re=5;for(;se!=="success"&&se!=="completed"&&z<ie;){const xe=Math.min(1e3+z*1e3,5e3);if(await aa(xe),z++,w?.aborted)throw new Y.SpiceflowError("ABORT","Gasless transaction aborted");try{const le=await Y.relayerService.checkStepStatus(M,Q);me=0,se=le.data.status;const Pe=le.data.transactionHash;if(Pe&&(ae=Pe),se==="reverted"||se==="error")throw new Y.SpiceflowError("ON_CHAIN_REVERT",`Transaction ${se}. The transaction was rejected on-chain. This may be due to insufficient balance, price changes, or health factor constraints. Please verify your positions and try again.`,{status:se,txHash:ae,actionId:J,intentId:M,stepId:Q,chainId:f[Q]?.chainId});k("executing",se==="executing"?"Transaction executing...":se==="submitted"?"Transaction submitted...":se==="created"?"Waiting for relayer...":"Waiting for solver...",{txHash:ae,actionId:J,intentId:M,intentIndex:j,totalSteps:ne})}catch(le){if(le.name==="AbortError"||le instanceof Y.SpiceflowError&&(le.code==="ABORT"||le.code==="ON_CHAIN_REVERT")||le.message?.includes("reverted")||le.message?.includes("rejected on-chain"))throw le;if(me++,me>=re)throw new Y.SpiceflowError("POLLING_CONSECUTIVE_FAILURES",`Action not found after ${re} consecutive poll failures. This may indicate a relayer issue. Action ID: ${J}`,{actionId:J,intentId:M,stepId:Q,pollAttempts:z,consecutiveErrors:me,lastError:le?.message});console.warn(`[GaslessExecution] Poll step ${Q} attempt ${z} error:`,le.message)}}if(se!=="success"&&se!=="completed")throw new Y.SpiceflowError("POLLING_EXHAUSTED",`Transaction is still processing (status: ${se}). This doesn't mean it failed \u2014 the solver may still complete it. Check your positions in a few minutes, or try refreshing the page.`,{actionId:J,intentId:M,stepId:Q,lastStatus:se,pollAttempts:z,maxPolls:ie,txHash:ae});ae&&($=ae)};for(let Q=0;Q<ne;Q++)await L(Q);return k("success","Transaction successful!",{txHash:$,actionId:J,intentId:M,intentIndex:j,totalSteps:ne}),$||J}catch(U){throw console.error("[GaslessExecution] Error:",U),k("error",U.message||"Transaction failed",{error:U.message}),U}finally{vs=!1}},[t,s,d]),u=o.useCallback(async(f,g,h,y)=>{if(!t)throw new Y.SpiceflowError("WALLET_DISCONNECTED","No wallet connected. Please log in first.");const w=f.map((b,B)=>{const T={...b,calls:[...b.calls]};if(y?.depositToEscrow&&B===f.length-1){const W=O.encodeFunctionData({abi:q.K,functionName:"transfer",args:[V.ESCROW_ADDRESS,y.depositToEscrow.amount]});T.calls=[...T.calls,{to:y.depositToEscrow.token,value:0n,data:W}]}return T}),x=y?.userOverride||t,k=y?.signAuthorizationsForEstimate?await d(w,x):void 0,U=ho({user:x,chainBatches:w,tokenAddress:g,tokenTransferAmount:h,exp:Math.floor(Date.now()/1e3)+3600,signature:"0x00",chainAuthorizations:k,useCustomTransfers:y?.useCustomTransfers}),v=await Y.relayerService.estimateActionFees(U);return l(v),v},[t,d]);return{executeGasless:p,estimateGasless:u,lastFeeEstimate:i,hasEmbeddedWallet:n&&s}}function fo(t){const n=new Set(V.getEquivalentAddresses(t).map(s=>s.toLowerCase()));return n.add(t.toLowerCase()),n}const ca=["USDC","USDT","WETH","WBTC"];function ks(t,n){const s=q.getChainConfig(n);if(!s)return;if(s.nativeCurrency.symbol.toUpperCase()===t.toUpperCase())return{address:V.ZERO_ADDRESS,symbol:s.nativeCurrency.symbol,decimals:s.nativeCurrency.decimals,chainId:n};const r=s.supportedTokens?.find(i=>i.symbol.toUpperCase()===t.toUpperCase());if(r)return{address:r.address.toLowerCase(),symbol:r.symbol,decimals:r.decimals,chainId:n}}function wn(t,n,s){const r=q.getChainConfig(n);if(!r)return;if(s!==void 0){const a=Vs(t,s,n);if(a)return{address:a.address.toLowerCase(),symbol:a.symbol,decimals:a.decimals,chainId:n}}const i=fo(t);if([...i].some(a=>V.isNativeToken(a)))return{address:V.ZERO_ADDRESS,symbol:r.nativeCurrency.symbol,decimals:r.nativeCurrency.decimals,chainId:n};const l=r.supportedTokens?.find(a=>i.has(a.address.toLowerCase()));if(l)return{address:l.address.toLowerCase(),symbol:l.symbol,decimals:l.decimals,chainId:n}}function xo(t){const{sourceAsset:n,outputAsset:s,sourceChainId:r,destinationChainId:i,intermediaryCandidates:l=ca}=t;if($n(n,s))return{strategy:"direct",sourceAsset:n,outputAsset:s,sourceChainId:r,destinationChainId:i,summary:`${n.symbol} fronted directly`};if(wn(n.address,i,r))return{strategy:"direct",sourceAsset:n,outputAsset:s,sourceChainId:r,destinationChainId:i,summary:`${n.symbol} fronted on destination, swapped to ${s.symbol}`};if(wn(s.address,r,i))return{strategy:"source-swap",sourceAsset:n,outputAsset:s,sourceChainId:r,destinationChainId:i,summary:`${n.symbol} \u2192 ${s.symbol} on source chain, then fronted`};for(const a of l){const c=ks(a,r);if(!c||$n(n,c)||$n(s,c))continue;const d=ks(a,i);if(d&&$n(c,d))return{strategy:"intermediary",sourceAsset:n,outputAsset:s,intermediaryAsset:d,sourceChainId:r,destinationChainId:i,summary:`${n.symbol} \u2192 ${a} on source, fronted, then ${a} \u2192 ${s.symbol} on destination`}}throw new Y.SpiceflowError("ROUTE_STRATEGY_ERROR",`No viable cross-chain route found from ${n.symbol} (chain ${r}) to ${s.symbol} (chain ${i}). No intermediary asset is available on both chains.`,{sourceAsset:n.symbol,outputAsset:s.symbol,sourceChainId:r,destinationChainId:i,candidatesChecked:l})}async function mo(t){const{route:n,sourceAmount:s,userAddress:r,registry:i,actionCalls:l,slippage:a}=t;async function c(d,p,u,f){const g=i.getVenueForChain(d);if(!g)throw new Y.SpiceflowError("NO_VENUE_FOR_CHAIN",`No liquidity venue configured for chain ${d}. Cannot resolve swap ${p} \u2192 ${u}.`,{chainId:d,tokenIn:p,tokenOut:u,amountIn:f.toString()});const h=await g.resolve({type:"swap",tokenIn:p,tokenOut:u,amountIn:f,maxSlippage:a},d,r);if(!h)throw new Y.SpiceflowError("NO_LIQUIDITY",`${g.name} returned no quote for ${p} \u2192 ${u} on chain ${d}. No liquidity available for this pair.`,{venue:g.name,chainId:d,tokenIn:p,tokenOut:u,amountIn:f.toString()});return h}switch(n.strategy){case"direct":{const d=wn(n.sourceAsset.address,n.destinationChainId,n.sourceChainId)||n.sourceAsset;if(fo(d.address).has(n.outputAsset.address.toLowerCase()))return{chainBatches:[{chainId:n.destinationChainId,calls:l}],solverFrontToken:d,solverFrontAmount:s,resolvedSwaps:{}};const p=await c(n.destinationChainId,d.address,n.outputAsset.address,s);return{chainBatches:[{chainId:n.destinationChainId,calls:[...p.calls,...l]}],solverFrontToken:d,solverFrontAmount:s,resolvedSwaps:{destinationSwap:p}}}case"source-swap":{const d=wn(n.outputAsset.address,n.sourceChainId,n.destinationChainId);if(!d)throw new Y.SpiceflowError("ROUTE_TOKEN_NOT_FOUND",`Output asset ${n.outputAsset.symbol} (${n.outputAsset.address}) not found on source chain ${n.sourceChainId}`,{token:n.outputAsset.symbol,address:n.outputAsset.address,chainId:n.sourceChainId,side:"source"});const p=wn(n.outputAsset.address,n.destinationChainId,n.destinationChainId);if(!p)throw new Y.SpiceflowError("ROUTE_TOKEN_NOT_FOUND",`Output asset ${n.outputAsset.symbol} (${n.outputAsset.address}) not found on destination chain ${n.destinationChainId}`,{token:n.outputAsset.symbol,address:n.outputAsset.address,chainId:n.destinationChainId,side:"destination"});const u=await c(n.sourceChainId,n.sourceAsset.address,d.address,s);return{chainBatches:[{chainId:n.sourceChainId,calls:u.calls},{chainId:n.destinationChainId,calls:l}],solverFrontToken:p,solverFrontAmount:u.amountOutMinimum,resolvedSwaps:{sourceSwap:u}}}case"intermediary":{if(!n.intermediaryAsset)throw new Y.SpiceflowError("ROUTE_STRATEGY_ERROR","Intermediary strategy requires an intermediary asset but none was provided in the route plan.",{strategy:n.strategy});const d=wn(n.intermediaryAsset.address,n.sourceChainId,n.destinationChainId);if(!d)throw new Y.SpiceflowError("ROUTE_TOKEN_NOT_FOUND",`Intermediary ${n.intermediaryAsset.symbol} (${n.intermediaryAsset.address}) not found on source chain ${n.sourceChainId}`,{token:n.intermediaryAsset.symbol,address:n.intermediaryAsset.address,chainId:n.sourceChainId,side:"source"});const p=await c(n.sourceChainId,n.sourceAsset.address,d.address,s),u=await c(n.destinationChainId,n.intermediaryAsset.address,n.outputAsset.address,p.amountOutMinimum);return{chainBatches:[{chainId:n.sourceChainId,calls:p.calls},{chainId:n.destinationChainId,calls:[...u.calls,...l]}],solverFrontToken:n.intermediaryAsset,solverFrontAmount:p.amountOutMinimum,resolvedSwaps:{sourceSwap:p,destinationSwap:u}}}default:throw new Y.SpiceflowError("ROUTE_STRATEGY_ERROR",`Unknown route strategy: ${n.strategy}`,{strategy:n.strategy})}}const da={usdc:1,"usdc.e":1,usdt:1,dai:1,ctusd:1,wbtc:1e5,wcbtc:1e5,cbtc:1e5};function go(t,n){return O.formatUnits(t,n).replace(/(\.\d*?[1-9])0+$|\.0+$/,"$1")}function yo(t,n){return!t||!n?!1:t.toLowerCase()===n.toLowerCase()}function ua(t,n,s){return n===s?t:n<s?t*10n**BigInt(s-n):t/10n**BigInt(n-s)}function bo(t,n){const s=n?da[n.trim().toLowerCase()]??0:0,r=t*s;return r<=0?"$0":r>=1?`$${r.toFixed(3).replace(/0+$/,"").replace(/\.$/,"")}`:`$${r.toFixed(4).replace(/0+$/,"").replace(/\.$/,"")}`}const pa=({isOpen:t,onClose:n,styles:s,onWithdrawExecute:r,withdrawActionLabel:i,onWithdrawSuccess:l,onWithdrawError:a,autoCloseDelay:c,supportedChains:d,availableTokens:p,buildSpicenetBatch:u})=>{const f=o.useContext(Y.SpiceFlowProviderContext);if(!f)return e.jsx("div",{children:"Error: SpiceWithdraw must be used within SpiceFlowProvider"});const g=f.mode||"7702",h=g==="presign"||g==="ondemand",y=!0,{theme:w,dark:x,dk:k}=Y.useSpiceBrand(s),U=f.network,v=()=>h?"select":"provider-login",[b,B]=o.useState(v()),[T,W]=o.useState(!1),[E,I]=o.useState(null),[C,P]=o.useState(null),[J,K]=o.useState(""),[j,M]=o.useState(!1),[ne,$]=o.useState(!1),[L,Q]=o.useState(!1),[se,ae]=o.useState(!1),[S,z]=o.useState(""),[ie,me]=o.useState(!0),re=o.useRef(null),xe=o.useRef(null),le=o.useRef(null),Pe=o.useRef(null),[ke,Be]=o.useState(null),[ve,Ue]=o.useState(null),[Te,ye]=o.useState(null),Je=pn(),{isReady:ze,isAuthenticated:ue,address:Ve}=Je,st=un(),{address:Z,chainId:R}=ht.useAccount(),[N,X]=o.useState(!1),[fe,be]=o.useState(null),[D,oe]=o.useState(null),he=o.useRef(null),{executeGasless:pe,estimateGasless:ot}=os(),[rt,ct]=o.useState(null),[at,Ye]=o.useState(!1),[kt,It]=o.useState(null),{assets:Le,loading:ft}=An({address:st,enabled:!!st,refetchInterval:3e4}),Xe=o.useMemo(()=>[...new Set([...d??[],...Object.keys(p??{}).map(Number),...(Le||[]).map(G=>G.chainId),...(Le||[]).flatMap(G=>Object.keys(G.chainTokens??{}).map(_=>{const[,je]=_.split(":"),Oe=Number(je);return Number.isFinite(Oe)?Oe:null}).filter(_=>_!==null))])].filter(G=>q.getChainConfig(G)?.network===U),[d,p,Le,U]),$t=o.useMemo(()=>{if(p)return p;const G={};for(const _ of Le||[]){const je=Object.entries(_.chainTokens??{});if(je.length>0){for(const[Oe,it]of je){const[xt,At,Mt]=Oe.split(":");if(xt!=="evm"||!At||!Mt)continue;const Qe=Number(At);if(!Number.isFinite(Qe))continue;const Ut=Mt.startsWith("0x")?Mt.toLowerCase():`0x${Mt.toLowerCase()}`,pt=q.getChainConfig(Qe)?.supportedTokens?.find($e=>$e.address.toLowerCase()===Ut.toLowerCase());G[Qe]||(G[Qe]=[]),G[Qe].find($e=>$e.address.toLowerCase()===Ut.toLowerCase())||G[Qe].push({address:Ut,symbol:pt?.symbol||it?.name||_.symbol,name:pt?.name||it?.name||_.displayName||_.name||_.symbol,decimals:pt?.decimals??it?.decimals??_.decimals,logoURI:pt?.logo||_.logoURI})}continue}G[_.chainId]||(G[_.chainId]=[]),G[_.chainId].find(Oe=>Oe.address.toLowerCase()===_.address.toLowerCase())||G[_.chainId].push({address:_.address,symbol:_.symbol,name:_.displayName||_.name||_.symbol,decimals:_.decimals,logoURI:_.logoURI})}return G},[p,Le]),zt=o.useCallback((G,_)=>{if(!G||!_)return null;const je=Jn(G,_),Oe=Object.entries(G.chainTokens??{}).flatMap(([pt,$e])=>{const wt=Gn(pt);return wt?.chainId===_?[{parsed:wt,detail:$e}]:[]}),it=$t?.[_]||[],xt=pt=>it.find($e=>yo($e.address,pt))??null,At=pt=>{const $e=Oe.find(({parsed:wt})=>yo(wt.address,pt));return $e?{address:$e.parsed.address,symbol:G.symbol,name:$e.detail?.name||G.displayName||G.name||G.symbol,decimals:$e.detail?.decimals??G.decimals,logoURI:G.logoURI}:null};for(const pt of je){const $e=xt(pt);if($e)return $e;const wt=At(pt);if(wt)return wt}const Mt=bn(G,_);if(Mt){const pt=xt(Mt);if(pt)return pt;const $e=At(Mt);if($e)return $e}const Qe=wn(G.address,_,G.chainId);return Qe?xt(Qe.address)||(it.length>0?null:{address:Qe.address,symbol:Qe.symbol||G.symbol,name:G.displayName||G.name||G.symbol,decimals:Qe.decimals??G.decimals,logoURI:G.logoURI}):null},[$t]),dt=o.useMemo(()=>{if(!E)return[];const G=Object.keys(E.chainTokens??{}).map(_=>Gn(_)?.chainId??null).filter(_=>_!==null);return Array.from(new Set([...G,E.chainId,...Xe].filter(Number.isFinite))).filter(_=>q.getChainConfig(_)?.network===U&&zt(E,_)!==null)},[E,Xe,zt,U]),qt=o.useMemo(()=>{if(!E||typeof window>"u")return null;const G=`spiceflow:withdraw-chain:${E.receiptTokenId||E.address.toLowerCase()}`,_=window.localStorage.getItem(G),je=_?Number(_):null;return je!==null&&Number.isFinite(je)&&dt.includes(je)?je:null},[E,dt]),Bt=o.useMemo(()=>E?qt!==null?qt:R&&dt.includes(R)?R:E.chainId&&dt.includes(E.chainId)?E.chainId:dt[0]??Xe[0]??null:Xe[0]??null,[E,qt,R,dt,Xe]),De=o.useMemo(()=>zt(E,C),[zt,E,C]);o.useEffect(()=>{!Le?.length||E||I(Le[0])},[y,Le,E]),o.useEffect(()=>{!E||(C===null||!dt.includes(C))&&P(Bt)},[y,E,C,Bt,dt]),o.useEffect(()=>{if(!j&&!ne&&!L)return;const G=_=>{const je=_.target;j&&!re.current?.contains(je)&&!xe.current?.contains(je)&&!je?.closest?.("[data-network-popover]")&&M(!1),ne&&!le.current?.contains(je)&&!je?.closest?.("[data-token-popover]")&&$(!1),L&&!Pe.current?.contains(je)&&!je?.closest?.("[data-balance-trigger]")&&Q(!1)};return document.addEventListener("mousedown",G),()=>document.removeEventListener("mousedown",G)},[j,ne,L]);const yt=o.useCallback(G=>{if(!G||dt.length<=1)return;const _=G.getBoundingClientRect();Be({top:_.top-10,left:_.right-90}),M(je=>!je)},[dt.length]);o.useEffect(()=>{if(!E||C===null||typeof window>"u")return;const G=`spiceflow:withdraw-chain:${E.receiptTokenId||E.address.toLowerCase()}`;window.localStorage.setItem(G,String(C))},[E,C]);const jt=se&&S&&O.isAddress(S)?S:Z||st,Ft=E?.balanceFormatted??0,Pt=o.useCallback(G=>{if(!G)return;const _=G.getBoundingClientRect();ye({top:_.bottom+8,left:_.right-220}),Q(!0)},[]),Yt=E?.displaySymbol||E?.receiptTokenName||E?.symbol||"spiceUSDC",Et=E?.displayChainName||"Spicenet",tt=cs,rn=cs,St=E?.receiptTokenDecimals??E?.decimals,Ot=o.useMemo(()=>{if(!De||!St)return 0n;try{return O.parseUnits(J||"0",St)}catch{return 0n}},[J,De,St]),Ht=o.useMemo(()=>!De||!St?0n:ua(Ot,St,De.decimals),[De,St,Ot]),Rt=o.useMemo(()=>!rt||rt<=0n?Ht:rt>=Ht?0n:Ht-rt,[rt,Ht]),We=o.useMemo(()=>{if(!C||!De)return[];if(Ot===0n||Ht===0n||!jt)return[];const G={chainId:C,calls:[],tokenTransfers:[{from:"escrow",to:jt,token:De.address,amount:Ht}]};if(!u)return[G];const _=u({destinationChainId:C,deliveryToken:De.address,deliveryAmount:Ht,deliveryRecipient:jt});return _?[_,G]:[G]},[y,C,De,Ot,Ht,jt,u]);o.useEffect(()=>{let G=!1;if(!t||h||!De||Ot===0n){ct(null),It(null),Ye(!1);return}if(We.length===0){ct(null),Ye(!0);return}const _=async()=>{Ye(!0),It(null);try{const Oe=await ot(We,De.address,0n,{useCustomTransfers:!0});if(G)return;const it=Oe.intents[0]?.batches[0];if(!it){ct(null),It("No gas fee estimate was returned for this withdraw.");return}ct(BigInt(it.feeBreakdown.spicenetFee)+BigInt(it.feeBreakdown.gasFee))}catch(Oe){if(G)return;ct(null),It(Oe instanceof Error?Oe.message:"Failed to estimate gas fee")}finally{G||Ye(!1)}};_();const je=window.setInterval(()=>{_()},8e3);return()=>{G=!0,window.clearInterval(je)}},[t,h,We,De,ot,Ot]);const ut=o.useCallback(()=>{W(!0),B("select")},[y]),nt=o.useCallback(()=>{n()},[n]),Tt=o.useCallback(async()=>{if(!(We.length===0||!Ve||!jt)){X(!0),be(null),oe(null),he.current=null;try{if(h&&r)await r(J);else{if(!h&&!We.some(_=>V.isSpicenetChainId(_.chainId)))throw new Error("Spice withdrawals must include a Spicenet funding batch before the destination chain batch.");const G=De?.address||"";await pe(We,G,0n,_=>{_.actionId&&_.intentId&&typeof _.intentIndex=="number"&&typeof _.totalSteps=="number"&&(he.current={actionId:_.actionId,intentId:_.intentId,intentIndex:_.intentIndex,totalSteps:_.totalSteps}),oe(_)},void 0,{useCustomTransfers:!0})}window.dispatchEvent(new CustomEvent("withdraw-completed")),l?.({token:De?.symbol||"",amount:J,chainId:C})}catch(G){const _=G instanceof Error?G.message:"Withdraw failed";be(_),a?.(_)}finally{X(!1)}}},[We,Ve,jt,pe,De,J,C,l,a,h,r]),Ge=o.useCallback(async()=>{const G=he.current;if(!G){oe(null),await Tt();return}X(!0),be(null),oe({step:"executing",message:"Resuming existing action...",actionId:G.actionId,intentId:G.intentId,intentIndex:G.intentIndex,totalSteps:G.totalSteps});try{let _=G.totalSteps;for(let je=0;je<G.totalSteps;je++)if((await Y.relayerService.checkStepStatus(G.intentId,je)).data.status!=="success"){_=je;break}if(_>=G.totalSteps)oe(je=>({...je||{step:"success",message:"Transaction successful!",actionId:G.actionId,intentId:G.intentId,intentIndex:G.intentIndex,totalSteps:G.totalSteps},step:"success",message:"Transaction successful!"}));else for(let je=_;je<G.totalSteps;je++){let Oe="pending",it;try{const xt=await Y.relayerService.executeStep(G.actionId,G.intentIndex,je,{action:"execute"});xt.transactionHash&&(it=xt.transactionHash)}catch{}for(let xt=0;xt<120;xt++){await new Promise(Mt=>setTimeout(Mt,Math.min(1e3+xt*1e3,5e3)));const At=await Y.relayerService.checkStepStatus(G.intentId,je);if(Oe=At.data.status,At.data.transactionHash&&(it=At.data.transactionHash),Oe==="success"){oe({step:je===G.totalSteps-1?"success":"executing",message:je===G.totalSteps-1?"Transaction successful!":"Executing remaining steps...",txHash:it,actionId:G.actionId,intentId:G.intentId,intentIndex:G.intentIndex,totalSteps:G.totalSteps});break}if(Oe==="reverted"||Oe==="error")throw new Error("Withdraw failed");oe({step:"executing",message:"Executing remaining steps...",txHash:it,actionId:G.actionId,intentId:G.intentId,intentIndex:G.intentIndex,totalSteps:G.totalSteps})}if(Oe!=="success")throw new Error("Withdraw is still processing")}window.dispatchEvent(new CustomEvent("withdraw-completed")),l?.({token:De?.symbol||"",amount:J,chainId:C})}catch(_){const je=_ instanceof Error?_.message:"Withdraw failed";be(je),a?.(je)}finally{X(!1)}},[Tt,l,De,J,C,a]);if(o.useEffect(()=>{if(!t){const G=setTimeout(()=>{B(v()),W(!1),I(null),P(null),K(""),M(!1),$(!1),ae(!1),z(""),X(!1),be(null),oe(null),he.current=null},300);return()=>clearTimeout(G)}},[t,h]),o.useEffect(()=>{if(!h&&t&&b==="provider-login"&&ze&&ue&&st&&!T){const G=setTimeout(()=>{W(!0),B("select")},100);return()=>clearTimeout(G)}},[h,t,b,ze,ue,st,T,y]),!t)return null;if(b==="provider-login"&&!h)return e.jsx(ws,{onAuthSuccess:ut,autoTrigger:!0});if(b==="select"&&y){const G=parseFloat(J)||0,_=G>0&&G>Ft,je=(C?q.getChainConfig(C):null)?.displayName||"Network",Oe=C?cn[C]||yn:null,it=De?.symbol||"\u2014",xt=Yt,At=De?go(Rt,De.decimals):"0",Mt=bo(G,De?.symbol||E?.symbol),Qe=bo(parseFloat(At)||0,De?.symbol||E?.symbol),Ut=!se||!S||O.isAddress(S),pt=!h&&G>0&&De!==null,$e=!pt||rt!==null&&!at&&!kt,wt=G>0&&!_&&E!==null&&C!==null&&De!==null&&jt&&Ut&&$e&&Rt>0n,Vt=!wt,_t=E===null?"NO BALANCE":G===0?"ENTER AMOUNT":_?"INSUFFICIENT BALANCE":pt&&!$e?kt?"GAS UNAVAILABLE":"ESTIMATING GAS":pt&&Rt===0n?"AMOUNT TOO SMALL":"WITHDRAW",mn=!!D&&(D.step==="success"||D.step==="error"),Qt=e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"5px"},children:[e.jsx("img",{src:ao,alt:"Info",style:{width:"13px",height:"13px",flexShrink:0,...x?{filter:"invert(0.6)"}:{}}}),e.jsx("p",{style:{fontSize:"13px",color:x?k.textSecondary:"#979AA0",margin:"0",lineHeight:"1.4",fontFamily:'"Helvetica Neue", sans-serif'},children:"Withdraw collateral from your account to 10+ EVM blockchains."})]}),Ne='"Helvetica Neue", Arial, sans-serif',bt='"IBM Plex Mono", monospace',Dt=s?.primaryColor||w.colors.primary,nn=x?k.cardBg:"#E9E9E9",Kt=x?k.cardBorder:"#C6C6C6",ee=x?k.textSecondary:"#7D7C7B",te=x?k.textSecondary:"#71757A",Re=x?k.textPrimary:"#0E0D0B",Ke=x?k.cardBorder:"#C5C5C4",qe=x?"rgba(255,255,255,0.08)":"#D4D3D3",mt=170,gt=xt.length>8?"14px":xt.length>6?"16px":"18px",Ct=it.length>8?"14px":it.length>6?"16px":"18px",Ee=402,Me=J.length>7?42:J.length>5?46:54,vt=At.length>7?42:At.length>5?46:54;return e.jsx(on,{isOpen:!0,onClose:nt,title:"Withdraw from your account",subtitle:Qt,styles:s,theme:w,dark:x,maxWidth:"486px",footerLinkText:"Spicenet accounts \u2192",overlayDimmed:!1,overlayContent:mn?e.jsx("div",{style:{position:"absolute",top:0,left:0,right:0,bottom:0,display:"flex",flexDirection:"column",justifyContent:"flex-end",pointerEvents:"none",zIndex:20},children:e.jsx("div",{style:{pointerEvents:"auto"},children:e.jsx(Ln,{type:"withdraw",isOpen:!0,isProcessing:N,onRetryTx:()=>{Ge()},onNewTx:()=>{oe(null),K(""),be(null),he.current=null},onClose:()=>{oe(null),be(null),X(!1),he.current=null},onComplete:()=>{oe(null),be(null),X(!1),he.current=null},results:[{asset:{symbol:De?.symbol||"Token",address:De?.address||""},txHash:D?.txHash||"",success:D?.step==="success",error:D?.error,amount:J}],chainName:C?q.getChainName(C):"Network",explorerUrl:C?q.getExplorerUrl(C,"").replace(/\/tx\/.*$/,""):void 0,theme:w})})}):null,children:e.jsxs("div",{style:{width:`${Ee}px`,margin:"0 auto",padding:"0 0 4px 0",position:"relative"},children:[L&&Te&&e.jsxs("div",{ref:Pe,"data-balance-popover":!0,style:{position:"fixed",top:`${Te.top}px`,left:`${Te.left}px`,width:"220px",background:x?k.cardBg:"#FFFFFF",border:`1px solid ${x?k.cardBorder:"#D6D6D6"}`,borderRadius:"10px",boxShadow:x?"0 12px 32px rgba(0,0,0,0.32)":"0 12px 28px rgba(15, 23, 42, 0.14)",padding:"10px",zIndex:40},children:[e.jsx("div",{style:{fontFamily:bt,fontSize:"11px",letterSpacing:"0.05em",color:te,marginBottom:"8px"},children:"ALL BALANCES"}),e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:(Le||[]).length>0?(Le||[]).map(de=>e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:"10px",padding:"6px 0"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",minWidth:0},children:[de.logoURI?e.jsx("img",{src:de.logoURI,alt:de.displaySymbol||de.receiptTokenName||de.symbol,style:{width:"18px",height:"18px",borderRadius:"50%",flexShrink:0}}):e.jsx("div",{style:{width:"18px",height:"18px",borderRadius:"50%",border:`1px solid ${x?k.cardBorder:"#C8C8C8"}`,flexShrink:0}}),e.jsx("span",{style:{fontFamily:Ne,fontSize:"13px",color:Re,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:de.displaySymbol||de.receiptTokenName||de.symbol})]}),e.jsx("span",{style:{fontFamily:bt,fontSize:"12px",color:Re,flexShrink:0},children:kn(de.balanceFormatted)})]},de.receiptTokenId||de.address)):e.jsx("span",{style:{fontFamily:Ne,fontSize:"13px",color:te},children:"No balances"})})]}),e.jsxs("div",{style:{marginTop:"16px",marginBottom:"16px",display:"flex",flexDirection:"column",gap:"16px"},children:[e.jsxs("div",{style:{backgroundColor:nn,border:`1px solid ${Kt}`,borderRadius:"7px",padding:"14px 16px 12px 16px",minHeight:"138px",display:"flex",flexDirection:"column",gap:"6px",position:"relative"},children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsx("span",{style:{fontFamily:Ne,fontSize:"17px",fontWeight:500,color:ee,lineHeight:"24px"},children:"Source"}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px",fontFamily:Ne,fontSize:"13px",fontWeight:500,color:te,lineHeight:"16px"},children:["Balance:"," ",ft?"...":kn(Ft),e.jsx("button",{type:"button","data-balance-trigger":!0,onClick:de=>{de.stopPropagation(),Pt(de.currentTarget)},style:{width:"15px",height:"15px",borderRadius:"999px",border:"1px solid #EA4B4B",color:"#EA4B4B",display:"inline-flex",alignItems:"center",justifyContent:"center",fontSize:"9px",fontWeight:500,lineHeight:1,boxSizing:"border-box",background:"transparent",padding:0,cursor:"pointer"},children:e.jsx("span",{style:{display:"inline-flex",alignItems:"center",justifyContent:"center",gap:"1.5px"},children:[0,1,2].map(de=>e.jsx("span",{style:{width:"1.75px",height:"1.75px",borderRadius:"999px",backgroundColor:"#EA4B4B",display:"block"}},de))})})]})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:"12px",flex:1},children:[e.jsxs("div",{style:{flex:1,minWidth:0,alignSelf:"flex-start",paddingTop:"4px"},children:[e.jsx("input",{type:"text",value:J,onChange:de=>{const Se=de.target.value;(Se===""||/^\d*\.?\d*$/.test(Se))&&K(Se)},placeholder:"0.0",style:{fontFamily:Ne,fontSize:`${Me}px`,fontWeight:700,color:_?"#ef4444":J?Re:"#A8A8A7",lineHeight:"0.95",letterSpacing:"-2.4px",backgroundColor:"transparent",border:"none",outline:"none",padding:0,width:"100%"}}),e.jsx("div",{style:{fontSize:"12px",fontWeight:500,color:te,fontFamily:Ne,marginTop:"10px"},children:Mt})]}),e.jsx("div",{style:{width:`${mt}px`,flexShrink:0},children:e.jsxs("div",{style:{backgroundColor:"transparent",border:`1px solid ${Ke}`,borderRadius:"8px",overflow:"hidden",width:"100%",display:"flex",flexDirection:"column",boxSizing:"border-box"},children:[e.jsxs("div",{ref:le,onClick:de=>{if(de.stopPropagation(),!ne&&le.current){const Se=le.current.getBoundingClientRect();Ue({top:Se.top-10,left:Se.right-30})}$(Se=>!Se)},style:{display:"flex",alignItems:"center",gap:"6px",padding:"9px 10px 8px 10px",cursor:"pointer"},children:[e.jsx("img",{src:tt,alt:xt,style:{width:"24px",height:"24px",borderRadius:"50%"}}),e.jsx("span",{style:{fontSize:gt,fontWeight:500,color:Re,lineHeight:"1.3",fontFamily:Ne,flex:1,minWidth:0,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",letterSpacing:"-0.02em"},children:xt}),e.jsx("svg",{width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:Re,strokeWidth:"2.25",strokeLinecap:"round",strokeLinejoin:"round",children:e.jsx("path",{d:"M6 9l6 6 6-6"})})]}),e.jsx(po,{isOpen:ne,position:ve,title:"SELECT TOKEN",portalAttribute:"token",items:(Le||[]).map(de=>({id:de.receiptTokenId||de.address,label:de.displaySymbol||de.receiptTokenName||de.symbol,icon:cs,detail:kn(de.balanceFormatted)})),selectedId:E?.receiptTokenId||E?.address||null,onSelect:de=>{const Se=(Le||[]).find(_e=>(_e.receiptTokenId||_e.address)===de);Se&&(I(Se),K("")),$(!1)}}),e.jsx("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"5px 10px",backgroundColor:qe,borderTop:`1px solid ${Ke}`},children:e.jsx("span",{style:{fontSize:"11px",fontWeight:400,color:Re,fontFamily:Ne,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",textTransform:"uppercase"},children:Et})})]})})]}),e.jsxs("div",{style:{minHeight:"18px",display:"flex",alignItems:"center",justifyContent:"space-between"},children:[_?e.jsx("span",{style:{fontSize:"12px",color:x?k.errorText:"#dc2626",fontFamily:Ne,fontWeight:500},children:"Insufficient Balance"}):e.jsx("span",{}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end",gap:"10px",minHeight:"14px",paddingRight:"3px"},children:[0,25,50,75,100].map((de,Se)=>{const _e=Se===4,He=de/100,m=parseFloat(J)||0,A=Ft>0&&Math.abs(m/Ft*100-de)<1;return e.jsx("button",{type:"button",onClick:()=>{const F=Ft*de/100,H=E?.decimals??6,ce=Math.floor(F*10**H)/10**H;K(de===0?"":ce>0?In(ce,H):"")},title:`${de}%`,disabled:Ft===0,style:{width:"14px",height:"14px",padding:0,border:"none",backgroundColor:"transparent",cursor:Ft===0?"not-allowed":"pointer",opacity:A?1:.5,transition:"all 0.15s ease"},children:e.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 14 14",children:[e.jsx("circle",{cx:"7",cy:"7",r:"6.84375",fill:_e?Dt:"none",stroke:_e?Dt:x?"#4a5568":"#3C3E42",strokeWidth:"0.3125"}),!_e&&He>0&&e.jsx("path",{d:`M 7 7 L 7 0.15625 A 6.84375 6.84375 0 ${He>.5?1:0} 1 ${7+6.84375*Math.sin(He*2*Math.PI)} ${7-6.84375*Math.cos(He*2*Math.PI)} Z`,fill:x?k.textSecondary:"#3C3E42"})]})},de)})})]})]}),e.jsxs("div",{style:{backgroundColor:nn,border:`1px solid ${Kt}`,borderRadius:"7px",padding:"14px 16px 12px 16px",minHeight:"138px",display:"flex",flexDirection:"column",gap:"6px"},children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsx("span",{style:{fontFamily:Ne,fontSize:"17px",fontWeight:500,color:ee,lineHeight:"24px"},children:"Destination"}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px",fontFamily:Ne,fontSize:"13px",fontWeight:500,color:te,lineHeight:"16px"},children:["Balance:"," ",ft?"...":kn(Ft),e.jsx("button",{type:"button","data-balance-trigger":!0,onClick:de=>{de.stopPropagation(),Pt(de.currentTarget)},style:{width:"15px",height:"15px",borderRadius:"999px",border:"1px solid #EA4B4B",color:"#EA4B4B",display:"inline-flex",alignItems:"center",justifyContent:"center",fontSize:"9px",fontWeight:500,lineHeight:1,boxSizing:"border-box",background:"transparent",padding:0,cursor:"pointer"},children:e.jsx("span",{style:{display:"inline-flex",alignItems:"center",justifyContent:"center",gap:"1.5px"},children:[0,1,2].map(de=>e.jsx("span",{style:{width:"1.75px",height:"1.75px",borderRadius:"999px",backgroundColor:"#EA4B4B",display:"block"}},de))})})]})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:"12px",flex:1},children:[e.jsxs("div",{style:{flex:1,minWidth:0,alignSelf:"flex-start",paddingTop:"4px"},children:[e.jsx("div",{style:{fontFamily:Ne,fontSize:`${vt}px`,fontWeight:700,color:J?Re:"#A8A8A7",lineHeight:"0.95",letterSpacing:"-2.4px"},children:At}),e.jsx("div",{style:{fontSize:"12px",fontWeight:500,color:te,fontFamily:Ne,marginTop:"10px"},children:Qe})]}),e.jsxs("div",{style:{width:`${mt}px`,flexShrink:0,display:"flex",flexDirection:"column",alignItems:"stretch",gap:"8px"},children:[e.jsxs("div",{style:{backgroundColor:"transparent",border:`1px solid ${Ke}`,borderRadius:"8px",overflow:"hidden",width:"100%",display:"flex",flexDirection:"column",boxSizing:"border-box"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px",padding:"9px 10px 8px 10px"},children:[e.jsx("img",{src:De?.logoURI||Nn,alt:it,style:{width:"24px",height:"24px",borderRadius:"50%"}}),e.jsx("span",{style:{fontSize:Ct,fontWeight:500,color:Re,lineHeight:"1.3",fontFamily:Ne,flex:1,minWidth:0,letterSpacing:"-0.02em"},children:it})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"5px 10px",backgroundColor:qe,borderTop:`1px solid ${Ke}`},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"4px"},children:[Oe&&e.jsx("img",{src:Oe,alt:je,style:{width:"13px",height:"13px",borderRadius:"50%",flexShrink:0}}),e.jsx("span",{style:{fontSize:"11px",fontWeight:400,color:Re,fontFamily:Ne,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",textTransform:"uppercase"},children:je})]}),e.jsx("button",{ref:re,onClick:de=>{de.stopPropagation(),yt(re.current)},style:{background:"none",border:"none",cursor:dt.length>1?"pointer":"not-allowed",padding:"0 0 0 8px",fontSize:"9.5px",fontFamily:bt,color:te,textDecoration:"underline",fontWeight:600,opacity:dt.length>1?1:.45},children:"Switch"}),e.jsx(po,{isOpen:j,position:ke,title:"SELECT NETWORK",portalAttribute:"network",items:dt.map(de=>{const Se=q.getChainConfig(de);return{id:String(de),label:Se?.displayName||String(de),icon:cn[de]||yn}}),selectedId:C!==null?String(C):null,onSelect:de=>{P(Number(de)),M(!1)}})]})]}),e.jsx("div",{style:{minHeight:"14px"}})]})]})]})]}),e.jsxs("div",{style:{marginBottom:w.spacing.sm},children:[e.jsxs("div",{onClick:()=>me(de=>!de),style:{display:"flex",alignItems:"center",gap:"6px",marginBottom:ie?"10px":"0",cursor:"pointer",userSelect:"none"},children:[e.jsx("span",{style:{fontSize:"13px",color:te,fontFamily:Ne,fontWeight:600},children:"Transaction Details"}),e.jsx(Yn.ChevronDown,{size:12,color:te,style:{transform:ie?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.2s"}})]}),ie&&e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"7px"},children:[e.jsxs("div",{children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsx("span",{style:{fontSize:"12px",color:te,fontFamily:bt,fontWeight:500,letterSpacing:"0.03em"},children:"TO"}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[e.jsx("span",{style:{fontSize:"13px",color:Re,fontFamily:bt,fontWeight:500},children:se&&S?O.isAddress(S)?`${S.slice(0,6)}...${S.slice(-4)}`:S:jt?`${jt.slice(0,6)}...${jt.slice(-4)}`:"\u2014"}),e.jsx("button",{onClick:()=>{ae(de=>!de),!se&&Z&&z(Z)},style:{background:"none",border:"none",cursor:"pointer",padding:"0",fontSize:"9.5px",fontFamily:bt,color:te,textDecoration:"underline",fontWeight:600},children:se?"Reset":"Switch"})]})]}),se&&e.jsxs("div",{style:{marginTop:"6px"},children:[e.jsx("input",{type:"text",value:S,onChange:de=>z(de.target.value),placeholder:"0x...",style:{width:"100%",padding:"8px 10px",borderRadius:"6px",border:`1px solid ${S&&!O.isAddress(S)?x?k.errorBorder:"#fca5a5":x?k.inputBorder:"#d1d5db"}`,backgroundColor:x?k.inputBg:"#f9fafb",color:x?k.inputText:"#111827",fontSize:"12px",fontFamily:bt,outline:"none",boxSizing:"border-box"}}),S&&!O.isAddress(S)&&e.jsx("span",{style:{fontSize:"11px",color:x?k.errorText:"#dc2626",marginTop:"3px",display:"block"},children:"Invalid address"})]})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"space-between"},children:[e.jsx("span",{style:{fontSize:"12px",color:te,fontFamily:bt,fontWeight:500,letterSpacing:"0.03em"},children:"RECEIVING CHAIN"}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"7px"},children:[Oe&&e.jsx("img",{src:Oe,alt:je,style:{width:"14px",height:"14px",borderRadius:"50%"}}),e.jsx("span",{style:{fontSize:"13px",color:Re,fontWeight:500,fontFamily:bt,textTransform:"uppercase"},children:je}),e.jsx("button",{ref:xe,onClick:de=>{de.stopPropagation(),yt(xe.current)},style:{background:"none",border:"none",cursor:dt.length>1?"pointer":"not-allowed",padding:"0",fontSize:"9.5px",fontFamily:bt,color:te,textDecoration:"underline",fontWeight:600,opacity:dt.length>1?1:.45},children:"Switch"})]})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"space-between"},children:[e.jsx("span",{style:{fontSize:"12px",color:te,fontFamily:bt,fontWeight:500,letterSpacing:"0.03em"},children:"YOU WITHDRAW"}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px"},children:[e.jsx("img",{src:rn,alt:Et,style:{width:"13px",height:"13px",borderRadius:"50%"}}),e.jsxs("span",{style:{fontSize:"13px",color:Re,fontWeight:500,fontFamily:bt},children:[J||"0"," ",xt]})]})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"space-between"},children:[e.jsx("span",{style:{fontSize:"12px",color:te,fontFamily:bt,fontWeight:500,letterSpacing:"0.03em"},children:"YOU RECEIVE"}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"4px"},children:[Oe&&e.jsx("img",{src:Oe,alt:je,style:{width:"13px",height:"13px",borderRadius:"50%"}}),e.jsxs("span",{style:{fontSize:"13px",color:Re,fontWeight:500,fontFamily:bt},children:[At," ",it]})]})]}),pt&&e.jsxs(e.Fragment,{children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between"},children:[e.jsx("span",{style:{fontSize:"12px",color:te,fontFamily:bt,fontWeight:500,letterSpacing:"0.03em"},children:"EST. GAS FEE"}),e.jsx("span",{style:{fontSize:"13px",color:kt?"#f87171":Re,fontWeight:500,fontFamily:bt},children:at?"Estimating...":kt?"Unavailable":rt!==null&&De?`${go(rt,De.decimals)} ${De.symbol}`:"Estimating..."})]}),kt&&e.jsx("div",{style:{padding:"8px 10px",borderRadius:"7px",backgroundColor:x?k.errorBg:"#fef2f2",border:`1px solid ${x?k.errorBorder:"#fecaca"}`,color:x?k.errorText:"#dc2626",fontSize:"12px",lineHeight:1.4,fontFamily:s?.fontFamily||w.typography.fontFamily},children:kt})]})]}),fe&&e.jsx("div",{style:{backgroundColor:x?k.errorBg:"#fef2f2",border:`1px solid ${x?k.errorBorder:"#fecaca"}`,borderRadius:"8px",padding:"10px 12px",marginBottom:"12px"},children:e.jsx("p",{style:{color:x?k.errorText:"#dc2626",fontSize:"12px",margin:0,fontFamily:s?.fontFamily||w.typography.fontFamily},children:fe})}),e.jsx(Ze.Button,{variant:"outline",fullWidth:!0,onClick:()=>{wt&&Tt()},disabled:Vt||N,theme:w,dark:x,style:{marginTop:"8px",height:"56px",backgroundColor:Vt||N?`${Dt}88`:Dt,color:s?.button?.color||(x?k.textPrimary:"#0e0d0b"),border:`1.5px solid ${x?`${Dt}88`:"#0e0d0b"}`,fontSize:"20px",fontWeight:600,letterSpacing:"1.5px",fontFamily:bt,borderRadius:"12px",boxShadow:`3px 3px 0px ${k.shell}, 4px 4px 0px ${x?`${Dt}88`:"#0e0d0b"}`,opacity:Vt||N?.78:1},children:N?"EXECUTING...":_t})]})]})})}return null},Co=pa;var ha="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAKlBMVEVMaXHpSkrmS0vrSkrmR0fpSkrrSkroSUnqSkrpSkrpSkrpSkrsS0vzTk68N2lZAAAADHRSTlMA/SoEHOX1RcdliKnuQ9TkAAAACXBIWXMAAAsTAAALEwEAmpwYAAAB4UlEQVR42u1XyRbDIAhUcQ/8/+9WUROzNIvtMbxefMo4yACpEOcG4geD30G0C07B8P0qWkzm3QgJEBAsIUqURJMe8NcToZTlR8YJgGev5wwVd2QEG+FZGIl+9iUyloGQvL5NIt2V6RfqoCPRHMZN/0ofy+NBKEsO41b4wVaHADWdvgGqGyR0o5/Tvw/pmr7v6C/XhRbVaTYqfU5bgPVGDUNmYDgXT6UP28xEvAyjpw/H2pD5wGE2ivZZPGv6fXF5JlhEdfr68AUB4vdsqHP6DWPWyDYbITsz/asecXDR+vXPtZbOdmG0o7324dJYVFypLRu6+ptws9aV53glhUIqMCDaqNxdKwjkoQDkzpkAjL1vWwCJA1YBUgpRjlkDULl9jxjFudjHbBkXWg3ZT4N3q9AkMOXUrMM0VZ3oVJk3QXSbvNi0CzNXUimZ2LeatBl7Ie57CiQ9k9EVYEripKVYwJMlq+qKN3eyVzaLu/pArtl0pgFok6XS1j6fjI8BUDZGvPkCvAAvwJdiuipnuZRzJL5q93li0M53pp6Bq4bicZnb2kuMh/8Num9ycOsP9NUalBJ/trG2rmH5/Boabji1FxsbbFhzmaezHAPANlxxcDwvwzWNZ3ps2P0X02MG4rX/2Ad4/i9F5OK4gwAAAABJRU5ErkJggg==";const On=t=>{const n=Math.round(t*1e5)/1e5;return new Intl.NumberFormat("en-US",{style:"currency",currency:"USD",minimumFractionDigits:0,maximumFractionDigits:5}).format(n)},wo=t=>{const n=Math.round(t*1e5)/1e5;return new Intl.NumberFormat("en-US",{style:"currency",currency:"USD",minimumFractionDigits:0,maximumFractionDigits:5}).format(n)},fa=({balanceData:t,isLoading:n=!1,styles:s,className:r="",showHeader:i=!0,onAccountClick:l,onDepositClick:a,onWithdrawClick:c,vaultBalance:d,fetchVaultBalance:p,onWithdrawExecute:u,withdrawActionLabel:f,destinationChainId:g,destinationTokenAddress:h,customSections:y,showDefaultSections:w=!0})=>{const x=o.useContext(Y.SpiceFlowProviderContext),k=(x?.mode||"7702")!=="7702",U=x?.appName||"Spicenet",{dark:v,primaryColor:b,dk:B,theme:T}=Y.useSpiceBrand(s),[W,E]=o.useState(!0),[I,C]=o.useState(!1),[P,J]=o.useState(!1),[K,j]=o.useState(null),{isConnected:M}=ht.useAccount(),{disconnect:ne}=ht.useDisconnect();o.useEffect(()=>{k&&p&&p().then(S=>{const z=Math.round(S*1e5)/1e5;j(z)}).catch(S=>{console.error("Error fetching vault balance:",S),j(null)})},[k,p]);const $=()=>{E(!W)},L=o.useMemo(()=>{if(!t.freeCollateralItems)return null;const S=t.freeCollateralItems.filter(me=>me.name==="USDC");if(S.length===0)return null;const z=S.reduce((me,re)=>me+re.balance,0),ie=[];return S.forEach(me=>{me.networks&&me.networks.forEach(re=>{(re===1||re===11155111||re===8453||re===84532)&&(ie.includes(re)||ie.push(re))})}),ie.length===0&&ie.push(1,8453),{name:"USDC",totalBalance:z,networks:ie,subtitle:S[0]?.subtitle||"USD COIN"}},[t.freeCollateralItems]),Q=o.useMemo(()=>{if(k){if(K!==null)return K;if(d!=null)return d}return t.freeCollateralItems?t.freeCollateralItems.reduce((S,z)=>S+z.balance,0):t.freeCollateral},[k,K,d,t.freeCollateralItems,t.freeCollateral]),se=S=>W?S:"******",ae=()=>{ne(),C(!1),J(!1)};return e.jsxs("div",{className:r,style:{borderRadius:"16px",backgroundColor:v?B.shell:"#D5D5D5",width:"522px",padding:"8px",fontFamily:s?.fontFamily||'"Helvetica Neue", sans-serif',...s?.container},children:[e.jsxs("div",{style:{background:v?B.cardBg:" white",display:"flex",flexDirection:"column"},children:[e.jsxs("div",{style:{backgroundColor:v?B.inputBg:"#E9E9E9",borderRadius:"0 0 16px 16px",padding:"20px",display:"flex",flexFlow:"column"},children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"4px"},children:[e.jsxs("p",{style:{fontSize:"14px",fontWeight:500,fontFamily:'"IBM Plex Mono", monospace',color:v?B.textPrimary:"#0E0D0B",margin:0},children:[U.toUpperCase()," BALANCE"]}),M&&e.jsx("button",{onClick:ae,"aria-label":"Disconnect wallet",style:{width:"36px",height:"36px",borderRadius:"8px",border:v?`1px solid ${b}33`:"1px solid #E5E7EB",background:v?B.inputBg:"white",display:"flex",alignItems:"center",justifyContent:"center",cursor:"pointer",transition:"all 0.2s ease",padding:"8px"},onMouseEnter:S=>{S.currentTarget.style.backgroundColor=v?B.cardBg:"#F3F4F6"},onMouseLeave:S=>{S.currentTarget.style.backgroundColor=v?B.inputBg:"white"},children:e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4"}),e.jsx("polyline",{points:"16 17 21 12 16 7"}),e.jsx("line",{x1:"21",y1:"12",x2:"9",y2:"12"})]})})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[t.percentageChange!==void 0&&t.percentageChange!==null&&e.jsxs("div",{style:{fontSize:"13px",fontWeight:700,color:t.percentageChange>=0?v?B.successText:"#009C51":v?B.errorText:"#EF4444"},children:[t.percentageChange>=0?"+":"",t.percentageChange.toFixed(2),"%"]}),e.jsx("button",{onClick:$,style:{background:"none",border:"none",cursor:"pointer",padding:"8px",display:"flex",alignItems:"center",justifyContent:"center",transition:"opacity 0.2s ease"},onMouseEnter:S=>{S.currentTarget.style.opacity="0.7"},onMouseLeave:S=>{S.currentTarget.style.opacity="1"},children:W?e.jsxs("svg",{width:"32",height:"32",viewBox:"0 0 24 24",fill:"none",children:[e.jsx("path",{d:"M12 5C7 5 2.73 8.11 1 12.5C2.73 16.89 7 20 12 20C17 20 21.27 16.89 23 12.5C21.27 8.11 17 5 12 5Z",stroke:v?B.textSecondary:"#1A1A1A",strokeWidth:"2",fill:"none"}),e.jsx("circle",{cx:"12",cy:"12.5",r:"3",stroke:v?B.textSecondary:"#1A1A1A",strokeWidth:"2",fill:"none"})]}):e.jsxs("svg",{width:"32",height:"32",viewBox:"0 0 24 24",fill:"none",children:[e.jsx("path",{d:"M12 5C7 5 2.73 8.11 1 12.5C2.73 16.89 7 20 12 20C17 20 21.27 16.89 23 12.5C21.27 8.11 17 5 12 5Z",stroke:v?B.textSecondary:"#1A1A1A",strokeWidth:"2",fill:"none"}),e.jsx("path",{d:"M3 3L21 21",stroke:v?B.textSecondary:"#1A1A1A",strokeWidth:"2",strokeLinecap:"round"})]})})]}),e.jsx("p",{style:{fontSize:"40px",fontWeight:700,color:v?B.textPrimary:"black"},children:se(On(k&&K!==null?K:k&&d!==void 0&&d!==null?d:t.totalBalance))}),e.jsxs("div",{style:{display:"flex",gap:"12px",marginTop:"16px"},children:[e.jsx(Ze.Button,{variant:"outline",fullWidth:!0,onClick:()=>{a?a():C(!0)},theme:T,dark:v,styles:s,children:"DEPOSIT"}),e.jsx(Ze.Button,{variant:"outline",fullWidth:!0,onClick:()=>{c?c():J(!0)},theme:T,dark:v,styles:s,children:"WITHDRAW"})]})]}),e.jsxs("div",{style:{background:v?B.cardBg:"white",padding:"12px 20px",borderRadius:"12px"},children:[w&&e.jsx(uo,{title:"FREE COLLATERAL",icon:ha,amount:se(wo(Q)),defaultExpanded:!1,children:k&&(K!==null||d!=null)?e.jsx(ss,{name:"USDC",balance:se(On(K!==null?K:d)),subtitle:"USD COIN",icon:Nn,onClick:l?()=>l("usdc-vault"):void 0}):L?e.jsx(ss,{name:L.name,balance:se(On(L.totalBalance)),subtitle:L.subtitle,networks:L.networks,icon:Nn,onClick:l?()=>l(L.name):void 0}):t.freeCollateralItems&&t.freeCollateralItems.length>0?t.freeCollateralItems.map((S,z)=>e.jsxs(o.Fragment,{children:[e.jsx(ss,{name:S.name,balance:se(On(S.balance)),subtitle:S.subtitle,networks:S.networks,icon:S.name==="USDC"?Nn:void 0,onClick:l?()=>l(S.id):void 0}),z<t.freeCollateralItems.length-1&&e.jsx("div",{style:{height:"1px",backgroundColor:v?B.cardBorder:"#D0D2D8",margin:"4px 0"}})]},S.id)):e.jsx("div",{style:{padding:"12px 0",color:v?B.textSecondary:"#6B7280",fontSize:"13px",fontFamily:'"IBM Plex Mono", monospace'},children:"No collateral items available"})}),y&&y.length>0&&y.filter(S=>S&&S.id&&S.title&&typeof S.title=="string"&&S.title.trim().length>0).map(S=>e.jsx(uo,{title:S.title,icon:S.icon||void 0,amount:se(wo(S.totalBalance||0)),defaultExpanded:S.defaultExpanded!==void 0?S.defaultExpanded:!1,children:S.items&&S.items.length>0?S.items.map((z,ie)=>e.jsxs(o.Fragment,{children:[e.jsx(ss,{name:z.name,balance:se(On(z.balance)),subtitle:z.subtitle,networks:z.networks,icon:z.name==="USDC"?Nn:void 0,onClick:l?()=>l(z.id):void 0}),ie<S.items.length-1&&e.jsx("div",{style:{height:"1px",backgroundColor:v?B.cardBorder:"#D0D2D8",margin:"4px 0"}})]},z.id||`item-${ie}`)):e.jsx("div",{style:{padding:"12px 0",color:v?B.textSecondary:"#6B7280",fontSize:"13px",fontFamily:'"IBM Plex Mono", monospace'},children:S.emptyMessage||"No items available"})},S.id))]})]}),I&&e.jsx(co,{isOpen:I,onClose:()=>C(!1),styles:s}),P&&e.jsx(Co,{isOpen:P,onClose:()=>J(!1),styles:s,onWithdrawExecute:u,withdrawActionLabel:f})]})},xa=({pairLabel:t,pairApr:n,pairAddressLabel:s,lpLabel:r,onViewPool:i,styles:l,theme:a,token1:c,token2:d})=>{const{dk:p}=Y.useSpiceBrand(l);return e.jsxs("div",{style:{backgroundColor:p.cardBg,border:`0.5px solid ${p.cardBorder}`,borderRadius:"6px",padding:"16px 16px",width:"100%",display:"flex",flexDirection:"column",gap:"10px",boxShadow:`4px 4px 0px ${p.cardBorder}`},children:[e.jsx("div",{style:{display:"flex",gap:"8px",alignItems:"center"},children:e.jsxs("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:"8px"},children:[e.jsxs("div",{style:{display:"flex",gap:"8px",alignItems:"center"},children:[e.jsx("span",{style:{fontFamily:l?.fontFamily||a.typography.fontFamily,fontSize:"15px",fontWeight:500,color:p.textPrimary,lineHeight:"22px"},children:t}),e.jsx("div",{style:{backgroundColor:"rgba(2, 212, 112, 0.17)",border:"0.5px solid #02d470",borderRadius:"3px",padding:"0 10px",height:"12px",display:"flex",alignItems:"center"},children:e.jsx("span",{style:{fontFamily:"'IBM Plex Mono', monospace",fontSize:"8px",fontWeight:600,color:"#009c51",textTransform:"uppercase",lineHeight:"1.56"},children:n})})]}),e.jsx("div",{style:{display:"flex",gap:"24px",alignItems:"center"},children:e.jsxs("div",{style:{display:"flex",gap:"4px",alignItems:"center"},children:[e.jsx("span",{style:{fontFamily:"'IBM Plex Mono', monospace",fontSize:"10px",fontWeight:500,color:p.textSecondary,textTransform:"uppercase",lineHeight:"26px",width:"72px"},children:s}),e.jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",style:{cursor:"pointer"},onClick:i,children:e.jsx("path",{d:"M2 6L10 6M10 6L6 2M10 6L6 10",stroke:p.textSecondary,strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})]})})]})}),e.jsx("div",{style:{height:"1px",backgroundColor:p.cardBorder,width:"100%"}}),e.jsxs("div",{style:{display:"flex",gap:"8px",alignItems:"center"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",paddingRight:"5px"},children:[c&&e.jsx("div",{style:{zIndex:2,marginRight:"-8px"},children:e.jsx(xn,{symbol:c.symbol,logoURI:c.logoURI,size:24,theme:a})}),d&&e.jsx("div",{style:{zIndex:1},children:e.jsx(xn,{symbol:d.symbol,logoURI:d.logoURI,size:24,theme:a})}),!c&&!d&&e.jsxs(e.Fragment,{children:[e.jsx("div",{style:{width:"24px",height:"24px",borderRadius:"50%",backgroundColor:"#2775CA",marginRight:"-5px",border:`2px solid ${p.cardBg}`}}),e.jsx("div",{style:{width:"24px",height:"24px",borderRadius:"50%",backgroundColor:"#26A17B",border:`2px solid ${p.cardBg}`}})]})]}),e.jsx("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:"8px"},children:e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.jsxs("div",{style:{display:"flex",gap:"4px",alignItems:"center",maxWidth:"199.5px"},children:[e.jsx("div",{style:{display:"flex",gap:"8px",alignItems:"center"},children:e.jsx("span",{style:{fontFamily:l?.fontFamily||a.typography.fontFamily,fontSize:"15px",fontWeight:500,color:p.textPrimary,lineHeight:"22px"},children:r})}),e.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",children:[e.jsx("circle",{cx:"6",cy:"6",r:"5",stroke:p.textSecondary,strokeWidth:"1",fill:"none"}),e.jsx("path",{d:"M6 3V6M6 9H6.01",stroke:p.textSecondary,strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]})]}),e.jsx("svg",{width:"19",height:"19",viewBox:"0 0 12 12",fill:"none",style:{cursor:"pointer"},children:e.jsx("path",{d:"M2 6L10 6M10 6L6 2M10 6L6 10",stroke:p.textSecondary,strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})]})})]})]})},ma=({selectedAsset:t,availableAssets:n,onAssetSelect:s,disabled:r,styles:i,theme:l})=>{const{dk:a}=Y.useSpiceBrand(i),[c,d]=o.useState(!1),p=o.useRef(null);return o.useEffect(()=>{const u=f=>{p.current&&!p.current.contains(f.target)&&c&&d(!1)};return c&&document.addEventListener("mousedown",u),()=>{document.removeEventListener("mousedown",u)}},[c]),e.jsxs("div",{style:{width:"128px",position:"relative"},ref:p,children:[e.jsxs("div",{style:{border:`1px solid ${a.cardBorder}`,borderRadius:"6px 6px 0 0",backgroundColor:r?a.hoverBg:a.cardBg,padding:"8px 12px 8px 8px",display:"flex",alignItems:"center",justifyContent:"space-between",cursor:r?"not-allowed":"pointer"},onClick:()=>!r&&d(!c),children:[e.jsx("div",{style:{display:"flex",gap:"8px",alignItems:"center"},children:t?.asset?e.jsxs(e.Fragment,{children:[e.jsx(xn,{symbol:t.asset.symbol,logoURI:t.asset.logoURI,size:30,theme:l}),e.jsx("span",{style:{fontFamily:i?.fontFamily||l.typography.fontFamily,fontSize:"16px",fontWeight:500,color:a.textPrimary,lineHeight:"1.5"},children:t.asset.symbol})]}):e.jsx("span",{style:{fontFamily:i?.fontFamily||l.typography.fontFamily,fontSize:"14px",fontWeight:500,color:a.textSecondary,lineHeight:"1.5",letterSpacing:"-0.56px"},children:"Select Asset"})}),e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",children:e.jsx("path",{d:"M4 6L8 10L12 6",stroke:a.textPrimary,strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})]}),e.jsx("div",{style:{backgroundColor:a.hoverBg,border:`1px solid ${a.cardBorder}`,borderRadius:"0 0 6px 6px",padding:"0 10px",height:"24px",display:"flex",alignItems:"center",gap:"4px"},children:t?.asset?e.jsxs(e.Fragment,{children:[e.jsx(Un,{chainId:t.asset.chainId,theme:l,size:11}),e.jsx("span",{style:{fontFamily:"'IBM Plex Mono', monospace",fontSize:"12px",fontWeight:400,color:a.textPrimary,textTransform:"uppercase",lineHeight:"1.56"},children:q.getChainName(t.asset.chainId)})]}):e.jsxs(e.Fragment,{children:[e.jsx("div",{style:{width:"12px",height:"12px",borderRadius:"50%",backgroundColor:a.cardBg}}),e.jsx("span",{style:{fontFamily:"'IBM Plex Mono', monospace",fontSize:"12px",fontWeight:400,color:a.textPrimary,textTransform:"uppercase",lineHeight:"1.56"},children:"Solana"})]})}),c&&e.jsx("div",{style:{position:"absolute",top:"100%",left:0,right:0,marginTop:"4px",backgroundColor:a.cardBg,border:`1px solid ${a.cardBorder}`,borderRadius:"6px",boxShadow:"0 4px 6px rgba(0, 0, 0, 0.1)",zIndex:1e3,maxHeight:"200px",overflowY:"auto"},children:n.map(u=>e.jsxs("button",{onClick:()=>{s(u),d(!1)},style:{width:"100%",padding:"12px",display:"flex",alignItems:"center",gap:"8px",border:"none",backgroundColor:"transparent",cursor:"pointer",textAlign:"left"},onMouseEnter:f=>{f.currentTarget.style.backgroundColor="#f3f4f6"},onMouseLeave:f=>{f.currentTarget.style.backgroundColor="transparent"},children:[e.jsx(xn,{symbol:u.symbol,logoURI:u.logoURI,size:24,theme:l}),e.jsxs("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:"4px"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"4px"},children:[e.jsx("span",{style:{fontFamily:i?.fontFamily||l.typography.fontFamily,fontSize:"14px",fontWeight:500,color:a.textPrimary},children:u.symbol}),e.jsx(Un,{chainId:u.chainId,theme:l,size:12})]}),e.jsx("span",{style:{fontFamily:"'IBM Plex Mono', monospace",fontSize:"10px",color:a.textSecondary},children:q.getChainName(u.chainId)})]})]},`${u.address} -${u.chainId} `))})]})},ga=({progressIndex:t=0})=>{const{primaryColor:n}=Y.useSpiceBrand(),s=(r,i)=>{const l=i===t,a=i===4,c=a?n:r>0?"#3C3E42":"transparent";return e.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 14 14",style:{opacity:l?1:.5},children:[e.jsx("circle",{cx:"7",cy:"7",r:"6.84375",fill:a?c:"none",stroke:a?n:"#3C3E42",strokeWidth:"0.3125"}),!a&&r>0&&e.jsx("path",{d:`M 7 7 L 7 0.15625 A 6.84375 6.84375 0 ${r>.5?1:0} 1 ${7+6.84375*Math.sin(r*2*Math.PI)} ${7-6.84375*Math.cos(r*2*Math.PI)} Z`,fill:c})]},i)};return e.jsxs("div",{style:{display:"flex",gap:"10px",height:"14px",alignItems:"center",justifyContent:"flex-end",opacity:.7},children:[s(0,0),s(.25,1),s(.5,2),s(.75,3),s(1,4)]})},vo=({assetInput:t,availableAssets:n,onAssetChange:s,disabled:r,styles:i,theme:l})=>{const{dk:a}=Y.useSpiceBrand(i),c=d=>{s(d,t?.selectedAsset?.amount||"")};return e.jsx("div",{style:{backgroundColor:a.cardBg,border:`0.5px solid ${a.cardBorder}`,borderRadius:"6px",padding:"16px",height:"144px",display:"flex",flexDirection:"column",gap:"8px",position:"relative"},children:e.jsxs("div",{style:{flex:1,display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.jsxs("div",{style:{display:"flex",flexDirection:"column",justifyContent:"space-between",height:"100%"},children:[e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"16px"},children:[e.jsx("span",{style:{fontFamily:i?.fontFamily||l.typography.fontFamily,fontSize:"16px",fontWeight:500,color:a.textSecondary,lineHeight:"24px"},children:"Amount"}),e.jsx("div",{style:{fontFamily:i?.fontFamily||l.typography.fontFamily,fontSize:"40px",fontWeight:700,color:r?`${a.textPrimary}28`:a.textPrimary,lineHeight:"1.08",letterSpacing:"-1.2px"},children:t?.selectedAsset?.amount||"0.00"})]}),e.jsx("span",{style:{fontFamily:i?.fontFamily||l.typography.fontFamily,fontSize:"14px",fontWeight:500,color:a.textSecondary,lineHeight:"20px",letterSpacing:"-0.14px"},children:t?.usdValue||"$0.00"})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"flex-end",justifyContent:"space-between",height:"100%",gap:"12px"},children:[e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"8px",alignItems:"flex-end"},children:[e.jsx("span",{style:{fontFamily:i?.fontFamily||l.typography.fontFamily,fontSize:"12px",fontWeight:500,color:a.textSecondary,lineHeight:"16px"},children:t?.balanceLabel||"Balance: 0.00"}),e.jsx(ma,{selectedAsset:t?.selectedAsset,availableAssets:n,onAssetSelect:c,disabled:r,styles:i,theme:l})]}),e.jsx(ga,{progressIndex:t?.progressIndex||0})]})]})})},ya=({isOpen:t,onClose:n,pairLabel:s,pairApr:r,pairAddressLabel:i,lpLabel:l,onViewPool:a,primaryAsset:c,secondaryAsset:d,onPrimaryAssetChange:p,onSecondaryAssetChange:u,availableAssets:f,showSecondaryAsset:g,onAddSecondaryAsset:h,alertVariant:y="none",crossNetworkCopy:w,onClickDepositCollateral:x,transactionDetailsCollapsed:k=!0,onToggleTransactionDetails:U,transactionDetails:v,isSubmitting:b=!1,canSubmit:B=!1,onSubmit:T,styles:W})=>{const{primaryColor:E,theme:I,dk:C,dark:P}=Y.useSpiceBrand(W),[J,K]=o.useState(!1),j=e.jsxs("div",{style:{display:"flex",gap:"6px",alignItems:"flex-start",flexWrap:"nowrap"},children:[e.jsxs("p",{style:{fontSize:"10px",color:C.textSecondary,margin:0,lineHeight:"1.6",letterSpacing:"0.2px",fontFamily:W?.fontFamily||I.typography.fontFamily,flex:1},children:["Provide liquidity to ",s," pair using assets on 10+ networks in a one-click native UX, powered by Spice Flow"]}),e.jsxs("button",{onClick:()=>K(!J),style:{backgroundColor:P?C.hoverBg:"#f3f4f6",border:`0.436px solid ${E}`,borderRadius:"6.184px",padding:"2px 4px",height:"auto",display:"flex",alignItems:"center",gap:"4px",cursor:"pointer",fontFamily:"'IBM Plex Mono', monospace",fontSize:"7.902px",fontWeight:500,color:E,textTransform:"uppercase",letterSpacing:"-0.3556px",flexShrink:0,marginTop:"2px"},children:[e.jsx("span",{children:J?"Collapse":"Expand to learn more"}),e.jsx("svg",{width:"10",height:"10",viewBox:"0 0 12 12",fill:"none",style:{transform:J?"rotate(180deg)":"none"},children:e.jsx("path",{d:"M3 4.5L6 7.5L9 4.5",stroke:E,strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})]})]});return e.jsx(on,{isOpen:t,onClose:n,title:"Provide Liquidity with Spice Flow",subtitle:j,styles:W,theme:I,maxWidth:"422px",children:e.jsxs("div",{style:{padding:"0 26px",display:"flex",flexDirection:"column",gap:"16px"},children:[y==="crossNetworkAssets"&&w&&e.jsx("div",{style:{backgroundColor:C.cardBg,border:`0.5px solid ${E}`,borderRadius:"6px",padding:"10px 10px",display:"flex",flexDirection:"column",gap:"15px"},children:e.jsxs("div",{style:{display:"flex",gap:"4px",alignItems:"flex-start"},children:[e.jsxs("svg",{width:"18",height:"18",viewBox:"0 0 12 12",fill:"none",style:{marginTop:"2px",flexShrink:0},children:[e.jsx("circle",{cx:"6",cy:"6",r:"5",stroke:E,strokeWidth:"1"}),e.jsx("text",{x:"6",y:"8",textAnchor:"middle",fontSize:"8",fill:E,children:"i"})]}),e.jsxs("div",{style:{flex:1},children:[e.jsx("p",{style:{fontSize:"12px",color:C.textSecondary,margin:0,lineHeight:"19px",letterSpacing:"-0.45px",fontFamily:W?.fontFamily||I.typography.fontFamily},children:w.summary}),e.jsx("p",{style:{fontSize:"12px",color:C.textSecondary,margin:"4px 0 0 0",lineHeight:"19px",letterSpacing:"-0.45px",fontFamily:W?.fontFamily||I.typography.fontFamily},children:w.body})]})]})}),y==="noCollateral"&&e.jsxs("div",{style:{backgroundColor:C.cardBg,border:`0.5px solid ${E}`,borderRadius:"6px",padding:"15px 10px",display:"flex",flexDirection:"column",gap:"15px"},children:[e.jsx(Ze.Button,{variant:"primary",onClick:x,style:{backgroundColor:E,border:`1px solid ${P?C.cardBorder:"rgba(0, 0, 0, 0.53)"}`,borderRadius:"3px",padding:"4px 47px",height:"37px",fontFamily:"'IBM Plex Mono', monospace",fontSize:"14px",fontWeight:500,color:P?C.textPrimary:"#0e0d0b",textTransform:"uppercase",letterSpacing:"-0.42px"},children:"Deposit collateral"}),e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"4px"},children:e.jsxs("div",{style:{display:"flex",gap:"4px",alignItems:"center"},children:[e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 12 12",fill:"none",style:{flexShrink:0},children:[e.jsx("circle",{cx:"6",cy:"6",r:"5",stroke:C.textSecondary,strokeWidth:"1"}),e.jsx("text",{x:"6",y:"8",textAnchor:"middle",fontSize:"8",fill:C.textSecondary,children:"i"})]}),e.jsx("p",{style:{fontSize:"12px",color:C.textSecondary,margin:0,lineHeight:"19px",letterSpacing:"-0.45px",fontFamily:W?.fontFamily||I.typography.fontFamily},children:"You don't have any usable collateral in your Spicenet Account to provide liquidity. Deposit USDC/USDT collateral to get started."})]})})]}),e.jsx(xa,{pairLabel:s,pairApr:r,pairAddressLabel:i,lpLabel:l,onViewPool:a,styles:W,theme:I,token1:c?.selectedAsset?.asset,token2:d?.selectedAsset?.asset}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"8px",position:"relative"},children:[e.jsx(vo,{assetInput:c,availableAssets:f,onAssetChange:p,styles:W,theme:I}),e.jsx("button",{onClick:h,style:{position:"absolute",left:"50%",top:"50%",transform:"translate(-50%, -50%)",width:"40px",height:"40px",borderRadius:"10px",backgroundColor:E,border:"none",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",zIndex:10},children:e.jsx("svg",{width:"18",height:"18",viewBox:"0 0 18 18",fill:"none",children:e.jsx("path",{d:"M9 5V13M5 9H13",stroke:"#ffffff",strokeWidth:"2",strokeLinecap:"round"})})}),e.jsx(vo,{assetInput:d,availableAssets:f,onAssetChange:u||(()=>{}),disabled:!d?.selectedAsset,styles:W,theme:I})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:[e.jsxs("button",{onClick:U,style:{display:"flex",gap:"4px",alignItems:"center",background:"none",border:"none",cursor:"pointer",padding:0},children:[e.jsx("span",{style:{fontFamily:W?.fontFamily||I.typography.fontFamily,fontSize:"12px",fontWeight:600,color:C.textSecondary},children:"Transaction Details"}),e.jsx("svg",{width:"14",height:"14",viewBox:"0 0 12 12",fill:"none",style:{transform:k?"rotate(0deg)":"rotate(180deg)",transition:"transform 0.2s"},children:e.jsx("path",{d:"M3 4.5L6 7.5L9 4.5",stroke:C.textSecondary,strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})]}),!k&&v&&v.length>0&&e.jsx("div",{style:{padding:"12px 0",display:"flex",flexDirection:"column",gap:"8px"},children:v.map((M,ne)=>e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsx("span",{style:{fontFamily:"'IBM Plex Mono', monospace",fontSize:"14px",fontWeight:500,color:C.textSecondary,textTransform:"uppercase",lineHeight:"1.56"},children:M.label}),e.jsx("span",{style:{fontFamily:"'IBM Plex Mono', monospace",fontSize:"14px",fontWeight:500,color:M.isPositive?P?C.successText:"#1aa362":C.textSecondary,textTransform:"uppercase",lineHeight:"1.56"},children:M.value})]},ne))})]}),e.jsx(Ze.Button,{variant:"outline",fullWidth:!0,onClick:T,loading:b,disabled:!B,theme:I,style:{backgroundColor:E,border:`1px solid ${P?C.buttonBorder:"#0e0d0b"}`,color:P?C.textPrimary:"#0e0d0b",fontFamily:"'IBM Plex Mono', monospace",fontSize:"18px",fontWeight:500,textTransform:"uppercase",padding:"8px 0"},children:"Provide Liquidity"})]})})},Ss=({color:t})=>e.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",children:[e.jsx("circle",{cx:"7",cy:"7",r:"6.5",stroke:t,strokeWidth:"1.2"}),e.jsx("path",{d:"M7 6v4",stroke:t,strokeWidth:"1.2",strokeLinecap:"round"}),e.jsx("circle",{cx:"7",cy:"4.5",r:"0.7",fill:t})]}),ba=({content:t,label:n="More info",textColor:s="#f9fafb",backgroundColor:r="#111827",borderColor:i="rgba(255,255,255,0.08)",accentColor:l="#9ca3af",children:a})=>{const c=o.useId(),[d,p]=o.useState(!1),u=o.useRef(null),[f,g]=o.useState(!1),[h,y]=o.useState(null);o.useEffect(()=>{g(!0)},[]),o.useLayoutEffect(()=>{if(!d||!u.current)return;const x=()=>{if(!u.current)return;const k=u.current.getBoundingClientRect(),U=Math.min(220,window.innerWidth-48),v=Math.min(Math.max(k.left+k.width/2,24+U/2),window.innerWidth-24-U/2),b=k.top>84;y({top:b?k.top-10:k.bottom+10,left:v,placement:b?"top":"bottom"})};return x(),window.addEventListener("scroll",x,!0),window.addEventListener("resize",x),()=>{window.removeEventListener("scroll",x,!0),window.removeEventListener("resize",x)}},[d]);const w=d&&f&&h?Zn.createPortal(e.jsxs("span",{id:c,role:"tooltip",style:{position:"fixed",left:h.left,top:h.top,transform:h.placement==="top"?"translate(-50%, -100%)":"translate(-50%, 0)",width:"220px",maxWidth:"min(220px, calc(100vw - 48px))",padding:"10px 12px",borderRadius:"10px",backgroundColor:r,color:s,border:`1px solid ${i}`,boxShadow:"0 18px 45px rgba(0,0,0,0.28)",fontSize:"11px",lineHeight:"1.45",fontWeight:500,textAlign:"left",zIndex:9999,pointerEvents:"none"},children:[t,e.jsx("span",{"aria-hidden":"true",style:{position:"absolute",left:"50%",width:"10px",height:"10px",transform:"translateX(-50%) rotate(45deg)",backgroundColor:r,...h.placement==="top"?{bottom:"-6px",borderRight:`1px solid ${i}`,borderBottom:`1px solid ${i}`}:{top:"-6px",borderTop:`1px solid ${i}`,borderLeft:`1px solid ${i}`}}})]}),document.body):null;return e.jsxs(e.Fragment,{children:[e.jsx("span",{ref:u,style:{position:"relative",display:"inline-flex",alignItems:"center",justifyContent:"center",flexShrink:0},onMouseEnter:()=>p(!0),onMouseLeave:()=>p(!1),children:e.jsx("button",{type:"button","aria-label":n,"aria-describedby":d?c:void 0,onFocus:()=>p(!0),onBlur:()=>p(!1),style:{width:"18px",height:"18px",borderRadius:"999px",display:"inline-flex",alignItems:"center",justifyContent:"center",border:`1px solid ${i}`,backgroundColor:"transparent",color:l,cursor:"help",padding:0,outline:"none",boxShadow:d?`0 0 0 2px ${l}26`:"none",transition:"border-color 120ms ease, box-shadow 120ms ease, color 120ms ease"},children:a||e.jsx(Ss,{color:l})})}),w]})};function rs(t,n){if(t===0n)return"0";const s=10n**BigInt(n),r=t/s,i=(t%s).toString().padStart(n,"0").slice(0,6).replace(/0+$/,"");return i?r===0n&&/^0+$/.test(i)?"< 0.000001":`${r.toString()}.${i}`:r.toString()}function Is(t,n,s){const r=`${rs(t,n)} ${s}`;return t===0n?r:`-${r}`}const js=({fontFamily:t,textPrimary:n,textSecondary:s,cardBg:r,cardBorder:i,resolvedDark:l,darkCardBorder:a,primaryColor:c,feePreview:d,isLoading:p,errorText:u,directExecutionFeeNote:f=!1})=>{const g=l?a??i:"#e5e7eb",h=l?"#111214":"#111827",y=l?"rgba(255,255,255,0.08)":"rgba(17,24,39,0.12)",w="#f87171",x=l?"#d1d5db":"#4b5563",k=l?"#f3f4f6":n,[U,v]=o.useState(!1),b=!!u,B=b?null:d,T=B?[{label:"Total Required",help:"Total amount required to fund this action.",value:`${rs(B.grossAmount,B.decimals)} ${B.symbol}`,tone:"default"},{label:"Spicenet Fee",help:"Fees paid to Spicenet for intent processing and execution.",value:Is(B.spicenetFee,B.decimals,B.symbol),tone:"fee"},{label:"Gas Fee",help:"Gas fee shown in the same token you are using for this action.",value:Is(B.gasFee,B.decimals,B.symbol),tone:"fee"},{label:"Used in TX",help:"Resulting amount of funds used in the transaction.",value:`${rs(B.netAmount,B.decimals)} ${B.symbol}`,tone:"default"}]:[];B&&Is(B.totalFee??0n,B.decimals,B.symbol);const W=B?`${rs(B.grossAmount,B.decimals)} ${B.symbol}`:null;return b?e.jsx("div",{style:{backgroundColor:r,border:`1px solid ${i}`,borderRadius:l?"8px":"7px",padding:"14px 16px 12px 16px",marginBottom:"16px",boxShadow:l?"inset 0 1px 0 rgba(255,255,255,0.03)":"none"},children:e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"10px"},children:[e.jsx("span",{style:{fontSize:"17px",fontWeight:500,color:x,fontFamily:t,lineHeight:"24px"},children:"Fee"}),e.jsx("div",{style:{color:w,fontSize:"12px",lineHeight:"1.55",fontFamily:t},children:u})]})}):e.jsxs("div",{style:{backgroundColor:r,border:`1px solid ${i}`,borderRadius:l?"8px":"7px",padding:"14px 16px 12px 16px",marginBottom:"16px",boxShadow:l?"inset 0 1px 0 rgba(255,255,255,0.03)":"none"},children:[e.jsxs("button",{type:"button",onClick:()=>v(E=>!E),style:{display:"flex",justifyContent:"space-between",alignItems:"center",width:"100%",gap:"12px",marginBottom:U?"14px":0,background:"none",border:"none",padding:0,cursor:"pointer",textAlign:"left"},children:[e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"4px"},children:[e.jsx("span",{style:{fontSize:"17px",fontWeight:500,color:x,fontFamily:t,lineHeight:"24px"},children:"Fee"}),U&&e.jsx("span",{style:{fontSize:"12px",color:s,fontFamily:t,lineHeight:"1.45"},children:"What is funded, spent, and taken as fees"})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",flexShrink:0},children:[W&&!f&&e.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"flex-end",gap:"2px",minWidth:0},children:[e.jsx("span",{style:{fontSize:"10px",fontWeight:700,color:s,fontFamily:t,letterSpacing:"0.08em",textTransform:"uppercase"},children:"Total required"}),e.jsx("span",{style:{fontSize:"14px",fontWeight:700,color:k,fontFamily:t,whiteSpace:"nowrap"},children:W})]}),p&&!f&&e.jsx("span",{style:{fontSize:"11px",fontWeight:600,color:c,fontFamily:t,padding:"6px 9px",borderRadius:"999px",backgroundColor:l?"rgba(255,255,255,0.04)":"rgba(0,0,0,0.035)",border:`1px solid ${l?g:"rgba(0,0,0,0.06)"}`,whiteSpace:"nowrap"},children:"Recalculating"}),e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",style:{transform:U?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.2s ease",flexShrink:0},children:e.jsx("path",{d:"M4 6L8 10L12 6",stroke:s,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]})]}),e.jsx("div",{style:{overflow:"hidden",maxHeight:U?"480px":"0px",opacity:U?1:0,transition:"max-height 0.24s ease, opacity 0.18s ease"},children:f?e.jsx("p",{style:{margin:0,color:s,fontSize:"12px",lineHeight:"1.55",fontFamily:t},children:"This path executes directly from the external wallet. Network gas is paid in-wallet, so Spicenet cannot pre-estimate that gas or charge a Spicenet fee here."}):T.length>0?e.jsxs(e.Fragment,{children:[e.jsx("div",{style:{display:"grid",gap:"10px"},children:T.map((E,I)=>e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"minmax(0, 1fr) auto",alignItems:"center",gap:"12px",paddingTop:I===0?0:"10px",borderTop:I===0?"none":`1px solid ${g}`,opacity:p?.74:1,transition:"opacity 120ms ease"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",minWidth:0},children:[e.jsx("span",{style:{fontSize:"12px",color:s,fontFamily:t,fontWeight:500},children:E.label}),e.jsx(ba,{content:E.help,label:`${E.label} info`,textColor:"#f9fafb",backgroundColor:h,borderColor:y,accentColor:l?"#8f96a3":"#6b7280"})]}),e.jsx("span",{style:{fontSize:"12px",color:E.tone==="fee"?w:k,fontFamily:'"IBM Plex Mono", monospace',textAlign:"right",fontWeight:E.label==="Used in TX"?600:500,letterSpacing:"-0.01em"},children:E.value})]},E.label))}),e.jsx("div",{style:{marginTop:"12px",paddingTop:"12px",borderTop:`1px solid ${g}`,fontSize:"11px",color:s,fontFamily:t,lineHeight:"1.45"},children:B?.gasQuoteSource==="estimated"?"Gas quote uses a live estimate.":B?.gasQuoteSource==="configured_fallback"?"Gas quote uses a configured fallback.":"Gas quote is currently zero."})]}):e.jsx("div",{style:{fontSize:"12px",color:u?w:s,fontFamily:t,opacity:u?1:.8,lineHeight:"1.5"},children:u||"Waiting for fee estimate..."})})]})},Ca=({options:t,selectedIndex:n,onSelect:s,primaryColor:r,dark:i=!1,textPrimary:l="#111827",textSecondary:a="#6b7280",trackColor:c})=>{const d=t.length-1,p=c||(i?"#3a3a3a":"#d1d5db"),u=i?"4px":"50%",f=i?"none":"2px solid white",g=i?"none":`0 0 0 1px ${r}`;return e.jsxs("div",{style:{width:"100%",userSelect:"none"},children:[e.jsxs("div",{style:{position:"relative",paddingBottom:"4px"},children:[e.jsx("div",{style:{position:"absolute",top:"50%",left:0,right:0,height:"4px",background:p,borderRadius:"2px",transform:"translateY(-50%)",pointerEvents:"none"}}),e.jsx("div",{style:{position:"absolute",top:"50%",left:0,width:`${n/d*100}%`,height:"4px",background:r,borderRadius:"2px",transform:"translateY(-50%)",pointerEvents:"none",transition:"width 0.15s ease"}}),e.jsx("input",{type:"range",min:0,max:d,step:1,value:n,onChange:h=>s(Number(h.target.value)),style:{WebkitAppearance:"none",appearance:"none",width:"100%",height:"20px",background:"transparent",cursor:"pointer",outline:"none",border:"none",position:"relative",zIndex:1,margin:0,padding:0}})]}),e.jsx("div",{style:{display:"flex",justifyContent:"space-between",marginTop:"6px"},children:t.map((h,y)=>e.jsxs("div",{onClick:()=>s(y),style:{display:"flex",flexDirection:"column",alignItems:y===0?"flex-start":y===d?"flex-end":"center",cursor:"pointer",flex:1},children:[e.jsx("span",{style:{fontSize:"12px",fontWeight:y===n?700:400,color:y===n?l:a,whiteSpace:"nowrap",transition:"color 0.15s, font-weight 0.15s"},children:h.label}),h.highlight&&e.jsx("span",{style:{fontSize:"10px",color:a,whiteSpace:"nowrap"},children:"(most common)"})]},y))}),e.jsx("style",{children:`
77
+ `})]})};function _r({sourceChainId:t,selectedAsset:n,destinationChainId:s,destinationTokenAddress:r,isCrossDenomination:a,convertedUsdAmount:l}){const i=V.normalizeNativeTokenAddress(n.asset.address),d=r;let c,h;if(d&&s)if(c=Q.CHAIN_CONFIGS[s]?.supportedTokens?.find(u=>u.address.toLowerCase()===d.toLowerCase())?.decimals??n.asset.decimals,a){if(!l)throw new Error("Destination amount is still being calculated. Please retry in a moment.");h=l}else{const u=P.parseUnits(n.amount,n.asset.decimals);h=V.convertAmountBetweenDecimals(u,n.asset.decimals,c)}return{sourceChainId:t,depositTokenAddress:i,depositAmount:n.amount,depositTokenDecimals:n.asset.decimals,destinationChainId:s,destinationTokenAddress:d,destinationAmount:h,destinationTokenDecimals:c}}async function ea(t,n){if(!t)return[];if(Array.isArray(t))return t;const s=t;return t.length>=2?s(n.depositAmount,n.depositTokenAddress):s(n)}const ns="0x111115763723B53395308eC4c9AB9d5FB0844cae",ta=60*60,lo=o.memo(({isOpen:t,onClose:n,onDepositSelect:s,depositBatches:r,supportedChains:a,title:l,styles:i,onDepositAssetChange:d,assetInputHook:c,externalWalletAddress:h,allowedTokens:u,onDepositAmountChange:f,allowSecondAsset:g=!1,destinationChainId:p,destinationTokenAddress:y,onDepositExecute:v,depositActionLabel:x,nativeChainId:k,airdrop:U=!1,sponsorGas:S=!1,preSelectedAsset:C,escrowOnly:I=!1,escrowTokenAddress:F,escrowAmount:W,escrowTokenDecimals:E,escrowTokenSymbol:B,onDepositSuccess:b,embeddedWalletAddress:R,onViewAllAssets:$})=>{const X=o.useContext(K.SpiceFlowProviderContext)?.mode||"7702",A=c?.assetAmount||"",{theme:O,dark:L,appName:ne,primaryColor:_,dk:j}=K.useSpiceBrand(i),oe=pn(),{isReady:he,isAuthenticated:w,actions:z}=oe,{externalWallet:ie}=zn(),be=un()||R,se=X!="7702",we=se?!!h:he&&w&&!!be,ae=be,Ae=h,Re=ae??Ae,{data:Se}=ft.useWalletClient(),{switchChainAsync:je}=ft.useSwitchChain(),{chain:We}=ft.useAccount();ft.useConfig();const[Ne,ve]=o.useState(Se),ze=o.useRef(null);o.useEffect(()=>{if(!ie||!Ae){ze.current=null,ve(Se);return}if(ie.address?.toLowerCase()!==Ae?.toLowerCase()){ze.current=null,ve(Se);return}ie.getEthereumProvider().then(async m=>{ze.current=m;const T=await m.request({method:"eth_chainId"}),D=parseInt(T,16),Z=Q.getChainConfig(D),fe=await ie.getWalletClient(D);ve(Z?P.createWalletClient({account:Ae,chain:Z.viemChain,transport:P.custom(m)}):fe)}).catch(()=>{ze.current=null,ve(Se)})},[ie,Ae,Se]);const Qe=o.useRef(We);o.useEffect(()=>{Qe.current=We},[We]);const Me=o.useRef(null),[ge,$e]=o.useState([]),[q]=o.useState([]),{assets:M,loading:N,error:J,refreshAssets:xe}=bs({address:I?ae:Ae||ae,supportedChains:a,fetchBalances:ys,refreshInterval:t?5e3:0}),me=o.useMemo(()=>{const m=a.flatMap(T=>Q.getAllAssetsForChain(T,M));return u&&u.length>0?m.filter(T=>u.includes(T.symbol.toLowerCase())||T.isNative&&u.includes("native")).sort((T,D)=>{const Z=T.balance>BigInt(0)?1:0;return(D.balance>BigInt(0)?1:0)-Z}):m.filter(T=>T.balance>BigInt(0))},[a,M,u]),G=o.useMemo(()=>{if(!ge[0]?.asset)return[];const m=ge[0].asset.chainId;return me.filter(T=>T.chainId===m)},[me,ge]),[H,de]=o.useState(!1),[ue,tt]=o.useState(null),[ht,Je]=o.useState("idle"),[mt,Le]=o.useState(null),[At,yt]=o.useState(!1),[Pe,lt]=o.useState(null),[_e,Ot]=o.useState("idle"),[Qt,ct]=o.useState(null),[Xt,Rt]=o.useState(null),[Ue,Et]=o.useState(!1),[xt,Mt]=o.useState(!1),[rn,Ut]=o.useState(null),[Dt,et]=o.useState(null),[tn,jt]=o.useState(!1),[Ht,Vt]=o.useState(!1),[Bt,Oe]=o.useState(null),[rt,ot]=o.useState(null),[Nt,it]=o.useState(null),{intentStatus:Y,startStatusPolling:te,clearStatus:Te}=hs({checkStepStatus:(m,T)=>K.relayerService.checkStepStatus(m,T),pollingInterval:1e3,retryStep:async(m,T)=>{const[D,Z]=m.split("/"),fe=parseInt(Z||"0",10);await K.relayerService.executeStep(D,fe,T,{action:"execute"})},maxRetries:3}),He=o.useCallback((m,T)=>{const D=Q.CHAIN_CONFIGS[T];return D?D.supportedTokens?.find(Z=>Z.address.toLowerCase()===m.toLowerCase())?.symbol??null:null},[]),at=o.useMemo(()=>{const m=ge[0]?.asset;if(!m||!y||!p)return!1;const T=He(y,p);return zr(m.symbol)&&!!T&&Pr(T)},[ge,y,p,He]);o.useEffect(()=>{ge.length>0&&A!==ge[0]?.amount&&$e(m=>{if(m.length===0)return m;const T=[...m];return T[0]={...T[0],amount:A||""},T})},[A]),o.useEffect(()=>{ge.length!==0&&$e(m=>m.map(T=>{if(!T.asset)return T;const D=me.find(Z=>Z.chainId===T.asset.chainId&&Z.address.toLowerCase()===T.asset.address.toLowerCase());return D?{...T,asset:D,amount:T.amount}:T}))},[M]),o.useEffect(()=>{if(!C||ge.length>0||me.length===0)return;const m=me.find(T=>T.chainId===C.chainId&&T.address.toLowerCase()===C.address.toLowerCase());m&&($e([{asset:m,amount:""}]),d?.(m))},[C,me,ge.length]);const bt=o.useRef(null);o.useEffect(()=>{if(se&&Y?.overallStatus==="success"&&v&&ht==="idle"){const m=bt.current,T=Me.current;m&&(async()=>{try{Je("executing"),await v(m),Je("success"),lt(m),yt(!0);const D=Array.isArray(T)?T[0]:void 0,Z={type:"deposit",status:"success",amount:m,asset:D?.tokenAddress,sourceChain:D?String(D.chainId):void 0,txHash:D?.txHash};window.dispatchEvent(new CustomEvent("spiceflow:action",{detail:Z})),b?.(Z)}catch(D){console.error("onDepositExecute failed:",D),Je("error"),Le(Zt(D,"Post-deposit instruction failed"))}finally{bt.current=null,Me.current=null}})()}},[Y?.overallStatus,se,ht]);const Ct=o.useCallback(()=>{tt(null)},[]);o.useEffect(()=>{t||(yt(!1),lt(null),Ot("idle"),ct(null),Rt(null))},[t]);const Wt=o.useCallback(async()=>{const m=Ae||ae,T="0x111115763723B53395308eC4c9AB9d5FB0844cae";if(Ut(null),et(null),!m){et("Connect your wallet before requesting an airdrop");return}const D=ge[0]?.asset?.chainId??a[0];if(!D){et("No chain selected for airdrop");return}if(!Ne){et("External wallet not connected");return}Mt(!0);try{if(We?.id!==D){Ut("Switching network...");try{await je({chainId:D});let Ze=0;const wt=20;for(;Ze<wt&&(await new Promise(qt=>setTimeout(qt,100)),Qe.current?.id!==D);)Ze++;if(Qe.current?.id!==D)throw new Error(`Failed to switch to chain ${D}. Please switch manually in your wallet.`)}catch(Ze){throw Ze.code===4902||Ze.name==="ChainNotConfiguredError"?new Error(`Chain ${D} is not configured in your wallet. Please add it manually.`):Ze}}Ut("Estimating required gas amount...");const Z=Q.getClientForChain(D),fe=await Z.getGasPrice(),Ee=BigInt(65e3)*fe,Fe=BigInt(120),ye=Ee*Fe/BigInt(100);Ut("Sending gas deposit to solver...");const ke=await Ne.sendTransaction({to:T,value:ye});if(Ut("Waiting for transaction confirmation..."),(await Z.waitForTransactionReceipt({hash:ke,timeout:12e4,pollingInterval:2e3,confirmations:2})).status!=="success")throw new Error("Gas deposit transaction failed");Ut("Requesting airdrop...");const Ce=await K.relayerService.requestAirdrop({chainId:D,tokenId:"spiceUsd",wallet:m,tag:"default"});if(!Ce.success){et(Ce.errorMessage||"Failed to request airdrop");return}Ut("Airdrop requested successfully.")}catch(Z){et(Zt(Z,"Airdrop request failed"))}finally{Mt(!1)}},[ae,Ae,ge,a,Ne,We,je]),Ke=(m,T)=>{$e(D=>{const Z=[...D];return Z[T]={asset:m,amount:Z[T]?.amount||""},Z}),T===0&&d?.(m),Ct()},Lt=o.useCallback(async(m,T)=>{if($e(D=>{const Z=[...D];return Z[T]&&(Z[T]={...Z[T],amount:m}),Z}),Ct(),T===0)if(c?.setAssetAmount(m),at&&m&&parseFloat(m)>0)try{const D=Bt??await Lr();Bt||Oe(D);const Z=ge[0]?.asset;if(!Z)return;const fe=P.parseUnits(m,Z.decimals),Ee=y?He(y,p):null,Fe=Q.CHAIN_CONFIGS[p]?.supportedTokens?.find(Ze=>Ze.address.toLowerCase()===y.toLowerCase())?.decimals??6,ye=Or(fe,Z.decimals,Fe,D);ot(ye);const ke=P.formatUnits(ye,Fe),Ce=D.toLocaleString("en-US",{maximumFractionDigits:0});it(`${m} ${Z.symbol} \u2248 $${parseFloat(ke).toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:2})} ${Ee??"USD"} (rate: $${Ce}/BTC)`),f?.(ke)}catch(D){console.error("Failed to fetch BTC/USD price:",D),it(null),ot(null),f?.(m)}else it(null),ot(null),f?.(m)},[Ct,c,f,at,Bt,ge,y,p,He]),dt=o.useCallback(()=>{ge.length<2&&$e(m=>[...m,{asset:null,amount:""}])},[ge.length]),nt=o.useCallback(m=>{$e(T=>T.filter((D,Z)=>Z!==m)),Ct()},[Ct]),vt=o.useRef(!1),zt=o.useRef(!1);o.useEffect(()=>{t||(vt.current=!1,zt.current=!1,Ft(null))},[t]);const[fn,$t]=o.useState(!1),[Kt,ut]=o.useState(null),[Ve,Ft]=o.useState(null),[an,cn]=o.useState(!1),[ee,ce]=o.useState(null),pe=o.useMemo(()=>{const m=ge[0];if(ge.length!==1||!m?.asset||!m.amount||parseFloat(m.amount)<=0)return null;try{return{asset:m.asset,amount:P.parseUnits(m.amount,m.asset.decimals),token:V.normalizeNativeTokenAddress(m.asset.address),chainId:m.asset.chainId}}catch{return null}},[ge]),qe=o.useCallback(async()=>{if(!ae||!pe)return null;const{asset:m,amount:T,token:D,chainId:Z}=pe,fe=m.isNative||V.isNativeToken(D),Ee=T>1n?1n:0n,Fe=[fe?{to:V.ESCROW_ADDRESS,value:T,data:"0x"}:{to:D,value:0n,data:P.encodeFunctionData({abi:Q.K,functionName:"transfer",args:[V.ESCROW_ADDRESS,T]})}];Ee>0n&&Fe.push(fe?{to:ns,value:Ee,data:"0x"}:{to:D,value:0n,data:P.encodeFunctionData({abi:Q.K,functionName:"transfer",args:[ns,Ee]})});const ye={chainId:Z,tokenTransfers:[{from:ae,to:V.ESCROW_ADDRESS,token:D,amount:T}],calls:Fe},ke=(await K.relayerService.estimateBatchGas({user:ae,outputToken:D,chainBatches:[{...ye,hash:V.hashChainBatches([ye])[0].hash}]})).gasFee,Ce=I&&ke<T?T-ke:T;return{fee:ke,net:Ce,token:D,chainId:Z}},[ae,pe,I]);o.useEffect(()=>{let m=!1;if(!t||se||!pe){Ft(null),ce(null),cn(!1);return}return(async()=>{ce(null),cn(!0);try{const T=await qe();m||Ft(T)}catch(T){if(m)return;Ft(null),ce(T instanceof Error?T.message:"Failed to estimate gas fee")}finally{m||cn(!1)}})(),()=>{m=!0}},[t,se,pe,qe]);const Xe=async()=>{if(ge.length===0||!ge[0]?.asset)return;const m=ge.filter(Ee=>Ee.asset&&Ee.amount&&parseFloat(Ee.amount)>0);if(m.length===0)return;const T=m[0],D=Q.getChainConfig(T.asset.chainId),Z=m.map(Ee=>{const Fe=parseFloat(Ee.amount);return`${isNaN(Fe)?Ee.amount:Fe.toPrecision(6).replace(/\.?0+$/,"")} ${Ee.asset.symbol}`}).join(", "),fe={network:D?.displayName||`Chain ${T.asset.chainId}`,amount:Z,symbol:"",chainId:T.asset.chainId};if(!se&&m.length===1&&Ve){const Ee=m[0];fe.creditedAmount=`${P.formatUnits(Ve.net,Ee.asset.decimals)} ${Ee.asset.symbol}`,fe.networkFee=`${P.formatUnits(Ve.fee,Ee.asset.decimals)} ${Ee.asset.symbol}`}ut(fe),$t(!0)},St=async()=>{const m=ge.filter(D=>D.asset&&D.amount&&parseFloat(D.amount)>0);if(m.length===0){console.error("[DepositModal] No valid assets for deposit"),tt("Please select an asset and enter an amount");return}if(!I&&!Ae){tt("External wallet not connected. Please connect your wallet in the previous step.");return}if(!se){if(!ae||!be){tt("Missing embedded wallet address");return}if(!he||!w){tt("Please authenticate with your wallet provider to continue");return}}if(gt){tt(gt);return}if(De){tt(De);return}de(!0),tt(null);let T=!1;try{const D=m[0].asset.chainId;let Z=Ne;if(!I){if(!Z)throw new Error("External wallet not connected");if(ze.current){let fe=null;try{const Fe=await ze.current.request({method:"eth_chainId"});fe=parseInt(Fe,16)}catch{}if(fe!==D)try{await ze.current.request({method:"wallet_switchEthereumChain",params:[{chainId:`0x${D.toString(16)}`}]})}catch(Fe){if(Fe.code===4902||Fe?.message?.includes("Unrecognized chain ID")){const ye=Q.getChainConfig(D);ye&&await ze.current.request({method:"wallet_addEthereumChain",params:[{chainId:`0x${D.toString(16)}`,chainName:ye.name||`Chain ${D}`,nativeCurrency:ye.nativeCurrency||{name:"ETH",symbol:"ETH",decimals:18},rpcUrls:[Q.getRpcUrlForChain(D)||ye.rpcUrl],blockExplorerUrls:ye.blockExplorer?[ye.blockExplorer]:void 0}]})}else throw Fe}const Ee=Q.getChainConfig(D);Ee&&(Z=P.createWalletClient({account:Ae,chain:Ee.viemChain,transport:P.custom(ze.current)}))}}if(se){if(!Z)throw new Error("External wallet not connected");if(!Ae)throw new Error("External wallet address not available");if(k&&D===k){const fe=Q.getChainConfig(D),Ee=m.map(ye=>`${ye.amount} ${ye.asset.symbol}`).join(", ");ut({network:fe?.displayName||`Chain ${D}`,amount:Ee,symbol:"",chainId:D}),$t(!0);let Fe=null;Ot("processing"),Rt(D);for(const ye of m){const ke=P.parseUnits(ye.amount,ye.asset.decimals),Ce=V.normalizeNativeTokenAddress(ye.asset.address),Ze=ye.asset.isNative||V.isNativeToken(Ce)?await Z.sendTransaction({to:V.ESCROW_ADDRESS,value:ke}):await Z.sendTransaction({to:Ce,data:P.encodeFunctionData({abi:Q.K,functionName:"transfer",args:[V.ESCROW_ADDRESS,ke]})}),wt=await Q.getClientForChain(D).waitForTransactionReceipt({hash:Ze,timeout:12e4,pollingInterval:2e3,confirmations:2});if(wt.status!=="success")throw new Error(`Escrow deposit failed for ${ye.asset.symbol}`);Fe=wt.transactionHash,ct(wt.transactionHash)}if(m[0]?.amount){const ye=m[0].amount;if(v){Je("executing");try{await v(ye),Je("success")}catch(Ce){console.error("onDepositExecute failed:",Ce),Je("error"),Le(Ce?.message||"Post-deposit instruction failed")}}else Je("success");Ot("success"),lt(ye),yt(!0);const ke={type:"deposit",status:"success",amount:ye,asset:m[0].asset.symbol,sourceChain:fe?.displayName||`Chain ${D}`,txHash:Fe??void 0};window.dispatchEvent(new CustomEvent("spiceflow:action",{detail:ke})),b?.(ke)}xe(),s&&s(m[0].asset)}else{const fe=p||k;if(!fe)throw new Error("Destination chain ID is required for non-7702 mode. Either pass destinationChainId to <SpiceDeposit> or set nativeChainId on <SpiceFlowProvider>.");const Ee=Q.getDelegateContractAddress(D),Fe=V.ESCROW_ADDRESS,ye=[];let ke=null;for(const Ce of m){const Ze=P.parseUnits(Ce.amount,Ce.asset.decimals),wt=V.normalizeNativeTokenAddress(Ce.asset.address),qt=Ce.asset.isNative||V.isNativeToken(wt),Pt=Fe,nn=qt?await Z.sendTransaction({to:Fe,value:Ze}):await Z.sendTransaction({to:wt,data:P.encodeFunctionData({abi:Q.K,functionName:"transfer",args:[Pt,Ze]})});ke||(ke=nn);const gn=Q.getClientForChain(D),Tt=await gn.waitForTransactionReceipt({hash:nn,timeout:12e4,pollingInterval:2e3,confirmations:2});if(Tt.status!=="success")throw new Error(`Transfer failed for ${Ce.asset.symbol}`);await gn.getBlockNumber()-Tt.blockNumber<2&&await new Promise(Gt=>setTimeout(Gt,3e3)),Me.current||(Me.current=[]),Me.current.push({txHash:nn,sender:Ae,tokenAddress:wt,chainId:D,amount:Ze.toString(),user:Re}),ye.push({tokenAddress:wt,tokenAmount:Ze.toString(),sender:Ae,receiver:Fe})}if(!ke)throw new Error("No transaction hash generated");if(!y){const Ce=Me.current?.[0];Ce&&ke&&V.normalizeNativeTokenAddress(Ce.tokenAddress);const Ze={type:"deposit",status:"success",amount:m[0]?.amount,asset:m[0]?.asset?.symbol,sourceChain:Q.getChainName(D),txHash:ke};window.dispatchEvent(new CustomEvent("spiceflow:action",{detail:Ze})),b?.(Ze),Me.current=null,bt.current=m[0]?.amount||null,xe(),s&&s(m[0].asset),$t(!1);return}if(S&&k){const Ce=P.parseUnits("0.05",18);ye.push({tokenAddress:V.ZERO_ADDRESS,tokenAmount:Ce.toString(),sender:Ae,receiver:Fe})}if(X==="ondemand"){const Ce={to:Ee,value:BigInt(0),data:"0x"},Ze=await Q.getTokenDecimals(fe,y);let wt=BigInt(0);for(const dn of ye){const Vn=BigInt(dn.tokenAmount),jn=V.normalizeNativeTokenAddress(dn.tokenAddress),Qn=m.find(pt=>V.normalizeNativeTokenAddress(pt.asset.address).toLowerCase()===jn.toLowerCase());let Rn;Qn?Rn=Qn.asset.decimals:Rn=await Q.getTokenDecimals(D,V.ZERO_ADDRESS);const Mn=V.convertAmountBetweenDecimals(Vn,Rn,Ze);wt+=Mn}at&&rt&&(wt=rt);const qt={chainId:D,tokenTransfers:ye.map(dn=>({from:dn.sender,to:dn.receiver,token:dn.tokenAddress,amount:BigInt(dn.tokenAmount)})),call:Ce},Pt=at&&rt?[{from:Ae,to:V.ESCROW_ADDRESS,token:V.normalizeNativeTokenAddress(m[0].asset.address),amount:P.parseUnits(m[0].amount,m[0].asset.decimals)}]:[],nn={chainId:fe,tokenTransfers:[...Pt,{from:"escrow",to:Ae,token:y,amount:wt}],call:{to:y,value:BigInt(0),data:"0x"}},gn={user:Ae,intents:[{mode:"non-7702:on-demand",chainBatches:[qt,nn]}]},Tt=await K.relayerService.createAction(gn),Gt=Tt.actionId,as=Tt.intentIds[0];if(!ke)throw new Error("No transaction hash available");Q.getChainConfig(D)?.displayName||Q.getChainName(D),te(as,K.createInitialSteps([{chainId:D,calls:[Ce]},{chainId:fe,calls:[nn.call]}],dn=>Q.getChainName(dn))),await K.relayerService.executeStep(Gt,0,0,{action:"execute",hash:ke}),m[0]?.amount&&(bt.current=m[0].amount),xe(),s&&s(m[0].asset),$t(!1)}else throw new Error("Presign mode not yet fully supported for cross-chain deposits")}}else{const fe=V.ESCROW_ADDRESS,Ee=[],Fe=m[0],ye=Fe&&m.length===1&&Ve&&Ve.chainId===D&&Ve.token.toLowerCase()===V.normalizeNativeTokenAddress(Fe.asset.address).toLowerCase()?P.formatUnits(Ve.net,Fe.asset.decimals):Fe?.amount;for(const pt of m){const Jt=P.parseUnits(pt.amount,pt.asset.decimals),Yt=m.length===1&&!!Ve&&Ve.chainId===D&&Ve.token.toLowerCase()===V.normalizeNativeTokenAddress(pt.asset.address).toLowerCase(),vn=Yt?Ve.fee:0n,sn=Yt?Ve.net:Jt,Ns=I?Jt:Jt+vn,Kn=V.normalizeNativeTokenAddress(pt.asset.address),qn=pt.asset.isNative||V.isNativeToken(Kn);if(!I){const Zo=qn?await Z.sendTransaction({to:ae,value:Ns}):await Z.sendTransaction({to:Kn,data:P.encodeFunctionData({abi:Q.K,functionName:"transfer",args:[ae,Ns]})});Xr({chainId:D,tokenAddress:V.normalizeNativeTokenAddress(pt.asset.address),tokenSymbol:pt.asset.symbol,tokenDecimals:pt.asset.decimals,amount:pt.amount,rawAmount:Jt.toString(),embeddedWalletAddress:ae,externalWalletAddress:Ae,timestamp:Date.now(),isNative:qn});const Ws=Q.getClientForChain(D),Us=await Ws.waitForTransactionReceipt({hash:Zo,timeout:12e4,pollingInterval:2e3,confirmations:2});if(Us.status!=="success")throw new Error(`Transfer to embedded wallet failed for ${pt.asset.symbol}`);await Ws.getBlockNumber()-Us.blockNumber<2&&await new Promise(Xo=>setTimeout(Xo,3e3))}Ee.push(qn?{to:fe,value:sn,data:"0x"}:{to:Kn,value:BigInt(0),data:P.encodeFunctionData({abi:Q.K,functionName:"transfer",args:[fe,sn]})}),vn>0n&&Ee.push(qn?{to:ns,value:vn,data:"0x"}:{to:Kn,value:BigInt(0),data:P.encodeFunctionData({abi:Q.K,functionName:"transfer",args:[ns,vn]})})}const ke=await Q.getClientForChain(D).getBlockNumber(),Ce=Ee.map(pt=>({...pt,to:P.getAddress(pt.to)})),Ze={chainId:D,recentBlock:ke,calls:Ce,tokenTransfers:[]},wt=_r({sourceChainId:D,selectedAsset:Fe&&ye?{...Fe,amount:ye}:m[0],destinationChainId:p,destinationTokenAddress:y,isCrossDenomination:at,convertedUsdAmount:rt}),qt=await ea(r,wt),Pt=[Ze,...qt];if(!ae)throw new Error("Address not available");const nn=[...new Set(Pt.map(pt=>pt.chainId))],gn=[];for(const pt of nn){const Jt=Q.getDelegateContractAddress(pt),Yt=Q.getClientForChain(pt),vn=await V.getAccountNonce(ae,Yt),sn=await z.signAuthorization({contractAddress:Jt,chainId:pt,nonce:Number(vn)});gn.push({r:sn.r,s:sn.s,yParity:sn.yParity,chainId:sn.chainId,nonce:Number(sn.nonce),address:sn.address})}const Tt=V.hashChainBatches(Pt),Gt=Math.floor(Date.now()/1e3)+ta,as=Tt.map(pt=>pt.hash),dn=P.keccak256(P.encodeAbiParameters([{type:"string"},{type:"uint256"},{type:"uint256"},{type:"bytes32[]"}],["ecdsa",0n,BigInt(Gt),as])),{signature:Vn}=await z.signMessage({raw:dn});if(!Vn)throw new Error("Failed to sign intent authorization");const jn=[];if(at&&rt&&y){const pt=ge[0]?.asset;if(pt){const Jt=P.parseUnits(ge[0].amount,pt.decimals);jn.push({from:ae,to:V.ESCROW_ADDRESS,token:V.normalizeNativeTokenAddress(pt.address),amount:Jt}),jn.push({from:"escrow",to:ae,token:y,amount:rt})}}const Qn={mode:"7702",signatureType:"ecdsa",signature:Vn,nbf:0,exp:Gt,chainBatches:Tt.map((pt,Jt)=>({hash:pt.hash,chainId:Pt[Jt].chainId,tokenTransfers:Jt===1&&jn.length>0?jn:Pt[Jt].tokenTransfers??[],calls:Pt[Jt].calls}))},Rn={user:ae,chainAuthorizations:gn,intents:[Qn]},Mn=await K.relayerService.createAction(Rn);if(Mn){const pt=Mn.actionId;for(let Yt=0;Yt<Pt.length;Yt++){const vn=await K.relayerService.executeStep(pt,0,Yt,{action:"execute"});if(Yt===0&&vn.transactionHash)for(const sn of m)P.parseUnits(sn.amount,sn.asset.decimals),V.normalizeNativeTokenAddress(sn.asset.address)}for(const Yt of m)ws(ae,D,V.normalizeNativeTokenAddress(Yt.asset.address));const Jt=K.createInitialSteps(Pt,Yt=>Q.getChainName(Yt));if(te(Mn.intentIds[0],Jt),xe(),v&&m[0]?.amount)try{Je("executing"),await v(ye||m[0].amount),Je("success"),lt(ye||m[0].amount),yt(!0)}catch(Yt){console.error("onDepositExecute failed (7702):",Yt),Je("error"),Le(Yt?.message||"Post-deposit instruction failed")}s&&s(m[0].asset)}}}catch(D){T=!0,console.error("[DepositModal] executeDeposit CAUGHT ERROR:",D),console.error("[DepositModal] Error details:",{message:D?.message,code:D?.code,name:D?.name,stack:D?.stack?.slice(0,500)}),tt(Zt(D,"Deposit failed")),Te()}finally{de(!1),T&&Ot("idle"),T||!Y&&ht!=="idle"||$t(!1)}},gt=o.useMemo(()=>{for(const m of ge)if(!(!m?.asset||!m.amount||parseFloat(m.amount)<=0))try{const T=m.asset.decimals,D=P.parseUnits(m.amount,T);if(D<=0n)continue;const Z=V.getEquivalenceGroup(V.normalizeNativeTokenAddress(m.asset.address)),fe=m.asset.receiptTokenDecimals??(Z==="ETH"||Z==="ARB"?18:Z==="USDC"||Z==="SUSD"||Z==="WBTC"||Z==="CBTC"?6:void 0);if(fe===void 0||T<=fe||V.convertAmountBetweenDecimals(D,T,fe)>0n)continue;return`Amount too small. Minimum deposit for this asset is ${P.formatUnits(10n**BigInt(T-fe),T)} ${m.asset.symbol}.`}catch{continue}return null},[ge]),kt=!se&&!!pe,Be=!!pe&&!!Ve&&Ve.chainId===pe.chainId&&Ve.token.toLowerCase()===pe.token.toLowerCase(),De=o.useMemo(()=>{if(!kt||!pe||!Be)return null;const m=I?pe.amount:pe.amount+Ve.fee;return pe.asset.balance>=m?null:`Insufficient ${pe.asset.symbol}. Need ${P.formatUnits(m,pe.asset.decimals)} ${pe.asset.symbol} including gas.`},[kt,pe,Be,Ve,I]),It=!kt||Be&&!an&&!ee&&!De,le=ge.length>0&&ge[0]?.asset&&ge[0]?.amount&&parseFloat(ge[0].amount)>0&&we&&!H&&!gt&&!De&&It;o.useEffect(()=>{if(!I||!F||!W||vt.current||!we)return;const m=a[0];if(!m)return;const T=Q.getAllAssetsForChain(m,[]).find(Z=>Z.address.toLowerCase()===F.toLowerCase());let D;if(T)D=T;else if(E!==void 0&&B)D={address:F,symbol:B,name:B,decimals:E,chainId:m,balance:BigInt(0),balanceFormatted:0,balanceUsd:0,isNative:V.isNativeToken(F)};else{console.warn("[DepositModal] escrowOnly: no matching asset and missing escrowTokenDecimals/escrowTokenSymbol for",F);return}vt.current=!0,$e([{asset:D,amount:W}])},[I,F,W,E,B,we,a]),o.useEffect(()=>{!I||!le||zt.current||H||(zt.current=!0,St())},[I,le,H]);const Ie=J||ue||gt||De,st=()=>{if(H)return"Executing Deposit...";if(!we)return"Wallet Not Connected";if(X==="7702"){if(!he)return"Loading...";if(!w)return"Authentication Required"}return ge[0]?.asset?ge[0]?.amount?gt?"AMOUNT TOO SMALL":De?"INSUFFICIENT BALANCE":kt&&!It?ee?"GAS UNAVAILABLE":"ESTIMATING GAS":"DEPOSIT":"ENTER AMOUNT":"SELECT TOKEN"};if(!t)return null;const Ye=e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",gap:"3px"},children:[e.jsx("img",{src:io,alt:"Info",style:{width:"10px",height:"10px",marginTop:"4px",flexShrink:0}}),e.jsx("p",{style:{fontSize:"12px",color:L?j.textSecondary:"#6b7280",margin:"0",lineHeight:"1.4",fontFamily:'"Helvetica Neue", sans-serif'},children:`Deposit collateral to your ${ne} Account from 9+ EVM blockchains.`})]}),re=(m,T,D=L?j.textPrimary:"#111827")=>e.jsxs("div",{style:{display:"flex",justifyContent:"space-between"},children:[e.jsx("span",{style:{fontSize:"12px",color:L?j.textSecondary:"#6b7280",fontFamily:'"IBM Plex Mono", monospace',fontWeight:500,letterSpacing:"0.03em"},children:m}),e.jsx("span",{style:{fontSize:"13px",color:D,fontWeight:500,fontFamily:'"IBM Plex Mono", monospace'},children:T})]});return e.jsx(on,{isOpen:t,onClose:n,title:l||`Deposit to your ${ne} account`,subtitle:Ye,dark:L,overlayContent:fn||Y||ht!=="idle"&&v?e.jsx("div",{}):void 0,styles:i,theme:O,children:e.jsxs("div",{style:{padding:"24px 24px 5px 24px"},children:[ge.map((m,T)=>{const D=ge.length===1?"Deposit":`Asset ${T+1}`;return e.jsxs("div",{style:{marginBottom:O.spacing.md,position:"relative"},children:[U&&T===0&&e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"8px"},children:[e.jsx("div",{style:{fontSize:"11px",color:Dt?L?j.errorText:"#b91c1c":L?j.successText:"#047857",fontFamily:i?.fontFamily||O.typography.fontFamily,flex:1,minWidth:0},children:Dt||rn||""}),e.jsxs("div",{style:{display:"flex",gap:"4px",flexShrink:0,alignItems:"center"},children:[e.jsx("button",{onClick:Wt,disabled:xt,style:{padding:"4px 8px",borderRadius:"4px",border:`1px solid ${L?j.inputBorder:"#D1D5DB"}`,background:L?j.inputBg:"#E5E7EB",color:L?j.textSecondary:"#4B5563",fontSize:"11px",fontWeight:500,cursor:xt?"default":"pointer",transition:"all 0.2s",display:"flex",alignItems:"center"},onMouseEnter:Z=>{xt||(Z.currentTarget.style.color=L?j.textPrimary:"#1F2937",Z.currentTarget.style.background=L?j.inputBorder:"#D1D5DB")},onMouseLeave:Z=>{Z.currentTarget.style.color=L?j.textSecondary:"#4B5563",Z.currentTarget.style.background=L?j.inputBg:"#E5E7EB"},children:xt?"Requesting...":"Airdrop"}),e.jsxs("div",{onMouseEnter:()=>Et(!0),onMouseLeave:()=>Et(!1),style:{position:"relative",width:"14px",height:"14px",borderRadius:"50%",backgroundColor:L?j.textSecondary:"#9CA3AF",color:"white",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"9px",fontWeight:"bold",cursor:"help",flexShrink:0},children:["i",Ue&&e.jsxs("div",{style:{position:"absolute",bottom:"calc(100% + 8px)",right:0,backgroundColor:L?j.inputBg:"#1F2937",color:"white",padding:"8px 12px",borderRadius:"6px",fontSize:"12px",whiteSpace:"nowrap",boxShadow:"0 4px 6px rgba(0, 0, 0, 0.1)",zIndex:100},children:["This is testnet USDC, and it won't be available on mainnet",e.jsx("div",{style:{position:"absolute",top:"100%",right:"10px",width:0,height:0,borderLeft:"6px solid transparent",borderRight:"6px solid transparent",borderTop:`6px solid ${L?j.inputBg:"#1F2937"}`}})]})]})]})]}),e.jsx(Fn,{assets:T===0?me:G,selectedAsset:m||void 0,onAssetSelect:Z=>Ke(Z,T),onAmountChange:Z=>Lt(Z,T),loading:N,label:D,showBalance:!0,theme:O,styles:i,allowSecondAsset:g&&T===0,onAddAsset:dt,canAddAsset:ge.length===1&&!!ge[0]?.asset,onViewAllAssets:T===0?$:void 0}),T===1&&e.jsx("button",{onClick:()=>nt(T),style:{position:"absolute",top:"-2px",right:"-2px",background:L?`${j.cardBg}ee`:"rgba(255, 255, 255, 0.9)",border:`1px solid ${L?j.cardBorder:"#e5e7eb"}`,borderRadius:"50%",cursor:"pointer",color:O.colors.textMuted,fontSize:"16px",padding:"2px",width:"22px",height:"22px",display:"flex",alignItems:"center",justifyContent:"center",transition:"all 0.2s",boxShadow:"0 1px 3px rgba(0, 0, 0, 0.1)"},onMouseEnter:Z=>{Z.currentTarget.style.color=L?j.errorText:"#ef4444",Z.currentTarget.style.background=L?j.cardBg:"#fff",Z.currentTarget.style.borderColor=L?j.errorBorder:"#fecaca"},onMouseLeave:Z=>{Z.currentTarget.style.color=O.colors.textMuted,Z.currentTarget.style.background=L?`${j.cardBg}ee`:"rgba(255, 255, 255, 0.9)",Z.currentTarget.style.borderColor=L?j.cardBorder:"#e5e7eb"},title:"Remove asset",children:"\xD7"})]},`asset-${T}`)}),ge.length===0&&e.jsxs("div",{style:{marginBottom:O.spacing.md},children:[U&&e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"8px"},children:[e.jsx("div",{style:{fontSize:"11px",color:Dt?L?j.errorText:"#b91c1c":L?j.successText:"#047857",fontFamily:i?.fontFamily||O.typography.fontFamily,flex:1,minWidth:0},children:Dt||rn||""}),e.jsxs("div",{style:{display:"flex",gap:"4px",flexShrink:0,alignItems:"center"},children:[e.jsx("button",{onClick:Wt,disabled:xt,style:{padding:"4px 8px",borderRadius:"4px",border:`1px solid ${L?j.inputBorder:"#D1D5DB"}`,background:L?j.inputBg:"#E5E7EB",color:L?j.textSecondary:"#4B5563",fontSize:"11px",fontWeight:500,cursor:xt?"default":"pointer",transition:"all 0.2s",display:"flex",alignItems:"center"},onMouseEnter:m=>{xt||(m.currentTarget.style.color=L?j.textPrimary:"#1F2937",m.currentTarget.style.background=L?j.inputBorder:"#D1D5DB")},onMouseLeave:m=>{m.currentTarget.style.color=L?j.textSecondary:"#4B5563",m.currentTarget.style.background=L?j.inputBg:"#E5E7EB"},children:xt?"Requesting...":"Airdrop"}),e.jsxs("div",{onMouseEnter:()=>Et(!0),onMouseLeave:()=>Et(!1),style:{position:"relative",width:"14px",height:"14px",borderRadius:"50%",backgroundColor:L?j.textSecondary:"#9CA3AF",color:"white",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"9px",fontWeight:"bold",cursor:"help",flexShrink:0},children:["i",Ue&&e.jsxs("div",{style:{position:"absolute",bottom:"calc(100% + 8px)",right:0,backgroundColor:L?j.inputBg:"#1F2937",color:"white",padding:"8px 12px",borderRadius:"6px",fontSize:"12px",whiteSpace:"nowrap",boxShadow:"0 4px 6px rgba(0, 0, 0, 0.1)",zIndex:100},children:["This is testnet USDC, and it won't be available on mainnet",e.jsx("div",{style:{position:"absolute",top:"100%",right:"10px",width:0,height:0,borderLeft:"6px solid transparent",borderRight:"6px solid transparent",borderTop:`6px solid ${L?j.inputBg:"#1F2937"}`}})]})]})]})]}),e.jsx(Fn,{assets:me,selectedAsset:void 0,onAssetSelect:m=>Ke(m,0),onAmountChange:m=>Lt(m,0),loading:N,label:"Deposit",showBalance:!0,theme:O,styles:i,allowSecondAsset:g,onAddAsset:dt,canAddAsset:!1},"initial-selector")]}),q.length>0&&e.jsx("div",{style:{marginBottom:O.spacing.sm},children:e.jsxs("div",{style:{backgroundColor:i?.infoCard?.backgroundColor||i?.tertiaryBackground||(L?j.inputBg:"#f9fafb"),border:`1px solid ${i?.infoCard?.borderColor||(L?j.cardBorder:"#e5e7eb")}`,borderRadius:i?.infoCard?.borderRadius||O.borderRadius.md,padding:i?.infoCard?.padding||O.spacing.sm},children:[e.jsx("div",{style:{fontSize:i?.infoCard?.title?.fontSize||O.typography.fontSize.xs,fontWeight:i?.infoCard?.title?.fontWeight||O.typography.fontWeight.medium,color:i?.infoCard?.title?.color||O.colors.text,fontFamily:i?.infoCard?.title?.fontFamily||O.typography.fontFamily,marginBottom:"4px"},children:"Deposit Batches Ready"}),e.jsxs("div",{style:{fontSize:i?.infoCard?.description?.fontSize||O.typography.fontSize.xs,color:i?.infoCard?.description?.color||O.colors.textSecondary,fontFamily:i?.infoCard?.description?.fontFamily||O.typography.fontFamily},children:[q.length," deposit batch",q.length>1?"es":""," across chains:"," ",[...new Set(q.map(m=>m.chainId))].join(", ")]})]})}),kt&&pe&&e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"7px",marginBottom:O.spacing.md,padding:"0 2px"},children:[re("EST. GAS FEE",an?"Estimating...":ee?"Unavailable":Be?`${P.formatUnits(Ve.fee,pe.asset.decimals)} ${pe.asset.symbol}`:"Estimating...",ee?"#f87171":void 0),re("CREDITED",ee?"Unavailable":Be?`${P.formatUnits(Ve.net,pe.asset.decimals)} ${pe.asset.symbol}`:"Estimating...",ee?"#f87171":void 0),re("TOTAL REQUIRED",ee?"Unavailable":Be?`${P.formatUnits(I?pe.amount:pe.amount+Ve.fee,pe.asset.decimals)} ${pe.asset.symbol}`:"Estimating...",De?L?j.errorText:"#dc2626":void 0),ee&&e.jsx("div",{style:{padding:"8px 10px",borderRadius:"7px",backgroundColor:L?j.errorBg:"#fef2f2",border:`1px solid ${L?j.errorBorder:"#fecaca"}`,color:L?j.errorText:"#dc2626",fontSize:"12px",lineHeight:1.4,fontFamily:i?.fontFamily||O.typography.fontFamily},children:ee})]}),e.jsx($r,{intentStatus:Y,postDepositSuccess:At,postDepositAmount:Pe,postDepositStatus:ht,depositActionLabel:x,sourceChainName:ge[0]?.asset?.chainId?Q.getChainName(ge[0].asset.chainId):"Destination Chain",directDepositStatus:_e,directDepositTxHash:Qt,directDepositChainId:Xt,styles:i}),e.jsx(Jr,{isOpen:fn||!!Y||ht!=="idle"&&!!v,onClose:()=>{$t(!1),Y&&Te();const m=ht==="success"&&!Y,T=Y?.overallStatus==="success"&&ht==="success"&&v;(m||T)&&n()},onConfirm:St,data:Kt,isExecuting:H,error:ue,theme:O,styles:i,intentStatus:Y,postDepositStatus:ht,hasPostDepositInstruction:!!v}),Nt&&e.jsxs("div",{style:{padding:"8px 12px",marginBottom:"8px",backgroundColor:L?j.warningBg:"#fffbeb",border:`1px solid ${L?j.warningBorder:"#fde68a"}`,borderRadius:O.borderRadius.md,fontSize:"12px",color:L?j.warningText:"#92400e",lineHeight:"1.4"},children:["\u26A1 ",Nt]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:0,marginBottom:0,margin:0,padding:0},children:[Ie?e.jsx("div",{style:{marginBottom:"10px",fontSize:"12px",lineHeight:"1.45",color:L?j.errorText:"#dc2626",fontFamily:i?.fontFamily||O.typography.fontFamily},children:Ie}):null,(()=>{const m=!le||!we||H,T=Ht?`${_}cc`:tn?`${_}ee`:_;return e.jsx(Ge.Button,{variant:"outline",fullWidth:!0,onClick:Xe,disabled:m,theme:O,onMouseEnter:()=>jt(!0),onMouseLeave:()=>{jt(!1),Vt(!1)},onMouseDown:()=>Vt(!0),onMouseUp:()=>Vt(!1),style:{height:"56px",backgroundColor:m?i?.button?.disabledBackgroundColor??`${_}88`:T,color:i?.button?.color||(L?j.textPrimary:"#0e0d0b"),border:`1.5px solid ${L?`${_}88`:"#0e0d0b"}`,fontSize:"20px",fontWeight:600,letterSpacing:"1.5px",fontFamily:'"IBM Plex Mono", monospace',transition:"all 150ms ease",transform:m?"none":Ht?"scale(0.98)":tn?"translateY(-2px)":"none",boxShadow:Ht?`2px 2px 0px ${L?_:"#0e0d0b"}`:tn&&!m?`5px 5px 0px ${j.shell}, 6px 6px 0px ${L?`${_}88`:"#0e0d0b"}`:`3px 3px 0px ${j.shell}, 4px 4px 0px ${L?`${_}88`:"#0e0d0b"}`,cursor:m?"not-allowed":"pointer",opacity:m?.78:1,borderRadius:"12px"},children:st()})})()]})]})})}),na=({isOpen:t,onClose:n,deposits:s,onComplete:r,onCancel:a,onSkip:l,onChangeWallet:i,isProcessing:d,error:c,styles:h})=>{const{dark:u,dk:f,theme:g}=K.useSpiceBrand(h);if(!t||s.length===0)return null;const p=s[0],y=h?.fontFamily||'"Helvetica Neue", sans-serif',v='"IBM Plex Mono", monospace',x=Q.getChainName(p.chainId),k=parseFloat(p.amount).toPrecision(6).replace(/\.?0+$/,""),U=P.formatUnits(p.verifiedBalance,p.tokenDecimals);return e.jsx(on,{isOpen:t,onClose:n,title:"Incomplete Deposit",styles:h,children:e.jsxs("div",{style:{padding:"18px 24px 24px",fontFamily:y},children:[e.jsx("p",{style:{fontSize:"14px",color:f.textSecondary,lineHeight:"1.6",margin:"0 0 18px 0"},children:"Funds were sent to your embedded wallet but the deposit was not completed."}),e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"minmax(0, 1fr) auto",gap:"14px 18px",marginBottom:"24px",padding:"16px 18px",backgroundColor:u?f.cardBg:"#f8fafc",border:`1px solid ${u?f.cardBorder:"#e5e7eb"}`,borderRadius:u?"14px":"10px",boxShadow:u?"inset 0 1px 0 rgba(255,255,255,0.03)":"0 1px 2px rgba(16,24,40,0.04)"},children:[e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"4px"},children:[e.jsx("span",{style:{fontSize:"12px",fontWeight:600,color:f.textSecondary,fontFamily:v,letterSpacing:"0.8px"},children:"NETWORK"}),e.jsx("span",{style:{fontSize:"18px",fontWeight:600,color:f.textPrimary,fontFamily:y,lineHeight:1.2},children:x})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"4px",alignItems:"flex-end",textAlign:"right"},children:[e.jsx("span",{style:{fontSize:"12px",fontWeight:600,color:f.textSecondary,fontFamily:v,letterSpacing:"0.8px"},children:"DEPOSITED AMOUNT"}),e.jsxs("span",{style:{fontSize:"24px",fontWeight:700,color:f.successText,fontFamily:v,lineHeight:1.1},children:[k," ",p.tokenSymbol]}),e.jsx("span",{style:{fontSize:"12px",color:f.textSecondary,fontWeight:500,fontFamily:y},children:"Sent to embedded wallet"})]})]}),!p.hasFullBalance&&p.verifiedBalance>0n&&e.jsxs("div",{style:{marginBottom:"16px",padding:"8px 12px",backgroundColor:u?f.warningBg:"#fef3c7",border:`1px solid ${u?f.warningBorder:"#fcd34d"}`,borderRadius:"8px",fontSize:"13px",color:u?f.warningText:"#92400e",lineHeight:"1.4"},children:["Partial balance \u2014 only ",parseFloat(U).toFixed(4)," ",p.tokenSymbol," available."]}),c&&e.jsx("div",{style:{marginBottom:"16px",padding:"10px 12px",backgroundColor:u?f.errorBg:"#fef2f2",border:`1px solid ${u?f.errorBorder:"#fca5a5"}`,borderRadius:"8px",fontSize:"13px",color:u?f.errorText:"#991b1b",lineHeight:"1.4"},children:c}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"12px"},children:[e.jsx(Ge.Button,{variant:"outline",fullWidth:!0,disabled:d,onClick:()=>r(p),theme:g,dark:u,styles:h,children:"CONFIRM DEPOSIT"}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"10px"},children:[e.jsx(Ge.Button,{variant:"ghost",fullWidth:!0,disabled:d,onClick:()=>a(p),theme:g,dark:u,style:{height:"48px",fontSize:"13px",letterSpacing:"0.4px",color:u?f.textPrimary:"#374151",border:`1px solid ${u?f.cardBorder:"#d1d5db"}`,borderRadius:"12px",backgroundColor:u?"rgba(255,255,255,0.02)":"#ffffff"},children:d?"RETURNING...":"RETURN FUNDS"}),e.jsxs("div",{style:{display:"grid",gridTemplateColumns:i?"1fr 1fr":"1fr",gap:"10px"},children:[e.jsx(Ge.Button,{variant:"ghost",fullWidth:!0,disabled:d,onClick:l,theme:g,dark:u,style:{height:"44px",fontSize:"12px",letterSpacing:"0.4px",color:f.textSecondary,border:`1px solid ${u?f.cardBorder:"#d1d5db"}`,borderRadius:"12px",backgroundColor:"transparent"},children:"NEW DEPOSIT"}),i&&e.jsx(Ge.Button,{variant:"ghost",fullWidth:!0,disabled:d,onClick:i,theme:g,dark:u,style:{height:"44px",fontSize:"12px",letterSpacing:"0.4px",color:f.textSecondary,border:`1px solid ${u?f.cardBorder:"#d1d5db"}`,borderRadius:"12px",backgroundColor:"transparent"},children:"CHANGE WALLET"})]})]})]}),s.length>1&&e.jsxs("p",{style:{fontSize:"12px",color:f.textSecondary,textAlign:"center",marginTop:"14px",marginBottom:0,lineHeight:"1.5"},children:[s.length," incomplete deposits found \u2014 resolving one at a time."]})]})})},vs=t=>{const[n,s]=o.useState(!1),r=o.useContext(K.SpiceFlowProviderContext),{dark:a,dk:l}=K.useSpiceBrand();if(o.useEffect(()=>{s(!0)},[]),!n)return e.jsx("div",{className:t.className,children:e.jsx("button",{disabled:!0,style:{padding:"12px 24px",fontSize:"16px",backgroundColor:a?l.hoverBg:"#ccc",color:a?l.textSecondary:"white",border:a?`1px solid ${l.buttonBorder}`:"none",borderRadius:"4px",cursor:"not-allowed"},children:"Loading..."})});if(!r){const i='ProviderLogin must be used within SpiceFlowProvider. Please wrap your app with <SpiceFlowProvider provider="privy" | "dynamic">.';return e.jsx("div",{className:t.className,children:e.jsx("button",{onClick:()=>{t.onAuthError&&t.onAuthError(i)},style:{padding:"12px 24px",fontSize:"16px",backgroundColor:a?l.errorBg:"#dc2626",color:a?l.errorText:"white",border:a?`1px solid ${l.errorBorder}`:"none",borderRadius:"4px",cursor:"pointer"},children:"Provider Not Found"})})}if(r.provider==="privy")return e.jsx(nr.PrivyLogin,{...t});if(r.provider==="dynamic"){const i='Dynamic provider is not supported in this build of @spicenet-io/spiceflow-ui. Use provider="privy" instead.';return e.jsx("div",{className:t.className,children:e.jsx("button",{onClick:()=>{t.onAuthError&&t.onAuthError(i)},style:{padding:"12px 24px",fontSize:"16px",backgroundColor:a?l.errorBg:"#dc2626",color:a?l.errorText:"white",border:a?`1px solid ${l.errorBorder}`:"none",borderRadius:"4px",cursor:"pointer"},children:"Dynamic Not Supported"})})}return null},sa=5*60*1e3;function co(t,n){const[s,r]=o.useState([]),[a,l]=o.useState(!1),i=o.useRef(n);i.current=n;const d=o.useRef(0),c=o.useRef(0),h=o.useCallback(async({forceDiscovery:u=!1}={})=>{if(!t){r([]);return}const f=++c.current,g=()=>f!==c.current;l(!0);try{const p=[],y=Gr(t);for(const U of y){if(g())return;try{const S=Q.getClientForChain(U.chainId);let C;if(U.isNative||V.isNativeToken(U.tokenAddress)?C=await en.getBalance(S,{address:t}):C=await en.readContract(S,{address:P.getAddress(U.tokenAddress),abi:Q.K,functionName:"balanceOf",args:[t]}),g())return;C>0n?p.push({...U,verifiedBalance:C,hasFullBalance:C>=BigInt(U.rawAmount)}):Date.now()-U.timestamp>15*60*1e3&&ws(t,U.chainId,U.tokenAddress)}catch(S){console.warn(`[usePendingDeposit] Failed to verify balance for ${U.tokenSymbol} on chain ${U.chainId}:`,S),p.push({...U,verifiedBalance:0n,hasFullBalance:!1})}}if(g())return;const v=i.current,x=Date.now(),k=u||x-d.current>=sa;if(v?.network&&k){d.current=x;const U=v.chainIds??V.getChainIdsByNetwork(v.network),S=new Set(p.map(I=>`${I.chainId}:${I.tokenAddress.toLowerCase()}`)),C=[];for(const I of U){const F=Q.getChainConfig(I);if(F?.supportedTokens)for(const W of F.supportedTokens){if(V.isNativeToken(W.address))continue;const E=`${I}:${W.address.toLowerCase()}`;S.has(E)||C.push((async()=>{try{const B=Q.getClientForChain(I),b=await en.readContract(B,{address:P.getAddress(W.address),abi:Q.K,functionName:"balanceOf",args:[t]});return b>0n?{chainId:I,tokenAddress:W.address,tokenSymbol:W.symbol,tokenDecimals:W.decimals,amount:P.formatUnits(b,W.decimals),rawAmount:b.toString(),embeddedWalletAddress:t,externalWalletAddress:"",timestamp:0,isNative:!1,verifiedBalance:b,hasFullBalance:!0}:null}catch{return null}})())}}if(C.length>0){const I=await Promise.allSettled(C);if(g())return;for(const F of I)F.status==="fulfilled"&&F.value&&p.push(F.value)}}g()||r(p)}catch(p){console.error("[usePendingDeposit] Verification error:",p),g()||r([])}finally{g()||l(!1)}},[t]);return o.useEffect(()=>{h({forceDiscovery:!0});const u=i.current?.pollIntervalMs??3e4;if(u<=0||!t)return()=>{c.current++};const f=setInterval(()=>{h({forceDiscovery:!1})},u),g=()=>h({forceDiscovery:!0});return window.addEventListener(ts,g),()=>{c.current++,window.removeEventListener(ts,g),clearInterval(f)}},[h,t]),{pendingDeposits:s,loading:a,refresh:()=>h({forceDiscovery:!0})}}function oa(t,n,s,r,a){return{address:n,symbol:s||"UNKNOWN",name:s||"Unknown Token",decimals:r||18,chainId:t,balance:0n,balanceFormatted:a?parseFloat(a):0,balanceUsd:0,isNative:V.isNativeToken(n)}}const ra=({isOpen:t,onClose:n,styles:s,depositBatches:r,allowedTokens:a,onDepositAmountChange:l,destinationChainId:i,destinationTokenAddress:d,onDepositExecute:c,depositActionLabel:h,airdrop:u=!1,sponsorGas:f=!1,escrowRecovery:g,skipTokenSelection:p=!1,onDepositSuccess:y,skipRecovery:v=!1})=>{const x=o.useContext(K.SpiceFlowProviderContext);if(!x)return e.jsx("div",{children:"Error: SpiceDeposit must be used within SpiceFlowProvider"});const k=(x.mode||"7702")!="7702",U=k,S=x.nativeChainId,C=x.network||"testnet",{dark:I,dk:F}=K.useSpiceBrand(s),W=!!g,E=()=>U?"connect-wallet":"provider-login",[B,b]=o.useState(E()),[R,$]=o.useState(null),[X,A]=o.useState(!1),O=pn(),{isReady:L,isAuthenticated:ne,actions:_}=O,j=un(),{address:oe}=ft.useAccount(),{externalAddress:he}=zn(),w=he??oe,z=!!w,{pendingDeposits:ie,loading:be,refresh:se}=co(j,{network:C,chainIds:x.supportedChainIds}),[we,ae]=o.useState(null),[Ae,Re]=o.useState(!1),[Se,je]=o.useState(null),[We,Ne]=o.useState(!1),[ve,ze]=o.useState("idle");o.useEffect(()=>{t&&!v&&!W&&!we&&!We&&ve==="idle"&&ne&&j&&z&&w&&!be&&ie.length>0&&B!=="recovery"&&B!=="deposit"&&b("recovery")},[t,v,W,ne,j,z,w,be,ie,B,we,We,ve]);const Qe=o.useCallback(H=>{const de={address:H.tokenAddress,symbol:H.tokenSymbol,name:H.tokenSymbol,decimals:H.tokenDecimals,chainId:H.chainId,balance:H.verifiedBalance,balanceFormatted:parseFloat(H.amount),balanceUsd:0,isNative:H.isNative};$(de),ae(H),b("deposit")},[]),Me=o.useCallback(()=>{Ne(!0),b(ne&&j&&z&&w?p?"deposit":"select-token":ne&&j?"connect-wallet":"provider-login")},[ne,j,z,w,p]),ge=o.useCallback(()=>{je(null),ze("awaiting-disconnect"),b("connect-wallet")},[]),$e=o.useCallback(async H=>{Re(!0),je(null);try{if(!j)throw new Error("Embedded wallet not available");const de=await _.getEthereumProvider(),ue=Q.getChainConfig(H.chainId);await de.request({method:"wallet_switchEthereumChain",params:[{chainId:`0x${H.chainId.toString(16)}`}]});const tt=Q.getClientForChain(H.chainId),ht=await en.getBalance(tt,{address:j}),Je=ue?.viemChain?.name||`chain ${H.chainId}`;if(ht===0n)throw new Error(`Your embedded wallet has no ETH on ${Je} to pay for gas. We recommend completing the deposit instead \u2014 it doesn't require gas.`);const mt=P.createWalletClient({account:j,transport:P.custom(de),chain:ue?.viemChain});let Le;H.isNative||V.isNativeToken(H.tokenAddress)?Le=await mt.sendTransaction({to:H.externalWalletAddress,value:H.verifiedBalance,chain:ue?.viemChain}):Le=await mt.sendTransaction({to:H.tokenAddress,data:P.encodeFunctionData({abi:Q.K,functionName:"transfer",args:[H.externalWalletAddress,H.verifiedBalance]}),chain:ue?.viemChain}),await tt.waitForTransactionReceipt({hash:Le,confirmations:1}),ws(H.embeddedWalletAddress,H.chainId,H.tokenAddress),se(),ie.length<=1&&b(E())}catch(de){const ue=de?.message||"Failed to return funds",tt=/insufficient funds for gas/i.test(ue);je(tt?"Not enough ETH in your embedded wallet to cover gas fees. Complete the deposit instead \u2014 it doesn't require gas.":ue)}finally{Re(!1)}},[_,j,ie,se]);o.useEffect(()=>{t||(ae(null),je(null),Re(!1),Ne(!1),ze("idle"))},[t]),o.useEffect(()=>{if(ve!=="idle"){if(ve==="awaiting-disconnect"){(!z||!w)&&ze("awaiting-reconnect");return}t&&!be&&ie.length>0&&ne&&j&&(ze("idle"),b("recovery"))}},[ve,z,w,t,be,ie,ne,j]),o.useEffect(()=>{!W||!t||(ne&&j?(A(!0),!R&&g?.chainId&&g?.tokenAddress&&$(oa(g.chainId,g.tokenAddress,g.tokenSymbol,g.tokenDecimals,g.amount)),b("deposit")):b("provider-login"))},[W,t,B,ne,j]);const{assets:q,loading:M}=bs({address:w,supportedChains:x.supportedChainIds,fetchBalances:ys,refreshInterval:t?5e3:0}),N=o.useCallback(()=>{A(!0),b(W?"deposit":"connect-wallet")},[W]),J=o.useCallback(async()=>{if((!z||!w)&&(await new Promise(H=>setTimeout(H,500)),!z||!w)){alert("Please connect your wallet first");return}b(p?"deposit":"select-token")},[z,w,p]),xe=o.useCallback(H=>{$(H),b("deposit")},[]),me=o.useCallback(()=>{if($(null),l?.(""),!w){b("connect-wallet");return}b("select-token")},[w,l]),G=o.useCallback(()=>{n()},[n]);if(o.useEffect(()=>{if(!t){const H=setTimeout(()=>{W||(b(E()),$(null)),A(!1)},300);return()=>clearTimeout(H)}},[t,W,g?.chainId]),o.useEffect(()=>{t&&B==="deposit"&&!R&&!W&&!we&&!p&&b("select-token")},[t,B,R,W,we,p]),o.useEffect(()=>{if(!U&&t&&B==="provider-login"&&L&&ne&&j&&!X){const H=setTimeout(()=>{A(!0),b("connect-wallet")},100);return()=>clearTimeout(H)}},[U,t,B,L,ne,j,X]),!t)return null;if(B==="recovery")return e.jsx(na,{isOpen:t,onClose:G,deposits:ie,onComplete:Qe,onCancel:$e,onSkip:Me,onChangeWallet:ge,isProcessing:Ae,error:Se,styles:s});if(B==="provider-login"&&!U)return e.jsx("div",{style:{position:"fixed",inset:0,backgroundColor:"rgba(0, 0, 0, 0.5)",display:"flex",alignItems:"center",justifyContent:"center",padding:"16px",zIndex:50},children:e.jsx("div",{style:{backgroundColor:I?F.cardBg:"white",borderRadius:"9px",padding:"32px 24px",maxWidth:"400px",width:"100%"},children:e.jsx(vs,{onAuthSuccess:N,autoTrigger:!0})})});if(B==="connect-wallet")return e.jsx(Zr,{isOpen:t,onClose:G,onContinue:J,requiredChainId:k?S:void 0,styles:s});if(B==="select-token")return w?e.jsx(Kr,{isOpen:t,onClose:G,onTokenSelect:xe,walletAddress:w,supportedChainIds:x.supportedChainIds,network:C,prefetchedAssets:M?null:q??null,styles:s,dark:I,allowedTokens:a}):(b("connect-wallet"),null);if(B==="deposit"){if(!R&&!p)return null;const H=!!we;return e.jsx(lo,{isOpen:t,onClose:G,supportedChains:R?[R.chainId]:x.supportedChainIds??[],styles:s,externalWalletAddress:w,depositBatches:H?void 0:r,allowedTokens:a,onDepositAmountChange:l,destinationChainId:i,destinationTokenAddress:d,onDepositExecute:c,depositActionLabel:h,nativeChainId:S,airdrop:u,sponsorGas:f,preSelectedAsset:R??void 0,escrowOnly:W||H,escrowTokenAddress:H?we.tokenAddress:g?.tokenAddress,escrowAmount:H?we.amount:g?.amount,escrowTokenDecimals:H?we.tokenDecimals:g?.tokenDecimals,escrowTokenSymbol:H?we.tokenSymbol:g?.tokenSymbol,onDepositSuccess:y,embeddedWalletAddress:j,onViewAllAssets:p?void 0:me})}return null},uo=t=>o.useContext(K.SpiceFlowProviderContext)?e.jsx(ra,{...t}):e.jsx("div",{children:"Error: SpiceDeposit must be used within SpiceFlowProvider"}),aa=({isOpen:t,onClose:n,onChainSelect:s,supportedChains:r,closeOnSelect:a=!0,styles:l})=>{const{theme:i,dark:d,primaryColor:c,dk:h}=K.useSpiceBrand(l),[u,f]=o.useState(""),[g,p]=o.useState(null),[y,v]=o.useState(null),[x,k]=o.useState(!1),[U,S]=o.useState(null),{switchChainAsync:C}=ft.useSwitchChain(),I=o.useMemo(()=>new Set(r||[]),[r]),F=o.useMemo(()=>{if(!r||r.length===0)return[];const b=[];return r.forEach((R,$)=>{if(typeof R!="number")return;const X=Q.getChainConfig(R);X&&b.push({id:R.toString(),name:X.displayName,icon:ln[R]||yn,chainId:R,verified:!0,order:$})}),b},[r]);o.useEffect(()=>{g&&!I.has(parseInt(g,10))&&p(null)},[g,I]);const W=o.useMemo(()=>F.filter(b=>b.name.toLowerCase().includes(u.toLowerCase())).sort((b,R)=>b.order-R.order),[F,u]),E=async()=>{if(!g)return;const b=parseInt(g,10);k(!0),S(null);try{await C({chainId:b}),s&&s(g),a&&n()}catch(R){console.error("Failed to switch chain:",R),S(Zt(R,"Failed to switch chain."))}finally{k(!1)}},B=!g||x;return e.jsxs(on,{isOpen:t,onClose:n,title:"Select Chain",styles:l,theme:i,dark:d,children:[e.jsx("div",{style:{padding:"24px 20px"},children:e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",backgroundColor:d?h.inputBg:"#FAFAFA",borderRadius:"4px",boxShadow:d?"none":"0 2px 4px rgba(0, 0, 0, 0.1)",padding:"10px 5px",border:d?`1px solid ${h.inputBorder}`:"1px solid #e5e7eb"},children:[e.jsx(Yn.Search,{style:{color:d?h.textSecondary:"#9ca3af"},size:24}),e.jsx("input",{type:"text",placeholder:"Search chain name, symbol or address",value:u,onChange:b=>f(b.target.value),style:{flex:1,backgroundColor:d?h.inputBg:"#FAFAFA",outline:"none",border:"none",color:d?h.textPrimary:"#374151",fontSize:"14px",fontWeight:"400"}}),e.jsx("div",{style:{display:"flex",alignItems:"center",gap:"2px",color:"#999",fontSize:"14px",fontWeight:500,flexShrink:0},children:e.jsx("div",{style:{padding:"5px 5px",borderRadius:"3px",fontSize:"13px",backgroundColor:d?h.cardBg:"#E9E9E9",color:d?h.textSecondary:"#485066"},children:"\u2318F"})}),e.jsx("button",{style:{color:d?h.textSecondary:"#9ca3af",fontSize:"20px",fontWeight:500,border:"none",background:"none",cursor:"pointer"}})]})}),e.jsx("div",{style:{padding:"0 32px 20px",display:"flex",flexDirection:"column",gap:"12px"},children:W.map(b=>{const R=g===b.id,$=y===b.id;return e.jsxs("button",{onClick:()=>p(b.id),onMouseEnter:()=>v(b.id),onMouseLeave:()=>v(null),style:{width:"100%",display:"flex",alignItems:"center",gap:"16px",padding:"8px",borderRadius:"8px",backgroundColor:R?d?`${c}15`:`${c}12`:"transparent",border:R?d?`1px solid ${c}66`:`1px solid ${c}88`:$?d?`1px solid ${c}44`:`1px solid ${c}66`:"1px solid transparent",cursor:"pointer",transition:"all 0.2s"},children:[e.jsx("div",{style:{width:"40px",height:"40px",borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"30px"},children:e.jsx("img",{src:b.icon,alt:b.name,style:{width:"100%",height:"100%",borderRadius:"50%"}})}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px",flex:1},children:[e.jsx("span",{style:{fontFamily:'"IBM Plex Mono", monospace',fontSize:"17px",fontWeight:500,letterSpacing:"0.4px",color:d?h.textPrimary:"#111827",textAlign:"left"},children:b.name}),b.verified&&e.jsx("img",{src:no,alt:"Verified",style:{width:"16px",height:"16px",filter:d?"brightness(0) invert(1)":"none"}})]})]},b.id)})}),e.jsx("div",{style:{padding:"0 25px 25px"},children:e.jsxs(Ge.Button,{variant:"outline",onClick:E,disabled:B,fullWidth:!0,theme:i,styles:l,dark:d,children:["SELECT",e.jsx(Yn.ChevronRight,{size:20})]})})]})},po=({title:t,icon:n,amount:s,children:r,defaultExpanded:a=!1})=>{const[l,i]=o.useState(a),{dark:d,primaryColor:c,dk:h}=K.useSpiceBrand(),u=f=>{f?.stopPropagation(),i(!l)};return e.jsxs("div",{style:{backgroundColor:d?h.cardBg:"#FAFAFA",borderRadius:"12px",padding:"12px 16px",border:d?`1px solid ${c}33`:"0.5px solid #939291",boxShadow:d?`0 0 15px ${c}22`:"4px 4px 0px 0px #E1E1E1",marginBottom:"12px"},children:[e.jsxs("div",{onClick:u,onKeyDown:f=>{(f.key==="Enter"||f.key===" ")&&(f.preventDefault(),u())},role:"button",tabIndex:0,style:{display:"flex",alignItems:"center",justifyContent:"space-between",cursor:"pointer",width:"100%"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px",flex:1,minWidth:0},children:[n&&e.jsx("img",{src:n,alt:t,style:{width:"20px",height:"20px",flexShrink:0},onError:f=>{const g=f.target;g.style.display="none"}}),e.jsx("span",{className:"ibm-plex-mono",style:{fontSize:"14px",fontWeight:500,fontFamily:'"IBM Plex Mono", monospace',color:d?"#ffffff":"#17171A",letterSpacing:"0.5px",textTransform:"uppercase",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:t})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",flexShrink:0},children:[e.jsx("span",{style:{fontSize:"18px",fontWeight:600,color:d?"#ffffff":"#262523",whiteSpace:"nowrap"},children:s}),e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",style:{transform:l?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.2s ease",flexShrink:0},children:e.jsx("path",{d:"M4 6L8 10L12 6",stroke:d?h.textSecondary:"#262523",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]})]}),l&&r&&e.jsx("div",{style:{marginTop:"16px",paddingTop:"16px",borderTop:d?`1px solid ${c}22`:"1px solid #D0D2D8"},children:r})]})},ia=t=>ln[t]||null,ss=({name:t,balance:n,icon:s,subtitle:r,networks:a,onClick:l})=>{const{dark:i,dk:d}=K.useSpiceBrand();return e.jsxs("div",{onClick:l,style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"12px 0",cursor:l?"pointer":"default",transition:"opacity 0.2s ease"},onMouseEnter:c=>{l&&(c.currentTarget.style.opacity="0.7")},onMouseLeave:c=>{c.currentTarget.style.opacity="1"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px"},children:[s&&e.jsx("div",{style:{width:"25px",height:"25px",borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",overflow:"hidden"},children:typeof s=="string"?e.jsx("img",{src:s,alt:t,style:{width:"100%",height:"100%",objectFit:"cover"},onError:c=>{console.warn(`Failed to load image: ${s}`);const h=c.target;h.style.display="none"}}):s}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"2px",flex:1},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[e.jsx("span",{style:{fontSize:"14px",fontWeight:600,color:i?"#ffffff":"#1A1A1A",fontFamily:'"IBM Plex Mono", monospace',textTransform:"uppercase",letterSpacing:"0.3px"},children:t}),t==="USDC"&&e.jsx("div",{style:{width:"16px",height:"16px",borderRadius:"50%",backgroundColor:"#ef4444",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},children:e.jsx("svg",{style:{width:"12px",height:"12px",color:"white"},fill:"currentColor",viewBox:"0 0 20 20",children:e.jsx("path",{fillRule:"evenodd",d:"M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z",clipRule:"evenodd"})})}),a&&a.length>0&&e.jsx("div",{style:{display:"flex",alignItems:"center",gap:"4px"},children:a.map(c=>{const h=ia(c);return h?e.jsx("img",{src:h,alt:`Chain ${c}`,style:{width:"16px",height:"16px",borderRadius:"50%",objectFit:"cover"}},c):e.jsx(Un,{chainId:c,size:16},c)})})]}),r&&e.jsx("span",{style:{fontSize:"11px",fontWeight:400,color:i?d.textSecondary:"#6B7280",fontFamily:'"IBM Plex Mono", monospace',textTransform:"none"},children:r})]})]}),e.jsx("span",{style:{fontSize:"14px",fontWeight:600,color:i?"#ffffff":"#1A1A1A",fontFamily:'"IBM Plex Mono", monospace'},children:n})]})},ho=({isOpen:t,position:n,title:s,items:r,selectedId:a,onSelect:l,portalAttribute:i})=>{const{dark:d,primaryColor:c}=K.useSpiceBrand(),[h,u]=o.useState(null),[f,g]=o.useState(!1);return o.useEffect(()=>{if(!t){g(!1);return}const p=requestAnimationFrame(()=>{requestAnimationFrame(()=>g(!0))});return()=>cancelAnimationFrame(p)},[t]),!t||!n||r.length===0?null:Zn.createPortal(e.jsxs("div",{[`data-${i}-popover`]:"true",style:{position:"fixed",top:`${n.top}px`,left:`${n.left}px`,opacity:f?1:0,transform:f?"scale(1) translateY(0)":"scale(0.96) translateY(-6px)",transition:"opacity 0.2s ease-out, transform 0.2s ease-out",backgroundColor:d?"rgba(20,20,20,0.75)":"rgba(255,255,255,0.82)",backdropFilter:"blur(20px)",WebkitBackdropFilter:"blur(20px)",borderRadius:"14px",padding:"10px 12px",boxShadow:"0 20px 60px rgba(0,0,0,0.18), 0 4px 16px rgba(0,0,0,0.08)",border:`1px solid ${d?"rgba(255,255,255,0.18)":"rgba(0,0,0,0.18)"}`,minWidth:"220px",zIndex:9999,fontFamily:'"IBM Plex Mono", monospace'},children:[e.jsx("div",{style:{marginBottom:"6px"},children:e.jsx("span",{style:{fontSize:"11px",fontWeight:500,color:d?"#fff":"#0e0d0b",textTransform:"uppercase",letterSpacing:"1px"},children:s})}),e.jsx("div",{style:{borderBottom:`1.5px dashed ${d?"rgba(255,255,255,0.15)":"rgba(0,0,0,0.12)"}`,marginBottom:"6px"}}),e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"2px"},children:r.map(p=>{const y=a===p.id,v=h===p.id;return e.jsxs("button",{onClick:x=>{x.stopPropagation(),l(p.id)},onMouseEnter:()=>u(p.id),onMouseLeave:()=>u(null),style:{display:"flex",alignItems:"center",gap:"8px",padding:"6px 4px",borderRadius:"8px",border:"none",cursor:"pointer",backgroundColor:y?d?"rgba(255,255,255,0.1)":"rgba(0,0,0,0.06)":v?d?"rgba(255,255,255,0.07)":"rgba(0,0,0,0.04)":"transparent",transition:"background-color 0.15s",width:"100%",fontFamily:'"IBM Plex Mono", monospace'},children:[p.icon&&e.jsx("img",{src:p.icon,alt:p.label,style:{width:"22px",height:"22px",borderRadius:"50%"}}),e.jsx("span",{style:{fontSize:"13px",fontWeight:y?700:500,textTransform:"uppercase",color:d?"#fff":"#0e0d0b",letterSpacing:"0.5px",flex:1,textAlign:"left"},children:p.label}),p.detail&&e.jsx("span",{style:{fontSize:"11px",fontWeight:500,color:d?"rgba(255,255,255,0.5)":"rgba(0,0,0,0.4)"},children:p.detail}),y&&e.jsx("svg",{width:"14",height:"14",viewBox:"0 0 16 16",fill:"none",style:{flexShrink:0},children:e.jsx("path",{d:"M3 8L6.5 11.5L13 5",stroke:c,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]},p.id)})})]}),document.body)},la=t=>new Promise(n=>setTimeout(n,t));function Pn(t){return V.isSpicenetChainId(t.chainId)}function ca({chainBatches:t,tokenAddress:n,tokenTransferAmount:s,useCustomTransfers:r}){if(!(t.some(Pn)||!(r?t.some(a=>Pn(a)?!1:(a.tokenTransfers??[]).some(l=>l.from==="escrow"&&BigInt(l.amount??0)>0n)):s>0n)))throw new K.SpiceflowError("INVALID_PARAMS","Payouts funded from Spice balance require a Spicenet funding batch before the destination chain batch. Deposits into Spice balance and gas-only actions do not need one.",{tokenAddress:n,tokenTransferAmount:s.toString(),useCustomTransfers:!!r})}function da(t,n,s,r){n.forEach((a,l)=>{if(!a.to||!a.from||!a.token||a.amount===void 0)throw new K.SpiceflowError("INVALID_TOKEN_TRANSFER",`tokenTransfers[${l}] on chain ${t} is missing required fields (to/from/token/amount). This usually means the embedded wallet wasn't ready when the intent was built \u2014 please retry.`,{chainId:t,transferIndex:l,transfer:{from:a.from,to:a.to,token:a.token,amount:a.amount?.toString()},signingAddress:s,useCustomTransfers:r})})}function fo({user:t,chainBatches:n,tokenAddress:s,tokenTransferAmount:r,exp:a,signature:l,chainAuthorizations:i,useCustomTransfers:d}){const c=V.hashChainBatches(n),h=n.filter(u=>!Pn(u)).length;if(ca({chainBatches:n,tokenAddress:s,tokenTransferAmount:r,useCustomTransfers:d}),!d&&r>0n&&h>1)throw new K.SpiceflowError("INVALID_PARAMS","Multiple non-Spicenet batches require explicit tokenTransfers. Pass useCustomTransfers with per-batch transfers instead of relying on the default escrow payout injection.",{nonSpicenetBatchCount:h,tokenAddress:s,tokenTransferAmount:r.toString()});return{user:t,...i?{chainAuthorizations:i}:{},intents:[{mode:"7702",signatureType:"ecdsa",signature:l,nbf:0,exp:a,chainBatches:c.map((u,f)=>{const g=n[f],p=Pn(g)?[]:d?g.tokenTransfers??[]:r>0n?[{from:"escrow",to:t,token:s,amount:r}]:[];return da(Number(u.chainId),p,t,d),{hash:u.hash,chainId:Number(u.chainId),tokenTransfers:p,calls:u.calls}})}]}}let ks=!1;function os(){const{address:t,isConnected:n,isAuthenticated:s,actions:r}=pn(),[a,l]=o.useState(null),i=o.useRef(r),d=o.useRef(new Map);i.current=r;const c=o.useCallback(async(f,g,p)=>{const y=[...new Set(f.filter(x=>!Pn(x)).map(x=>x.chainId))],v=[];for(const x of y){const k=Q.getClientForChain(x),U=Q.getDelegateContractAddress(x),S=Number(await V.getAccountNonce(g,k)),C=[g.toLowerCase(),x,U.toLowerCase(),S].join(":"),I=d.current.get(C);if(I){v.push(I);continue}if(p?.aborted)throw new K.SpiceflowError("ABORT","Gasless transaction aborted");const F=await i.current.signAuthorization({contractAddress:U,chainId:x,nonce:S}),W={r:F.r,s:F.s,yParity:F.yParity,address:F.address??U,chainId:Number(F.chainId??x),nonce:Number(F.nonce??S)};d.current.set(C,W),v.push(W)}return v},[]),h=o.useCallback(async(f,g,p,y,v,x)=>{const k=(U,S,C)=>{y?.({step:U,message:S,...C})};if(ks)throw new K.SpiceflowError("CONCURRENT_EXECUTION","A gasless transaction is already in progress. Please wait.");ks=!0;try{if(!t)throw new K.SpiceflowError("WALLET_DISCONNECTED","No wallet connected. Please log in first.");const U=x?.userOverride||t;if(x?.depositToEscrow){const{token:j,amount:oe}=x.depositToEscrow,he=P.encodeFunctionData({abi:Q.K,functionName:"transfer",args:[V.ESCROW_ADDRESS,oe]}),w=f[f.length-1];w.calls=[...w.calls,{to:j,value:0n,data:he}]}k("signing-delegation","Sign delegation in your wallet...");const S=await c(f,U,v);if(v?.aborted)throw new K.SpiceflowError("ABORT","Gasless transaction aborted");k("signing-intent","Sign the intent in your wallet...");const C=BigInt(Math.floor(Date.now()/1e3)+3600),I=V.hashChainBatches(f).map(j=>j.hash),F=P.keccak256(P.encodeAbiParameters([{type:"string"},{type:"uint256"},{type:"uint256"},{type:"bytes32[]"}],["ecdsa",0n,C,I])),W=await i.current.signMessage({raw:F}),E=typeof W=="string"?W:W.signature;if(!E)throw new K.SpiceflowError("SIGNATURE_FAILED","Failed to sign intent authorization. The wallet returned an empty signature.");if(v?.aborted)throw new K.SpiceflowError("ABORT","Gasless transaction aborted");k("submitting","Submitting to relayer...");const B=fo({user:U,chainBatches:f,tokenAddress:g,tokenTransferAmount:p,exp:Number(C),signature:E,chainAuthorizations:S,useCustomTransfers:x?.useCustomTransfers}),b=await K.relayerService.estimateActionFees(B);l(b);const R=await K.relayerService.createAction(B),[$,X]=R.intentIds[0].split("/"),A=parseInt(X||"0",10),O=`${$}/${A}`;k("executing","Executing on chain..."),k("executing","Executing on chain...",{actionId:$,intentId:O,intentIndex:A,totalSteps:f.length});const L=f.length;let ne;const _=async j=>{let oe="pending",he,w=0;await(async()=>{w++;try{const we=await K.relayerService.executeStep($,A,j,{action:"execute"});we.transactionHash&&(he=we.transactionHash);const ae=await K.relayerService.checkStepStatus(O,j);ae.data.status&&(oe=ae.data.status,ae.data.transactionHash&&(he=ae.data.transactionHash))}catch(we){console.warn(`[GaslessExecution] executeStep ${j} attempt ${w} error (will poll):`,we.message)}})();let z=0;const ie=120;let be=0;const se=5;for(;oe!=="success"&&oe!=="completed"&&z<ie;){const we=Math.min(1e3+z*1e3,5e3);if(await la(we),z++,v?.aborted)throw new K.SpiceflowError("ABORT","Gasless transaction aborted");try{const ae=await K.relayerService.checkStepStatus(O,j);be=0,oe=ae.data.status;const Ae=ae.data.transactionHash;if(Ae&&(he=Ae),oe==="reverted"||oe==="error")throw new K.SpiceflowError("ON_CHAIN_REVERT",`Transaction ${oe}. The transaction was rejected on-chain. This may be due to insufficient balance, price changes, or health factor constraints. Please verify your positions and try again.`,{status:oe,txHash:he,actionId:$,intentId:O,stepId:j,chainId:f[j]?.chainId});k("executing",oe==="executing"?"Transaction executing...":oe==="submitted"?"Transaction submitted...":oe==="created"?"Waiting for relayer...":"Waiting for solver...",{txHash:he,actionId:$,intentId:O,intentIndex:A,totalSteps:L})}catch(ae){if(ae.name==="AbortError"||ae instanceof K.SpiceflowError&&(ae.code==="ABORT"||ae.code==="ON_CHAIN_REVERT")||ae.message?.includes("reverted")||ae.message?.includes("rejected on-chain"))throw ae;if(be++,be>=se)throw new K.SpiceflowError("POLLING_CONSECUTIVE_FAILURES",`Action not found after ${se} consecutive poll failures. This may indicate a relayer issue. Action ID: ${$}`,{actionId:$,intentId:O,stepId:j,pollAttempts:z,consecutiveErrors:be,lastError:ae?.message});console.warn(`[GaslessExecution] Poll step ${j} attempt ${z} error:`,ae.message)}}if(oe!=="success"&&oe!=="completed")throw new K.SpiceflowError("POLLING_EXHAUSTED",`Transaction is still processing (status: ${oe}). This doesn't mean it failed \u2014 the solver may still complete it. Check your positions in a few minutes, or try refreshing the page.`,{actionId:$,intentId:O,stepId:j,lastStatus:oe,pollAttempts:z,maxPolls:ie,txHash:he});he&&(ne=he)};for(let j=0;j<L;j++)await _(j);return k("success","Transaction successful!",{txHash:ne,actionId:$,intentId:O,intentIndex:A,totalSteps:L}),ne||$}catch(U){throw console.error("[GaslessExecution] Error:",U),k("error",U.message||"Transaction failed",{error:U.message}),U}finally{ks=!1}},[t,s,c]),u=o.useCallback(async(f,g,p,y)=>{if(!t)throw new K.SpiceflowError("WALLET_DISCONNECTED","No wallet connected. Please log in first.");const v=f.map((C,I)=>{const F={...C,calls:[...C.calls]};if(y?.depositToEscrow&&I===f.length-1){const W=P.encodeFunctionData({abi:Q.K,functionName:"transfer",args:[V.ESCROW_ADDRESS,y.depositToEscrow.amount]});F.calls=[...F.calls,{to:y.depositToEscrow.token,value:0n,data:W}]}return F}),x=y?.userOverride||t,k=y?.signAuthorizationsForEstimate?await c(v,x):void 0,U=fo({user:x,chainBatches:v,tokenAddress:g,tokenTransferAmount:p,exp:Math.floor(Date.now()/1e3)+3600,signature:"0x00",chainAuthorizations:k,useCustomTransfers:y?.useCustomTransfers}),S=await K.relayerService.estimateActionFees(U);return l(S),S},[t,c]);return{executeGasless:h,estimateGasless:u,lastFeeEstimate:a,hasEmbeddedWallet:n&&s}}function xo(t){const n=new Set(V.getEquivalentAddresses(t).map(s=>s.toLowerCase()));return n.add(t.toLowerCase()),n}const ua=["USDC","USDT","WETH","WBTC"];function Ss(t,n){const s=Q.getChainConfig(n);if(!s)return;if(s.nativeCurrency.symbol.toUpperCase()===t.toUpperCase())return{address:V.ZERO_ADDRESS,symbol:s.nativeCurrency.symbol,decimals:s.nativeCurrency.decimals,chainId:n};const r=s.supportedTokens?.find(a=>a.symbol.toUpperCase()===t.toUpperCase());if(r)return{address:r.address.toLowerCase(),symbol:r.symbol,decimals:r.decimals,chainId:n}}function wn(t,n,s){const r=Q.getChainConfig(n);if(!r)return;if(s!==void 0){const i=Qs(t,s,n);if(i)return{address:i.address.toLowerCase(),symbol:i.symbol,decimals:i.decimals,chainId:n}}const a=xo(t);if([...a].some(i=>V.isNativeToken(i)))return{address:V.ZERO_ADDRESS,symbol:r.nativeCurrency.symbol,decimals:r.nativeCurrency.decimals,chainId:n};const l=r.supportedTokens?.find(i=>a.has(i.address.toLowerCase()));if(l)return{address:l.address.toLowerCase(),symbol:l.symbol,decimals:l.decimals,chainId:n}}function go(t){const{sourceAsset:n,outputAsset:s,sourceChainId:r,destinationChainId:a,intermediaryCandidates:l=ua}=t;if($n(n,s))return{strategy:"direct",sourceAsset:n,outputAsset:s,sourceChainId:r,destinationChainId:a,summary:`${n.symbol} fronted directly`};if(wn(n.address,a,r))return{strategy:"direct",sourceAsset:n,outputAsset:s,sourceChainId:r,destinationChainId:a,summary:`${n.symbol} fronted on destination, swapped to ${s.symbol}`};if(wn(s.address,r,a))return{strategy:"source-swap",sourceAsset:n,outputAsset:s,sourceChainId:r,destinationChainId:a,summary:`${n.symbol} \u2192 ${s.symbol} on source chain, then fronted`};for(const i of l){const d=Ss(i,r);if(!d||$n(n,d)||$n(s,d))continue;const c=Ss(i,a);if(c&&$n(d,c))return{strategy:"intermediary",sourceAsset:n,outputAsset:s,intermediaryAsset:c,sourceChainId:r,destinationChainId:a,summary:`${n.symbol} \u2192 ${i} on source, fronted, then ${i} \u2192 ${s.symbol} on destination`}}throw new K.SpiceflowError("ROUTE_STRATEGY_ERROR",`No viable cross-chain route found from ${n.symbol} (chain ${r}) to ${s.symbol} (chain ${a}). No intermediary asset is available on both chains.`,{sourceAsset:n.symbol,outputAsset:s.symbol,sourceChainId:r,destinationChainId:a,candidatesChecked:l})}async function mo(t){const{route:n,sourceAmount:s,userAddress:r,registry:a,actionCalls:l,slippage:i}=t;async function d(c,h,u,f){const g=a.getVenueForChain(c);if(!g)throw new K.SpiceflowError("NO_VENUE_FOR_CHAIN",`No liquidity venue configured for chain ${c}. Cannot resolve swap ${h} \u2192 ${u}.`,{chainId:c,tokenIn:h,tokenOut:u,amountIn:f.toString()});const p=await g.resolve({type:"swap",tokenIn:h,tokenOut:u,amountIn:f,maxSlippage:i},c,r);if(!p)throw new K.SpiceflowError("NO_LIQUIDITY",`${g.name} returned no quote for ${h} \u2192 ${u} on chain ${c}. No liquidity available for this pair.`,{venue:g.name,chainId:c,tokenIn:h,tokenOut:u,amountIn:f.toString()});return p}switch(n.strategy){case"direct":{const c=wn(n.sourceAsset.address,n.destinationChainId,n.sourceChainId)||n.sourceAsset;if(xo(c.address).has(n.outputAsset.address.toLowerCase()))return{chainBatches:[{chainId:n.destinationChainId,calls:l}],solverFrontToken:c,solverFrontAmount:s,resolvedSwaps:{}};const h=await d(n.destinationChainId,c.address,n.outputAsset.address,s);return{chainBatches:[{chainId:n.destinationChainId,calls:[...h.calls,...l]}],solverFrontToken:c,solverFrontAmount:s,resolvedSwaps:{destinationSwap:h}}}case"source-swap":{const c=wn(n.outputAsset.address,n.sourceChainId,n.destinationChainId);if(!c)throw new K.SpiceflowError("ROUTE_TOKEN_NOT_FOUND",`Output asset ${n.outputAsset.symbol} (${n.outputAsset.address}) not found on source chain ${n.sourceChainId}`,{token:n.outputAsset.symbol,address:n.outputAsset.address,chainId:n.sourceChainId,side:"source"});const h=wn(n.outputAsset.address,n.destinationChainId,n.destinationChainId);if(!h)throw new K.SpiceflowError("ROUTE_TOKEN_NOT_FOUND",`Output asset ${n.outputAsset.symbol} (${n.outputAsset.address}) not found on destination chain ${n.destinationChainId}`,{token:n.outputAsset.symbol,address:n.outputAsset.address,chainId:n.destinationChainId,side:"destination"});const u=await d(n.sourceChainId,n.sourceAsset.address,c.address,s);return{chainBatches:[{chainId:n.sourceChainId,calls:u.calls},{chainId:n.destinationChainId,calls:l}],solverFrontToken:h,solverFrontAmount:u.amountOutMinimum,resolvedSwaps:{sourceSwap:u}}}case"intermediary":{if(!n.intermediaryAsset)throw new K.SpiceflowError("ROUTE_STRATEGY_ERROR","Intermediary strategy requires an intermediary asset but none was provided in the route plan.",{strategy:n.strategy});const c=wn(n.intermediaryAsset.address,n.sourceChainId,n.destinationChainId);if(!c)throw new K.SpiceflowError("ROUTE_TOKEN_NOT_FOUND",`Intermediary ${n.intermediaryAsset.symbol} (${n.intermediaryAsset.address}) not found on source chain ${n.sourceChainId}`,{token:n.intermediaryAsset.symbol,address:n.intermediaryAsset.address,chainId:n.sourceChainId,side:"source"});const h=await d(n.sourceChainId,n.sourceAsset.address,c.address,s),u=await d(n.destinationChainId,n.intermediaryAsset.address,n.outputAsset.address,h.amountOutMinimum);return{chainBatches:[{chainId:n.sourceChainId,calls:h.calls},{chainId:n.destinationChainId,calls:[...u.calls,...l]}],solverFrontToken:n.intermediaryAsset,solverFrontAmount:h.amountOutMinimum,resolvedSwaps:{sourceSwap:h,destinationSwap:u}}}default:throw new K.SpiceflowError("ROUTE_STRATEGY_ERROR",`Unknown route strategy: ${n.strategy}`,{strategy:n.strategy})}}const pa={usdc:1,"usdc.e":1,usdt:1,dai:1,ctusd:1,wbtc:1e5,wcbtc:1e5,cbtc:1e5};function yo(t,n){return P.formatUnits(t,n).replace(/(\.\d*?[1-9])0+$|\.0+$/,"$1")}function bo(t,n){return!t||!n?!1:t.toLowerCase()===n.toLowerCase()}function ha(t,n,s){return n===s?t:n<s?t*10n**BigInt(s-n):t/10n**BigInt(n-s)}function Co(t,n){const s=n?pa[n.trim().toLowerCase()]??0:0,r=t*s;return r<=0?"$0":r>=1?`$${r.toFixed(3).replace(/0+$/,"").replace(/\.$/,"")}`:`$${r.toFixed(4).replace(/0+$/,"").replace(/\.$/,"")}`}const fa=({isOpen:t,onClose:n,styles:s,onWithdrawExecute:r,withdrawActionLabel:a,onWithdrawSuccess:l,onWithdrawError:i,autoCloseDelay:d,supportedChains:c,availableTokens:h,buildSpicenetBatch:u})=>{const f=o.useContext(K.SpiceFlowProviderContext);if(!f)return e.jsx("div",{children:"Error: SpiceWithdraw must be used within SpiceFlowProvider"});const g=f.mode||"7702",p=g==="presign"||g==="ondemand",y=!0,{theme:v,dark:x,dk:k}=K.useSpiceBrand(s),U=f.network,S=()=>p?"select":"provider-login",[C,I]=o.useState(S()),[F,W]=o.useState(!1),[E,B]=o.useState(null),[b,R]=o.useState(null),[$,X]=o.useState(""),[A,O]=o.useState(!1),[L,ne]=o.useState(!1),[_,j]=o.useState(!1),[oe,he]=o.useState(!1),[w,z]=o.useState(""),[ie,be]=o.useState(!0),se=o.useRef(null),we=o.useRef(null),ae=o.useRef(null),Ae=o.useRef(null),[Re,Se]=o.useState(null),[je,We]=o.useState(null),[Ne,ve]=o.useState(null),ze=pn(),{isReady:Qe,isAuthenticated:Me,address:ge}=ze,$e=un(),{address:q,chainId:M}=ft.useAccount(),[N,J]=o.useState(!1),[xe,me]=o.useState(null),[G,H]=o.useState(null),de=o.useRef(null),{executeGasless:ue,estimateGasless:tt}=os(),[ht,Je]=o.useState(null),[mt,Le]=o.useState(!1),[At,yt]=o.useState(null),{assets:Pe,loading:lt}=An({address:$e,enabled:!!$e,refetchInterval:3e4}),_e=o.useMemo(()=>[...new Set([...c??[],...Object.keys(h??{}).map(Number),...(Pe||[]).map(Y=>Y.chainId),...(Pe||[]).flatMap(Y=>Object.keys(Y.chainTokens??{}).map(te=>{const[,Te]=te.split(":"),He=Number(Te);return Number.isFinite(He)?He:null}).filter(te=>te!==null))])].filter(Y=>Q.getChainConfig(Y)?.network===U),[c,h,Pe,U]),Ot=o.useMemo(()=>{if(h)return h;const Y={};for(const te of Pe||[]){const Te=Object.entries(te.chainTokens??{});if(Te.length>0){for(const[He,at]of Te){const[bt,Ct,Wt]=He.split(":");if(bt!=="evm"||!Ct||!Wt)continue;const Ke=Number(Ct);if(!Number.isFinite(Ke))continue;const Lt=Wt.startsWith("0x")?Wt.toLowerCase():`0x${Wt.toLowerCase()}`,dt=Q.getChainConfig(Ke)?.supportedTokens?.find(nt=>nt.address.toLowerCase()===Lt.toLowerCase());Y[Ke]||(Y[Ke]=[]),Y[Ke].find(nt=>nt.address.toLowerCase()===Lt.toLowerCase())||Y[Ke].push({address:Lt,symbol:dt?.symbol||at?.name||te.symbol,name:dt?.name||at?.name||te.displayName||te.name||te.symbol,decimals:dt?.decimals??at?.decimals??te.decimals,logoURI:dt?.logo||te.logoURI})}continue}Y[te.chainId]||(Y[te.chainId]=[]),Y[te.chainId].find(He=>He.address.toLowerCase()===te.address.toLowerCase())||Y[te.chainId].push({address:te.address,symbol:te.symbol,name:te.displayName||te.name||te.symbol,decimals:te.decimals,logoURI:te.logoURI})}return Y},[h,Pe]),Qt=o.useCallback((Y,te)=>{if(!Y||!te)return null;const Te=Jn(Y,te),He=Object.entries(Y.chainTokens??{}).flatMap(([dt,nt])=>{const vt=Gn(dt);return vt?.chainId===te?[{parsed:vt,detail:nt}]:[]}),at=Ot?.[te]||[],bt=dt=>at.find(nt=>bo(nt.address,dt))??null,Ct=dt=>{const nt=He.find(({parsed:vt})=>bo(vt.address,dt));return nt?{address:nt.parsed.address,symbol:Y.symbol,name:nt.detail?.name||Y.displayName||Y.name||Y.symbol,decimals:nt.detail?.decimals??Y.decimals,logoURI:Y.logoURI}:null};for(const dt of Te){const nt=bt(dt);if(nt)return nt;const vt=Ct(dt);if(vt)return vt}const Wt=bn(Y,te);if(Wt){const dt=bt(Wt);if(dt)return dt;const nt=Ct(Wt);if(nt)return nt}const Ke=wn(Y.address,te,Y.chainId);return Ke?bt(Ke.address)||(at.length>0?null:{address:Ke.address,symbol:Ke.symbol||Y.symbol,name:Y.displayName||Y.name||Y.symbol,decimals:Ke.decimals??Y.decimals,logoURI:Y.logoURI}):null},[Ot]),ct=o.useMemo(()=>{if(!E)return[];const Y=Object.keys(E.chainTokens??{}).map(te=>Gn(te)?.chainId??null).filter(te=>te!==null);return Array.from(new Set([...Y,E.chainId,..._e].filter(Number.isFinite))).filter(te=>Q.getChainConfig(te)?.network===U&&Qt(E,te)!==null)},[E,_e,Qt,U]),Xt=o.useMemo(()=>{if(!E||typeof window>"u")return null;const Y=`spiceflow:withdraw-chain:${E.receiptTokenId||E.address.toLowerCase()}`,te=window.localStorage.getItem(Y),Te=te?Number(te):null;return Te!==null&&Number.isFinite(Te)&&ct.includes(Te)?Te:null},[E,ct]),Rt=o.useMemo(()=>E?Xt!==null?Xt:M&&ct.includes(M)?M:E.chainId&&ct.includes(E.chainId)?E.chainId:ct[0]??_e[0]??null:_e[0]??null,[E,Xt,M,ct,_e]),Ue=o.useMemo(()=>Qt(E,b),[Qt,E,b]);o.useEffect(()=>{!Pe?.length||E||B(Pe[0])},[y,Pe,E]),o.useEffect(()=>{!E||(b===null||!ct.includes(b))&&R(Rt)},[y,E,b,Rt,ct]),o.useEffect(()=>{if(!A&&!L&&!_)return;const Y=te=>{const Te=te.target;A&&!se.current?.contains(Te)&&!we.current?.contains(Te)&&!Te?.closest?.("[data-network-popover]")&&O(!1),L&&!ae.current?.contains(Te)&&!Te?.closest?.("[data-token-popover]")&&ne(!1),_&&!Ae.current?.contains(Te)&&!Te?.closest?.("[data-balance-trigger]")&&j(!1)};return document.addEventListener("mousedown",Y),()=>document.removeEventListener("mousedown",Y)},[A,L,_]);const Et=o.useCallback(Y=>{if(!Y||ct.length<=1)return;const te=Y.getBoundingClientRect();Se({top:te.top-10,left:te.right-90}),O(Te=>!Te)},[ct.length]);o.useEffect(()=>{if(!E||b===null||typeof window>"u")return;const Y=`spiceflow:withdraw-chain:${E.receiptTokenId||E.address.toLowerCase()}`;window.localStorage.setItem(Y,String(b))},[E,b]);const xt=oe&&w&&P.isAddress(w)?w:q||$e,Mt=E?.balanceFormatted??0,rn=o.useCallback(Y=>{if(!Y)return;const te=Y.getBoundingClientRect();ve({top:te.bottom+8,left:te.right-220}),j(!0)},[]),Ut=E?.displaySymbol||E?.receiptTokenName||E?.symbol||"spiceUSDC",Dt=E?.displayChainName||"Spicenet",et=ds,tn=ds,jt=E?.receiptTokenDecimals??E?.decimals,Ht=o.useMemo(()=>{if(!Ue||!jt)return 0n;try{return P.parseUnits($||"0",jt)}catch{return 0n}},[$,Ue,jt]),Vt=o.useMemo(()=>!Ue||!jt?0n:ha(Ht,jt,Ue.decimals),[Ue,jt,Ht]),Bt=o.useMemo(()=>!ht||ht<=0n?Vt:ht>=Vt?0n:Vt-ht,[ht,Vt]),Oe=o.useMemo(()=>{if(!b||!Ue)return[];if(Ht===0n||Vt===0n||!xt)return[];const Y={chainId:b,calls:[],tokenTransfers:[{from:"escrow",to:xt,token:Ue.address,amount:Vt}]};if(!u)return[Y];const te=u({destinationChainId:b,deliveryToken:Ue.address,deliveryAmount:Vt,deliveryRecipient:xt});return te?[te,Y]:[Y]},[y,b,Ue,Ht,Vt,xt,u]);o.useEffect(()=>{let Y=!1;if(!t||p||!Ue||Ht===0n){Je(null),yt(null),Le(!1);return}if(Oe.length===0){Je(null),Le(!0);return}const te=async()=>{Le(!0),yt(null);try{const He=await tt(Oe,Ue.address,0n,{useCustomTransfers:!0});if(Y)return;const at=He.intents[0]?.batches[0];if(!at){Je(null),yt("No gas fee estimate was returned for this withdraw.");return}Je(BigInt(at.feeBreakdown.spicenetFee)+BigInt(at.feeBreakdown.gasFee))}catch(He){if(Y)return;Je(null),yt(He instanceof Error?He.message:"Failed to estimate gas fee")}finally{Y||Le(!1)}};te();const Te=window.setInterval(()=>{te()},8e3);return()=>{Y=!0,window.clearInterval(Te)}},[t,p,Oe,Ue,tt,Ht]);const rt=o.useCallback(()=>{W(!0),I("select")},[y]),ot=o.useCallback(()=>{n()},[n]),Nt=o.useCallback(async()=>{if(!(Oe.length===0||!ge||!xt)){J(!0),me(null),H(null),de.current=null;try{if(p&&r)await r($);else{if(!p&&!Oe.some(te=>V.isSpicenetChainId(te.chainId)))throw new Error("Spice withdrawals must include a Spicenet funding batch before the destination chain batch.");const Y=Ue?.address||"";await ue(Oe,Y,0n,te=>{te.actionId&&te.intentId&&typeof te.intentIndex=="number"&&typeof te.totalSteps=="number"&&(de.current={actionId:te.actionId,intentId:te.intentId,intentIndex:te.intentIndex,totalSteps:te.totalSteps}),H(te)},void 0,{useCustomTransfers:!0})}window.dispatchEvent(new CustomEvent("withdraw-completed")),l?.({token:Ue?.symbol||"",amount:$,chainId:b})}catch(Y){const te=Y instanceof Error?Y.message:"Withdraw failed";me(te),i?.(te)}finally{J(!1)}}},[Oe,ge,xt,ue,Ue,$,b,l,i,p,r]),it=o.useCallback(async()=>{const Y=de.current;if(!Y){H(null),await Nt();return}J(!0),me(null),H({step:"executing",message:"Resuming existing action...",actionId:Y.actionId,intentId:Y.intentId,intentIndex:Y.intentIndex,totalSteps:Y.totalSteps});try{let te=Y.totalSteps;for(let Te=0;Te<Y.totalSteps;Te++)if((await K.relayerService.checkStepStatus(Y.intentId,Te)).data.status!=="success"){te=Te;break}if(te>=Y.totalSteps)H(Te=>({...Te||{step:"success",message:"Transaction successful!",actionId:Y.actionId,intentId:Y.intentId,intentIndex:Y.intentIndex,totalSteps:Y.totalSteps},step:"success",message:"Transaction successful!"}));else for(let Te=te;Te<Y.totalSteps;Te++){let He="pending",at;try{const bt=await K.relayerService.executeStep(Y.actionId,Y.intentIndex,Te,{action:"execute"});bt.transactionHash&&(at=bt.transactionHash)}catch{}for(let bt=0;bt<120;bt++){await new Promise(Wt=>setTimeout(Wt,Math.min(1e3+bt*1e3,5e3)));const Ct=await K.relayerService.checkStepStatus(Y.intentId,Te);if(He=Ct.data.status,Ct.data.transactionHash&&(at=Ct.data.transactionHash),He==="success"){H({step:Te===Y.totalSteps-1?"success":"executing",message:Te===Y.totalSteps-1?"Transaction successful!":"Executing remaining steps...",txHash:at,actionId:Y.actionId,intentId:Y.intentId,intentIndex:Y.intentIndex,totalSteps:Y.totalSteps});break}if(He==="reverted"||He==="error")throw new Error("Withdraw failed");H({step:"executing",message:"Executing remaining steps...",txHash:at,actionId:Y.actionId,intentId:Y.intentId,intentIndex:Y.intentIndex,totalSteps:Y.totalSteps})}if(He!=="success")throw new Error("Withdraw is still processing")}window.dispatchEvent(new CustomEvent("withdraw-completed")),l?.({token:Ue?.symbol||"",amount:$,chainId:b})}catch(te){const Te=te instanceof Error?te.message:"Withdraw failed";me(Te),i?.(Te)}finally{J(!1)}},[Nt,l,Ue,$,b,i]);if(o.useEffect(()=>{if(!t){const Y=setTimeout(()=>{I(S()),W(!1),B(null),R(null),X(""),O(!1),ne(!1),he(!1),z(""),J(!1),me(null),H(null),de.current=null},300);return()=>clearTimeout(Y)}},[t,p]),o.useEffect(()=>{if(!p&&t&&C==="provider-login"&&Qe&&Me&&$e&&!F){const Y=setTimeout(()=>{W(!0),I("select")},100);return()=>clearTimeout(Y)}},[p,t,C,Qe,Me,$e,F,y]),!t)return null;if(C==="provider-login"&&!p)return e.jsx(vs,{onAuthSuccess:rt,autoTrigger:!0});if(C==="select"&&y){const Y=parseFloat($)||0,te=Y>0&&Y>Mt,Te=(b?Q.getChainConfig(b):null)?.displayName||"Network",He=b?ln[b]||yn:null,at=Ue?.symbol||"\u2014",bt=Ut,Ct=Ue?yo(Bt,Ue.decimals):"0",Wt=Co(Y,Ue?.symbol||E?.symbol),Ke=Co(parseFloat(Ct)||0,Ue?.symbol||E?.symbol),Lt=!oe||!w||P.isAddress(w),dt=!p&&Y>0&&Ue!==null,nt=!dt||ht!==null&&!mt&&!At,vt=Y>0&&!te&&E!==null&&b!==null&&Ue!==null&&xt&&Lt&&nt&&Bt>0n,zt=!vt,fn=E===null?"NO BALANCE":Y===0?"ENTER AMOUNT":te?"INSUFFICIENT BALANCE":dt&&!nt?At?"GAS UNAVAILABLE":"ESTIMATING GAS":dt&&Bt===0n?"AMOUNT TOO SMALL":"WITHDRAW",$t=!!G&&(G.step==="success"||G.step==="error"),Kt=e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"5px"},children:[e.jsx("img",{src:io,alt:"Info",style:{width:"13px",height:"13px",flexShrink:0,...x?{filter:"invert(0.6)"}:{}}}),e.jsx("p",{style:{fontSize:"13px",color:x?k.textSecondary:"#979AA0",margin:"0",lineHeight:"1.4",fontFamily:'"Helvetica Neue", sans-serif'},children:"Withdraw collateral from your account to 10+ EVM blockchains."})]}),ut='"Helvetica Neue", Arial, sans-serif',Ve='"IBM Plex Mono", monospace',Ft=s?.primaryColor||v.colors.primary,an=x?k.cardBg:"#E9E9E9",cn=x?k.cardBorder:"#C6C6C6",ee=x?k.textSecondary:"#7D7C7B",ce=x?k.textSecondary:"#71757A",pe=x?k.textPrimary:"#0E0D0B",qe=x?k.cardBorder:"#C5C5C4",Xe=x?"rgba(255,255,255,0.08)":"#D4D3D3",St=170,gt=bt.length>8?"14px":bt.length>6?"16px":"18px",kt=at.length>8?"14px":at.length>6?"16px":"18px",Be=402,De=$.length>7?42:$.length>5?46:54,It=Ct.length>15?32:Ct.length>10?36:Ct.length>7?42:Ct.length>5?46:54;return e.jsx(on,{isOpen:!0,onClose:ot,title:"Withdraw from your account",subtitle:Kt,styles:s,theme:v,dark:x,maxWidth:"486px",footerLinkText:"Spicenet accounts \u2192",overlayDimmed:!1,overlayContent:$t?e.jsx("div",{style:{position:"absolute",top:0,left:0,right:0,bottom:0,display:"flex",flexDirection:"column",justifyContent:"flex-end",pointerEvents:"none",zIndex:20},children:e.jsx("div",{style:{pointerEvents:"auto"},children:e.jsx(Ln,{type:"withdraw",isOpen:!0,isProcessing:N,onRetryTx:()=>{it()},onNewTx:()=>{H(null),X(""),me(null),de.current=null},onClose:()=>{H(null),me(null),J(!1),de.current=null},onComplete:()=>{H(null),me(null),J(!1),de.current=null},results:[{asset:{symbol:Ue?.symbol||"Token",address:Ue?.address||""},txHash:G?.txHash||"",success:G?.step==="success",error:G?.error,amount:$}],chainName:b?Q.getChainName(b):"Network",explorerUrl:b?Q.getExplorerUrl(b,"").replace(/\/tx\/.*$/,""):void 0,theme:v})})}):null,children:e.jsxs("div",{style:{width:`${Be}px`,margin:"0 auto",padding:"0 0 4px 0",position:"relative"},children:[_&&Ne&&e.jsxs("div",{ref:Ae,"data-balance-popover":!0,style:{position:"fixed",top:`${Ne.top}px`,left:`${Ne.left}px`,width:"220px",background:x?k.cardBg:"#FFFFFF",border:`1px solid ${x?k.cardBorder:"#D6D6D6"}`,borderRadius:"10px",boxShadow:x?"0 12px 32px rgba(0,0,0,0.32)":"0 12px 28px rgba(15, 23, 42, 0.14)",padding:"10px",zIndex:40},children:[e.jsx("div",{style:{fontFamily:Ve,fontSize:"11px",letterSpacing:"0.05em",color:ce,marginBottom:"8px"},children:"ALL BALANCES"}),e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:(Pe||[]).length>0?(Pe||[]).map(le=>e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:"10px",padding:"6px 0"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",minWidth:0},children:[le.logoURI?e.jsx("img",{src:le.logoURI,alt:le.displaySymbol||le.receiptTokenName||le.symbol,style:{width:"18px",height:"18px",borderRadius:"50%",flexShrink:0}}):e.jsx("div",{style:{width:"18px",height:"18px",borderRadius:"50%",border:`1px solid ${x?k.cardBorder:"#C8C8C8"}`,flexShrink:0}}),e.jsx("span",{style:{fontFamily:ut,fontSize:"13px",color:pe,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:le.displaySymbol||le.receiptTokenName||le.symbol})]}),e.jsx("span",{style:{fontFamily:Ve,fontSize:"12px",color:pe,flexShrink:0},children:kn(le.balanceFormatted)})]},le.receiptTokenId||le.address)):e.jsx("span",{style:{fontFamily:ut,fontSize:"13px",color:ce},children:"No balances"})})]}),e.jsxs("div",{style:{marginTop:"16px",marginBottom:"16px",display:"flex",flexDirection:"column",gap:"16px"},children:[e.jsxs("div",{style:{backgroundColor:an,border:`1px solid ${cn}`,borderRadius:"7px",padding:"14px 16px 12px 16px",minHeight:"138px",display:"flex",flexDirection:"column",gap:"6px",position:"relative"},children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsx("span",{style:{fontFamily:ut,fontSize:"17px",fontWeight:500,color:ee,lineHeight:"24px"},children:"Source"}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px",fontFamily:ut,fontSize:"13px",fontWeight:500,color:ce,lineHeight:"16px"},children:["Balance:"," ",lt?"...":kn(Mt),e.jsx("button",{type:"button","data-balance-trigger":!0,onClick:le=>{le.stopPropagation(),rn(le.currentTarget)},style:{width:"15px",height:"15px",borderRadius:"999px",border:"1px solid #EA4B4B",color:"#EA4B4B",display:"inline-flex",alignItems:"center",justifyContent:"center",fontSize:"9px",fontWeight:500,lineHeight:1,boxSizing:"border-box",background:"transparent",padding:0,cursor:"pointer"},children:e.jsx("span",{style:{display:"inline-flex",alignItems:"center",justifyContent:"center",gap:"1.5px"},children:[0,1,2].map(le=>e.jsx("span",{style:{width:"1.75px",height:"1.75px",borderRadius:"999px",backgroundColor:"#EA4B4B",display:"block"}},le))})})]})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:"12px",flex:1},children:[e.jsxs("div",{style:{flex:1,minWidth:0,alignSelf:"flex-start",paddingTop:"4px"},children:[e.jsx("input",{type:"text",value:$,onChange:le=>{const Ie=le.target.value;(Ie===""||/^\d*\.?\d*$/.test(Ie))&&X(Ie)},placeholder:"0.0",style:{fontFamily:ut,fontSize:`${De}px`,fontWeight:700,color:te?"#ef4444":$?pe:"#A8A8A7",lineHeight:"0.95",letterSpacing:"-2.4px",backgroundColor:"transparent",border:"none",outline:"none",padding:0,width:"100%"}}),e.jsx("div",{style:{fontSize:"12px",fontWeight:500,color:ce,fontFamily:ut,marginTop:"10px"},children:Wt})]}),e.jsx("div",{style:{width:`${St}px`,flexShrink:0},children:e.jsxs("div",{style:{backgroundColor:"transparent",border:`1px solid ${qe}`,borderRadius:"8px",overflow:"hidden",width:"100%",display:"flex",flexDirection:"column",boxSizing:"border-box"},children:[e.jsxs("div",{ref:ae,onClick:le=>{if(le.stopPropagation(),!L&&ae.current){const Ie=ae.current.getBoundingClientRect();We({top:Ie.top-10,left:Ie.right-30})}ne(Ie=>!Ie)},style:{display:"flex",alignItems:"center",gap:"6px",padding:"9px 10px 8px 10px",cursor:"pointer"},children:[e.jsx("img",{src:et,alt:bt,style:{width:"24px",height:"24px",borderRadius:"50%"}}),e.jsx("span",{style:{fontSize:gt,fontWeight:500,color:pe,lineHeight:"1.3",fontFamily:ut,flex:1,minWidth:0,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",letterSpacing:"-0.02em"},children:bt}),e.jsx("svg",{width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:pe,strokeWidth:"2.25",strokeLinecap:"round",strokeLinejoin:"round",children:e.jsx("path",{d:"M6 9l6 6 6-6"})})]}),e.jsx(ho,{isOpen:L,position:je,title:"SELECT TOKEN",portalAttribute:"token",items:(Pe||[]).map(le=>({id:le.receiptTokenId||le.address,label:le.displaySymbol||le.receiptTokenName||le.symbol,icon:ds,detail:kn(le.balanceFormatted)})),selectedId:E?.receiptTokenId||E?.address||null,onSelect:le=>{const Ie=(Pe||[]).find(st=>(st.receiptTokenId||st.address)===le);Ie&&(B(Ie),X("")),ne(!1)}}),e.jsx("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"5px 10px",backgroundColor:Xe,borderTop:`1px solid ${qe}`},children:e.jsx("span",{style:{fontSize:"11px",fontWeight:400,color:pe,fontFamily:ut,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",textTransform:"uppercase"},children:Dt})})]})})]}),e.jsxs("div",{style:{minHeight:"18px",display:"flex",alignItems:"center",justifyContent:"space-between"},children:[te?e.jsx("span",{style:{fontSize:"12px",color:x?k.errorText:"#dc2626",fontFamily:ut,fontWeight:500},children:"Insufficient Balance"}):e.jsx("span",{}),e.jsx("div",{style:{display:"flex",justifyContent:"flex-end",gap:"10px",minHeight:"14px",paddingRight:"3px"},children:[0,25,50,75,100].map((le,Ie)=>{const st=Ie===4,Ye=le/100,re=parseFloat($)||0,m=Mt>0&&Math.abs(re/Mt*100-le)<1;return e.jsx("button",{type:"button",onClick:()=>{const T=Mt*le/100,D=E?.decimals??6,Z=Math.floor(T*10**D)/10**D;X(le===0?"":Z>0?In(Z,D):"")},title:`${le}%`,disabled:Mt===0,style:{width:"14px",height:"14px",padding:0,border:"none",backgroundColor:"transparent",cursor:Mt===0?"not-allowed":"pointer",opacity:m?1:.5,transition:"all 0.15s ease"},children:e.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 14 14",children:[e.jsx("circle",{cx:"7",cy:"7",r:"6.84375",fill:st?Ft:"none",stroke:st?Ft:x?"#4a5568":"#3C3E42",strokeWidth:"0.3125"}),!st&&Ye>0&&e.jsx("path",{d:`M 7 7 L 7 0.15625 A 6.84375 6.84375 0 ${Ye>.5?1:0} 1 ${7+6.84375*Math.sin(Ye*2*Math.PI)} ${7-6.84375*Math.cos(Ye*2*Math.PI)} Z`,fill:x?k.textSecondary:"#3C3E42"})]})},le)})})]})]}),e.jsxs("div",{style:{backgroundColor:an,border:`1px solid ${cn}`,borderRadius:"7px",padding:"14px 16px 12px 16px",minHeight:"138px",display:"flex",flexDirection:"column",gap:"6px"},children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsx("span",{style:{fontFamily:ut,fontSize:"17px",fontWeight:500,color:ee,lineHeight:"24px"},children:"Destination"}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px",fontFamily:ut,fontSize:"13px",fontWeight:500,color:ce,lineHeight:"16px"},children:["Balance:"," ",lt?"...":kn(Mt),e.jsx("button",{type:"button","data-balance-trigger":!0,onClick:le=>{le.stopPropagation(),rn(le.currentTarget)},style:{width:"15px",height:"15px",borderRadius:"999px",border:"1px solid #EA4B4B",color:"#EA4B4B",display:"inline-flex",alignItems:"center",justifyContent:"center",fontSize:"9px",fontWeight:500,lineHeight:1,boxSizing:"border-box",background:"transparent",padding:0,cursor:"pointer"},children:e.jsx("span",{style:{display:"inline-flex",alignItems:"center",justifyContent:"center",gap:"1.5px"},children:[0,1,2].map(le=>e.jsx("span",{style:{width:"1.75px",height:"1.75px",borderRadius:"999px",backgroundColor:"#EA4B4B",display:"block"}},le))})})]})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:"12px",flex:1},children:[e.jsxs("div",{style:{flex:1,minWidth:0,alignSelf:"flex-start",paddingTop:"4px"},children:[e.jsx("div",{style:{fontFamily:ut,fontSize:`${It}px`,fontWeight:700,color:$?pe:"#A8A8A7",lineHeight:"0.95",letterSpacing:"-2.4px",overflowWrap:"anywhere"},children:Ct}),e.jsx("div",{style:{fontSize:"12px",fontWeight:500,color:ce,fontFamily:ut,marginTop:"10px"},children:Ke})]}),e.jsxs("div",{style:{width:`${St}px`,flexShrink:0,display:"flex",flexDirection:"column",alignItems:"stretch",gap:"8px"},children:[e.jsxs("div",{style:{backgroundColor:"transparent",border:`1px solid ${qe}`,borderRadius:"8px",overflow:"hidden",width:"100%",display:"flex",flexDirection:"column",boxSizing:"border-box"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px",padding:"9px 10px 8px 10px"},children:[e.jsx("img",{src:Ue?.logoURI||Nn,alt:at,style:{width:"24px",height:"24px",borderRadius:"50%"}}),e.jsx("span",{style:{fontSize:kt,fontWeight:500,color:pe,lineHeight:"1.3",fontFamily:ut,flex:1,minWidth:0,letterSpacing:"-0.02em"},children:at})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"5px 10px",backgroundColor:Xe,borderTop:`1px solid ${qe}`},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"4px"},children:[He&&e.jsx("img",{src:He,alt:Te,style:{width:"13px",height:"13px",borderRadius:"50%",flexShrink:0}}),e.jsx("span",{style:{fontSize:"11px",fontWeight:400,color:pe,fontFamily:ut,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",textTransform:"uppercase"},children:Te})]}),e.jsx("button",{ref:se,onClick:le=>{le.stopPropagation(),Et(se.current)},style:{background:"none",border:"none",cursor:ct.length>1?"pointer":"not-allowed",padding:"0 0 0 8px",fontSize:"9.5px",fontFamily:Ve,color:ce,textDecoration:"underline",fontWeight:600,opacity:ct.length>1?1:.45},children:"Switch"}),e.jsx(ho,{isOpen:A,position:Re,title:"SELECT NETWORK",portalAttribute:"network",items:ct.map(le=>{const Ie=Q.getChainConfig(le);return{id:String(le),label:Ie?.displayName||String(le),icon:ln[le]||yn}}),selectedId:b!==null?String(b):null,onSelect:le=>{R(Number(le)),O(!1)}})]})]}),e.jsx("div",{style:{minHeight:"14px"}})]})]})]})]}),e.jsxs("div",{style:{marginBottom:v.spacing.sm},children:[e.jsxs("div",{onClick:()=>be(le=>!le),style:{display:"flex",alignItems:"center",gap:"6px",marginBottom:ie?"10px":"0",cursor:"pointer",userSelect:"none"},children:[e.jsx("span",{style:{fontSize:"13px",color:ce,fontFamily:ut,fontWeight:600},children:"Transaction Details"}),e.jsx(Yn.ChevronDown,{size:12,color:ce,style:{transform:ie?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.2s"}})]}),ie&&e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"7px"},children:[e.jsxs("div",{children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsx("span",{style:{fontSize:"12px",color:ce,fontFamily:Ve,fontWeight:500,letterSpacing:"0.03em"},children:"TO"}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[e.jsx("span",{style:{fontSize:"13px",color:pe,fontFamily:Ve,fontWeight:500},children:oe&&w?P.isAddress(w)?`${w.slice(0,6)}...${w.slice(-4)}`:w:xt?`${xt.slice(0,6)}...${xt.slice(-4)}`:"\u2014"}),e.jsx("button",{onClick:()=>{he(le=>!le),!oe&&q&&z(q)},style:{background:"none",border:"none",cursor:"pointer",padding:"0",fontSize:"9.5px",fontFamily:Ve,color:ce,textDecoration:"underline",fontWeight:600},children:oe?"Reset":"Switch"})]})]}),oe&&e.jsxs("div",{style:{marginTop:"6px"},children:[e.jsx("input",{type:"text",value:w,onChange:le=>z(le.target.value),placeholder:"0x...",style:{width:"100%",padding:"8px 10px",borderRadius:"6px",border:`1px solid ${w&&!P.isAddress(w)?x?k.errorBorder:"#fca5a5":x?k.inputBorder:"#d1d5db"}`,backgroundColor:x?k.inputBg:"#f9fafb",color:x?k.inputText:"#111827",fontSize:"12px",fontFamily:Ve,outline:"none",boxSizing:"border-box"}}),w&&!P.isAddress(w)&&e.jsx("span",{style:{fontSize:"11px",color:x?k.errorText:"#dc2626",marginTop:"3px",display:"block"},children:"Invalid address"})]})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"space-between"},children:[e.jsx("span",{style:{fontSize:"12px",color:ce,fontFamily:Ve,fontWeight:500,letterSpacing:"0.03em"},children:"RECEIVING CHAIN"}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"7px"},children:[He&&e.jsx("img",{src:He,alt:Te,style:{width:"14px",height:"14px",borderRadius:"50%"}}),e.jsx("span",{style:{fontSize:"13px",color:pe,fontWeight:500,fontFamily:Ve,textTransform:"uppercase"},children:Te}),e.jsx("button",{ref:we,onClick:le=>{le.stopPropagation(),Et(we.current)},style:{background:"none",border:"none",cursor:ct.length>1?"pointer":"not-allowed",padding:"0",fontSize:"9.5px",fontFamily:Ve,color:ce,textDecoration:"underline",fontWeight:600,opacity:ct.length>1?1:.45},children:"Switch"})]})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"space-between"},children:[e.jsx("span",{style:{fontSize:"12px",color:ce,fontFamily:Ve,fontWeight:500,letterSpacing:"0.03em"},children:"YOU WITHDRAW"}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px"},children:[e.jsx("img",{src:tn,alt:Dt,style:{width:"13px",height:"13px",borderRadius:"50%"}}),e.jsxs("span",{style:{fontSize:"13px",color:pe,fontWeight:500,fontFamily:Ve},children:[$||"0"," ",bt]})]})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"space-between"},children:[e.jsx("span",{style:{fontSize:"12px",color:ce,fontFamily:Ve,fontWeight:500,letterSpacing:"0.03em"},children:"YOU RECEIVE"}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"4px"},children:[He&&e.jsx("img",{src:He,alt:Te,style:{width:"13px",height:"13px",borderRadius:"50%"}}),e.jsxs("span",{style:{fontSize:"13px",color:pe,fontWeight:500,fontFamily:Ve},children:[Ct," ",at]})]})]}),dt&&e.jsxs(e.Fragment,{children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between"},children:[e.jsx("span",{style:{fontSize:"12px",color:ce,fontFamily:Ve,fontWeight:500,letterSpacing:"0.03em"},children:"EST. GAS FEE"}),e.jsx("span",{style:{fontSize:"13px",color:At?"#f87171":pe,fontWeight:500,fontFamily:Ve},children:mt?"Estimating...":At?"Unavailable":ht!==null&&Ue?`${yo(ht,Ue.decimals)} ${Ue.symbol}`:"Estimating..."})]}),At&&e.jsx("div",{style:{padding:"8px 10px",borderRadius:"7px",backgroundColor:x?k.errorBg:"#fef2f2",border:`1px solid ${x?k.errorBorder:"#fecaca"}`,color:x?k.errorText:"#dc2626",fontSize:"12px",lineHeight:1.4,fontFamily:s?.fontFamily||v.typography.fontFamily},children:At})]})]}),xe&&e.jsx("div",{style:{backgroundColor:x?k.errorBg:"#fef2f2",border:`1px solid ${x?k.errorBorder:"#fecaca"}`,borderRadius:"8px",padding:"10px 12px",marginBottom:"12px"},children:e.jsx("p",{style:{color:x?k.errorText:"#dc2626",fontSize:"12px",margin:0,fontFamily:s?.fontFamily||v.typography.fontFamily},children:xe})}),e.jsx(Ge.Button,{variant:"outline",fullWidth:!0,onClick:()=>{vt&&Nt()},disabled:zt||N,theme:v,dark:x,style:{marginTop:"8px",height:"56px",backgroundColor:zt||N?`${Ft}88`:Ft,color:s?.button?.color||(x?k.textPrimary:"#0e0d0b"),border:`1.5px solid ${x?`${Ft}88`:"#0e0d0b"}`,fontSize:"20px",fontWeight:600,letterSpacing:"1.5px",fontFamily:Ve,borderRadius:"12px",boxShadow:`3px 3px 0px ${k.shell}, 4px 4px 0px ${x?`${Ft}88`:"#0e0d0b"}`,opacity:zt||N?.78:1},children:N?"EXECUTING...":fn})]})]})})}return null},wo=fa;var xa="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAKlBMVEVMaXHpSkrmS0vrSkrmR0fpSkrrSkroSUnqSkrpSkrpSkrpSkrsS0vzTk68N2lZAAAADHRSTlMA/SoEHOX1RcdliKnuQ9TkAAAACXBIWXMAAAsTAAALEwEAmpwYAAAB4UlEQVR42u1XyRbDIAhUcQ/8/+9WUROzNIvtMbxefMo4yACpEOcG4geD30G0C07B8P0qWkzm3QgJEBAsIUqURJMe8NcToZTlR8YJgGev5wwVd2QEG+FZGIl+9iUyloGQvL5NIt2V6RfqoCPRHMZN/0ofy+NBKEsO41b4wVaHADWdvgGqGyR0o5/Tvw/pmr7v6C/XhRbVaTYqfU5bgPVGDUNmYDgXT6UP28xEvAyjpw/H2pD5wGE2ivZZPGv6fXF5JlhEdfr68AUB4vdsqHP6DWPWyDYbITsz/asecXDR+vXPtZbOdmG0o7324dJYVFypLRu6+ptws9aV53glhUIqMCDaqNxdKwjkoQDkzpkAjL1vWwCJA1YBUgpRjlkDULl9jxjFudjHbBkXWg3ZT4N3q9AkMOXUrMM0VZ3oVJk3QXSbvNi0CzNXUimZ2LeatBl7Ie57CiQ9k9EVYEripKVYwJMlq+qKN3eyVzaLu/pArtl0pgFok6XS1j6fjI8BUDZGvPkCvAAvwJdiuipnuZRzJL5q93li0M53pp6Bq4bicZnb2kuMh/8Num9ycOsP9NUalBJ/trG2rmH5/Boabji1FxsbbFhzmaezHAPANlxxcDwvwzWNZ3ps2P0X02MG4rX/2Ad4/i9F5OK4gwAAAABJRU5ErkJggg==";const On=t=>{const n=Math.round(t*1e5)/1e5;return new Intl.NumberFormat("en-US",{style:"currency",currency:"USD",minimumFractionDigits:0,maximumFractionDigits:5}).format(n)},vo=t=>{const n=Math.round(t*1e5)/1e5;return new Intl.NumberFormat("en-US",{style:"currency",currency:"USD",minimumFractionDigits:0,maximumFractionDigits:5}).format(n)},ga=({balanceData:t,isLoading:n=!1,styles:s,className:r="",showHeader:a=!0,onAccountClick:l,onDepositClick:i,onWithdrawClick:d,vaultBalance:c,fetchVaultBalance:h,onWithdrawExecute:u,withdrawActionLabel:f,destinationChainId:g,destinationTokenAddress:p,customSections:y,showDefaultSections:v=!0})=>{const x=o.useContext(K.SpiceFlowProviderContext),k=(x?.mode||"7702")!=="7702",U=x?.appName||"Spicenet",{dark:S,primaryColor:C,dk:I,theme:F}=K.useSpiceBrand(s),[W,E]=o.useState(!0),[B,b]=o.useState(!1),[R,$]=o.useState(!1),[X,A]=o.useState(null),{isConnected:O}=ft.useAccount(),{disconnect:L}=ft.useDisconnect();o.useEffect(()=>{k&&h&&h().then(w=>{const z=Math.round(w*1e5)/1e5;A(z)}).catch(w=>{console.error("Error fetching vault balance:",w),A(null)})},[k,h]);const ne=()=>{E(!W)},_=o.useMemo(()=>{if(!t.freeCollateralItems)return null;const w=t.freeCollateralItems.filter(be=>be.name==="USDC");if(w.length===0)return null;const z=w.reduce((be,se)=>be+se.balance,0),ie=[];return w.forEach(be=>{be.networks&&be.networks.forEach(se=>{(se===1||se===11155111||se===8453||se===84532)&&(ie.includes(se)||ie.push(se))})}),ie.length===0&&ie.push(1,8453),{name:"USDC",totalBalance:z,networks:ie,subtitle:w[0]?.subtitle||"USD COIN"}},[t.freeCollateralItems]),j=o.useMemo(()=>{if(k){if(X!==null)return X;if(c!=null)return c}return t.freeCollateralItems?t.freeCollateralItems.reduce((w,z)=>w+z.balance,0):t.freeCollateral},[k,X,c,t.freeCollateralItems,t.freeCollateral]),oe=w=>W?w:"******",he=()=>{L(),b(!1),$(!1)};return e.jsxs("div",{className:r,style:{borderRadius:"16px",backgroundColor:S?I.shell:"#D5D5D5",width:"522px",padding:"8px",fontFamily:s?.fontFamily||'"Helvetica Neue", sans-serif',...s?.container},children:[e.jsxs("div",{style:{background:S?I.cardBg:" white",display:"flex",flexDirection:"column"},children:[e.jsxs("div",{style:{backgroundColor:S?I.inputBg:"#E9E9E9",borderRadius:"0 0 16px 16px",padding:"20px",display:"flex",flexFlow:"column"},children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"4px"},children:[e.jsxs("p",{style:{fontSize:"14px",fontWeight:500,fontFamily:'"IBM Plex Mono", monospace',color:S?I.textPrimary:"#0E0D0B",margin:0},children:[U.toUpperCase()," BALANCE"]}),O&&e.jsx("button",{onClick:he,"aria-label":"Disconnect wallet",style:{width:"36px",height:"36px",borderRadius:"8px",border:S?`1px solid ${C}33`:"1px solid #E5E7EB",background:S?I.inputBg:"white",display:"flex",alignItems:"center",justifyContent:"center",cursor:"pointer",transition:"all 0.2s ease",padding:"8px"},onMouseEnter:w=>{w.currentTarget.style.backgroundColor=S?I.cardBg:"#F3F4F6"},onMouseLeave:w=>{w.currentTarget.style.backgroundColor=S?I.inputBg:"white"},children:e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4"}),e.jsx("polyline",{points:"16 17 21 12 16 7"}),e.jsx("line",{x1:"21",y1:"12",x2:"9",y2:"12"})]})})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[t.percentageChange!==void 0&&t.percentageChange!==null&&e.jsxs("div",{style:{fontSize:"13px",fontWeight:700,color:t.percentageChange>=0?S?I.successText:"#009C51":S?I.errorText:"#EF4444"},children:[t.percentageChange>=0?"+":"",t.percentageChange.toFixed(2),"%"]}),e.jsx("button",{onClick:ne,style:{background:"none",border:"none",cursor:"pointer",padding:"8px",display:"flex",alignItems:"center",justifyContent:"center",transition:"opacity 0.2s ease"},onMouseEnter:w=>{w.currentTarget.style.opacity="0.7"},onMouseLeave:w=>{w.currentTarget.style.opacity="1"},children:W?e.jsxs("svg",{width:"32",height:"32",viewBox:"0 0 24 24",fill:"none",children:[e.jsx("path",{d:"M12 5C7 5 2.73 8.11 1 12.5C2.73 16.89 7 20 12 20C17 20 21.27 16.89 23 12.5C21.27 8.11 17 5 12 5Z",stroke:S?I.textSecondary:"#1A1A1A",strokeWidth:"2",fill:"none"}),e.jsx("circle",{cx:"12",cy:"12.5",r:"3",stroke:S?I.textSecondary:"#1A1A1A",strokeWidth:"2",fill:"none"})]}):e.jsxs("svg",{width:"32",height:"32",viewBox:"0 0 24 24",fill:"none",children:[e.jsx("path",{d:"M12 5C7 5 2.73 8.11 1 12.5C2.73 16.89 7 20 12 20C17 20 21.27 16.89 23 12.5C21.27 8.11 17 5 12 5Z",stroke:S?I.textSecondary:"#1A1A1A",strokeWidth:"2",fill:"none"}),e.jsx("path",{d:"M3 3L21 21",stroke:S?I.textSecondary:"#1A1A1A",strokeWidth:"2",strokeLinecap:"round"})]})})]}),e.jsx("p",{style:{fontSize:"40px",fontWeight:700,color:S?I.textPrimary:"black"},children:oe(On(k&&X!==null?X:k&&c!==void 0&&c!==null?c:t.totalBalance))}),e.jsxs("div",{style:{display:"flex",gap:"12px",marginTop:"16px"},children:[e.jsx(Ge.Button,{variant:"outline",fullWidth:!0,onClick:()=>{i?i():b(!0)},theme:F,dark:S,styles:s,children:"DEPOSIT"}),e.jsx(Ge.Button,{variant:"outline",fullWidth:!0,onClick:()=>{d?d():$(!0)},theme:F,dark:S,styles:s,children:"WITHDRAW"})]})]}),e.jsxs("div",{style:{background:S?I.cardBg:"white",padding:"12px 20px",borderRadius:"12px"},children:[v&&e.jsx(po,{title:"FREE COLLATERAL",icon:xa,amount:oe(vo(j)),defaultExpanded:!1,children:k&&(X!==null||c!=null)?e.jsx(ss,{name:"USDC",balance:oe(On(X!==null?X:c)),subtitle:"USD COIN",icon:Nn,onClick:l?()=>l("usdc-vault"):void 0}):_?e.jsx(ss,{name:_.name,balance:oe(On(_.totalBalance)),subtitle:_.subtitle,networks:_.networks,icon:Nn,onClick:l?()=>l(_.name):void 0}):t.freeCollateralItems&&t.freeCollateralItems.length>0?t.freeCollateralItems.map((w,z)=>e.jsxs(o.Fragment,{children:[e.jsx(ss,{name:w.name,balance:oe(On(w.balance)),subtitle:w.subtitle,networks:w.networks,icon:w.name==="USDC"?Nn:void 0,onClick:l?()=>l(w.id):void 0}),z<t.freeCollateralItems.length-1&&e.jsx("div",{style:{height:"1px",backgroundColor:S?I.cardBorder:"#D0D2D8",margin:"4px 0"}})]},w.id)):e.jsx("div",{style:{padding:"12px 0",color:S?I.textSecondary:"#6B7280",fontSize:"13px",fontFamily:'"IBM Plex Mono", monospace'},children:"No collateral items available"})}),y&&y.length>0&&y.filter(w=>w&&w.id&&w.title&&typeof w.title=="string"&&w.title.trim().length>0).map(w=>e.jsx(po,{title:w.title,icon:w.icon||void 0,amount:oe(vo(w.totalBalance||0)),defaultExpanded:w.defaultExpanded!==void 0?w.defaultExpanded:!1,children:w.items&&w.items.length>0?w.items.map((z,ie)=>e.jsxs(o.Fragment,{children:[e.jsx(ss,{name:z.name,balance:oe(On(z.balance)),subtitle:z.subtitle,networks:z.networks,icon:z.name==="USDC"?Nn:void 0,onClick:l?()=>l(z.id):void 0}),ie<w.items.length-1&&e.jsx("div",{style:{height:"1px",backgroundColor:S?I.cardBorder:"#D0D2D8",margin:"4px 0"}})]},z.id||`item-${ie}`)):e.jsx("div",{style:{padding:"12px 0",color:S?I.textSecondary:"#6B7280",fontSize:"13px",fontFamily:'"IBM Plex Mono", monospace'},children:w.emptyMessage||"No items available"})},w.id))]})]}),B&&e.jsx(uo,{isOpen:B,onClose:()=>b(!1),styles:s}),R&&e.jsx(wo,{isOpen:R,onClose:()=>$(!1),styles:s,onWithdrawExecute:u,withdrawActionLabel:f})]})},ma=({pairLabel:t,pairApr:n,pairAddressLabel:s,lpLabel:r,onViewPool:a,styles:l,theme:i,token1:d,token2:c})=>{const{dk:h}=K.useSpiceBrand(l);return e.jsxs("div",{style:{backgroundColor:h.cardBg,border:`0.5px solid ${h.cardBorder}`,borderRadius:"6px",padding:"16px 16px",width:"100%",display:"flex",flexDirection:"column",gap:"10px",boxShadow:`4px 4px 0px ${h.cardBorder}`},children:[e.jsx("div",{style:{display:"flex",gap:"8px",alignItems:"center"},children:e.jsxs("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:"8px"},children:[e.jsxs("div",{style:{display:"flex",gap:"8px",alignItems:"center"},children:[e.jsx("span",{style:{fontFamily:l?.fontFamily||i.typography.fontFamily,fontSize:"15px",fontWeight:500,color:h.textPrimary,lineHeight:"22px"},children:t}),e.jsx("div",{style:{backgroundColor:"rgba(2, 212, 112, 0.17)",border:"0.5px solid #02d470",borderRadius:"3px",padding:"0 10px",height:"12px",display:"flex",alignItems:"center"},children:e.jsx("span",{style:{fontFamily:"'IBM Plex Mono', monospace",fontSize:"8px",fontWeight:600,color:"#009c51",textTransform:"uppercase",lineHeight:"1.56"},children:n})})]}),e.jsx("div",{style:{display:"flex",gap:"24px",alignItems:"center"},children:e.jsxs("div",{style:{display:"flex",gap:"4px",alignItems:"center"},children:[e.jsx("span",{style:{fontFamily:"'IBM Plex Mono', monospace",fontSize:"10px",fontWeight:500,color:h.textSecondary,textTransform:"uppercase",lineHeight:"26px",width:"72px"},children:s}),e.jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",style:{cursor:"pointer"},onClick:a,children:e.jsx("path",{d:"M2 6L10 6M10 6L6 2M10 6L6 10",stroke:h.textSecondary,strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})]})})]})}),e.jsx("div",{style:{height:"1px",backgroundColor:h.cardBorder,width:"100%"}}),e.jsxs("div",{style:{display:"flex",gap:"8px",alignItems:"center"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",paddingRight:"5px"},children:[d&&e.jsx("div",{style:{zIndex:2,marginRight:"-8px"},children:e.jsx(xn,{symbol:d.symbol,logoURI:d.logoURI,size:24,theme:i})}),c&&e.jsx("div",{style:{zIndex:1},children:e.jsx(xn,{symbol:c.symbol,logoURI:c.logoURI,size:24,theme:i})}),!d&&!c&&e.jsxs(e.Fragment,{children:[e.jsx("div",{style:{width:"24px",height:"24px",borderRadius:"50%",backgroundColor:"#2775CA",marginRight:"-5px",border:`2px solid ${h.cardBg}`}}),e.jsx("div",{style:{width:"24px",height:"24px",borderRadius:"50%",backgroundColor:"#26A17B",border:`2px solid ${h.cardBg}`}})]})]}),e.jsx("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:"8px"},children:e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.jsxs("div",{style:{display:"flex",gap:"4px",alignItems:"center",maxWidth:"199.5px"},children:[e.jsx("div",{style:{display:"flex",gap:"8px",alignItems:"center"},children:e.jsx("span",{style:{fontFamily:l?.fontFamily||i.typography.fontFamily,fontSize:"15px",fontWeight:500,color:h.textPrimary,lineHeight:"22px"},children:r})}),e.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",children:[e.jsx("circle",{cx:"6",cy:"6",r:"5",stroke:h.textSecondary,strokeWidth:"1",fill:"none"}),e.jsx("path",{d:"M6 3V6M6 9H6.01",stroke:h.textSecondary,strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]})]}),e.jsx("svg",{width:"19",height:"19",viewBox:"0 0 12 12",fill:"none",style:{cursor:"pointer"},children:e.jsx("path",{d:"M2 6L10 6M10 6L6 2M10 6L6 10",stroke:h.textSecondary,strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})]})})]})]})},ya=({selectedAsset:t,availableAssets:n,onAssetSelect:s,disabled:r,styles:a,theme:l})=>{const{dk:i}=K.useSpiceBrand(a),[d,c]=o.useState(!1),h=o.useRef(null);return o.useEffect(()=>{const u=f=>{h.current&&!h.current.contains(f.target)&&d&&c(!1)};return d&&document.addEventListener("mousedown",u),()=>{document.removeEventListener("mousedown",u)}},[d]),e.jsxs("div",{style:{width:"128px",position:"relative"},ref:h,children:[e.jsxs("div",{style:{border:`1px solid ${i.cardBorder}`,borderRadius:"6px 6px 0 0",backgroundColor:r?i.hoverBg:i.cardBg,padding:"8px 12px 8px 8px",display:"flex",alignItems:"center",justifyContent:"space-between",cursor:r?"not-allowed":"pointer"},onClick:()=>!r&&c(!d),children:[e.jsx("div",{style:{display:"flex",gap:"8px",alignItems:"center"},children:t?.asset?e.jsxs(e.Fragment,{children:[e.jsx(xn,{symbol:t.asset.symbol,logoURI:t.asset.logoURI,size:30,theme:l}),e.jsx("span",{style:{fontFamily:a?.fontFamily||l.typography.fontFamily,fontSize:"16px",fontWeight:500,color:i.textPrimary,lineHeight:"1.5"},children:t.asset.symbol})]}):e.jsx("span",{style:{fontFamily:a?.fontFamily||l.typography.fontFamily,fontSize:"14px",fontWeight:500,color:i.textSecondary,lineHeight:"1.5",letterSpacing:"-0.56px"},children:"Select Asset"})}),e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",children:e.jsx("path",{d:"M4 6L8 10L12 6",stroke:i.textPrimary,strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})]}),e.jsx("div",{style:{backgroundColor:i.hoverBg,border:`1px solid ${i.cardBorder}`,borderRadius:"0 0 6px 6px",padding:"0 10px",height:"24px",display:"flex",alignItems:"center",gap:"4px"},children:t?.asset?e.jsxs(e.Fragment,{children:[e.jsx(Un,{chainId:t.asset.chainId,theme:l,size:11}),e.jsx("span",{style:{fontFamily:"'IBM Plex Mono', monospace",fontSize:"12px",fontWeight:400,color:i.textPrimary,textTransform:"uppercase",lineHeight:"1.56"},children:Q.getChainName(t.asset.chainId)})]}):e.jsxs(e.Fragment,{children:[e.jsx("div",{style:{width:"12px",height:"12px",borderRadius:"50%",backgroundColor:i.cardBg}}),e.jsx("span",{style:{fontFamily:"'IBM Plex Mono', monospace",fontSize:"12px",fontWeight:400,color:i.textPrimary,textTransform:"uppercase",lineHeight:"1.56"},children:"Solana"})]})}),d&&e.jsx("div",{style:{position:"absolute",top:"100%",left:0,right:0,marginTop:"4px",backgroundColor:i.cardBg,border:`1px solid ${i.cardBorder}`,borderRadius:"6px",boxShadow:"0 4px 6px rgba(0, 0, 0, 0.1)",zIndex:1e3,maxHeight:"200px",overflowY:"auto"},children:n.map(u=>e.jsxs("button",{onClick:()=>{s(u),c(!1)},style:{width:"100%",padding:"12px",display:"flex",alignItems:"center",gap:"8px",border:"none",backgroundColor:"transparent",cursor:"pointer",textAlign:"left"},onMouseEnter:f=>{f.currentTarget.style.backgroundColor="#f3f4f6"},onMouseLeave:f=>{f.currentTarget.style.backgroundColor="transparent"},children:[e.jsx(xn,{symbol:u.symbol,logoURI:u.logoURI,size:24,theme:l}),e.jsxs("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:"4px"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"4px"},children:[e.jsx("span",{style:{fontFamily:a?.fontFamily||l.typography.fontFamily,fontSize:"14px",fontWeight:500,color:i.textPrimary},children:u.symbol}),e.jsx(Un,{chainId:u.chainId,theme:l,size:12})]}),e.jsx("span",{style:{fontFamily:"'IBM Plex Mono', monospace",fontSize:"10px",color:i.textSecondary},children:Q.getChainName(u.chainId)})]})]},`${u.address} -${u.chainId} `))})]})},ba=({progressIndex:t=0})=>{const{primaryColor:n}=K.useSpiceBrand(),s=(r,a)=>{const l=a===t,i=a===4,d=i?n:r>0?"#3C3E42":"transparent";return e.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 14 14",style:{opacity:l?1:.5},children:[e.jsx("circle",{cx:"7",cy:"7",r:"6.84375",fill:i?d:"none",stroke:i?n:"#3C3E42",strokeWidth:"0.3125"}),!i&&r>0&&e.jsx("path",{d:`M 7 7 L 7 0.15625 A 6.84375 6.84375 0 ${r>.5?1:0} 1 ${7+6.84375*Math.sin(r*2*Math.PI)} ${7-6.84375*Math.cos(r*2*Math.PI)} Z`,fill:d})]},a)};return e.jsxs("div",{style:{display:"flex",gap:"10px",height:"14px",alignItems:"center",justifyContent:"flex-end",opacity:.7},children:[s(0,0),s(.25,1),s(.5,2),s(.75,3),s(1,4)]})},ko=({assetInput:t,availableAssets:n,onAssetChange:s,disabled:r,styles:a,theme:l})=>{const{dk:i}=K.useSpiceBrand(a),d=c=>{s(c,t?.selectedAsset?.amount||"")};return e.jsx("div",{style:{backgroundColor:i.cardBg,border:`0.5px solid ${i.cardBorder}`,borderRadius:"6px",padding:"16px",height:"144px",display:"flex",flexDirection:"column",gap:"8px",position:"relative"},children:e.jsxs("div",{style:{flex:1,display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.jsxs("div",{style:{display:"flex",flexDirection:"column",justifyContent:"space-between",height:"100%"},children:[e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"16px"},children:[e.jsx("span",{style:{fontFamily:a?.fontFamily||l.typography.fontFamily,fontSize:"16px",fontWeight:500,color:i.textSecondary,lineHeight:"24px"},children:"Amount"}),e.jsx("div",{style:{fontFamily:a?.fontFamily||l.typography.fontFamily,fontSize:"40px",fontWeight:700,color:r?`${i.textPrimary}28`:i.textPrimary,lineHeight:"1.08",letterSpacing:"-1.2px"},children:t?.selectedAsset?.amount||"0.00"})]}),e.jsx("span",{style:{fontFamily:a?.fontFamily||l.typography.fontFamily,fontSize:"14px",fontWeight:500,color:i.textSecondary,lineHeight:"20px",letterSpacing:"-0.14px"},children:t?.usdValue||"$0.00"})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"flex-end",justifyContent:"space-between",height:"100%",gap:"12px"},children:[e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"8px",alignItems:"flex-end"},children:[e.jsx("span",{style:{fontFamily:a?.fontFamily||l.typography.fontFamily,fontSize:"12px",fontWeight:500,color:i.textSecondary,lineHeight:"16px"},children:t?.balanceLabel||"Balance: 0.00"}),e.jsx(ya,{selectedAsset:t?.selectedAsset,availableAssets:n,onAssetSelect:d,disabled:r,styles:a,theme:l})]}),e.jsx(ba,{progressIndex:t?.progressIndex||0})]})]})})},Ca=({isOpen:t,onClose:n,pairLabel:s,pairApr:r,pairAddressLabel:a,lpLabel:l,onViewPool:i,primaryAsset:d,secondaryAsset:c,onPrimaryAssetChange:h,onSecondaryAssetChange:u,availableAssets:f,showSecondaryAsset:g,onAddSecondaryAsset:p,alertVariant:y="none",crossNetworkCopy:v,onClickDepositCollateral:x,transactionDetailsCollapsed:k=!0,onToggleTransactionDetails:U,transactionDetails:S,isSubmitting:C=!1,canSubmit:I=!1,onSubmit:F,styles:W})=>{const{primaryColor:E,theme:B,dk:b,dark:R}=K.useSpiceBrand(W),[$,X]=o.useState(!1),A=e.jsxs("div",{style:{display:"flex",gap:"6px",alignItems:"flex-start",flexWrap:"nowrap"},children:[e.jsxs("p",{style:{fontSize:"10px",color:b.textSecondary,margin:0,lineHeight:"1.6",letterSpacing:"0.2px",fontFamily:W?.fontFamily||B.typography.fontFamily,flex:1},children:["Provide liquidity to ",s," pair using assets on 10+ networks in a one-click native UX, powered by Spice Flow"]}),e.jsxs("button",{onClick:()=>X(!$),style:{backgroundColor:R?b.hoverBg:"#f3f4f6",border:`0.436px solid ${E}`,borderRadius:"6.184px",padding:"2px 4px",height:"auto",display:"flex",alignItems:"center",gap:"4px",cursor:"pointer",fontFamily:"'IBM Plex Mono', monospace",fontSize:"7.902px",fontWeight:500,color:E,textTransform:"uppercase",letterSpacing:"-0.3556px",flexShrink:0,marginTop:"2px"},children:[e.jsx("span",{children:$?"Collapse":"Expand to learn more"}),e.jsx("svg",{width:"10",height:"10",viewBox:"0 0 12 12",fill:"none",style:{transform:$?"rotate(180deg)":"none"},children:e.jsx("path",{d:"M3 4.5L6 7.5L9 4.5",stroke:E,strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})]})]});return e.jsx(on,{isOpen:t,onClose:n,title:"Provide Liquidity with Spice Flow",subtitle:A,styles:W,theme:B,maxWidth:"422px",children:e.jsxs("div",{style:{padding:"0 26px",display:"flex",flexDirection:"column",gap:"16px"},children:[y==="crossNetworkAssets"&&v&&e.jsx("div",{style:{backgroundColor:b.cardBg,border:`0.5px solid ${E}`,borderRadius:"6px",padding:"10px 10px",display:"flex",flexDirection:"column",gap:"15px"},children:e.jsxs("div",{style:{display:"flex",gap:"4px",alignItems:"flex-start"},children:[e.jsxs("svg",{width:"18",height:"18",viewBox:"0 0 12 12",fill:"none",style:{marginTop:"2px",flexShrink:0},children:[e.jsx("circle",{cx:"6",cy:"6",r:"5",stroke:E,strokeWidth:"1"}),e.jsx("text",{x:"6",y:"8",textAnchor:"middle",fontSize:"8",fill:E,children:"i"})]}),e.jsxs("div",{style:{flex:1},children:[e.jsx("p",{style:{fontSize:"12px",color:b.textSecondary,margin:0,lineHeight:"19px",letterSpacing:"-0.45px",fontFamily:W?.fontFamily||B.typography.fontFamily},children:v.summary}),e.jsx("p",{style:{fontSize:"12px",color:b.textSecondary,margin:"4px 0 0 0",lineHeight:"19px",letterSpacing:"-0.45px",fontFamily:W?.fontFamily||B.typography.fontFamily},children:v.body})]})]})}),y==="noCollateral"&&e.jsxs("div",{style:{backgroundColor:b.cardBg,border:`0.5px solid ${E}`,borderRadius:"6px",padding:"15px 10px",display:"flex",flexDirection:"column",gap:"15px"},children:[e.jsx(Ge.Button,{variant:"primary",onClick:x,style:{backgroundColor:E,border:`1px solid ${R?b.cardBorder:"rgba(0, 0, 0, 0.53)"}`,borderRadius:"3px",padding:"4px 47px",height:"37px",fontFamily:"'IBM Plex Mono', monospace",fontSize:"14px",fontWeight:500,color:R?b.textPrimary:"#0e0d0b",textTransform:"uppercase",letterSpacing:"-0.42px"},children:"Deposit collateral"}),e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"4px"},children:e.jsxs("div",{style:{display:"flex",gap:"4px",alignItems:"center"},children:[e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 12 12",fill:"none",style:{flexShrink:0},children:[e.jsx("circle",{cx:"6",cy:"6",r:"5",stroke:b.textSecondary,strokeWidth:"1"}),e.jsx("text",{x:"6",y:"8",textAnchor:"middle",fontSize:"8",fill:b.textSecondary,children:"i"})]}),e.jsx("p",{style:{fontSize:"12px",color:b.textSecondary,margin:0,lineHeight:"19px",letterSpacing:"-0.45px",fontFamily:W?.fontFamily||B.typography.fontFamily},children:"You don't have any usable collateral in your Spicenet Account to provide liquidity. Deposit USDC/USDT collateral to get started."})]})})]}),e.jsx(ma,{pairLabel:s,pairApr:r,pairAddressLabel:a,lpLabel:l,onViewPool:i,styles:W,theme:B,token1:d?.selectedAsset?.asset,token2:c?.selectedAsset?.asset}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"8px",position:"relative"},children:[e.jsx(ko,{assetInput:d,availableAssets:f,onAssetChange:h,styles:W,theme:B}),e.jsx("button",{onClick:p,style:{position:"absolute",left:"50%",top:"50%",transform:"translate(-50%, -50%)",width:"40px",height:"40px",borderRadius:"10px",backgroundColor:E,border:"none",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",zIndex:10},children:e.jsx("svg",{width:"18",height:"18",viewBox:"0 0 18 18",fill:"none",children:e.jsx("path",{d:"M9 5V13M5 9H13",stroke:"#ffffff",strokeWidth:"2",strokeLinecap:"round"})})}),e.jsx(ko,{assetInput:c,availableAssets:f,onAssetChange:u||(()=>{}),disabled:!c?.selectedAsset,styles:W,theme:B})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:[e.jsxs("button",{onClick:U,style:{display:"flex",gap:"4px",alignItems:"center",background:"none",border:"none",cursor:"pointer",padding:0},children:[e.jsx("span",{style:{fontFamily:W?.fontFamily||B.typography.fontFamily,fontSize:"12px",fontWeight:600,color:b.textSecondary},children:"Transaction Details"}),e.jsx("svg",{width:"14",height:"14",viewBox:"0 0 12 12",fill:"none",style:{transform:k?"rotate(0deg)":"rotate(180deg)",transition:"transform 0.2s"},children:e.jsx("path",{d:"M3 4.5L6 7.5L9 4.5",stroke:b.textSecondary,strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})]}),!k&&S&&S.length>0&&e.jsx("div",{style:{padding:"12px 0",display:"flex",flexDirection:"column",gap:"8px"},children:S.map((O,L)=>e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsx("span",{style:{fontFamily:"'IBM Plex Mono', monospace",fontSize:"14px",fontWeight:500,color:b.textSecondary,textTransform:"uppercase",lineHeight:"1.56"},children:O.label}),e.jsx("span",{style:{fontFamily:"'IBM Plex Mono', monospace",fontSize:"14px",fontWeight:500,color:O.isPositive?R?b.successText:"#1aa362":b.textSecondary,textTransform:"uppercase",lineHeight:"1.56"},children:O.value})]},L))})]}),e.jsx(Ge.Button,{variant:"outline",fullWidth:!0,onClick:F,loading:C,disabled:!I,theme:B,style:{backgroundColor:E,border:`1px solid ${R?b.buttonBorder:"#0e0d0b"}`,color:R?b.textPrimary:"#0e0d0b",fontFamily:"'IBM Plex Mono', monospace",fontSize:"18px",fontWeight:500,textTransform:"uppercase",padding:"8px 0"},children:"Provide Liquidity"})]})})},Is=({color:t})=>e.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",children:[e.jsx("circle",{cx:"7",cy:"7",r:"6.5",stroke:t,strokeWidth:"1.2"}),e.jsx("path",{d:"M7 6v4",stroke:t,strokeWidth:"1.2",strokeLinecap:"round"}),e.jsx("circle",{cx:"7",cy:"4.5",r:"0.7",fill:t})]}),wa=({content:t,label:n="More info",textColor:s="#f9fafb",backgroundColor:r="#111827",borderColor:a="rgba(255,255,255,0.08)",accentColor:l="#9ca3af",children:i})=>{const d=o.useId(),[c,h]=o.useState(!1),u=o.useRef(null),[f,g]=o.useState(!1),[p,y]=o.useState(null);o.useEffect(()=>{g(!0)},[]),o.useLayoutEffect(()=>{if(!c||!u.current)return;const x=()=>{if(!u.current)return;const k=u.current.getBoundingClientRect(),U=Math.min(220,window.innerWidth-48),S=Math.min(Math.max(k.left+k.width/2,24+U/2),window.innerWidth-24-U/2),C=k.top>84;y({top:C?k.top-10:k.bottom+10,left:S,placement:C?"top":"bottom"})};return x(),window.addEventListener("scroll",x,!0),window.addEventListener("resize",x),()=>{window.removeEventListener("scroll",x,!0),window.removeEventListener("resize",x)}},[c]);const v=c&&f&&p?Zn.createPortal(e.jsxs("span",{id:d,role:"tooltip",style:{position:"fixed",left:p.left,top:p.top,transform:p.placement==="top"?"translate(-50%, -100%)":"translate(-50%, 0)",width:"220px",maxWidth:"min(220px, calc(100vw - 48px))",padding:"10px 12px",borderRadius:"10px",backgroundColor:r,color:s,border:`1px solid ${a}`,boxShadow:"0 18px 45px rgba(0,0,0,0.28)",fontSize:"11px",lineHeight:"1.45",fontWeight:500,textAlign:"left",zIndex:9999,pointerEvents:"none"},children:[t,e.jsx("span",{"aria-hidden":"true",style:{position:"absolute",left:"50%",width:"10px",height:"10px",transform:"translateX(-50%) rotate(45deg)",backgroundColor:r,...p.placement==="top"?{bottom:"-6px",borderRight:`1px solid ${a}`,borderBottom:`1px solid ${a}`}:{top:"-6px",borderTop:`1px solid ${a}`,borderLeft:`1px solid ${a}`}}})]}),document.body):null;return e.jsxs(e.Fragment,{children:[e.jsx("span",{ref:u,style:{position:"relative",display:"inline-flex",alignItems:"center",justifyContent:"center",flexShrink:0},onMouseEnter:()=>h(!0),onMouseLeave:()=>h(!1),children:e.jsx("button",{type:"button","aria-label":n,"aria-describedby":c?d:void 0,onFocus:()=>h(!0),onBlur:()=>h(!1),style:{width:"18px",height:"18px",borderRadius:"999px",display:"inline-flex",alignItems:"center",justifyContent:"center",border:`1px solid ${a}`,backgroundColor:"transparent",color:l,cursor:"help",padding:0,outline:"none",boxShadow:c?`0 0 0 2px ${l}26`:"none",transition:"border-color 120ms ease, box-shadow 120ms ease, color 120ms ease"},children:i||e.jsx(Is,{color:l})})}),v]})};function rs(t,n){if(t===0n)return"0";const s=10n**BigInt(n),r=t/s,a=(t%s).toString().padStart(n,"0").slice(0,6).replace(/0+$/,"");return a?r===0n&&/^0+$/.test(a)?"< 0.000001":`${r.toString()}.${a}`:r.toString()}function js(t,n,s){const r=`${rs(t,n)} ${s}`;return t===0n?r:`-${r}`}const Es=({fontFamily:t,textPrimary:n,textSecondary:s,cardBg:r,cardBorder:a,resolvedDark:l,darkCardBorder:i,primaryColor:d,feePreview:c,isLoading:h,errorText:u,directExecutionFeeNote:f=!1})=>{const g=l?i??a:"#e5e7eb",p=l?"#111214":"#111827",y=l?"rgba(255,255,255,0.08)":"rgba(17,24,39,0.12)",v="#f87171",x=l?"#d1d5db":"#4b5563",k=l?"#f3f4f6":n,[U,S]=o.useState(!1),C=!!u,I=C?null:c,F=I?[{label:"Total Required",help:"Total amount required to fund this action.",value:`${rs(I.grossAmount,I.decimals)} ${I.symbol}`,tone:"default"},{label:"Spicenet Fee",help:"Fees paid to Spicenet for intent processing and execution.",value:js(I.spicenetFee,I.decimals,I.symbol),tone:"fee"},{label:"Gas Fee",help:"Gas fee shown in the same token you are using for this action.",value:js(I.gasFee,I.decimals,I.symbol),tone:"fee"},{label:"Used in TX",help:"Resulting amount of funds used in the transaction.",value:`${rs(I.netAmount,I.decimals)} ${I.symbol}`,tone:"default"}]:[];I&&js(I.totalFee??0n,I.decimals,I.symbol);const W=I?`${rs(I.grossAmount,I.decimals)} ${I.symbol}`:null;return C?e.jsx("div",{style:{backgroundColor:r,border:`1px solid ${a}`,borderRadius:l?"8px":"7px",padding:"14px 16px 12px 16px",marginBottom:"16px",boxShadow:l?"inset 0 1px 0 rgba(255,255,255,0.03)":"none"},children:e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"10px"},children:[e.jsx("span",{style:{fontSize:"17px",fontWeight:500,color:x,fontFamily:t,lineHeight:"24px"},children:"Fee"}),e.jsx("div",{style:{color:v,fontSize:"12px",lineHeight:"1.55",fontFamily:t},children:u})]})}):e.jsxs("div",{style:{backgroundColor:r,border:`1px solid ${a}`,borderRadius:l?"8px":"7px",padding:"14px 16px 12px 16px",marginBottom:"16px",boxShadow:l?"inset 0 1px 0 rgba(255,255,255,0.03)":"none"},children:[e.jsxs("button",{type:"button",onClick:()=>S(E=>!E),style:{display:"flex",justifyContent:"space-between",alignItems:"center",width:"100%",gap:"12px",marginBottom:U?"14px":0,background:"none",border:"none",padding:0,cursor:"pointer",textAlign:"left"},children:[e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"4px"},children:[e.jsx("span",{style:{fontSize:"17px",fontWeight:500,color:x,fontFamily:t,lineHeight:"24px"},children:"Fee"}),U&&e.jsx("span",{style:{fontSize:"12px",color:s,fontFamily:t,lineHeight:"1.45"},children:"What is funded, spent, and taken as fees"})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",flexShrink:0},children:[W&&!f&&e.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"flex-end",gap:"2px",minWidth:0},children:[e.jsx("span",{style:{fontSize:"10px",fontWeight:700,color:s,fontFamily:t,letterSpacing:"0.08em",textTransform:"uppercase"},children:"Total required"}),e.jsx("span",{style:{fontSize:"14px",fontWeight:700,color:k,fontFamily:t,whiteSpace:"nowrap"},children:W})]}),h&&!f&&e.jsx("span",{style:{fontSize:"11px",fontWeight:600,color:d,fontFamily:t,padding:"6px 9px",borderRadius:"999px",backgroundColor:l?"rgba(255,255,255,0.04)":"rgba(0,0,0,0.035)",border:`1px solid ${l?g:"rgba(0,0,0,0.06)"}`,whiteSpace:"nowrap"},children:"Recalculating"}),e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",style:{transform:U?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.2s ease",flexShrink:0},children:e.jsx("path",{d:"M4 6L8 10L12 6",stroke:s,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]})]}),e.jsx("div",{style:{overflow:"hidden",maxHeight:U?"480px":"0px",opacity:U?1:0,transition:"max-height 0.24s ease, opacity 0.18s ease"},children:f?e.jsx("p",{style:{margin:0,color:s,fontSize:"12px",lineHeight:"1.55",fontFamily:t},children:"This path executes directly from the external wallet. Network gas is paid in-wallet, so Spicenet cannot pre-estimate that gas or charge a Spicenet fee here."}):F.length>0?e.jsxs(e.Fragment,{children:[e.jsx("div",{style:{display:"grid",gap:"10px"},children:F.map((E,B)=>e.jsxs("div",{style:{display:"grid",gridTemplateColumns:"minmax(0, 1fr) auto",alignItems:"center",gap:"12px",paddingTop:B===0?0:"10px",borderTop:B===0?"none":`1px solid ${g}`,opacity:h?.74:1,transition:"opacity 120ms ease"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",minWidth:0},children:[e.jsx("span",{style:{fontSize:"12px",color:s,fontFamily:t,fontWeight:500},children:E.label}),e.jsx(wa,{content:E.help,label:`${E.label} info`,textColor:"#f9fafb",backgroundColor:p,borderColor:y,accentColor:l?"#8f96a3":"#6b7280"})]}),e.jsx("span",{style:{fontSize:"12px",color:E.tone==="fee"?v:k,fontFamily:'"IBM Plex Mono", monospace',textAlign:"right",fontWeight:E.label==="Used in TX"?600:500,letterSpacing:"-0.01em"},children:E.value})]},E.label))}),e.jsx("div",{style:{marginTop:"12px",paddingTop:"12px",borderTop:`1px solid ${g}`,fontSize:"11px",color:s,fontFamily:t,lineHeight:"1.45"},children:I?.gasQuoteSource==="estimated"?"Gas quote uses a live estimate.":I?.gasQuoteSource==="configured_fallback"?"Gas quote uses a configured fallback.":"Gas quote is currently zero."})]}):e.jsx("div",{style:{fontSize:"12px",color:u?v:s,fontFamily:t,opacity:u?1:.8,lineHeight:"1.5"},children:u||"Waiting for fee estimate..."})})]})},va=({options:t,selectedIndex:n,onSelect:s,primaryColor:r,dark:a=!1,textPrimary:l="#111827",textSecondary:i="#6b7280",trackColor:d})=>{const c=t.length-1,h=d||(a?"#3a3a3a":"#d1d5db"),u=a?"4px":"50%",f=a?"none":"2px solid white",g=a?"none":`0 0 0 1px ${r}`;return e.jsxs("div",{style:{width:"100%",userSelect:"none"},children:[e.jsxs("div",{style:{position:"relative",paddingBottom:"4px"},children:[e.jsx("div",{style:{position:"absolute",top:"50%",left:0,right:0,height:"4px",background:h,borderRadius:"2px",transform:"translateY(-50%)",pointerEvents:"none"}}),e.jsx("div",{style:{position:"absolute",top:"50%",left:0,width:`${n/c*100}%`,height:"4px",background:r,borderRadius:"2px",transform:"translateY(-50%)",pointerEvents:"none",transition:"width 0.15s ease"}}),e.jsx("input",{type:"range",min:0,max:c,step:1,value:n,onChange:p=>s(Number(p.target.value)),style:{WebkitAppearance:"none",appearance:"none",width:"100%",height:"20px",background:"transparent",cursor:"pointer",outline:"none",border:"none",position:"relative",zIndex:1,margin:0,padding:0}})]}),e.jsx("div",{style:{display:"flex",justifyContent:"space-between",marginTop:"6px"},children:t.map((p,y)=>e.jsxs("div",{onClick:()=>s(y),style:{display:"flex",flexDirection:"column",alignItems:y===0?"flex-start":y===c?"flex-end":"center",cursor:"pointer",flex:1},children:[e.jsx("span",{style:{fontSize:"12px",fontWeight:y===n?700:400,color:y===n?l:i,whiteSpace:"nowrap",transition:"color 0.15s, font-weight 0.15s"},children:p.label}),p.highlight&&e.jsx("span",{style:{fontSize:"10px",color:i,whiteSpace:"nowrap"},children:"(most common)"})]},y))}),e.jsx("style",{children:`
78
78
  input[type='range']::-webkit-slider-thumb {
79
79
  -webkit-appearance: none;
80
80
  width: 20px;
@@ -98,7 +98,7 @@
98
98
  input[type='range']::-webkit-slider-thumb:hover {
99
99
  transform: scale(1.12);
100
100
  }
101
- `})]})};function wa(t){const n=new Date;n.setDate(n.getDate()+Math.floor(t*30));const s=["January","February","March","April","May","June","July","August","September","October","November","December"],r=n.getDate(),i=r===1||r===21||r===31?"st":r===2||r===22?"nd":r===3||r===23?"rd":"th";return`${s[n.getMonth()]} ${r}${i} ${n.getFullYear()}`}const va=({durationMonths:t,fontFamily:n,dark:s=!1,textPrimary:r="#111827",textSecondary:i="#6b7280"})=>e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"4px"},children:[e.jsxs("svg",{width:"13",height:"13",viewBox:"0 0 14 14",fill:"none",style:{flexShrink:0},children:[e.jsx("circle",{cx:"7",cy:"7",r:"6.5",stroke:i,strokeWidth:"1.2"}),e.jsx("path",{d:"M7 6v4",stroke:i,strokeWidth:"1.2",strokeLinecap:"round"}),e.jsx("circle",{cx:"7",cy:"4.5",r:"0.7",fill:i})]}),e.jsx("span",{style:{fontSize:"13px",color:i,fontFamily:n},children:"Estimated Lock Expiry"})]}),e.jsx("span",{style:{fontSize:s?"17px":"13px",fontWeight:700,color:r,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.3px"},children:t!==void 0?wa(t):"\u2014"})]}),ka=({votes:t,fontFamily:n,dark:s=!1,textPrimary:r="#111827",textSecondary:i="#6b7280"})=>e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"4px"},children:[e.jsxs("svg",{width:"13",height:"13",viewBox:"0 0 14 14",fill:"none",style:{flexShrink:0},children:[e.jsx("circle",{cx:"7",cy:"7",r:"6.5",stroke:i,strokeWidth:"1.2"}),e.jsx("path",{d:"M7 6v4",stroke:i,strokeWidth:"1.2",strokeLinecap:"round"}),e.jsx("circle",{cx:"7",cy:"4.5",r:"0.7",fill:i})]}),e.jsx("span",{style:{fontSize:"13px",color:i,fontFamily:n},children:"Estimated voting power"})]}),e.jsx("span",{style:{fontSize:s?"17px":"13px",fontWeight:700,color:r,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.3px"},children:t!==void 0?`${t} votes/epoch`:"\u2014"})]}),Sa=({isOpen:t,data:n,isLocking:s,lockError:r,onContinue:i,onClose:l,primaryColor:a,fontFamily:c,dark:d=!1})=>{const{dk:p}=Y.useSpiceBrand(),[u,f]=o.useState(!1),[g,h]=o.useState(!0),y=d?p.cardBg:"#ffffff",w=d?p.textPrimary:"#111827",x=d?p.textSecondary:"#6b7280",k=d?p.inputPlaceholder:"#9ca3af",U=d?p.successBg:"#d1fae5",v=d?p.successBorder:"#6ee7b7",b=d?p.successText:"#065f46",B=d?p.errorBg:"#fef2f2",T=d?p.errorBorder:"#fecaca";o.useEffect(()=>{t||f(!1)},[t]);const W=()=>{f(!0),setTimeout(l,300)};if(!t||!n)return null;const E=[{label:"NETWORK",value:n.sourceNetwork.toUpperCase()},{label:"DEPOSITED AMOUNT",value:`${n.depositedAmount} ${n.depositedSymbol}`,positive:!0}];return e.jsxs("div",{style:{position:"absolute",bottom:0,left:0,right:0,zIndex:10,animation:u?"lockSlideDown 0.3s ease-in":"lockSlideUp 0.3s ease-out",pointerEvents:"auto"},children:[e.jsxs("div",{style:{backgroundColor:y,width:"100%",padding:"18px 24px",boxShadow:d?"0 -4px 20px rgba(0,0,0,0.4)":"0 -4px 20px rgba(0,0,0,0.15)"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",backgroundColor:U,border:`1px solid ${v}`,borderRadius:"8px",padding:"10px 14px",marginBottom:"16px"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",children:[e.jsx("circle",{cx:"10",cy:"10",r:"10",fill:"#10b981"}),e.jsx("path",{d:"M6 10l3 3 5-6",stroke:"#fff",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]}),e.jsx("span",{style:{fontSize:"13px",fontWeight:700,color:b,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.3px"},children:"CONFIRMED TRANSACTION"})]}),n.explorerUrl&&e.jsxs("a",{href:n.explorerUrl,target:"_blank",rel:"noopener noreferrer",style:{fontSize:"12px",color:b,textDecoration:"none",display:"flex",alignItems:"center",gap:"4px",fontFamily:c},children:["View on explorer",e.jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:"1.5",children:e.jsx("path",{d:"M2.5 9.5L9.5 2.5M9.5 2.5H5M9.5 2.5V7"})})]})]}),e.jsxs("div",{onClick:()=>h(I=>!I),style:{display:"flex",alignItems:"center",justifyContent:"space-between",cursor:"pointer",marginBottom:"8px"},children:[e.jsx("span",{style:{fontSize:"13px",fontWeight:500,color:x,fontFamily:c},children:"Transaction Details"}),e.jsxs("div",{style:{display:"flex",gap:"8px",alignItems:"center"},children:[e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",style:{transform:g?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.25s ease"},children:e.jsx("path",{d:"M4 6L8 10L12 6",stroke:x,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})}),e.jsx("button",{onClick:I=>{I.stopPropagation(),W()},style:{background:"none",border:"none",cursor:"pointer",padding:"2px",color:x,display:"flex",alignItems:"center"},children:e.jsx("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",children:e.jsx("path",{d:"M11 3L3 11M3 3l8 8",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round"})})})]})]}),e.jsx("div",{style:{overflow:"hidden",maxHeight:g?"200px":"0",opacity:g?1:0,transition:"max-height 0.3s ease, opacity 0.3s ease",marginBottom:g?"16px":"8px",display:"flex",flexDirection:"column",gap:"10px"},children:E.map(I=>e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsx("span",{style:{fontSize:"12px",fontWeight:500,color:k,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px"},children:I.label}),e.jsx("span",{style:{fontSize:"12px",fontWeight:600,color:I.positive?"#10b981":w,fontFamily:'"IBM Plex Mono", monospace'},children:I.value})]},I.label))}),r&&e.jsx("div",{style:{marginBottom:"12px",padding:"10px 14px",backgroundColor:B,border:`1px solid ${T}`,borderRadius:"6px"},children:e.jsx("p",{style:{color:"#ef4444",fontSize:"13px",margin:0,fontFamily:c},children:r})}),e.jsx(Ze.Button,{variant:"outline",fullWidth:!0,onClick:i,disabled:s,loading:s,dark:d,styles:{button:{backgroundColor:a}},style:{height:"48px"},children:s?"LOCKING...":"CONTINUE \u2192"}),e.jsx("div",{style:{marginTop:"12px",display:"flex",justifyContent:"center"},children:e.jsx("img",{src:as,alt:"Powered by SpiceNet",style:{height:"auto",width:"130px"}})})]}),e.jsx("style",{children:`
101
+ `})]})};function ka(t){const n=new Date;n.setDate(n.getDate()+Math.floor(t*30));const s=["January","February","March","April","May","June","July","August","September","October","November","December"],r=n.getDate(),a=r===1||r===21||r===31?"st":r===2||r===22?"nd":r===3||r===23?"rd":"th";return`${s[n.getMonth()]} ${r}${a} ${n.getFullYear()}`}const Sa=({durationMonths:t,fontFamily:n,dark:s=!1,textPrimary:r="#111827",textSecondary:a="#6b7280"})=>e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"4px"},children:[e.jsxs("svg",{width:"13",height:"13",viewBox:"0 0 14 14",fill:"none",style:{flexShrink:0},children:[e.jsx("circle",{cx:"7",cy:"7",r:"6.5",stroke:a,strokeWidth:"1.2"}),e.jsx("path",{d:"M7 6v4",stroke:a,strokeWidth:"1.2",strokeLinecap:"round"}),e.jsx("circle",{cx:"7",cy:"4.5",r:"0.7",fill:a})]}),e.jsx("span",{style:{fontSize:"13px",color:a,fontFamily:n},children:"Estimated Lock Expiry"})]}),e.jsx("span",{style:{fontSize:s?"17px":"13px",fontWeight:700,color:r,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.3px"},children:t!==void 0?ka(t):"\u2014"})]}),Ia=({votes:t,fontFamily:n,dark:s=!1,textPrimary:r="#111827",textSecondary:a="#6b7280"})=>e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"4px"},children:[e.jsxs("svg",{width:"13",height:"13",viewBox:"0 0 14 14",fill:"none",style:{flexShrink:0},children:[e.jsx("circle",{cx:"7",cy:"7",r:"6.5",stroke:a,strokeWidth:"1.2"}),e.jsx("path",{d:"M7 6v4",stroke:a,strokeWidth:"1.2",strokeLinecap:"round"}),e.jsx("circle",{cx:"7",cy:"4.5",r:"0.7",fill:a})]}),e.jsx("span",{style:{fontSize:"13px",color:a,fontFamily:n},children:"Estimated voting power"})]}),e.jsx("span",{style:{fontSize:s?"17px":"13px",fontWeight:700,color:r,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.3px"},children:t!==void 0?`${t} votes/epoch`:"\u2014"})]}),ja=({isOpen:t,data:n,isLocking:s,lockError:r,onContinue:a,onClose:l,primaryColor:i,fontFamily:d,dark:c=!1})=>{const{dk:h}=K.useSpiceBrand(),[u,f]=o.useState(!1),[g,p]=o.useState(!0),y=c?h.cardBg:"#ffffff",v=c?h.textPrimary:"#111827",x=c?h.textSecondary:"#6b7280",k=c?h.inputPlaceholder:"#9ca3af",U=c?h.successBg:"#d1fae5",S=c?h.successBorder:"#6ee7b7",C=c?h.successText:"#065f46",I=c?h.errorBg:"#fef2f2",F=c?h.errorBorder:"#fecaca";o.useEffect(()=>{t||f(!1)},[t]);const W=()=>{f(!0),setTimeout(l,300)};if(!t||!n)return null;const E=[{label:"NETWORK",value:n.sourceNetwork.toUpperCase()},{label:"DEPOSITED AMOUNT",value:`${n.depositedAmount} ${n.depositedSymbol}`,positive:!0}];return e.jsxs("div",{style:{position:"absolute",bottom:0,left:0,right:0,zIndex:10,animation:u?"lockSlideDown 0.3s ease-in":"lockSlideUp 0.3s ease-out",pointerEvents:"auto"},children:[e.jsxs("div",{style:{backgroundColor:y,width:"100%",padding:"18px 24px",boxShadow:c?"0 -4px 20px rgba(0,0,0,0.4)":"0 -4px 20px rgba(0,0,0,0.15)"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",backgroundColor:U,border:`1px solid ${S}`,borderRadius:"8px",padding:"10px 14px",marginBottom:"16px"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[e.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",children:[e.jsx("circle",{cx:"10",cy:"10",r:"10",fill:"#10b981"}),e.jsx("path",{d:"M6 10l3 3 5-6",stroke:"#fff",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]}),e.jsx("span",{style:{fontSize:"13px",fontWeight:700,color:C,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.3px"},children:"CONFIRMED TRANSACTION"})]}),n.explorerUrl&&e.jsxs("a",{href:n.explorerUrl,target:"_blank",rel:"noopener noreferrer",style:{fontSize:"12px",color:C,textDecoration:"none",display:"flex",alignItems:"center",gap:"4px",fontFamily:d},children:["View on explorer",e.jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:"1.5",children:e.jsx("path",{d:"M2.5 9.5L9.5 2.5M9.5 2.5H5M9.5 2.5V7"})})]})]}),e.jsxs("div",{onClick:()=>p(B=>!B),style:{display:"flex",alignItems:"center",justifyContent:"space-between",cursor:"pointer",marginBottom:"8px"},children:[e.jsx("span",{style:{fontSize:"13px",fontWeight:500,color:x,fontFamily:d},children:"Transaction Details"}),e.jsxs("div",{style:{display:"flex",gap:"8px",alignItems:"center"},children:[e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",style:{transform:g?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.25s ease"},children:e.jsx("path",{d:"M4 6L8 10L12 6",stroke:x,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})}),e.jsx("button",{onClick:B=>{B.stopPropagation(),W()},style:{background:"none",border:"none",cursor:"pointer",padding:"2px",color:x,display:"flex",alignItems:"center"},children:e.jsx("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",children:e.jsx("path",{d:"M11 3L3 11M3 3l8 8",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round"})})})]})]}),e.jsx("div",{style:{overflow:"hidden",maxHeight:g?"200px":"0",opacity:g?1:0,transition:"max-height 0.3s ease, opacity 0.3s ease",marginBottom:g?"16px":"8px",display:"flex",flexDirection:"column",gap:"10px"},children:E.map(B=>e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsx("span",{style:{fontSize:"12px",fontWeight:500,color:k,fontFamily:'"IBM Plex Mono", monospace',letterSpacing:"0.5px"},children:B.label}),e.jsx("span",{style:{fontSize:"12px",fontWeight:600,color:B.positive?"#10b981":v,fontFamily:'"IBM Plex Mono", monospace'},children:B.value})]},B.label))}),r&&e.jsx("div",{style:{marginBottom:"12px",padding:"10px 14px",backgroundColor:I,border:`1px solid ${F}`,borderRadius:"6px"},children:e.jsx("p",{style:{color:"#ef4444",fontSize:"13px",margin:0,fontFamily:d},children:r})}),e.jsx(Ge.Button,{variant:"outline",fullWidth:!0,onClick:a,disabled:s,loading:s,dark:c,styles:{button:{backgroundColor:i}},style:{height:"48px"},children:s?"LOCKING...":"CONTINUE \u2192"}),e.jsx("div",{style:{marginTop:"12px",display:"flex",justifyContent:"center"},children:e.jsx("img",{src:is,alt:"Powered by SpiceNet",style:{height:"auto",width:"130px"}})})]}),e.jsx("style",{children:`
102
102
  @keyframes lockSlideUp {
103
103
  from { transform: translateY(100%); }
104
104
  to { transform: translateY(0); }
@@ -111,9 +111,9 @@
111
111
  from { transform: rotate(0deg); }
112
112
  to { transform: rotate(360deg); }
113
113
  }
114
- `})]})},Es=[{type:"function",name:"createWithdrawalRequest",inputs:[{name:"request",type:"tuple",internalType:"struct Spicenet.CreateWithdrawalRequestArgs",components:[{name:"chainId",type:"string",internalType:"string"},{name:"idempotenceKey",type:"bytes32",internalType:"bytes32"},{name:"nbf",type:"uint256",internalType:"uint256"},{name:"exp",type:"uint256",internalType:"uint256"},{name:"metadata",type:"string",internalType:"string"},{name:"transfers",type:"tuple[]",internalType:"struct Spicenet.CreateTokenTransfer[]",components:[{name:"token",type:"string",internalType:"string"},{name:"to",type:"string",internalType:"string"},{name:"amount",type:"uint256",internalType:"uint256"}]}]}],outputs:[],stateMutability:"nonpayable"}];function ko(t,n){const s=t.intents.flatMap(i=>i.batches).filter(i=>{const l=BigInt(i.quotedAmount),a=BigInt(i.totalDebit),c=BigInt(i.feeBreakdown.gasFee),d=BigInt(i.feeBreakdown.spicenetFee);return l>0n||a>0n||c>0n||d>0n});if(s.length===0||s.length>1)return null;const r=s[0];return{symbol:n.symbol,decimals:n.decimals,grossAmount:BigInt(r.totalDebit),netAmount:BigInt(r.quotedAmount),totalFee:BigInt(r.feeBreakdown.gasFee)+BigInt(r.feeBreakdown.spicenetFee),spicenetFee:BigInt(r.feeBreakdown.spicenetFee),gasFee:BigInt(r.feeBreakdown.gasFee),gasQuoteSource:r.gasQuoteSource}}function As(t,n){const s=Math.floor(Date.now()/1e3)+600,r=V.hashChainBatches(n);return{user:t,intents:[{mode:"7702",signatureType:"ecdsa",signature:"0x00",nbf:0,exp:s,chainBatches:r.map((i,l)=>({hash:i.hash,chainId:i.chainId,tokenTransfers:n[l].domain==="spicenet"?[]:n[l].tokenTransfers??[],calls:i.calls}))}]}}function So(t,n){if(t.some(i=>i.domain==="spicenet"))return t;const s=t.flatMap(i=>(i.tokenTransfers??[]).filter(l=>l.from==="escrow").map(l=>({chainId:i.chainId,token:O.getAddress(l.token),to:O.getAddress(l.to),amount:BigInt(l.amount)})));if(s.length===0)return t;const r=BigInt(Math.floor(Date.now()/1e3))+3600n;return[{chainId:V.SPICENET_NATIVE_CHAIN_ID,domain:"spicenet",tokenTransfers:[],calls:s.map((i,l)=>{const a=O.keccak256(O.encodeAbiParameters([{type:"address"},{type:"address"},{type:"uint256"},{type:"uint256"},{type:"uint256"}],[n,i.token,i.amount,BigInt(i.chainId),BigInt(Date.now()+l)]));return{to:"0x0000000000000000000000000000000000000000",value:0n,data:O.encodeFunctionData({abi:Es,functionName:"createWithdrawalRequest",args:[{chainId:`evm:${i.chainId}`,idempotenceKey:a,nbf:0n,exp:r,metadata:"{}",transfers:[{token:i.token.toLowerCase(),to:i.to,amount:i.amount}]}]})}})},...t]}const Ia=({isOpen:t,onClose:n,lockBatches:s,lockTokenSymbol:r,lockTokenLogoURI:i,destinationInputHook:l,sourceAssetInputHook:a,lockDurationHook:c,lockChainId:d,durationOptions:p,votingPowerEstimate:u,sourceChains:f,sourceAssets:g=[],escrowAddress:h,includeWalletAssets:y=!1,destinationTokenAddress:w,onLockSuccess:x,onLockExecute:k,sourceToDestinationConversionRate:U,estimatedOutputAmount:v,onAddFunds:b,buildSpicenetBatch:B,styles:T,dark:W=!1})=>{const{theme:E,dark:I,primaryColor:C,dk:P}=Y.useSpiceBrand(T,W),J=E.typography.fontFamily,K=o.useContext(Y.SpiceFlowProviderContext),j=(K?.mode||"7702")!=="7702",M=I?P.cardBg:T?.assetSelector?.backgroundColor||T?.secondaryBackground||"#e9e9e9",ne=I?`1px solid ${P.cardBorder}`:"0.5px solid #A8A8A7",$=I?"12px":"6px",L=I?P.textPrimary:"#111827",Q=I?P.textSecondary:"#6b7280",se=o.useMemo(()=>({...T,assetSelector:{...T?.assetSelector,backgroundColor:I?P.cardBg:T?.assetSelector?.backgroundColor,borderRadius:I?"12px":T?.assetSelector?.borderRadius},secondaryBackground:I?P.cardBg:T?.secondaryBackground}),[T,I]),ae=o.useMemo(()=>I?{...E,colors:{...E.colors,secondary:P.cardBg,surfaceHover:P.hoverBg,border:P.cardBorder,borderHover:P.inputBorder}}:E,[I,E]),[S,z]=o.useState(null),[ie,me]=o.useState(0),re=c?.selectedDurationIdx??ie,xe=c?.setSelectedDurationIdx??me,[le,Pe]=o.useState(!1),[ke,Be]=o.useState(null),[ve,Ue]=o.useState(null),[Te,ye]=o.useState(!1),[Je,ze]=o.useState(!1),[ue,Ve]=o.useState(null),[st,Z]=o.useState(!1),R=o.useRef(0),[N,X]=o.useState(!1),[fe,be]=o.useState(null);ht.useWalletClient(),ht.useSwitchChain();const{chain:D,address:oe}=ht.useAccount();ht.useConfig();const he=o.useRef(D);o.useEffect(()=>{he.current=D},[D]);const pe=pn(),{isReady:ot,isAuthenticated:rt,isConnected:ct,address:at,provider:Ye,actions:kt}=pe,{externalWallet:It,embeddedAddress:Le,externalAddress:ft}=zn(),{intentStatus:Xe,startStatusPolling:$t,clearStatus:zt}=ps({checkStepStatus:(ee,te)=>Y.relayerService.checkStepStatus(ee,te),retryStep:async(ee,te)=>{const[Re,Ke]=ee.split("/"),qe=parseInt(Ke||"0",10);await Y.relayerService.executeStep(Re,qe,te,{action:"execute"})},maxRetries:3}),{assets:dt,refetch:qt}=An({address:at,supportedChains:f,enabled:ct&&!j,refetchInterval:3e4}),Bt=o.useMemo(()=>{if(g.length===0)return dt;const ee=new Set(g.map(te=>te.toLowerCase()));return dt.filter(te=>ee.has(te.address.toLowerCase()))},[dt,g]),De=un(),yt=j?oe||ft:De,jt=o.useMemo(()=>{if(!y)return[];const ee=new Set,te=[],Re=Ke=>{if(!Ke)return;const qe=Ke.toLowerCase();ee.has(qe)||(ee.add(qe),te.push(O.getAddress(Ke)))};if(w&&Re(w),j)for(const Ke of g)Re(Ke);return te},[y,j,w,g]),Ft=o.useMemo(()=>jt.map(ee=>ee.toLowerCase()).sort().join(","),[jt]),Pt=o.useMemo(()=>JSON.stringify([...f||[]].sort()),[f]),[Yt,Et]=o.useState([]),tt=o.useRef(0),rn=o.useCallback(async()=>{if(!y||!yt||jt.length===0){console.log("[SpiceLockModal] wallet assets fetch skipped",{includeWalletAssets:y,walletAddressForAssets:yt,walletAssetsToFetchCount:jt.length}),tt.current++,Et([]);return}const ee=++tt.current,te=O.getAddress(yt),Re=f&&f.length>0?f:[d],Ke=jt.map(Ee=>{const Me=Ee.toLowerCase();for(const vt of Re){const de=q.getChainConfig(vt)?.supportedTokens?.find(Se=>Se.address.toLowerCase()===Me);if(de)return{address:Ee,chainId:vt,configToken:{decimals:de.decimals,symbol:de.symbol,name:de.name,logo:de.logo}}}return{address:Ee,chainId:d}}),qe=new Map;for(const Ee of Ke){const Me=qe.get(Ee.chainId)||[];Me.push(Ee),qe.set(Ee.chainId,Me)}const mt=async(Ee,Me)=>{try{const vt=await tn.readContract(Ee,{address:Me.address,abi:q.K,functionName:"balanceOf",args:[te]});let de,Se,_e,He;if(Me.configToken)de=Me.configToken.decimals,Se=Me.configToken.symbol,_e=Me.configToken.name,He=Me.configToken.logo;else{const[F,H,ce]=await Promise.all([tn.readContract(Ee,{address:Me.address,abi:q.K,functionName:"decimals",args:[]}).catch(()=>18),tn.readContract(Ee,{address:Me.address,abi:q.K,functionName:"symbol",args:[]}).catch(()=>"TOKEN"),tn.readContract(Ee,{address:Me.address,abi:q.K,functionName:"name",args:[]}).catch(()=>"TOKEN")]);de=Number(F),Se=H,_e=ce}const m=!!w&&Me.address.toLowerCase()===w.toLowerCase()&&Me.chainId===d;m&&i&&(He=i),m&&r&&!Me.configToken&&(Se==="TOKEN"&&(Se=r),_e==="TOKEN"&&(_e=r));const A=parseFloat((Number(vt)/Math.pow(10,de)).toFixed(6));return{address:Me.address,name:_e,symbol:Se,decimals:de,balance:vt,balanceFormatted:A,balanceUsd:0,logoURI:He,isNative:!1,chainId:Me.chainId}}catch{return null}},gt=await Promise.all(Array.from(qe.entries()).map(async([Ee,Me])=>{let vt;try{vt=q.getClientForChain(Ee)}catch{return[]}const de=[],Se=[];for(const He of Me){const m=de.length;de.push({address:He.address,abi:q.K,functionName:"balanceOf",args:[te]}),He.configToken||de.push({address:He.address,abi:q.K,functionName:"decimals",args:[]},{address:He.address,abi:q.K,functionName:"symbol",args:[]},{address:He.address,abi:q.K,functionName:"name",args:[]}),Se.push({start:m,item:He})}let _e=null;try{_e=await vt.multicall({contracts:de})}catch{_e=null}return _e?Se.map(({start:He,item:m})=>{const A=_e[He],F=A?.status==="success"?A.result:0n;let H,ce,ge,Ie;if(m.configToken)H=m.configToken.decimals,ce=m.configToken.symbol,ge=m.configToken.name,Ie=m.configToken.logo;else{const Ce=_e[He+1],Ae=_e[He+2],et=_e[He+3];H=Ce?.status==="success"?Number(Ce.result):18,ce=Ae?.status==="success"?Ae.result:"TOKEN",ge=et?.status==="success"?et.result:ce}const we=!!w&&m.address.toLowerCase()===w.toLowerCase()&&m.chainId===d;we&&i&&(Ie=i),we&&r&&!m.configToken&&(ce==="TOKEN"&&(ce=r),ge==="TOKEN"&&(ge=r));const Fe=parseFloat((Number(F)/Math.pow(10,H)).toFixed(6));return{address:m.address,name:ge,symbol:ce,decimals:H,balance:F,balanceFormatted:Fe,balanceUsd:0,logoURI:Ie,isNative:!1,chainId:m.chainId}}):(await Promise.all(Me.map(He=>mt(vt,He)))).filter(He=>He!==null)}));if(ee!==tt.current)return;const Ct=gt.flat();console.log("[SpiceLockModal] wallet assets fetched",{wallet:te,chains:Array.from(qe.keys()),lookups:Ke.map(Ee=>({address:Ee.address,chainId:Ee.chainId,symbol:Ee.configToken?.symbol})),assets:Ct.map(Ee=>({address:Ee.address,chainId:Ee.chainId,symbol:Ee.symbol,balance:Ee.balance.toString(),balanceFormatted:Ee.balanceFormatted}))}),Et(Ct)},[y,yt,Ft,Pt,d,w,i,r]);o.useEffect(()=>{if(!y){Et([]);return}rn();const ee=setInterval(()=>{rn()},15e3);return()=>clearInterval(ee)},[rn,y]);const St=o.useCallback(()=>{rn()},[rn]),Ot=o.useMemo(()=>Yt.filter(ee=>ee.balance>0n),[Yt]),Ht=o.useMemo(()=>{if(j)return Ot.map(te=>({...te,_source:"wallet"}));if(!y)return Bt;const ee=[];for(const te of Ot)ee.push({...te,_source:"wallet"});for(const te of Bt)ee.push({...te,_source:"spice"});return ee},[j,y,Ot,Bt]),Rt=o.useRef(null),We=o.useRef(null);o.useEffect(()=>{We.current=S},[S]),o.useEffect(()=>{t||(z(null),Be(null),Ue(null),ye(!1),ze(!1),Ve(null),Pe(!1),X(!1),be(null),Z(!1),zt())},[t,zt]),o.useEffect(()=>{l&&l.assetAmount!==(S?.amount||"")&&z(ee=>ee&&{...ee,amount:l.assetAmount})},[l?.assetAmount]),o.useEffect(()=>{a&&a.assetAmount!==(S?.amount||"")&&z(ee=>ee&&{...ee,amount:a.assetAmount})},[a?.assetAmount]),o.useEffect(()=>{if(!j&&Xe?.overallStatus==="success"&&Xe.intentId&&Rt.current!==Xe.intentId&&at&&Xe.steps.find(ee=>ee.transactionHash)?.transactionHash){Rt.current=Xe.intentId;const ee=We.current;if(!ee?.asset||!ee.amount||ee.asset._source==="wallet"||O.parseUnits(ee.amount,ee.asset.decimals)===0n)return;qt()}},[Xe,at,d,qt,j]);const ut=parseFloat(S?.amount||"")||0,nt=o.useMemo(()=>S?.asset?S.asset._source==="wallet"?S.asset.balanceFormatted??0:Bt.find(ee=>ee.address.toLowerCase()===S.asset.address.toLowerCase()&&ee.chainId===S.asset.chainId)?.balanceFormatted??0:0,[S?.asset,Bt]),Tt=ut>0&&(ue?parseFloat(O.formatUnits(ue.grossAmount,ue.decimals))>nt:ut>nt),Ge=c?.selectedDuration??p[re]??p[0],G=o.useMemo(()=>!S?.asset||!w?!1:S.asset.address.toLowerCase()===w.toLowerCase()&&S.asset.chainId===d,[S?.asset,w,d]),_=o.useMemo(()=>ut<=0?0:G?ut:!U||U<=0?0:ut/U,[ut,U,G]),je=o.useMemo(()=>_<=0?null:_.toLocaleString(void 0,{maximumFractionDigits:2}),[_]),Oe=u&&_>0&&Ge?u(_,Ge.months):void 0,it=o.useMemo(()=>ut<=0?"$0.00":G&&U?(ut*U).toLocaleString(void 0,{style:"currency",currency:"USD",maximumFractionDigits:2}):!U||U<=0?"$0.00":ut.toLocaleString(void 0,{style:"currency",currency:"USD",maximumFractionDigits:2}),[ut,U,G]),xt=o.useMemo(()=>{if(!je)return null;const ee=parseFloat(je.replace(/,/g,""));return G&&U?(ee*U).toLocaleString(void 0,{maximumFractionDigits:2}):U?(ee*U).toLocaleString(void 0,{maximumFractionDigits:2}):null},[je,U,G]),At=o.useCallback(ee=>{z(te=>({asset:ee,amount:te?.asset?.address===ee.address&&te?.asset?.chainId===ee.chainId&&te.amount||""})),Be(null),Ue(null),ze(!1),Ve(null),a?.setSelectedAsset&&a.setSelectedAsset({symbol:ee.symbol,address:ee.address,decimals:ee.decimals,chainId:ee.chainId})},[a?.setSelectedAsset]),Mt=o.useCallback(ee=>{z(te=>te&&{...te,amount:ee}),Be(null),Ue(null),ze(!1),Ve(null),l&&l.setAssetAmount(ee),a&&a.setAssetAmount(ee)},[l,a]),Qe=o.useCallback(ee=>{if(typeof s=="function"){if(!S?.asset||!S.amount)throw new Error("Select an asset and enter an amount");return s({asset:S.asset,amount:ee?.amount??S.amount,amountWei:ee?.amountWei??O.parseUnits(S.amount,S.asset.decimals),grossAmount:ee?.grossAmount,grossAmountWei:ee?.grossAmountWei,feeAdjusted:!!ee})}return s},[s,S]),Ut=o.useCallback(async ee=>{const te=j&&Le||at;if(!ct||!te)throw new Error("Please connect your wallet to continue");if(ee.length===0)throw new Error("No lock batches configured");if(!ot||!rt)throw new Error(`Please authenticate with ${Ye||"wallet provider"} to continue`);const Re=[...new Set(ee.filter(Se=>Se.domain!=="spicenet").map(Se=>Se.chainId))],Ke=[];for(const Se of Re){const _e=q.getClientForChain(Se),He=q.getDelegateContractAddress(Se),m=await V.getAccountNonce(te,_e),A=await kt.signAuthorization({contractAddress:He,chainId:Se,nonce:Number(m)});Ke.push(A)}const qe=V.hashChainBatches(ee),mt=Math.floor(Date.now()/1e3)+60*10,gt=qe.map(Se=>Se.hash),Ct=O.keccak256(O.encodeAbiParameters([{type:"string"},{type:"uint256"},{type:"uint256"},{type:"bytes32[]"}],["ecdsa",0n,BigInt(mt),gt])),Ee=await kt.signMessage({raw:Ct}),Me=typeof Ee=="string"?Ee:Ee.signature;if(!Me)throw new Error("Failed to sign intent authorization");const vt={mode:"7702",signatureType:"ecdsa",signature:Me,nbf:0,exp:mt,chainBatches:qe.map((Se,_e)=>{const He=ee[_e],m=He.domain==="spicenet";return{hash:Se.hash,chainId:Se.chainId,tokenTransfers:m?[]:He.tokenTransfers??[],calls:Se.calls}})},de=await Y.relayerService.createAction({user:te,chainAuthorizations:Ke.map(Se=>({r:Se.r,s:Se.s,yParity:Se.yParity,address:Se.address,chainId:Number(Se.chainId),nonce:Number(Se.nonce)})),intents:[vt]});if(de){const Se=Y.createInitialSteps(ee,q.getChainName),[_e,He]=de.intentIds[0].split("/"),m=parseInt(He||"0",10);$t(de.intentIds[0],Se);for(let A=0;A<ee.length;A++)A>0&&ee[A]?.domain==="spicenet"&&await new Promise(F=>setTimeout(F,5e3)),await qs(()=>Y.relayerService.executeStep(_e,m,A,{action:"execute"}),ee[A]?.domain==="spicenet"?6:3,2e3)}},[pe,$t,j,Le]),pt=o.useCallback(async()=>{const ee=Qe();if(ee.length===0)throw new Error("No lock batches configured");const te=j&&Le||at;if(!ct||!te)throw new Error("Please connect your wallet to continue");let Re=So([...ee],te);const Ke=As(te,Re);await Y.relayerService.estimateActionFees(Ke),await Ut(Re)},[at,ct,j,s,Le,Qe,Ut,S]),$e=o.useCallback(async()=>{if(!S?.asset||!S.amount)throw new Error("Select an asset and enter an amount");if(!at||!De)throw new Error("Embedded wallet not connected");const ee=S.asset,te=O.parseUnits(S.amount,ee.decimals),Re=h||q.getDelegateContractAddress(d),Ke=await kt.getEthereumProvider();await Ke.request({method:"wallet_switchEthereumChain",params:[{chainId:`0x${d.toString(16)}`}]});const qe=q.getChainConfig(d),mt=O.createWalletClient({account:De,transport:O.custom(Ke),chain:qe?.viemChain});let gt;if(ee.isNative||V.isNativeToken(ee.address))gt=await mt.sendTransaction({to:Re,value:te,chain:qe?.viemChain});else{const Ct=O.encodeFunctionData({abi:q.K,functionName:"transfer",args:[Re,te]});gt=await mt.sendTransaction({to:ee.address,data:Ct,chain:qe?.viemChain})}if((await q.getClientForChain(d).waitForTransactionReceipt({hash:gt,timeout:12e4,pollingInterval:2e3,confirmations:1})).status!=="success")throw new Error("Transfer to escrow failed");await qt(),St(),await pt()},[S,at,De,kt,h,d,pt,qt,St]),wt=o.useCallback(async()=>{if(!S?.asset||!S.amount)throw new Error("Select an asset and enter an amount");if(!oe||!It)throw new Error("Please connect your external wallet to continue");const ee=De||Le;if(!ee)throw new Error("Embedded wallet not available \u2014 sign in to create one before locking");if(k){const F=Qe();if(F.length===0)throw new Error("No lock batches configured");const H=S.asset,ce=O.parseUnits(S.amount,H.decimals),ge=await k({asset:H,amount:S.amount,amountWei:ce,lockDurationMonths:Ge?.months??0,chainBatches:F});ge&&x?.(ge);return}const te=Qe();if(te.length===0)throw new Error("No lock batches configured");const Re=S.asset,Ke=O.parseUnits(S.amount,Re.decimals),qe=Re.chainId,mt=h||V.ESCROW_ADDRESS,gt=V.normalizeNativeTokenAddress(Re.address),Ct=Re.isNative||V.isNativeToken(gt);let Ee=null;for(const F of te){const H=F.tokenTransfers?.find(ce=>ce.from==="escrow");if(H){Ee={batch:F,to:H.to,token:H.token,amount:BigInt(H.amount)};break}}const Me=await It.getEthereumProvider();let vt=null;try{const F=await Me.request({method:"eth_chainId"});vt=parseInt(F,16)}catch{vt=null}if(vt!==qe)try{await Me.request({method:"wallet_switchEthereumChain",params:[{chainId:`0x${qe.toString(16)}`}]})}catch(F){if(F?.code===4902||F?.message?.includes("Unrecognized chain ID")){const H=q.getChainConfig(qe);H&&await Me.request({method:"wallet_addEthereumChain",params:[{chainId:`0x${qe.toString(16)}`,chainName:H.name||`Chain ${qe}`,nativeCurrency:H.nativeCurrency||{name:"ETH",symbol:"ETH",decimals:18},rpcUrls:[H.rpcUrl],blockExplorerUrls:H.blockExplorer?[H.blockExplorer]:void 0}]})}else throw F}const de=q.getChainConfig(qe),Se=O.createWalletClient({account:oe,chain:de?.viemChain,transport:O.custom(Me)}),_e=Ct?await Se.sendTransaction({to:ee,value:Ke,chain:de?.viemChain}):await Se.sendTransaction({to:gt,data:O.encodeFunctionData({abi:q.K,functionName:"transfer",args:[ee,Ke]}),chain:de?.viemChain});if((await q.getClientForChain(qe).waitForTransactionReceipt({hash:_e,timeout:12e4,pollingInterval:2e3,confirmations:1})).status!=="success")throw new Error("Transfer to embedded wallet failed");const He={chainId:qe,calls:Ct?[{to:mt,value:Ke,data:"0x"}]:[{to:gt,value:0n,data:O.encodeFunctionData({abi:q.K,functionName:"transfer",args:[mt,Ke]})}]};let m=null;if(Ee){if(!B)throw new Error("Lock batches declare an escrow-backed ERC20 payout but no `buildSpicenetBatch` callback was provided. The relayer rejects 7702 intents with escrow-backed ERC20 transfers unless the intent includes a Spicenet batch authorising the withdrawal.");const F=B({userAddress:ee,destinationChainId:Ee.batch.chainId,deliveryToken:Ee.token,deliveryAmount:Ee.amount,deliveryRecipient:Ee.to});F&&(m={...F,domain:F.domain??"spicenet"})}const A=[He];m&&A.push(m),A.push(...te),await Ut(A)},[S,It,oe,De,Le,h,k,Qe,Ge,x,Ut,B]),Vt=o.useMemo(()=>!S?.asset||ut<=0?!1:j?!G&&!k:!0,[S,ut,j,G,k]),_t=o.useCallback(async()=>{if(!S?.asset||!S.amount||!Vt)return null;if(j){const qe=De||Le;if(!qe)throw new Error("Embedded wallet not available \u2014 sign in to create one before locking");const mt=Qe();if(mt.length===0)throw new Error("No lock batches configured");const gt=S.asset,Ct=O.parseUnits(S.amount,gt.decimals),Ee=gt.chainId,Me=h||V.ESCROW_ADDRESS,vt=V.normalizeNativeTokenAddress(gt.address),de=gt.isNative||V.isNativeToken(vt);let Se=null;for(const F of mt){const H=F.tokenTransfers?.find(ce=>ce.from==="escrow");if(H){Se={batch:F,to:H.to,token:H.token,amount:BigInt(H.amount)};break}}const _e={chainId:Ee,calls:de?[{to:Me,value:Ct,data:"0x"}]:[{to:vt,value:0n,data:O.encodeFunctionData({abi:q.K,functionName:"transfer",args:[Me,Ct]})}]};let He=null;if(Se){if(!B)throw new Error("Lock batches declare an escrow-backed payout but no `buildSpicenetBatch` callback was provided.");const F=B({userAddress:qe,destinationChainId:Se.batch.chainId,deliveryToken:Se.token,deliveryAmount:Se.amount,deliveryRecipient:Se.to});F&&(He={...F,domain:F.domain??"spicenet"})}const m=[_e];He&&m.push(He),m.push(...mt);const A=await Y.relayerService.estimateActionFees(As(qe,m));return ko(A,{symbol:S.asset.symbol,decimals:S.asset.decimals})}const ee=at;if(!ct||!ee)throw new Error("Please connect your wallet to continue");const te=Qe();if(te.length===0)throw new Error("No lock batches configured");const Re=So([...te],ee),Ke=await Y.relayerService.estimateActionFees(As(ee,Re));return ko(Ke,{symbol:S.asset.symbol,decimals:S.asset.decimals})},[S,Vt,j,De,Le,Qe,h,B,at,ct,k]),mn=o.useCallback(async()=>{if(!S?.asset||!S.amount)throw new Error("Select an asset and enter an amount");if(!oe||!It)throw new Error("Please connect your external wallet to continue");const ee=Qe();if(ee.length===0)throw new Error("No lock batches configured");const te=ee.find(Ee=>Ee.chainId===d)||ee[0];if(!te)throw new Error("No lock batch for lock chain");const Re=await It.getEthereumProvider();let Ke=null;try{const Ee=await Re.request({method:"eth_chainId"});Ke=parseInt(Ee,16)}catch{Ke=null}if(Ke!==d)try{await Re.request({method:"wallet_switchEthereumChain",params:[{chainId:`0x${d.toString(16)}`}]})}catch(Ee){if(Ee?.code===4902||Ee?.message?.includes("Unrecognized chain ID")){const Me=q.getChainConfig(d);Me&&await Re.request({method:"wallet_addEthereumChain",params:[{chainId:`0x${d.toString(16)}`,chainName:Me.name||`Chain ${d}`,nativeCurrency:Me.nativeCurrency||{name:"ETH",symbol:"ETH",decimals:18},rpcUrls:[Me.rpcUrl],blockExplorerUrls:Me.blockExplorer?[Me.blockExplorer]:void 0}]})}else throw Ee}const qe=q.getChainConfig(d),mt=O.createWalletClient({account:oe,chain:qe?.viemChain,transport:O.custom(Re)}),gt=q.getClientForChain(d);let Ct;for(const Ee of te.calls){const Me=await mt.sendTransaction({to:Ee.to,data:Ee.data,value:Ee.value,chain:qe?.viemChain});if((await gt.waitForTransactionReceipt({hash:Me,timeout:12e4,pollingInterval:2e3,confirmations:1})).status!=="success")throw new Error("Lock transaction failed");Ct=Me}Ct&&x?.(Ct)},[S,It,oe,Qe,d,x]);o.useEffect(()=>{if(!t||le)return;if(!S?.asset||ut<=0){Ue(null),ye(!1),ze(!1),Ve(null);return}if(!Vt){Ue(null),ye(!1),ze(!0),Ve(null);return}const ee=++R.current;Ue(null),ze(!1),ye(!0);const te=window.setTimeout(()=>{(async()=>{try{const Re=await _t();R.current===ee&&(Ue(null),ze(!0),Re&&Ve(Re))}catch(Re){R.current===ee&&(Ue(Xt(Re,"Unable to calculate fees for this lock.")),ze(!1))}finally{R.current===ee&&ye(!1)}})()},250);return()=>{clearTimeout(te),R.current===ee&&(ye(!1),ze(!1))}},[t,le,S,ut,Vt,_t]),o.useEffect(()=>{if(Xe?.overallStatus==="success"){const ee=Xe.steps.find(te=>te.transactionHash);x?.(ee?.transactionHash)}},[Xe?.overallStatus,x]);const Qt=y&&S?.asset?._source==="wallet"&&S?.asset?.chainId===d,Ne=o.useCallback(async()=>{if(!S?.asset||ut<=0){Be("Select an asset and enter an amount");return}if(Tt){Be("Insufficient balance. Add more assets.");return}Pe(!0),Be(null);const ee=te=>{console.error("[SpiceLockModal] lock failed:",te);const Re=Xt(te,""),Ke=typeof te?.shortMessage=="string"?te.shortMessage:typeof te?.message=="string"?te.message:"";Be(Re||Ke||"Transaction failed. Please try again.")};if(j){if(G){try{await mn()}catch(te){ee(te)}finally{Pe(!1)}return}Z(!0);try{await wt()}catch(te){ee(te)}finally{Pe(!1)}return}Z(!0);try{Qt&&!G?await $e():await pt()}catch(te){ee(te)}finally{Pe(!1)}},[S,ut,Tt,j,wt,mn,Qt,G,$e,pt]),bt=!!S?.asset&&ut>0&&!Tt&&!le&&(!Vt||Je&&!Te&&!ve),Dt=ke||ve,nn=e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",gap:"6px"},children:[e.jsx(Ss,{color:Q}),e.jsxs("p",{style:{fontSize:"13px",color:Q,margin:0,lineHeight:"1.5"},children:["Add ",r," by converting assets from your account"]})]});if(!t)return null;const Kt={backgroundColor:M,border:ne,borderRadius:$,padding:"16px",marginBottom:"16px"};return e.jsx(on,{isOpen:t,onClose:n,title:`Add ${r} to your account`,subtitle:nn,styles:T,dark:I,footerLinkText:"Spicenet accounts \u2192",overlayContent:N?e.jsx("div",{}):void 0,children:e.jsxs("div",{style:{padding:"0 24px 8px 24px",position:"relative"},children:[e.jsxs("div",{style:{marginBottom:"12px"},children:[b&&e.jsx("div",{style:{display:"flex",justifyContent:"flex-end",marginBottom:"6px"},children:e.jsxs("button",{onClick:b,style:{background:"none",border:"none",cursor:"pointer",padding:0,display:"flex",alignItems:"center",gap:"4px",color:C,fontSize:"12px",fontWeight:500,fontFamily:J,textDecoration:"underline",textUnderlineOffset:"2px"},children:["Add Funds",e.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",stroke:C,strokeWidth:"1.8",children:[e.jsx("circle",{cx:"6",cy:"6",r:"5"}),e.jsx("path",{d:"M6 4v4M4 6h4",strokeLinecap:"round"})]})]})}),e.jsx(Fn,{assets:Ht,selectedAsset:S??void 0,onAssetSelect:At,onAmountChange:Mt,label:"Amount",showBalance:!0,showMaxButton:!0,theme:ae,styles:se}),e.jsx("div",{style:{marginTop:"6px",paddingLeft:"4px",fontSize:"13px",color:Q,fontFamily:J},children:it})]}),e.jsxs("div",{style:Kt,children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",paddingBottom:"16px",borderBottom:I?`1px solid ${P.cardBorder}`:"1px solid #e5e7eb"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"10px"},children:[i?e.jsx("img",{src:i,alt:r,style:{width:"32px",height:"32px",borderRadius:"50%",objectFit:"cover"}}):e.jsx("div",{style:{width:"32px",height:"32px",borderRadius:"50%",backgroundColor:I?P.inputBg:"#d1d5db",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"12px",fontWeight:700,color:L},children:r.slice(0,2)}),e.jsx("span",{style:{fontSize:"16px",fontWeight:600,color:L,fontFamily:J},children:r})]}),e.jsxs("div",{style:{textAlign:"right"},children:[e.jsx("div",{style:{fontSize:"22px",fontWeight:700,color:L,fontFamily:J,lineHeight:1.1},children:je??"0.00"}),e.jsxs("div",{style:{fontSize:"12px",color:Q,fontFamily:J,marginTop:"2px"},children:["~$",xt??"0.00"]})]})]}),e.jsxs("div",{style:{paddingTop:"16px",paddingBottom:"16px",borderBottom:I?`1px solid ${P.cardBorder}`:"1px solid #e5e7eb"},children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"16px"},children:[e.jsx("span",{style:{fontSize:"15px",fontWeight:500,color:Q,fontFamily:J},children:"Lock Duration"}),e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",children:e.jsx("path",{d:"M4 6L8 10L12 6",stroke:Q,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]}),e.jsx(Ca,{options:p,selectedIndex:re,onSelect:xe,primaryColor:C,dark:I,textPrimary:L,textSecondary:Q})]}),e.jsxs("div",{style:{paddingTop:"12px",display:"flex",flexDirection:"column",gap:"8px"},children:[e.jsx(va,{durationMonths:Ge?.months,fontFamily:J,dark:I,textPrimary:L,textSecondary:Q}),u&&e.jsx(ka,{votes:Oe,fontFamily:J,dark:I,textPrimary:L,textSecondary:Q})]})]}),Vt&&e.jsx(js,{fontFamily:J,textPrimary:L,textSecondary:Q,cardBg:M,cardBorder:ne,resolvedDark:I,darkCardBorder:P.cardBorder,primaryColor:C,feePreview:ue,isLoading:Te,errorText:ve}),Dt&&e.jsx("div",{style:{marginBottom:"12px",padding:"10px 14px",backgroundColor:I?P.errorBg:"#fef2f2",border:`1px solid ${I?P.errorBorder:"#fecaca"}`,borderRadius:"6px"},children:e.jsx("p",{style:{color:I?P.errorText:"#dc2626",fontSize:"13px",margin:0,fontFamily:J},children:Dt})}),e.jsx(Ze.Button,{variant:"outline",fullWidth:!0,onClick:Ne,disabled:!bt,loading:le,dark:I,styles:{...T,button:{...T?.button,backgroundColor:C}},children:le?Qt&&!G?"DEPOSITING...":G?"LOCKING...":"CONVERTING...":Te&&Vt?"CALCULATING FEES...":Qt&&!G?`DEPOSIT ${r}`:G?`LOCK ${r}`:`CONVERT TO ${r}`}),e.jsx(Sa,{isOpen:N,data:fe,isLocking:le,lockError:Dt,onContinue:Ne,onClose:()=>X(!1),primaryColor:C,fontFamily:J,dark:I}),Xe&&st&&e.jsx("div",{style:{position:"absolute",top:0,left:0,right:0,bottom:0,zIndex:10,backgroundColor:I?P.shell:"white",borderRadius:$,padding:"16px 0"},children:e.jsx(Ln,{type:"deposit",isOpen:!!Xe&&Xe.overallStatus!=="processing",isProcessing:le||Xe?.overallStatus==="processing",closeOnComplete:!1,onRetryTx:()=>{zt(),Z(!1),Ne()},onNewTx:()=>{zt(),Z(!1),z(null),Rt.current=null,qt(),St()},onClose:()=>{zt(),Z(!1)},onComplete:()=>{zt(),Z(!1),z(null),Rt.current=null,qt(),St()},results:Xe?.overallStatus==="success"||Xe?.overallStatus==="failed"?Xe.steps.map(ee=>({asset:{symbol:S?.asset?.symbol||r,address:S?.asset?.address||""},txHash:ee.transactionHash||"",success:ee.status==="success",amount:S?.amount})):void 0,chainName:q.getChainName(d),explorerUrl:q.getExplorerUrl(d,"").replace(/\/tx\/.*$/,"")||void 0,theme:E,styles:T,dark:I})})]})})},Io=({variant:t,destinationSymbol:n,destinationLogoURI:s,destinationDecimals:r,primaryColor:i,fontFamily:l,textPrimary:a,textSecondary:c,cardBg:d,cardBorder:p,dk:u,dark:f,isQuoting:g,quoteError:h,estimatedOutput:y,paymentAmount:w,needsSwap:x,exactOutputSwap:k,adjustable:U=!1,maxAmount:v,onAmountChange:b})=>t==="supply"?e.jsxs("div",{style:{backgroundColor:d,border:`1px solid ${p}`,borderRadius:f?"8px":"7px",padding:"14px 16px 12px 16px",marginBottom:"16px",minHeight:"112px",display:"flex",flexDirection:"column",justifyContent:"space-between"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",gap:"12px"},children:[e.jsxs("div",{style:{minWidth:0},children:[e.jsx("span",{style:{fontFamily:l,fontSize:"17px",fontWeight:500,color:f?"#a7abb2":"#7D7C7B",lineHeight:"24px"},children:"Used in TX"}),e.jsx("div",{style:{fontSize:"12px",fontWeight:500,color:c,fontFamily:l,marginTop:"10px"},children:"Net amount after swap and fees"})]}),e.jsxs("div",{style:{textAlign:"right",minWidth:0,display:"inline-flex",alignItems:"center",gap:"8px",border:`1px solid ${p}`,borderRadius:"8px",padding:"8px 10px",minHeight:"42px"},children:[e.jsx(jo,{symbol:n,logoURI:s,primaryColor:i,size:24}),e.jsx("span",{style:{fontSize:"16px",fontWeight:500,color:f?"#f3f4f6":"#3C3E42",lineHeight:"1.3",fontFamily:l,letterSpacing:"-0.02em"},children:n})]})]}),e.jsx("div",{style:{textAlign:"right",minWidth:0},children:g?e.jsx("span",{style:{fontSize:"18px",color:c,fontFamily:l},children:"Quoting..."}):h?e.jsx("span",{style:{fontSize:"13px",color:f?"#f87171":"#dc2626",fontFamily:l},children:"Quote failed"}):y?e.jsx("span",{style:{fontSize:"32px",fontWeight:700,color:a,fontFamily:l,lineHeight:"0.95",letterSpacing:"-1.4px"},children:y}):e.jsx("span",{style:{fontSize:"20px",color:c,fontFamily:l},children:"\u2014"})})]}):e.jsx(ja,{destinationSymbol:n,destinationLogoURI:s,destinationDecimals:r,primaryColor:i,fontFamily:l,textPrimary:a,textSecondary:c,cardBg:d,cardBorder:p,dk:u,dark:f,paymentAmount:w||"0",needsSwap:x,exactOutputSwap:k,isQuoting:g,adjustable:U,maxAmount:v,onAmountChange:b}),jo=({symbol:t,logoURI:n,primaryColor:s,size:r})=>n?e.jsx("img",{src:n,alt:t,style:{width:r,height:r,borderRadius:"50%",objectFit:"cover"}}):e.jsx("div",{style:{width:r,height:r,borderRadius:"50%",backgroundColor:`${s}22`,display:"flex",alignItems:"center",justifyContent:"center",fontSize:r<30?"11px":"12px",fontWeight:700,color:s},children:t.slice(0,2)}),ja=({destinationSymbol:t,destinationLogoURI:n,destinationDecimals:s,primaryColor:r,fontFamily:i,textPrimary:l,textSecondary:a,cardBg:c,cardBorder:d,dk:p,dark:u,paymentAmount:f,needsSwap:g,exactOutputSwap:h,isQuoting:y,adjustable:w,maxAmount:x,onAmountChange:k})=>{const U='"IBM Plex Mono", monospace',v=parseFloat(f||"0"),b=x?parseFloat(x):0,[B,T]=o.useState(f||""),W=o.useRef(null),[E,I]=o.useState(null),[C,P]=o.useState(null);o.useEffect(()=>{w||T(f||"")},[f,w]);const J=M=>{let ne=M;ne.startsWith(".")&&(ne="0"+ne);const $=Ks(ne);let L=$;x&&parseFloat($)>parseFloat(x)&&(L=x),T(L),W.current&&clearTimeout(W.current),W.current=setTimeout(()=>k?.(L),300)},K=M=>{if(!b)return;if(M===100){T(x||b.toString()),W.current&&clearTimeout(W.current),k?.(x||b.toString());return}const ne=10**s,$=Math.floor(b*M/100*ne)/ne,L=In($,s);T(L),W.current&&clearTimeout(W.current),k?.(L)},j=b>0?parseFloat(B||"0")/b*100:0;return o.useEffect(()=>()=>{W.current&&clearTimeout(W.current)},[]),e.jsxs("div",{style:{backgroundColor:c,border:`1px solid ${d}`,borderRadius:u?"12px":"6px",padding:"16px",marginBottom:"16px"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"10px"},children:[e.jsx(jo,{symbol:t,logoURI:n,primaryColor:r,size:32}),e.jsxs("div",{children:[e.jsx("span",{style:{fontSize:"14px",fontWeight:600,color:l,fontFamily:i},children:"Payment"}),e.jsx("div",{style:{fontSize:"12px",color:a,fontFamily:i,marginTop:"2px"},children:t})]})]}),e.jsxs("div",{style:{textAlign:"right"},children:[w?e.jsx("input",{type:"text",value:B,onChange:M=>J(M.target.value),placeholder:"0.0",style:{fontSize:"20px",fontWeight:700,color:l,fontFamily:U,lineHeight:1.1,backgroundColor:"transparent",border:"none",outline:"none",padding:0,width:"120px",textAlign:"right"}}):e.jsx("div",{style:{fontSize:"20px",fontWeight:700,color:l,fontFamily:U,lineHeight:1.1},children:v>0?f:"0.00"}),e.jsx("div",{style:{fontSize:"12px",color:a,fontFamily:U,marginTop:"2px"},children:t}),w&&b>0&&e.jsx("div",{style:{display:"flex",justifyContent:"flex-end",alignItems:"center",gap:"10px",marginTop:"6px"},children:[0,25,50,75,100].map((M,ne)=>{const $=Math.abs(j-M)<1,L=ne===4,Q=M/100,se=E===M,ae=C===M;return e.jsx("button",{onClick:()=>K(M),onMouseEnter:()=>I(M),onMouseLeave:()=>{I(null),P(null)},onMouseDown:()=>P(M),onMouseUp:()=>P(null),title:`${M}%`,style:{width:"14px",height:"14px",padding:0,border:"none",backgroundColor:"transparent",cursor:"pointer",opacity:$?1:se?.8:.5,transform:ae?"scale(0.85)":se?"scale(1.15)":"scale(1)",transition:"all 0.15s ease"},children:e.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 14 14",children:[e.jsx("circle",{cx:"7",cy:"7",r:"6.84375",fill:L?r:"none",stroke:L?r:u?"#4a5568":"#3C3E42",strokeWidth:"0.3125"}),!L&&Q>0&&e.jsx("path",{d:`M 7 7 L 7 0.15625 A 6.84375 6.84375 0 ${Q>.5?1:0} 1 ${7+6.84375*Math.sin(Q*2*Math.PI)} ${7-6.84375*Math.cos(Q*2*Math.PI)} Z`,fill:u?p?.textSecondary||"#9ca3af":"#3C3E42"})]})},M)})})]})]}),g&&h&&!y&&e.jsx("div",{style:{marginTop:"12px",paddingTop:"12px",borderTop:u?`1px solid ${p?.cardBorder||d}`:"1px solid #e5e7eb",display:"flex",justifyContent:"flex-end"},children:e.jsxs("span",{style:{fontSize:"11px",color:a,fontFamily:i,opacity:.7},children:["via ",h.venue]})})]})};function Eo(t,n,s){const r=t.address.toLowerCase()===n,i=t.chainId===s,l=t._source==="wallet";return l&&r&&i?0:l&&i?1:!l&&r?2:!l&&i?3:4}function Ea(t){const{address:n,destinationToken:s,supportedSourceAssets:r,sourceChains:i,enabled:l}=t,a=(o.useContext(Y.SpiceFlowProviderContext)?.mode||"7702")!=="7702",c=un(),{externalAddress:d,embeddedAddress:p}=zn(),{assets:u,refetch:f}=An({address:n,supportedChains:i,enabled:l&&!a,refetchInterval:3e4}),g=o.useMemo(()=>{if(a)return[];if(!r||r.length===0)return u;const T=r.map(W=>W.toLowerCase());return u.filter(W=>T.includes(W.address.toLowerCase()))},[u,r,a]),h=a?d:c,y=o.useMemo(()=>{const T=new Set,W=[],E=I=>{if(!I)return;const C=I.toLowerCase();T.has(C)||(T.add(C),W.push(O.getAddress(I)))};if(E(s.address),a&&r)for(const I of r)E(I);return W},[a,s.address,r]),w=o.useMemo(()=>y.map(T=>T.toLowerCase()).sort().join(","),[y]),x=o.useMemo(()=>JSON.stringify([...i||[]].sort()),[i]),[k,U]=o.useState([]),v=o.useRef(0),b=o.useCallback(async()=>{if(!l||!h||y.length===0){v.current++,U([]);return}const T=++v.current,W=O.getAddress(h),E=a?i&&i.length>0?i:[s.chainId]:[s.chainId],I=[];for(const K of y){const j=K.toLowerCase();if(j===s.address.toLowerCase()){const ne=q.getChainConfig(s.chainId)?.supportedTokens?.find($=>$.address.toLowerCase()===j);I.push({address:K,chainId:s.chainId,configToken:ne?{decimals:ne.decimals,symbol:ne.symbol,name:ne.name,logo:ne.logo}:void 0});continue}let M=!1;for(const ne of E){const $=q.getChainConfig(ne)?.supportedTokens?.find(L=>L.address.toLowerCase()===j);if($){I.push({address:K,chainId:ne,configToken:{decimals:$.decimals,symbol:$.symbol,name:$.name,logo:$.logo}}),M=!0;break}}M||I.push({address:K,chainId:s.chainId})}const C=new Map;for(const K of I){const j=C.get(K.chainId)||[];j.push(K),C.set(K.chainId,j)}const P=async(K,j)=>{try{const M=await tn.readContract(K,{address:j.address,abi:O.erc20Abi,functionName:"balanceOf",args:[W]});let ne,$,L,Q;if(j.configToken)ne=j.configToken.decimals,$=j.configToken.symbol,L=j.configToken.name,Q=j.configToken.logo;else{const[S,z,ie]=await Promise.all([tn.readContract(K,{address:j.address,abi:O.erc20Abi,functionName:"decimals"}).catch(()=>18),tn.readContract(K,{address:j.address,abi:O.erc20Abi,functionName:"symbol"}).catch(()=>"TOKEN"),tn.readContract(K,{address:j.address,abi:O.erc20Abi,functionName:"name"}).catch(()=>"TOKEN")]);ne=Number(S),$=z,L=ie}const se=j.address.toLowerCase()===s.address.toLowerCase()&&j.chainId===s.chainId;se&&s.logoURI&&(Q=s.logoURI),se&&!j.configToken&&$==="TOKEN"&&($=s.symbol,L=s.symbol);const ae=parseFloat((Number(M)/Math.pow(10,ne)).toFixed(6));return{address:j.address,name:L,symbol:$,decimals:ne,balance:M,balanceFormatted:ae,balanceUsd:0,logoURI:Q,isNative:!1,chainId:j.chainId}}catch{return null}},J=await Promise.all(Array.from(C.entries()).map(async([K,j])=>{let M;try{M=q.getClientForChain(K)}catch{return[]}const ne=[],$=[];for(const Q of j){const se=ne.length;ne.push({address:Q.address,abi:O.erc20Abi,functionName:"balanceOf",args:[W]}),Q.configToken||ne.push({address:Q.address,abi:O.erc20Abi,functionName:"decimals"},{address:Q.address,abi:O.erc20Abi,functionName:"symbol"},{address:Q.address,abi:O.erc20Abi,functionName:"name"}),$.push({start:se,item:Q})}let L=null;try{L=await M.multicall({contracts:ne})}catch{L=null}return L?$.map(({start:Q,item:se})=>{const ae=L[Q],S=ae?.status==="success"?ae.result:0n;let z,ie,me,re;if(se.configToken)z=se.configToken.decimals,ie=se.configToken.symbol,me=se.configToken.name,re=se.configToken.logo;else{const Pe=L[Q+1],ke=L[Q+2],Be=L[Q+3];z=Pe?.status==="success"?Number(Pe.result):18,ie=ke?.status==="success"?ke.result:"TOKEN",me=Be?.status==="success"?Be.result:ie}const xe=se.address.toLowerCase()===s.address.toLowerCase()&&se.chainId===s.chainId;xe&&s.logoURI&&(re=s.logoURI),xe&&!se.configToken&&ie==="TOKEN"&&(ie=s.symbol,me=s.symbol);const le=parseFloat((Number(S)/Math.pow(10,z)).toFixed(6));return{address:se.address,name:me,symbol:ie,decimals:z,balance:S,balanceFormatted:le,balanceUsd:0,logoURI:re,isNative:!1,chainId:se.chainId}}):(await Promise.all(j.map(Q=>P(M,Q)))).filter(Q=>Q!==null)}));T===v.current&&U(J.flat())},[l,h,w,x,a,s.address,s.chainId,s.symbol,s.logoURI]);o.useEffect(()=>{if(!l){U([]);return}b();const T=setInterval(()=>{b()},15e3);return()=>clearInterval(T)},[b,l]);const B=o.useCallback(()=>{b()},[b]);return{displayAssets:o.useMemo(()=>{const T=[],W=k.filter(I=>I.balance>0n);for(const I of W)T.push({...I,_source:"wallet"});for(const I of g)T.push({...I,_source:"spice"});const E=s.address.toLowerCase();return T.sort((I,C)=>Eo(I,E,s.chainId)-Eo(C,E,s.chainId)),T},[k,g,s.address,s.chainId]),filteredSpiceAssets:g,walletAssets:k,embeddedWalletAddress:c||p,externalAddress:d,isNon7702:a,refreshSpiceAssets:f,refreshWalletAssets:B}}async function Ao(t){const{tokenIn:n,tokenOut:s,amountIn:r,fee:i,chainId:l,config:a}=t;if(r<=0n)throw new Error("amountIn must be greater than 0");const c=(await q.getClientForChain(l).simulateContract({address:a.quoterV2,abi:V.uniV3QuoterV2Abi,functionName:"quoteExactInputSingle",args:[{tokenIn:n,tokenOut:s,amountIn:r,fee:i,sqrtPriceLimitX96:0n}]})).result;if(c[0]<=0n)throw new Error("No liquidity found for this pair. The pool returned 0 output.");return{amountOut:c[0],sqrtPriceX96After:c[1],gasEstimate:c[3]}}async function Bo(t){const n=t.feeTiers??[100,500,3e3,1e4],s=await Promise.allSettled(n.map(i=>Ao({...t,fee:i})));let r=null;for(let i=0;i<s.length;i++){const l=s[i];l.status==="fulfilled"&&(!r||l.value.amountOut>r.amountOut)&&(r={...l.value,fee:n[i]})}if(!r)throw new Error("No liquidity found for this pair on any fee tier.");return r}const Aa=[{inputs:[{components:[{name:"tokenIn",type:"address"},{name:"tokenOut",type:"address"},{name:"amount",type:"uint256"},{name:"fee",type:"uint24"},{name:"sqrtPriceLimitX96",type:"uint160"}],name:"params",type:"tuple"}],name:"quoteExactOutputSingle",outputs:[{name:"amountIn",type:"uint256"},{name:"sqrtPriceX96After",type:"uint160"},{name:"initializedTicksCrossed",type:"uint32"},{name:"gasEstimate",type:"uint256"}],stateMutability:"nonpayable",type:"function"}];async function Ba(t){const{tokenIn:n,tokenOut:s,amountOut:r,fee:i,chainId:l,config:a}=t;if(r<=0n)throw new Error("amountOut must be greater than 0");const c=(await q.getClientForChain(l).simulateContract({address:a.quoterV2,abi:Aa,functionName:"quoteExactOutputSingle",args:[{tokenIn:n,tokenOut:s,amount:r,fee:i,sqrtPriceLimitX96:0n}]})).result;if(c[0]<=0n)throw new Error("No liquidity found for this pair. The pool returned 0 input.");return{amountIn:c[0],sqrtPriceX96After:c[1],gasEstimate:c[3]}}async function Fa(t){const n=t.feeTiers??[100,500,3e3,1e4],s=await Promise.allSettled(n.map(i=>Ba({...t,fee:i})));let r=null;for(let i=0;i<s.length;i++){const l=s[i];l.status==="fulfilled"&&(!r||l.value.amountIn<r.amountIn)&&(r={...l.value,fee:n[i]})}if(!r)throw new Error("No liquidity found for this pair on any fee tier.");return r}function Fo(t){return t.type==="swap"}const Bs=.02,Ta=[1,8453,42161,10,137,43114,56],Ra="https://api.1inch.dev/swap/v6.0";function To(t,n){return V.applySlippage(t,n)}function Ro(t){const n=t?.baseUrl??Ra;return{name:"1inch",chainIds:t?.chainIds??Ta,resolve:async(s,r,i)=>{const l=s.maxSlippage??Bs,a=l*100,c=V.isNativeToken(s.tokenIn)?V.NATIVE_TOKEN_ADDRESS:s.tokenIn,d=V.isNativeToken(s.tokenOut)?V.NATIVE_TOKEN_ADDRESS:s.tokenOut,p=V.isNativeToken(s.tokenIn);try{const u=new URL(`${n}/${r}/swap`);u.searchParams.set("src",c),u.searchParams.set("dst",d),u.searchParams.set("amount",s.amountIn.toString()),u.searchParams.set("from",i),u.searchParams.set("slippage",a.toString()),u.searchParams.set("disableEstimate","true"),u.searchParams.set("allowPartialFill","false");const f={Accept:"application/json"};t?.apiKey&&(f.Authorization=`Bearer ${t.apiKey}`);const g=await fetch(u.toString(),{headers:f});if(!g.ok)throw new Y.SpiceflowError("VENUE_API_ERROR",`[1inchVenue] API returned ${g.status} for ${s.tokenIn} \u2192 ${s.tokenOut} on chain ${r}`,{venue:"1inch",chainId:r,tokenIn:s.tokenIn,tokenOut:s.tokenOut,amountIn:s.amountIn.toString(),cause:`HTTP ${g.status}`});const h=await g.json();if(!h.dstAmount||!h.tx)return console.warn(`[1inchVenue] No route data for ${s.tokenIn} \u2192 ${s.tokenOut} on chain ${r}`),null;const y=BigInt(h.dstAmount);if(y<=0n)return console.warn(`[1inchVenue] Zero output for ${s.tokenIn} \u2192 ${s.tokenOut} on chain ${r}`),null;const w=To(y,l),x=[];return h.tx.to&&!p&&x.push({to:s.tokenIn,value:0n,data:O.encodeFunctionData({abi:O.erc20Abi,functionName:"approve",args:[h.tx.to,s.amountIn]})}),x.push({to:h.tx.to,value:BigInt(h.tx.value||"0"),data:h.tx.data}),{venue:"1inch",amountOut:y,amountOutMinimum:w,calls:x}}catch(u){if(u instanceof Y.SpiceflowError)throw u;const f=u instanceof Error?u.message:String(u);throw new Y.SpiceflowError("VENUE_API_ERROR",`[1inchVenue] Exception for ${s.tokenIn} \u2192 ${s.tokenOut} on chain ${r}: ${f}`,{venue:"1inch",chainId:r,tokenIn:s.tokenIn,tokenOut:s.tokenOut,amountIn:s.amountIn.toString(),cause:f})}}}}const Mo=[4114,5115],Fs={swapRouter:"0x565eD3D57fe40f78A46f348C220121AE093c3cF8",quoterV2:"0x428f20dd8926Eabe19653815Ed0BE7D6c36f8425"},Do={swapRouter:"0x2626664c2603336E57B271c5C0b26F421741e481",quoterV2:"0x3d4e44Eb1374240CE5F1B871ab261CD16335B76a",chainIds:[8453]};function No(t){return{name:"satsuma",chainIds:t.chainIds??Mo,resolve:async(n,s,r)=>{const i=n.maxSlippage??Bs,l=V.isNativeToken(n.tokenIn);let a;try{a=await Bo({tokenIn:n.tokenIn,tokenOut:n.tokenOut,amountIn:n.amountIn,chainId:s,config:{swapRouter:t.swapRouter,quoterV2:t.quoterV2},feeTiers:t.feeTiers})}catch{return console.warn(`[SatsumaVenue] No viable fee tier for ${n.tokenIn} \u2192 ${n.tokenOut} on chain ${s}.`),null}const c=To(a.amountOut,i),d=[];return l||d.push({to:n.tokenIn,value:0n,data:O.encodeFunctionData({abi:O.erc20Abi,functionName:"approve",args:[t.swapRouter,n.amountIn]})}),d.push({to:t.swapRouter,value:l?n.amountIn:0n,data:O.encodeFunctionData({abi:V.uniV3SwapRouterAbi,functionName:"exactInputSingle",args:[{tokenIn:n.tokenIn,tokenOut:n.tokenOut,fee:a.fee,recipient:r,amountIn:n.amountIn,amountOutMinimum:c,sqrtPriceLimitX96:0n}]})}),{venue:"satsuma",amountOut:a.amountOut,amountOutMinimum:c,calls:d}}}}function Wo(t){return{name:"satsuma",chainIds:t.chainIds??Mo,resolve:async(n,s,r)=>{const i=n.maxSlippage??Bs,l=V.isNativeToken(n.tokenIn);let a;try{a=await Fa({tokenIn:n.tokenIn,tokenOut:n.tokenOut,amountOut:n.amountOut,chainId:s,config:{swapRouter:t.swapRouter,quoterV2:t.quoterV2},feeTiers:t.feeTiers})}catch{return null}const c=BigInt(Math.round(i*1e4)),d=a.amountIn+a.amountIn*c/10000n,p=[];return p.push({to:t.swapRouter,value:l?d:0n,data:O.encodeFunctionData({abi:Ma,functionName:"exactOutputSingle",args:[{tokenIn:n.tokenIn,tokenOut:n.tokenOut,fee:a.fee,recipient:r,amountOut:n.amountOut,amountInMaximum:d,sqrtPriceLimitX96:0n}]})}),{venue:"satsuma",amountIn:a.amountIn,amountInMax:d,amountOut:n.amountOut,calls:p}}}}const Ma=[{inputs:[{components:[{name:"tokenIn",type:"address"},{name:"tokenOut",type:"address"},{name:"fee",type:"uint24"},{name:"recipient",type:"address"},{name:"amountOut",type:"uint256"},{name:"amountInMaximum",type:"uint256"},{name:"sqrtPriceLimitX96",type:"uint160"}],name:"params",type:"tuple"}],name:"exactOutputSingle",outputs:[{name:"amountIn",type:"uint256"}],stateMutability:"payable",type:"function"}];function Uo(t){const n=[];t?.customVenues&&n.push(...t.customVenues),t?.satsuma&&n.push(No(t.satsuma)),n.push(Ro(t?.oneInch));function s(i){return n.find(l=>l.chainIds.includes(i))}async function r(i,l,a){const c=[],d=[];for(const p of i){if(!Fo(p)){c.push(p);continue}const u=s(l);if(!u)throw new Y.SpiceflowError("NO_VENUE_FOR_CHAIN",`No liquidity venue configured for chain ${l}. Cannot resolve swap ${p.tokenIn} \u2192 ${p.tokenOut}.`,{chainId:l,tokenIn:p.tokenIn,tokenOut:p.tokenOut,amountIn:p.amountIn.toString()});const f=await u.resolve(p,l,a);if(!f)throw new Y.SpiceflowError("NO_LIQUIDITY",`${u.name} returned no quote for ${p.tokenIn} \u2192 ${p.tokenOut} on chain ${l}.`,{venue:u.name,chainId:l,tokenIn:p.tokenIn,tokenOut:p.tokenOut,amountIn:p.amountIn.toString()});c.push(...f.calls),d.push(f)}return{calls:c,resolvedSwaps:d}}return{resolveSwapIntents:r,getVenueForChain:s,venues:n}}function Da(t){const n=t?.customVenues??[];async function s(r,i,l){const a=n.filter(d=>d.chainIds.includes(i));if(a.length===0)throw new Y.SpiceflowError("NO_SWAP_ROUTE",`No exact-output venue supports chain ${i}`,{chainId:i,tokenIn:r.tokenIn,tokenOut:r.tokenOut});const c=(await Promise.allSettled(a.map(d=>d.resolve(r,i,l)))).filter(d=>d.status==="fulfilled").map(d=>d.value).filter(d=>d!==null);if(c.length===0)throw new Y.SpiceflowError("NO_SWAP_ROUTE",`All aggregators failed for ${r.tokenIn} \u2192 ${r.tokenOut} on chain ${i}`,{chainId:i,tokenIn:r.tokenIn,tokenOut:r.tokenOut,amountOut:r.amountOut.toString()});return c.sort((d,p)=>d.amountIn<p.amountIn?-1:d.amountIn>p.amountIn?1:0),c[0]}return{getQuote:s,venues:n}}const Lo=Uo({satsuma:Fs});async function Na(t){const n=Lo.getVenueForChain(t.chainId);if(!n)throw new Error(`No swap venue configured for chain ${t.chainId}.`);const s=await n.resolve({type:"swap",tokenIn:t.tokenIn,tokenOut:t.tokenOut,amountIn:t.amountIn},t.chainId,t.recipient);if(!s)throw new Error("No liquidity for this pair.");return s}function Wa(t){const{direction:n,selectedAsset:s,destinationToken:r,chainId:i,recipient:l,paymentAmount:a}=t,[c,d]=o.useState(!1),[p,u]=o.useState(null),[f,g]=o.useState(null),[h,y]=o.useState(null),[w,x]=o.useState(null),[k,U]=o.useState(null),[v,b]=o.useState(null),[B,T]=o.useState(null),[W,E]=o.useState(null),I=o.useRef(null),C=o.useRef(0),P=o.useRef(new Map),J=o.useMemo(()=>Lo,[]),K=o.useMemo(()=>Da({customVenues:[Wo(Fs),Wo(Do)]}),[]),j=o.useMemo(()=>{if(!s?.asset)return null;const z=bn(s.asset,i);if(z)return z;const ie=wn(s.asset.address,i,s.asset.chainId);return ie?ie.address:null},[s?.asset,i]),M=o.useMemo(()=>s?.asset?Jn(s.asset,i):[],[s?.asset,i]);o.useEffect(()=>{let z=!1;if(!s?.asset||M.length<=1){E(null);return}return(async()=>{const ie=n==="input"?s.amount:a||"0";let me=0n;try{me=n==="input"?O.parseUnits(ie,s.asset.decimals):0n}catch{me=0n}try{const re=await Qs(s.asset,i,{requiredAmount:me});z||E(re)}catch{z||E(null)}})(),()=>{z=!0}},[s?.asset,s?.amount,i,M,n,a]);const ne=o.useMemo(()=>W??j,[W,j]),$=o.useMemo(()=>!s?.asset||!ne?[]:[ne,...M.filter(z=>z.toLowerCase()!==ne.toLowerCase())],[s?.asset,ne,M]),L=o.useMemo(()=>!s?.asset||!hs(s.asset.address,s.asset.chainId,r.address,r.chainId)||!ne?!1:ne.toLowerCase()===r.address.toLowerCase(),[s,r.address,r.chainId,ne]),Q=ne?ne.toLowerCase()===r.address.toLowerCase():!1,se=n==="output"&&parseFloat(a||"0")===0,ae=!!s?.asset&&!L&&!Q&&!se,S=ae?B??ne:ne;return o.useEffect(()=>{I.current&&clearTimeout(I.current);const z=n==="input"?s?.amount:a,ie=parseFloat(z||"0");if(!ae||!Number.isFinite(ie)||ie<=0||!s?.asset||!l||$.length===0){C.current++,g(null),y(null),x(null),U(null),b(null),T(null),u(null),d(!1);return}const me=s.asset.decimals;let re;try{re=n==="input"?O.parseUnits(s.amount,me):O.parseUnits(a||"0",r.decimals)}catch{C.current++,u("Invalid amount"),d(!1);return}const xe=++C.current,le=()=>xe!==C.current;d(!0);const Pe=n==="output"?150:400;return I.current=setTimeout(async()=>{try{if(n==="input"){const ke=J.getVenueForChain(i);if(!ke)throw new Error("No swap venue for this chain");let Be=null,ve=null;for(const Te of $){const ye=`${n}:${i}:${Te.toLowerCase()}:${r.address.toLowerCase()}:${re.toString()}`,Je=P.current.get(ye);if(Je&&Je.expiresAt>Date.now()&&Je.resolvedSwap){Be=Je.resolvedSwap,ve=Te;break}const ze=await ke.resolve({type:"swap",tokenIn:Te,tokenOut:r.address,amountIn:re},i,l);if(le())return;if(ze){P.current.set(ye,{expiresAt:Date.now()+3e4,direction:n,resolvedSwap:ze}),Be=ze,ve=Te;break}}if(!Be||!ve)throw new Error("No liquidity for this pair");T(ve),b(Be.amountOut),x(Be),U(null);const Ue=parseFloat(O.formatUnits(Be.amountOut,r.decimals));g(Ue<.01?Ue.toPrecision(4):Ue.toLocaleString(void 0,{maximumFractionDigits:6})),y(null),u(null)}else{let ke=null,Be=null;for(const ve of $){const Ue=`${n}:${i}:${ve.toLowerCase()}:${r.address.toLowerCase()}:${re.toString()}`,Te=P.current.get(Ue);if(Te&&Te.expiresAt>Date.now()&&Te.exactOutputSwap){ke=Te.exactOutputSwap,Be=ve;break}try{const ye=await K.getQuote({tokenIn:ve,tokenOut:r.address,amountOut:re},i,l);if(le())return;P.current.set(Ue,{expiresAt:Date.now()+3e4,direction:n,exactOutputSwap:ye}),ke=ye,Be=ve;break}catch{if(le())return}}if(!ke||!Be)throw new Error("No liquidity for this pair");T(Be),U(ke),x(null),b(null),y(parseFloat(O.formatUnits(ke.amountIn,me)).toFixed(6)),g(null),u(null)}}catch(ke){if(le())return;const Be=ke instanceof Error?ke.message:"Failed to get quote";u(Be),g(null),y(null),x(null),U(null),b(null),T(null)}finally{le()||d(!1)}},Pe),()=>{I.current&&clearTimeout(I.current)}},[n,ae,s?.amount,s?.asset?.address,s?.asset?.decimals,a,$,i,r.address,r.decimals,l,J,K]),{isQuoting:c,quoteError:p,estimatedOutput:f,estimatedInput:h,resolvedSwap:w,exactOutputSwap:k,quoteAmountOut:v,resolvedTokenIn:S,isDirect:Q,needsSwap:ae,selectedIsEquivalent:L}}const zo={idle:"","signing-delegation":"Signing delegation...","signing-intent":"Signing intent...",submitting:"Submitting transaction...",executing:"Executing on-chain...",success:"Deposit confirmed",error:"Transaction failed"},Po=["signing-delegation","signing-intent","submitting","executing"];function Ua(t){const n=[];for(const s of t.intents)for(const r of s.batches)n.push(BigInt(r.quotedAmount));if(n.length===0)return null;if(n.length>1)throw new Error("Fee-adjusted exact actions with multiple fee-bearing batches are not supported yet.");return n[0]}function Oo(t,n,s){if(n===s)return t;if(n<s)return t*10n**BigInt(s-n);const r=10n**BigInt(n-s);return(t+r-1n)/r}function Ts(t,n){const s=t.intents.flatMap(i=>i.batches).filter(i=>{const l=BigInt(i.quotedAmount),a=BigInt(i.totalDebit),c=BigInt(i.feeBreakdown.gasFee),d=BigInt(i.feeBreakdown.spicenetFee);return l>0n||a>0n||c>0n||d>0n});if(s.length===0||s.length>1)return null;const r=s[0];return{chainId:r.chainId,tokenAddress:n.tokenAddress,symbol:n.symbol,decimals:n.decimals,grossAmount:BigInt(r.totalDebit),netAmount:BigInt(r.quotedAmount),totalFee:BigInt(r.feeBreakdown.gasFee)+BigInt(r.feeBreakdown.spicenetFee),gasFee:BigInt(r.feeBreakdown.gasFee),spicenetFee:BigInt(r.feeBreakdown.spicenetFee),gasQuoteSource:r.gasQuoteSource}}const Ho=({isOpen:t,onClose:n,destinationToken:s,buildActionCalls:r,buildSpicenetBatch:i,onPayExecute:l,actionLabel:a,amountDirection:c="input",swapDescription:d,directDescription:p,supportedSourceAssets:u,sourceChains:f,paymentAmount:g,amountInputMode:h="fixed",minPaymentAmount:y,maxPaymentAmount:w,onAmountChange:x,styles:k,dark:U,title:v,subtitle:b,onAddFunds:B,onSuccess:T,onError:W})=>{const E=c==="output",{theme:I,dark:C,primaryColor:P,dk:J,palette:K}=Y.useSpiceBrand(k,U),j=I.typography.fontFamily,M='"IBM Plex Mono", monospace',ne=k?.inputVariant?k.inputVariant==="dark":C,$=K.textPrimary,L=K.textSecondary,Q=ne?J.cardBg:"#E9E9E9",se=ne?J.cardBorder:"#C6C6C6",ae=ne?J.textSecondary:"#979AA0",S=ne?{...I,colors:{...I.colors,secondary:J.cardBg,surfaceHover:J.hoverBg,border:"#2d2d2d",borderHover:"#3a3a3a"}}:I,z=s.chainId,ie=(o.useContext(Y.SpiceFlowProviderContext)?.mode||"7702")!=="7702",me=pn(),{address:re,isConnected:xe,isReady:le,isAuthenticated:Pe,provider:ke}=me,{executeGasless:Be,estimateGasless:ve}=os(),{externalWallet:Ue,externalAddress:Te,embeddedAddress:ye}=zn(),{displayAssets:Je,filteredSpiceAssets:ze,embeddedWalletAddress:ue,refreshSpiceAssets:Ve,refreshWalletAssets:st}=Ea({address:re,destinationToken:s,supportedSourceAssets:u,sourceChains:f,enabled:t&&(ie?!!Te:!!re)}),Z=E||ie?Je:ze,[R,N]=o.useState(null),[X,fe]=o.useState(g||""),[be,D]=o.useState(!1),[oe,he]=o.useState(null),[pe,ot]=o.useState("idle"),[rt,ct]=o.useState(""),[at,Ye]=o.useState(null),[kt,It]=o.useState(!1),[Le,ft]=o.useState(null),[Xe,$t]=o.useState(null),[zt,dt]=o.useState(!1),[qt,Bt]=o.useState(!1),[De,yt]=o.useState(null),jt=o.useRef(R),Ft=o.useRef(!1),Pt=o.useRef(null),Yt=o.useRef(0),Et=o.useRef(null);o.useEffect(()=>{jt.current=R},[R]);const tt=h==="adjustable"?X:g||"0",rn=ue||ye||re,{isQuoting:St,quoteError:Ot,estimatedOutput:Ht,resolvedSwap:Rt,exactOutputSwap:We,quoteAmountOut:ut,resolvedTokenIn:nt,isDirect:Tt,needsSwap:Ge,selectedIsEquivalent:G}=Wa({direction:c,selectedAsset:R,destinationToken:s,chainId:z,recipient:rn,paymentAmount:tt}),_=E?parseFloat(tt||"0"):parseFloat(R?.amount||"")||0,je=o.useMemo(()=>R?.asset?ze.find(m=>m.address.toLowerCase()===R.asset.address.toLowerCase())?.balanceFormatted??0:0,[R,ze]),Oe=o.useMemo(()=>R?.asset?E?Xe?Oo(Xe.grossAmount,Xe.decimals,R.asset.decimals)>R.asset.balance:G||Tt?_>R.asset.balanceFormatted:We?parseFloat(O.formatUnits(We.amountInMax,R.asset.decimals))>R.asset.balanceFormatted:!1:Xe?parseFloat(O.formatUnits(Oo(Xe.grossAmount,Xe.decimals,R.asset.decimals),R.asset.decimals))>je:_>je:!1,[R,E,Xe,G,_,We,je,Tt]);o.useEffect(()=>{t||(N(null),he(null),D(!1),ot("idle"),ct(""),Ye(null),It(!1),ft(null),$t(null),dt(!1),Bt(!1),yt(null),Et.current=null,Ft.current=!1,h==="adjustable"&&fe(g||""),Pt.current&&(Pt.current.abort(),Pt.current=null))},[t]);const it=o.useCallback(m=>{N(A=>({asset:m,amount:A?.asset?.address===m.address&&A?.asset?.chainId===m.chainId&&A.amount||""})),he(null),yt(null),Bt(!1),Et.current=null},[]),xt=o.useCallback(m=>{N(A=>A&&{...A,amount:m}),he(null),yt(null),Bt(!1),Et.current=null},[]),At=o.useCallback(m=>{let A=m;w&&parseFloat(A)>parseFloat(w)&&(A=w),fe(A),x?.(A),he(null),yt(null),Bt(!1),Et.current=null},[w,x]);o.useCallback(m=>{if(Ft.current||!re)return;const A=jt.current;!A?.asset||!A.amount||A.asset?._source==="wallet"||O.parseUnits(E?tt:A.amount,A.asset.decimals)===0n||(Ft.current=!0,Ve())},[re,z,Ve,E,tt]);const Mt=o.useCallback(m=>{ot({building:"signing-delegation","signing-delegation":"signing-delegation","signing-intent":"signing-intent",submitting:"submitting",executing:"executing",success:"success",error:"error"}[m.step]||"executing"),ct(m.message),m.txHash&&Ye(m.txHash)},[]),Qe=o.useCallback(m=>{const A=O.parseUnits(tt,s.decimals),F=m?.actionAmountOverride??A,H=ue||ye||(ie?void 0:re);if(!H)throw new Error("Embedded wallet address is not available. Please sign in and try again.");const ce={userAddress:H,chainId:z,destinationToken:s.address},ge=r(F,ce),Ie={chainId:z,calls:ge},we=(!E&&!ie?!0:R?.asset?._source==="spice")||ie,Fe=(Ce,Ae)=>({token:Ce,from:ie?"solver":"escrow",to:H,amount:Ae});if(A===0n)return[Ie];if(Ge&&We){const Ce=nt??bn(R.asset,z)??R.asset.address,Ae=m?.fundingAmountOverride??We.amountInMax,et=we?[Fe(Ce,Ae)]:[],Lt={to:Ce,value:0n,data:O.encodeFunctionData({abi:O.erc20Abi,functionName:"approve",args:[We.calls[0]?.to,We.amountInMax]})},Nt={chainId:z,calls:[Lt,...We.calls,...ge],tokenTransfers:[...et,...Ie.tokenTransfers??[]]};if(!we||!i)return[Nt];const Gt=i({userAddress:H,destinationChainId:z,deliveryToken:Ce,deliveryAmount:Ae,deliveryRecipient:H});return Gt?[Gt,Nt]:[Nt]}if(we){const Ce=nt??bn(R.asset,z)??s.address,Ae=m?.fundingAmountOverride??A,et={...Ie,tokenTransfers:[Fe(Ce,Ae),...Ie.tokenTransfers??[]]};if(!i)return[et];const Lt=i({userAddress:H,destinationChainId:z,deliveryToken:Ce,deliveryAmount:Ae,deliveryRecipient:H});return Lt?[Lt,et]:[et]}return[Ie]},[tt,s,ue,ye,re,z,r,R,Ge,We,nt,ie,i]),Ut=o.useCallback(m=>{if(!R?.asset||!ue)return[];const A=O.parseUnits(R.amount,R.asset.decimals),F=m??A,H={userAddress:ue,chainId:z,destinationToken:s.address},ce=r(F,H);if(!(!E&&!ie||R.asset?._source==="spice"))return[{chainId:z,calls:ce}];const ge=(Ce,Ae)=>({token:Ce,from:"escrow",to:ue,amount:Ae});if(Ge){if(!nt)throw new Error("Swap input token could not be resolved");if(!Rt||ut===null)throw new Error("Swap quote not available yet")}if(Ge&&Rt&&ut&&nt){const Ce=r(ut,H),Ae={chainId:z,calls:[...Rt.calls,...Ce],tokenTransfers:[ge(nt,A)]};if(!i)return[Ae];const et=i({userAddress:ue,destinationChainId:z,deliveryToken:nt,deliveryAmount:A,deliveryRecipient:ue});return et?[et,Ae]:[Ae]}const Ie=nt??bn(R.asset,z)??s.address,we={chainId:z,calls:ce,tokenTransfers:[ge(Ie,A)]};if(!i)return[we];const Fe=i({userAddress:ue,destinationChainId:z,deliveryToken:Ie,deliveryAmount:A,deliveryRecipient:ue});return Fe?[Fe,we]:[we]},[R,ue,z,s,r,Ge,Rt,ut,nt,i]),pt=o.useCallback(async m=>{if(!R?.asset||!ue||!nt)throw new Error("Wallet not ready");const A=O.parseUnits(R.amount,R.asset.decimals),F=ue,H={userAddress:F,chainId:z,destinationToken:s.address},ce=await Na({chainId:z,recipient:F,tokenIn:nt,tokenOut:s.address,amountIn:m}),ge=r(ce.amountOut,H),Ie={chainId:z,calls:[...ce.calls,...ge],tokenTransfers:[{token:nt,from:"escrow",to:F,amount:A}]};if(!i)return[Ie];const we=i({userAddress:F,destinationChainId:z,deliveryToken:nt,deliveryAmount:A,deliveryRecipient:F});return we?[we,Ie]:[Ie]},[R,ue,nt,z,s.address,r,i]),$e=o.useCallback(async(m,A,F,H)=>{let ce=m;for(let ge=0;ge<4;ge++){const Ie=A(ce),we=await ve(Ie,F,ce,H),Fe=Ua(we);if(Fe===null||Fe>=m)return ce;const Ce=ce-Fe,Ae=m+Ce;if(Ae<=ce)return ce;ce=Ae}return ce},[ve]),wt=o.useMemo(()=>R?.asset?R.asset.chainId===z?R.asset.address:nt??bn(R.asset,z)??s.address:s.address,[R,s.address,z,nt]),Vt=o.useCallback(async()=>{if(!R?.asset||_<=0){he("Select an asset and enter an amount");return}if(Oe){he("Insufficient balance");return}if(!ue){he("Wallet not ready");return}D(!0),he(null),ot("signing-delegation"),ct("Building transaction..."),Ye(null),Ft.current=!1;const m=new AbortController;Pt.current=m;try{const A=O.parseUnits(R.amount,R.asset.decimals),F=Ut();if(i&&!E&&!ie&&!F.some(ce=>V.isSpicenetChainId(ce.chainId)))throw new Error("Spice-funded supplies must include a Spicenet funding batch before the destination chain batch.");const H=F.some(ce=>ce.tokenTransfers?.length)?{useCustomTransfers:!0}:void 0;await ve(F,wt,A,H),await Be(F,wt,A,Mt,m.signal,H),ot("success"),ct("Deposit confirmed")}catch(A){const F=A instanceof Error?A:new Error(String(A));if(F.name==="AbortError"||m.signal.aborted){ot("idle");return}const H=F.message||"Transaction failed";ot("error"),ct(H),he(H),W?.(F)}finally{D(!1)}},[R,_,Oe,ue,wt,Ut,pt,Be,ve,Mt,Ge,W]),_t=o.useCallback(async()=>{if(!R?.asset)throw new Error("Select a payment source");if(!Te||!Ue)throw new Error("Please connect your external wallet to continue");const m=O.parseUnits(E?tt:R.amount,s.decimals),A={userAddress:Te,chainId:z,destinationToken:s.address},F=r(m,A);if(F.length===0)throw new Error("No action calls configured");const H=await Ue.getEthereumProvider();let ce=null;try{const Ce=await H.request({method:"eth_chainId"});ce=parseInt(Ce,16)}catch{ce=null}if(ce!==z)try{await H.request({method:"wallet_switchEthereumChain",params:[{chainId:`0x${z.toString(16)}`}]})}catch(Ce){if(Ce?.code===4902||Ce?.message?.includes("Unrecognized chain ID")){const Ae=q.getChainConfig(z);Ae&&await H.request({method:"wallet_addEthereumChain",params:[{chainId:`0x${z.toString(16)}`,chainName:Ae.name||`Chain ${z}`,nativeCurrency:Ae.nativeCurrency||{name:"ETH",symbol:"ETH",decimals:18},rpcUrls:[Ae.rpcUrl],blockExplorerUrls:Ae.blockExplorer?[Ae.blockExplorer]:void 0}]})}else throw Ce}const ge=q.getChainConfig(z),Ie=O.createWalletClient({account:Te,chain:ge?.viemChain,transport:O.custom(H)}),we=q.getClientForChain(z);let Fe;for(const Ce of F){const Ae=await Ie.sendTransaction({to:Ce.to,data:Ce.data,value:Ce.value,chain:ge?.viemChain});if((await we.waitForTransactionReceipt({hash:Ae,timeout:12e4,pollingInterval:2e3,confirmations:1})).status!=="success")throw new Error("Transaction failed");Fe=Ae}return Fe},[R,Ue,Te,E,tt,s,z,r]),mn=o.useCallback(async()=>{if(!R?.asset)throw new Error("Select a payment source");if(!Te||!Ue)throw new Error("Please connect your external wallet to continue");const m=ue||ye;if(!m)throw new Error("Embedded wallet not available \u2014 sign in to create one before paying");const A=R.asset,F=A.chainId,H=O.parseUnits(tt,s.decimals),ce=G?H:We?We.amountInMax:0n;if(ce===0n)throw new Error("Quote not available yet");const ge=nt||R.asset.address,Ie={userOverride:m,useCustomTransfers:!0},we=await $e(ce,Wt=>Qe({fundingAmountOverride:Wt}),ge,Ie),Fe=V.ESCROW_ADDRESS,Ce=await Ue.getEthereumProvider();let Ae=null;try{const Wt=await Ce.request({method:"eth_chainId"});Ae=parseInt(Wt,16)}catch{Ae=null}if(Ae!==F)try{await Ce.request({method:"wallet_switchEthereumChain",params:[{chainId:`0x${F.toString(16)}`}]})}catch(Wt){if(Wt?.code===4902||Wt?.message?.includes("Unrecognized chain ID")){const ln=q.getChainConfig(F);ln&&await Ce.request({method:"wallet_addEthereumChain",params:[{chainId:`0x${F.toString(16)}`,chainName:ln.name||`Chain ${F}`,nativeCurrency:ln.nativeCurrency||{name:"ETH",symbol:"ETH",decimals:18},rpcUrls:[ln.rpcUrl],blockExplorerUrls:ln.blockExplorer?[ln.blockExplorer]:void 0}]})}else throw Wt}const et=q.getChainConfig(F),Lt=O.createWalletClient({account:Te,chain:et?.viemChain,transport:O.custom(Ce)}),Nt=V.normalizeNativeTokenAddress(A.address),Gt=A.isNative||V.isNativeToken(Nt)?await Lt.sendTransaction({to:Fe,value:we,chain:et?.viemChain}):await Lt.sendTransaction({to:Nt,data:O.encodeFunctionData({abi:O.erc20Abi,functionName:"transfer",args:[Fe,we]}),chain:et?.viemChain});if((await q.getClientForChain(F).waitForTransactionReceipt({hash:Gt,timeout:12e4,pollingInterval:2e3,confirmations:1})).status!=="success")throw new Error("Escrow deposit failed");const an=Qe({fundingAmountOverride:we}),fn=an.some(Wt=>Wt.tokenTransfers?.length);return await Be(an,ge,we,Wt=>{Wt.txHash&&(ft(ln=>({...ln??{status:"processing"},txHash:Wt.txHash})),Ye(Wt.txHash))},void 0,fn?Ie:{userOverride:m})},[R,Ue,Te,ue,ye,tt,s,G,We,Qe,$e,Be,nt]),Qt=o.useMemo(()=>R?.asset?R.asset.address.toLowerCase()===s.address.toLowerCase()&&R.asset.chainId===s.chainId:!1,[R,s.address,s.chainId]),Ne=E&&ie&&Qt&&_>0&&!!R?.asset,bt=oe,Dt=o.useMemo(()=>!(!R?.asset||_<=0),[R,_,Ne]),nn=o.useMemo(()=>!t||be||pe!=="idle"||!Dt||Ne||!R?.asset?null:[E?"pay":"supply",c,R.asset.address.toLowerCase(),R.asset.chainId,R.amount,tt,s.address.toLowerCase(),s.chainId,z,nt?.toLowerCase()??"",Ge?"swap":"direct",Tt?"direct-token":"routed-token",ie?"non7702":"7702",Qt?"source-dest":"cross-chain",St?"quoting":"quoted",We?.amountIn?.toString()??"",We?.amountInMax?.toString()??"",We?.venue??"",Rt?.amountOut?.toString()??"",ut?.toString()??"",ue??"",ye??"",re??""].join("|"),[t,be,pe,Dt,Ne,R,E,c,tt,s,z,nt,Ge,Tt,ie,Qt,St,We,Rt,ut,ue,ye,re]),Kt=o.useCallback(async()=>{if(!R?.asset)return null;if(E){if(_<0||_===0||Ge&&!We||ie&&Qt)return null;const ce=O.parseUnits(tt,s.decimals),ge=nt||bn(R.asset,z)||R.asset.address||s.address;if(ie){const Ae=ue||ye;if(!Ae)return null;const et=Ge?We?.amountInMax??0n:ce;if(et===0n)return null;const Lt=await $e(et,an=>Qe({fundingAmountOverride:an}),ge,{userOverride:Ae,useCustomTransfers:!0}),Nt=Qe({fundingAmountOverride:Lt}),Gt=await ve(Nt,ge,Lt,{userOverride:Ae,useCustomTransfers:!0});return Ts(Gt,{tokenAddress:ge,symbol:V.getTokenByAddress(ge,z)?.symbol??R.asset.symbol,decimals:V.getTokenByAddress(ge,z)?.decimals??R.asset.decimals})}if(!xe||!re||!le||!Pe)return null;const Ie=Ge?We?.amountInMax??0n:ce;if(Ie===0n)return null;const we=await $e(Ie,Ae=>Qe({fundingAmountOverride:Ae}),ge,{useCustomTransfers:!0}),Fe=Qe({fundingAmountOverride:we}),Ce=await ve(Fe,ge,we,{useCustomTransfers:!0});return Ts(Ce,{tokenAddress:ge,symbol:V.getTokenByAddress(ge,z)?.symbol??R.asset.symbol,decimals:V.getTokenByAddress(ge,z)?.decimals??R.asset.decimals})}if(_<=0||!ue||!Tt&&!Rt&&!St||St)return null;const m=O.parseUnits(R.amount,R.asset.decimals),A=Ut();if(A.length===0)return null;const F=A.some(ce=>ce.tokenTransfers?.length),H=await ve(A,wt,m,F?{useCustomTransfers:!0}:void 0);return Ts(H,{tokenAddress:wt,symbol:V.getTokenByAddress(wt,z)?.symbol??s.symbol,decimals:V.getTokenByAddress(wt,z)?.decimals??s.decimals})},[R,E,_,Ge,We,ie,Qt,tt,s,nt,ue,ye,$e,Qe,ve,z,xe,re,le,Pe,Tt,Rt,St,Ut,wt]);o.useEffect(()=>{if(!t){dt(!1),Bt(!1),yt(null),$t(null),Et.current=null;return}if(be||pe!=="idle"){Yt.current+=1,dt(!1);return}if(!Dt){$t(null),dt(!1),Bt(!1),yt(null),Et.current=null;return}if(Ne){$t(null),dt(!1),Bt(!0),yt(null),Et.current=null;return}if(nn&&nn===Et.current)return;Et.current=nn;const m=++Yt.current;yt(null),dt(!0);const A=window.setTimeout(()=>{(async()=>{try{const F=await Kt();Yt.current===m&&(F&&($t(F),Bt(!0)),yt(null))}catch(F){if(Yt.current===m){const H=Xt(F,"Unable to calculate fees for this action.");$t(null),Bt(!1),yt(H)}}finally{Yt.current===m&&dt(!1)}})()},250);return()=>{clearTimeout(A),Yt.current===m&&dt(!1)}},[t,be,pe,Kt,Dt,Ne,nn]);const ee=o.useCallback(async()=>{if(_<0){he("Enter a valid payment amount");return}if(!R?.asset){he("Select a payment source");return}if(Oe){he("Insufficient balance");return}if(_>0&&Ge&&!We){he("Swap quote not available. Try a different asset.");return}if(ie){if(!Te){he("Please connect your external wallet to continue");return}D(!0),he(null),It(!0),ft({status:"processing"});try{let m;if(Qt||_===0)m=await _t();else if(l&&R?.asset){const A=R.asset,F=O.parseUnits(tt,s.decimals),H=G?F:We?We.amountInMax:0n;if(H===0n)throw new Error("Quote not available yet");const ce=ue||ye;if(!ce)throw new Error("Embedded wallet not available \u2014 sign in to create one before paying");const ge=nt||A.address,Ie=await $e(H,Ce=>Qe({fundingAmountOverride:Ce}),ge,{userOverride:ce,useCustomTransfers:!0}),we=Qe({fundingAmountOverride:Ie}),Fe=await l({asset:A,amount:tt,amountWei:F,destinationToken:s,chainBatches:we,requiredNetFunding:H,grossFundingAmount:Ie,selectedIsEquivalent:G,resolvedTokenIn:ge,exactOutputSwapAmountInMax:We?.amountInMax});Fe&&(Ye(Fe),ft(Ce=>({...Ce??{status:"processing"},txHash:Fe}))),m=Fe||void 0}else m=await mn();ft(A=>({status:"success",txHash:A?.txHash||m||""}))}catch(m){const A=Xt(m,"Payment failed. Please try again.");he(A),ft({status:"failed",error:A}),W?.(m instanceof Error?m:new Error(A))}finally{D(!1)}return}if(!xe||!re){he("Please connect your wallet to continue");return}if(!le||!Pe){he(`Please authenticate with ${ke||"wallet provider"} to continue`);return}D(!0),he(null),It(!0),ft({status:"processing"});try{const m=O.parseUnits(tt,s.decimals),A=nt||R?.asset?.address||s.address,F=Ge?We?.amountInMax??0n:m,H={useCustomTransfers:!0},ce=await $e(F,Fe=>Qe({fundingAmountOverride:Fe}),A,H),ge=Qe({fundingAmountOverride:ce}),Ie=ge.some(Fe=>Fe.tokenTransfers?.length),we=await Be(ge,A,Ie?ce:0n,Fe=>{Fe.txHash&&(ft(Ce=>({...Ce,txHash:Fe.txHash})),Ye(Fe.txHash))},void 0,H);ft(Fe=>({status:"success",txHash:Fe?.txHash||we}))}catch(m){const A=Xt(m,"Payment failed. Please try again.");he(A),ft({status:"failed",error:A}),W?.(m instanceof Error?m:new Error(A))}finally{D(!1)}},[_,R,Oe,Ge,We,ie,Qt,Te,_t,mn,l,G,xe,re,le,Pe,ke,Qe,tt,s,Be,$e,W,nt]);o.useEffect(()=>{!E&&pe==="success"&&at&&(Ve(),T?.(at))},[E,pe,at,Ve,T]),o.useEffect(()=>{if(!E||Le?.status!=="success"||Ft.current||!re)return;Ft.current=!0;const m=jt.current;!m?.asset||m.asset?._source==="wallet"||Ve()},[E,Le?.status,re,Ve]);const te=o.useRef(T),Re=o.useRef(W);o.useEffect(()=>{te.current=T},[T]),o.useEffect(()=>{Re.current=W},[W]),o.useEffect(()=>{t&&(Ve(),st())},[t,Ve,st]),o.useEffect(()=>{E&&(Le?.status==="success"&&te.current?.(Le.txHash||""),Le?.status==="failed"&&Re.current?.(new Error("Payment execution failed")))},[E,Le?.status]);const Ke=o.useCallback(()=>{It(!1),ft(null),N(null),Ft.current=!1,Ve(),st()},[Ve,st]),qe=E&&_===0,mt=E?!!R?.asset&&_>=0&&!Oe&&!be&&(qe||Ne||qt)&&!De&&(qe||!Ge||!!We):!!R?.asset&&_>0&&!Oe&&!be&&qt&&!De&&(Tt||!!Rt&&!St),gt=Tt?p||`Your ${s.symbol} will be used directly.`:d||"Your assets will be swapped and used in a single atomic transaction.",Ct=(z?q.getChainConfig(z):void 0)?.viemChain?.blockExplorers?.default?.url??"",Ee=Po.indexOf(pe),Me=be?(zo[pe]||"EXECUTING...").toUpperCase():pe==="success"?"DONE":Oe?"INSUFFICIENT BALANCE":a.toUpperCase(),vt=o.useMemo(()=>{if(be)return"PAYING...";if(Oe&&R?.asset)return`INSUFFICIENT ${R.asset.symbol}`;if(a)return a.toUpperCase();const m=_>0?` ${tt} ${s.symbol}`:"";return Ge?`SWAP & PAY${m}`:`PAY${m}`},[be,Oe,R,a,_,tt,s.symbol,Ge]),de=pe==="success"?()=>{ot("idle"),N(null),Ye(null),Ve()}:Vt,Se=pe==="success"?!1:!mt;if(!t)return null;const _e=E?v||`Pay ${s.symbol}`:a,He=E?b:e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",gap:"3px"},children:[e.jsx("span",{style:{marginTop:"3px",flexShrink:0},children:e.jsx(Ss,{color:ae})}),e.jsx("p",{style:{fontSize:"12px",color:ae,margin:0,lineHeight:"1.4",fontFamily:j},children:gt})]});if(E){const m=Le&&(Le.status==="success"||Le.status==="failed")?[{asset:{symbol:R?.asset?.symbol||s.symbol,address:R?.asset?.address||""},amount:tt,txHash:Le.txHash||"",success:Le.status==="success",error:Le.status==="failed"?Le.error:void 0}]:void 0;return e.jsx(on,{isOpen:t,onClose:n,title:_e,subtitle:He,styles:k,dark:C,footerLinkText:"Spicenet accounts \u2192",children:e.jsxs("div",{style:{padding:"16px 24px 8px 24px",position:"relative"},children:[B&&e.jsx("div",{style:{display:"flex",justifyContent:"flex-end",marginBottom:"6px"},children:e.jsxs("button",{onClick:B,style:{background:"none",border:"none",cursor:"pointer",padding:0,display:"flex",alignItems:"center",gap:"4px",color:P,fontSize:"12px",fontWeight:500,fontFamily:j,textDecoration:"underline",textUnderlineOffset:"2px"},children:["Add Funds",e.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",stroke:P,strokeWidth:"1.8",children:[e.jsx("circle",{cx:"6",cy:"6",r:"5"}),e.jsx("path",{d:"M6 4v4M4 6h4",strokeLinecap:"round"})]})]})}),e.jsx("div",{style:{marginBottom:"12px"},children:e.jsx(Fn,{assets:Z,selectedAsset:R??void 0,onAssetSelect:it,onAmountChange:()=>{},label:"Pay with",showBalance:!0,showMaxButton:!1,hideAmountInput:!0,displayAmount:R?.asset?Ge?St?"...":We?`~${parseFloat(O.formatUnits(We.amountIn,R.asset.decimals)).toFixed(6)}`:void 0:tt??void 0:void 0,dark:C,theme:S,styles:k})}),e.jsx(Io,{variant:"pay",destinationSymbol:s.symbol,destinationLogoURI:s.logoURI,destinationDecimals:s.decimals,primaryColor:P,fontFamily:j,textPrimary:$,textSecondary:L,cardBg:Q,cardBorder:se,dk:J,dark:C,isQuoting:St,quoteError:Ot,estimatedOutput:Ht,paymentAmount:tt,needsSwap:Ge,exactOutputSwap:We,adjustable:h==="adjustable",maxAmount:w,onAmountChange:At}),Dt&&e.jsx(js,{fontFamily:j,textPrimary:$,textSecondary:L,cardBg:Q,cardBorder:se,resolvedDark:C,darkCardBorder:J.cardBorder,primaryColor:P,feePreview:Xe,isLoading:zt,errorText:De,directExecutionFeeNote:Ne}),bt&&e.jsx("div",{style:{marginBottom:"12px",padding:"10px 14px",backgroundColor:K.errorBg,border:`1px solid ${K.errorBorder}`,borderRadius:"6px"},children:e.jsx("p",{style:{color:K.errorText,fontSize:"13px",margin:0,fontFamily:j},children:bt})}),e.jsx(Ze.Button,{variant:"outline",fullWidth:!0,onClick:ee,disabled:!mt,loading:be,dark:C,styles:{...k,button:{...k?.button,backgroundColor:P}},children:vt}),Le&&kt&&e.jsx("div",{style:{position:"absolute",top:0,left:0,right:0,bottom:0,zIndex:10,backgroundColor:C?J.shell:"white",borderRadius:C?"12px":"6px",padding:"16px 0"},children:e.jsx(Ln,{type:"payment",isOpen:Le.status!=="processing",isProcessing:be||Le.status==="processing",closeOnComplete:!1,chainName:q.getChainName(z),explorerUrl:q.getExplorerUrl(z,"").replace(/\/tx\/.*$/,"")||void 0,onRetryTx:()=>{It(!1),ft(null),ee()},onNewTx:Ke,onClose:()=>{It(!1),ft(null)},onComplete:Ke,results:m,styles:k,dark:C})})]})})}return e.jsx(on,{isOpen:t,onClose:n,title:_e,subtitle:He,dark:C,styles:k,theme:I,children:e.jsxs("div",{style:{padding:"24px 24px 5px 24px",position:"relative"},children:[e.jsx("div",{style:{marginBottom:"16px"},children:e.jsx(Fn,{assets:Z,selectedAsset:R||void 0,onAssetSelect:it,onAmountChange:xt,disabled:be||pe==="success",showBalance:!0,showMaxButton:!0,label:"From Spice Balance",placeholder:"0.00",theme:S,styles:k,dark:ne,maxAmount:je>0?In(je,R?.asset.decimals??s.decimals):void 0})}),R?.asset&&!Tt&&e.jsx(Io,{variant:"supply",destinationSymbol:s.symbol,destinationLogoURI:s.logoURI,destinationDecimals:s.decimals,primaryColor:P,fontFamily:j,textPrimary:$,textSecondary:L,cardBg:Q,cardBorder:se,dark:C,isQuoting:St,quoteError:Ot,estimatedOutput:Ht}),Dt&&e.jsx(js,{fontFamily:j,textPrimary:$,textSecondary:L,cardBg:Q,cardBorder:se,resolvedDark:C,darkCardBorder:J.cardBorder,primaryColor:P,feePreview:Xe,isLoading:zt,errorText:De}),pe!=="idle"&&e.jsxs("div",{style:{padding:"10px 14px",borderRadius:"7px",marginBottom:"16px",backgroundColor:pe==="success"?Q:pe==="error"?K.errorBg:Q,border:`1px solid ${pe==="success"?se:pe==="error"?K.errorBorder:se}`},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"10px"},children:[pe==="success"?e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",style:{flexShrink:0},children:e.jsx("path",{d:"M5 13l4 4L19 7",stroke:K.successText,strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round"})}):pe==="error"?e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",style:{flexShrink:0},children:e.jsx("path",{d:"M18 6L6 18M6 6l12 12",stroke:K.errorText,strokeWidth:"2.5",strokeLinecap:"round"})}):e.jsx(Ze.Spinner,{size:14,color:P}),e.jsx("span",{style:{fontSize:"13px",fontWeight:500,color:pe==="success"?$:pe==="error"?K.errorText:$,fontFamily:j,flex:1},children:pe==="success"?"Deposit confirmed":pe==="error"?rt||"Transaction failed":zo[pe]||rt}),pe==="success"&&at&&e.jsx("a",{href:`${Ct}/tx/${at}`,target:"_blank",rel:"noopener noreferrer",style:{fontSize:"12px",color:P,fontFamily:j,textDecoration:"none",whiteSpace:"nowrap",flexShrink:0},children:"View tx \u2192"}),pe==="error"&&e.jsx("button",{onClick:()=>{ot("idle"),he(null),setTimeout(Vt,50)},style:{background:"none",border:"none",fontSize:"12px",color:P,fontFamily:j,cursor:"pointer",padding:0,whiteSpace:"nowrap",flexShrink:0},children:"Retry \u2192"})]}),Ee>=0&&pe!=="success"&&pe!=="error"&&e.jsx("div",{style:{marginTop:"8px",height:"3px",borderRadius:"2px",backgroundColor:`${L}22`,overflow:"hidden"},children:e.jsx("div",{style:{height:"100%",borderRadius:"2px",backgroundColor:P,width:`${(Ee+1)/Po.length*100}%`,transition:"width 400ms ease"}})})]}),oe&&pe==="idle"&&e.jsx("div",{style:{padding:"10px 14px",borderRadius:"7px",backgroundColor:K.errorBg,border:`1px solid ${K.errorBorder}`,marginBottom:"16px"},children:e.jsx("p",{style:{fontSize:"13px",color:K.errorText,margin:0,fontFamily:j},children:oe})}),e.jsx(Ze.Button,{variant:"outline",fullWidth:!0,disabled:Se,onClick:de,theme:I,dark:C,styles:{...k,button:{...k?.button,backgroundColor:P}},style:{fontSize:"20px",fontWeight:600,letterSpacing:"1.5px",fontFamily:M},children:Me})]})})},La=t=>e.jsx(Ho,{isOpen:t.isOpen,onClose:t.onClose,amountDirection:"output",destinationToken:{address:t.paymentTokenAddress,symbol:t.paymentTokenSymbol,decimals:t.paymentTokenDecimals,chainId:t.paymentChainId,logoURI:t.paymentTokenLogoURI},buildActionCalls:t.buildActionCalls,buildSpicenetBatch:t.buildSpicenetBatch,actionLabel:t.ctaLabel||"PAY",paymentAmount:t.paymentAmount,amountInputMode:t.amountInputMode,minPaymentAmount:t.minPaymentAmount,maxPaymentAmount:t.maxPaymentAmount,onAmountChange:t.onAmountChange,sourceChains:t.sourceChains,title:t.title,subtitle:t.subtitle,onAddFunds:t.onAddFunds,styles:t.styles,dark:t.dark,onSuccess:t.onPaymentSuccess,onError:t.onPaymentError}),za=({label:t="Export Wallet",style:n,className:s,onExport:r,onError:i})=>{const[l,a]=o.useState(!1),[c,d]=o.useState(!1),{primaryColor:p}=Y.useSpiceBrand(),u=o.useContext(Y.SpiceFlowProviderContext),{isAuthenticated:f}=pn();let g=null;try{g=en.usePrivy()}catch{}let h=null,y=null;try{h=Dn.useEmbeddedReveal(),y=Dn.useDynamicContext()}catch{h=null,y=null}const w=gn.getDynamicEmbeddedWallet(y),x=o.useCallback(async()=>{if(!f){i?.("User is not authenticated. Please log in first.");return}try{if(u?.provider==="dynamic"){if(!h||!w){i?.("Dynamic is not available. Ensure the app is wrapped in a DynamicContextProvider.");return}await h.initExportProcess(!1),r?.();return}if(!g){i?.("Privy is not available. Ensure the app is wrapped in a PrivyProvider.");return}await g.exportWallet(),r?.()}catch(v){const b=v instanceof Error?v.message:"Failed to export wallet";console.error("Export wallet error:",v),i?.(b)}},[w,h,f,i,r,g,u?.provider]),k=!f,U={padding:"10px 20px",borderRadius:"8px",fontFamily:'"IBM Plex Mono", monospace',fontSize:"14px",fontWeight:500,letterSpacing:"0.4px",textTransform:"uppercase",cursor:k?"not-allowed":"pointer",opacity:k?.5:1,border:"1px solid #0e0d0b",color:"#0e0d0b",backgroundColor:c?`${p}cc`:l?`${p}ee`:p,transition:"all 150ms ease",display:"inline-flex",alignItems:"center",justifyContent:"center",gap:"8px",...n};return e.jsxs("button",{onClick:x,onMouseEnter:()=>a(!0),onMouseLeave:()=>{a(!1),d(!1)},onMouseDown:()=>d(!0),onMouseUp:()=>d(!1),disabled:k,className:s,style:U,children:[e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}),e.jsx("polyline",{points:"17 8 12 3 7 8"}),e.jsx("line",{x1:"12",y1:"3",x2:"12",y2:"15"})]}),t]})};function Vo(t){const n=o.useContext(Y.SpiceFlowProviderContext),s=un(),r=t?.enabled===!1?void 0:s,i=n?.network?{network:n.network,pollIntervalMs:t?.pollIntervalMs,chainIds:t?.chainIds??n.supportedChainIds}:void 0;return{...lo(r,i),embeddedWalletAddress:s}}const Pa=({appName:t,status:n,statusLabel:s,totalUsdValue:r,breakdownSubtitle:i,address:l,dk:a,dark:c=!1,showModeToggle:d,isEmbeddedMode:p=!0,onModeToggle:u})=>{const[f,g]=o.useState(!1),h=async()=>{l&&await xr(l)&&(g(!0),setTimeout(()=>g(!1),2e3))},y=n==="active",w=s||(y?"Active":"Inactive"),x=y?"#10b981":"#9ca3af";return e.jsxs("div",{children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:"4px"},children:[e.jsxs("div",{style:{fontSize:"13px",fontWeight:600,color:c?a.textPrimary:"#111827"},children:[t," Account"]}),d?e.jsxs("button",{onClick:u,style:{display:"flex",alignItems:"center",gap:"4px",padding:"2px 8px",borderRadius:"9999px",backgroundColor:c?a.hoverBg:"#f3f4f6",border:c?`1px solid ${a.cardBorder}`:"1px solid #e5e7eb",cursor:"pointer",fontSize:"11px",fontWeight:600,fontFamily:'"IBM Plex Mono", monospace',color:c?a.textSecondary:"#6b7280",transition:"all 150ms ease",letterSpacing:"0.02em"},children:[e.jsx("div",{style:{width:"6px",height:"6px",borderRadius:"50%",backgroundColor:p?"#22c55e":"#f59e0b"}}),e.jsx("span",{children:p?"Embedded":"External"})]}):e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"4px",padding:"2px 8px",borderRadius:"9999px",backgroundColor:c?a.hoverBg:y?"#ecfdf5":"#f3f4f6",border:c?`1px solid ${a.cardBorder}`:y?"1px solid #a7f3d0":"1px solid #e5e7eb"},children:[e.jsx("div",{style:{width:"6px",height:"6px",borderRadius:"50%",backgroundColor:x}}),e.jsx("span",{style:{fontSize:"11px",fontWeight:500,color:c?a.textSecondary:y?"#065f46":"#6b7280"},children:w})]})]}),e.jsx("div",{style:{fontSize:"28px",fontWeight:700,color:c?a.textPrimary:"#111827",lineHeight:1.2,marginBottom:"2px"},children:Bn(r)}),i&&e.jsx("div",{style:{fontSize:"12px",color:c?a.textSecondary:"#6b7280",marginBottom:"8px"},children:i}),l&&e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px"},children:[e.jsx("span",{style:{fontSize:"12px",fontFamily:'"IBM Plex Mono", monospace',color:c?a.textSecondary:"#9ca3af"},children:fr(l)}),e.jsx("button",{onClick:h,style:{padding:"2px 6px",fontSize:"10px",fontWeight:500,backgroundColor:"transparent",color:c?a.textSecondary:"#9ca3af",border:"none",cursor:"pointer",borderRadius:"4px",transition:"all 150ms ease"},title:"Copy address",children:f?"Copied":"Copy"})]})]})},Oa=({pendingDeposits:t,onCompleteDeposit:n,dk:s,dark:r=!1})=>t.length===0?null:e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:"11px",fontWeight:600,letterSpacing:"1px",color:r?s.textSecondary:"#6b7280",marginBottom:"8px",textTransform:"uppercase"},children:"Pending Deposits"}),e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:t.map((i,l)=>{const a=q.getChainConfig(i.chainId)?.displayName||`Chain ${i.chainId}`;return e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"10px 12px",backgroundColor:r?s.warningBg:"#fffbeb",border:r?`1px solid ${s.warningBorder}`:"1px solid #fde68a",borderRadius:"8px"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[e.jsx("div",{style:{width:"24px",height:"24px",borderRadius:"50%",backgroundColor:r?s.hoverBg:"#fde68a",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"11px",fontWeight:600,color:r?s.warningText:"#92400e"},children:i.tokenSymbol.charAt(0)}),e.jsxs("div",{children:[e.jsxs("div",{style:{fontSize:"13px",fontWeight:500,color:r?s.textPrimary:"#111827"},children:[i.amount," ",i.tokenSymbol]}),e.jsxs("div",{style:{fontSize:"11px",color:r?s.warningText:"#92400e"},children:["on ",a]})]})]}),e.jsx("button",{onClick:()=>n?.(i),style:{padding:"4px 12px",fontSize:"11px",fontWeight:600,backgroundColor:r?s.hoverBg:"#fef3c7",color:r?s.textPrimary:"#92400e",border:r?`1px solid ${s.warningBorder}`:"1px solid #fde68a",borderRadius:"9999px",cursor:"pointer",transition:"all 150ms ease"},children:"Complete"})]},`${i.tokenAddress}-${i.chainId}-${l}`)})})]}),Ha=({spiceAssets:t,loading:n,dk:s,dark:r=!1})=>{const i={fontSize:"11px",fontWeight:600,letterSpacing:"1px",color:r?s.textSecondary:"#6b7280",marginBottom:"8px",textTransform:"uppercase"},l={backgroundColor:r?s.cardBg:"#f9fafb",border:r?`1px solid ${s.cardBorder}`:"1px solid #e5e7eb",borderRadius:"8px"};return n?e.jsxs("div",{children:[e.jsx("div",{style:i,children:"Idle Balances"}),[1,2].map(a=>e.jsx("div",{style:{...l,padding:"12px",marginBottom:"6px",height:"48px",animation:"pulse 1.5s ease-in-out infinite",opacity:.5}},a))]}):t.length===0?e.jsxs("div",{children:[e.jsx("div",{style:i,children:"Idle Balances"}),e.jsx("div",{style:{...l,padding:"16px",textAlign:"center",fontSize:"13px",color:r?s.textSecondary:"#9ca3af"},children:"No assets yet. Deposit to get started."})]}):e.jsxs("div",{children:[e.jsx("div",{style:i,children:"Idle Balances"}),e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:t.map((a,c)=>{const d=q.getChainConfig(a.chainId),p=a.chainDisplayName||d?.displayName||`Chain ${a.chainId}`,u=a.tokenDisplaySymbol||a.tokenDisplayName||a.tokenSymbol;return e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"10px 12px",...l},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[a.logoURI?e.jsx("img",{src:a.logoURI,alt:a.tokenSymbol,style:{width:"24px",height:"24px",borderRadius:"50%"}}):e.jsx("div",{style:{width:"24px",height:"24px",borderRadius:"50%",backgroundColor:r?s.hoverBg:"#e5e7eb",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"11px",fontWeight:600,color:r?s.textSecondary:"#6b7280"},children:u.charAt(0)}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:"13px",fontWeight:500,color:r?s.textPrimary:"#111827"},children:u}),e.jsx("div",{style:{fontSize:"11px",color:r?s.textSecondary:"#9ca3af"},children:p})]})]}),e.jsxs("div",{style:{textAlign:"right"},children:[e.jsx("div",{style:{fontSize:"13px",fontWeight:500,color:r?s.textPrimary:"#111827"},children:kn(a.balanceFormatted)}),e.jsx("div",{style:{fontSize:"11px",color:r?s.textSecondary:"#9ca3af"},children:Bn(a.usdValue)})]})]},`${a.tokenAddress}-${a.chainId}-${c}`)})})]})},Va=({section:t,dk:n,dark:s=!1})=>{const r=i=>{switch(i){case"green":return"#10b981";case"red":return"#ef4444";default:return s?n.textPrimary:"#111827"}};return e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:"11px",fontWeight:600,letterSpacing:"1px",color:s?n.textSecondary:"#6b7280",marginBottom:"8px",textTransform:"uppercase"},children:t.title}),e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:t.items.map((i,l)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"10px 12px",backgroundColor:s?n.cardBg:"#f9fafb",border:s?`1px solid ${n.cardBorder}`:"1px solid #e5e7eb",borderRadius:"8px"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[i.tokenLogoURI?e.jsx("img",{src:i.tokenLogoURI,alt:i.tokenSymbol,style:{width:"20px",height:"20px",borderRadius:"50%"}}):e.jsx("div",{style:{width:"20px",height:"20px",borderRadius:"50%",backgroundColor:s?n.hoverBg:"#e5e7eb",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"10px",fontWeight:600,color:s?n.textSecondary:"#6b7280"},children:i.tokenSymbol.charAt(0)}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:"13px",fontWeight:500,color:s?n.textPrimary:"#111827"},children:i.tokenSymbol}),e.jsx("div",{style:{fontSize:"11px",color:s?n.textSecondary:"#6b7280"},children:i.label})]})]}),e.jsx("div",{style:{fontSize:"13px",fontWeight:600,color:r(i.valueColor)},children:i.displayValue})]},l))})]})},Qa=({onDepositClick:t,onWithdrawClick:n,depositDisabled:s=!1,withdrawDisabled:r=!1,primaryColor:i="#EA4B4B",dark:l=!1})=>!t&&!n?null:e.jsxs("div",{style:{display:"flex",gap:"8px"},children:[t&&e.jsx(Ze.Button,{variant:"outline",onClick:t,disabled:s,dark:l,styles:{button:{backgroundColor:i}},style:{flex:1,height:"44px",fontSize:"12px"},children:"Deposit"}),n&&e.jsx(Ze.Button,{variant:"outline",onClick:n,disabled:r,dark:l,styles:{button:{backgroundColor:i}},style:{flex:1,height:"44px",fontSize:"12px"},children:"Withdraw"})]}),Ka=({appName:t,status:n,statusLabel:s,totalUsdValue:r,breakdownSubtitle:i,address:l,spiceAssets:a,spiceAssetsLoading:c,pendingDeposits:d,customSections:p,onDepositClick:u,onWithdrawClick:f,onCompleteDeposit:g,primaryColor:h,dk:y,dark:w=!1,showModeToggle:x,isEmbeddedMode:k,onModeToggle:U,showConnectExternalCta:v,onConnectExternalWallet:b,connectExternalError:B})=>{const[T,W]=o.useState(!1);return e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"16px",padding:"16px",maxHeight:"calc(80vh - 32px)",overflowY:"auto"},children:[e.jsx(Pa,{appName:t,status:n,statusLabel:s,totalUsdValue:r,breakdownSubtitle:i,address:l,dk:y,dark:w,showModeToggle:x,isEmbeddedMode:k,onModeToggle:U}),v&&e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:[e.jsx("button",{onClick:b,style:{width:"100%",padding:"10px 14px",borderRadius:"8px",backgroundColor:h||"#EA4B4B",color:"#ffffff",border:"none",cursor:"pointer",fontSize:"13px",fontWeight:600,fontFamily:'"Helvetica Neue", sans-serif',transition:"opacity 150ms ease"},children:"Connect External Wallet"}),B&&e.jsx("span",{style:{fontSize:"11px",color:w?y.errorText:"#b91c1c",lineHeight:1.4},children:B})]}),e.jsx("div",{style:{height:"1px",backgroundColor:w?"#2d2d2d":"#e5e7eb"}}),e.jsxs("div",{children:[e.jsxs("button",{onClick:()=>W(!T),style:{display:"flex",alignItems:"center",justifyContent:"space-between",width:"100%",padding:"8px 12px",backgroundColor:w?y.cardBg:"#f9fafb",border:w?`1px solid ${y.cardBorder}`:"1px solid #e5e7eb",borderRadius:"8px",cursor:"pointer",color:w?y.textSecondary:"#6b7280",fontSize:"12px",fontWeight:500},children:[e.jsx("span",{children:"How It Works"}),e.jsx("span",{style:{transform:T?"rotate(180deg)":"rotate(0deg)",transition:"transform 200ms ease",fontSize:"10px"},children:"\u25BE"})]}),T&&e.jsxs("div",{style:{marginTop:"6px",padding:"10px 12px",backgroundColor:w?y.cardBg:"#f0fdf4",border:w?`1px solid ${y.cardBorder}`:"1px solid #bbf7d0",borderRadius:"8px",fontSize:"12px",lineHeight:1.5,color:w?y.textSecondary:"#374151"},children:["Fund your ",t," Account from any supported chain (10+ EVM chains). Once funded, transact gas-free and asset-abstracted on"," ",t,"."]})]}),e.jsx(Oa,{pendingDeposits:d,onCompleteDeposit:g,dk:y,dark:w}),e.jsx(Ha,{spiceAssets:a,loading:c,dk:y,dark:w}),p.map((E,I)=>e.jsx(Va,{section:E,dk:y,dark:w},I)),e.jsx(Qa,{onDepositClick:u,onWithdrawClick:f,primaryColor:h,dark:w})]})},Rs=380,Tn=8,qa=({appName:t="Spice",status:n="active",statusLabel:s,customSections:r=[],extraAssets:i=[],tokenPrices:l={},breakdownLabels:a=[],supportedChains:c,styles:d,dark:p=!1,onDepositSuccess:u,onDepositClick:f,onWithdrawClick:g,onCompleteDeposit:h,showModeToggle:y=!1,defaultMode:w})=>{const x=o.useContext(Y.SpiceFlowProviderContext),k=x?.mode!=="7702",U=o.useRef(!1);o.useEffect(()=>{if(!U.current){if(Y.hasStoredSpiceFlowMode()){U.current=!0;return}w&&x?.setMode&&(x.setMode(w==="non7702"?"ondemand":"7702"),U.current=!0)}},[x,w]);const[v,b]=o.useState(!1),[B,T]=o.useState(null),[W,E]=o.useState({top:0,left:0,placement:"below"}),I=o.useRef(null),C=o.useRef(null),{address:P,isConnected:J}=pn(),K=un(),{address:j}=ht.useAccount(),{dark:M,primaryColor:ne,dk:$}=Y.useSpiceBrand(d,p),L=o.useMemo(()=>c||V.getChainIdsByNetwork("mainnet"),[c]),{assets:Q,loading:se}=An({address:P,supportedChains:L,enabled:!!P&&!k,refetchInterval:3e4}),ae=o.useMemo(()=>[...k?[]:Q.map(Z=>{const R=Z.balanceUsd||0,N=Number.isFinite(Z.balanceFormatted)?Z.balanceFormatted:0,X=R>0?R:(l[Z.symbol]||0)*N;return{tokenAddress:Z.address,tokenSymbol:Z.symbol,tokenDisplaySymbol:fs(Z),tokenDisplayName:mr(Z),tokenDecimals:Z.decimals,chainId:Z.chainId,chainDisplayName:xs(Z),balance:Z.balance.toString(),balanceFormatted:Z.balanceFormatted,usdValue:X,logoURI:Z.logoURI}}),...i].filter(Z=>Z.balanceFormatted>0),[k,Q,l,i]),S=o.useMemo(()=>ae.reduce((Z,R)=>Z+R.usdValue,0),[ae]),{pendingDeposits:z}=Vo({chainIds:L,enabled:!!P}),ie=o.useMemo(()=>r.reduce((Z,R)=>Z+R.totalValue,0),[r]),me=S+ie,re=o.useMemo(()=>{const Z=[];S>0&&Z.push(`${Bn(S)} idle`);for(const R of r){const N=a.find(X=>X.sectionTitle===R.title)?.label||R.title.toLowerCase();Z.push(`${Bn(R.totalValue)} ${N}`)}return Z.join(" \xB7 ")},[S,r,a]),xe=o.useCallback(Z=>{h?h(Z):T(Z)},[h]),le=o.useCallback(()=>{T(null)},[]),Pe=o.useCallback(()=>{T(null),u?.()},[u]),ke=o.useCallback(()=>{if(!I.current)return;const Z=I.current.getBoundingClientRect(),R=window.innerHeight-Z.bottom-Tn,N=Z.top-Tn,X=R>=400||R>=N?"below":"above",fe=Math.max(Tn,Math.min(Z.right-Rs,window.innerWidth-Rs-Tn)),be=X==="below"?Z.bottom+Tn:Z.top-Tn;E({top:be,left:fe,placement:X})},[]);o.useLayoutEffect(()=>{v&&ke()},[v,ke]),o.useEffect(()=>{if(!v)return;const Z=X=>{I.current&&!I.current.contains(X.target)&&C.current&&!C.current.contains(X.target)&&b(!1)},R=X=>{X.key==="Escape"&&b(!1)},N=()=>ke();return document.addEventListener("mousedown",Z),document.addEventListener("keydown",R),window.addEventListener("scroll",N,{passive:!0}),window.addEventListener("resize",ke),()=>{document.removeEventListener("mousedown",Z),document.removeEventListener("keydown",R),window.removeEventListener("scroll",N),window.removeEventListener("resize",ke)}},[v,ke]);const Be=x?.mode==="7702",ve=Be?K||P:j||P,Ue=o.useCallback(()=>{x?.setMode&&x.setMode(Be?"ondemand":"7702")},[x,Be]),[Te,ye]=o.useState(null);let Je=null;try{Je=en.useConnectWallet({onSuccess:()=>ye(null),onError:Z=>ye(Xt(Z,"Failed to connect wallet."))}).connectWallet}catch{Je=null}const ze=o.useCallback(()=>{Je&&(ye(null),Je({walletChainType:"ethereum-only"}))},[Je]),ue=y&&!Be&&!j&&!!Je;if(typeof window>"u")return null;const Ve=e.jsxs("button",{ref:I,onClick:()=>b(!v),style:{display:"inline-flex",alignItems:"center",gap:"6px",padding:"8px 14px",borderRadius:"9999px",backgroundColor:M?$.hoverBg:"#ffffff",border:M?`1px solid ${$.cardBorder}`:"1px solid #e5e7eb",cursor:"pointer",fontSize:"13px",fontWeight:500,fontFamily:'"Helvetica Neue", sans-serif',color:M?$.textPrimary:"#111827",transition:"all 150ms ease",boxShadow:M?"none":"0 1px 2px rgba(0,0,0,0.05)"},children:[e.jsx("span",{style:{width:"8px",height:"8px",borderRadius:"50%",backgroundColor:ne,flexShrink:0}}),e.jsxs("span",{children:[t," Account"]}),J&&e.jsxs("span",{style:{color:M?$.textSecondary:"#6b7280"},children:["\xB7 ",Bn(me)]}),e.jsx("span",{style:{fontSize:"10px",color:M?$.textSecondary:"#9ca3af",transform:v?"rotate(180deg)":"rotate(0deg)",transition:"transform 200ms ease"},children:"\u25BE"})]}),st=v?Zn.createPortal(e.jsxs(e.Fragment,{children:[e.jsx("div",{style:{position:"fixed",inset:0,backgroundColor:"rgba(0, 0, 0, 0.08)",zIndex:9998},onClick:()=>b(!1)}),e.jsx("div",{ref:C,style:{position:"fixed",top:W.placement==="below"?`${W.top}px`:"auto",bottom:W.placement==="above"?`${window.innerHeight-W.top}px`:"auto",left:`${W.left}px`,width:`${Rs}px`,maxHeight:"80vh",backgroundColor:M?$.shell:"#ffffff",border:M?`1px solid ${$.cardBorder}`:"1px solid #e5e7eb",borderRadius:"12px",boxShadow:M?"0 10px 40px rgba(0, 0, 0, 0.5)":"0 10px 40px rgba(0, 0, 0, 0.12)",zIndex:9999,overflow:"hidden",animation:"accountDisplayFadeIn 150ms ease-out"},children:e.jsx(Ka,{appName:t,status:n,statusLabel:s,totalUsdValue:me,breakdownSubtitle:re,address:y?ve:P,spiceAssets:ae,spiceAssetsLoading:se,pendingDeposits:z,customSections:r,onDepositClick:f,onWithdrawClick:g,onCompleteDeposit:xe,primaryColor:ne,dk:$,dark:M,showModeToggle:y,isEmbeddedMode:Be,onModeToggle:Ue,showConnectExternalCta:ue,onConnectExternalWallet:ze,connectExternalError:Te})}),e.jsx("style",{children:`
114
+ `})]})},As=[{type:"function",name:"createWithdrawalRequest",inputs:[{name:"request",type:"tuple",internalType:"struct Spicenet.CreateWithdrawalRequestArgs",components:[{name:"chainId",type:"string",internalType:"string"},{name:"idempotenceKey",type:"bytes32",internalType:"bytes32"},{name:"nbf",type:"uint256",internalType:"uint256"},{name:"exp",type:"uint256",internalType:"uint256"},{name:"metadata",type:"string",internalType:"string"},{name:"transfers",type:"tuple[]",internalType:"struct Spicenet.CreateTokenTransfer[]",components:[{name:"token",type:"string",internalType:"string"},{name:"to",type:"string",internalType:"string"},{name:"amount",type:"uint256",internalType:"uint256"}]}]}],outputs:[],stateMutability:"nonpayable"}];function So(t,n){const s=t.intents.flatMap(a=>a.batches).filter(a=>{const l=BigInt(a.quotedAmount),i=BigInt(a.totalDebit),d=BigInt(a.feeBreakdown.gasFee),c=BigInt(a.feeBreakdown.spicenetFee);return l>0n||i>0n||d>0n||c>0n});if(s.length===0||s.length>1)return null;const r=s[0];return{symbol:n.symbol,decimals:n.decimals,grossAmount:BigInt(r.totalDebit),netAmount:BigInt(r.quotedAmount),totalFee:BigInt(r.feeBreakdown.gasFee)+BigInt(r.feeBreakdown.spicenetFee),spicenetFee:BigInt(r.feeBreakdown.spicenetFee),gasFee:BigInt(r.feeBreakdown.gasFee),gasQuoteSource:r.gasQuoteSource}}function Bs(t,n){const s=Math.floor(Date.now()/1e3)+600,r=V.hashChainBatches(n);return{user:t,intents:[{mode:"7702",signatureType:"ecdsa",signature:"0x00",nbf:0,exp:s,chainBatches:r.map((a,l)=>({hash:a.hash,chainId:a.chainId,tokenTransfers:n[l].domain==="spicenet"?[]:n[l].tokenTransfers??[],calls:a.calls}))}]}}function Io(t,n){if(t.some(a=>a.domain==="spicenet"))return t;const s=t.flatMap(a=>(a.tokenTransfers??[]).filter(l=>l.from==="escrow").map(l=>({chainId:a.chainId,token:P.getAddress(l.token),to:P.getAddress(l.to),amount:BigInt(l.amount)})));if(s.length===0)return t;const r=BigInt(Math.floor(Date.now()/1e3))+3600n;return[{chainId:V.SPICENET_NATIVE_CHAIN_ID,domain:"spicenet",tokenTransfers:[],calls:s.map((a,l)=>{const i=P.keccak256(P.encodeAbiParameters([{type:"address"},{type:"address"},{type:"uint256"},{type:"uint256"},{type:"uint256"}],[n,a.token,a.amount,BigInt(a.chainId),BigInt(Date.now()+l)]));return{to:"0x0000000000000000000000000000000000000000",value:0n,data:P.encodeFunctionData({abi:As,functionName:"createWithdrawalRequest",args:[{chainId:`evm:${a.chainId}`,idempotenceKey:i,nbf:0n,exp:r,metadata:"{}",transfers:[{token:a.token.toLowerCase(),to:a.to,amount:a.amount}]}]})}})},...t]}const Ea=({isOpen:t,onClose:n,lockBatches:s,lockTokenSymbol:r,lockTokenLogoURI:a,destinationInputHook:l,sourceAssetInputHook:i,lockDurationHook:d,lockChainId:c,durationOptions:h,votingPowerEstimate:u,sourceChains:f,sourceAssets:g=[],escrowAddress:p,includeWalletAssets:y=!1,destinationTokenAddress:v,onLockSuccess:x,onLockExecute:k,sourceToDestinationConversionRate:U,estimatedOutputAmount:S,onAddFunds:C,buildSpicenetBatch:I,styles:F,dark:W=!1})=>{const{theme:E,dark:B,primaryColor:b,dk:R}=K.useSpiceBrand(F,W),$=E.typography.fontFamily,X=o.useContext(K.SpiceFlowProviderContext),A=(X?.mode||"7702")!=="7702",O=B?R.cardBg:F?.assetSelector?.backgroundColor||F?.secondaryBackground||"#e9e9e9",L=B?`1px solid ${R.cardBorder}`:"0.5px solid #A8A8A7",ne=B?"12px":"6px",_=B?R.textPrimary:"#111827",j=B?R.textSecondary:"#6b7280",oe=o.useMemo(()=>({...F,assetSelector:{...F?.assetSelector,backgroundColor:B?R.cardBg:F?.assetSelector?.backgroundColor,borderRadius:B?"12px":F?.assetSelector?.borderRadius},secondaryBackground:B?R.cardBg:F?.secondaryBackground}),[F,B]),he=o.useMemo(()=>B?{...E,colors:{...E.colors,secondary:R.cardBg,surfaceHover:R.hoverBg,border:R.cardBorder,borderHover:R.inputBorder}}:E,[B,E]),[w,z]=o.useState(null),[ie,be]=o.useState(0),se=d?.selectedDurationIdx??ie,we=d?.setSelectedDurationIdx??be,[ae,Ae]=o.useState(!1),[Re,Se]=o.useState(null),[je,We]=o.useState(null),[Ne,ve]=o.useState(!1),[ze,Qe]=o.useState(!1),[Me,ge]=o.useState(null),[$e,q]=o.useState(!1),M=o.useRef(0),[N,J]=o.useState(!1),[xe,me]=o.useState(null);ft.useWalletClient(),ft.useSwitchChain();const{chain:G,address:H}=ft.useAccount();ft.useConfig();const de=o.useRef(G);o.useEffect(()=>{de.current=G},[G]);const ue=pn(),{isReady:tt,isAuthenticated:ht,isConnected:Je,address:mt,provider:Le,actions:At}=ue,{externalWallet:yt,embeddedAddress:Pe,externalAddress:lt}=zn(),{intentStatus:_e,startStatusPolling:Ot,clearStatus:Qt}=hs({checkStepStatus:(ee,ce)=>K.relayerService.checkStepStatus(ee,ce),retryStep:async(ee,ce)=>{const[pe,qe]=ee.split("/"),Xe=parseInt(qe||"0",10);await K.relayerService.executeStep(pe,Xe,ce,{action:"execute"})},maxRetries:3}),{assets:ct,refetch:Xt}=An({address:mt,supportedChains:f,enabled:Je&&!A,refetchInterval:3e4}),Rt=o.useMemo(()=>{if(g.length===0)return ct;const ee=new Set(g.map(ce=>ce.toLowerCase()));return ct.filter(ce=>ee.has(ce.address.toLowerCase()))},[ct,g]),Ue=un(),Et=A?H||lt:Ue,xt=o.useMemo(()=>{if(!y)return[];const ee=new Set,ce=[],pe=qe=>{if(!qe)return;const Xe=qe.toLowerCase();ee.has(Xe)||(ee.add(Xe),ce.push(P.getAddress(qe)))};if(v&&pe(v),A)for(const qe of g)pe(qe);return ce},[y,A,v,g]),Mt=o.useMemo(()=>xt.map(ee=>ee.toLowerCase()).sort().join(","),[xt]),rn=o.useMemo(()=>JSON.stringify([...f||[]].sort()),[f]),[Ut,Dt]=o.useState([]),et=o.useRef(0),tn=o.useCallback(async()=>{if(!y||!Et||xt.length===0){console.log("[SpiceLockModal] wallet assets fetch skipped",{includeWalletAssets:y,walletAddressForAssets:Et,walletAssetsToFetchCount:xt.length}),et.current++,Dt([]);return}const ee=++et.current,ce=P.getAddress(Et),pe=f&&f.length>0?f:[c],qe=xt.map(Be=>{const De=Be.toLowerCase();for(const It of pe){const le=Q.getChainConfig(It)?.supportedTokens?.find(Ie=>Ie.address.toLowerCase()===De);if(le)return{address:Be,chainId:It,configToken:{decimals:le.decimals,symbol:le.symbol,name:le.name,logo:le.logo}}}return{address:Be,chainId:c}}),Xe=new Map;for(const Be of qe){const De=Xe.get(Be.chainId)||[];De.push(Be),Xe.set(Be.chainId,De)}const St=async(Be,De)=>{try{const It=await en.readContract(Be,{address:De.address,abi:Q.K,functionName:"balanceOf",args:[ce]});let le,Ie,st,Ye;if(De.configToken)le=De.configToken.decimals,Ie=De.configToken.symbol,st=De.configToken.name,Ye=De.configToken.logo;else{const[T,D,Z]=await Promise.all([en.readContract(Be,{address:De.address,abi:Q.K,functionName:"decimals",args:[]}).catch(()=>18),en.readContract(Be,{address:De.address,abi:Q.K,functionName:"symbol",args:[]}).catch(()=>"TOKEN"),en.readContract(Be,{address:De.address,abi:Q.K,functionName:"name",args:[]}).catch(()=>"TOKEN")]);le=Number(T),Ie=D,st=Z}const re=!!v&&De.address.toLowerCase()===v.toLowerCase()&&De.chainId===c;re&&a&&(Ye=a),re&&r&&!De.configToken&&(Ie==="TOKEN"&&(Ie=r),st==="TOKEN"&&(st=r));const m=parseFloat((Number(It)/Math.pow(10,le)).toFixed(6));return{address:De.address,name:st,symbol:Ie,decimals:le,balance:It,balanceFormatted:m,balanceUsd:0,logoURI:Ye,isNative:!1,chainId:De.chainId}}catch{return null}},gt=await Promise.all(Array.from(Xe.entries()).map(async([Be,De])=>{let It;try{It=Q.getClientForChain(Be)}catch{return[]}const le=[],Ie=[];for(const Ye of De){const re=le.length;le.push({address:Ye.address,abi:Q.K,functionName:"balanceOf",args:[ce]}),Ye.configToken||le.push({address:Ye.address,abi:Q.K,functionName:"decimals",args:[]},{address:Ye.address,abi:Q.K,functionName:"symbol",args:[]},{address:Ye.address,abi:Q.K,functionName:"name",args:[]}),Ie.push({start:re,item:Ye})}let st=null;try{st=await It.multicall({contracts:le})}catch{st=null}return st?Ie.map(({start:Ye,item:re})=>{const m=st[Ye],T=m?.status==="success"?m.result:0n;let D,Z,fe,Ee;if(re.configToken)D=re.configToken.decimals,Z=re.configToken.symbol,fe=re.configToken.name,Ee=re.configToken.logo;else{const ke=st[Ye+1],Ce=st[Ye+2],Ze=st[Ye+3];D=ke?.status==="success"?Number(ke.result):18,Z=Ce?.status==="success"?Ce.result:"TOKEN",fe=Ze?.status==="success"?Ze.result:Z}const Fe=!!v&&re.address.toLowerCase()===v.toLowerCase()&&re.chainId===c;Fe&&a&&(Ee=a),Fe&&r&&!re.configToken&&(Z==="TOKEN"&&(Z=r),fe==="TOKEN"&&(fe=r));const ye=parseFloat((Number(T)/Math.pow(10,D)).toFixed(6));return{address:re.address,name:fe,symbol:Z,decimals:D,balance:T,balanceFormatted:ye,balanceUsd:0,logoURI:Ee,isNative:!1,chainId:re.chainId}}):(await Promise.all(De.map(Ye=>St(It,Ye)))).filter(Ye=>Ye!==null)}));if(ee!==et.current)return;const kt=gt.flat();console.log("[SpiceLockModal] wallet assets fetched",{wallet:ce,chains:Array.from(Xe.keys()),lookups:qe.map(Be=>({address:Be.address,chainId:Be.chainId,symbol:Be.configToken?.symbol})),assets:kt.map(Be=>({address:Be.address,chainId:Be.chainId,symbol:Be.symbol,balance:Be.balance.toString(),balanceFormatted:Be.balanceFormatted}))}),Dt(kt)},[y,Et,Mt,rn,c,v,a,r]);o.useEffect(()=>{if(!y){Dt([]);return}tn();const ee=setInterval(()=>{tn()},15e3);return()=>clearInterval(ee)},[tn,y]);const jt=o.useCallback(()=>{tn()},[tn]),Ht=o.useMemo(()=>Ut.filter(ee=>ee.balance>0n),[Ut]),Vt=o.useMemo(()=>{if(A)return Ht.map(ce=>({...ce,_source:"wallet"}));if(!y)return Rt;const ee=[];for(const ce of Ht)ee.push({...ce,_source:"wallet"});for(const ce of Rt)ee.push({...ce,_source:"spice"});return ee},[A,y,Ht,Rt]),Bt=o.useRef(null),Oe=o.useRef(null);o.useEffect(()=>{Oe.current=w},[w]),o.useEffect(()=>{t||(z(null),Se(null),We(null),ve(!1),Qe(!1),ge(null),Ae(!1),J(!1),me(null),q(!1),Qt())},[t,Qt]),o.useEffect(()=>{l&&l.assetAmount!==(w?.amount||"")&&z(ee=>ee&&{...ee,amount:l.assetAmount})},[l?.assetAmount]),o.useEffect(()=>{i&&i.assetAmount!==(w?.amount||"")&&z(ee=>ee&&{...ee,amount:i.assetAmount})},[i?.assetAmount]),o.useEffect(()=>{if(!A&&_e?.overallStatus==="success"&&_e.intentId&&Bt.current!==_e.intentId&&mt&&_e.steps.find(ee=>ee.transactionHash)?.transactionHash){Bt.current=_e.intentId;const ee=Oe.current;if(!ee?.asset||!ee.amount||ee.asset._source==="wallet"||P.parseUnits(ee.amount,ee.asset.decimals)===0n)return;Xt()}},[_e,mt,c,Xt,A]);const rt=parseFloat(w?.amount||"")||0,ot=o.useMemo(()=>w?.asset?w.asset._source==="wallet"?w.asset.balanceFormatted??0:Rt.find(ee=>ee.address.toLowerCase()===w.asset.address.toLowerCase()&&ee.chainId===w.asset.chainId)?.balanceFormatted??0:0,[w?.asset,Rt]),Nt=rt>0&&(Me?parseFloat(P.formatUnits(Me.grossAmount,Me.decimals))>ot:rt>ot),it=d?.selectedDuration??h[se]??h[0],Y=o.useMemo(()=>!w?.asset||!v?!1:w.asset.address.toLowerCase()===v.toLowerCase()&&w.asset.chainId===c,[w?.asset,v,c]),te=o.useMemo(()=>rt<=0?0:Y?rt:!U||U<=0?0:rt/U,[rt,U,Y]),Te=o.useMemo(()=>te<=0?null:te.toLocaleString(void 0,{maximumFractionDigits:2}),[te]),He=u&&te>0&&it?u(te,it.months):void 0,at=o.useMemo(()=>rt<=0?"$0.00":Y&&U?(rt*U).toLocaleString(void 0,{style:"currency",currency:"USD",maximumFractionDigits:2}):!U||U<=0?"$0.00":rt.toLocaleString(void 0,{style:"currency",currency:"USD",maximumFractionDigits:2}),[rt,U,Y]),bt=o.useMemo(()=>{if(!Te)return null;const ee=parseFloat(Te.replace(/,/g,""));return Y&&U?(ee*U).toLocaleString(void 0,{maximumFractionDigits:2}):U?(ee*U).toLocaleString(void 0,{maximumFractionDigits:2}):null},[Te,U,Y]),Ct=o.useCallback(ee=>{z(ce=>({asset:ee,amount:ce?.asset?.address===ee.address&&ce?.asset?.chainId===ee.chainId&&ce.amount||""})),Se(null),We(null),Qe(!1),ge(null),i?.setSelectedAsset&&i.setSelectedAsset({symbol:ee.symbol,address:ee.address,decimals:ee.decimals,chainId:ee.chainId})},[i?.setSelectedAsset]),Wt=o.useCallback(ee=>{z(ce=>ce&&{...ce,amount:ee}),Se(null),We(null),Qe(!1),ge(null),l&&l.setAssetAmount(ee),i&&i.setAssetAmount(ee)},[l,i]),Ke=o.useCallback(ee=>{if(typeof s=="function"){if(!w?.asset||!w.amount)throw new Error("Select an asset and enter an amount");return s({asset:w.asset,amount:ee?.amount??w.amount,amountWei:ee?.amountWei??P.parseUnits(w.amount,w.asset.decimals),grossAmount:ee?.grossAmount,grossAmountWei:ee?.grossAmountWei,feeAdjusted:!!ee})}return s},[s,w]),Lt=o.useCallback(async ee=>{const ce=A&&Pe||mt;if(!Je||!ce)throw new Error("Please connect your wallet to continue");if(ee.length===0)throw new Error("No lock batches configured");if(!tt||!ht)throw new Error(`Please authenticate with ${Le||"wallet provider"} to continue`);const pe=[...new Set(ee.filter(Ie=>Ie.domain!=="spicenet").map(Ie=>Ie.chainId))],qe=[];for(const Ie of pe){const st=Q.getClientForChain(Ie),Ye=Q.getDelegateContractAddress(Ie),re=await V.getAccountNonce(ce,st),m=await At.signAuthorization({contractAddress:Ye,chainId:Ie,nonce:Number(re)});qe.push(m)}const Xe=V.hashChainBatches(ee),St=Math.floor(Date.now()/1e3)+60*10,gt=Xe.map(Ie=>Ie.hash),kt=P.keccak256(P.encodeAbiParameters([{type:"string"},{type:"uint256"},{type:"uint256"},{type:"bytes32[]"}],["ecdsa",0n,BigInt(St),gt])),Be=await At.signMessage({raw:kt}),De=typeof Be=="string"?Be:Be.signature;if(!De)throw new Error("Failed to sign intent authorization");const It={mode:"7702",signatureType:"ecdsa",signature:De,nbf:0,exp:St,chainBatches:Xe.map((Ie,st)=>{const Ye=ee[st],re=Ye.domain==="spicenet";return{hash:Ie.hash,chainId:Ie.chainId,tokenTransfers:re?[]:Ye.tokenTransfers??[],calls:Ie.calls}})},le=await K.relayerService.createAction({user:ce,chainAuthorizations:qe.map(Ie=>({r:Ie.r,s:Ie.s,yParity:Ie.yParity,address:Ie.address,chainId:Number(Ie.chainId),nonce:Number(Ie.nonce)})),intents:[It]});if(le){const Ie=K.createInitialSteps(ee,Q.getChainName),[st,Ye]=le.intentIds[0].split("/"),re=parseInt(Ye||"0",10);Ot(le.intentIds[0],Ie);for(let m=0;m<ee.length;m++)m>0&&ee[m]?.domain==="spicenet"&&await new Promise(T=>setTimeout(T,5e3)),await Ys(()=>K.relayerService.executeStep(st,re,m,{action:"execute"}),ee[m]?.domain==="spicenet"?6:3,2e3)}},[ue,Ot,A,Pe]),dt=o.useCallback(async()=>{const ee=Ke();if(ee.length===0)throw new Error("No lock batches configured");const ce=A&&Pe||mt;if(!Je||!ce)throw new Error("Please connect your wallet to continue");let pe=Io([...ee],ce);const qe=Bs(ce,pe);await K.relayerService.estimateActionFees(qe),await Lt(pe)},[mt,Je,A,s,Pe,Ke,Lt,w]),nt=o.useCallback(async()=>{if(!w?.asset||!w.amount)throw new Error("Select an asset and enter an amount");if(!mt||!Ue)throw new Error("Embedded wallet not connected");const ee=w.asset,ce=P.parseUnits(w.amount,ee.decimals),pe=p||Q.getDelegateContractAddress(c),qe=await At.getEthereumProvider();await qe.request({method:"wallet_switchEthereumChain",params:[{chainId:`0x${c.toString(16)}`}]});const Xe=Q.getChainConfig(c),St=P.createWalletClient({account:Ue,transport:P.custom(qe),chain:Xe?.viemChain});let gt;if(ee.isNative||V.isNativeToken(ee.address))gt=await St.sendTransaction({to:pe,value:ce,chain:Xe?.viemChain});else{const kt=P.encodeFunctionData({abi:Q.K,functionName:"transfer",args:[pe,ce]});gt=await St.sendTransaction({to:ee.address,data:kt,chain:Xe?.viemChain})}if((await Q.getClientForChain(c).waitForTransactionReceipt({hash:gt,timeout:12e4,pollingInterval:2e3,confirmations:1})).status!=="success")throw new Error("Transfer to escrow failed");await Xt(),jt(),await dt()},[w,mt,Ue,At,p,c,dt,Xt,jt]),vt=o.useCallback(async()=>{if(!w?.asset||!w.amount)throw new Error("Select an asset and enter an amount");if(!H||!yt)throw new Error("Please connect your external wallet to continue");const ee=Ue||Pe;if(!ee)throw new Error("Embedded wallet not available \u2014 sign in to create one before locking");if(k){const T=Ke();if(T.length===0)throw new Error("No lock batches configured");const D=w.asset,Z=P.parseUnits(w.amount,D.decimals),fe=await k({asset:D,amount:w.amount,amountWei:Z,lockDurationMonths:it?.months??0,chainBatches:T});fe&&x?.(fe);return}const ce=Ke();if(ce.length===0)throw new Error("No lock batches configured");const pe=w.asset,qe=P.parseUnits(w.amount,pe.decimals),Xe=pe.chainId,St=p||V.ESCROW_ADDRESS,gt=V.normalizeNativeTokenAddress(pe.address),kt=pe.isNative||V.isNativeToken(gt);let Be=null;for(const T of ce){const D=T.tokenTransfers?.find(Z=>Z.from==="escrow");if(D){Be={batch:T,to:D.to,token:D.token,amount:BigInt(D.amount)};break}}const De=await yt.getEthereumProvider();let It=null;try{const T=await De.request({method:"eth_chainId"});It=parseInt(T,16)}catch{It=null}if(It!==Xe)try{await De.request({method:"wallet_switchEthereumChain",params:[{chainId:`0x${Xe.toString(16)}`}]})}catch(T){if(T?.code===4902||T?.message?.includes("Unrecognized chain ID")){const D=Q.getChainConfig(Xe);D&&await De.request({method:"wallet_addEthereumChain",params:[{chainId:`0x${Xe.toString(16)}`,chainName:D.name||`Chain ${Xe}`,nativeCurrency:D.nativeCurrency||{name:"ETH",symbol:"ETH",decimals:18},rpcUrls:[D.rpcUrl],blockExplorerUrls:D.blockExplorer?[D.blockExplorer]:void 0}]})}else throw T}const le=Q.getChainConfig(Xe),Ie=P.createWalletClient({account:H,chain:le?.viemChain,transport:P.custom(De)}),st=kt?await Ie.sendTransaction({to:ee,value:qe,chain:le?.viemChain}):await Ie.sendTransaction({to:gt,data:P.encodeFunctionData({abi:Q.K,functionName:"transfer",args:[ee,qe]}),chain:le?.viemChain});if((await Q.getClientForChain(Xe).waitForTransactionReceipt({hash:st,timeout:12e4,pollingInterval:2e3,confirmations:1})).status!=="success")throw new Error("Transfer to embedded wallet failed");const Ye={chainId:Xe,calls:kt?[{to:St,value:qe,data:"0x"}]:[{to:gt,value:0n,data:P.encodeFunctionData({abi:Q.K,functionName:"transfer",args:[St,qe]})}]};let re=null;if(Be){if(!I)throw new Error("Lock batches declare an escrow-backed ERC20 payout but no `buildSpicenetBatch` callback was provided. The relayer rejects 7702 intents with escrow-backed ERC20 transfers unless the intent includes a Spicenet batch authorising the withdrawal.");const T=I({userAddress:ee,destinationChainId:Be.batch.chainId,deliveryToken:Be.token,deliveryAmount:Be.amount,deliveryRecipient:Be.to});T&&(re={...T,domain:T.domain??"spicenet"})}const m=[Ye];re&&m.push(re),m.push(...ce),await Lt(m)},[w,yt,H,Ue,Pe,p,k,Ke,it,x,Lt,I]),zt=o.useMemo(()=>!w?.asset||rt<=0?!1:A?!Y&&!k:!0,[w,rt,A,Y,k]),fn=o.useCallback(async()=>{if(!w?.asset||!w.amount||!zt)return null;if(A){const Xe=Ue||Pe;if(!Xe)throw new Error("Embedded wallet not available \u2014 sign in to create one before locking");const St=Ke();if(St.length===0)throw new Error("No lock batches configured");const gt=w.asset,kt=P.parseUnits(w.amount,gt.decimals),Be=gt.chainId,De=p||V.ESCROW_ADDRESS,It=V.normalizeNativeTokenAddress(gt.address),le=gt.isNative||V.isNativeToken(It);let Ie=null;for(const T of St){const D=T.tokenTransfers?.find(Z=>Z.from==="escrow");if(D){Ie={batch:T,to:D.to,token:D.token,amount:BigInt(D.amount)};break}}const st={chainId:Be,calls:le?[{to:De,value:kt,data:"0x"}]:[{to:It,value:0n,data:P.encodeFunctionData({abi:Q.K,functionName:"transfer",args:[De,kt]})}]};let Ye=null;if(Ie){if(!I)throw new Error("Lock batches declare an escrow-backed payout but no `buildSpicenetBatch` callback was provided.");const T=I({userAddress:Xe,destinationChainId:Ie.batch.chainId,deliveryToken:Ie.token,deliveryAmount:Ie.amount,deliveryRecipient:Ie.to});T&&(Ye={...T,domain:T.domain??"spicenet"})}const re=[st];Ye&&re.push(Ye),re.push(...St);const m=await K.relayerService.estimateActionFees(Bs(Xe,re));return So(m,{symbol:w.asset.symbol,decimals:w.asset.decimals})}const ee=mt;if(!Je||!ee)throw new Error("Please connect your wallet to continue");const ce=Ke();if(ce.length===0)throw new Error("No lock batches configured");const pe=Io([...ce],ee),qe=await K.relayerService.estimateActionFees(Bs(ee,pe));return So(qe,{symbol:w.asset.symbol,decimals:w.asset.decimals})},[w,zt,A,Ue,Pe,Ke,p,I,mt,Je,k]),$t=o.useCallback(async()=>{if(!w?.asset||!w.amount)throw new Error("Select an asset and enter an amount");if(!H||!yt)throw new Error("Please connect your external wallet to continue");const ee=Ke();if(ee.length===0)throw new Error("No lock batches configured");const ce=ee.find(Be=>Be.chainId===c)||ee[0];if(!ce)throw new Error("No lock batch for lock chain");const pe=await yt.getEthereumProvider();let qe=null;try{const Be=await pe.request({method:"eth_chainId"});qe=parseInt(Be,16)}catch{qe=null}if(qe!==c)try{await pe.request({method:"wallet_switchEthereumChain",params:[{chainId:`0x${c.toString(16)}`}]})}catch(Be){if(Be?.code===4902||Be?.message?.includes("Unrecognized chain ID")){const De=Q.getChainConfig(c);De&&await pe.request({method:"wallet_addEthereumChain",params:[{chainId:`0x${c.toString(16)}`,chainName:De.name||`Chain ${c}`,nativeCurrency:De.nativeCurrency||{name:"ETH",symbol:"ETH",decimals:18},rpcUrls:[De.rpcUrl],blockExplorerUrls:De.blockExplorer?[De.blockExplorer]:void 0}]})}else throw Be}const Xe=Q.getChainConfig(c),St=P.createWalletClient({account:H,chain:Xe?.viemChain,transport:P.custom(pe)}),gt=Q.getClientForChain(c);let kt;for(const Be of ce.calls){const De=await St.sendTransaction({to:Be.to,data:Be.data,value:Be.value,chain:Xe?.viemChain});if((await gt.waitForTransactionReceipt({hash:De,timeout:12e4,pollingInterval:2e3,confirmations:1})).status!=="success")throw new Error("Lock transaction failed");kt=De}kt&&x?.(kt)},[w,yt,H,Ke,c,x]);o.useEffect(()=>{if(!t||ae)return;if(!w?.asset||rt<=0){We(null),ve(!1),Qe(!1),ge(null);return}if(!zt){We(null),ve(!1),Qe(!0),ge(null);return}const ee=++M.current;We(null),Qe(!1),ve(!0);const ce=window.setTimeout(()=>{(async()=>{try{const pe=await fn();M.current===ee&&(We(null),Qe(!0),pe&&ge(pe))}catch(pe){M.current===ee&&(We(Zt(pe,"Unable to calculate fees for this lock.")),Qe(!1))}finally{M.current===ee&&ve(!1)}})()},250);return()=>{clearTimeout(ce),M.current===ee&&(ve(!1),Qe(!1))}},[t,ae,w,rt,zt,fn]),o.useEffect(()=>{if(_e?.overallStatus==="success"){const ee=_e.steps.find(ce=>ce.transactionHash);x?.(ee?.transactionHash)}},[_e?.overallStatus,x]);const Kt=y&&w?.asset?._source==="wallet"&&w?.asset?.chainId===c,ut=o.useCallback(async()=>{if(!w?.asset||rt<=0){Se("Select an asset and enter an amount");return}if(Nt){Se("Insufficient balance. Add more assets.");return}Ae(!0),Se(null);const ee=ce=>{console.error("[SpiceLockModal] lock failed:",ce);const pe=Zt(ce,""),qe=typeof ce?.shortMessage=="string"?ce.shortMessage:typeof ce?.message=="string"?ce.message:"";Se(pe||qe||"Transaction failed. Please try again.")};if(A){if(Y){try{await $t()}catch(ce){ee(ce)}finally{Ae(!1)}return}q(!0);try{await vt()}catch(ce){ee(ce)}finally{Ae(!1)}return}q(!0);try{Kt&&!Y?await nt():await dt()}catch(ce){ee(ce)}finally{Ae(!1)}},[w,rt,Nt,A,vt,$t,Kt,Y,nt,dt]),Ve=!!w?.asset&&rt>0&&!Nt&&!ae&&(!zt||ze&&!Ne&&!je),Ft=Re||je,an=e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",gap:"6px"},children:[e.jsx(Is,{color:j}),e.jsxs("p",{style:{fontSize:"13px",color:j,margin:0,lineHeight:"1.5"},children:["Add ",r," by converting assets from your account"]})]});if(!t)return null;const cn={backgroundColor:O,border:L,borderRadius:ne,padding:"16px",marginBottom:"16px"};return e.jsx(on,{isOpen:t,onClose:n,title:`Add ${r} to your account`,subtitle:an,styles:F,dark:B,footerLinkText:"Spicenet accounts \u2192",overlayContent:N?e.jsx("div",{}):void 0,children:e.jsxs("div",{style:{padding:"0 24px 8px 24px",position:"relative"},children:[e.jsxs("div",{style:{marginBottom:"12px"},children:[C&&e.jsx("div",{style:{display:"flex",justifyContent:"flex-end",marginBottom:"6px"},children:e.jsxs("button",{onClick:C,style:{background:"none",border:"none",cursor:"pointer",padding:0,display:"flex",alignItems:"center",gap:"4px",color:b,fontSize:"12px",fontWeight:500,fontFamily:$,textDecoration:"underline",textUnderlineOffset:"2px"},children:["Add Funds",e.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",stroke:b,strokeWidth:"1.8",children:[e.jsx("circle",{cx:"6",cy:"6",r:"5"}),e.jsx("path",{d:"M6 4v4M4 6h4",strokeLinecap:"round"})]})]})}),e.jsx(Fn,{assets:Vt,selectedAsset:w??void 0,onAssetSelect:Ct,onAmountChange:Wt,label:"Amount",showBalance:!0,showMaxButton:!0,theme:he,styles:oe}),e.jsx("div",{style:{marginTop:"6px",paddingLeft:"4px",fontSize:"13px",color:j,fontFamily:$},children:at})]}),e.jsxs("div",{style:cn,children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",paddingBottom:"16px",borderBottom:B?`1px solid ${R.cardBorder}`:"1px solid #e5e7eb"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"10px"},children:[a?e.jsx("img",{src:a,alt:r,style:{width:"32px",height:"32px",borderRadius:"50%",objectFit:"cover"}}):e.jsx("div",{style:{width:"32px",height:"32px",borderRadius:"50%",backgroundColor:B?R.inputBg:"#d1d5db",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"12px",fontWeight:700,color:_},children:r.slice(0,2)}),e.jsx("span",{style:{fontSize:"16px",fontWeight:600,color:_,fontFamily:$},children:r})]}),e.jsxs("div",{style:{textAlign:"right"},children:[e.jsx("div",{style:{fontSize:"22px",fontWeight:700,color:_,fontFamily:$,lineHeight:1.1},children:Te??"0.00"}),e.jsxs("div",{style:{fontSize:"12px",color:j,fontFamily:$,marginTop:"2px"},children:["~$",bt??"0.00"]})]})]}),e.jsxs("div",{style:{paddingTop:"16px",paddingBottom:"16px",borderBottom:B?`1px solid ${R.cardBorder}`:"1px solid #e5e7eb"},children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"16px"},children:[e.jsx("span",{style:{fontSize:"15px",fontWeight:500,color:j,fontFamily:$},children:"Lock Duration"}),e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",children:e.jsx("path",{d:"M4 6L8 10L12 6",stroke:j,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]}),e.jsx(va,{options:h,selectedIndex:se,onSelect:we,primaryColor:b,dark:B,textPrimary:_,textSecondary:j})]}),e.jsxs("div",{style:{paddingTop:"12px",display:"flex",flexDirection:"column",gap:"8px"},children:[e.jsx(Sa,{durationMonths:it?.months,fontFamily:$,dark:B,textPrimary:_,textSecondary:j}),u&&e.jsx(Ia,{votes:He,fontFamily:$,dark:B,textPrimary:_,textSecondary:j})]})]}),zt&&e.jsx(Es,{fontFamily:$,textPrimary:_,textSecondary:j,cardBg:O,cardBorder:L,resolvedDark:B,darkCardBorder:R.cardBorder,primaryColor:b,feePreview:Me,isLoading:Ne,errorText:je}),Ft&&e.jsx("div",{style:{marginBottom:"12px",padding:"10px 14px",backgroundColor:B?R.errorBg:"#fef2f2",border:`1px solid ${B?R.errorBorder:"#fecaca"}`,borderRadius:"6px"},children:e.jsx("p",{style:{color:B?R.errorText:"#dc2626",fontSize:"13px",margin:0,fontFamily:$},children:Ft})}),e.jsx(Ge.Button,{variant:"outline",fullWidth:!0,onClick:ut,disabled:!Ve,loading:ae,dark:B,styles:{...F,button:{...F?.button,backgroundColor:b}},children:ae?Kt&&!Y?"DEPOSITING...":Y?"LOCKING...":"CONVERTING...":Ne&&zt?"CALCULATING FEES...":Kt&&!Y?`DEPOSIT ${r}`:Y?`LOCK ${r}`:`CONVERT TO ${r}`}),e.jsx(ja,{isOpen:N,data:xe,isLocking:ae,lockError:Ft,onContinue:ut,onClose:()=>J(!1),primaryColor:b,fontFamily:$,dark:B}),_e&&$e&&e.jsx("div",{style:{position:"absolute",top:0,left:0,right:0,bottom:0,zIndex:10,backgroundColor:B?R.shell:"white",borderRadius:ne,padding:"16px 0"},children:e.jsx(Ln,{type:"deposit",isOpen:!!_e&&_e.overallStatus!=="processing",isProcessing:ae||_e?.overallStatus==="processing",closeOnComplete:!1,onRetryTx:()=>{Qt(),q(!1),ut()},onNewTx:()=>{Qt(),q(!1),z(null),Bt.current=null,Xt(),jt()},onClose:()=>{Qt(),q(!1)},onComplete:()=>{Qt(),q(!1),z(null),Bt.current=null,Xt(),jt()},results:_e?.overallStatus==="success"||_e?.overallStatus==="failed"?_e.steps.map(ee=>({asset:{symbol:w?.asset?.symbol||r,address:w?.asset?.address||""},txHash:ee.transactionHash||"",success:ee.status==="success",amount:w?.amount})):void 0,chainName:Q.getChainName(c),explorerUrl:Q.getExplorerUrl(c,"").replace(/\/tx\/.*$/,"")||void 0,theme:E,styles:F,dark:B})})]})})},jo=({variant:t,destinationSymbol:n,destinationLogoURI:s,destinationDecimals:r,primaryColor:a,fontFamily:l,textPrimary:i,textSecondary:d,cardBg:c,cardBorder:h,dk:u,dark:f,isQuoting:g,quoteError:p,estimatedOutput:y,paymentAmount:v,needsSwap:x,exactOutputSwap:k,adjustable:U=!1,maxAmount:S,onAmountChange:C})=>t==="supply"?e.jsxs("div",{style:{backgroundColor:c,border:`1px solid ${h}`,borderRadius:f?"8px":"7px",padding:"14px 16px 12px 16px",marginBottom:"16px",minHeight:"112px",display:"flex",flexDirection:"column",justifyContent:"space-between"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",gap:"12px"},children:[e.jsxs("div",{style:{minWidth:0},children:[e.jsx("span",{style:{fontFamily:l,fontSize:"17px",fontWeight:500,color:f?"#a7abb2":"#7D7C7B",lineHeight:"24px"},children:"Used in TX"}),e.jsx("div",{style:{fontSize:"12px",fontWeight:500,color:d,fontFamily:l,marginTop:"10px"},children:"Net amount after swap and fees"})]}),e.jsxs("div",{style:{textAlign:"right",minWidth:0,display:"inline-flex",alignItems:"center",gap:"8px",border:`1px solid ${h}`,borderRadius:"8px",padding:"8px 10px",minHeight:"42px"},children:[e.jsx(Eo,{symbol:n,logoURI:s,primaryColor:a,size:24}),e.jsx("span",{style:{fontSize:"16px",fontWeight:500,color:f?"#f3f4f6":"#3C3E42",lineHeight:"1.3",fontFamily:l,letterSpacing:"-0.02em"},children:n})]})]}),e.jsx("div",{style:{textAlign:"right",minWidth:0},children:g?e.jsx("span",{style:{fontSize:"18px",color:d,fontFamily:l},children:"Quoting..."}):p?e.jsx("span",{style:{fontSize:"13px",color:f?"#f87171":"#dc2626",fontFamily:l},children:"Quote failed"}):y?e.jsx("span",{style:{fontSize:"32px",fontWeight:700,color:i,fontFamily:l,lineHeight:"0.95",letterSpacing:"-1.4px"},children:y}):e.jsx("span",{style:{fontSize:"20px",color:d,fontFamily:l},children:"\u2014"})})]}):e.jsx(Aa,{destinationSymbol:n,destinationLogoURI:s,destinationDecimals:r,primaryColor:a,fontFamily:l,textPrimary:i,textSecondary:d,cardBg:c,cardBorder:h,dk:u,dark:f,paymentAmount:v||"0",needsSwap:x,exactOutputSwap:k,isQuoting:g,adjustable:U,maxAmount:S,onAmountChange:C}),Eo=({symbol:t,logoURI:n,primaryColor:s,size:r})=>n?e.jsx("img",{src:n,alt:t,style:{width:r,height:r,borderRadius:"50%",objectFit:"cover"}}):e.jsx("div",{style:{width:r,height:r,borderRadius:"50%",backgroundColor:`${s}22`,display:"flex",alignItems:"center",justifyContent:"center",fontSize:r<30?"11px":"12px",fontWeight:700,color:s},children:t.slice(0,2)}),Aa=({destinationSymbol:t,destinationLogoURI:n,destinationDecimals:s,primaryColor:r,fontFamily:a,textPrimary:l,textSecondary:i,cardBg:d,cardBorder:c,dk:h,dark:u,paymentAmount:f,needsSwap:g,exactOutputSwap:p,isQuoting:y,adjustable:v,maxAmount:x,onAmountChange:k})=>{const U='"IBM Plex Mono", monospace',S=parseFloat(f||"0"),C=x?parseFloat(x):0,[I,F]=o.useState(f||""),W=o.useRef(null),[E,B]=o.useState(null),[b,R]=o.useState(null);o.useEffect(()=>{v||F(f||"")},[f,v]);const $=O=>{let L=O;L.startsWith(".")&&(L="0"+L);const ne=qs(L);let _=ne;x&&parseFloat(ne)>parseFloat(x)&&(_=x),F(_),W.current&&clearTimeout(W.current),W.current=setTimeout(()=>k?.(_),300)},X=O=>{if(!C)return;if(O===100){F(x||C.toString()),W.current&&clearTimeout(W.current),k?.(x||C.toString());return}const L=10**s,ne=Math.floor(C*O/100*L)/L,_=In(ne,s);F(_),W.current&&clearTimeout(W.current),k?.(_)},A=C>0?parseFloat(I||"0")/C*100:0;return o.useEffect(()=>()=>{W.current&&clearTimeout(W.current)},[]),e.jsxs("div",{style:{backgroundColor:d,border:`1px solid ${c}`,borderRadius:u?"12px":"6px",padding:"16px",marginBottom:"16px"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"10px"},children:[e.jsx(Eo,{symbol:t,logoURI:n,primaryColor:r,size:32}),e.jsxs("div",{children:[e.jsx("span",{style:{fontSize:"14px",fontWeight:600,color:l,fontFamily:a},children:"Payment"}),e.jsx("div",{style:{fontSize:"12px",color:i,fontFamily:a,marginTop:"2px"},children:t})]})]}),e.jsxs("div",{style:{textAlign:"right"},children:[v?e.jsx("input",{type:"text",value:I,onChange:O=>$(O.target.value),placeholder:"0.0",style:{fontSize:"20px",fontWeight:700,color:l,fontFamily:U,lineHeight:1.1,backgroundColor:"transparent",border:"none",outline:"none",padding:0,width:"120px",textAlign:"right"}}):e.jsx("div",{style:{fontSize:"20px",fontWeight:700,color:l,fontFamily:U,lineHeight:1.1},children:S>0?f:"0.00"}),e.jsx("div",{style:{fontSize:"12px",color:i,fontFamily:U,marginTop:"2px"},children:t}),v&&C>0&&e.jsx("div",{style:{display:"flex",justifyContent:"flex-end",alignItems:"center",gap:"10px",marginTop:"6px"},children:[0,25,50,75,100].map((O,L)=>{const ne=Math.abs(A-O)<1,_=L===4,j=O/100,oe=E===O,he=b===O;return e.jsx("button",{onClick:()=>X(O),onMouseEnter:()=>B(O),onMouseLeave:()=>{B(null),R(null)},onMouseDown:()=>R(O),onMouseUp:()=>R(null),title:`${O}%`,style:{width:"14px",height:"14px",padding:0,border:"none",backgroundColor:"transparent",cursor:"pointer",opacity:ne?1:oe?.8:.5,transform:he?"scale(0.85)":oe?"scale(1.15)":"scale(1)",transition:"all 0.15s ease"},children:e.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 14 14",children:[e.jsx("circle",{cx:"7",cy:"7",r:"6.84375",fill:_?r:"none",stroke:_?r:u?"#4a5568":"#3C3E42",strokeWidth:"0.3125"}),!_&&j>0&&e.jsx("path",{d:`M 7 7 L 7 0.15625 A 6.84375 6.84375 0 ${j>.5?1:0} 1 ${7+6.84375*Math.sin(j*2*Math.PI)} ${7-6.84375*Math.cos(j*2*Math.PI)} Z`,fill:u?h?.textSecondary||"#9ca3af":"#3C3E42"})]})},O)})})]})]}),g&&p&&!y&&e.jsx("div",{style:{marginTop:"12px",paddingTop:"12px",borderTop:u?`1px solid ${h?.cardBorder||c}`:"1px solid #e5e7eb",display:"flex",justifyContent:"flex-end"},children:e.jsxs("span",{style:{fontSize:"11px",color:i,fontFamily:a,opacity:.7},children:["via ",p.venue]})})]})};function Ao(t,n,s){const r=t.address.toLowerCase()===n,a=t.chainId===s,l=t._source==="wallet";return l&&r&&a?0:l&&a?1:!l&&r?2:!l&&a?3:4}function Ba(t){const{address:n,destinationToken:s,supportedSourceAssets:r,sourceChains:a,enabled:l}=t,i=(o.useContext(K.SpiceFlowProviderContext)?.mode||"7702")!=="7702",d=un(),{externalAddress:c,embeddedAddress:h}=zn(),{assets:u,refetch:f}=An({address:n,supportedChains:a,enabled:l&&!i,refetchInterval:3e4}),g=o.useMemo(()=>{if(i)return[];if(!r||r.length===0)return u;const F=r.map(W=>W.toLowerCase());return u.filter(W=>F.includes(W.address.toLowerCase()))},[u,r,i]),p=i?c:d,y=o.useMemo(()=>{const F=new Set,W=[],E=B=>{if(!B)return;const b=B.toLowerCase();F.has(b)||(F.add(b),W.push(P.getAddress(B)))};if(E(s.address),i&&r)for(const B of r)E(B);return W},[i,s.address,r]),v=o.useMemo(()=>y.map(F=>F.toLowerCase()).sort().join(","),[y]),x=o.useMemo(()=>JSON.stringify([...a||[]].sort()),[a]),[k,U]=o.useState([]),S=o.useRef(0),C=o.useCallback(async()=>{if(!l||!p||y.length===0){S.current++,U([]);return}const F=++S.current,W=P.getAddress(p),E=i?a&&a.length>0?a:[s.chainId]:[s.chainId],B=[];for(const X of y){const A=X.toLowerCase();if(A===s.address.toLowerCase()){const L=Q.getChainConfig(s.chainId)?.supportedTokens?.find(ne=>ne.address.toLowerCase()===A);B.push({address:X,chainId:s.chainId,configToken:L?{decimals:L.decimals,symbol:L.symbol,name:L.name,logo:L.logo}:void 0});continue}let O=!1;for(const L of E){const ne=Q.getChainConfig(L)?.supportedTokens?.find(_=>_.address.toLowerCase()===A);if(ne){B.push({address:X,chainId:L,configToken:{decimals:ne.decimals,symbol:ne.symbol,name:ne.name,logo:ne.logo}}),O=!0;break}}O||B.push({address:X,chainId:s.chainId})}const b=new Map;for(const X of B){const A=b.get(X.chainId)||[];A.push(X),b.set(X.chainId,A)}const R=async(X,A)=>{try{const O=await en.readContract(X,{address:A.address,abi:P.erc20Abi,functionName:"balanceOf",args:[W]});let L,ne,_,j;if(A.configToken)L=A.configToken.decimals,ne=A.configToken.symbol,_=A.configToken.name,j=A.configToken.logo;else{const[w,z,ie]=await Promise.all([en.readContract(X,{address:A.address,abi:P.erc20Abi,functionName:"decimals"}).catch(()=>18),en.readContract(X,{address:A.address,abi:P.erc20Abi,functionName:"symbol"}).catch(()=>"TOKEN"),en.readContract(X,{address:A.address,abi:P.erc20Abi,functionName:"name"}).catch(()=>"TOKEN")]);L=Number(w),ne=z,_=ie}const oe=A.address.toLowerCase()===s.address.toLowerCase()&&A.chainId===s.chainId;oe&&s.logoURI&&(j=s.logoURI),oe&&!A.configToken&&ne==="TOKEN"&&(ne=s.symbol,_=s.symbol);const he=parseFloat((Number(O)/Math.pow(10,L)).toFixed(6));return{address:A.address,name:_,symbol:ne,decimals:L,balance:O,balanceFormatted:he,balanceUsd:0,logoURI:j,isNative:!1,chainId:A.chainId}}catch{return null}},$=await Promise.all(Array.from(b.entries()).map(async([X,A])=>{let O;try{O=Q.getClientForChain(X)}catch{return[]}const L=[],ne=[];for(const j of A){const oe=L.length;L.push({address:j.address,abi:P.erc20Abi,functionName:"balanceOf",args:[W]}),j.configToken||L.push({address:j.address,abi:P.erc20Abi,functionName:"decimals"},{address:j.address,abi:P.erc20Abi,functionName:"symbol"},{address:j.address,abi:P.erc20Abi,functionName:"name"}),ne.push({start:oe,item:j})}let _=null;try{_=await O.multicall({contracts:L})}catch{_=null}return _?ne.map(({start:j,item:oe})=>{const he=_[j],w=he?.status==="success"?he.result:0n;let z,ie,be,se;if(oe.configToken)z=oe.configToken.decimals,ie=oe.configToken.symbol,be=oe.configToken.name,se=oe.configToken.logo;else{const Ae=_[j+1],Re=_[j+2],Se=_[j+3];z=Ae?.status==="success"?Number(Ae.result):18,ie=Re?.status==="success"?Re.result:"TOKEN",be=Se?.status==="success"?Se.result:ie}const we=oe.address.toLowerCase()===s.address.toLowerCase()&&oe.chainId===s.chainId;we&&s.logoURI&&(se=s.logoURI),we&&!oe.configToken&&ie==="TOKEN"&&(ie=s.symbol,be=s.symbol);const ae=parseFloat((Number(w)/Math.pow(10,z)).toFixed(6));return{address:oe.address,name:be,symbol:ie,decimals:z,balance:w,balanceFormatted:ae,balanceUsd:0,logoURI:se,isNative:!1,chainId:oe.chainId}}):(await Promise.all(A.map(j=>R(O,j)))).filter(j=>j!==null)}));F===S.current&&U($.flat())},[l,p,v,x,i,s.address,s.chainId,s.symbol,s.logoURI]);o.useEffect(()=>{if(!l){U([]);return}C();const F=setInterval(()=>{C()},15e3);return()=>clearInterval(F)},[C,l]);const I=o.useCallback(()=>{C()},[C]);return{displayAssets:o.useMemo(()=>{const F=[],W=k.filter(B=>B.balance>0n);for(const B of W)F.push({...B,_source:"wallet"});for(const B of g)F.push({...B,_source:"spice"});const E=s.address.toLowerCase();return F.sort((B,b)=>Ao(B,E,s.chainId)-Ao(b,E,s.chainId)),F},[k,g,s.address,s.chainId]),filteredSpiceAssets:g,walletAssets:k,embeddedWalletAddress:d||h,externalAddress:c,isNon7702:i,refreshSpiceAssets:f,refreshWalletAssets:I}}async function Bo(t){const{tokenIn:n,tokenOut:s,amountIn:r,fee:a,chainId:l,config:i}=t;if(r<=0n)throw new Error("amountIn must be greater than 0");const d=(await Q.getClientForChain(l).simulateContract({address:i.quoterV2,abi:V.uniV3QuoterV2Abi,functionName:"quoteExactInputSingle",args:[{tokenIn:n,tokenOut:s,amountIn:r,fee:a,sqrtPriceLimitX96:0n}]})).result;if(d[0]<=0n)throw new Error("No liquidity found for this pair. The pool returned 0 output.");return{amountOut:d[0],sqrtPriceX96After:d[1],gasEstimate:d[3]}}async function Fo(t){const n=t.feeTiers??[100,500,3e3,1e4],s=await Promise.allSettled(n.map(a=>Bo({...t,fee:a})));let r=null;for(let a=0;a<s.length;a++){const l=s[a];l.status==="fulfilled"&&(!r||l.value.amountOut>r.amountOut)&&(r={...l.value,fee:n[a]})}if(!r)throw new Error("No liquidity found for this pair on any fee tier.");return r}const Fa=[{inputs:[{components:[{name:"tokenIn",type:"address"},{name:"tokenOut",type:"address"},{name:"amount",type:"uint256"},{name:"fee",type:"uint24"},{name:"sqrtPriceLimitX96",type:"uint160"}],name:"params",type:"tuple"}],name:"quoteExactOutputSingle",outputs:[{name:"amountIn",type:"uint256"},{name:"sqrtPriceX96After",type:"uint160"},{name:"initializedTicksCrossed",type:"uint32"},{name:"gasEstimate",type:"uint256"}],stateMutability:"nonpayable",type:"function"}];async function Ta(t){const{tokenIn:n,tokenOut:s,amountOut:r,fee:a,chainId:l,config:i}=t;if(r<=0n)throw new Error("amountOut must be greater than 0");const d=(await Q.getClientForChain(l).simulateContract({address:i.quoterV2,abi:Fa,functionName:"quoteExactOutputSingle",args:[{tokenIn:n,tokenOut:s,amount:r,fee:a,sqrtPriceLimitX96:0n}]})).result;if(d[0]<=0n)throw new Error("No liquidity found for this pair. The pool returned 0 input.");return{amountIn:d[0],sqrtPriceX96After:d[1],gasEstimate:d[3]}}async function Ra(t){const n=t.feeTiers??[100,500,3e3,1e4],s=await Promise.allSettled(n.map(a=>Ta({...t,fee:a})));let r=null;for(let a=0;a<s.length;a++){const l=s[a];l.status==="fulfilled"&&(!r||l.value.amountIn<r.amountIn)&&(r={...l.value,fee:n[a]})}if(!r)throw new Error("No liquidity found for this pair on any fee tier.");return r}function To(t){return t.type==="swap"}const Fs=.02,Ma=[1,8453,42161,10,137,43114,56],Da="https://api.1inch.dev/swap/v6.0";function Ro(t,n){return V.applySlippage(t,n)}function Mo(t){const n=t?.baseUrl??Da;return{name:"1inch",chainIds:t?.chainIds??Ma,resolve:async(s,r,a)=>{const l=s.maxSlippage??Fs,i=l*100,d=V.isNativeToken(s.tokenIn)?V.NATIVE_TOKEN_ADDRESS:s.tokenIn,c=V.isNativeToken(s.tokenOut)?V.NATIVE_TOKEN_ADDRESS:s.tokenOut,h=V.isNativeToken(s.tokenIn);try{const u=new URL(`${n}/${r}/swap`);u.searchParams.set("src",d),u.searchParams.set("dst",c),u.searchParams.set("amount",s.amountIn.toString()),u.searchParams.set("from",a),u.searchParams.set("slippage",i.toString()),u.searchParams.set("disableEstimate","true"),u.searchParams.set("allowPartialFill","false");const f={Accept:"application/json"};t?.apiKey&&(f.Authorization=`Bearer ${t.apiKey}`);const g=await fetch(u.toString(),{headers:f});if(!g.ok)throw new K.SpiceflowError("VENUE_API_ERROR",`[1inchVenue] API returned ${g.status} for ${s.tokenIn} \u2192 ${s.tokenOut} on chain ${r}`,{venue:"1inch",chainId:r,tokenIn:s.tokenIn,tokenOut:s.tokenOut,amountIn:s.amountIn.toString(),cause:`HTTP ${g.status}`});const p=await g.json();if(!p.dstAmount||!p.tx)return console.warn(`[1inchVenue] No route data for ${s.tokenIn} \u2192 ${s.tokenOut} on chain ${r}`),null;const y=BigInt(p.dstAmount);if(y<=0n)return console.warn(`[1inchVenue] Zero output for ${s.tokenIn} \u2192 ${s.tokenOut} on chain ${r}`),null;const v=Ro(y,l),x=[];return p.tx.to&&!h&&x.push({to:s.tokenIn,value:0n,data:P.encodeFunctionData({abi:P.erc20Abi,functionName:"approve",args:[p.tx.to,s.amountIn]})}),x.push({to:p.tx.to,value:BigInt(p.tx.value||"0"),data:p.tx.data}),{venue:"1inch",amountOut:y,amountOutMinimum:v,calls:x}}catch(u){if(u instanceof K.SpiceflowError)throw u;const f=u instanceof Error?u.message:String(u);throw new K.SpiceflowError("VENUE_API_ERROR",`[1inchVenue] Exception for ${s.tokenIn} \u2192 ${s.tokenOut} on chain ${r}: ${f}`,{venue:"1inch",chainId:r,tokenIn:s.tokenIn,tokenOut:s.tokenOut,amountIn:s.amountIn.toString(),cause:f})}}}}const Do=[4114,5115],Ts={swapRouter:"0x565eD3D57fe40f78A46f348C220121AE093c3cF8",quoterV2:"0x428f20dd8926Eabe19653815Ed0BE7D6c36f8425"},No={swapRouter:"0x2626664c2603336E57B271c5C0b26F421741e481",quoterV2:"0x3d4e44Eb1374240CE5F1B871ab261CD16335B76a",chainIds:[8453]};function Wo(t){return{name:"satsuma",chainIds:t.chainIds??Do,resolve:async(n,s,r)=>{const a=n.maxSlippage??Fs,l=V.isNativeToken(n.tokenIn);let i;try{i=await Fo({tokenIn:n.tokenIn,tokenOut:n.tokenOut,amountIn:n.amountIn,chainId:s,config:{swapRouter:t.swapRouter,quoterV2:t.quoterV2},feeTiers:t.feeTiers})}catch{return console.warn(`[SatsumaVenue] No viable fee tier for ${n.tokenIn} \u2192 ${n.tokenOut} on chain ${s}.`),null}const d=Ro(i.amountOut,a),c=[];return l||c.push({to:n.tokenIn,value:0n,data:P.encodeFunctionData({abi:P.erc20Abi,functionName:"approve",args:[t.swapRouter,n.amountIn]})}),c.push({to:t.swapRouter,value:l?n.amountIn:0n,data:P.encodeFunctionData({abi:V.uniV3SwapRouterAbi,functionName:"exactInputSingle",args:[{tokenIn:n.tokenIn,tokenOut:n.tokenOut,fee:i.fee,recipient:r,amountIn:n.amountIn,amountOutMinimum:d,sqrtPriceLimitX96:0n}]})}),{venue:"satsuma",amountOut:i.amountOut,amountOutMinimum:d,calls:c}}}}function Uo(t){return{name:"satsuma",chainIds:t.chainIds??Do,resolve:async(n,s,r)=>{const a=n.maxSlippage??Fs,l=V.isNativeToken(n.tokenIn);let i;try{i=await Ra({tokenIn:n.tokenIn,tokenOut:n.tokenOut,amountOut:n.amountOut,chainId:s,config:{swapRouter:t.swapRouter,quoterV2:t.quoterV2},feeTiers:t.feeTiers})}catch{return null}const d=BigInt(Math.round(a*1e4)),c=i.amountIn+i.amountIn*d/10000n,h=[];return h.push({to:t.swapRouter,value:l?c:0n,data:P.encodeFunctionData({abi:Na,functionName:"exactOutputSingle",args:[{tokenIn:n.tokenIn,tokenOut:n.tokenOut,fee:i.fee,recipient:r,amountOut:n.amountOut,amountInMaximum:c,sqrtPriceLimitX96:0n}]})}),{venue:"satsuma",amountIn:i.amountIn,amountInMax:c,amountOut:n.amountOut,calls:h}}}}const Na=[{inputs:[{components:[{name:"tokenIn",type:"address"},{name:"tokenOut",type:"address"},{name:"fee",type:"uint24"},{name:"recipient",type:"address"},{name:"amountOut",type:"uint256"},{name:"amountInMaximum",type:"uint256"},{name:"sqrtPriceLimitX96",type:"uint160"}],name:"params",type:"tuple"}],name:"exactOutputSingle",outputs:[{name:"amountIn",type:"uint256"}],stateMutability:"payable",type:"function"}];function Lo(t){const n=[];t?.customVenues&&n.push(...t.customVenues),t?.satsuma&&n.push(Wo(t.satsuma)),n.push(Mo(t?.oneInch));function s(a){return n.find(l=>l.chainIds.includes(a))}async function r(a,l,i){const d=[],c=[];for(const h of a){if(!To(h)){d.push(h);continue}const u=s(l);if(!u)throw new K.SpiceflowError("NO_VENUE_FOR_CHAIN",`No liquidity venue configured for chain ${l}. Cannot resolve swap ${h.tokenIn} \u2192 ${h.tokenOut}.`,{chainId:l,tokenIn:h.tokenIn,tokenOut:h.tokenOut,amountIn:h.amountIn.toString()});const f=await u.resolve(h,l,i);if(!f)throw new K.SpiceflowError("NO_LIQUIDITY",`${u.name} returned no quote for ${h.tokenIn} \u2192 ${h.tokenOut} on chain ${l}.`,{venue:u.name,chainId:l,tokenIn:h.tokenIn,tokenOut:h.tokenOut,amountIn:h.amountIn.toString()});d.push(...f.calls),c.push(f)}return{calls:d,resolvedSwaps:c}}return{resolveSwapIntents:r,getVenueForChain:s,venues:n}}function Wa(t){const n=t?.customVenues??[];async function s(r,a,l){const i=n.filter(c=>c.chainIds.includes(a));if(i.length===0)throw new K.SpiceflowError("NO_SWAP_ROUTE",`No exact-output venue supports chain ${a}`,{chainId:a,tokenIn:r.tokenIn,tokenOut:r.tokenOut});const d=(await Promise.allSettled(i.map(c=>c.resolve(r,a,l)))).filter(c=>c.status==="fulfilled").map(c=>c.value).filter(c=>c!==null);if(d.length===0)throw new K.SpiceflowError("NO_SWAP_ROUTE",`All aggregators failed for ${r.tokenIn} \u2192 ${r.tokenOut} on chain ${a}`,{chainId:a,tokenIn:r.tokenIn,tokenOut:r.tokenOut,amountOut:r.amountOut.toString()});return d.sort((c,h)=>c.amountIn<h.amountIn?-1:c.amountIn>h.amountIn?1:0),d[0]}return{getQuote:s,venues:n}}const zo=Lo({satsuma:Ts});async function Ua(t){const n=zo.getVenueForChain(t.chainId);if(!n)throw new Error(`No swap venue configured for chain ${t.chainId}.`);const s=await n.resolve({type:"swap",tokenIn:t.tokenIn,tokenOut:t.tokenOut,amountIn:t.amountIn},t.chainId,t.recipient);if(!s)throw new Error("No liquidity for this pair.");return s}function La(t){const{direction:n,selectedAsset:s,destinationToken:r,chainId:a,recipient:l,paymentAmount:i}=t,[d,c]=o.useState(!1),[h,u]=o.useState(null),[f,g]=o.useState(null),[p,y]=o.useState(null),[v,x]=o.useState(null),[k,U]=o.useState(null),[S,C]=o.useState(null),[I,F]=o.useState(null),[W,E]=o.useState(null),B=o.useRef(null),b=o.useRef(0),R=o.useRef(new Map),$=o.useMemo(()=>zo,[]),X=o.useMemo(()=>Wa({customVenues:[Uo(Ts),Uo(No)]}),[]),A=o.useMemo(()=>{if(!s?.asset)return null;const z=bn(s.asset,a);if(z)return z;const ie=wn(s.asset.address,a,s.asset.chainId);return ie?ie.address:null},[s?.asset,a]),O=o.useMemo(()=>s?.asset?Jn(s.asset,a):[],[s?.asset,a]);o.useEffect(()=>{let z=!1;if(!s?.asset||O.length<=1){E(null);return}return(async()=>{const ie=n==="input"?s.amount:i||"0";let be=0n;try{be=n==="input"?P.parseUnits(ie,s.asset.decimals):0n}catch{be=0n}try{const se=await Ks(s.asset,a,{requiredAmount:be});z||E(se)}catch{z||E(null)}})(),()=>{z=!0}},[s?.asset,s?.amount,a,O,n,i]);const L=o.useMemo(()=>W??A,[W,A]),ne=o.useMemo(()=>!s?.asset||!L?[]:[L,...O.filter(z=>z.toLowerCase()!==L.toLowerCase())],[s?.asset,L,O]),_=o.useMemo(()=>!s?.asset||!fs(s.asset.address,s.asset.chainId,r.address,r.chainId)||!L?!1:L.toLowerCase()===r.address.toLowerCase(),[s,r.address,r.chainId,L]),j=L?L.toLowerCase()===r.address.toLowerCase():!1,oe=n==="output"&&parseFloat(i||"0")===0,he=!!s?.asset&&!_&&!j&&!oe,w=he?I??L:L;return o.useEffect(()=>{B.current&&clearTimeout(B.current);const z=n==="input"?s?.amount:i,ie=parseFloat(z||"0");if(!he||!Number.isFinite(ie)||ie<=0||!s?.asset||!l||ne.length===0){b.current++,g(null),y(null),x(null),U(null),C(null),F(null),u(null),c(!1);return}const be=s.asset.decimals;let se;try{se=n==="input"?P.parseUnits(s.amount,be):P.parseUnits(i||"0",r.decimals)}catch{b.current++,u("Invalid amount"),c(!1);return}const we=++b.current,ae=()=>we!==b.current;c(!0);const Ae=n==="output"?150:400;return B.current=setTimeout(async()=>{try{if(n==="input"){const Re=$.getVenueForChain(a);if(!Re)throw new Error("No swap venue for this chain");let Se=null,je=null;for(const Ne of ne){const ve=`${n}:${a}:${Ne.toLowerCase()}:${r.address.toLowerCase()}:${se.toString()}`,ze=R.current.get(ve);if(ze&&ze.expiresAt>Date.now()&&ze.resolvedSwap){Se=ze.resolvedSwap,je=Ne;break}const Qe=await Re.resolve({type:"swap",tokenIn:Ne,tokenOut:r.address,amountIn:se},a,l);if(ae())return;if(Qe){R.current.set(ve,{expiresAt:Date.now()+3e4,direction:n,resolvedSwap:Qe}),Se=Qe,je=Ne;break}}if(!Se||!je)throw new Error("No liquidity for this pair");F(je),C(Se.amountOut),x(Se),U(null);const We=parseFloat(P.formatUnits(Se.amountOut,r.decimals));g(We<.01?We.toPrecision(4):We.toLocaleString(void 0,{maximumFractionDigits:6})),y(null),u(null)}else{let Re=null,Se=null;for(const je of ne){const We=`${n}:${a}:${je.toLowerCase()}:${r.address.toLowerCase()}:${se.toString()}`,Ne=R.current.get(We);if(Ne&&Ne.expiresAt>Date.now()&&Ne.exactOutputSwap){Re=Ne.exactOutputSwap,Se=je;break}try{const ve=await X.getQuote({tokenIn:je,tokenOut:r.address,amountOut:se},a,l);if(ae())return;R.current.set(We,{expiresAt:Date.now()+3e4,direction:n,exactOutputSwap:ve}),Re=ve,Se=je;break}catch{if(ae())return}}if(!Re||!Se)throw new Error("No liquidity for this pair");F(Se),U(Re),x(null),C(null),y(parseFloat(P.formatUnits(Re.amountIn,be)).toFixed(6)),g(null),u(null)}}catch(Re){if(ae())return;const Se=Re instanceof Error?Re.message:"Failed to get quote";u(Se),g(null),y(null),x(null),U(null),C(null),F(null)}finally{ae()||c(!1)}},Ae),()=>{B.current&&clearTimeout(B.current)}},[n,he,s?.amount,s?.asset?.address,s?.asset?.decimals,i,ne,a,r.address,r.decimals,l,$,X]),{isQuoting:d,quoteError:h,estimatedOutput:f,estimatedInput:p,resolvedSwap:v,exactOutputSwap:k,quoteAmountOut:S,resolvedTokenIn:w,isDirect:j,needsSwap:he,selectedIsEquivalent:_}}const Po={idle:"","signing-delegation":"Signing delegation...","signing-intent":"Signing intent...",submitting:"Submitting transaction...",executing:"Executing on-chain...",success:"Deposit confirmed",error:"Transaction failed"},Oo=["signing-delegation","signing-intent","submitting","executing"];function za(t){const n=[];for(const s of t.intents)for(const r of s.batches)n.push(BigInt(r.quotedAmount));if(n.length===0)return null;if(n.length>1)throw new Error("Fee-adjusted exact actions with multiple fee-bearing batches are not supported yet.");return n[0]}function Ho(t,n,s){if(n===s)return t;if(n<s)return t*10n**BigInt(s-n);const r=10n**BigInt(n-s);return(t+r-1n)/r}function Rs(t,n){const s=t.intents.flatMap(a=>a.batches).filter(a=>{const l=BigInt(a.quotedAmount),i=BigInt(a.totalDebit),d=BigInt(a.feeBreakdown.gasFee),c=BigInt(a.feeBreakdown.spicenetFee);return l>0n||i>0n||d>0n||c>0n});if(s.length===0||s.length>1)return null;const r=s[0];return{chainId:r.chainId,tokenAddress:n.tokenAddress,symbol:n.symbol,decimals:n.decimals,grossAmount:BigInt(r.totalDebit),netAmount:BigInt(r.quotedAmount),totalFee:BigInt(r.feeBreakdown.gasFee)+BigInt(r.feeBreakdown.spicenetFee),gasFee:BigInt(r.feeBreakdown.gasFee),spicenetFee:BigInt(r.feeBreakdown.spicenetFee),gasQuoteSource:r.gasQuoteSource}}const Vo=({isOpen:t,onClose:n,destinationToken:s,buildActionCalls:r,buildSpicenetBatch:a,onPayExecute:l,actionLabel:i,amountDirection:d="input",swapDescription:c,directDescription:h,supportedSourceAssets:u,sourceChains:f,paymentAmount:g,amountInputMode:p="fixed",minPaymentAmount:y,maxPaymentAmount:v,onAmountChange:x,styles:k,dark:U,title:S,subtitle:C,onAddFunds:I,onSuccess:F,onError:W})=>{const E=d==="output",{theme:B,dark:b,primaryColor:R,dk:$,palette:X}=K.useSpiceBrand(k,U),A=B.typography.fontFamily,O='"IBM Plex Mono", monospace',L=k?.inputVariant?k.inputVariant==="dark":b,ne=X.textPrimary,_=X.textSecondary,j=L?$.cardBg:"#E9E9E9",oe=L?$.cardBorder:"#C6C6C6",he=L?$.textSecondary:"#979AA0",w=L?{...B,colors:{...B.colors,secondary:$.cardBg,surfaceHover:$.hoverBg,border:"#2d2d2d",borderHover:"#3a3a3a"}}:B,z=s.chainId,ie=(o.useContext(K.SpiceFlowProviderContext)?.mode||"7702")!=="7702",be=pn(),{address:se,isConnected:we,isReady:ae,isAuthenticated:Ae,provider:Re}=be,{executeGasless:Se,estimateGasless:je}=os(),{externalWallet:We,externalAddress:Ne,embeddedAddress:ve}=zn(),{displayAssets:ze,filteredSpiceAssets:Qe,embeddedWalletAddress:Me,refreshSpiceAssets:ge,refreshWalletAssets:$e}=Ba({address:se,destinationToken:s,supportedSourceAssets:u,sourceChains:f,enabled:t&&(ie?!!Ne:!!se)}),q=E||ie?ze:Qe,[M,N]=o.useState(null),[J,xe]=o.useState(g||""),[me,G]=o.useState(!1),[H,de]=o.useState(null),[ue,tt]=o.useState("idle"),[ht,Je]=o.useState(""),[mt,Le]=o.useState(null),[At,yt]=o.useState(!1),[Pe,lt]=o.useState(null),[_e,Ot]=o.useState(null),[Qt,ct]=o.useState(!1),[Xt,Rt]=o.useState(!1),[Ue,Et]=o.useState(null),xt=o.useRef(M),Mt=o.useRef(!1),rn=o.useRef(null),Ut=o.useRef(0),Dt=o.useRef(null);o.useEffect(()=>{xt.current=M},[M]);const et=p==="adjustable"?J:g||"0",tn=Me||ve||se,{isQuoting:jt,quoteError:Ht,estimatedOutput:Vt,resolvedSwap:Bt,exactOutputSwap:Oe,quoteAmountOut:rt,resolvedTokenIn:ot,isDirect:Nt,needsSwap:it,selectedIsEquivalent:Y}=La({direction:d,selectedAsset:M,destinationToken:s,chainId:z,recipient:tn,paymentAmount:et}),te=E?parseFloat(et||"0"):parseFloat(M?.amount||"")||0,Te=o.useMemo(()=>M?.asset?Qe.find(re=>re.address.toLowerCase()===M.asset.address.toLowerCase())?.balanceFormatted??0:0,[M,Qe]),He=o.useMemo(()=>M?.asset?E?_e?Ho(_e.grossAmount,_e.decimals,M.asset.decimals)>M.asset.balance:Y||Nt?te>M.asset.balanceFormatted:Oe?parseFloat(P.formatUnits(Oe.amountInMax,M.asset.decimals))>M.asset.balanceFormatted:!1:_e?parseFloat(P.formatUnits(Ho(_e.grossAmount,_e.decimals,M.asset.decimals),M.asset.decimals))>Te:te>Te:!1,[M,E,_e,Y,te,Oe,Te,Nt]);o.useEffect(()=>{t||(N(null),de(null),G(!1),tt("idle"),Je(""),Le(null),yt(!1),lt(null),Ot(null),ct(!1),Rt(!1),Et(null),Dt.current=null,Mt.current=!1,p==="adjustable"&&xe(g||""),rn.current&&(rn.current.abort(),rn.current=null))},[t]);const at=o.useCallback(re=>{N(m=>({asset:re,amount:m?.asset?.address===re.address&&m?.asset?.chainId===re.chainId&&m.amount||""})),de(null),Et(null),Rt(!1),Dt.current=null},[]),bt=o.useCallback(re=>{N(m=>m&&{...m,amount:re}),de(null),Et(null),Rt(!1),Dt.current=null},[]),Ct=o.useCallback(re=>{let m=re;v&&parseFloat(m)>parseFloat(v)&&(m=v),xe(m),x?.(m),de(null),Et(null),Rt(!1),Dt.current=null},[v,x]);o.useCallback(re=>{if(Mt.current||!se)return;const m=xt.current;!m?.asset||!m.amount||m.asset?._source==="wallet"||P.parseUnits(E?et:m.amount,m.asset.decimals)===0n||(Mt.current=!0,ge())},[se,z,ge,E,et]);const Wt=o.useCallback(re=>{tt({building:"signing-delegation","signing-delegation":"signing-delegation","signing-intent":"signing-intent",submitting:"submitting",executing:"executing",success:"success",error:"error"}[re.step]||"executing"),Je(re.message),re.txHash&&Le(re.txHash)},[]),Ke=o.useCallback(re=>{const m=P.parseUnits(et,s.decimals),T=re?.actionAmountOverride??m,D=Me||ve||(ie?void 0:se);if(!D)throw new Error("Embedded wallet address is not available. Please sign in and try again.");const Z={userAddress:D,chainId:z,destinationToken:s.address},fe=r(T,Z),Ee={chainId:z,calls:fe},Fe=(!E&&!ie?!0:M?.asset?._source==="spice")||ie,ye=(ke,Ce)=>({token:ke,from:ie?"solver":"escrow",to:D,amount:Ce});if(m===0n)return[Ee];if(it&&Oe){const ke=ot??bn(M.asset,z)??M.asset.address,Ce=re?.fundingAmountOverride??Oe.amountInMax,Ze=Fe?[ye(ke,Ce)]:[],wt={to:ke,value:0n,data:P.encodeFunctionData({abi:P.erc20Abi,functionName:"approve",args:[Oe.calls[0]?.to,Oe.amountInMax]})},qt={chainId:z,calls:[wt,...Oe.calls,...fe],tokenTransfers:[...Ze,...Ee.tokenTransfers??[]]};if(!Fe||!a)return[qt];const Pt=a({userAddress:D,destinationChainId:z,deliveryToken:ke,deliveryAmount:Ce,deliveryRecipient:D});return Pt?[Pt,qt]:[qt]}if(Fe){const ke=ot??bn(M.asset,z)??s.address,Ce=re?.fundingAmountOverride??m,Ze={...Ee,tokenTransfers:[ye(ke,Ce),...Ee.tokenTransfers??[]]};if(!a)return[Ze];const wt=a({userAddress:D,destinationChainId:z,deliveryToken:ke,deliveryAmount:Ce,deliveryRecipient:D});return wt?[wt,Ze]:[Ze]}return[Ee]},[et,s,Me,ve,se,z,r,M,it,Oe,ot,ie,a]),Lt=o.useCallback(re=>{if(!M?.asset||!Me)return[];const m=P.parseUnits(M.amount,M.asset.decimals),T=re??m,D={userAddress:Me,chainId:z,destinationToken:s.address},Z=r(T,D);if(!(!E&&!ie||M.asset?._source==="spice"))return[{chainId:z,calls:Z}];const fe=(ke,Ce)=>({token:ke,from:"escrow",to:Me,amount:Ce});if(it){if(!ot)throw new Error("Swap input token could not be resolved");if(!Bt||rt===null)throw new Error("Swap quote not available yet")}if(it&&Bt&&rt&&ot){const ke=r(rt,D),Ce={chainId:z,calls:[...Bt.calls,...ke],tokenTransfers:[fe(ot,m)]};if(!a)return[Ce];const Ze=a({userAddress:Me,destinationChainId:z,deliveryToken:ot,deliveryAmount:m,deliveryRecipient:Me});return Ze?[Ze,Ce]:[Ce]}const Ee=ot??bn(M.asset,z)??s.address,Fe={chainId:z,calls:Z,tokenTransfers:[fe(Ee,m)]};if(!a)return[Fe];const ye=a({userAddress:Me,destinationChainId:z,deliveryToken:Ee,deliveryAmount:m,deliveryRecipient:Me});return ye?[ye,Fe]:[Fe]},[M,Me,z,s,r,it,Bt,rt,ot,a]),dt=o.useCallback(async re=>{if(!M?.asset||!Me||!ot)throw new Error("Wallet not ready");const m=P.parseUnits(M.amount,M.asset.decimals),T=Me,D={userAddress:T,chainId:z,destinationToken:s.address},Z=await Ua({chainId:z,recipient:T,tokenIn:ot,tokenOut:s.address,amountIn:re}),fe=r(Z.amountOut,D),Ee={chainId:z,calls:[...Z.calls,...fe],tokenTransfers:[{token:ot,from:"escrow",to:T,amount:m}]};if(!a)return[Ee];const Fe=a({userAddress:T,destinationChainId:z,deliveryToken:ot,deliveryAmount:m,deliveryRecipient:T});return Fe?[Fe,Ee]:[Ee]},[M,Me,ot,z,s.address,r,a]),nt=o.useCallback(async(re,m,T,D)=>{let Z=re;for(let fe=0;fe<4;fe++){const Ee=m(Z),Fe=await je(Ee,T,Z,D),ye=za(Fe);if(ye===null||ye>=re)return Z;const ke=Z-ye,Ce=re+ke;if(Ce<=Z)return Z;Z=Ce}return Z},[je]),vt=o.useMemo(()=>M?.asset?M.asset.chainId===z?M.asset.address:ot??bn(M.asset,z)??s.address:s.address,[M,s.address,z,ot]),zt=o.useCallback(async()=>{if(!M?.asset||te<=0){de("Select an asset and enter an amount");return}if(He){de("Insufficient balance");return}if(!Me){de("Wallet not ready");return}G(!0),de(null),tt("signing-delegation"),Je("Building transaction..."),Le(null),Mt.current=!1;const re=new AbortController;rn.current=re;try{const m=P.parseUnits(M.amount,M.asset.decimals),T=Lt();if(a&&!E&&!ie&&!T.some(Z=>V.isSpicenetChainId(Z.chainId)))throw new Error("Spice-funded supplies must include a Spicenet funding batch before the destination chain batch.");const D=T.some(Z=>Z.tokenTransfers?.length)?{useCustomTransfers:!0}:void 0;await je(T,vt,m,D),await Se(T,vt,m,Wt,re.signal,D),tt("success"),Je("Deposit confirmed")}catch(m){const T=m instanceof Error?m:new Error(String(m));if(T.name==="AbortError"||re.signal.aborted){tt("idle");return}const D=T.message||"Transaction failed";tt("error"),Je(D),de(D),W?.(T)}finally{G(!1)}},[M,te,He,Me,vt,Lt,dt,Se,je,Wt,it,W]),fn=o.useCallback(async()=>{if(!M?.asset)throw new Error("Select a payment source");if(!Ne||!We)throw new Error("Please connect your external wallet to continue");const re=P.parseUnits(E?et:M.amount,s.decimals),m={userAddress:Ne,chainId:z,destinationToken:s.address},T=r(re,m);if(T.length===0)throw new Error("No action calls configured");const D=await We.getEthereumProvider();let Z=null;try{const ke=await D.request({method:"eth_chainId"});Z=parseInt(ke,16)}catch{Z=null}if(Z!==z)try{await D.request({method:"wallet_switchEthereumChain",params:[{chainId:`0x${z.toString(16)}`}]})}catch(ke){if(ke?.code===4902||ke?.message?.includes("Unrecognized chain ID")){const Ce=Q.getChainConfig(z);Ce&&await D.request({method:"wallet_addEthereumChain",params:[{chainId:`0x${z.toString(16)}`,chainName:Ce.name||`Chain ${z}`,nativeCurrency:Ce.nativeCurrency||{name:"ETH",symbol:"ETH",decimals:18},rpcUrls:[Ce.rpcUrl],blockExplorerUrls:Ce.blockExplorer?[Ce.blockExplorer]:void 0}]})}else throw ke}const fe=Q.getChainConfig(z),Ee=P.createWalletClient({account:Ne,chain:fe?.viemChain,transport:P.custom(D)}),Fe=Q.getClientForChain(z);let ye;for(const ke of T){const Ce=await Ee.sendTransaction({to:ke.to,data:ke.data,value:ke.value,chain:fe?.viemChain});if((await Fe.waitForTransactionReceipt({hash:Ce,timeout:12e4,pollingInterval:2e3,confirmations:1})).status!=="success")throw new Error("Transaction failed");ye=Ce}return ye},[M,We,Ne,E,et,s,z,r]),$t=o.useCallback(async()=>{if(!M?.asset)throw new Error("Select a payment source");if(!Ne||!We)throw new Error("Please connect your external wallet to continue");const re=Me||ve;if(!re)throw new Error("Embedded wallet not available \u2014 sign in to create one before paying");const m=M.asset,T=m.chainId,D=P.parseUnits(et,s.decimals),Z=Y?D:Oe?Oe.amountInMax:0n;if(Z===0n)throw new Error("Quote not available yet");const fe=ot||M.asset.address,Ee={userOverride:re,useCustomTransfers:!0},Fe=await nt(Z,Tt=>Ke({fundingAmountOverride:Tt}),fe,Ee),ye=V.ESCROW_ADDRESS,ke=await We.getEthereumProvider();let Ce=null;try{const Tt=await ke.request({method:"eth_chainId"});Ce=parseInt(Tt,16)}catch{Ce=null}if(Ce!==T)try{await ke.request({method:"wallet_switchEthereumChain",params:[{chainId:`0x${T.toString(16)}`}]})}catch(Tt){if(Tt?.code===4902||Tt?.message?.includes("Unrecognized chain ID")){const Gt=Q.getChainConfig(T);Gt&&await ke.request({method:"wallet_addEthereumChain",params:[{chainId:`0x${T.toString(16)}`,chainName:Gt.name||`Chain ${T}`,nativeCurrency:Gt.nativeCurrency||{name:"ETH",symbol:"ETH",decimals:18},rpcUrls:[Gt.rpcUrl],blockExplorerUrls:Gt.blockExplorer?[Gt.blockExplorer]:void 0}]})}else throw Tt}const Ze=Q.getChainConfig(T),wt=P.createWalletClient({account:Ne,chain:Ze?.viemChain,transport:P.custom(ke)}),qt=V.normalizeNativeTokenAddress(m.address),Pt=m.isNative||V.isNativeToken(qt)?await wt.sendTransaction({to:ye,value:Fe,chain:Ze?.viemChain}):await wt.sendTransaction({to:qt,data:P.encodeFunctionData({abi:P.erc20Abi,functionName:"transfer",args:[ye,Fe]}),chain:Ze?.viemChain});if((await Q.getClientForChain(T).waitForTransactionReceipt({hash:Pt,timeout:12e4,pollingInterval:2e3,confirmations:1})).status!=="success")throw new Error("Escrow deposit failed");const nn=Ke({fundingAmountOverride:Fe}),gn=nn.some(Tt=>Tt.tokenTransfers?.length);return await Se(nn,fe,Fe,Tt=>{Tt.txHash&&(lt(Gt=>({...Gt??{status:"processing"},txHash:Tt.txHash})),Le(Tt.txHash))},void 0,gn?Ee:{userOverride:re})},[M,We,Ne,Me,ve,et,s,Y,Oe,Ke,nt,Se,ot]),Kt=o.useMemo(()=>M?.asset?M.asset.address.toLowerCase()===s.address.toLowerCase()&&M.asset.chainId===s.chainId:!1,[M,s.address,s.chainId]),ut=E&&ie&&Kt&&te>0&&!!M?.asset,Ve=H,Ft=o.useMemo(()=>!(!M?.asset||te<=0),[M,te,ut]),an=o.useMemo(()=>!t||me||ue!=="idle"||!Ft||ut||!M?.asset?null:[E?"pay":"supply",d,M.asset.address.toLowerCase(),M.asset.chainId,M.amount,et,s.address.toLowerCase(),s.chainId,z,ot?.toLowerCase()??"",it?"swap":"direct",Nt?"direct-token":"routed-token",ie?"non7702":"7702",Kt?"source-dest":"cross-chain",jt?"quoting":"quoted",Oe?.amountIn?.toString()??"",Oe?.amountInMax?.toString()??"",Oe?.venue??"",Bt?.amountOut?.toString()??"",rt?.toString()??"",Me??"",ve??"",se??""].join("|"),[t,me,ue,Ft,ut,M,E,d,et,s,z,ot,it,Nt,ie,Kt,jt,Oe,Bt,rt,Me,ve,se]),cn=o.useCallback(async()=>{if(!M?.asset)return null;if(E){if(te<0||te===0||it&&!Oe||ie&&Kt)return null;const Z=P.parseUnits(et,s.decimals),fe=ot||bn(M.asset,z)||M.asset.address||s.address;if(ie){const Ce=Me||ve;if(!Ce)return null;const Ze=it?Oe?.amountInMax??0n:Z;if(Ze===0n)return null;const wt=await nt(Ze,nn=>Ke({fundingAmountOverride:nn}),fe,{userOverride:Ce,useCustomTransfers:!0}),qt=Ke({fundingAmountOverride:wt}),Pt=await je(qt,fe,wt,{userOverride:Ce,useCustomTransfers:!0});return Rs(Pt,{tokenAddress:fe,symbol:V.getTokenByAddress(fe,z)?.symbol??M.asset.symbol,decimals:V.getTokenByAddress(fe,z)?.decimals??M.asset.decimals})}if(!we||!se||!ae||!Ae)return null;const Ee=it?Oe?.amountInMax??0n:Z;if(Ee===0n)return null;const Fe=await nt(Ee,Ce=>Ke({fundingAmountOverride:Ce}),fe,{useCustomTransfers:!0}),ye=Ke({fundingAmountOverride:Fe}),ke=await je(ye,fe,Fe,{useCustomTransfers:!0});return Rs(ke,{tokenAddress:fe,symbol:V.getTokenByAddress(fe,z)?.symbol??M.asset.symbol,decimals:V.getTokenByAddress(fe,z)?.decimals??M.asset.decimals})}if(te<=0||!Me||!Nt&&!Bt&&!jt||jt)return null;const re=P.parseUnits(M.amount,M.asset.decimals),m=Lt();if(m.length===0)return null;const T=m.some(Z=>Z.tokenTransfers?.length),D=await je(m,vt,re,T?{useCustomTransfers:!0}:void 0);return Rs(D,{tokenAddress:vt,symbol:V.getTokenByAddress(vt,z)?.symbol??s.symbol,decimals:V.getTokenByAddress(vt,z)?.decimals??s.decimals})},[M,E,te,it,Oe,ie,Kt,et,s,ot,Me,ve,nt,Ke,je,z,we,se,ae,Ae,Nt,Bt,jt,Lt,vt]);o.useEffect(()=>{if(!t){ct(!1),Rt(!1),Et(null),Ot(null),Dt.current=null;return}if(me||ue!=="idle"){Ut.current+=1,ct(!1);return}if(!Ft){Ot(null),ct(!1),Rt(!1),Et(null),Dt.current=null;return}if(ut){Ot(null),ct(!1),Rt(!0),Et(null),Dt.current=null;return}if(an&&an===Dt.current)return;Dt.current=an;const re=++Ut.current;Et(null),ct(!0);const m=window.setTimeout(()=>{(async()=>{try{const T=await cn();Ut.current===re&&(T&&(Ot(T),Rt(!0)),Et(null))}catch(T){if(Ut.current===re){const D=Zt(T,"Unable to calculate fees for this action.");Ot(null),Rt(!1),Et(D)}}finally{Ut.current===re&&ct(!1)}})()},250);return()=>{clearTimeout(m),Ut.current===re&&ct(!1)}},[t,me,ue,cn,Ft,ut,an]);const ee=o.useCallback(async()=>{if(te<0){de("Enter a valid payment amount");return}if(!M?.asset){de("Select a payment source");return}if(He){de("Insufficient balance");return}if(te>0&&it&&!Oe){de("Swap quote not available. Try a different asset.");return}if(ie){if(!Ne){de("Please connect your external wallet to continue");return}G(!0),de(null),yt(!0),lt({status:"processing"});try{let re;if(Kt||te===0)re=await fn();else if(l&&M?.asset){const m=M.asset,T=P.parseUnits(et,s.decimals),D=Y?T:Oe?Oe.amountInMax:0n;if(D===0n)throw new Error("Quote not available yet");const Z=Me||ve;if(!Z)throw new Error("Embedded wallet not available \u2014 sign in to create one before paying");const fe=ot||m.address,Ee=await nt(D,ke=>Ke({fundingAmountOverride:ke}),fe,{userOverride:Z,useCustomTransfers:!0}),Fe=Ke({fundingAmountOverride:Ee}),ye=await l({asset:m,amount:et,amountWei:T,destinationToken:s,chainBatches:Fe,requiredNetFunding:D,grossFundingAmount:Ee,selectedIsEquivalent:Y,resolvedTokenIn:fe,exactOutputSwapAmountInMax:Oe?.amountInMax});ye&&(Le(ye),lt(ke=>({...ke??{status:"processing"},txHash:ye}))),re=ye||void 0}else re=await $t();lt(m=>({status:"success",txHash:m?.txHash||re||""}))}catch(re){const m=Zt(re,"Payment failed. Please try again.");de(m),lt({status:"failed",error:m}),W?.(re instanceof Error?re:new Error(m))}finally{G(!1)}return}if(!we||!se){de("Please connect your wallet to continue");return}if(!ae||!Ae){de(`Please authenticate with ${Re||"wallet provider"} to continue`);return}G(!0),de(null),yt(!0),lt({status:"processing"});try{const re=P.parseUnits(et,s.decimals),m=ot||M?.asset?.address||s.address,T=it?Oe?.amountInMax??0n:re,D={useCustomTransfers:!0},Z=await nt(T,ye=>Ke({fundingAmountOverride:ye}),m,D),fe=Ke({fundingAmountOverride:Z}),Ee=fe.some(ye=>ye.tokenTransfers?.length),Fe=await Se(fe,m,Ee?Z:0n,ye=>{ye.txHash&&(lt(ke=>({...ke,txHash:ye.txHash})),Le(ye.txHash))},void 0,D);lt(ye=>({status:"success",txHash:ye?.txHash||Fe}))}catch(re){const m=Zt(re,"Payment failed. Please try again.");de(m),lt({status:"failed",error:m}),W?.(re instanceof Error?re:new Error(m))}finally{G(!1)}},[te,M,He,it,Oe,ie,Kt,Ne,fn,$t,l,Y,we,se,ae,Ae,Re,Ke,et,s,Se,nt,W,ot]);o.useEffect(()=>{!E&&ue==="success"&&mt&&(ge(),F?.(mt))},[E,ue,mt,ge,F]),o.useEffect(()=>{if(!E||Pe?.status!=="success"||Mt.current||!se)return;Mt.current=!0;const re=xt.current;!re?.asset||re.asset?._source==="wallet"||ge()},[E,Pe?.status,se,ge]);const ce=o.useRef(F),pe=o.useRef(W);o.useEffect(()=>{ce.current=F},[F]),o.useEffect(()=>{pe.current=W},[W]),o.useEffect(()=>{t&&(ge(),$e())},[t,ge,$e]),o.useEffect(()=>{E&&(Pe?.status==="success"&&ce.current?.(Pe.txHash||""),Pe?.status==="failed"&&pe.current?.(new Error("Payment execution failed")))},[E,Pe?.status]);const qe=o.useCallback(()=>{yt(!1),lt(null),N(null),Mt.current=!1,ge(),$e()},[ge,$e]),Xe=E&&te===0,St=E?!!M?.asset&&te>=0&&!He&&!me&&(Xe||ut||Xt)&&!Ue&&(Xe||!it||!!Oe):!!M?.asset&&te>0&&!He&&!me&&Xt&&!Ue&&(Nt||!!Bt&&!jt),gt=Nt?h||`Your ${s.symbol} will be used directly.`:c||"Your assets will be swapped and used in a single atomic transaction.",kt=(z?Q.getChainConfig(z):void 0)?.viemChain?.blockExplorers?.default?.url??"",Be=Oo.indexOf(ue),De=me?(Po[ue]||"EXECUTING...").toUpperCase():ue==="success"?"DONE":He?"INSUFFICIENT BALANCE":i.toUpperCase(),It=o.useMemo(()=>{if(me)return"PAYING...";if(He&&M?.asset)return`INSUFFICIENT ${M.asset.symbol}`;if(i)return i.toUpperCase();const re=te>0?` ${et} ${s.symbol}`:"";return it?`SWAP & PAY${re}`:`PAY${re}`},[me,He,M,i,te,et,s.symbol,it]),le=ue==="success"?()=>{tt("idle"),N(null),Le(null),ge()}:zt,Ie=ue==="success"?!1:!St;if(!t)return null;const st=E?S||`Pay ${s.symbol}`:i,Ye=E?C:e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",gap:"3px"},children:[e.jsx("span",{style:{marginTop:"3px",flexShrink:0},children:e.jsx(Is,{color:he})}),e.jsx("p",{style:{fontSize:"12px",color:he,margin:0,lineHeight:"1.4",fontFamily:A},children:gt})]});if(E){const re=Pe&&(Pe.status==="success"||Pe.status==="failed")?[{asset:{symbol:M?.asset?.symbol||s.symbol,address:M?.asset?.address||""},amount:et,txHash:Pe.txHash||"",success:Pe.status==="success",error:Pe.status==="failed"?Pe.error:void 0}]:void 0;return e.jsx(on,{isOpen:t,onClose:n,title:st,subtitle:Ye,styles:k,dark:b,footerLinkText:"Spicenet accounts \u2192",children:e.jsxs("div",{style:{padding:"16px 24px 8px 24px",position:"relative"},children:[I&&e.jsx("div",{style:{display:"flex",justifyContent:"flex-end",marginBottom:"6px"},children:e.jsxs("button",{onClick:I,style:{background:"none",border:"none",cursor:"pointer",padding:0,display:"flex",alignItems:"center",gap:"4px",color:R,fontSize:"12px",fontWeight:500,fontFamily:A,textDecoration:"underline",textUnderlineOffset:"2px"},children:["Add Funds",e.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",stroke:R,strokeWidth:"1.8",children:[e.jsx("circle",{cx:"6",cy:"6",r:"5"}),e.jsx("path",{d:"M6 4v4M4 6h4",strokeLinecap:"round"})]})]})}),e.jsx("div",{style:{marginBottom:"12px"},children:e.jsx(Fn,{assets:q,selectedAsset:M??void 0,onAssetSelect:at,onAmountChange:()=>{},label:"Pay with",showBalance:!0,showMaxButton:!1,hideAmountInput:!0,displayAmount:M?.asset?it?jt?"...":Oe?`~${parseFloat(P.formatUnits(Oe.amountIn,M.asset.decimals)).toFixed(6)}`:void 0:et??void 0:void 0,dark:b,theme:w,styles:k})}),e.jsx(jo,{variant:"pay",destinationSymbol:s.symbol,destinationLogoURI:s.logoURI,destinationDecimals:s.decimals,primaryColor:R,fontFamily:A,textPrimary:ne,textSecondary:_,cardBg:j,cardBorder:oe,dk:$,dark:b,isQuoting:jt,quoteError:Ht,estimatedOutput:Vt,paymentAmount:et,needsSwap:it,exactOutputSwap:Oe,adjustable:p==="adjustable",maxAmount:v,onAmountChange:Ct}),Ft&&e.jsx(Es,{fontFamily:A,textPrimary:ne,textSecondary:_,cardBg:j,cardBorder:oe,resolvedDark:b,darkCardBorder:$.cardBorder,primaryColor:R,feePreview:_e,isLoading:Qt,errorText:Ue,directExecutionFeeNote:ut}),Ve&&e.jsx("div",{style:{marginBottom:"12px",padding:"10px 14px",backgroundColor:X.errorBg,border:`1px solid ${X.errorBorder}`,borderRadius:"6px"},children:e.jsx("p",{style:{color:X.errorText,fontSize:"13px",margin:0,fontFamily:A},children:Ve})}),e.jsx(Ge.Button,{variant:"outline",fullWidth:!0,onClick:ee,disabled:!St,loading:me,dark:b,styles:{...k,button:{...k?.button,backgroundColor:R}},children:It}),Pe&&At&&e.jsx("div",{style:{position:"absolute",top:0,left:0,right:0,bottom:0,zIndex:10,backgroundColor:b?$.shell:"white",borderRadius:b?"12px":"6px",padding:"16px 0"},children:e.jsx(Ln,{type:"payment",isOpen:Pe.status!=="processing",isProcessing:me||Pe.status==="processing",closeOnComplete:!1,chainName:Q.getChainName(z),explorerUrl:Q.getExplorerUrl(z,"").replace(/\/tx\/.*$/,"")||void 0,onRetryTx:()=>{yt(!1),lt(null),ee()},onNewTx:qe,onClose:()=>{yt(!1),lt(null)},onComplete:qe,results:re,styles:k,dark:b})})]})})}return e.jsx(on,{isOpen:t,onClose:n,title:st,subtitle:Ye,dark:b,styles:k,theme:B,children:e.jsxs("div",{style:{padding:"24px 24px 5px 24px",position:"relative"},children:[e.jsx("div",{style:{marginBottom:"16px"},children:e.jsx(Fn,{assets:q,selectedAsset:M||void 0,onAssetSelect:at,onAmountChange:bt,disabled:me||ue==="success",showBalance:!0,showMaxButton:!0,label:"From Spice Balance",placeholder:"0.00",theme:w,styles:k,dark:L,maxAmount:Te>0?In(Te,M?.asset.decimals??s.decimals):void 0})}),M?.asset&&!Nt&&e.jsx(jo,{variant:"supply",destinationSymbol:s.symbol,destinationLogoURI:s.logoURI,destinationDecimals:s.decimals,primaryColor:R,fontFamily:A,textPrimary:ne,textSecondary:_,cardBg:j,cardBorder:oe,dark:b,isQuoting:jt,quoteError:Ht,estimatedOutput:Vt}),Ft&&e.jsx(Es,{fontFamily:A,textPrimary:ne,textSecondary:_,cardBg:j,cardBorder:oe,resolvedDark:b,darkCardBorder:$.cardBorder,primaryColor:R,feePreview:_e,isLoading:Qt,errorText:Ue}),ue!=="idle"&&e.jsxs("div",{style:{padding:"10px 14px",borderRadius:"7px",marginBottom:"16px",backgroundColor:ue==="success"?j:ue==="error"?X.errorBg:j,border:`1px solid ${ue==="success"?oe:ue==="error"?X.errorBorder:oe}`},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"10px"},children:[ue==="success"?e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",style:{flexShrink:0},children:e.jsx("path",{d:"M5 13l4 4L19 7",stroke:X.successText,strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round"})}):ue==="error"?e.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",style:{flexShrink:0},children:e.jsx("path",{d:"M18 6L6 18M6 6l12 12",stroke:X.errorText,strokeWidth:"2.5",strokeLinecap:"round"})}):e.jsx(Ge.Spinner,{size:14,color:R}),e.jsx("span",{style:{fontSize:"13px",fontWeight:500,color:ue==="success"?ne:ue==="error"?X.errorText:ne,fontFamily:A,flex:1},children:ue==="success"?"Deposit confirmed":ue==="error"?ht||"Transaction failed":Po[ue]||ht}),ue==="success"&&mt&&e.jsx("a",{href:`${kt}/tx/${mt}`,target:"_blank",rel:"noopener noreferrer",style:{fontSize:"12px",color:R,fontFamily:A,textDecoration:"none",whiteSpace:"nowrap",flexShrink:0},children:"View tx \u2192"}),ue==="error"&&e.jsx("button",{onClick:()=>{tt("idle"),de(null),setTimeout(zt,50)},style:{background:"none",border:"none",fontSize:"12px",color:R,fontFamily:A,cursor:"pointer",padding:0,whiteSpace:"nowrap",flexShrink:0},children:"Retry \u2192"})]}),Be>=0&&ue!=="success"&&ue!=="error"&&e.jsx("div",{style:{marginTop:"8px",height:"3px",borderRadius:"2px",backgroundColor:`${_}22`,overflow:"hidden"},children:e.jsx("div",{style:{height:"100%",borderRadius:"2px",backgroundColor:R,width:`${(Be+1)/Oo.length*100}%`,transition:"width 400ms ease"}})})]}),H&&ue==="idle"&&e.jsx("div",{style:{padding:"10px 14px",borderRadius:"7px",backgroundColor:X.errorBg,border:`1px solid ${X.errorBorder}`,marginBottom:"16px"},children:e.jsx("p",{style:{fontSize:"13px",color:X.errorText,margin:0,fontFamily:A},children:H})}),e.jsx(Ge.Button,{variant:"outline",fullWidth:!0,disabled:Ie,onClick:le,theme:B,dark:b,styles:{...k,button:{...k?.button,backgroundColor:R}},style:{fontSize:"20px",fontWeight:600,letterSpacing:"1.5px",fontFamily:O},children:De})]})})},Pa=t=>e.jsx(Vo,{isOpen:t.isOpen,onClose:t.onClose,amountDirection:"output",destinationToken:{address:t.paymentTokenAddress,symbol:t.paymentTokenSymbol,decimals:t.paymentTokenDecimals,chainId:t.paymentChainId,logoURI:t.paymentTokenLogoURI},buildActionCalls:t.buildActionCalls,buildSpicenetBatch:t.buildSpicenetBatch,actionLabel:t.ctaLabel||"PAY",paymentAmount:t.paymentAmount,amountInputMode:t.amountInputMode,minPaymentAmount:t.minPaymentAmount,maxPaymentAmount:t.maxPaymentAmount,onAmountChange:t.onAmountChange,sourceChains:t.sourceChains,title:t.title,subtitle:t.subtitle,onAddFunds:t.onAddFunds,styles:t.styles,dark:t.dark,onSuccess:t.onPaymentSuccess,onError:t.onPaymentError}),Oa=({label:t="Export Wallet",style:n,className:s,onExport:r,onError:a})=>{const[l,i]=o.useState(!1),[d,c]=o.useState(!1),{primaryColor:h}=K.useSpiceBrand(),u=o.useContext(K.SpiceFlowProviderContext),{isAuthenticated:f}=pn();let g=null;try{g=_t.usePrivy()}catch{}let p=null,y=null;try{p=Dn.useEmbeddedReveal(),y=Dn.useDynamicContext()}catch{p=null,y=null}const v=mn.getDynamicEmbeddedWallet(y),x=o.useCallback(async()=>{if(!f){a?.("User is not authenticated. Please log in first.");return}try{if(u?.provider==="dynamic"){if(!p||!v){a?.("Dynamic is not available. Ensure the app is wrapped in a DynamicContextProvider.");return}await p.initExportProcess(!1),r?.();return}if(!g){a?.("Privy is not available. Ensure the app is wrapped in a PrivyProvider.");return}await g.exportWallet(),r?.()}catch(S){const C=S instanceof Error?S.message:"Failed to export wallet";console.error("Export wallet error:",S),a?.(C)}},[v,p,f,a,r,g,u?.provider]),k=!f,U={padding:"10px 20px",borderRadius:"8px",fontFamily:'"IBM Plex Mono", monospace',fontSize:"14px",fontWeight:500,letterSpacing:"0.4px",textTransform:"uppercase",cursor:k?"not-allowed":"pointer",opacity:k?.5:1,border:"1px solid #0e0d0b",color:"#0e0d0b",backgroundColor:d?`${h}cc`:l?`${h}ee`:h,transition:"all 150ms ease",display:"inline-flex",alignItems:"center",justifyContent:"center",gap:"8px",...n};return e.jsxs("button",{onClick:x,onMouseEnter:()=>i(!0),onMouseLeave:()=>{i(!1),c(!1)},onMouseDown:()=>c(!0),onMouseUp:()=>c(!1),disabled:k,className:s,style:U,children:[e.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}),e.jsx("polyline",{points:"17 8 12 3 7 8"}),e.jsx("line",{x1:"12",y1:"3",x2:"12",y2:"15"})]}),t]})};function Qo(t){const n=o.useContext(K.SpiceFlowProviderContext),s=un(),r=t?.enabled===!1?void 0:s,a=n?.network?{network:n.network,pollIntervalMs:t?.pollIntervalMs,chainIds:t?.chainIds??n.supportedChainIds}:void 0;return{...co(r,a),embeddedWalletAddress:s}}const Ha=({appName:t,status:n,statusLabel:s,totalUsdValue:r,breakdownSubtitle:a,address:l,dk:i,dark:d=!1,showModeToggle:c,isEmbeddedMode:h=!0,onModeToggle:u})=>{const[f,g]=o.useState(!1),p=async()=>{l&&await mr(l)&&(g(!0),setTimeout(()=>g(!1),2e3))},y=n==="active",v=s||(y?"Active":"Inactive"),x=y?"#10b981":"#9ca3af";return e.jsxs("div",{children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:"4px"},children:[e.jsxs("div",{style:{fontSize:"13px",fontWeight:600,color:d?i.textPrimary:"#111827"},children:[t," Account"]}),c?e.jsxs("button",{onClick:u,style:{display:"flex",alignItems:"center",gap:"4px",padding:"2px 8px",borderRadius:"9999px",backgroundColor:d?i.hoverBg:"#f3f4f6",border:d?`1px solid ${i.cardBorder}`:"1px solid #e5e7eb",cursor:"pointer",fontSize:"11px",fontWeight:600,fontFamily:'"IBM Plex Mono", monospace',color:d?i.textSecondary:"#6b7280",transition:"all 150ms ease",letterSpacing:"0.02em"},children:[e.jsx("div",{style:{width:"6px",height:"6px",borderRadius:"50%",backgroundColor:h?"#22c55e":"#f59e0b"}}),e.jsx("span",{children:h?"Embedded":"External"})]}):e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"4px",padding:"2px 8px",borderRadius:"9999px",backgroundColor:d?i.hoverBg:y?"#ecfdf5":"#f3f4f6",border:d?`1px solid ${i.cardBorder}`:y?"1px solid #a7f3d0":"1px solid #e5e7eb"},children:[e.jsx("div",{style:{width:"6px",height:"6px",borderRadius:"50%",backgroundColor:x}}),e.jsx("span",{style:{fontSize:"11px",fontWeight:500,color:d?i.textSecondary:y?"#065f46":"#6b7280"},children:v})]})]}),e.jsx("div",{style:{fontSize:"28px",fontWeight:700,color:d?i.textPrimary:"#111827",lineHeight:1.2,marginBottom:"2px"},children:Bn(r)}),a&&e.jsx("div",{style:{fontSize:"12px",color:d?i.textSecondary:"#6b7280",marginBottom:"8px"},children:a}),l&&e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"6px"},children:[e.jsx("span",{style:{fontSize:"12px",fontFamily:'"IBM Plex Mono", monospace',color:d?i.textSecondary:"#9ca3af"},children:gr(l)}),e.jsx("button",{onClick:p,style:{padding:"2px 6px",fontSize:"10px",fontWeight:500,backgroundColor:"transparent",color:d?i.textSecondary:"#9ca3af",border:"none",cursor:"pointer",borderRadius:"4px",transition:"all 150ms ease"},title:"Copy address",children:f?"Copied":"Copy"})]})]})},Va=({pendingDeposits:t,onCompleteDeposit:n,dk:s,dark:r=!1})=>t.length===0?null:e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:"11px",fontWeight:600,letterSpacing:"1px",color:r?s.textSecondary:"#6b7280",marginBottom:"8px",textTransform:"uppercase"},children:"Pending Deposits"}),e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:t.map((a,l)=>{const i=Q.getChainConfig(a.chainId)?.displayName||`Chain ${a.chainId}`;return e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"10px 12px",backgroundColor:r?s.warningBg:"#fffbeb",border:r?`1px solid ${s.warningBorder}`:"1px solid #fde68a",borderRadius:"8px"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[e.jsx("div",{style:{width:"24px",height:"24px",borderRadius:"50%",backgroundColor:r?s.hoverBg:"#fde68a",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"11px",fontWeight:600,color:r?s.warningText:"#92400e"},children:a.tokenSymbol.charAt(0)}),e.jsxs("div",{children:[e.jsxs("div",{style:{fontSize:"13px",fontWeight:500,color:r?s.textPrimary:"#111827"},children:[a.amount," ",a.tokenSymbol]}),e.jsxs("div",{style:{fontSize:"11px",color:r?s.warningText:"#92400e"},children:["on ",i]})]})]}),e.jsx("button",{onClick:()=>n?.(a),style:{padding:"4px 12px",fontSize:"11px",fontWeight:600,backgroundColor:r?s.hoverBg:"#fef3c7",color:r?s.textPrimary:"#92400e",border:r?`1px solid ${s.warningBorder}`:"1px solid #fde68a",borderRadius:"9999px",cursor:"pointer",transition:"all 150ms ease"},children:"Complete"})]},`${a.tokenAddress}-${a.chainId}-${l}`)})})]}),Qa=({spiceAssets:t,loading:n,dk:s,dark:r=!1})=>{const a={fontSize:"11px",fontWeight:600,letterSpacing:"1px",color:r?s.textSecondary:"#6b7280",marginBottom:"8px",textTransform:"uppercase"},l={backgroundColor:r?s.cardBg:"#f9fafb",border:r?`1px solid ${s.cardBorder}`:"1px solid #e5e7eb",borderRadius:"8px"};return n?e.jsxs("div",{children:[e.jsx("div",{style:a,children:"Idle Balances"}),[1,2].map(i=>e.jsx("div",{style:{...l,padding:"12px",marginBottom:"6px",height:"48px",animation:"pulse 1.5s ease-in-out infinite",opacity:.5}},i))]}):t.length===0?e.jsxs("div",{children:[e.jsx("div",{style:a,children:"Idle Balances"}),e.jsx("div",{style:{...l,padding:"16px",textAlign:"center",fontSize:"13px",color:r?s.textSecondary:"#9ca3af"},children:"No assets yet. Deposit to get started."})]}):e.jsxs("div",{children:[e.jsx("div",{style:a,children:"Idle Balances"}),e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:t.map((i,d)=>{const c=Q.getChainConfig(i.chainId),h=i.chainDisplayName||c?.displayName||`Chain ${i.chainId}`,u=i.tokenDisplaySymbol||i.tokenDisplayName||i.tokenSymbol;return e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"10px 12px",...l},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[i.logoURI?e.jsx("img",{src:i.logoURI,alt:i.tokenSymbol,style:{width:"24px",height:"24px",borderRadius:"50%"}}):e.jsx("div",{style:{width:"24px",height:"24px",borderRadius:"50%",backgroundColor:r?s.hoverBg:"#e5e7eb",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"11px",fontWeight:600,color:r?s.textSecondary:"#6b7280"},children:u.charAt(0)}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:"13px",fontWeight:500,color:r?s.textPrimary:"#111827"},children:u}),e.jsx("div",{style:{fontSize:"11px",color:r?s.textSecondary:"#9ca3af"},children:h})]})]}),e.jsxs("div",{style:{textAlign:"right"},children:[e.jsx("div",{style:{fontSize:"13px",fontWeight:500,color:r?s.textPrimary:"#111827"},children:kn(i.balanceFormatted)}),e.jsx("div",{style:{fontSize:"11px",color:r?s.textSecondary:"#9ca3af"},children:Bn(i.usdValue)})]})]},`${i.tokenAddress}-${i.chainId}-${d}`)})})]})},Ka=({section:t,dk:n,dark:s=!1})=>{const r=a=>{switch(a){case"green":return"#10b981";case"red":return"#ef4444";default:return s?n.textPrimary:"#111827"}};return e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:"11px",fontWeight:600,letterSpacing:"1px",color:s?n.textSecondary:"#6b7280",marginBottom:"8px",textTransform:"uppercase"},children:t.title}),e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:t.items.map((a,l)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"10px 12px",backgroundColor:s?n.cardBg:"#f9fafb",border:s?`1px solid ${n.cardBorder}`:"1px solid #e5e7eb",borderRadius:"8px"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[a.tokenLogoURI?e.jsx("img",{src:a.tokenLogoURI,alt:a.tokenSymbol,style:{width:"20px",height:"20px",borderRadius:"50%"}}):e.jsx("div",{style:{width:"20px",height:"20px",borderRadius:"50%",backgroundColor:s?n.hoverBg:"#e5e7eb",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"10px",fontWeight:600,color:s?n.textSecondary:"#6b7280"},children:a.tokenSymbol.charAt(0)}),e.jsxs("div",{children:[e.jsx("div",{style:{fontSize:"13px",fontWeight:500,color:s?n.textPrimary:"#111827"},children:a.tokenSymbol}),e.jsx("div",{style:{fontSize:"11px",color:s?n.textSecondary:"#6b7280"},children:a.label})]})]}),e.jsx("div",{style:{fontSize:"13px",fontWeight:600,color:r(a.valueColor)},children:a.displayValue})]},l))})]})},qa=({onDepositClick:t,onWithdrawClick:n,depositDisabled:s=!1,withdrawDisabled:r=!1,primaryColor:a="#EA4B4B",dark:l=!1})=>!t&&!n?null:e.jsxs("div",{style:{display:"flex",gap:"8px"},children:[t&&e.jsx(Ge.Button,{variant:"outline",onClick:t,disabled:s,dark:l,styles:{button:{backgroundColor:a}},style:{flex:1,height:"44px",fontSize:"12px"},children:"Deposit"}),n&&e.jsx(Ge.Button,{variant:"outline",onClick:n,disabled:r,dark:l,styles:{button:{backgroundColor:a}},style:{flex:1,height:"44px",fontSize:"12px"},children:"Withdraw"})]}),Ya=({appName:t,status:n,statusLabel:s,totalUsdValue:r,breakdownSubtitle:a,address:l,spiceAssets:i,spiceAssetsLoading:d,pendingDeposits:c,customSections:h,onDepositClick:u,onWithdrawClick:f,onCompleteDeposit:g,primaryColor:p,dk:y,dark:v=!1,showModeToggle:x,isEmbeddedMode:k,onModeToggle:U,showConnectExternalCta:S,onConnectExternalWallet:C,connectExternalError:I})=>{const[F,W]=o.useState(!1);return e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"16px",padding:"16px",maxHeight:"calc(80vh - 32px)",overflowY:"auto"},children:[e.jsx(Ha,{appName:t,status:n,statusLabel:s,totalUsdValue:r,breakdownSubtitle:a,address:l,dk:y,dark:v,showModeToggle:x,isEmbeddedMode:k,onModeToggle:U}),S&&e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:"6px"},children:[e.jsx("button",{onClick:C,style:{width:"100%",padding:"10px 14px",borderRadius:"8px",backgroundColor:p||"#EA4B4B",color:"#ffffff",border:"none",cursor:"pointer",fontSize:"13px",fontWeight:600,fontFamily:'"Helvetica Neue", sans-serif',transition:"opacity 150ms ease"},children:"Connect External Wallet"}),I&&e.jsx("span",{style:{fontSize:"11px",color:v?y.errorText:"#b91c1c",lineHeight:1.4},children:I})]}),e.jsx("div",{style:{height:"1px",backgroundColor:v?"#2d2d2d":"#e5e7eb"}}),e.jsxs("div",{children:[e.jsxs("button",{onClick:()=>W(!F),style:{display:"flex",alignItems:"center",justifyContent:"space-between",width:"100%",padding:"8px 12px",backgroundColor:v?y.cardBg:"#f9fafb",border:v?`1px solid ${y.cardBorder}`:"1px solid #e5e7eb",borderRadius:"8px",cursor:"pointer",color:v?y.textSecondary:"#6b7280",fontSize:"12px",fontWeight:500},children:[e.jsx("span",{children:"How It Works"}),e.jsx("span",{style:{transform:F?"rotate(180deg)":"rotate(0deg)",transition:"transform 200ms ease",fontSize:"10px"},children:"\u25BE"})]}),F&&e.jsxs("div",{style:{marginTop:"6px",padding:"10px 12px",backgroundColor:v?y.cardBg:"#f0fdf4",border:v?`1px solid ${y.cardBorder}`:"1px solid #bbf7d0",borderRadius:"8px",fontSize:"12px",lineHeight:1.5,color:v?y.textSecondary:"#374151"},children:["Fund your ",t," Account from any supported chain (10+ EVM chains). Once funded, transact gas-free and asset-abstracted on"," ",t,"."]})]}),e.jsx(Va,{pendingDeposits:c,onCompleteDeposit:g,dk:y,dark:v}),e.jsx(Qa,{spiceAssets:i,loading:d,dk:y,dark:v}),h.map((E,B)=>e.jsx(Ka,{section:E,dk:y,dark:v},B)),e.jsx(qa,{onDepositClick:u,onWithdrawClick:f,primaryColor:p,dark:v})]})},Ms=380,Tn=8;function Ko(t){return t?.trim().replace(/^spice/i,"").replace(/[^a-z0-9]/gi,"").toUpperCase()||void 0}function Za(t,n){const s=new Map;Object.entries(n).forEach(([a,l])=>{if(!Number.isFinite(l)||l<=0)return;s.set(a,l),s.set(a.toUpperCase(),l);const i=Ko(a);i&&s.set(i,l)});const r=[t.symbol,t.displaySymbol,t.receiptTokenName,t.name,t.displayName];for(const a of r){if(!a)continue;const l=s.get(a)??s.get(a.toUpperCase());if(l!==void 0)return l;const i=Ko(a);if(!i)continue;const d=s.get(i);if(d!==void 0)return d}return 0}const Xa=({appName:t="Spice",status:n="active",statusLabel:s,customSections:r=[],extraAssets:a=[],tokenPrices:l={},breakdownLabels:i=[],supportedChains:d,styles:c,dark:h=!1,onDepositSuccess:u,onDepositClick:f,onWithdrawClick:g,onCompleteDeposit:p,showModeToggle:y=!1,defaultMode:v})=>{const x=o.useContext(K.SpiceFlowProviderContext),k=x?.mode!=="7702",U=o.useRef(!1);o.useEffect(()=>{if(!U.current){if(K.hasStoredSpiceFlowMode()){U.current=!0;return}v&&x?.setMode&&(x.setMode(v==="non7702"?"ondemand":"7702"),U.current=!0)}},[x,v]);const[S,C]=o.useState(!1),[I,F]=o.useState(null),[W,E]=o.useState({top:0,left:0,placement:"below"}),B=o.useRef(null),b=o.useRef(null),{address:R,isConnected:$}=pn(),X=un(),{address:A}=ft.useAccount(),{dark:O,primaryColor:L,dk:ne}=K.useSpiceBrand(c,h),_=o.useMemo(()=>d||V.getChainIdsByNetwork("mainnet"),[d]),{assets:j,loading:oe}=An({address:R,supportedChains:_,enabled:!!R&&!k,refetchInterval:3e4}),he=o.useMemo(()=>[...k?[]:j.map(q=>{const M=q.balanceUsd||0,N=Number.isFinite(q.balanceFormatted)?q.balanceFormatted:0,J=M>0?M:Za(q,l)*N;return{tokenAddress:q.address,tokenSymbol:q.symbol,tokenDisplaySymbol:xs(q),tokenDisplayName:yr(q),tokenDecimals:q.decimals,chainId:q.chainId,chainDisplayName:gs(q),balance:q.balance.toString(),balanceFormatted:q.balanceFormatted,usdValue:J,logoURI:q.logoURI}}),...a].filter(q=>q.balanceFormatted>0),[k,j,l,a]),w=o.useMemo(()=>he.reduce((q,M)=>q+M.usdValue,0),[he]),{pendingDeposits:z}=Qo({chainIds:_,enabled:!!R}),ie=o.useMemo(()=>r.reduce((q,M)=>q+M.totalValue,0),[r]),be=w+ie,se=o.useMemo(()=>{const q=[];w>0&&q.push(`${Bn(w)} idle`);for(const M of r){const N=i.find(J=>J.sectionTitle===M.title)?.label||M.title.toLowerCase();q.push(`${Bn(M.totalValue)} ${N}`)}return q.join(" \xB7 ")},[w,r,i]),we=o.useCallback(q=>{p?p(q):F(q)},[p]),ae=o.useCallback(()=>{F(null)},[]),Ae=o.useCallback(()=>{F(null),u?.()},[u]),Re=o.useCallback(()=>{if(!B.current)return;const q=B.current.getBoundingClientRect(),M=window.innerHeight-q.bottom-Tn,N=q.top-Tn,J=M>=400||M>=N?"below":"above",xe=Math.max(Tn,Math.min(q.right-Ms,window.innerWidth-Ms-Tn)),me=J==="below"?q.bottom+Tn:q.top-Tn;E({top:me,left:xe,placement:J})},[]);o.useLayoutEffect(()=>{S&&Re()},[S,Re]),o.useEffect(()=>{if(!S)return;const q=J=>{B.current&&!B.current.contains(J.target)&&b.current&&!b.current.contains(J.target)&&C(!1)},M=J=>{J.key==="Escape"&&C(!1)},N=()=>Re();return document.addEventListener("mousedown",q),document.addEventListener("keydown",M),window.addEventListener("scroll",N,{passive:!0}),window.addEventListener("resize",Re),()=>{document.removeEventListener("mousedown",q),document.removeEventListener("keydown",M),window.removeEventListener("scroll",N),window.removeEventListener("resize",Re)}},[S,Re]);const Se=x?.mode==="7702",je=Se?X||R:A||R,We=o.useCallback(()=>{x?.setMode&&x.setMode(Se?"ondemand":"7702")},[x,Se]),[Ne,ve]=o.useState(null);let ze=null;try{ze=_t.useConnectWallet({onSuccess:()=>ve(null),onError:q=>ve(Zt(q,"Failed to connect wallet."))}).connectWallet}catch{ze=null}const Qe=o.useCallback(()=>{ze&&(ve(null),ze({walletChainType:"ethereum-only"}))},[ze]),Me=y&&!Se&&!A&&!!ze;if(typeof window>"u")return null;const ge=e.jsxs("button",{ref:B,onClick:()=>C(!S),style:{display:"inline-flex",alignItems:"center",gap:"6px",padding:"8px 14px",borderRadius:"9999px",backgroundColor:O?ne.hoverBg:"#ffffff",border:O?`1px solid ${ne.cardBorder}`:"1px solid #e5e7eb",cursor:"pointer",fontSize:"13px",fontWeight:500,fontFamily:'"Helvetica Neue", sans-serif',color:O?ne.textPrimary:"#111827",transition:"all 150ms ease",boxShadow:O?"none":"0 1px 2px rgba(0,0,0,0.05)"},children:[e.jsx("span",{style:{width:"8px",height:"8px",borderRadius:"50%",backgroundColor:L,flexShrink:0}}),e.jsxs("span",{children:[t," Account"]}),$&&e.jsxs("span",{style:{color:O?ne.textSecondary:"#6b7280"},children:["\xB7 ",Bn(be)]}),e.jsx("span",{style:{fontSize:"10px",color:O?ne.textSecondary:"#9ca3af",transform:S?"rotate(180deg)":"rotate(0deg)",transition:"transform 200ms ease"},children:"\u25BE"})]}),$e=S?Zn.createPortal(e.jsxs(e.Fragment,{children:[e.jsx("div",{style:{position:"fixed",inset:0,backgroundColor:"rgba(0, 0, 0, 0.08)",zIndex:9998},onClick:()=>C(!1)}),e.jsx("div",{ref:b,style:{position:"fixed",top:W.placement==="below"?`${W.top}px`:"auto",bottom:W.placement==="above"?`${window.innerHeight-W.top}px`:"auto",left:`${W.left}px`,width:`${Ms}px`,maxHeight:"80vh",backgroundColor:O?ne.shell:"#ffffff",border:O?`1px solid ${ne.cardBorder}`:"1px solid #e5e7eb",borderRadius:"12px",boxShadow:O?"0 10px 40px rgba(0, 0, 0, 0.5)":"0 10px 40px rgba(0, 0, 0, 0.12)",zIndex:9999,overflow:"hidden",animation:"accountDisplayFadeIn 150ms ease-out"},children:e.jsx(Ya,{appName:t,status:n,statusLabel:s,totalUsdValue:be,breakdownSubtitle:se,address:y?je:R,spiceAssets:he,spiceAssetsLoading:oe,pendingDeposits:z,customSections:r,onDepositClick:f,onWithdrawClick:g,onCompleteDeposit:we,primaryColor:L,dk:ne,dark:O,showModeToggle:y,isEmbeddedMode:Se,onModeToggle:We,showConnectExternalCta:Me,onConnectExternalWallet:Qe,connectExternalError:Ne})}),e.jsx("style",{children:`
115
115
  @keyframes accountDisplayFadeIn {
116
116
  from { opacity: 0; transform: translateY(-4px); }
117
117
  to { opacity: 1; transform: translateY(0); }
118
118
  }
119
- `})]}),document.body):null;return e.jsxs(e.Fragment,{children:[Ve,st,B&&e.jsx(io,{isOpen:!0,onClose:le,supportedChains:[B.chainId],escrowOnly:!0,escrowTokenAddress:B.tokenAddress,escrowAmount:B.amount,escrowTokenDecimals:B.tokenDecimals,escrowTokenSymbol:B.tokenSymbol,styles:d,onDepositSuccess:Pe})]})},Qo=class Ms extends o.Component{constructor(n){super(n),this.handleRetry=()=>{this.state.retryCount>=Ms.MAX_RETRIES||this.setState(s=>({hasError:!1,error:null,retryCount:s.retryCount+1}))},this.state={hasError:!1,error:null,retryCount:0}}static getDerivedStateFromError(n){return{hasError:!0,error:n}}componentDidCatch(n,s){console.error(`[SdkErrorBoundary] ${this.props.componentName||"SDK component"} failed:`,{message:n.message,componentStack:s.componentStack})}render(){if(this.state.hasError){if(this.props.fallback)return this.props.fallback;const n={display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",padding:"24px",borderRadius:"8px",border:"1px solid rgba(239, 68, 68, 0.2)",backgroundColor:this.props.dark?"rgba(239, 68, 68, 0.08)":"rgba(239, 68, 68, 0.05)",gap:"12px"},s={fontSize:"14px",color:"#f87171",margin:0},r={fontSize:"12px",color:"#888",maxWidth:"280px",textAlign:"center",overflow:"hidden",display:"-webkit-box",WebkitLineClamp:3,WebkitBoxOrient:"vertical",margin:0},i={padding:"8px 16px",fontSize:"12px",borderRadius:"6px",backgroundColor:this.props.dark?"#2a2a2a":"#f3f4f6",color:this.props.dark?"#888":"#374151",border:this.props.dark?"1px solid #3a3a3a":"1px solid #d1d5db",cursor:"pointer",transition:"background-color 150ms ease"},l={fontSize:"12px",color:"#888",margin:0},a=Ms.MAX_RETRIES-this.state.retryCount;return e.jsxs("div",{style:n,children:[e.jsxs("p",{style:s,children:[this.props.componentName||"Component"," failed to load"]}),this.state.error&&e.jsx("p",{style:r,children:this.state.error.message}),a>0?e.jsxs("button",{onClick:this.handleRetry,style:i,onMouseEnter:c=>{c.target.style.backgroundColor=this.props.dark?"#333":"#e5e7eb"},onMouseLeave:c=>{c.target.style.backgroundColor=this.props.dark?"#2a2a2a":"#f3f4f6"},children:["Try again (",a," left)"]}):e.jsx("p",{style:l,children:"Please refresh the page to try again"})]})}return this.props.children}};Qo.MAX_RETRIES=3;let Ya=Qo;const Za=()=>{const[t,n]=o.useState("0"),[s,r]=o.useState(null);return{assetAmount:t,setAssetAmount:n,selectedAsset:s,setSelectedAsset:r}};function Xa(t,n=0){const[s,r]=o.useState(n),i=t[s]??t[0],l=o.useMemo(()=>i?BigInt(Math.round(i.months*30*24*3600)):0n,[i?.months]);return{selectedDurationIdx:s,setSelectedDurationIdx:r,selectedDuration:i,durationSeconds:l}}function Ga(){const{actions:t,isReady:n,isAuthenticated:s}=pn(),r=un(),i=o.useRef(!1),l=o.useRef(0),a=o.useRef(null),c=o.useRef(t),[d,p]=o.useState(0);c.current=t,o.useEffect(()=>{i.current=!1,l.current=0,a.current&&(clearTimeout(a.current),a.current=null)},[r]),o.useEffect(()=>{if(!r||!n||!s||i.current)return;i.current=!0;let u=!1;return(async()=>{await new Promise(f=>setTimeout(f,2e3));try{await Y.relayerService.getWallet(r);return}catch{}try{const{unix_timestamp:f}=await Y.relayerService.getRollupTimestamp(),g=`I am creating a new smart wallet and adding an admin wallet ethereum:0x${r.slice(2).toLowerCase()}. Nonce: ${f}`,h=await c.current.signMessage(g),y=typeof h=="string"?h:h.signature;await Y.relayerService.createWallet(r,{timestamp:f,signature:y}),l.current=0}catch(f){console.warn("[SmartWallet] Registration failed:",f),i.current=!1,!u&&l.current<3&&(l.current+=1,a.current=setTimeout(()=>{p(g=>g+1)},5e3))}})(),()=>{u=!0,a.current&&(clearTimeout(a.current),a.current=null)}},[r,n,s,d])}function Hn(t){try{return V.resolveTokenRef(t)}catch{throw new Y.SpiceflowError("ROUTE_TOKEN_NOT_FOUND",`Token "${t[0]}" not found on chain ${t[1]} in the token registry.`,{symbol:t[0],chainId:t[1]})}}function Ja(t,n){if(t[0].toUpperCase()===n[0].toUpperCase()&&t[1]===n[1])return!0;let s,r;try{s=Hn(t),r=Hn(n)}catch{return!1}const i=new Set(V.getEquivalentAddresses(r.address).map(l=>l.toLowerCase()));return i.add(r.address.toLowerCase()),i.has(s.address.toLowerCase())}function $a(){const t=[];for(const n of Object.keys(V.CHAINS).map(Number))for(const s of V.getTokensForChain(n))t.push([s.symbol,n]);return t}async function _a(t){const{action:n,inputToken:s,inputAmount:r,registry:i,userAddress:l,slippage:a,intermediaryCandidates:c}=t;if(n.calls.length===0)throw new Y.SpiceflowError("INVALID_PARAMS","buildIntent: action.calls must not be empty.",{action:n});if(r<=0n)throw new Y.SpiceflowError("INVALID_PARAMS","buildIntent: inputAmount must be greater than zero.",{inputAmount:r.toString()});const d=n.supportedInputTokens??$a();if(!d.some(x=>Ja(s,x))){const x=d.map(([k,U])=>`${k} (chain ${U})`).join(", ");throw new Y.SpiceflowError("ROUTE_UNSUPPORTED_INPUT",`Input token "${s[0]}" on chain ${s[1]} is not in the action's supported input tokens. Supported: ${x}.`,{inputToken:{symbol:s[0],chainId:s[1]},supportedInputTokens:d})}const p=Hn(s),u=Hn(n.outputToken),f=xo({sourceAsset:p,outputAsset:u,sourceChainId:p.chainId,destinationChainId:n.chainId,intermediaryCandidates:c}),{chainBatches:g,solverFrontToken:h,solverFrontAmount:y,resolvedSwaps:w}=await mo({route:f,sourceAmount:r,userAddress:l,registry:i,actionCalls:n.calls,slippage:a});return{chainBatches:g,route:f,resolvedSwaps:w,resolvedInputToken:p,resolvedOutputToken:u,solverFrontToken:h,solverFrontAmount:y}}const ei=[0n,1n,30n],ti=new Set(["ABORT","CONCURRENT_EXECUTION","WALLET_DISCONNECTED","WALLET_REJECTED","NO_VENUE_FOR_CHAIN"]);function Ko(t,n){return n===0n?t:t*(1000n-n)/1000n}async function ni(t,n){const{chainId:s,swapCalls:r,quoteAmountOut:i,buildActionCalls:l,tokenAddress:a,tokenTransferAmount:c,onProgress:d,signal:p,options:u,buffers:f=ei}=n;for(let g=0;g<f.length;g++){const h=f[g],y=Ko(i,h),w=l(y),x=[{chainId:s,calls:[...r,...w]}];try{return await t(x,a,c,d,p,u)}catch(k){if(Y.isSpiceflowError(k)&&ti.has(k.code)||k.name==="AbortError"||p?.aborted||k.message?.includes("User rejected")||k.message?.includes("User denied")||k.code===4001||g>=f.length-1)throw k;const U=Number(f[g+1])/10;console.warn(`[SwapThenAction] Action attempt ${g+1} failed (buffer ${Number(h)/10}%), retrying with ${U}% buffer...`,k.message),d?.({step:"signing-delegation",message:`Adjusting action amount, retrying (${U}% buffer)...`})}}throw new Y.SpiceflowError("ALL_ATTEMPTS_FAILED","All action attempts failed after exhausting buffer progression.",{attempts:f.length,chainId:s})}exports.SpiceFlowProvider=Y.SpiceFlowProvider,exports.SpiceFlowProviderContext=Y.SpiceFlowProviderContext,exports.SpiceflowError=Y.SpiceflowError,exports.buildDarkPalette=Y.buildDarkPalette,exports.buildLightPalette=Y.buildLightPalette,exports.isSpiceflowError=Y.isSpiceflowError,exports.relayerService=Y.relayerService,exports.resolveTheme=Y.resolveTheme,exports.useSpiceBrand=Y.useSpiceBrand,exports.Spinner=Ze.Spinner,exports.getChainConfig=q.getChainConfig,exports.getChainName=q.getChainName,Object.defineProperty(exports,"ESCROW_ADDRESS",{enumerable:!0,get:function(){return V.ESCROW_ADDRESS}}),Object.defineProperty(exports,"NATIVE_TOKEN_ADDRESS",{enumerable:!0,get:function(){return V.ZERO_ADDRESS}}),Object.defineProperty(exports,"SPICENET_NATIVE_CHAIN_ID",{enumerable:!0,get:function(){return V.SPICENET_NATIVE_CHAIN_ID}}),Object.defineProperty(exports,"applySlippage",{enumerable:!0,get:function(){return V.applySlippage}}),Object.defineProperty(exports,"buildUniV3SwapCalls",{enumerable:!0,get:function(){return V.buildUniV3SwapCalls}}),Object.defineProperty(exports,"getChainIdsByNetwork",{enumerable:!0,get:function(){return V.getChainIdsByNetwork}}),Object.defineProperty(exports,"isNativeToken",{enumerable:!0,get:function(){return V.isNativeToken}}),Object.defineProperty(exports,"isSpicenetChainId",{enumerable:!0,get:function(){return V.isSpicenetChainId}}),Object.defineProperty(exports,"normalizeNativeTokenAddress",{enumerable:!0,get:function(){return V.normalizeNativeTokenAddress}}),exports.AccountDisplay=qa,exports.AirdropModal=ir,exports.CloseIcon=Xn,exports.CrossChainDepositModal=jr,exports.DepositWidget=Xs,exports.DepositWidgetModal=kr,exports.ExportWalletButton=za,exports.LpModal=ya,exports.ProviderLogin=ws,exports.SATSUMA_CITREA_CONFIG=Fs,exports.SdkErrorBoundary=Ya,exports.SelectChainModal=oa,exports.SpiceBalance=fa,exports.SpiceDeposit=co,exports.SpiceLockModal=Ia,exports.SpicePay=La,exports.SpiceSupply=Ho,exports.SpiceWithdraw=Co,exports.StatusBanner=Zs,exports.Toast=is,exports.UNIV3_BASE_CONFIG=Do,exports.applyBuffer=Ko,exports.areEquivalentOnChains=hs,exports.buildIntent=_a,exports.buildRoutedBatches=mo,exports.create1inchVenue=Ro,exports.createLiquidityRegistry=Uo,exports.createSatsumaVenue=No,exports.executeSwapThenAction=ni,exports.findEquivalentOnChain=wn,exports.findTokenOnChain=ks,exports.getAssetChainTokenCandidates=Jn,exports.getBestUniV3Quote=Bo,exports.getUniV3Quote=Ao,exports.isSwapIntent=Fo,exports.resolveAssetTokenAddressOnChain=bn,exports.resolveFundedToken=Qs,exports.resolveRoute=xo,exports.resolveTokenRef=Hn,exports.spicenetAbi=Es,exports.spicenetWithdrawalAbi=Es,exports.useAssetInput=Za,exports.useEmbeddedWalletAddress=un,exports.useGaslessExecution=os,exports.useLockDuration=Xa,exports.useSmartWallet=Ga,exports.useSpiceAssets=An,exports.useSpiceExecution=os,exports.useSpicePendingDeposits=Vo,exports.useWallet=pn;
119
+ `})]}),document.body):null;return e.jsxs(e.Fragment,{children:[ge,$e,I&&e.jsx(lo,{isOpen:!0,onClose:ae,supportedChains:[I.chainId],escrowOnly:!0,escrowTokenAddress:I.tokenAddress,escrowAmount:I.amount,escrowTokenDecimals:I.tokenDecimals,escrowTokenSymbol:I.tokenSymbol,styles:c,onDepositSuccess:Ae})]})},qo=class Ds extends o.Component{constructor(n){super(n),this.handleRetry=()=>{this.state.retryCount>=Ds.MAX_RETRIES||this.setState(s=>({hasError:!1,error:null,retryCount:s.retryCount+1}))},this.state={hasError:!1,error:null,retryCount:0}}static getDerivedStateFromError(n){return{hasError:!0,error:n}}componentDidCatch(n,s){console.error(`[SdkErrorBoundary] ${this.props.componentName||"SDK component"} failed:`,{message:n.message,componentStack:s.componentStack})}render(){if(this.state.hasError){if(this.props.fallback)return this.props.fallback;const n={display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",padding:"24px",borderRadius:"8px",border:"1px solid rgba(239, 68, 68, 0.2)",backgroundColor:this.props.dark?"rgba(239, 68, 68, 0.08)":"rgba(239, 68, 68, 0.05)",gap:"12px"},s={fontSize:"14px",color:"#f87171",margin:0},r={fontSize:"12px",color:"#888",maxWidth:"280px",textAlign:"center",overflow:"hidden",display:"-webkit-box",WebkitLineClamp:3,WebkitBoxOrient:"vertical",margin:0},a={padding:"8px 16px",fontSize:"12px",borderRadius:"6px",backgroundColor:this.props.dark?"#2a2a2a":"#f3f4f6",color:this.props.dark?"#888":"#374151",border:this.props.dark?"1px solid #3a3a3a":"1px solid #d1d5db",cursor:"pointer",transition:"background-color 150ms ease"},l={fontSize:"12px",color:"#888",margin:0},i=Ds.MAX_RETRIES-this.state.retryCount;return e.jsxs("div",{style:n,children:[e.jsxs("p",{style:s,children:[this.props.componentName||"Component"," failed to load"]}),this.state.error&&e.jsx("p",{style:r,children:this.state.error.message}),i>0?e.jsxs("button",{onClick:this.handleRetry,style:a,onMouseEnter:d=>{d.target.style.backgroundColor=this.props.dark?"#333":"#e5e7eb"},onMouseLeave:d=>{d.target.style.backgroundColor=this.props.dark?"#2a2a2a":"#f3f4f6"},children:["Try again (",i," left)"]}):e.jsx("p",{style:l,children:"Please refresh the page to try again"})]})}return this.props.children}};qo.MAX_RETRIES=3;let Ga=qo;const Ja=()=>{const[t,n]=o.useState("0"),[s,r]=o.useState(null);return{assetAmount:t,setAssetAmount:n,selectedAsset:s,setSelectedAsset:r}};function $a(t,n=0){const[s,r]=o.useState(n),a=t[s]??t[0],l=o.useMemo(()=>a?BigInt(Math.round(a.months*30*24*3600)):0n,[a?.months]);return{selectedDurationIdx:s,setSelectedDurationIdx:r,selectedDuration:a,durationSeconds:l}}function _a(){const{actions:t,isReady:n,isAuthenticated:s}=pn(),r=un(),a=o.useRef(!1),l=o.useRef(0),i=o.useRef(null),d=o.useRef(t),[c,h]=o.useState(0);d.current=t,o.useEffect(()=>{a.current=!1,l.current=0,i.current&&(clearTimeout(i.current),i.current=null)},[r]),o.useEffect(()=>{if(!r||!n||!s||a.current)return;a.current=!0;let u=!1;return(async()=>{await new Promise(f=>setTimeout(f,2e3));try{await K.relayerService.getWallet(r);return}catch{}try{const{unix_timestamp:f}=await K.relayerService.getRollupTimestamp(),g=`I am creating a new smart wallet and adding an admin wallet ethereum:0x${r.slice(2).toLowerCase()}. Nonce: ${f}`,p=await d.current.signMessage(g),y=typeof p=="string"?p:p.signature;await K.relayerService.createWallet(r,{timestamp:f,signature:y}),l.current=0}catch(f){console.warn("[SmartWallet] Registration failed:",f),a.current=!1,!u&&l.current<3&&(l.current+=1,i.current=setTimeout(()=>{h(g=>g+1)},5e3))}})(),()=>{u=!0,i.current&&(clearTimeout(i.current),i.current=null)}},[r,n,s,c])}function Hn(t){try{return V.resolveTokenRef(t)}catch{throw new K.SpiceflowError("ROUTE_TOKEN_NOT_FOUND",`Token "${t[0]}" not found on chain ${t[1]} in the token registry.`,{symbol:t[0],chainId:t[1]})}}function ei(t,n){if(t[0].toUpperCase()===n[0].toUpperCase()&&t[1]===n[1])return!0;let s,r;try{s=Hn(t),r=Hn(n)}catch{return!1}const a=new Set(V.getEquivalentAddresses(r.address).map(l=>l.toLowerCase()));return a.add(r.address.toLowerCase()),a.has(s.address.toLowerCase())}function ti(){const t=[];for(const n of Object.keys(V.CHAINS).map(Number))for(const s of V.getTokensForChain(n))t.push([s.symbol,n]);return t}async function ni(t){const{action:n,inputToken:s,inputAmount:r,registry:a,userAddress:l,slippage:i,intermediaryCandidates:d}=t;if(n.calls.length===0)throw new K.SpiceflowError("INVALID_PARAMS","buildIntent: action.calls must not be empty.",{action:n});if(r<=0n)throw new K.SpiceflowError("INVALID_PARAMS","buildIntent: inputAmount must be greater than zero.",{inputAmount:r.toString()});const c=n.supportedInputTokens??ti();if(!c.some(x=>ei(s,x))){const x=c.map(([k,U])=>`${k} (chain ${U})`).join(", ");throw new K.SpiceflowError("ROUTE_UNSUPPORTED_INPUT",`Input token "${s[0]}" on chain ${s[1]} is not in the action's supported input tokens. Supported: ${x}.`,{inputToken:{symbol:s[0],chainId:s[1]},supportedInputTokens:c})}const h=Hn(s),u=Hn(n.outputToken),f=go({sourceAsset:h,outputAsset:u,sourceChainId:h.chainId,destinationChainId:n.chainId,intermediaryCandidates:d}),{chainBatches:g,solverFrontToken:p,solverFrontAmount:y,resolvedSwaps:v}=await mo({route:f,sourceAmount:r,userAddress:l,registry:a,actionCalls:n.calls,slippage:i});return{chainBatches:g,route:f,resolvedSwaps:v,resolvedInputToken:h,resolvedOutputToken:u,solverFrontToken:p,solverFrontAmount:y}}const si=[0n,1n,30n],oi=new Set(["ABORT","CONCURRENT_EXECUTION","WALLET_DISCONNECTED","WALLET_REJECTED","NO_VENUE_FOR_CHAIN"]);function Yo(t,n){return n===0n?t:t*(1000n-n)/1000n}async function ri(t,n){const{chainId:s,swapCalls:r,quoteAmountOut:a,buildActionCalls:l,tokenAddress:i,tokenTransferAmount:d,onProgress:c,signal:h,options:u,buffers:f=si}=n;for(let g=0;g<f.length;g++){const p=f[g],y=Yo(a,p),v=l(y),x=[{chainId:s,calls:[...r,...v]}];try{return await t(x,i,d,c,h,u)}catch(k){if(K.isSpiceflowError(k)&&oi.has(k.code)||k.name==="AbortError"||h?.aborted||k.message?.includes("User rejected")||k.message?.includes("User denied")||k.code===4001||g>=f.length-1)throw k;const U=Number(f[g+1])/10;console.warn(`[SwapThenAction] Action attempt ${g+1} failed (buffer ${Number(p)/10}%), retrying with ${U}% buffer...`,k.message),c?.({step:"signing-delegation",message:`Adjusting action amount, retrying (${U}% buffer)...`})}}throw new K.SpiceflowError("ALL_ATTEMPTS_FAILED","All action attempts failed after exhausting buffer progression.",{attempts:f.length,chainId:s})}exports.SpiceFlowProvider=K.SpiceFlowProvider,exports.SpiceFlowProviderContext=K.SpiceFlowProviderContext,exports.SpiceflowError=K.SpiceflowError,exports.buildDarkPalette=K.buildDarkPalette,exports.buildLightPalette=K.buildLightPalette,exports.isSpiceflowError=K.isSpiceflowError,exports.relayerService=K.relayerService,exports.resolveTheme=K.resolveTheme,exports.useSpiceBrand=K.useSpiceBrand,exports.Spinner=Ge.Spinner,exports.getChainConfig=Q.getChainConfig,exports.getChainName=Q.getChainName,Object.defineProperty(exports,"ESCROW_ADDRESS",{enumerable:!0,get:function(){return V.ESCROW_ADDRESS}}),Object.defineProperty(exports,"NATIVE_TOKEN_ADDRESS",{enumerable:!0,get:function(){return V.ZERO_ADDRESS}}),Object.defineProperty(exports,"SPICENET_NATIVE_CHAIN_ID",{enumerable:!0,get:function(){return V.SPICENET_NATIVE_CHAIN_ID}}),Object.defineProperty(exports,"applySlippage",{enumerable:!0,get:function(){return V.applySlippage}}),Object.defineProperty(exports,"buildUniV3SwapCalls",{enumerable:!0,get:function(){return V.buildUniV3SwapCalls}}),Object.defineProperty(exports,"getChainIdsByNetwork",{enumerable:!0,get:function(){return V.getChainIdsByNetwork}}),Object.defineProperty(exports,"isNativeToken",{enumerable:!0,get:function(){return V.isNativeToken}}),Object.defineProperty(exports,"isSpicenetChainId",{enumerable:!0,get:function(){return V.isSpicenetChainId}}),Object.defineProperty(exports,"normalizeNativeTokenAddress",{enumerable:!0,get:function(){return V.normalizeNativeTokenAddress}}),exports.AccountDisplay=Xa,exports.AirdropModal=cr,exports.CloseIcon=Xn,exports.CrossChainDepositModal=Ar,exports.DepositWidget=Gs,exports.DepositWidgetModal=Ir,exports.ExportWalletButton=Oa,exports.LpModal=Ca,exports.ProviderLogin=vs,exports.SATSUMA_CITREA_CONFIG=Ts,exports.SdkErrorBoundary=Ga,exports.SelectChainModal=aa,exports.SpiceBalance=ga,exports.SpiceDeposit=uo,exports.SpiceLockModal=Ea,exports.SpicePay=Pa,exports.SpiceSupply=Vo,exports.SpiceWithdraw=wo,exports.StatusBanner=Xs,exports.Toast=ls,exports.UNIV3_BASE_CONFIG=No,exports.applyBuffer=Yo,exports.areEquivalentOnChains=fs,exports.buildIntent=ni,exports.buildRoutedBatches=mo,exports.create1inchVenue=Mo,exports.createLiquidityRegistry=Lo,exports.createSatsumaVenue=Wo,exports.executeSwapThenAction=ri,exports.findEquivalentOnChain=wn,exports.findTokenOnChain=Ss,exports.getAssetChainTokenCandidates=Jn,exports.getBestUniV3Quote=Fo,exports.getUniV3Quote=Bo,exports.isSwapIntent=To,exports.resolveAssetTokenAddressOnChain=bn,exports.resolveFundedToken=Ks,exports.resolveRoute=go,exports.resolveTokenRef=Hn,exports.spicenetAbi=As,exports.spicenetWithdrawalAbi=As,exports.useAssetInput=Ja,exports.useEmbeddedWalletAddress=un,exports.useGaslessExecution=os,exports.useLockDuration=$a,exports.useSmartWallet=_a,exports.useSpiceAssets=An,exports.useSpiceExecution=os,exports.useSpicePendingDeposits=Qo,exports.useWallet=pn;