@fangorn-network/westmarch 0.0.20-dev → 2026.10.2-2.0-dev
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/README.md +33 -3
- package/docs/app-to-agent.md +117 -60
- package/package.json +10 -5
- package/plugin/scripts/fx.mjs +7 -9
- package/site/dist/assets/{AccountNotFoundScreen-C4njXc69-BOfmiSH1.js → AccountNotFoundScreen-C4njXc69-DyVH4CEz.js} +1 -1
- package/site/dist/assets/{AddFundsSelectionScreen-RAoCn7ej-D_EsIeJu.js → AddFundsSelectionScreen-RAoCn7ej-Dz1--SS9.js} +1 -1
- package/site/dist/assets/{Address-H8kD1d9O-C85sJ79B.js → Address-H8kD1d9O-BdFZmRwI.js} +1 -1
- package/site/dist/assets/{AffirmativeConsentScreen-BG0MJxku-DdEPFOww.js → AffirmativeConsentScreen-BG0MJxku-CxaCAisL.js} +1 -1
- package/site/dist/assets/{AllowlistRejectionScreen-Cae6e1Od-DhVy9iGN.js → AllowlistRejectionScreen-Cae6e1Od-JGk7vndN.js} +1 -1
- package/site/dist/assets/{ApiController-CYdiyu9B.js → ApiController-CTLbMCcH.js} +4 -4
- package/site/dist/assets/{ArrowsRightLeftIcon-cp60yobq.js → ArrowsRightLeftIcon-B8g9adpz.js} +1 -1
- package/site/dist/assets/{AuthenticateWithWalletScreen-CU6hIcFT-8rbYiYYE.js → AuthenticateWithWalletScreen-CU6hIcFT-CXD9_OP8.js} +1 -1
- package/site/dist/assets/{AwaitingEvmToSolBridgingScreen-D0e_sZMS-2pkNfCno.js → AwaitingEvmToSolBridgingScreen-D0e_sZMS-BtJCglvU.js} +1 -1
- package/site/dist/assets/{AwaitingExternalEthereumTransferScreen-ur5HL4R7-7AQt25_k.js → AwaitingExternalEthereumTransferScreen-ur5HL4R7-BgC2TsqH.js} +1 -1
- package/site/dist/assets/{AwaitingPasswordlessCodeScreen-DRHz76mM-BZY30TGs.js → AwaitingPasswordlessCodeScreen-DRHz76mM-B9OzLeEO.js} +1 -1
- package/site/dist/assets/{AwaitingSolToEvmBridgingScreen-CdLRrGD2-BILOOLi_.js → AwaitingSolToEvmBridgingScreen-CdLRrGD2-C7r5snUL.js} +1 -1
- package/site/dist/assets/BridgeNetworkSelectionView-CFGjB2nO-BTV0NRio.js +68 -0
- package/site/dist/assets/{CaptchaScreen-DbpvkIGx-D8eDcAkc.js → CaptchaScreen-DbpvkIGx-7rSZIuM-.js} +1 -1
- package/site/dist/assets/{CheckCircleIcon-NCOQc0Gs.js → CheckCircleIcon-B1l17ioc.js} +1 -1
- package/site/dist/assets/{CheckCircleIcon-BM409mGI.js → CheckCircleIcon-BGSI8nKf.js} +1 -1
- package/site/dist/assets/{Checkbox-D1EDeo41-rHlvsZzP.js → Checkbox-D1EDeo41-BUfq0w99.js} +1 -1
- package/site/dist/assets/{ChevronDownIcon-CW-4MSpE.js → ChevronDownIcon-B6uJvPHu.js} +1 -1
- package/site/dist/assets/{Chip-CZKIKt9K-CutJG010.js → Chip-CZKIKt9K-r9Nk__0-.js} +1 -1
- package/site/dist/assets/{CoinbaseOnrampStatusScreen-BbyCJDXL-DLs9zX-Q.js → CoinbaseOnrampStatusScreen-BbyCJDXL-DWWNHxmR.js} +1 -1
- package/site/dist/assets/{ConnectEmailForm-B-VRE0MN-N9J6T_YL.js → ConnectEmailForm-B-VRE0MN-CRQwS0Xu.js} +1 -1
- package/site/dist/assets/{ConnectLedgerScreen-DWHABGot-h0uYIUi6.js → ConnectLedgerScreen-DWHABGot-CZcCt31O.js} +1 -1
- package/site/dist/assets/{ConnectOnlyLandingScreen-CZYx9Bmp-LeuDMN1E.js → ConnectOnlyLandingScreen-CZYx9Bmp-C5IOf-SQ.js} +1 -1
- package/site/dist/assets/{ConnectOnlyStatusScreen-DCRzjxHx-DaRa59tZ.js → ConnectOnlyStatusScreen-DCRzjxHx-cwg74F3A.js} +1 -1
- package/site/dist/assets/ConnectOrCreateScreen-CUUYUO07-D28oeK6b.js +1 -0
- package/site/dist/assets/{ConnectPhoneForm-Dek5xn4C-BEA4FmhI.js → ConnectPhoneForm-Dek5xn4C-EEdkKeTp.js} +1 -1
- package/site/dist/assets/ConnectWalletView-DqI-PTvX-C2mEzukj.js +74 -0
- package/site/dist/assets/{ConnectionStatusScreen-fUfROm9m-BeWLchcf.js → ConnectionStatusScreen-fUfROm9m-CH_7r8iV.js} +1 -1
- package/site/dist/assets/ConnectionStatusScreen-fUfROm9m-Z33kis0B.js +1 -0
- package/site/dist/assets/{ConnectorUtil-Cq4lWnfe.js → ConnectorUtil-DH4NePk5.js} +1 -1
- package/site/dist/assets/{CopyToClipboard-i_OQSBJr-DujUHNzW.js → CopyToClipboard-i_OQSBJr-_G88JCVR.js} +1 -1
- package/site/dist/assets/{CopyableText-CQapvaMr-DMIdpDaU.js → CopyableText-CQapvaMr-CGGfc_zM.js} +1 -1
- package/site/dist/assets/{CrossAppAuthScreen-CLw7ymZq-Csju14vF.js → CrossAppAuthScreen-CLw7ymZq-C9Okoc0V.js} +1 -1
- package/site/dist/assets/{CustomLandingScreenView-Cm_MBSyX-CBOrbNLo.js → CustomLandingScreenView-Cm_MBSyX-D2l6hdSl.js} +1 -1
- package/site/dist/assets/{DelegatedActionsConsentScreen-DYF2U4y5-BL5hzNUI.js → DelegatedActionsConsentScreen-DYF2U4y5-Dda3KKqS.js} +1 -1
- package/site/dist/assets/{DelegatedActionsRevokeScreen-bPp6Uwyh-fcO51q5H.js → DelegatedActionsRevokeScreen-bPp6Uwyh-DG8kJPt1.js} +1 -1
- package/site/dist/assets/{DepositAddressAddressStepView-4vdkb55L-B3vY888G.js → DepositAddressAddressStepView-4vdkb55L-CcOUfn6f.js} +1 -1
- package/site/dist/assets/{DepositAddressScreen-DBLRs7aI-DmdQaFI2.js → DepositAddressScreen-DBLRs7aI-DeituDNh.js} +1 -1
- package/site/dist/assets/{DepositAddressV3Screen-CDqIEMQw-BoupRyfV.js → DepositAddressV3Screen-CDqIEMQw-FDg6K14-.js} +1 -1
- package/site/dist/assets/{EmailInputForm-Cqo1mda8-B2NG3K5V.js → EmailInputForm-Cqo1mda8-BmbxvPHC.js} +1 -1
- package/site/dist/assets/{EmbeddedWalletConnectingScreen-D4T7DUzs-D_AVgO4s.js → EmbeddedWalletConnectingScreen-D4T7DUzs-B05CQ9rx.js} +1 -1
- package/site/dist/assets/{EmbeddedWalletCreatedScreen-D7WhW5ve-CLsJbPYQ.js → EmbeddedWalletCreatedScreen-D7WhW5ve-Cxd1b9XH.js} +1 -1
- package/site/dist/assets/{EmbeddedWalletKeyExportScreen-CqV4NYQ3-C9sAExzE.js → EmbeddedWalletKeyExportScreen-CqV4NYQ3-CrJy0ViX.js} +1 -1
- package/site/dist/assets/{EmbeddedWalletOnAccountCreateScreen-BoKb3Q2S-DxaWAAKa.js → EmbeddedWalletOnAccountCreateScreen-BoKb3Q2S-Bakaa3zu.js} +1 -1
- package/site/dist/assets/{EmbeddedWalletPasswordUpdateScreen-D3rMlqS7-CxrfLr5q.js → EmbeddedWalletPasswordUpdateScreen-D3rMlqS7-j78vKrcj.js} +1 -1
- package/site/dist/assets/{EmbeddedWalletPasswordUpdateSplashScreen-BPFkWJeE-DHZRGoTN.js → EmbeddedWalletPasswordUpdateSplashScreen-BPFkWJeE-D3dr7W9_.js} +1 -1
- package/site/dist/assets/{EnrollTotp-Dibew4dp-SA2pvNEc.js → EnrollTotp-Dibew4dp-BXbYV8nI.js} +1 -1
- package/site/dist/assets/{EnvelopeIcon-Dh2vSVj4.js → EnvelopeIcon-DjPofnRI.js} +1 -1
- package/site/dist/assets/{ErrorBanner-BcpGRt0h-BKOYTyCi.js → ErrorBanner-BcpGRt0h-BhH6_V-9.js} +1 -1
- package/site/dist/assets/{ErrorMessage-D8VaAP5m-CrZOnUyg.js → ErrorMessage-D8VaAP5m-Bs7uX2a9.js} +1 -1
- package/site/dist/assets/{ErrorScreen-DipdTWzE-c8g8En21.js → ErrorScreen-DipdTWzE-BgPRgnOb.js} +1 -1
- package/site/dist/assets/ErrorScreen-DipdTWzE-CvxXC6pz.js +1 -0
- package/site/dist/assets/{ExclamationCircleIcon-DUA2wMfO.js → ExclamationCircleIcon-BE-WGrut.js} +1 -1
- package/site/dist/assets/{ExclamationTriangleIcon-eZfaqcFq.js → ExclamationTriangleIcon-Ca1Xlc_f.js} +1 -1
- package/site/dist/assets/{FarcasterConnectStatusScreen-51tjUxqq-s_s5M2CZ.js → FarcasterConnectStatusScreen-51tjUxqq-De2JvZdV.js} +1 -1
- package/site/dist/assets/{FarcasterSignerStatusScreen-6x-Uh95G-BHBR4k8H.js → FarcasterSignerStatusScreen-6x-Uh95G-bLp3hXoO.js} +1 -1
- package/site/dist/assets/FiatOnrampScreen-BAhYeiTI-Jr6D6JiZ.js +491 -0
- package/site/dist/assets/{FingerPrintIcon-Dm6kxmg7.js → FingerPrintIcon-DOCbS93y.js} +1 -1
- package/site/dist/assets/{FundSolWalletWithExternalSolanaWallet-WtLwYaOl-B8TRV36j.js → FundSolWalletWithExternalSolanaWallet-WtLwYaOl-A_G5kfa1.js} +1 -1
- package/site/dist/assets/{FundWalletMethodHeader-BWNkokCT-BQdbJ5Bb.js → FundWalletMethodHeader-BWNkokCT-LPv35wkD.js} +1 -1
- package/site/dist/assets/{FundWithBankDepositScreen-DajkHxBD-9rPtyA3d.js → FundWithBankDepositScreen-DajkHxBD-0hfGrfvf.js} +1 -1
- package/site/dist/assets/{FundingEditAmountScreen-CpvpiO4M-GaXigGI9.js → FundingEditAmountScreen-CpvpiO4M-Dz0s_NWR.js} +1 -1
- package/site/dist/assets/{FundingMethodSelectionScreen-Db7vhRlE-UsmtTqv4.js → FundingMethodSelectionScreen-Db7vhRlE-ZGm-3-Io.js} +1 -1
- package/site/dist/assets/{GlobeAltIcon-vqrVV5ho.js → GlobeAltIcon-BBRl2MMn.js} +1 -1
- package/site/dist/assets/{GooglePay-B53WnudL-BX5_WtCx.js → GooglePay-B53WnudL-BGiVpB8y.js} +1 -1
- package/site/dist/assets/{HCaptchaWrapper-CUi9LJsp-D-I8j7NO.js → HCaptchaWrapper-CUi9LJsp-CHdfIeD_.js} +3 -3
- package/site/dist/assets/{InAppBrowserLoginNotPossible-BMR9br1T-BY3j50El.js → InAppBrowserLoginNotPossible-BMR9br1T-Cgoiow3m.js} +1 -1
- package/site/dist/assets/{InfoBanner-Cb3p1z12-DLBl_Ywy.js → InfoBanner-Cb3p1z12-_YqQmRiu.js} +1 -1
- package/site/dist/assets/{InjectedWalletIcon-DLcYOGDj-DLSV_NjP.js → InjectedWalletIcon-DLcYOGDj-tuIrKQHH.js} +1 -1
- package/site/dist/assets/{InstallWalletScreen-DTA8dwLv-CxreyXoD.js → InstallWalletScreen-DTA8dwLv-BMU_wa61.js} +1 -1
- package/site/dist/assets/{JsonTree-BHzNC-ic-DcNcbSoM.js → JsonTree-BHzNC-ic-DcVr0YF0.js} +1 -1
- package/site/dist/assets/{LabelXs-oqZNqbm_-iafrj25N.js → LabelXs-oqZNqbm_-CNprGVQM.js} +1 -1
- package/site/dist/assets/LandingScreen-CGWUoSUG-fH6rsQen.js +1 -0
- package/site/dist/assets/{Layouts-BMRfo5hw-CeCOyCLK.js → Layouts-BMRfo5hw-e-sepi6F.js} +1 -1
- package/site/dist/assets/{Link-BdDilT2T-BEDEdHuS.js → Link-BdDilT2T-BdwlRJch.js} +1 -1
- package/site/dist/assets/{LinkConflictScreen-C3ZEPsgl-ClWoqvEL.js → LinkConflictScreen-C3ZEPsgl-BXKN2Qm5.js} +1 -1
- package/site/dist/assets/LinkEmailScreen-dKo9frwc-Cyn7Q8p1.js +1 -0
- package/site/dist/assets/{LinkPasskeyScreen-zbrl_AI_-D72Gb0LW.js → LinkPasskeyScreen-zbrl_AI_-CWiqnwLM.js} +1 -1
- package/site/dist/assets/LinkPasskeyScreen-zbrl_AI_-YmDevJzf.js +1 -0
- package/site/dist/assets/{LinkPhoneScreen-oIUpfj0w-C0DuD14j.js → LinkPhoneScreen-oIUpfj0w-h7shW-Ay.js} +1 -1
- package/site/dist/assets/{Loader-UAZqxsnw-Cy7hEE2f.js → Loader-UAZqxsnw-DJEVblm1.js} +1 -1
- package/site/dist/assets/{LoadingSkeleton-BMsgO5PV-CiEyS5PZ.js → LoadingSkeleton-BMsgO5PV-D2atjsP5.js} +1 -1
- package/site/dist/assets/{LockClosedIcon-BgY_5v_Z.js → LockClosedIcon-9EFzWK1C.js} +1 -1
- package/site/dist/assets/{LoginFailedScreen-CN0dJV6U-DhUMiJZJ.js → LoginFailedScreen-CN0dJV6U-By3Si77a.js} +1 -1
- package/site/dist/assets/{ManualTransferScreen-CHqcuqbs-tXiZDHmN.js → ManualTransferScreen-CHqcuqbs-BAHPY8rs.js} +1 -1
- package/site/dist/assets/{MfaAuthEnrollmentFlowScreen-Dj7gPTRC-CaW7xeCC.js → MfaAuthEnrollmentFlowScreen-Dj7gPTRC-CLjffFG1.js} +1 -1
- package/site/dist/assets/{MfaAuthVerifyFlowScreen-DbFpyWMy-CeRqvx8k.js → MfaAuthVerifyFlowScreen-DbFpyWMy-BmQg1Y61.js} +1 -1
- package/site/dist/assets/{MfaEnrollmentFlowScreen-DhLnGgnr-BkN1k4lh.js → MfaEnrollmentFlowScreen-DhLnGgnr-DmBtTtlw.js} +1 -1
- package/site/dist/assets/{MfaVerifyFlowScreen-C_XPjMRP-CXSqLVbE.js → MfaVerifyFlowScreen-C_XPjMRP-4a683Bmf.js} +1 -1
- package/site/dist/assets/{ModalFooter-BCuEK_nz-c-khvG4Y.js → ModalFooter-BCuEK_nz-C_71qsaz.js} +1 -1
- package/site/dist/assets/{MoonpayStatusScreen-CzTUtokc-BRFN2eXr.js → MoonpayStatusScreen-CzTUtokc-DEHHcEf8.js} +1 -1
- package/site/dist/assets/{OAuthStatusScreen-ufbOa-da-CeiGcSia.js → OAuthStatusScreen-ufbOa-da-BjAb_WsY.js} +1 -1
- package/site/dist/assets/{OpenLink-CUpJ1mOr-DfAvJRyK.js → OpenLink-CUpJ1mOr-BLWFsPOW.js} +1 -1
- package/site/dist/assets/{PasskeySelectSignupOrLogin-xh2ScC_l-CIf5I7wU.js → PasskeySelectSignupOrLogin-xh2ScC_l-2PJTJxX-.js} +1 -1
- package/site/dist/assets/{PasskeyStatusScreen-Bla8MaOk-CLoL7QC-.js → PasskeyStatusScreen-Bla8MaOk-DCEg761l.js} +1 -1
- package/site/dist/assets/{PasswordRecoveryScreen-awGXZkQk-B9F67IYV.js → PasswordRecoveryScreen-awGXZkQk-8nVjNc8k.js} +1 -1
- package/site/dist/assets/{PhoneIcon-CvIiPwYQ.js → PhoneIcon-CZ47md80.js} +1 -1
- package/site/dist/assets/{PinInput-DbZ0b1i1-CDXZBdQx.js → PinInput-DbZ0b1i1-BrTXu3Km.js} +1 -1
- package/site/dist/assets/{PrivyPluginContext-DA-yS5vO-CtQWBiV2.js → PrivyPluginContext-DA-yS5vO-CY60yubk.js} +1 -1
- package/site/dist/assets/{QrCode-DbnZwlkH-h6Bhoe5U.js → QrCode-DbnZwlkH-CcMrWV5D.js} +2 -2
- package/site/dist/assets/{RecoveryOAuthStatusScreen-CsgtTI2x-D-A5P3PX.js → RecoveryOAuthStatusScreen-CsgtTI2x-DgeDnHOK.js} +1 -1
- package/site/dist/assets/{RecoveryPasswordCreateScreen-Be-qJ-LU-C8lTSeSr.js → RecoveryPasswordCreateScreen-Be-qJ-LU-CvJJwLhK.js} +1 -1
- package/site/dist/assets/{RecoverySelectionScreen-D1iGtpmi-P5P3plkH.js → RecoverySelectionScreen-D1iGtpmi-CADtGtSV.js} +1 -1
- package/site/dist/assets/{SIWXUtil-TUCxa7aA.js → SIWXUtil-Cpiv91-M.js} +1 -1
- package/site/dist/assets/{Screen-D30meWsY-CCeVNuWs.js → Screen-D30meWsY-vEusJ7KX.js} +1 -1
- package/site/dist/assets/{ScreenHeader-CHmc4-Lu-DjyrH7IK.js → ScreenHeader-CHmc4-Lu-BvGTLg53.js} +1 -1
- package/site/dist/assets/{ScreenLayout-OwaQQcxH-CrQM6kvA.js → ScreenLayout-OwaQQcxH-cfOTmyl0.js} +1 -1
- package/site/dist/assets/{SelectSourceAsset-CWFog6gm-D7yTw87h.js → SelectSourceAsset-CWFog6gm-DxYklZYs.js} +1 -1
- package/site/dist/assets/{SetAutomaticRecoveryScreen-BO_OEqAZ-f0iDIGmw.js → SetAutomaticRecoveryScreen-BO_OEqAZ-oeqeo05x.js} +1 -1
- package/site/dist/assets/{SetWalletPasswordForm-DwCTVtAh-kq1zvA7d.js → SetWalletPasswordForm-DwCTVtAh-BxFee9UA.js} +1 -1
- package/site/dist/assets/{ShieldCheckIcon-o6RHYev1.js → ShieldCheckIcon-eFjsosCA.js} +1 -1
- package/site/dist/assets/{SignRequestScreen-BHKv32KR-DDpMYyJ1.js → SignRequestScreen-BHKv32KR-z8ixfIma.js} +1 -1
- package/site/dist/assets/{SolanaWalletConnector-C7Lqk-Wz-DPwhuzcI.js → SolanaWalletConnector-C7Lqk-Wz-Bc_lvdiF.js} +1 -1
- package/site/dist/assets/{StackedContainer-B2vaEl56-eQCM2cmv.js → StackedContainer-B2vaEl56-Do5dXB8-.js} +1 -1
- package/site/dist/assets/{StandardSignAndSendTransactionScreen-CfhIXVtd-BJ-onCjv.js → StandardSignAndSendTransactionScreen-CfhIXVtd-DudetZAc.js} +1 -1
- package/site/dist/assets/{Subtitle-CV-2yKE4-zxWw2m1Q.js → Subtitle-CV-2yKE4-DV0o1av3.js} +1 -1
- package/site/dist/assets/{TelegramAuthScreen-UL9zLfO8-NWlMgNRX.js → TelegramAuthScreen-UL9zLfO8-Bo3sONvf.js} +1 -1
- package/site/dist/assets/{Title-BnzYV3Is-B_JpTatT.js → Title-BnzYV3Is-C3qOPnO_.js} +1 -1
- package/site/dist/assets/{TodoList-DnyULl18-C8Eyy28X.js → TodoList-DnyULl18-BvxvubbF.js} +1 -1
- package/site/dist/assets/{TransactionDetails-e9nesl30-C4MpIHR-.js → TransactionDetails-e9nesl30-WWflkOIi.js} +1 -1
- package/site/dist/assets/{TransactionErrorView-BDBNqA_f-p1T9WVMx.js → TransactionErrorView-BDBNqA_f-CotYKcgf.js} +1 -1
- package/site/dist/assets/{TransferFromWalletScreen-Qvn1Yuno-88IQcRnY.js → TransferFromWalletScreen-Qvn1Yuno-sVFlWqa8.js} +1 -1
- package/site/dist/assets/{TransferOrBridgeLoadingScreen-Dl1I_iIz-1fDAIxAf.js → TransferOrBridgeLoadingScreen-Dl1I_iIz-CV2-mY19.js} +1 -1
- package/site/dist/assets/{TurnstileWrapper-B7sNddys-Jwy1tJtm.js → TurnstileWrapper-B7sNddys-oPbuMTQt.js} +1 -1
- package/site/dist/assets/{UpdateEmailScreen-DVOhPV0H-Jj2DQW8D.js → UpdateEmailScreen-DVOhPV0H-D_mjSpAy.js} +1 -1
- package/site/dist/assets/{UpdatePhoneScreen-CXRswTNZ-DwYIUBqi.js → UpdatePhoneScreen-CXRswTNZ-6RLG0ahv.js} +1 -1
- package/site/dist/assets/{UserLimitReachedScreen-5we2DHn8-D7m70C4b.js → UserLimitReachedScreen-5we2DHn8-CaVN0bti.js} +1 -1
- package/site/dist/assets/{Value-DTgR824E-BRuIGiec.js → Value-DTgR824E-Bp6WGZZm.js} +1 -1
- package/site/dist/assets/{WalletCards-DH1rqayz-Bgp9Fsgs.js → WalletCards-DH1rqayz-D3cOTb9x.js} +1 -1
- package/site/dist/assets/{WalletIcon-gKf0gTw6.js → WalletIcon-DOIZhb2l.js} +1 -1
- package/site/dist/assets/{WalletInfoCard-sq_2wgFg-DpNSAGte.js → WalletInfoCard-sq_2wgFg-bOqfl5MA.js} +1 -1
- package/site/dist/assets/{WalletInterstitialScreen-Sh7LfsAh-DG-RuO-F.js → WalletInterstitialScreen-Sh7LfsAh-DWaVkMCA.js} +1 -1
- package/site/dist/assets/{WalletLink-DK5LB5Ha-DHaL350n.js → WalletLink-DK5LB5Ha-DjUZvqs-.js} +1 -1
- package/site/dist/assets/WalletOverflowButton-bfCnp-9T-B6P7DQXA.js +1 -0
- package/site/dist/assets/{WarningBanner-ZZqCEtZK-2eU4Qo74.js → WarningBanner-ZZqCEtZK-Bc2YKZb7.js} +1 -1
- package/site/dist/assets/__vite-browser-external-NciY4Vu1.js +1 -0
- package/site/dist/assets/{_esm-BdeM6pxJ.js → _esm-BZP3cXTv.js} +1 -1
- package/site/dist/assets/_esm-ZmzBJpEs.js +6 -0
- package/site/dist/assets/{accounts-D96UKWkC.js → accounts-D4AXF17G.js} +1 -1
- package/site/dist/assets/accounts-IkdFx9nq.js +1 -0
- package/site/dist/assets/{baseSepolia-DX-qGsik.js → baseSepolia-Bn1j1Ysw.js} +1 -1
- package/site/dist/assets/{basic-oIwwSyu4.js → basic-Cz1YiCSk.js} +4 -4
- package/site/dist/assets/{ccip-BZvRTL6g.js → ccip-B1J3oTZx.js} +2 -2
- package/site/dist/assets/ccip-Bd7261zy.js +1 -0
- package/site/dist/assets/{ccip-65sIfSPR.js → ccip-D6EHKpjI.js} +1 -1
- package/site/dist/assets/{chain-DM3oH6Px.js → chain-scefkYIH.js} +3 -6
- package/site/dist/assets/check-DHnllI8N.js +1 -0
- package/site/dist/assets/{chevron-down-BSsbXkK-.js → chevron-down-1y-r4bGO.js} +1 -1
- package/site/dist/assets/{circle-alert-DWaeLZNj.js → circle-alert-OwxamXUX.js} +1 -1
- package/site/dist/assets/{circle-check-big-Chb1ivw9.js → circle-check-big-3sZGVC10.js} +1 -1
- package/site/dist/assets/{circle-x-AV9Cet0R.js → circle-x-DQjNUV9J.js} +1 -1
- package/site/dist/assets/client-B-BpRtwY.js +1 -0
- package/site/dist/assets/client-BfIR1FvH.js +9 -0
- package/site/dist/assets/coinbase-DCPC2L_R-YEuIn3jh.js +3 -0
- package/site/dist/assets/{copy-Ckr0AkL6.js → copy-DMOX_yn7.js} +1 -1
- package/site/dist/assets/core-GIEmxmAa.js +12 -0
- package/site/dist/assets/{createLucideIcon-IPW50ckY.js → createLucideIcon-BsERoFTA.js} +1 -1
- package/site/dist/assets/{defineChain-CiuCXUZW.js → defineChain-B-SQDLTG.js} +1 -1
- package/site/dist/assets/{dijkstra-Drfl93V4.js → dijkstra-CY95afk4.js} +1 -1
- package/site/dist/assets/dist-Cp6IXeJd.js +1 -0
- package/site/dist/assets/{dist-Cm7pNAtL.js → dist-CrNxmdZj.js} +1 -1
- package/site/dist/assets/{dist-DnGANz51.js → dist-DYGtf4F0.js} +4 -4
- package/site/dist/assets/embed.worker-Cnl4VGr3.js +1 -0
- package/site/dist/assets/{errors-BQ3N-RVt-BLqjTPNR.js → errors-BQ3N-RVt-CZPAWCgC.js} +1 -1
- package/site/dist/assets/{esm-B5cbIQaz.js → esm-Co94ENUV.js} +17 -17
- package/site/dist/assets/{esm-ByALO6mA.js → esm-bb8SANZh.js} +1 -1
- package/site/dist/assets/{ethers-zTjbodk5-wHhL_BQ1.js → ethers-zTjbodk5-Cs648CnD.js} +1 -1
- package/site/dist/assets/{eventemitter3-CL76jPsW.js → eventemitter3-Dzc_0Uq2.js} +1 -1
- package/site/dist/assets/{external-link-D-uehwM2.js → external-link-BBPG3rG7.js} +1 -1
- package/site/dist/assets/{farcaster-DPlSjvF5-BqTvDXBR.js → farcaster-DPlSjvF5-CzBCmgyL.js} +1 -1
- package/site/dist/assets/{features-DQ0UYy6K.js → features-CuiHbgEJ.js} +1 -1
- package/site/dist/assets/{fingerprint-pattern-D8ytA16Q.js → fingerprint-pattern-CjLtyIxB.js} +1 -1
- package/site/dist/assets/floating-ui.react-DmaCfayr.js +1 -0
- package/site/dist/assets/{floating-ui.react-dom-DKWOL9UG.js → floating-ui.react-dom-CaoMF8mP.js} +1 -1
- package/site/dist/assets/{get-entropy-details-for-user-dHRH5Gpi-Dukf7_kJ.js → get-entropy-details-for-user-dHRH5Gpi-BNiOFXbK.js} +1 -1
- package/site/dist/assets/{getErc20Balance-jXNpFf0N-Bb9WM31M.js → getErc20Balance-jXNpFf0N-q4bV8kQq.js} +1 -1
- package/site/dist/assets/{getErc20TokenInfo-BNTrzLMP-KPrdn04K.js → getErc20TokenInfo-BNTrzLMP-DcnTFrXN.js} +1 -1
- package/site/dist/assets/{guards-BIW-GiMJ-CHfXo8XI.js → guards-BIW-GiMJ-D3tWTQAR.js} +1 -1
- package/site/dist/assets/{hourglass-CPG1HZmf.js → hourglass-D_GfQdJr.js} +1 -1
- package/site/dist/assets/{id-UqEwL2BI-BkKm533U.js → id-UqEwL2BI-CTlvRMA5.js} +1 -1
- package/site/dist/assets/{index-BdEw5wyl-ChSJvPZk.js → index-BdEw5wyl-kLbhqLbv.js} +1 -1
- package/site/dist/assets/index-C2h3EneX.js +8 -0
- package/site/dist/assets/{index-CWARkn2w-Cezl_uBr.js → index-CWARkn2w-DxuckIFn.js} +1 -1
- package/site/dist/assets/{index-DvMddJcd-BatvgC-S.js → index-DvMddJcd-CNBb4VUn.js} +1 -1
- package/site/dist/assets/{index-YiCw0Y_x-CX5i3Z87.js → index-YiCw0Y_x-Czl0tWfF.js} +5 -6
- package/site/dist/assets/{index.es-BmqyoBEM.js → index.es-Crd0TyUS.js} +1 -1
- package/site/dist/assets/index.es-DQbup1WG.js +3 -0
- package/site/dist/assets/{isPaymentRequestAvailable-Bq1cemEn-By6r0dVB.js → isPaymentRequestAvailable-Bq1cemEn-Cjf3l05I.js} +1 -1
- package/site/dist/assets/{jsx-runtime-BbDfbRii.js → jsx-runtime-CndCZlyt.js} +1 -1
- package/site/dist/assets/{landmark-CH6LV6F0.js → landmark-BZPqMFEf.js} +1 -1
- package/site/dist/assets/lib-DGtzi2DK.js +1 -0
- package/site/dist/assets/{localBatchGatewayRequest-3kLrX_c7.js → localBatchGatewayRequest-B71J8sQ9.js} +7 -10
- package/site/dist/assets/{lock-DcskI4Bb.js → lock-DyN_c-ud.js} +1 -1
- package/site/dist/assets/{mail-Bs0r5yOi.js → mail-V_mcPb64.js} +1 -1
- package/site/dist/assets/{modal-context-CwmSeFcv-DruX9J1E.js → modal-context-CwmSeFcv-DPWNJrfK.js} +1 -1
- package/site/dist/assets/{ofetch.CWycOUEr-CHp-crOQ.js → ofetch.CWycOUEr-Duby3iHT.js} +1 -1
- package/site/dist/assets/parseEther-CHS0GNkM.js +1 -0
- package/site/dist/assets/{pkce-DXF0yKjP-ChQhE0st.js → pkce-DXF0yKjP-7_VY-d83.js} +1 -1
- package/site/dist/assets/preload-helper-CRzLMJPS.js +1 -0
- package/site/dist/assets/{privy-context-81KmsBw2-CjWGzyg7.js → privy-context-81KmsBw2-DiR6-Yq8.js} +1 -1
- package/site/dist/assets/{react-DrJ0MmMO.js → react-BfYA1q0G.js} +1 -1
- package/site/dist/assets/react-CK2HRI1t.js +1 -0
- package/site/dist/assets/{react-DQnMl2Xv.js → react-DxGeY8B8.js} +1 -1
- package/site/dist/assets/{react-dom-5dW7aKoP.js → react-dom-BI2Koe4o.js} +1 -1
- package/site/dist/assets/{reservoir-x-nGuZkT-BMX127i6.js → reservoir-x-nGuZkT-BguVFH3D.js} +1 -1
- package/site/dist/assets/roles-BDPDWrwo.js +1 -0
- package/site/dist/assets/rolldown-runtime-Bjp52BOI.js +1 -0
- package/site/dist/assets/secp256k1-BeYL8aZl.js +1 -0
- package/site/dist/assets/{secp256k1-_MleGpqL.js → secp256k1-Bh4MSkhz.js} +1 -1
- package/site/dist/assets/secp256k1-Ci4cqHl0.js +1 -0
- package/site/dist/assets/secp256k1-DsxXqbXv.js +1 -0
- package/site/dist/assets/secp256k1-N9RUmafO.js +1 -0
- package/site/dist/assets/{serializeAuthorizationList-CX8hGL56.js → serializeAuthorizationList-DGMik9Wx.js} +1 -1
- package/site/dist/assets/{serializeSignature-DfxkPnu-.js → serializeSignature-CWKpxoab.js} +1 -1
- package/site/dist/assets/sha2-C6s7zZmb.js +1 -0
- package/site/dist/assets/{shared-DRZUmnL5-xqAUARWo.js → shared-DRZUmnL5-BewE5wK8.js} +1 -1
- package/site/dist/assets/{shared-FM0rljBt--Avg6q2R.js → shared-FM0rljBt-CxLACri_.js} +1 -1
- package/site/dist/assets/shouldProceedtoEmbeddedWalletCreationFlow-B3vyavrh-BkAKsRNi.js +1 -0
- package/site/dist/assets/{simulateTransaction-CfuOrae4-64lWYJAL.js → simulateTransaction-CfuOrae4-PjA_tGjX.js} +1 -1
- package/site/dist/assets/{smartphone-CcEZ-XAy.js → smartphone-3p8nFSTE.js} +1 -1
- package/site/dist/assets/{storage-Ufl800Ne-D0bZBw-H.js → storage-Ufl800Ne-1qCR2JMO.js} +7 -8
- package/site/dist/assets/{stringify-BlDm7tuc.js → stringify-DqUj9VzO.js} +2 -3
- package/site/dist/assets/stripe.esm-DEi2D291.js +2 -0
- package/site/dist/assets/{styles-BsotlekN-CXEB4Ud9.js → styles-BsotlekN-Aq27nZGc.js} +1 -1
- package/site/dist/assets/{styles-Cm9H63WO-Br4QtzUL.js → styles-Cm9H63WO-p_ic_dxE.js} +1 -1
- package/site/dist/assets/{styles-DVyDvTdj-BTABn2K8.js → styles-DVyDvTdj-CjsWqAld.js} +1 -1
- package/site/dist/assets/{styles-hslXy6xG-D-49b1rk.js → styles-hslXy6xG-D5QHIrJU.js} +1 -1
- package/site/dist/assets/{telegram-B-JqnkqZ-RBoY3PLx.js → telegram-B-JqnkqZ-Dqkm4rDn.js} +1 -1
- package/site/dist/assets/{to-ui-error-DWe-qwS3-Cx2bk1kZ.js → to-ui-error-DWe-qwS3-Bi1HUQI9.js} +1 -1
- package/site/dist/assets/toViemAccount-B5iDGq1b-CdFZwv07.js +2 -0
- package/site/dist/assets/transformers.web-BTyOEJ0C.js +40 -0
- package/site/dist/assets/transformers.web-CUZUFjAK.js +49 -0
- package/site/dist/assets/{triangle-alert-CWjYH75H.js → triangle-alert-BG3Qw-Hq.js} +1 -1
- package/site/dist/assets/{twitch-5IOe4sIQ-lDtgk0os.js → twitch-5IOe4sIQ-CaXHFlAu.js} +1 -1
- package/site/dist/assets/{use-headless-crypto-deposit-Yn-QRLB3-LUIVFBSd.js → use-headless-crypto-deposit-Yn-QRLB3-CQqeyhGY.js} +1 -1
- package/site/dist/assets/{use-unlink-wallet-BKK4_5Ur-CC2pq27z.js → use-unlink-wallet-BKK4_5Ur-C0xQN_Lp.js} +1 -1
- package/site/dist/assets/{useActiveWallet-B-yZYGc6-D7Ik-LxJ.js → useActiveWallet-B-yZYGc6-BkK6rFBm.js} +1 -1
- package/site/dist/assets/{useGetSolPrice-x7gfUIHJ-D1hmQfpA.js → useGetSolPrice-x7gfUIHJ-CLVXqv6I.js} +1 -1
- package/site/dist/assets/{useGetTokenPrice-CaoUkb79-ZnbuJ-vP.js → useGetTokenPrice-CaoUkb79-DAXXs3rs.js} +1 -1
- package/site/dist/assets/{useI18n-C-5n_noF-BcqC76yj.js → useI18n-C-5n_noF-CGpkgIVy.js} +1 -1
- package/site/dist/assets/{useWalletBalance-CZnP5f_f-Dw2GIJ4g.js → useWalletBalance-CZnP5f_f-Cfd64m4n.js} +1 -1
- package/site/dist/assets/{useWallets-X1ndvJ_U-DRjz7uYD.js → useWallets-X1ndvJ_U-CAYqg7Za.js} +1 -1
- package/site/dist/assets/{w3m-modal-BeVrBOIf.js → w3m-modal-B4H_uiPH.js} +2 -2
- package/site/dist/assets/{wallet-Bn85Sg2W.js → wallet-BNI12IYk.js} +1 -1
- package/site/dist/assets/wallet-CITSaPlB.js +2 -0
- package/site/dist/assets/{wallet-connect-BvJtUsDt-Y03hhqFN.js → wallet-connect-BvJtUsDt-CVlSNIXP.js} +1 -1
- package/site/dist/assets/{walletconnect-registry-xxG8XLCb-D1SSFvMp.js → walletconnect-registry-xxG8XLCb-BpzpBq5s.js} +1 -1
- package/site/dist/assets/walletconnect-v2-3frQFwbg-CzZ6oybX.js +12 -0
- package/site/dist/assets/{wui-ux-by-reown-D34ILNLS.js → wui-ux-by-reown-XyHdtV1O.js} +1 -1
- package/site/dist/assets/x-gjDrY2rk.js +1 -0
- package/site/dist/index.html +5 -5
- package/site/feed.js +16 -1
- package/site/no-model.js +4 -0
- package/site/worker.js +586 -59
- package/src/agent/agent-card.js +20 -11
- package/src/agent/mcp.js +190 -324
- package/src/agent/view-tools.js +46 -13
- package/src/agent/x402.js +340 -44
- package/src/core/embed.js +51 -52
- package/src/core/embed.worker.js +1 -1
- package/src/core/shard.js +7 -3
- package/src/discover/apps.js +41 -5
- package/src/discover/explore.js +50 -30
- package/src/market/reactions.js +2 -2
- package/src/publish/devnet.js +95 -0
- package/src/publish/init.js +74 -0
- package/src/publish/lint.js +2 -1
- package/src/publish/ship.js +559 -267
- package/src/publish/view-cli.js +14 -10
- package/src/publish/view.js +355 -218
- package/src/taste/taste-doc.js +3 -2
- package/src/taste/taste.js +2 -2
- package/src/taste/vault.js +3 -1
- package/template/README.md +49 -0
- package/template/app.json +27 -0
- package/template/eval/goals.md +7 -0
- package/template/eval/golden.jsonl +0 -0
- package/template/gitignore +3 -0
- package/template/package.json +13 -0
- package/template/wrangler.json +12 -0
- package/site/dist/assets/BridgeNetworkSelectionView-CFGjB2nO-CvsbQcFv.js +0 -68
- package/site/dist/assets/ConnectOrCreateScreen-CUUYUO07-crHzh-TL.js +0 -1
- package/site/dist/assets/ConnectWalletView-DqI-PTvX-CMQIad63.js +0 -74
- package/site/dist/assets/ConnectionStatusScreen-fUfROm9m-wu3a3kw4.js +0 -1
- package/site/dist/assets/ErrorScreen-DipdTWzE-DcxVjMO4.js +0 -1
- package/site/dist/assets/FiatOnrampScreen-BAhYeiTI-BH_sU6EV.js +0 -491
- package/site/dist/assets/LandingScreen-CGWUoSUG-DK1EY-6v.js +0 -1
- package/site/dist/assets/LinkEmailScreen-dKo9frwc-C3v7glH0.js +0 -1
- package/site/dist/assets/LinkPasskeyScreen-zbrl_AI_-DYIl5Kr2.js +0 -1
- package/site/dist/assets/WalletOverflowButton-bfCnp-9T-CUyIJFzt.js +0 -1
- package/site/dist/assets/__vite-browser-external-CitKSmYk.js +0 -1
- package/site/dist/assets/_esm-B26FZg5Y.js +0 -7
- package/site/dist/assets/accounts-DiZ-0VmN.js +0 -1
- package/site/dist/assets/ccip-DA_zG341.js +0 -1
- package/site/dist/assets/check-BPgcwEPP.js +0 -1
- package/site/dist/assets/client-CZG0ndth.js +0 -2
- package/site/dist/assets/client-Dsa7_3V3.js +0 -9
- package/site/dist/assets/coinbase-DCPC2L_R-D3aIgpyd.js +0 -3
- package/site/dist/assets/core-snws5xwv.js +0 -12
- package/site/dist/assets/dist-Dl07uGq1.js +0 -1
- package/site/dist/assets/embed.worker-ugGhEqCV.js +0 -1
- package/site/dist/assets/floating-ui.react-xRkl9O3u.js +0 -1
- package/site/dist/assets/index-1HYFYA-W.js +0 -8
- package/site/dist/assets/index.es-C1v1or--.js +0 -3
- package/site/dist/assets/lib-BsS8z8Lj.js +0 -1
- package/site/dist/assets/parseEther-VjhVo3dd.js +0 -1
- package/site/dist/assets/preload-helper-uBIymjUX.js +0 -1
- package/site/dist/assets/react-DCXkXSrv.js +0 -1
- package/site/dist/assets/roles-32M1l9jI.js +0 -1
- package/site/dist/assets/rolldown-runtime-BcKkbAw3.js +0 -1
- package/site/dist/assets/secp256k1-C4nzcPo-.js +0 -1
- package/site/dist/assets/secp256k1-D92aGNnU.js +0 -1
- package/site/dist/assets/secp256k1-DmbwyFau.js +0 -1
- package/site/dist/assets/secp256k1-xl2og-wO.js +0 -1
- package/site/dist/assets/sha2-BU_QyRTx.js +0 -1
- package/site/dist/assets/shouldProceedtoEmbeddedWalletCreationFlow-B3vyavrh-BK_FBkaE.js +0 -1
- package/site/dist/assets/stripe.esm-CZRDpc-N.js +0 -2
- package/site/dist/assets/toViemAccount-B5iDGq1b-Ba8L7zed.js +0 -2
- package/site/dist/assets/transformers.web-CVP3pJOS.js +0 -40
- package/site/dist/assets/transformers.web-D8W1u_I2.js +0 -49
- package/site/dist/assets/wallet-Bnzeiqed.js +0 -2
- package/site/dist/assets/walletconnect-v2-3frQFwbg-CrtLXofr.js +0 -12
- package/site/dist/assets/x-rlSp9U7W.js +0 -1
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{s as e,t}from"./rolldown-runtime-Bjp52BOI.js";import{a as n,i as r,n as i,o as a,r as o}from"./hooks.module-BYZGfwDl.js";import{Z as s}from"./esm-Co94ENUV.js";import{st as c}from"./privy-context-81KmsBw2-DiR6-Yq8.js";import{c as l}from"./errors-BQ3N-RVt-CZPAWCgC.js";import{b as u,c as d,i as f}from"./toViemAccount-B5iDGq1b-CdFZwv07.js";import{t as p}from"./logger-CsXm3oIv-B0UYpNFI.js";import{r as m}from"./SolanaWalletConnector-C7Lqk-Wz-Bc_lvdiF.js";var h=class e{constructor(e,t){this.scope=e,this.module=t}storeObject(e,t){this.setItem(e,JSON.stringify(t))}loadObject(e){let t=this.getItem(e);return t?JSON.parse(t):void 0}setItem(e,t){localStorage.setItem(this.scopedKey(e),t)}getItem(e){return localStorage.getItem(this.scopedKey(e))}removeItem(e){localStorage.removeItem(this.scopedKey(e))}clear(){let e=this.scopedKey(``),t=[];for(let n=0;n<localStorage.length;n++){let r=localStorage.key(n);typeof r==`string`&&r.startsWith(e)&&t.push(r)}t.forEach(e=>localStorage.removeItem(e))}scopedKey(e){return`-${this.scope}${this.module?`:${this.module}`:``}:${e}`}static clearAll(){new e(`CBWSDK`).clear(),new e(`walletlink`).clear()}},g={rpc:{invalidInput:-32e3,resourceNotFound:-32001,resourceUnavailable:-32002,transactionRejected:-32003,methodNotSupported:-32004,limitExceeded:-32005,parse:-32700,invalidRequest:-32600,methodNotFound:-32601,invalidParams:-32602,internal:-32603},provider:{userRejectedRequest:4001,unauthorized:4100,unsupportedMethod:4200,disconnected:4900,chainDisconnected:4901,unsupportedChain:4902}},_={"-32700":{standard:`JSON RPC 2.0`,message:`Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text.`},"-32600":{standard:`JSON RPC 2.0`,message:`The JSON sent is not a valid Request object.`},"-32601":{standard:`JSON RPC 2.0`,message:`The method does not exist / is not available.`},"-32602":{standard:`JSON RPC 2.0`,message:`Invalid method parameter(s).`},"-32603":{standard:`JSON RPC 2.0`,message:`Internal JSON-RPC error.`},"-32000":{standard:`EIP-1474`,message:`Invalid input.`},"-32001":{standard:`EIP-1474`,message:`Resource not found.`},"-32002":{standard:`EIP-1474`,message:`Resource unavailable.`},"-32003":{standard:`EIP-1474`,message:`Transaction rejected.`},"-32004":{standard:`EIP-1474`,message:`Method not supported.`},"-32005":{standard:`EIP-1474`,message:`Request limit exceeded.`},4001:{standard:`EIP-1193`,message:`User rejected the request.`},4100:{standard:`EIP-1193`,message:`The requested account and/or method has not been authorized by the user.`},4200:{standard:`EIP-1193`,message:`The requested method is not supported by this Ethereum provider.`},4900:{standard:`EIP-1193`,message:`The provider is disconnected from all chains.`},4901:{standard:`EIP-1193`,message:`The provider is disconnected from the specified chain.`},4902:{standard:`EIP-3085`,message:`Unrecognized chain ID.`}},v=`Unspecified error message.`,y=`Unspecified server error.`;function b(e,t=v){if(e&&Number.isInteger(e)){let t=e.toString();if(T(_,t))return _[t].message;if(C(e))return y}return t}function x(e){return Number.isInteger(e)?!!(_[e.toString()]||C(e)):!1}function S(e,{shouldIncludeStack:t=!1}={}){let n={};if(e&&typeof e==`object`&&!Array.isArray(e)&&T(e,`code`)&&x(e.code)){let t=e;n.code=t.code,t.message&&typeof t.message==`string`?(n.message=t.message,T(t,`data`)&&(n.data=t.data)):(n.message=b(n.code),n.data={originalError:w(e)})}else n.code=g.rpc.internal,n.message=E(e,`message`)?e.message:v,n.data={originalError:w(e)};return t&&(n.stack=E(e,`stack`)?e.stack:void 0),n}function C(e){return e>=-32099&&e<=-32e3}function w(e){return e&&typeof e==`object`&&!Array.isArray(e)?Object.assign({},e):e}function T(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function E(e,t){return typeof e==`object`&&!!e&&t in e&&typeof e[t]==`string`}var D={rpc:{parse:e=>O(g.rpc.parse,e),invalidRequest:e=>O(g.rpc.invalidRequest,e),invalidParams:e=>O(g.rpc.invalidParams,e),methodNotFound:e=>O(g.rpc.methodNotFound,e),internal:e=>O(g.rpc.internal,e),server:e=>{if(!e||typeof e!=`object`||Array.isArray(e))throw Error(`Ethereum RPC Server errors must provide single object argument.`);let{code:t}=e;if(!Number.isInteger(t)||t>-32005||t<-32099)throw Error(`"code" must be an integer such that: -32099 <= code <= -32005`);return O(t,e)},invalidInput:e=>O(g.rpc.invalidInput,e),resourceNotFound:e=>O(g.rpc.resourceNotFound,e),resourceUnavailable:e=>O(g.rpc.resourceUnavailable,e),transactionRejected:e=>O(g.rpc.transactionRejected,e),methodNotSupported:e=>O(g.rpc.methodNotSupported,e),limitExceeded:e=>O(g.rpc.limitExceeded,e)},provider:{userRejectedRequest:e=>k(g.provider.userRejectedRequest,e),unauthorized:e=>k(g.provider.unauthorized,e),unsupportedMethod:e=>k(g.provider.unsupportedMethod,e),disconnected:e=>k(g.provider.disconnected,e),chainDisconnected:e=>k(g.provider.chainDisconnected,e),unsupportedChain:e=>k(g.provider.unsupportedChain,e),custom:e=>{if(!e||typeof e!=`object`||Array.isArray(e))throw Error(`Ethereum Provider custom errors must provide single object argument.`);let{code:t,message:n,data:r}=e;if(!n||typeof n!=`string`)throw Error(`"message" must be a nonempty string`);return new ee(t,n,r)}}};function O(e,t){let[n,r]=A(t);return new j(e,n||b(e),r)}function k(e,t){let[n,r]=A(t);return new ee(e,n||b(e),r)}function A(e){if(e){if(typeof e==`string`)return[e];if(typeof e==`object`&&!Array.isArray(e)){let{message:t,data:n}=e;if(t&&typeof t!=`string`)throw Error(`Must specify string message.`);return[t||void 0,n]}}return[]}var j=class extends Error{constructor(e,t,n){if(!Number.isInteger(e))throw Error(`"code" must be an integer.`);if(!t||typeof t!=`string`)throw Error(`"message" must be a nonempty string.`);super(t),this.code=e,n!==void 0&&(this.data=n)}},ee=class extends j{constructor(e,t,n){if(!te(e))throw Error(`"code" must be an integer such that: 1000 <= code <= 4999`);super(e,t,n)}};function te(e){return Number.isInteger(e)&&e>=1e3&&e<=4999}function ne(){return e=>e}var M=ne(),re=ne(),ie=ne();function N(e){return Math.floor(e)}var ae=/^[0-9]*$/,oe=/^[a-f0-9]*$/;function P(e){return se(crypto.getRandomValues(new Uint8Array(e)))}function se(e){return[...e].map(e=>e.toString(16).padStart(2,`0`)).join(``)}function F(e){return new Uint8Array(e.match(/.{1,2}/g).map(e=>Number.parseInt(e,16)))}function I(e,t=!1){let n=e.toString(`hex`);return M(t?`0x${n}`:n)}function ce(e){return I(me(e),!0)}function L(e){return ie(e.toString(10))}function R(e){return M(`0x${BigInt(e).toString(16)}`)}function le(e){return e.startsWith(`0x`)||e.startsWith(`0X`)}function ue(e){return le(e)?e.slice(2):e}function de(e){return le(e)?`0x${e.slice(2)}`:`0x${e}`}function z(e){if(typeof e!=`string`)return!1;let t=ue(e).toLowerCase();return oe.test(t)}function fe(e,t=!1){if(typeof e==`string`){let n=ue(e).toLowerCase();if(oe.test(n))return M(t?`0x${n}`:n)}throw D.rpc.invalidParams(`"${String(e)}" is not a hexadecimal string`)}function pe(e,t=!1){let n=fe(e,!1);return n.length%2==1&&(n=M(`0${n}`)),t?M(`0x${n}`):n}function B(e){if(typeof e==`string`){let t=ue(e).toLowerCase();if(z(t)&&t.length===40)return re(de(t))}throw D.rpc.invalidParams(`Invalid Ethereum address: ${String(e)}`)}function me(e){if(Buffer.isBuffer(e))return e;if(typeof e==`string`){if(z(e)){let t=pe(e,!1);return Buffer.from(t,`hex`)}return Buffer.from(e,`utf8`)}throw D.rpc.invalidParams(`Not binary data: ${String(e)}`)}function V(e){if(typeof e==`number`&&Number.isInteger(e))return N(e);if(typeof e==`string`){if(ae.test(e))return N(Number(e));if(z(e))return N(Number(BigInt(pe(e,!0))))}throw D.rpc.invalidParams(`Not an integer: ${String(e)}`)}function H(e){if(e!==null&&(typeof e==`bigint`||ge(e)))return BigInt(e.toString(10));if(typeof e==`number`)return BigInt(V(e));if(typeof e==`string`){if(ae.test(e))return BigInt(e);if(z(e))return BigInt(pe(e,!0))}throw D.rpc.invalidParams(`Not an integer: ${String(e)}`)}function he(e){if(typeof e==`string`)return JSON.parse(e);if(typeof e==`object`)return e;throw D.rpc.invalidParams(`Not a JSON string or an object: ${String(e)}`)}function ge(e){if(e==null||typeof e.constructor!=`function`)return!1;let{constructor:t}=e;return typeof t.config==`function`&&typeof t.EUCLID==`number`}async function _e(){return crypto.subtle.generateKey({name:`ECDH`,namedCurve:`P-256`},!0,[`deriveKey`])}async function ve(e,t){return crypto.subtle.deriveKey({name:`ECDH`,public:t},e,{name:`AES-GCM`,length:256},!1,[`encrypt`,`decrypt`])}async function ye(e,t){let n=crypto.getRandomValues(new Uint8Array(12));return{iv:n,cipherText:await crypto.subtle.encrypt({name:`AES-GCM`,iv:n},e,new TextEncoder().encode(t))}}async function be(e,{iv:t,cipherText:n}){let r=await crypto.subtle.decrypt({name:`AES-GCM`,iv:t},e,n);return new TextDecoder().decode(r)}function xe(e){switch(e){case`public`:return`spki`;case`private`:return`pkcs8`}}async function Se(e,t){let n=xe(e),r=await crypto.subtle.exportKey(n,t);return se(new Uint8Array(r))}async function Ce(e,t){let n=xe(e),r=F(t).buffer;return await crypto.subtle.importKey(n,new Uint8Array(r),{name:`ECDH`,namedCurve:`P-256`},!0,e===`private`?[`deriveKey`]:[])}async function we(e,t){return ye(t,JSON.stringify(e,(e,t)=>{if(!(t instanceof Error))return t;let n=t;return Object.assign(Object.assign({},n.code?{code:n.code}:{}),{message:n.message})}))}async function Te(e,t){return JSON.parse(await be(t,e))}var Ee={storageKey:`ownPrivateKey`,keyType:`private`},De={storageKey:`ownPublicKey`,keyType:`public`},Oe={storageKey:`peerPublicKey`,keyType:`public`},ke=class{constructor(){this.storage=new h(`CBWSDK`,`SCWKeyManager`),this.ownPrivateKey=null,this.ownPublicKey=null,this.peerPublicKey=null,this.sharedSecret=null}async getOwnPublicKey(){return await this.loadKeysIfNeeded(),this.ownPublicKey}async getSharedSecret(){return await this.loadKeysIfNeeded(),this.sharedSecret}async setPeerPublicKey(e){this.sharedSecret=null,this.peerPublicKey=e,await this.storeKey(Oe,e),await this.loadKeysIfNeeded()}async clear(){this.ownPrivateKey=null,this.ownPublicKey=null,this.peerPublicKey=null,this.sharedSecret=null,this.storage.removeItem(De.storageKey),this.storage.removeItem(Ee.storageKey),this.storage.removeItem(Oe.storageKey)}async generateKeyPair(){let e=await _e();this.ownPrivateKey=e.privateKey,this.ownPublicKey=e.publicKey,await this.storeKey(Ee,e.privateKey),await this.storeKey(De,e.publicKey)}async loadKeysIfNeeded(){if(this.ownPrivateKey===null&&(this.ownPrivateKey=await this.loadKey(Ee)),this.ownPublicKey===null&&(this.ownPublicKey=await this.loadKey(De)),(this.ownPrivateKey===null||this.ownPublicKey===null)&&await this.generateKeyPair(),this.peerPublicKey===null&&(this.peerPublicKey=await this.loadKey(Oe)),this.sharedSecret===null){if(this.ownPrivateKey===null||this.peerPublicKey===null)return;this.sharedSecret=await ve(this.ownPrivateKey,this.peerPublicKey)}}async loadKey(e){let t=this.storage.getItem(e.storageKey);return t?Ce(e.keyType,t):null}async storeKey(e,t){let n=await Se(e.keyType,t);this.storage.setItem(e.storageKey,n)}},U=`4.3.2`,Ae=`@coinbase/wallet-sdk`;async function W(e,t){let n=Object.assign(Object.assign({},e),{jsonrpc:`2.0`,id:crypto.randomUUID()}),{result:r,error:i}=await(await window.fetch(t,{method:`POST`,body:JSON.stringify(n),mode:`cors`,headers:{"Content-Type":`application/json`,"X-Cbw-Sdk-Version":U,"X-Cbw-Sdk-Platform":Ae}})).json();if(i)throw i;return r}function je(){return globalThis.coinbaseWalletExtension}function Me(){try{let e=globalThis;return e.ethereum??e.top?.ethereum}catch{return}}function Ne({metadata:e,preference:t}){var n,r;let{appName:i,appLogoUrl:a,appChainIds:o}=e;if(t.options!==`smartWalletOnly`){let e=je();if(e)return(n=e.setAppInfo)==null||n.call(e,i,a,o,t),e}let s=Me();if(s?.isCoinbaseBrowser)return(r=s.setAppInfo)==null||r.call(s,i,a,o,t),s}function Pe(e){if(!e||typeof e!=`object`||Array.isArray(e))throw D.rpc.invalidParams({message:`Expected a single, non-array, object argument.`,data:e});let{method:t,params:n}=e;if(typeof t!=`string`||t.length===0)throw D.rpc.invalidParams({message:`'args.method' must be a non-empty string.`,data:e});if(n!==void 0&&!Array.isArray(n)&&(typeof n!=`object`||!n))throw D.rpc.invalidParams({message:`'args.params' must be an object or array if provided.`,data:e});switch(t){case`eth_sign`:case`eth_signTypedData_v2`:case`eth_subscribe`:case`eth_unsubscribe`:throw D.provider.unsupportedMethod()}}var Fe=`accounts`,Ie=`activeChain`,Le=`availableChains`,Re=`walletCapabilities`,ze=class{constructor(e){this.metadata=e.metadata,this.communicator=e.communicator,this.callback=e.callback,this.keyManager=new ke,this.storage=new h(`CBWSDK`,`SCWStateManager`),this.accounts=this.storage.loadObject(Fe)??[],this.chain=this.storage.loadObject(Ie)||{id:e.metadata.appChainIds?.[0]??1},this.handshake=this.handshake.bind(this),this.request=this.request.bind(this),this.createRequestMessage=this.createRequestMessage.bind(this),this.decryptResponseMessage=this.decryptResponseMessage.bind(this)}async handshake(e){var t,n;await(t=this.communicator).waitForPopupLoaded?.call(t);let r=await this.createRequestMessage({handshake:{method:e.method,params:Object.assign({},this.metadata,e.params??{})}}),i=await this.communicator.postRequestAndWaitForResponse(r);if(`failure`in i.content)throw i.content.failure;let a=await Ce(`public`,i.sender);await this.keyManager.setPeerPublicKey(a);let o=(await this.decryptResponseMessage(i)).result;if(`error`in o)throw o.error;switch(e.method){case`eth_requestAccounts`:{let e=o.value;this.accounts=e,this.storage.storeObject(Fe,e),(n=this.callback)==null||n.call(this,`accountsChanged`,e);break}}}async request(e){var t;if(this.accounts.length===0)switch(e.method){case`wallet_sendCalls`:return this.sendRequestToPopup(e);default:throw D.provider.unauthorized()}switch(e.method){case`eth_requestAccounts`:return(t=this.callback)==null||t.call(this,`connect`,{chainId:R(this.chain.id)}),this.accounts;case`eth_accounts`:return this.accounts;case`eth_coinbase`:return this.accounts[0];case`net_version`:return this.chain.id;case`eth_chainId`:return R(this.chain.id);case`wallet_getCapabilities`:return this.storage.loadObject(Re);case`wallet_switchEthereumChain`:return this.handleSwitchChainRequest(e);case`eth_ecRecover`:case`personal_sign`:case`wallet_sign`:case`personal_ecRecover`:case`eth_signTransaction`:case`eth_sendTransaction`:case`eth_signTypedData_v1`:case`eth_signTypedData_v3`:case`eth_signTypedData_v4`:case`eth_signTypedData`:case`wallet_addEthereumChain`:case`wallet_watchAsset`:case`wallet_sendCalls`:case`wallet_showCallsStatus`:case`wallet_grantPermissions`:return this.sendRequestToPopup(e);default:if(!this.chain.rpcUrl)throw D.rpc.internal(`No RPC URL set for chain`);return W(e,this.chain.rpcUrl)}}async sendRequestToPopup(e){var t;await(t=this.communicator).waitForPopupLoaded?.call(t);let n=await this.sendEncryptedRequest(e),r=(await this.decryptResponseMessage(n)).result;if(`error`in r)throw r.error;return r.value}async cleanup(){this.storage.clear(),await this.keyManager.clear(),this.accounts=[],this.chain={id:this.metadata.appChainIds?.[0]??1}}async handleSwitchChainRequest(e){let t=e.params;if(!t||!t[0]?.chainId)throw D.rpc.invalidParams();let n=V(t[0].chainId);if(this.updateChain(n))return null;let r=await this.sendRequestToPopup(e);return r===null&&this.updateChain(n),r}async sendEncryptedRequest(e){let t=await this.keyManager.getSharedSecret();if(!t)throw D.provider.unauthorized(`No valid session found, try requestAccounts before other methods`);let n=await we({action:e,chainId:this.chain.id},t),r=await this.createRequestMessage({encrypted:n});return this.communicator.postRequestAndWaitForResponse(r)}async createRequestMessage(e){let t=await Se(`public`,await this.keyManager.getOwnPublicKey());return{id:crypto.randomUUID(),sender:t,content:e,timestamp:new Date}}async decryptResponseMessage(e){let t=e.content;if(`failure`in t)throw t.failure;let n=await this.keyManager.getSharedSecret();if(!n)throw D.provider.unauthorized(`Invalid session`);let r=await Te(t.encrypted,n),i=r.data?.chains;if(i){let e=Object.entries(i).map(([e,t])=>({id:Number(e),rpcUrl:t}));this.storage.storeObject(Le,e),this.updateChain(this.chain.id,e)}let a=r.data?.capabilities;return a&&this.storage.storeObject(Re,a),r}updateChain(e,t){var n;let r=(t??this.storage.loadObject(Le))?.find(t=>t.id===e);return r?(r!==this.chain&&(this.chain=r,this.storage.storeObject(Ie,r),(n=this.callback)==null||n.call(this,`chainChanged`,R(r.id))),!0):!1}},Be=t((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.toBig=e.shrSL=e.shrSH=e.rotrSL=e.rotrSH=e.rotrBL=e.rotrBH=e.rotr32L=e.rotr32H=e.rotlSL=e.rotlSH=e.rotlBL=e.rotlBH=e.add5L=e.add5H=e.add4L=e.add4H=e.add3L=e.add3H=void 0,e.add=v,e.fromBig=r,e.split=i;var t=BigInt(2**32-1),n=BigInt(32);function r(e,r=!1){return r?{h:Number(e&t),l:Number(e>>n&t)}:{h:Number(e>>n&t)|0,l:Number(e&t)|0}}function i(e,t=!1){let n=e.length,i=new Uint32Array(n),a=new Uint32Array(n);for(let o=0;o<n;o++){let{h:n,l:s}=r(e[o],t);[i[o],a[o]]=[n,s]}return[i,a]}var a=(e,t)=>BigInt(e>>>0)<<n|BigInt(t>>>0);e.toBig=a;var o=(e,t,n)=>e>>>n;e.shrSH=o;var s=(e,t,n)=>e<<32-n|t>>>n;e.shrSL=s;var c=(e,t,n)=>e>>>n|t<<32-n;e.rotrSH=c;var l=(e,t,n)=>e<<32-n|t>>>n;e.rotrSL=l;var u=(e,t,n)=>e<<64-n|t>>>n-32;e.rotrBH=u;var d=(e,t,n)=>e>>>n-32|t<<64-n;e.rotrBL=d;var f=(e,t)=>t;e.rotr32H=f;var p=(e,t)=>e;e.rotr32L=p;var m=(e,t,n)=>e<<n|t>>>32-n;e.rotlSH=m;var h=(e,t,n)=>t<<n|e>>>32-n;e.rotlSL=h;var g=(e,t,n)=>t<<n-32|e>>>64-n;e.rotlBH=g;var _=(e,t,n)=>e<<n-32|t>>>64-n;e.rotlBL=_;function v(e,t,n,r){let i=(t>>>0)+(r>>>0);return{h:e+n+(i/2**32|0)|0,l:i|0}}var y=(e,t,n)=>(e>>>0)+(t>>>0)+(n>>>0);e.add3L=y;var b=(e,t,n,r)=>t+n+r+(e/2**32|0)|0;e.add3H=b;var x=(e,t,n,r)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0);e.add4L=x;var S=(e,t,n,r,i)=>t+n+r+i+(e/2**32|0)|0;e.add4H=S;var C=(e,t,n,r,i)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0)+(i>>>0);e.add5L=C;var w=(e,t,n,r,i,a)=>t+n+r+i+a+(e/2**32|0)|0;e.add5H=w,e.default={fromBig:r,split:i,toBig:a,shrSH:o,shrSL:s,rotrSH:c,rotrSL:l,rotrBH:u,rotrBL:d,rotr32H:f,rotr32L:p,rotlSH:m,rotlSL:h,rotlBH:g,rotlBL:_,add:v,add3L:y,add3H:b,add4L:x,add4H:S,add5H:w,add5L:C}})),Ve=t((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.crypto=void 0,e.crypto=typeof globalThis==`object`&&`crypto`in globalThis?globalThis.crypto:void 0})),He=t((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.wrapXOFConstructorWithOpts=e.wrapConstructorWithOpts=e.wrapConstructor=e.Hash=e.nextTick=e.swap32IfBE=e.byteSwapIfBE=e.swap8IfBE=e.isLE=void 0,e.isBytes=n,e.anumber=r,e.abytes=i,e.ahash=a,e.aexists=o,e.aoutput=s,e.u8=c,e.u32=l,e.clean=u,e.createView=d,e.rotr=f,e.rotl=p,e.byteSwap=m,e.byteSwap32=h,e.bytesToHex=v,e.hexToBytes=x,e.asyncLoop=S,e.utf8ToBytes=C,e.bytesToUtf8=w,e.toBytes=T,e.kdfInputToBytes=E,e.concatBytes=D,e.checkOpts=O,e.createHasher=k,e.createOptHasher=A,e.createXOFer=j,e.randomBytes=ee;var t=Ve();function n(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function r(e){if(!Number.isSafeInteger(e)||e<0)throw Error(`positive integer expected, got `+e)}function i(e,...t){if(!n(e))throw Error(`Uint8Array expected`);if(t.length>0&&!t.includes(e.length))throw Error(`Uint8Array expected of length `+t+`, got length=`+e.length)}function a(e){if(typeof e!=`function`||typeof e.create!=`function`)throw Error(`Hash should be wrapped by utils.createHasher`);r(e.outputLen),r(e.blockLen)}function o(e,t=!0){if(e.destroyed)throw Error(`Hash instance has been destroyed`);if(t&&e.finished)throw Error(`Hash#digest() has already been called`)}function s(e,t){i(e);let n=t.outputLen;if(e.length<n)throw Error(`digestInto() expects output buffer of length at least `+n)}function c(e){return new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}function l(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function u(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function d(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function f(e,t){return e<<32-t|e>>>t}function p(e,t){return e<<t|e>>>32-t>>>0}e.isLE=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function m(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}e.swap8IfBE=e.isLE?e=>e:e=>m(e),e.byteSwapIfBE=e.swap8IfBE;function h(e){for(let t=0;t<e.length;t++)e[t]=m(e[t]);return e}e.swap32IfBE=e.isLE?e=>e:h;var g=typeof Uint8Array.from([]).toHex==`function`&&typeof Uint8Array.fromHex==`function`,_=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`));function v(e){if(i(e),g)return e.toHex();let t=``;for(let n=0;n<e.length;n++)t+=_[e[n]];return t}var y={_0:48,_9:57,A:65,F:70,a:97,f:102};function b(e){if(e>=y._0&&e<=y._9)return e-y._0;if(e>=y.A&&e<=y.F)return e-(y.A-10);if(e>=y.a&&e<=y.f)return e-(y.a-10)}function x(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);if(g)return Uint8Array.fromHex(e);let t=e.length,n=t/2;if(t%2)throw Error(`hex string expected, got unpadded hex of length `+t);let r=new Uint8Array(n);for(let t=0,i=0;t<n;t++,i+=2){let n=b(e.charCodeAt(i)),a=b(e.charCodeAt(i+1));if(n===void 0||a===void 0){let t=e[i]+e[i+1];throw Error(`hex string expected, got non-hex character "`+t+`" at index `+i)}r[t]=n*16+a}return r}e.nextTick=async()=>{};async function S(t,n,r){let i=Date.now();for(let a=0;a<t;a++){r(a);let t=Date.now()-i;t>=0&&t<n||(await(0,e.nextTick)(),i+=t)}}function C(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function w(e){return new TextDecoder().decode(e)}function T(e){return typeof e==`string`&&(e=C(e)),i(e),e}function E(e){return typeof e==`string`&&(e=C(e)),i(e),e}function D(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];i(r),t+=r.length}let n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}function O(e,t){if(t!==void 0&&{}.toString.call(t)!==`[object Object]`)throw Error(`options should be object or undefined`);return Object.assign(e,t)}e.Hash=class{};function k(e){let t=t=>e().update(T(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function A(e){let t=(t,n)=>e(n).update(T(t)).digest(),n=e({});return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=t=>e(t),t}function j(e){let t=(t,n)=>e(n).update(T(t)).digest(),n=e({});return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=t=>e(t),t}e.wrapConstructor=k,e.wrapConstructorWithOpts=A,e.wrapXOFConstructorWithOpts=j;function ee(e=32){if(t.crypto&&typeof t.crypto.getRandomValues==`function`)return t.crypto.getRandomValues(new Uint8Array(e));if(t.crypto&&typeof t.crypto.randomBytes==`function`)return Uint8Array.from(t.crypto.randomBytes(e));throw Error(`crypto.getRandomValues must be defined`)}})),Ue=t((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.shake256=e.shake128=e.keccak_512=e.keccak_384=e.keccak_256=e.keccak_224=e.sha3_512=e.sha3_384=e.sha3_256=e.sha3_224=e.Keccak=void 0,e.keccakP=_;var t=Be(),n=He(),r=BigInt(0),i=BigInt(1),a=BigInt(2),o=BigInt(7),s=BigInt(256),c=BigInt(113),l=[],u=[],d=[];for(let e=0,t=i,n=1,f=0;e<24;e++){[n,f]=[f,(2*n+3*f)%5],l.push(2*(5*f+n)),u.push((e+1)*(e+2)/2%64);let p=r;for(let e=0;e<7;e++)t=(t<<i^(t>>o)*c)%s,t&a&&(p^=i<<(i<<BigInt(e))-i);d.push(p)}var f=(0,t.split)(d,!0),p=f[0],m=f[1],h=(e,n,r)=>r>32?(0,t.rotlBH)(e,n,r):(0,t.rotlSH)(e,n,r),g=(e,n,r)=>r>32?(0,t.rotlBL)(e,n,r):(0,t.rotlSL)(e,n,r);function _(e,t=24){let r=new Uint32Array(10);for(let n=24-t;n<24;n++){for(let t=0;t<10;t++)r[t]=e[t]^e[t+10]^e[t+20]^e[t+30]^e[t+40];for(let t=0;t<10;t+=2){let n=(t+8)%10,i=(t+2)%10,a=r[i],o=r[i+1],s=h(a,o,1)^r[n],c=g(a,o,1)^r[n+1];for(let n=0;n<50;n+=10)e[t+n]^=s,e[t+n+1]^=c}let t=e[2],i=e[3];for(let n=0;n<24;n++){let r=u[n],a=h(t,i,r),o=g(t,i,r),s=l[n];t=e[s],i=e[s+1],e[s]=a,e[s+1]=o}for(let t=0;t<50;t+=10){for(let n=0;n<10;n++)r[n]=e[t+n];for(let n=0;n<10;n++)e[t+n]^=~r[(n+2)%10]&r[(n+4)%10]}e[0]^=p[n],e[1]^=m[n]}(0,n.clean)(r)}var v=class e extends n.Hash{constructor(e,t,r,i=!1,a=24){if(super(),this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,this.enableXOF=!1,this.blockLen=e,this.suffix=t,this.outputLen=r,this.enableXOF=i,this.rounds=a,(0,n.anumber)(r),!(0<e&&e<200))throw Error(`only keccak-f1600 function is supported`);this.state=new Uint8Array(200),this.state32=(0,n.u32)(this.state)}clone(){return this._cloneInto()}keccak(){(0,n.swap32IfBE)(this.state32),_(this.state32,this.rounds),(0,n.swap32IfBE)(this.state32),this.posOut=0,this.pos=0}update(e){(0,n.aexists)(this),e=(0,n.toBytes)(e),(0,n.abytes)(e);let{blockLen:t,state:r}=this,i=e.length;for(let n=0;n<i;){let a=Math.min(t-this.pos,i-n);for(let t=0;t<a;t++)r[this.pos++]^=e[n++];this.pos===t&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:e,suffix:t,pos:n,blockLen:r}=this;e[n]^=t,t&128&&n===r-1&&this.keccak(),e[r-1]^=128,this.keccak()}writeInto(e){(0,n.aexists)(this,!1),(0,n.abytes)(e),this.finish();let t=this.state,{blockLen:r}=this;for(let n=0,i=e.length;n<i;){this.posOut>=r&&this.keccak();let a=Math.min(r-this.posOut,i-n);e.set(t.subarray(this.posOut,this.posOut+a),n),this.posOut+=a,n+=a}return e}xofInto(e){if(!this.enableXOF)throw Error(`XOF is not possible for this instance`);return this.writeInto(e)}xof(e){return(0,n.anumber)(e),this.xofInto(new Uint8Array(e))}digestInto(e){if((0,n.aoutput)(e,this),this.finished)throw Error(`digest() was already called`);return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,(0,n.clean)(this.state)}_cloneInto(t){let{blockLen:n,suffix:r,outputLen:i,rounds:a,enableXOF:o}=this;return t||=new e(n,r,i,o,a),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=a,t.suffix=r,t.outputLen=i,t.enableXOF=o,t.destroyed=this.destroyed,t}};e.Keccak=v;var y=(e,t,r)=>(0,n.createHasher)(()=>new v(t,e,r));e.sha3_224=y(6,144,28),e.sha3_256=y(6,136,32),e.sha3_384=y(6,104,48),e.sha3_512=y(6,72,64),e.keccak_224=y(1,144,28),e.keccak_256=y(1,136,32),e.keccak_384=y(1,104,48),e.keccak_512=y(1,72,64);var b=(e,t,r)=>(0,n.createXOFer)((n={})=>new v(t,e,n.dkLen===void 0?r:n.dkLen,!0));e.shake128=b(31,168,16),e.shake256=b(31,136,32)})),We=t(((e,t)=>{var{keccak_256:n}=Ue();function r(e){return Buffer.allocUnsafe(e).fill(0)}function i(e){return e.toString(2).length}function a(e,t){let n=e.toString(16);n.length%2!=0&&(n=`0`+n);let r=n.match(/.{1,2}/g).map(e=>parseInt(e,16));for(;r.length<t;)r.unshift(0);return Buffer.from(r)}function o(e,t){let n=e<0n,r;if(n){let n=(1n<<BigInt(t))-1n;r=(~e&n)+1n}else r=e;return r&=(1n<<BigInt(t))-1n,r}function s(e,t,n){let i=r(t);return e=l(e),n?e.length<t?(e.copy(i),i):e.slice(0,t):e.length<t?(e.copy(i,t-e.length),i):e.slice(-t)}function c(e,t){return s(e,t,!0)}function l(e){if(!Buffer.isBuffer(e)){if(Array.isArray(e))e=Buffer.from(e);else if(typeof e==`string`)e=p(e)?Buffer.from(f(m(e)),`hex`):Buffer.from(e);else if(typeof e==`number`)e=intToBuffer(e);else if(e==null)e=Buffer.allocUnsafe(0);else if(typeof e==`bigint`)e=a(e);else if(e.toArray)e=Buffer.from(e.toArray());else throw Error(`invalid type`)}return e}function u(e){return e=l(e),`0x`+e.toString(`hex`)}function d(e,t){if(e=l(e),t||=256,t!==256)throw Error(`unsupported`);return Buffer.from(n(new Uint8Array(e)))}function f(e){return e.length%2?`0`+e:e}function p(e){return typeof e==`string`&&e.match(/^0x[0-9A-Fa-f]*$/)}function m(e){return typeof e==`string`&&e.startsWith(`0x`)?e.slice(2):e}t.exports={zeros:r,setLength:s,setLengthRight:c,isHexString:p,stripHexPrefix:m,toBuffer:l,bufferToHex:u,keccak:d,bitLengthFromBigInt:i,bufferBEFromBigInt:a,twosFromBigInt:o}})),Ge=t(((e,t)=>{var n=We();function r(e){return e.startsWith(`int[`)?`int256`+e.slice(3):e===`int`?`int256`:e.startsWith(`uint[`)?`uint256`+e.slice(4):e===`uint`?`uint256`:e.startsWith(`fixed[`)?`fixed128x128`+e.slice(5):e===`fixed`?`fixed128x128`:e.startsWith(`ufixed[`)?`ufixed128x128`+e.slice(6):e===`ufixed`?`ufixed128x128`:e}function i(e){return Number.parseInt(/^\D+(\d+)$/.exec(e)[1],10)}function a(e){var t=/^\D+(\d+)x(\d+)$/.exec(e);return[Number.parseInt(t[1],10),Number.parseInt(t[2],10)]}function o(e){var t=e.match(/(.*)\[(.*?)\]$/);return t?t[2]===``?`dynamic`:Number.parseInt(t[2],10):null}function s(e){var t=typeof e;if(t===`string`||t===`number`)return BigInt(e);if(t===`bigint`)return e;throw Error(`Argument is not a number`)}function c(e,t){var r,l,d,f;if(e===`address`)return c(`uint160`,s(t));if(e===`bool`)return c(`uint8`,+!!t);if(e===`string`)return c(`bytes`,new Buffer(t,`utf8`));if(u(e)){if(t.length===void 0)throw Error(`Not an array?`);if(r=o(e),r!==`dynamic`&&r!==0&&t.length>r)throw Error(`Elements exceed array size: `+r);for(f in d=[],e=e.slice(0,e.lastIndexOf(`[`)),typeof t==`string`&&(t=JSON.parse(t)),t)d.push(c(e,t[f]));if(r===`dynamic`){var p=c(`uint256`,t.length);d.unshift(p)}return Buffer.concat(d)}if(e===`bytes`)return t=new Buffer(t),d=Buffer.concat([c(`uint256`,t.length),t]),t.length%32!=0&&(d=Buffer.concat([d,n.zeros(32-t.length%32)])),d;if(e.startsWith(`bytes`)){if(r=i(e),r<1||r>32)throw Error(`Invalid bytes<N> width: `+r);return n.setLengthRight(t,32)}if(e.startsWith(`uint`)){if(r=i(e),r%8||r<8||r>256)throw Error(`Invalid uint<N> width: `+r);l=s(t);let a=n.bitLengthFromBigInt(l);if(a>r)throw Error(`Supplied uint exceeds width: `+r+` vs `+a);if(l<0)throw Error(`Supplied uint is negative`);return n.bufferBEFromBigInt(l,32)}if(e.startsWith(`int`)){if(r=i(e),r%8||r<8||r>256)throw Error(`Invalid int<N> width: `+r);l=s(t);let a=n.bitLengthFromBigInt(l);if(a>r)throw Error(`Supplied int exceeds width: `+r+` vs `+a);let o=n.twosFromBigInt(l,256);return n.bufferBEFromBigInt(o,32)}if(e.startsWith(`ufixed`)){if(r=a(e),l=s(t),l<0)throw Error(`Supplied ufixed is negative`);return c(`uint256`,l*BigInt(2)**BigInt(r[1]))}if(e.startsWith(`fixed`))return r=a(e),c(`int256`,s(t)*BigInt(2)**BigInt(r[1]));throw Error(`Unsupported or invalid type: `+e)}function l(e){return e===`string`||e===`bytes`||o(e)===`dynamic`}function u(e){return e.lastIndexOf(`]`)===e.length-1}function d(e,t){var n=[],i=[],a=32*e.length;for(var o in e){var s=r(e[o]),u=t[o],d=c(s,u);l(s)?(n.push(c(`uint256`,a)),i.push(d),a+=d.length):n.push(d)}return Buffer.concat(n.concat(i))}function f(e,t){if(e.length!==t.length)throw Error(`Number of types are not matching the values`);for(var a,o,c=[],l=0;l<e.length;l++){var u=r(e[l]),d=t[l];if(u===`bytes`)c.push(d);else if(u===`string`)c.push(new Buffer(d,`utf8`));else if(u===`bool`)c.push(new Buffer(d?`01`:`00`,`hex`));else if(u===`address`)c.push(n.setLength(d,20));else if(u.startsWith(`bytes`)){if(a=i(u),a<1||a>32)throw Error(`Invalid bytes<N> width: `+a);c.push(n.setLengthRight(d,a))}else if(u.startsWith(`uint`)){if(a=i(u),a%8||a<8||a>256)throw Error(`Invalid uint<N> width: `+a);o=s(d);let e=n.bitLengthFromBigInt(o);if(e>a)throw Error(`Supplied uint exceeds width: `+a+` vs `+e);c.push(n.bufferBEFromBigInt(o,a/8))}else if(u.startsWith(`int`)){if(a=i(u),a%8||a<8||a>256)throw Error(`Invalid int<N> width: `+a);o=s(d);let e=n.bitLengthFromBigInt(o);if(e>a)throw Error(`Supplied int exceeds width: `+a+` vs `+e);let t=n.twosFromBigInt(o,a);c.push(n.bufferBEFromBigInt(t,a/8))}else throw Error(`Unsupported or invalid type: `+u)}return Buffer.concat(c)}function p(e,t){return n.keccak(f(e,t))}t.exports={rawEncode:d,solidityPack:f,soliditySHA3:p}})),Ke=t(((e,t)=>{var n=We(),r=Ge(),i={type:`object`,properties:{types:{type:`object`,additionalProperties:{type:`array`,items:{type:`object`,properties:{name:{type:`string`},type:{type:`string`}},required:[`name`,`type`]}}},primaryType:{type:`string`},domain:{type:`object`},message:{type:`object`}},required:[`types`,`primaryType`,`domain`,`message`]},a={encodeData(e,t,i,a=!0){let o=[`bytes32`],s=[this.hashType(e,i)];if(a){let c=(e,t,o)=>{if(i[t]!==void 0)return[`bytes32`,o==null?`0x0000000000000000000000000000000000000000000000000000000000000000`:n.keccak(this.encodeData(t,o,i,a))];if(o===void 0)throw Error(`missing value for field ${e} of type ${t}`);if(t===`bytes`)return[`bytes32`,n.keccak(o)];if(t===`string`)return typeof o==`string`&&(o=Buffer.from(o,`utf8`)),[`bytes32`,n.keccak(o)];if(t.lastIndexOf(`]`)===t.length-1){let i=t.slice(0,t.lastIndexOf(`[`)),a=o.map(t=>c(e,i,t));return[`bytes32`,n.keccak(r.rawEncode(a.map(([e])=>e),a.map(([,e])=>e)))]}return[t,o]};for(let n of i[e]){let[e,r]=c(n.name,n.type,t[n.name]);o.push(e),s.push(r)}}else for(let r of i[e]){let e=t[r.name];if(e!==void 0){if(r.type===`bytes`)o.push(`bytes32`),e=n.keccak(e),s.push(e);else if(r.type===`string`)o.push(`bytes32`),typeof e==`string`&&(e=Buffer.from(e,`utf8`)),e=n.keccak(e),s.push(e);else if(i[r.type]!==void 0)o.push(`bytes32`),e=n.keccak(this.encodeData(r.type,e,i,a)),s.push(e);else if(r.type.lastIndexOf(`]`)===r.type.length-1)throw Error(`Arrays currently unimplemented in encodeData`);else o.push(r.type),s.push(e)}}return r.rawEncode(o,s)},encodeType(e,t){let n=``,r=this.findTypeDependencies(e,t).filter(t=>t!==e);r=[e].concat(r.sort());for(let e of r){if(!t[e])throw Error(`No type definition specified: `+e);n+=e+`(`+t[e].map(({name:e,type:t})=>t+` `+e).join(`,`)+`)`}return n},findTypeDependencies(e,t,n=[]){if(e=e.match(/^\w*/)[0],n.includes(e)||t[e]===void 0)return n;n.push(e);for(let r of t[e])for(let e of this.findTypeDependencies(r.type,t,n))!n.includes(e)&&n.push(e);return n},hashStruct(e,t,r,i=!0){return n.keccak(this.encodeData(e,t,r,i))},hashType(e,t){return n.keccak(this.encodeType(e,t))},sanitizeData(e){let t={};for(let n in i.properties)e[n]&&(t[n]=e[n]);return t.types&&=Object.assign({EIP712Domain:[]},t.types),t},hash(e,t=!0){let r=this.sanitizeData(e),i=[Buffer.from(`1901`,`hex`)];return i.push(this.hashStruct(`EIP712Domain`,r.domain,r.types,t)),r.primaryType!==`EIP712Domain`&&i.push(this.hashStruct(r.primaryType,r.message,r.types,t)),n.keccak(Buffer.concat(i))}};t.exports={TYPED_MESSAGE_SCHEMA:i,TypedDataUtils:a,hashForSignTypedDataLegacy:function(e){return o(e.data)},hashForSignTypedData_v3:function(e){return a.hash(e.data,!1)},hashForSignTypedData_v4:function(e){return a.hash(e.data)}};function o(e){let t=Error(`Expect argument to be non-empty array`);if(typeof e!=`object`||!e.length)throw t;let i=e.map(function(e){return e.type===`bytes`?n.toBuffer(e.value):e.value}),a=e.map(function(e){return e.type}),o=e.map(function(e){if(!e.name)throw t;return e.type+` `+e.name});return r.soliditySHA3([`bytes32`,`bytes32`],[r.soliditySHA3(Array(e.length).fill(`string`),o),r.soliditySHA3(a,i)])}})),qe=`walletUsername`,Je=`Addresses`,Ye=`AppVersion`;function G(e){return e.errorMessage!==void 0}var Xe=class{constructor(e){this.secret=e}async encrypt(e){let t=this.secret;if(t.length!==64)throw Error(`secret must be 256 bits`);let n=crypto.getRandomValues(new Uint8Array(12)),r=await crypto.subtle.importKey(`raw`,F(t),{name:`aes-gcm`},!1,[`encrypt`,`decrypt`]),i=new TextEncoder,a=await window.crypto.subtle.encrypt({name:`AES-GCM`,iv:n},r,i.encode(e)),o=a.slice(a.byteLength-16),s=a.slice(0,a.byteLength-16),c=new Uint8Array(o),l=new Uint8Array(s);return se(new Uint8Array([...n,...c,...l]))}async decrypt(e){let t=this.secret;if(t.length!==64)throw Error(`secret must be 256 bits`);return new Promise((n,r)=>{(async function(){let i=await crypto.subtle.importKey(`raw`,F(t),{name:`aes-gcm`},!1,[`encrypt`,`decrypt`]),a=F(e),o=a.slice(0,12),s=a.slice(12,28),c=a.slice(28),l=new Uint8Array([...c,...s]),u={name:`AES-GCM`,iv:new Uint8Array(o)};try{let e=await window.crypto.subtle.decrypt(u,i,l);n(new TextDecoder().decode(e))}catch(e){r(e)}})()})}},Ze=class{constructor(e,t,n){this.linkAPIUrl=e,this.sessionId=t;let r=`${t}:${n}`;this.auth=`Basic ${btoa(r)}`}async markUnseenEventsAsSeen(e){return Promise.all(e.map(e=>fetch(`${this.linkAPIUrl}/events/${e.eventId}/seen`,{method:`POST`,headers:{Authorization:this.auth}}))).catch(e=>console.error(`Unabled to mark event as failed:`,e))}async fetchUnseenEvents(){let e=await fetch(`${this.linkAPIUrl}/events?unseen=true`,{headers:{Authorization:this.auth}});if(e.ok){let{events:t,error:n}=await e.json();if(n)throw Error(`Check unseen events failed: ${n}`);let r=t?.filter(e=>e.event===`Web3Response`).map(e=>({type:`Event`,sessionId:this.sessionId,eventId:e.id,event:e.event,data:e.data}))??[];return this.markUnseenEventsAsSeen(r),r}throw Error(`Check unseen events failed: ${e.status}`)}},K;(function(e){e[e.DISCONNECTED=0]=`DISCONNECTED`,e[e.CONNECTING=1]=`CONNECTING`,e[e.CONNECTED=2]=`CONNECTED`})(K||={});var Qe=class{setConnectionStateListener(e){this.connectionStateListener=e}setIncomingDataListener(e){this.incomingDataListener=e}constructor(e,t=WebSocket){this.WebSocketClass=t,this.webSocket=null,this.pendingData=[],this.url=e.replace(/^http/,`ws`)}async connect(){if(this.webSocket)throw Error(`webSocket object is not null`);return new Promise((e,t)=>{var n;let r;try{this.webSocket=r=new this.WebSocketClass(this.url)}catch(e){t(e);return}(n=this.connectionStateListener)==null||n.call(this,K.CONNECTING),r.onclose=e=>{var n;this.clearWebSocket(),t(Error(`websocket error ${e.code}: ${e.reason}`)),(n=this.connectionStateListener)==null||n.call(this,K.DISCONNECTED)},r.onopen=t=>{var n;e(),(n=this.connectionStateListener)==null||n.call(this,K.CONNECTED),this.pendingData.length>0&&([...this.pendingData].forEach(e=>this.sendData(e)),this.pendingData=[])},r.onmessage=e=>{var t,n;if(e.data===`h`)(t=this.incomingDataListener)==null||t.call(this,{type:`Heartbeat`});else try{let t=JSON.parse(e.data);(n=this.incomingDataListener)==null||n.call(this,t)}catch{}}})}disconnect(){var e;let{webSocket:t}=this;if(t){this.clearWebSocket(),(e=this.connectionStateListener)==null||e.call(this,K.DISCONNECTED),this.connectionStateListener=void 0,this.incomingDataListener=void 0;try{t.close()}catch{}}}sendData(e){let{webSocket:t}=this;t?t.send(e):(this.pendingData.push(e),this.connect())}clearWebSocket(){let{webSocket:e}=this;e&&(this.webSocket=null,e.onclose=null,e.onerror=null,e.onmessage=null,e.onopen=null)}},$e=1e4,et=6e4,tt=class{constructor({session:e,linkAPIUrl:t,listener:n}){this.destroyed=!1,this.lastHeartbeatResponse=0,this.nextReqId=N(1),this._connected=!1,this._linked=!1,this.shouldFetchUnseenEventsOnConnect=!1,this.requestResolutions=new Map,this.handleSessionMetadataUpdated=e=>{e&&new Map([[`__destroyed`,this.handleDestroyed],[`EthereumAddress`,this.handleAccountUpdated],[`WalletUsername`,this.handleWalletUsernameUpdated],[`AppVersion`,this.handleAppVersionUpdated],[`ChainId`,t=>e.JsonRpcUrl&&this.handleChainUpdated(t,e.JsonRpcUrl)]]).forEach((t,n)=>{let r=e[n];r!==void 0&&t(r)})},this.handleDestroyed=e=>{var t;e===`1`&&((t=this.listener)==null||t.resetAndReload())},this.handleAccountUpdated=async e=>{var t;let n=await this.cipher.decrypt(e);(t=this.listener)==null||t.accountUpdated(n)},this.handleMetadataUpdated=async(e,t)=>{var n;let r=await this.cipher.decrypt(t);(n=this.listener)==null||n.metadataUpdated(e,r)},this.handleWalletUsernameUpdated=async e=>{this.handleMetadataUpdated(qe,e)},this.handleAppVersionUpdated=async e=>{this.handleMetadataUpdated(Ye,e)},this.handleChainUpdated=async(e,t)=>{var n;let r=await this.cipher.decrypt(e),i=await this.cipher.decrypt(t);(n=this.listener)==null||n.chainUpdated(r,i)},this.session=e,this.cipher=new Xe(e.secret),this.listener=n;let r=new Qe(`${t}/rpc`,WebSocket);r.setConnectionStateListener(async e=>{let t=!1;switch(e){case K.DISCONNECTED:if(!this.destroyed){let e=async()=>{await new Promise(e=>setTimeout(e,5e3)),this.destroyed||r.connect().catch(()=>{e()})};e()}break;case K.CONNECTED:t=await this.handleConnected(),this.updateLastHeartbeat(),setInterval(()=>{this.heartbeat()},$e),this.shouldFetchUnseenEventsOnConnect&&this.fetchUnseenEventsAPI();break;case K.CONNECTING:}this.connected!==t&&(this.connected=t)}),r.setIncomingDataListener(e=>{var t;switch(e.type){case`Heartbeat`:this.updateLastHeartbeat();return;case`IsLinkedOK`:case`Linked`:{let t=e.type===`IsLinkedOK`?e.linked:void 0;this.linked=t||e.onlineGuests>0;break}case`GetSessionConfigOK`:case`SessionConfigUpdated`:this.handleSessionMetadataUpdated(e.metadata);break;case`Event`:this.handleIncomingEvent(e)}e.id!==void 0&&((t=this.requestResolutions.get(e.id))==null||t(e))}),this.ws=r,this.http=new Ze(t,e.id,e.key)}connect(){if(this.destroyed)throw Error(`instance is destroyed`);this.ws.connect()}async destroy(){this.destroyed||(await this.makeRequest({type:`SetSessionConfig`,id:N(this.nextReqId++),sessionId:this.session.id,metadata:{__destroyed:`1`}},{timeout:1e3}),this.destroyed=!0,this.ws.disconnect(),this.listener=void 0)}get connected(){return this._connected}set connected(e){this._connected=e}get linked(){return this._linked}set linked(e){var t,n;this._linked=e,e&&((t=this.onceLinked)==null||t.call(this)),(n=this.listener)==null||n.linkedUpdated(e)}setOnceLinked(e){return new Promise(t=>{this.linked?e().then(t):this.onceLinked=()=>{e().then(t),this.onceLinked=void 0}})}async handleIncomingEvent(e){var t;if(e.type!==`Event`||e.event!==`Web3Response`)return;let n=await this.cipher.decrypt(e.data),r=JSON.parse(n);if(r.type!==`WEB3_RESPONSE`)return;let{id:i,response:a}=r;(t=this.listener)==null||t.handleWeb3ResponseMessage(i,a)}async checkUnseenEvents(){if(!this.connected)this.shouldFetchUnseenEventsOnConnect=!0;else{await new Promise(e=>setTimeout(e,250));try{await this.fetchUnseenEventsAPI()}catch(e){console.error(`Unable to check for unseen events`,e)}}}async fetchUnseenEventsAPI(){this.shouldFetchUnseenEventsOnConnect=!1,(await this.http.fetchUnseenEvents()).forEach(e=>this.handleIncomingEvent(e))}async publishEvent(e,t,n=!1){let r=await this.cipher.encrypt(JSON.stringify(Object.assign(Object.assign({},t),{origin:location.origin,location:location.href,relaySource:`coinbaseWalletExtension`in window&&window.coinbaseWalletExtension?`injected_sdk`:`sdk`}))),i={type:`PublishEvent`,id:N(this.nextReqId++),sessionId:this.session.id,event:e,data:r,callWebhook:n};return this.setOnceLinked(async()=>{let e=await this.makeRequest(i);if(e.type===`Fail`)throw Error(e.error||`failed to publish event`);return e.eventId})}sendData(e){this.ws.sendData(JSON.stringify(e))}updateLastHeartbeat(){this.lastHeartbeatResponse=Date.now()}heartbeat(){if(Date.now()-this.lastHeartbeatResponse>$e*2)this.ws.disconnect();else try{this.ws.sendData(`h`)}catch{}}async makeRequest(e,t={timeout:et}){let n=e.id;this.sendData(e);let r;return Promise.race([new Promise((e,i)=>{r=window.setTimeout(()=>{i(Error(`request ${n} timed out`))},t.timeout)}),new Promise(e=>{this.requestResolutions.set(n,t=>{clearTimeout(r),e(t),this.requestResolutions.delete(n)})})])}async handleConnected(){return(await this.makeRequest({type:`HostSession`,id:N(this.nextReqId++),sessionId:this.session.id,sessionKey:this.session.key})).type!==`Fail`&&(this.sendData({type:`IsLinked`,id:N(this.nextReqId++),sessionId:this.session.id}),this.sendData({type:`GetSessionConfig`,id:N(this.nextReqId++),sessionId:this.session.id}),!0)}},nt=class{constructor(){this._nextRequestId=0,this.callbacks=new Map}makeRequestId(){this._nextRequestId=(this._nextRequestId+1)%2147483647;let e=this._nextRequestId,t=de(e.toString(16));return this.callbacks.get(t)&&this.callbacks.delete(t),e}};function rt(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function q(e,...t){if(!rt(e))throw Error(`Uint8Array expected`);if(t.length>0&&!t.includes(e.length))throw Error(`Uint8Array expected of length `+t+`, got length=`+e.length)}function it(e,t=!0){if(e.destroyed)throw Error(`Hash instance has been destroyed`);if(t&&e.finished)throw Error(`Hash#digest() has already been called`)}function at(e,t){q(e);let n=t.outputLen;if(e.length<n)throw Error(`digestInto() expects output buffer of length at least `+n)}function ot(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function st(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function J(e,t){return e<<32-t|e>>>t}var ct=typeof Uint8Array.from([]).toHex==`function`&&typeof Uint8Array.fromHex==`function`,lt=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`));function ut(e){if(q(e),ct)return e.toHex();let t=``;for(let n=0;n<e.length;n++)t+=lt[e[n]];return t}function dt(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function ft(e){return typeof e==`string`&&(e=dt(e)),q(e),e}var pt=class{};function mt(e){let t=t=>e().update(ft(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function ht(e,t,n,r){if(typeof e.setBigUint64==`function`)return e.setBigUint64(t,n,r);let i=BigInt(32),a=BigInt(4294967295),o=Number(n>>i&a),s=Number(n&a),c=r?4:0,l=r?0:4;e.setUint32(t+c,o,r),e.setUint32(t+l,s,r)}function gt(e,t,n){return e&t^~e&n}function _t(e,t,n){return e&t^e&n^t&n}var vt=class extends pt{constructor(e,t,n,r){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=r,this.buffer=new Uint8Array(e),this.view=st(this.buffer)}update(e){it(this),e=ft(e),q(e);let{view:t,buffer:n,blockLen:r}=this,i=e.length;for(let a=0;a<i;){let o=Math.min(r-this.pos,i-a);if(o===r){let t=st(e);for(;r<=i-a;a+=r)this.process(t,a)}else n.set(e.subarray(a,a+o),this.pos),this.pos+=o,a+=o,this.pos===r&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){it(this),at(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:r,isLE:i}=this,{pos:a}=this;t[a++]=128,ot(this.buffer.subarray(a)),this.padOffset>r-a&&(this.process(n,0),a=0);for(let e=a;e<r;e++)t[e]=0;ht(n,r-8,BigInt(this.length*8),i),this.process(n,0);let o=st(e),s=this.outputLen;if(s%4)throw Error(`_sha2: outputLen should be aligned to 32bit`);let c=s/4,l=this.get();if(c>l.length)throw Error(`_sha2: outputLen bigger than state`);for(let e=0;e<c;e++)o.setUint32(4*e,l[e],i)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||=new this.constructor,e.set(...this.get());let{blockLen:t,buffer:n,length:r,finished:i,destroyed:a,pos:o}=this;return e.destroyed=a,e.finished=i,e.length=r,e.pos=o,r%t&&e.buffer.set(n),e}clone(){return this._cloneInto()}},Y=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),yt=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),X=new Uint32Array(64),bt=class extends vt{constructor(e=32){super(64,e,8,!1),this.A=Y[0]|0,this.B=Y[1]|0,this.C=Y[2]|0,this.D=Y[3]|0,this.E=Y[4]|0,this.F=Y[5]|0,this.G=Y[6]|0,this.H=Y[7]|0}get(){let{A:e,B:t,C:n,D:r,E:i,F:a,G:o,H:s}=this;return[e,t,n,r,i,a,o,s]}set(e,t,n,r,i,a,o,s){this.A=e|0,this.B=t|0,this.C=n|0,this.D=r|0,this.E=i|0,this.F=a|0,this.G=o|0,this.H=s|0}process(e,t){for(let n=0;n<16;n++,t+=4)X[n]=e.getUint32(t,!1);for(let e=16;e<64;e++){let t=X[e-15],n=X[e-2],r=J(t,7)^J(t,18)^t>>>3,i=J(n,17)^J(n,19)^n>>>10;X[e]=i+X[e-7]+r+X[e-16]|0}let{A:n,B:r,C:i,D:a,E:o,F:s,G:c,H:l}=this;for(let e=0;e<64;e++){let t=J(o,6)^J(o,11)^J(o,25),u=l+t+gt(o,s,c)+yt[e]+X[e]|0,d=(J(n,2)^J(n,13)^J(n,22))+_t(n,r,i)|0;l=c,c=s,s=o,o=a+u|0,a=i,i=r,r=n,n=u+d|0}n=n+this.A|0,r=r+this.B|0,i=i+this.C|0,a=a+this.D|0,o=o+this.E|0,s=s+this.F|0,c=c+this.G|0,l=l+this.H|0,this.set(n,r,i,a,o,s,c,l)}roundClean(){ot(X)}destroy(){this.set(0,0,0,0,0,0,0,0),ot(this.buffer)}},xt=mt(()=>new bt),St=`session:id`,Ct=`session:secret`,wt=`session:linked`,Tt=class e{constructor(e,t,n,r=!1){this.storage=e,this.id=t,this.secret=n,this.key=ut(xt(`${t}, ${n} WalletLink`)),this._linked=!!r}static create(t){let n=P(16),r=P(32);return new e(t,n,r).save()}static load(t){let n=t.getItem(St),r=t.getItem(wt),i=t.getItem(Ct);return n&&i?new e(t,n,i,r===`1`):null}get linked(){return this._linked}set linked(e){this._linked=e,this.persistLinked()}save(){return this.storage.setItem(St,this.id),this.storage.setItem(Ct,this.secret),this.persistLinked(),this}persistLinked(){this.storage.setItem(wt,this._linked?`1`:`0`)}};function Et(){try{return window.frameElement!==null}catch{return!1}}function Dt(){try{return Et()&&window.top?window.top.location:window.location}catch{return window.location}}function Ot(){return/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test((window==null?void 0:window.navigator)?.userAgent)}function kt(){return(window==null?void 0:window.matchMedia)?.call(window,`(prefers-color-scheme: dark)`).matches??!1}var At=`@namespace svg "http://www.w3.org/2000/svg";.-cbwsdk-css-reset,.-cbwsdk-css-reset *{animation:none;animation-delay:0;animation-direction:normal;animation-duration:0;animation-fill-mode:none;animation-iteration-count:1;animation-name:none;animation-play-state:running;animation-timing-function:ease;backface-visibility:visible;background:0;background-attachment:scroll;background-clip:border-box;background-color:rgba(0,0,0,0);background-image:none;background-origin:padding-box;background-position:0 0;background-position-x:0;background-position-y:0;background-repeat:repeat;background-size:auto auto;border:0;border-style:none;border-width:medium;border-color:inherit;border-bottom:0;border-bottom-color:inherit;border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom-style:none;border-bottom-width:medium;border-collapse:separate;border-image:none;border-left:0;border-left-color:inherit;border-left-style:none;border-left-width:medium;border-radius:0;border-right:0;border-right-color:inherit;border-right-style:none;border-right-width:medium;border-spacing:0;border-top:0;border-top-color:inherit;border-top-left-radius:0;border-top-right-radius:0;border-top-style:none;border-top-width:medium;box-shadow:none;box-sizing:border-box;caption-side:top;clear:none;clip:auto;color:inherit;columns:auto;column-count:auto;column-fill:balance;column-gap:normal;column-rule:medium none currentColor;column-rule-color:currentColor;column-rule-style:none;column-rule-width:none;column-span:1;column-width:auto;counter-increment:none;counter-reset:none;direction:ltr;empty-cells:show;float:none;font:normal;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;height:auto;hyphens:none;letter-spacing:normal;line-height:normal;list-style:none;list-style-image:none;list-style-position:outside;list-style-type:disc;margin:0;margin-bottom:0;margin-left:0;margin-right:0;margin-top:0;opacity:1;orphans:0;outline:0;outline-color:invert;outline-style:none;outline-width:medium;overflow:visible;overflow-x:visible;overflow-y:visible;padding:0;padding-bottom:0;padding-left:0;padding-right:0;padding-top:0;page-break-after:auto;page-break-before:auto;page-break-inside:auto;perspective:none;perspective-origin:50% 50%;pointer-events:auto;position:static;quotes:"\\201C" "\\201D" "\\2018" "\\2019";tab-size:8;table-layout:auto;text-align:inherit;text-align-last:auto;text-decoration:none;text-decoration-color:inherit;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-shadow:none;text-transform:none;transform:none;transform-style:flat;transition:none;transition-delay:0s;transition-duration:0s;transition-property:none;transition-timing-function:ease;unicode-bidi:normal;vertical-align:baseline;visibility:visible;white-space:normal;widows:0;word-spacing:normal;z-index:auto}.-cbwsdk-css-reset strong{font-weight:bold}.-cbwsdk-css-reset *{box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;line-height:1}.-cbwsdk-css-reset [class*=container]{margin:0;padding:0}.-cbwsdk-css-reset style{display:none}`;function jt(){let e=document.createElement(`style`);e.type=`text/css`,e.appendChild(document.createTextNode(At)),document.documentElement.appendChild(e)}var Mt=`.-cbwsdk-css-reset .-gear-container{margin-left:16px !important;margin-right:9px !important;display:flex;align-items:center;justify-content:center;width:24px;height:24px;transition:opacity .25s}.-cbwsdk-css-reset .-gear-container *{user-select:none}.-cbwsdk-css-reset .-gear-container svg{opacity:0;position:absolute}.-cbwsdk-css-reset .-gear-icon{height:12px;width:12px;z-index:10000}.-cbwsdk-css-reset .-cbwsdk-snackbar{align-items:flex-end;display:flex;flex-direction:column;position:fixed;right:0;top:0;z-index:2147483647}.-cbwsdk-css-reset .-cbwsdk-snackbar *{user-select:none}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance{display:flex;flex-direction:column;margin:8px 16px 0 16px;overflow:visible;text-align:left;transform:translateX(0);transition:opacity .25s,transform .25s}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-header:hover .-gear-container svg{opacity:1}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-header{display:flex;align-items:center;background:#fff;overflow:hidden;border:1px solid #e7ebee;box-sizing:border-box;border-radius:8px;cursor:pointer}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-header-cblogo{margin:8px 8px 8px 8px}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-header *{cursor:pointer}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-header-message{color:#000;font-size:13px;line-height:1.5;user-select:none}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu{background:#fff;transition:opacity .25s ease-in-out,transform .25s linear,visibility 0s;visibility:hidden;border:1px solid #e7ebee;box-sizing:border-box;border-radius:8px;opacity:0;flex-direction:column;padding-left:8px;padding-right:8px}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item:last-child{margin-bottom:8px !important}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item:hover{background:#f5f7f8;border-radius:6px;transition:background .25s}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item:hover span{color:#050f19;transition:color .25s}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item:hover svg path{fill:#000;transition:fill .25s}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item{visibility:inherit;height:35px;margin-top:8px;margin-bottom:0;display:flex;flex-direction:row;align-items:center;padding:8px;cursor:pointer}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item *{visibility:inherit;cursor:pointer}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item-is-red:hover{background:rgba(223,95,103,.2);transition:background .25s}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item-is-red:hover *{cursor:pointer}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item-is-red:hover svg path{fill:#df5f67;transition:fill .25s}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item-is-red:hover span{color:#df5f67;transition:color .25s}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-menu-item-info{color:#aaa;font-size:13px;margin:0 8px 0 32px;position:absolute}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-hidden{opacity:0;text-align:left;transform:translateX(25%);transition:opacity .5s linear}.-cbwsdk-css-reset .-cbwsdk-snackbar-instance-expanded .-cbwsdk-snackbar-instance-menu{opacity:1;display:flex;transform:translateY(8px);visibility:visible}`,Nt=`data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEuNDkyIDEwLjQxOWE4LjkzIDguOTMgMCAwMTguOTMtOC45M2gxMS4xNjNhOC45MyA4LjkzIDAgMDE4LjkzIDguOTN2MTEuMTYzYTguOTMgOC45MyAwIDAxLTguOTMgOC45M0gxMC40MjJhOC45MyA4LjkzIDAgMDEtOC45My04LjkzVjEwLjQxOXoiIGZpbGw9IiMxNjUyRjAiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTEwLjQxOSAwSDIxLjU4QzI3LjMzNSAwIDMyIDQuNjY1IDMyIDEwLjQxOVYyMS41OEMzMiAyNy4zMzUgMjcuMzM1IDMyIDIxLjU4MSAzMkgxMC40MkM0LjY2NSAzMiAwIDI3LjMzNSAwIDIxLjU4MVYxMC40MkMwIDQuNjY1IDQuNjY1IDAgMTAuNDE5IDB6bTAgMS40ODhhOC45MyA4LjkzIDAgMDAtOC45MyA4LjkzdjExLjE2M2E4LjkzIDguOTMgMCAwMDguOTMgOC45M0gyMS41OGE4LjkzIDguOTMgMCAwMDguOTMtOC45M1YxMC40MmE4LjkzIDguOTMgMCAwMC04LjkzLTguOTNIMTAuNDJ6IiBmaWxsPSIjZmZmIi8+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xNS45OTggMjYuMDQ5Yy01LjU0OSAwLTEwLjA0Ny00LjQ5OC0xMC4wNDctMTAuMDQ3IDAtNS41NDggNC40OTgtMTAuMDQ2IDEwLjA0Ny0xMC4wNDYgNS41NDggMCAxMC4wNDYgNC40OTggMTAuMDQ2IDEwLjA0NiAwIDUuNTQ5LTQuNDk4IDEwLjA0Ny0xMC4wNDYgMTAuMDQ3eiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik0xMi43NjIgMTQuMjU0YzAtLjgyMi42NjctMS40ODkgMS40ODktMS40ODloMy40OTdjLjgyMiAwIDEuNDg4LjY2NiAxLjQ4OCAxLjQ4OXYzLjQ5N2MwIC44MjItLjY2NiAxLjQ4OC0xLjQ4OCAxLjQ4OGgtMy40OTdhMS40ODggMS40ODggMCAwMS0xLjQ4OS0xLjQ4OHYtMy40OTh6IiBmaWxsPSIjMTY1MkYwIi8+PC9zdmc+`,Pt=`data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEyIDYuNzV2LTEuNWwtMS43Mi0uNTdjLS4wOC0uMjctLjE5LS41Mi0uMzItLjc3bC44MS0xLjYyLTEuMDYtMS4wNi0xLjYyLjgxYy0uMjQtLjEzLS41LS4yNC0uNzctLjMyTDYuNzUgMGgtMS41bC0uNTcgMS43MmMtLjI3LjA4LS41My4xOS0uNzcuMzJsLTEuNjItLjgxLTEuMDYgMS4wNi44MSAxLjYyYy0uMTMuMjQtLjI0LjUtLjMyLjc3TDAgNS4yNXYxLjVsMS43Mi41N2MuMDguMjcuMTkuNTMuMzIuNzdsLS44MSAxLjYyIDEuMDYgMS4wNiAxLjYyLS44MWMuMjQuMTMuNS4yMy43Ny4zMkw1LjI1IDEyaDEuNWwuNTctMS43MmMuMjctLjA4LjUyLS4xOS43Ny0uMzJsMS42Mi44MSAxLjA2LTEuMDYtLjgxLTEuNjJjLjEzLS4yNC4yMy0uNS4zMi0uNzdMMTIgNi43NXpNNiA4LjVhMi41IDIuNSAwIDAxMC01IDIuNSAyLjUgMCAwMTAgNXoiIGZpbGw9IiMwNTBGMTkiLz48L3N2Zz4=`,Ft=class{constructor(){this.items=new Map,this.nextItemKey=0,this.root=null,this.darkMode=kt()}attach(e){this.root=document.createElement(`div`),this.root.className=`-cbwsdk-snackbar-root`,e.appendChild(this.root),this.render()}presentItem(e){let t=this.nextItemKey++;return this.items.set(t,e),this.render(),()=>{this.items.delete(t),this.render()}}clear(){this.items.clear(),this.render()}render(){this.root&&n(a(`div`,null,a(It,{darkMode:this.darkMode},Array.from(this.items.entries()).map(([e,t])=>a(Lt,Object.assign({},t,{key:e}))))),this.root)}},It=e=>a(`div`,{class:r(`-cbwsdk-snackbar-container`)},a(`style`,null,Mt),a(`div`,{class:`-cbwsdk-snackbar`},e.children)),Lt=({autoExpand:e,message:t,menuItems:n})=>{let[s,c]=i(!0),[l,u]=i(e??!1);return o(()=>{let e=[window.setTimeout(()=>{c(!1)},1),window.setTimeout(()=>{u(!0)},1e4)];return()=>{e.forEach(window.clearTimeout)}}),a(`div`,{class:r(`-cbwsdk-snackbar-instance`,s&&`-cbwsdk-snackbar-instance-hidden`,l&&`-cbwsdk-snackbar-instance-expanded`)},a(`div`,{class:`-cbwsdk-snackbar-instance-header`,onClick:()=>{u(!l)}},a(`img`,{src:Nt,class:`-cbwsdk-snackbar-instance-header-cblogo`}),` `,a(`div`,{class:`-cbwsdk-snackbar-instance-header-message`},t),a(`div`,{class:`-gear-container`},!l&&a(`svg`,{width:`24`,height:`24`,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`},a(`circle`,{cx:`12`,cy:`12`,r:`12`,fill:`#F5F7F8`})),a(`img`,{src:Pt,class:`-gear-icon`,title:`Expand`}))),n&&n.length>0&&a(`div`,{class:`-cbwsdk-snackbar-instance-menu`},n.map((e,t)=>a(`div`,{class:r(`-cbwsdk-snackbar-instance-menu-item`,e.isRed&&`-cbwsdk-snackbar-instance-menu-item-is-red`),onClick:e.onClick,key:t},a(`svg`,{width:e.svgWidth,height:e.svgHeight,viewBox:`0 0 10 11`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`},a(`path`,{"fill-rule":e.defaultFillRule,"clip-rule":e.defaultClipRule,d:e.path,fill:`#AAAAAA`})),a(`span`,{class:r(`-cbwsdk-snackbar-instance-menu-item-info`,e.isRed&&`-cbwsdk-snackbar-instance-menu-item-info-is-red`)},e.info)))))},Rt=`M5.00008 0.96875C6.73133 0.96875 8.23758 1.94375 9.00008 3.375L10.0001 2.375V5.5H9.53133H7.96883H6.87508L7.80633 4.56875C7.41258 3.3875 6.31258 2.53125 5.00008 2.53125C3.76258 2.53125 2.70633 3.2875 2.25633 4.36875L0.812576 3.76875C1.50008 2.125 3.11258 0.96875 5.00008 0.96875ZM2.19375 6.43125C2.5875 7.6125 3.6875 8.46875 5 8.46875C6.2375 8.46875 7.29375 7.7125 7.74375 6.63125L9.1875 7.23125C8.5 8.875 6.8875 10.0312 5 10.0312C3.26875 10.0312 1.7625 9.05625 1 7.625L0 8.625V5.5H0.46875H2.03125H3.125L2.19375 6.43125Z`,zt=class{constructor(){this.attached=!1,this.snackbar=new Ft}attach(){if(this.attached)throw Error(`Coinbase Wallet SDK UI is already attached`);let e=document.documentElement,t=document.createElement(`div`);t.className=`-cbwsdk-css-reset`,e.appendChild(t),this.snackbar.attach(t),this.attached=!0,jt()}showConnecting(e){let t;return t=e.isUnlinkedErrorState?{autoExpand:!0,message:`Connection lost`,menuItems:[{isRed:!1,info:`Reset connection`,svgWidth:`10`,svgHeight:`11`,path:`M5.00008 0.96875C6.73133 0.96875 8.23758 1.94375 9.00008 3.375L10.0001 2.375V5.5H9.53133H7.96883H6.87508L7.80633 4.56875C7.41258 3.3875 6.31258 2.53125 5.00008 2.53125C3.76258 2.53125 2.70633 3.2875 2.25633 4.36875L0.812576 3.76875C1.50008 2.125 3.11258 0.96875 5.00008 0.96875ZM2.19375 6.43125C2.5875 7.6125 3.6875 8.46875 5 8.46875C6.2375 8.46875 7.29375 7.7125 7.74375 6.63125L9.1875 7.23125C8.5 8.875 6.8875 10.0312 5 10.0312C3.26875 10.0312 1.7625 9.05625 1 7.625L0 8.625V5.5H0.46875H2.03125H3.125L2.19375 6.43125Z`,defaultFillRule:`evenodd`,defaultClipRule:`evenodd`,onClick:e.onResetConnection}]}:{message:`Confirm on phone`,menuItems:[{isRed:!0,info:`Cancel transaction`,svgWidth:`11`,svgHeight:`11`,path:`M10.3711 1.52346L9.21775 0.370117L5.37109 4.21022L1.52444 0.370117L0.371094 1.52346L4.2112 5.37012L0.371094 9.21677L1.52444 10.3701L5.37109 6.53001L9.21775 10.3701L10.3711 9.21677L6.53099 5.37012L10.3711 1.52346Z`,defaultFillRule:`inherit`,defaultClipRule:`inherit`,onClick:e.onCancel},{isRed:!1,info:`Reset connection`,svgWidth:`10`,svgHeight:`11`,path:Rt,defaultFillRule:`evenodd`,defaultClipRule:`evenodd`,onClick:e.onResetConnection}]},this.snackbar.presentItem(t)}},Bt=`.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;transition:opacity .25s;background-color:rgba(10,11,13,.5)}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-backdrop-hidden{opacity:0}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-box{display:block;position:fixed;top:50%;left:50%;transform:translate(-50%, -50%);padding:20px;border-radius:8px;background-color:#fff;color:#0a0b0d}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-box p{display:block;font-weight:400;font-size:14px;line-height:20px;padding-bottom:12px;color:#5b636e}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-box button{appearance:none;border:none;background:none;color:#0052ff;padding:0;text-decoration:none;display:block;font-weight:600;font-size:16px;line-height:24px}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-box.dark{background-color:#0a0b0d;color:#fff}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-box.dark button{color:#0052ff}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-box.light{background-color:#fff;color:#0a0b0d}.-cbwsdk-css-reset .-cbwsdk-redirect-dialog-box.light button{color:#0052ff}`,Vt=class{constructor(){this.root=null,this.darkMode=kt()}attach(){let e=document.documentElement;this.root=document.createElement(`div`),this.root.className=`-cbwsdk-css-reset`,e.appendChild(this.root),jt()}present(e){this.render(e)}clear(){this.render(null)}render(e){this.root&&(n(null,this.root),e&&n(a(Ht,Object.assign({},e,{onDismiss:()=>{this.clear()},darkMode:this.darkMode})),this.root))}},Ht=({title:e,buttonText:t,darkMode:n,onButtonClick:i,onDismiss:o})=>{let s=n?`dark`:`light`;return a(It,{darkMode:n},a(`div`,{class:`-cbwsdk-redirect-dialog`},a(`style`,null,Bt),a(`div`,{class:`-cbwsdk-redirect-dialog-backdrop`,onClick:o}),a(`div`,{class:r(`-cbwsdk-redirect-dialog-box`,s)},a(`p`,null,e),a(`button`,{onClick:i},t))))},Ut=`https://keys.coinbase.com/connect`,Wt=`https://rpc.wallet.coinbase.com`,Gt=`https://www.walletlink.org`,Kt=`https://go.cb-w.com/walletlink`,qt=class{constructor(){this.attached=!1,this.redirectDialog=new Vt}attach(){if(this.attached)throw Error(`Coinbase Wallet SDK UI is already attached`);this.redirectDialog.attach(),this.attached=!0}redirectToCoinbaseWallet(e){let t=new URL(Kt);t.searchParams.append(`redirect_url`,Dt().href),e&&t.searchParams.append(`wl_url`,e);let n=document.createElement(`a`);n.target=`cbw-opener`,n.href=t.href,n.rel=`noreferrer noopener`,n.click()}openCoinbaseWalletDeeplink(e){this.redirectDialog.present({title:`Redirecting to Coinbase Wallet...`,buttonText:`Open`,onButtonClick:()=>{this.redirectToCoinbaseWallet(e)}}),setTimeout(()=>{this.redirectToCoinbaseWallet(e)},99)}showConnecting(e){return()=>{this.redirectDialog.clear()}}},Jt=class e{constructor(t){this.chainCallbackParams={chainId:``,jsonRpcUrl:``},this.isMobileWeb=Ot(),this.linkedUpdated=e=>{this.isLinked=e;let t=this.storage.getItem(Je);if(e&&(this._session.linked=e),this.isUnlinkedErrorState=!1,t){let n=t.split(` `),r=this.storage.getItem(`IsStandaloneSigning`)===`true`;n[0]!==``&&!e&&this._session.linked&&!r&&(this.isUnlinkedErrorState=!0)}},this.metadataUpdated=(e,t)=>{this.storage.setItem(e,t)},this.chainUpdated=(e,t)=>{(this.chainCallbackParams.chainId!==e||this.chainCallbackParams.jsonRpcUrl!==t)&&(this.chainCallbackParams={chainId:e,jsonRpcUrl:t},this.chainCallback&&this.chainCallback(t,Number.parseInt(e,10)))},this.accountUpdated=t=>{this.accountsCallback&&this.accountsCallback([t]),e.accountRequestCallbackIds.size>0&&(Array.from(e.accountRequestCallbackIds.values()).forEach(e=>{this.invokeCallback(e,{method:`requestEthereumAccounts`,result:[t]})}),e.accountRequestCallbackIds.clear())},this.resetAndReload=this.resetAndReload.bind(this),this.linkAPIUrl=t.linkAPIUrl,this.storage=t.storage,this.metadata=t.metadata,this.accountsCallback=t.accountsCallback,this.chainCallback=t.chainCallback;let{session:n,ui:r,connection:i}=this.subscribe();this._session=n,this.connection=i,this.relayEventManager=new nt,this.ui=r,this.ui.attach()}subscribe(){let e=Tt.load(this.storage)||Tt.create(this.storage),{linkAPIUrl:t}=this,n=new tt({session:e,linkAPIUrl:t,listener:this}),r=this.isMobileWeb?new qt:new zt;return n.connect(),{session:e,ui:r,connection:n}}resetAndReload(){this.connection.destroy().then(()=>{Tt.load(this.storage)?.id===this._session.id&&h.clearAll(),document.location.reload()}).catch(e=>{})}signEthereumTransaction(e){return this.sendRequest({method:`signEthereumTransaction`,params:{fromAddress:e.fromAddress,toAddress:e.toAddress,weiValue:L(e.weiValue),data:I(e.data,!0),nonce:e.nonce,gasPriceInWei:e.gasPriceInWei?L(e.gasPriceInWei):null,maxFeePerGas:e.gasPriceInWei?L(e.gasPriceInWei):null,maxPriorityFeePerGas:e.gasPriceInWei?L(e.gasPriceInWei):null,gasLimit:e.gasLimit?L(e.gasLimit):null,chainId:e.chainId,shouldSubmit:!1}})}signAndSubmitEthereumTransaction(e){return this.sendRequest({method:`signEthereumTransaction`,params:{fromAddress:e.fromAddress,toAddress:e.toAddress,weiValue:L(e.weiValue),data:I(e.data,!0),nonce:e.nonce,gasPriceInWei:e.gasPriceInWei?L(e.gasPriceInWei):null,maxFeePerGas:e.maxFeePerGas?L(e.maxFeePerGas):null,maxPriorityFeePerGas:e.maxPriorityFeePerGas?L(e.maxPriorityFeePerGas):null,gasLimit:e.gasLimit?L(e.gasLimit):null,chainId:e.chainId,shouldSubmit:!0}})}submitEthereumTransaction(e,t){return this.sendRequest({method:`submitEthereumTransaction`,params:{signedTransaction:I(e,!0),chainId:t}})}getWalletLinkSession(){return this._session}sendRequest(e){let t=null,n=P(8),r=r=>{this.publishWeb3RequestCanceledEvent(n),this.handleErrorResponse(n,e.method,r),t?.()};return new Promise((i,a)=>{t=this.ui.showConnecting({isUnlinkedErrorState:this.isUnlinkedErrorState,onCancel:r,onResetConnection:this.resetAndReload}),this.relayEventManager.callbacks.set(n,e=>{if(t?.(),G(e))return a(Error(e.errorMessage));i(e)}),this.publishWeb3RequestEvent(n,e)})}publishWeb3RequestEvent(e,t){let n={type:`WEB3_REQUEST`,id:e,request:t};this.publishEvent(`Web3Request`,n,!0).then(e=>{}).catch(e=>{this.handleWeb3ResponseMessage(n.id,{method:t.method,errorMessage:e.message})}),this.isMobileWeb&&this.openCoinbaseWalletDeeplink(t.method)}openCoinbaseWalletDeeplink(e){if(this.ui instanceof qt)switch(e){case`requestEthereumAccounts`:case`switchEthereumChain`:return;default:window.addEventListener(`blur`,()=>{window.addEventListener(`focus`,()=>{this.connection.checkUnseenEvents()},{once:!0})},{once:!0}),this.ui.openCoinbaseWalletDeeplink()}}publishWeb3RequestCanceledEvent(e){let t={type:`WEB3_REQUEST_CANCELED`,id:e};this.publishEvent(`Web3RequestCanceled`,t,!1).then()}publishEvent(e,t,n){return this.connection.publishEvent(e,t,n)}handleWeb3ResponseMessage(t,n){n.method===`requestEthereumAccounts`?(e.accountRequestCallbackIds.forEach(e=>this.invokeCallback(e,n)),e.accountRequestCallbackIds.clear()):this.invokeCallback(t,n)}handleErrorResponse(e,t,n){let r=n?.message??`Unspecified error message.`;this.handleWeb3ResponseMessage(e,{method:t,errorMessage:r})}invokeCallback(e,t){let n=this.relayEventManager.callbacks.get(e);n&&(n(t),this.relayEventManager.callbacks.delete(e))}requestEthereumAccounts(){let{appName:t,appLogoUrl:n}=this.metadata,r={method:`requestEthereumAccounts`,params:{appName:t,appLogoUrl:n}},i=P(8);return new Promise((t,n)=>{this.relayEventManager.callbacks.set(i,e=>{if(G(e))return n(Error(e.errorMessage));t(e)}),e.accountRequestCallbackIds.add(i),this.publishWeb3RequestEvent(i,r)})}watchAsset(e,t,n,r,i,a){let o={method:`watchAsset`,params:{type:e,options:{address:t,symbol:n,decimals:r,image:i},chainId:a}},s=null,c=P(8);return s=this.ui.showConnecting({isUnlinkedErrorState:this.isUnlinkedErrorState,onCancel:e=>{this.publishWeb3RequestCanceledEvent(c),this.handleErrorResponse(c,o.method,e),s?.()},onResetConnection:this.resetAndReload}),new Promise((e,t)=>{this.relayEventManager.callbacks.set(c,n=>{if(s?.(),G(n))return t(Error(n.errorMessage));e(n)}),this.publishWeb3RequestEvent(c,o)})}addEthereumChain(e,t,n,r,i,a){let o={method:`addEthereumChain`,params:{chainId:e,rpcUrls:t,blockExplorerUrls:r,chainName:i,iconUrls:n,nativeCurrency:a}},s=null,c=P(8);return s=this.ui.showConnecting({isUnlinkedErrorState:this.isUnlinkedErrorState,onCancel:e=>{this.publishWeb3RequestCanceledEvent(c),this.handleErrorResponse(c,o.method,e),s?.()},onResetConnection:this.resetAndReload}),new Promise((e,t)=>{this.relayEventManager.callbacks.set(c,n=>{if(s?.(),G(n))return t(Error(n.errorMessage));e(n)}),this.publishWeb3RequestEvent(c,o)})}switchEthereumChain(e,t){let n={method:`switchEthereumChain`,params:Object.assign({chainId:e},{address:t})},r=null,i=P(8);return r=this.ui.showConnecting({isUnlinkedErrorState:this.isUnlinkedErrorState,onCancel:e=>{this.publishWeb3RequestCanceledEvent(i),this.handleErrorResponse(i,n.method,e),r?.()},onResetConnection:this.resetAndReload}),new Promise((e,t)=>{this.relayEventManager.callbacks.set(i,n=>{if(r?.(),G(n)&&n.errorCode)return t(D.provider.custom({code:n.errorCode,message:`Unrecognized chain ID. Try adding the chain using addEthereumChain first.`}));if(G(n))return t(Error(n.errorMessage));e(n)}),this.publishWeb3RequestEvent(i,n)})}};Jt.accountRequestCallbackIds=new Set;var Z=e(Ke(),1),Yt=`DefaultChainId`,Xt=`DefaultJsonRpcUrl`,Zt=class{constructor(e){this._relay=null,this._addresses=[],this.metadata=e.metadata,this._storage=new h(`walletlink`,Gt),this.callback=e.callback||null;let t=this._storage.getItem(Je);if(t){let e=t.split(` `);e[0]!==``&&(this._addresses=e.map(e=>B(e)))}this.initializeRelay()}getSession(){let{id:e,secret:t}=this.initializeRelay().getWalletLinkSession();return{id:e,secret:t}}async handshake(){await this._eth_requestAccounts()}get selectedAddress(){return this._addresses[0]||void 0}get jsonRpcUrl(){return this._storage.getItem(Xt)??void 0}set jsonRpcUrl(e){this._storage.setItem(Xt,e)}updateProviderInfo(e,t){var n;this.jsonRpcUrl=e;let r=this.getChainId();this._storage.setItem(Yt,t.toString(10)),V(t)!==r&&((n=this.callback)==null||n.call(this,`chainChanged`,R(t)))}async watchAsset(e){let t=Array.isArray(e)?e[0]:e;if(!t.type)throw D.rpc.invalidParams(`Type is required`);if(t?.type!==`ERC20`)throw D.rpc.invalidParams(`Asset of type '${t.type}' is not supported`);if(!t?.options)throw D.rpc.invalidParams(`Options are required`);if(!t?.options.address)throw D.rpc.invalidParams(`Address is required`);let n=this.getChainId(),{address:r,symbol:i,image:a,decimals:o}=t.options,s=await this.initializeRelay().watchAsset(t.type,r,i,o,a,n?.toString());return!G(s)&&!!s.result}async addEthereumChain(e){let t=e[0];if(t.rpcUrls?.length===0)throw D.rpc.invalidParams(`please pass in at least 1 rpcUrl`);if(!t.chainName||t.chainName.trim()===``)throw D.rpc.invalidParams(`chainName is a required field`);if(!t.nativeCurrency)throw D.rpc.invalidParams(`nativeCurrency is a required field`);let n=Number.parseInt(t.chainId,16);if(n===this.getChainId())return!1;let r=this.initializeRelay(),{rpcUrls:i=[],blockExplorerUrls:a=[],chainName:o,iconUrls:s=[],nativeCurrency:c}=t,l=await r.addEthereumChain(n.toString(),i,s,a,o,c);if(G(l))return!1;if(l.result?.isApproved===!0)return this.updateProviderInfo(i[0],n),null;throw D.rpc.internal(`unable to add ethereum chain`)}async switchEthereumChain(e){let t=e[0],n=Number.parseInt(t.chainId,16),r=await this.initializeRelay().switchEthereumChain(n.toString(10),this.selectedAddress||void 0);if(G(r))throw r;let i=r.result;return i.isApproved&&i.rpcUrl.length>0&&this.updateProviderInfo(i.rpcUrl,n),null}async cleanup(){this.callback=null,this._relay&&this._relay.resetAndReload(),this._storage.clear()}_setAddresses(e,t){var n;if(!Array.isArray(e))throw Error(`addresses is not an array`);let r=e.map(e=>B(e));JSON.stringify(r)!==JSON.stringify(this._addresses)&&(this._addresses=r,(n=this.callback)==null||n.call(this,`accountsChanged`,r),this._storage.setItem(Je,r.join(` `)))}async request(e){let t=e.params||[];switch(e.method){case`eth_accounts`:return[...this._addresses];case`eth_coinbase`:return this.selectedAddress||null;case`net_version`:return this.getChainId().toString(10);case`eth_chainId`:return R(this.getChainId());case`eth_requestAccounts`:return this._eth_requestAccounts();case`eth_ecRecover`:case`personal_ecRecover`:return this.ecRecover(e);case`personal_sign`:return this.personalSign(e);case`eth_signTransaction`:return this._eth_signTransaction(t);case`eth_sendRawTransaction`:return this._eth_sendRawTransaction(t);case`eth_sendTransaction`:return this._eth_sendTransaction(t);case`eth_signTypedData_v1`:case`eth_signTypedData_v3`:case`eth_signTypedData_v4`:case`eth_signTypedData`:return this.signTypedData(e);case`wallet_addEthereumChain`:return this.addEthereumChain(t);case`wallet_switchEthereumChain`:return this.switchEthereumChain(t);case`wallet_watchAsset`:return this.watchAsset(t);default:if(!this.jsonRpcUrl)throw D.rpc.internal(`No RPC URL set for chain`);return W(e,this.jsonRpcUrl)}}_ensureKnownAddress(e){let t=B(e);if(!this._addresses.map(e=>B(e)).includes(t))throw Error(`Unknown Ethereum address`)}_prepareTransactionParams(e){let t=e.from?B(e.from):this.selectedAddress;if(!t)throw Error(`Ethereum address is unavailable`);return this._ensureKnownAddress(t),{fromAddress:t,toAddress:e.to?B(e.to):null,weiValue:e.value==null?BigInt(0):H(e.value),data:e.data?me(e.data):Buffer.alloc(0),nonce:e.nonce==null?null:V(e.nonce),gasPriceInWei:e.gasPrice==null?null:H(e.gasPrice),maxFeePerGas:e.maxFeePerGas==null?null:H(e.maxFeePerGas),maxPriorityFeePerGas:e.maxPriorityFeePerGas==null?null:H(e.maxPriorityFeePerGas),gasLimit:e.gas==null?null:H(e.gas),chainId:e.chainId?V(e.chainId):this.getChainId()}}async ecRecover(e){let{method:t,params:n}=e;if(!Array.isArray(n))throw D.rpc.invalidParams();let r=await this.initializeRelay().sendRequest({method:`ethereumAddressFromSignedMessage`,params:{message:ce(n[0]),signature:ce(n[1]),addPrefix:t===`personal_ecRecover`}});if(G(r))throw r;return r.result}getChainId(){return Number.parseInt(this._storage.getItem(Yt)??`1`,10)}async _eth_requestAccounts(){var e,t;if(this._addresses.length>0)return(e=this.callback)==null||e.call(this,`connect`,{chainId:R(this.getChainId())}),this._addresses;let n=await this.initializeRelay().requestEthereumAccounts();if(G(n))throw n;if(!n.result)throw Error(`accounts received is empty`);return this._setAddresses(n.result),(t=this.callback)==null||t.call(this,`connect`,{chainId:R(this.getChainId())}),this._addresses}async personalSign({params:e}){if(!Array.isArray(e))throw D.rpc.invalidParams();let t=e[1],n=e[0];this._ensureKnownAddress(t);let r=await this.initializeRelay().sendRequest({method:`signEthereumMessage`,params:{address:B(t),message:ce(n),addPrefix:!0,typedDataJson:null}});if(G(r))throw r;return r.result}async _eth_signTransaction(e){let t=this._prepareTransactionParams(e[0]||{}),n=await this.initializeRelay().signEthereumTransaction(t);if(G(n))throw n;return n.result}async _eth_sendRawTransaction(e){let t=me(e[0]),n=await this.initializeRelay().submitEthereumTransaction(t,this.getChainId());if(G(n))throw n;return n.result}async _eth_sendTransaction(e){let t=this._prepareTransactionParams(e[0]||{}),n=await this.initializeRelay().signAndSubmitEthereumTransaction(t);if(G(n))throw n;return n.result}async signTypedData(e){let{method:t,params:n}=e;if(!Array.isArray(n))throw D.rpc.invalidParams();let r=e=>I({eth_signTypedData_v1:Z.default.hashForSignTypedDataLegacy,eth_signTypedData_v3:Z.default.hashForSignTypedData_v3,eth_signTypedData_v4:Z.default.hashForSignTypedData_v4,eth_signTypedData:Z.default.hashForSignTypedData_v4}[t]({data:he(e)}),!0),i=n[+(t===`eth_signTypedData_v1`)],a=n[t===`eth_signTypedData_v1`?0:1];this._ensureKnownAddress(i);let o=await this.initializeRelay().sendRequest({method:`signEthereumMessage`,params:{address:B(i),message:r(a),typedDataJson:JSON.stringify(a,null,2),addPrefix:!1}});if(G(o))throw o;return o.result}initializeRelay(){return this._relay||=new Jt({linkAPIUrl:Gt,storage:this._storage,metadata:this.metadata,accountsCallback:this._setAddresses.bind(this),chainCallback:this.updateProviderInfo.bind(this)}),this._relay}},Qt=`SignerType`,$t=new h(`CBWSDK`,`SignerConfigurator`);function en(){return $t.getItem(Qt)}function tn(e){$t.setItem(Qt,e)}async function nn(e){let{communicator:t,metadata:n,handshakeRequest:r,callback:i}=e;an(t,n,i).catch(()=>{});let a={id:crypto.randomUUID(),event:`selectSignerType`,data:Object.assign(Object.assign({},e.preference),{handshakeRequest:r})},{data:o}=await t.postRequestAndWaitForResponse(a);return o}function rn(e){let{signerType:t,metadata:n,communicator:r,callback:i}=e;switch(t){case`scw`:return new ze({metadata:n,callback:i,communicator:r});case`walletlink`:return new Zt({metadata:n,callback:i})}}async function an(e,t,n){await e.onMessage(({event:e})=>e===`WalletLinkSessionRequest`);let r=new Zt({metadata:t,callback:n});e.postMessage({event:`WalletLinkUpdate`,data:{session:r.getSession()}}),await r.handshake(),e.postMessage({event:`WalletLinkUpdate`,data:{connected:!0}})}var on=`Coinbase Wallet SDK requires the Cross-Origin-Opener-Policy header to not be set to 'same-origin'. This is to ensure that the SDK can communicate with the Coinbase Smart Wallet app.
|
|
2
|
+
|
|
3
|
+
Please see https://www.smartwallet.dev/guides/tips/popup-tips#cross-origin-opener-policy for more information.`,{checkCrossOriginOpenerPolicy:sn,getCrossOriginOpenerPolicy:cn}=(()=>{let e;return{getCrossOriginOpenerPolicy:()=>e===void 0?`undefined`:e,checkCrossOriginOpenerPolicy:async()=>{if(typeof window>`u`)e=`non-browser-env`;else try{let t=`${window.location.origin}${window.location.pathname}`,n=await fetch(t,{method:`HEAD`});if(!n.ok)throw Error(`HTTP error! status: ${n.status}`);e=n.headers.get(`Cross-Origin-Opener-Policy`)??`null`,e===`same-origin`&&console.error(on)}catch(t){console.error(`Error checking Cross-Origin-Opener-Policy:`,t.message),e=`error`}}}})(),ln=420,un=540,dn={isRed:!1,info:`Retry`,svgWidth:`10`,svgHeight:`11`,path:Rt,defaultFillRule:`evenodd`,defaultClipRule:`evenodd`},fn=`Popup was blocked. Try again.`,Q=null;function pn(e){let t=(window.innerWidth-ln)/2+window.screenX,n=(window.innerHeight-un)/2+window.screenY;hn(e);function r(){let r=`wallet_${crypto.randomUUID()}`,i=window.open(e,r,`width=${ln}, height=${un}, left=${t}, top=${n}`);return i?.focus(),i||null}let i=r();if(!i){let e=gn();return new Promise((t,n)=>{e.presentItem({autoExpand:!0,message:fn,menuItems:[Object.assign(Object.assign({},dn),{onClick:()=>{i=r(),i?t(i):n(D.rpc.internal(`Popup window was blocked`)),e.clear()}})]})})}return Promise.resolve(i)}function mn(e){e&&!e.closed&&e.close()}function hn(e){let t={sdkName:Ae,sdkVersion:U,origin:window.location.origin,coop:cn()};for(let[n,r]of Object.entries(t))e.searchParams.append(n,r.toString())}function gn(){if(!Q){let e=document.createElement(`div`);e.className=`-cbwsdk-css-reset`,document.body.appendChild(e),Q=new Ft,Q.attach(e)}return Q}var _n=class{constructor({url:e=Ut,metadata:t,preference:n}){this.popup=null,this.listeners=new Map,this.postMessage=async e=>{(await this.waitForPopupLoaded()).postMessage(e,this.url.origin)},this.postRequestAndWaitForResponse=async e=>{let t=this.onMessage(({requestId:t})=>t===e.id);return this.postMessage(e),await t},this.onMessage=async e=>new Promise((t,n)=>{let r=n=>{if(n.origin!==this.url.origin)return;let i=n.data;e(i)&&(t(i),window.removeEventListener(`message`,r),this.listeners.delete(r))};window.addEventListener(`message`,r),this.listeners.set(r,{reject:n})}),this.disconnect=()=>{mn(this.popup),this.popup=null,this.listeners.forEach(({reject:e},t)=>{e(D.provider.userRejectedRequest(`Request rejected`)),window.removeEventListener(`message`,t)}),this.listeners.clear()},this.waitForPopupLoaded=async()=>this.popup&&!this.popup.closed?(this.popup.focus(),this.popup):(this.popup=await pn(this.url),this.onMessage(({event:e})=>e===`PopupUnload`).then(this.disconnect).catch(()=>{}),this.onMessage(({event:e})=>e===`PopupLoaded`).then(e=>{this.postMessage({requestId:e.id,data:{version:U,metadata:this.metadata,preference:this.preference,location:window.location.toString()}})}).then(()=>{if(!this.popup)throw D.rpc.internal();return this.popup})),this.url=new URL(e),this.metadata=t,this.preference=n}};function vn(e){let t=S(yn(e),{shouldIncludeStack:!0}),n=new URL(`https://docs.cloud.coinbase.com/wallet-sdk/docs/errors`);return n.searchParams.set(`version`,U),n.searchParams.set(`code`,t.code.toString()),n.searchParams.set(`message`,t.message),Object.assign(Object.assign({},t),{docUrl:n.href})}function yn(e){if(typeof e==`string`)return{message:e,code:g.rpc.internal};if(G(e)){let t=e.errorMessage,n=e.errorCode??(t.match(/(denied|rejected)/i)?g.provider.userRejectedRequest:void 0);return Object.assign(Object.assign({},e),{message:t,code:n,data:{method:e.method}})}return e}var bn=class extends s.default{},xn=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},Sn=class extends bn{constructor(e){var{metadata:t}=e,n=e.preference,{keysUrl:r}=n,i=xn(n,[`keysUrl`]);super(),this.signer=null,this.isCoinbaseWallet=!0,this.metadata=t,this.preference=i,this.communicator=new _n({url:r,metadata:t,preference:i});let a=en();a&&(this.signer=this.initSigner(a))}async request(e){try{if(Pe(e),!this.signer)switch(e.method){case`eth_requestAccounts`:{let t=await this.requestSignerSelection(e),n=this.initSigner(t);await n.handshake(e),this.signer=n,tn(t);break}case`wallet_sendCalls`:{let t=this.initSigner(`scw`);await t.handshake({method:`handshake`});let n=await t.request(e);return await t.cleanup(),n}case`wallet_getCallsStatus`:return W(e,Wt);case`net_version`:return 1;case`eth_chainId`:return R(1);default:throw D.provider.unauthorized(`Must call 'eth_requestAccounts' before other methods`)}return await this.signer.request(e)}catch(e){let{code:t}=e;return t===g.provider.unauthorized&&this.disconnect(),Promise.reject(vn(e))}}async enable(){return console.warn(`.enable() has been deprecated. Please use .request({ method: "eth_requestAccounts" }) instead.`),await this.request({method:`eth_requestAccounts`})}async disconnect(){await this.signer?.cleanup(),this.signer=null,h.clearAll(),this.emit(`disconnect`,D.provider.disconnected(`User initiated disconnection`))}requestSignerSelection(e){return nn({communicator:this.communicator,preference:this.preference,metadata:this.metadata,handshakeRequest:e,callback:this.emit.bind(this)})}initSigner(e){return rn({signerType:e,metadata:this.metadata,communicator:this.communicator,callback:this.emit.bind(this)})}};function Cn(e){if(e){if(![`all`,`smartWalletOnly`,`eoaOnly`].includes(e.options))throw Error(`Invalid options: ${e.options}`);if(e.attribution&&e.attribution.auto!==void 0&&e.attribution.dataSuffix!==void 0)throw Error(`Attribution cannot contain both auto and dataSuffix properties`)}}function wn(e){let t={metadata:e.metadata,preference:e.preference};return Ne(t)??new Sn(t)}var Tn={options:`all`};function En(e){new h(`CBWSDK`).setItem(`VERSION`,U),sn();let t={metadata:{appName:e.appName||`Dapp`,appLogoUrl:e.appLogoUrl||``,appChainIds:e.appChainIds||[]},preference:Object.assign(Tn,e.preference??{})};Cn(t.preference);let n=null;return{getProvider:()=>(n||=wn(t),n)}}var $,Dn=[1,11155111,137,10,8453,84532,42161,7777777,43114,56],On=class extends d{async initialize(){await this.syncAccounts(),this.initialized=!0,this.emit(`initialized`)}async connect(e){return e.showPrompt&&await this.promptConnection(),await this.isConnected()?this.getConnectedWallet():null}disconnect(){this.proxyProvider.walletProvider.disconnect(),this.onDisconnect()}get walletBranding(){return{name:this.displayName,icon:f,id:`com.coinbase.wallet`}}async promptConnection(){p.debug(`Prompting connection via Coinbase Wallet`,{wallet:this.walletClientType});try{p.rpcRequest(`eth_requestAccounts`,this.walletClientType);let e=await this.proxyProvider.request({method:`eth_requestAccounts`});if(p.rpcResponse(`eth_requestAccounts`,this.walletClientType),!e||e.length===0||!e[0])throw new l(`Unable to retrieve accounts`);this.connected=!0,await this.syncAccounts([e[0]])}catch(e){throw p.connectionFailed(this.walletClientType,e,{method:`coinbase_wallet`}),m(e)}}updateConnectionPreference(e){this.coinbaseWalletConfig={...this.coinbaseWalletConfig,preference:{...this.coinbaseWalletConfig.preference,options:e}},this.walletClientType=e===`smartWalletOnly`?`coinbase_smart_wallet`:`coinbase_wallet`,$=En({...this.coinbaseWalletConfig}),this.proxyProvider.setWalletProvider($.getProvider())}constructor(e,t,n,r){if(super(`coinbase_wallet`,e,t,n),this.connectorType=`coinbase_wallet`,this.displayName=`Coinbase Wallet`,this.proxyProvider=new u(void 0,this.rpcTimeoutDuration),this.subscribeListeners(),this.coinbaseWalletConfig={...r,appChainIds:[t.id].concat(e.map((e=>e.id)))},this.walletClientType=this.coinbaseWalletConfig.preference?.options===`smartWalletOnly`?`coinbase_smart_wallet`:`coinbase_wallet`,this.walletClientType===`coinbase_smart_wallet`&&(this.displayName=`Coinbase Smart Wallet`),!$){let e=this.coinbaseWalletConfig.preference?.options===`eoaOnly`?[]:(this.coinbaseWalletConfig.appChainIds??[]).filter((e=>!Dn.includes(e)));e.length>0&&!e.every((e=>c.has(e)))&&console.info(`The configured chains are not supported by Coinbase Smart Wallet: ${e.join(`, `)}`),$=En(this.coinbaseWalletConfig)}this.proxyProvider.setWalletProvider($.getProvider())}};export{On as CoinbaseWalletConnector};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./createLucideIcon-
|
|
1
|
+
import{t as e}from"./createLucideIcon-BsERoFTA.js";var t=e(`copy`,[[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]);export{t};
|