@seams/wallet 0.26.0 → 0.27.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/.build-inputs.sha256 +1 -1
- package/dist/esm/SeamsWeb/publicApi/near.js +22 -11
- package/dist/esm/SeamsWeb/walletIframe/client/nearCommands.js +9 -10
- package/dist/esm/SeamsWeb/walletIframe/client/router.js +57 -38
- package/dist/esm/SeamsWeb/walletIframe/host/surface-measurement-reporter.js +1 -0
- package/dist/esm/SeamsWeb/walletIframe/host/ui/auth-menu/AuthMenuSurface.js +1 -1
- package/dist/esm/SeamsWeb/walletIframe/host/ui/auth-menu/mountAuthMenuSurface.js +28 -0
- package/dist/esm/SeamsWeb/walletIframe/shared/messages.js +6 -0
- package/dist/esm/core/rpcClients/near/NearClient.js +7 -0
- package/dist/esm/core/signingEngine/flows/signNear/signTransactions.js +3 -0
- package/dist/esm/core/signingEngine/nearTransactionSubmission.js +89 -0
- package/dist/esm/core/signingEngine/uiConfirm/ui/confirm-surface-resize.js +2 -2
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ReviewDisclosure.js +7 -1
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/mountConfirmationSurface.js +123 -14
- package/dist/esm/core/ui/messages.js +12 -0
- package/dist/esm/react/components/AccountMenuButton/icons/HoverArrowIcon.css +27 -3
- package/dist/esm/react/components/AccountMenuButton/icons/HoverArrowIcon.js +2 -2
- package/dist/esm/react/components/ExternalNearWalletIcon.js +32 -0
- package/dist/esm/react/components/HostedSeamsAuthMenu/WalletConnectorMenu.css +182 -0
- package/dist/esm/react/components/HostedSeamsAuthMenu/WalletConnectorMenu.js +315 -0
- package/dist/esm/react/components/HostedSeamsAuthMenu/shell.js +13 -4
- package/dist/esm/react/components/externalWalletBrandImages.js +7 -0
- package/dist/esm/react/externalNear.js +2 -6
- package/dist/esm/react/index.js +2 -1
- package/dist/esm/react/styles/styles.css +210 -3
- package/dist/esm/react/styles.css +1 -0
- package/dist/esm/react/transactionReview/boundCalls.js +31 -26
- package/dist/esm/sdk/{ConfirmationDrawer-BmzikAr4.js → ConfirmationDrawer-AZruQmhP.js} +1 -1
- package/dist/esm/sdk/{NonceCoordinator-CcD2FqXh.js → NonceCoordinator-3YhmDTS5.js} +1 -1
- package/dist/{public/sdk/SeamsWordmark-DqiC9-sd.js → esm/sdk/SeamsWordmark-DwvPx2UA.js} +1 -1
- package/dist/esm/sdk/{accountLifecycle-gm9X8nGm.js → accountLifecycle-6DHYWf0v.js} +1 -1
- package/dist/esm/sdk/{adapters-e7twFGov.js → adapters-d9yh1bdC.js} +1 -1
- package/dist/esm/sdk/appearance-token-vars-BJydfWT_.js +1 -0
- package/dist/{public/sdk/clientSessionPersistenceState-YvVHKRoe.js → esm/sdk/clientSessionPersistenceState-BCkJAYSz.js} +1 -1
- package/dist/esm/sdk/{collectAuthenticationCredentialForChallengeB64u-DEtxiKND.js → collectAuthenticationCredentialForChallengeB64u-I4wq8OGq.js} +1 -1
- package/dist/esm/sdk/{commitQueue-CHJ7MHSI.js → commitQueue-CYruPlkm.js} +1 -1
- package/dist/esm/sdk/confirm-ui-nU6ymgiv.js +2 -0
- package/dist/esm/sdk/{device-linking-BsUTtSF7.js → device-linking-DiCNt3iA.js} +1 -1
- package/dist/esm/sdk/{deviceLinkApproval-DAZTjrud.js → deviceLinkApproval-CfEiotVt.js} +1 -1
- package/dist/esm/sdk/{display-BYzolrBs.js → display-D0EPmU4w.js} +1 -1
- package/dist/esm/sdk/{ecdsaCapabilityManifest-CXVq8Qzb.js → ecdsaCapabilityManifest-DAJEVjlP.js} +1 -1
- package/dist/esm/sdk/{ecdsaDerivationClientWasm-CVahDxLy.js → ecdsaDerivationClientWasm-AYOJgTJm.js} +1 -1
- package/dist/{public/sdk/ecdsaDerivationExport-CkmSe0ao.js → esm/sdk/ecdsaDerivationExport-DJKOzDbS.js} +1 -1
- package/dist/esm/sdk/{ecdsaWalletRecords-zRvHKRTe.js → ecdsaWalletRecords-WLyq414E.js} +1 -1
- package/dist/esm/sdk/{emailOtpEcdsaDerivationIdentity-0DIuRNRi.js → emailOtpEcdsaDerivationIdentity-HFQXc1Yw.js} +1 -1
- package/dist/esm/sdk/{enrichDisplayModelWithAbi-CLn37drs.js → enrichDisplayModelWithAbi-O6Mw4i2E.js} +1 -1
- package/dist/esm/sdk/errors-BJBDbwHk.js +1 -0
- package/dist/esm/sdk/{evmCryptoWasm-B_p82tx9.js → evmCryptoWasm-BUPb4hBH.js} +1 -1
- package/dist/esm/sdk/{export-viewer-host-3fosWJXJ.js → export-viewer-host-BtrKVXxu.js} +1 -1
- package/dist/esm/sdk/{exportKeypairOperation-pKQW5J7m.js → exportKeypairOperation-CGE9ZU1m.js} +1 -1
- package/dist/esm/sdk/host-DayrOrgm.js +1 -0
- package/dist/{public/sdk/icons-DDRXJ2W1.js → esm/sdk/icons-BlMXolHv.js} +1 -1
- package/dist/esm/sdk/{indexedDB-CWFDCCbP.js → indexedDB-C4SDsyOG.js} +1 -1
- package/dist/esm/sdk/{intentDigest-B6EshTea.js → intentDigest-HvRsBQ1z.js} +1 -1
- package/dist/esm/sdk/{lanes-C2sAP08w.js → lanes-BU-fGqY4.js} +1 -1
- package/dist/esm/sdk/{localOnly-Jw9v9GU9.js → localOnly-BATWJj78.js} +1 -1
- package/dist/{public/sdk/mountExportPrivateKeySurface-B_052qyI.js → esm/sdk/mountExportPrivateKeySurface-CyHU8bVc.js} +1 -1
- package/dist/esm/sdk/{mountRecoveryCodeBackupSurface-PutmFjf9.js → mountRecoveryCodeBackupSurface-C7aglQxf.js} +1 -1
- package/dist/esm/sdk/{nearEd25519YaoMaterialActivation-C2QNLImD.js → nearEd25519YaoMaterialActivation-BfXmy3Jr.js} +1 -1
- package/dist/{public/sdk/nearEd25519YaoSigningPreparation-K6n4Sq8_.js → esm/sdk/nearEd25519YaoSigningPreparation-DHNk0F8e.js} +1 -1
- package/dist/esm/sdk/nearRpcResults-CeHdqaS4.js +1 -0
- package/dist/esm/sdk/{nonceLaneKeys-CZjeiii7.js → nonceLaneKeys-BF_UpvIy.js} +1 -1
- package/dist/esm/sdk/{normalization-DA6o5MsH.js → normalization-Df9fZWJC.js} +1 -1
- package/dist/{public/sdk/pendingWalletRecoveryCodeBackup-B-n7vmBS.js → esm/sdk/pendingWalletRecoveryCodeBackup-Cjx-X-pP.js} +1 -1
- package/dist/esm/sdk/{presignaturePool-DjTaB0nx.js → presignaturePool-BbvqRWYw.js} +1 -1
- package/dist/{public/sdk/recovery-entrypoint-9e3SXU3t.js → esm/sdk/recovery-entrypoint-DJbMDC_m.js} +1 -1
- package/dist/esm/sdk/{registration-C988Nwzn.js → registration-CNLUYN-p.js} +1 -1
- package/dist/esm/sdk/{registration-D4AijOa8.js → registration-HSwOHZOo.js} +1 -1
- package/dist/esm/sdk/{registrationAccounts-DI_vcT7G.js → registrationAccounts-4r74gX1l.js} +1 -1
- package/dist/esm/sdk/registrationIntent-Do1tD1V7.js +1 -0
- package/dist/esm/sdk/{registrationSignerPlan-_8gsSjC0.js → registrationSignerPlan-DK2b3N_p.js} +1 -1
- package/dist/{public/sdk/requireStepUpAuth-DC9LSyRI.js → esm/sdk/requireStepUpAuth-COqCGb1i.js} +1 -1
- package/dist/esm/sdk/{resealedEnvelopeResult-BKATJaqW.js → resealedEnvelopeResult-B1p5UkYg.js} +1 -1
- package/dist/{public/sdk/routerAbNormalSigning-Da-uxxle.js → esm/sdk/routerAbNormalSigning-D-UZmCBS.js} +1 -1
- package/dist/esm/sdk/runtime-auth-BCoj7_-G.js +1 -0
- package/dist/esm/sdk/{runtime-device-link-DtjR-htE.js → runtime-device-link-DAsq5tGT.js} +1 -1
- package/dist/{public/sdk/runtime-ecdsa-tempo-BkUnzoX9.js → esm/sdk/runtime-ecdsa-tempo-CVh_Vwl6.js} +1 -1
- package/dist/{public/sdk/runtime-email-otp-CaxfpqKI.js → esm/sdk/runtime-email-otp-BxSKK9AG.js} +1 -1
- package/dist/esm/sdk/{runtime-export-Du5ugbzi.js → runtime-export-BWnQXMzT.js} +1 -1
- package/dist/esm/sdk/runtime-near-CuzPZrDS.js +1 -0
- package/dist/esm/sdk/runtime-preferences-B-nDWlm3.js +1 -0
- package/dist/esm/sdk/runtime-recovery-DpOdEJ8N.js +1 -0
- package/dist/esm/sdk/{runtime-recovery-codes-DKjOU32G.js → runtime-recovery-codes-DeUjQsxZ.js} +1 -1
- package/dist/esm/sdk/runtimeContext-5JcewRo3.js +6 -0
- package/dist/{public/sdk/secp256k1--vF2pJgR.js → esm/sdk/secp256k1-CE7-q9Sn.js} +1 -1
- package/dist/esm/sdk/sessionObservationRevision-JOvVF4Hf.js +1 -0
- package/dist/esm/sdk/{signEvmFamily-DeCQOBYN.js → signEvmFamily-BY5jlZEG.js} +1 -1
- package/dist/{public/sdk/signEvmFamilyWithUiConfirmForTempo-BIp-MeBV.js → esm/sdk/signEvmFamilyWithUiConfirmForTempo-CrMIAXUe.js} +1 -1
- package/dist/esm/sdk/{signEvmWithUiConfirm-BdLW7kqJ.js → signEvmWithUiConfirm-CGrLtMV6.js} +1 -1
- package/dist/esm/sdk/signNear-DMpJFkwF.js +1 -0
- package/dist/esm/sdk/{signatureUses-0z64Xpdj.js → signatureUses-kSrUHSSH.js} +1 -1
- package/dist/{public/sdk/signingFlow-C7fwkxPx.js → esm/sdk/signingFlow-BcetvUeS.js} +1 -1
- package/dist/{public/sdk/signingQueue-DvHGcaLc.js → esm/sdk/signingQueue-dMFOFOP5.js} +1 -1
- package/dist/esm/sdk/surface-measurement-reporter-DXsvq401.js +1 -0
- package/dist/esm/sdk/{thresholdEcdsa-CPVZNLEg.js → thresholdEcdsa-CqR1fFA-.js} +1 -1
- package/dist/esm/sdk/{trace-BQv7E-bO.js → trace--mRP2OQc.js} +1 -1
- package/dist/esm/sdk/{transaction-activity-olcDRay5.js → transaction-activity-DCzHGg3b.js} +1 -1
- package/dist/esm/sdk/{transactionReviewAdmission-DPxuDgkU.js → transactionReviewAdmission-Cf_qUZJt.js} +1 -1
- package/dist/esm/sdk/{transactionState-C8aYSDRA.js → transactionState-29T9xfvL.js} +1 -1
- package/dist/esm/sdk/tx-confirm-ui.js +173 -18
- package/dist/esm/sdk/{types-DOToeB6g.js → types-f7dyj5N6.js} +1 -1
- package/dist/esm/sdk/{unlockedEd25519ExportRootCapability-CFmunau5.js → unlockedEd25519ExportRootCapability-yzxQjIFd.js} +1 -1
- package/dist/esm/sdk/voiceid-host.js +1 -1
- package/dist/esm/sdk/wallet-iframe-host-ecdsa.js +1 -1
- package/dist/esm/sdk/wallet-iframe-host-full.js +1 -1
- package/dist/esm/sdk/wallet-iframe-host-near.js +1 -1
- package/dist/esm/sdk/wallet-iframe-host-runtime.js +1 -1
- package/dist/{public/sdk/wallet-recovery-jyfGoejZ.js → esm/sdk/wallet-recovery-BZB2Vu3X.js} +1 -1
- package/dist/esm/sdk/wallet-ui.css +1 -1
- package/dist/esm/sdk/{walletAuthMethodRecord-Bi78B6Ab.js → walletAuthMethodRecord-DLBB5fez.js} +1 -1
- package/dist/{public/sdk/walletAuthority-DGdC9Glh.js → esm/sdk/walletAuthority-BTGAuOi8.js} +1 -1
- package/dist/esm/sdk/{walletCapabilityBindings-BRdFdh3l.js → walletCapabilityBindings-D5YYB7nN.js} +1 -1
- package/dist/esm/sdk/{walletCustodyEcdsaContinuity-DdLNQs1M.js → walletCustodyEcdsaContinuity-C31YQ9av.js} +1 -1
- package/dist/{public/sdk/walletOwnershipGeneration-z9NXOk-b.js → esm/sdk/walletOwnershipGeneration-CgjCtPrV.js} +1 -1
- package/dist/{public/sdk/walletRecoveryAdminProof-hytB9fXI.js → esm/sdk/walletRecoveryAdminProof-CvSYbyg5.js} +1 -1
- package/dist/{public/sdk/walletRecoveryCommit-sr8-RYvn.js → esm/sdk/walletRecoveryCommit-Cc2LAkCS.js} +1 -1
- package/dist/esm/sdk/{walletSessionAuthorizationStore-BEJyERPZ.js → walletSessionAuthorizationStore-B9Vwkshr.js} +1 -1
- package/dist/esm/sdk/warmSessionHydration-B-A5Tdx7.js +1 -0
- package/dist/esm/sdk/{webauthnP256-DVlYEUsG.js → webauthnP256-BsQQPurm.js} +1 -1
- package/dist/esm/shared-ts/src/near/nearClient.js +1 -1
- package/dist/esm/shared-ts/src/utils/errors.js +50 -2
- package/dist/esm/shared-ts/src/utils/index.js +1 -1
- package/dist/esm/voiceid-host.js +1 -1
- package/dist/public/headers.manifest.json +1 -1
- package/dist/public/sdk/{ConfirmationDrawer-BmzikAr4.js → ConfirmationDrawer-AZruQmhP.js} +1 -1
- package/dist/public/sdk/{NonceCoordinator-CcD2FqXh.js → NonceCoordinator-3YhmDTS5.js} +1 -1
- package/dist/{esm/sdk/SeamsWordmark-DqiC9-sd.js → public/sdk/SeamsWordmark-DwvPx2UA.js} +1 -1
- package/dist/public/sdk/{accountLifecycle-gm9X8nGm.js → accountLifecycle-6DHYWf0v.js} +1 -1
- package/dist/public/sdk/{adapters-e7twFGov.js → adapters-d9yh1bdC.js} +1 -1
- package/dist/public/sdk/appearance-token-vars-BJydfWT_.js +1 -0
- package/dist/{esm/sdk/clientSessionPersistenceState-YvVHKRoe.js → public/sdk/clientSessionPersistenceState-BCkJAYSz.js} +1 -1
- package/dist/public/sdk/{collectAuthenticationCredentialForChallengeB64u-DEtxiKND.js → collectAuthenticationCredentialForChallengeB64u-I4wq8OGq.js} +1 -1
- package/dist/public/sdk/{commitQueue-CHJ7MHSI.js → commitQueue-CYruPlkm.js} +1 -1
- package/dist/public/sdk/confirm-ui-nU6ymgiv.js +2 -0
- package/dist/public/sdk/{device-linking-BsUTtSF7.js → device-linking-DiCNt3iA.js} +1 -1
- package/dist/public/sdk/{deviceLinkApproval-DAZTjrud.js → deviceLinkApproval-CfEiotVt.js} +1 -1
- package/dist/public/sdk/{display-BYzolrBs.js → display-D0EPmU4w.js} +1 -1
- package/dist/public/sdk/{ecdsaCapabilityManifest-CXVq8Qzb.js → ecdsaCapabilityManifest-DAJEVjlP.js} +1 -1
- package/dist/public/sdk/{ecdsaDerivationClientWasm-CVahDxLy.js → ecdsaDerivationClientWasm-AYOJgTJm.js} +1 -1
- package/dist/{esm/sdk/ecdsaDerivationExport-CkmSe0ao.js → public/sdk/ecdsaDerivationExport-DJKOzDbS.js} +1 -1
- package/dist/public/sdk/{ecdsaWalletRecords-zRvHKRTe.js → ecdsaWalletRecords-WLyq414E.js} +1 -1
- package/dist/public/sdk/{emailOtpEcdsaDerivationIdentity-0DIuRNRi.js → emailOtpEcdsaDerivationIdentity-HFQXc1Yw.js} +1 -1
- package/dist/public/sdk/{enrichDisplayModelWithAbi-CLn37drs.js → enrichDisplayModelWithAbi-O6Mw4i2E.js} +1 -1
- package/dist/public/sdk/errors-BJBDbwHk.js +1 -0
- package/dist/public/sdk/{evmCryptoWasm-B_p82tx9.js → evmCryptoWasm-BUPb4hBH.js} +1 -1
- package/dist/public/sdk/{export-viewer-host-3fosWJXJ.js → export-viewer-host-BtrKVXxu.js} +1 -1
- package/dist/public/sdk/{exportKeypairOperation-pKQW5J7m.js → exportKeypairOperation-CGE9ZU1m.js} +1 -1
- package/dist/public/sdk/host-DayrOrgm.js +1 -0
- package/dist/{esm/sdk/icons-DDRXJ2W1.js → public/sdk/icons-BlMXolHv.js} +1 -1
- package/dist/public/sdk/{indexedDB-CWFDCCbP.js → indexedDB-C4SDsyOG.js} +1 -1
- package/dist/public/sdk/{intentDigest-B6EshTea.js → intentDigest-HvRsBQ1z.js} +1 -1
- package/dist/public/sdk/{lanes-C2sAP08w.js → lanes-BU-fGqY4.js} +1 -1
- package/dist/public/sdk/{localOnly-Jw9v9GU9.js → localOnly-BATWJj78.js} +1 -1
- package/dist/{esm/sdk/mountExportPrivateKeySurface-B_052qyI.js → public/sdk/mountExportPrivateKeySurface-CyHU8bVc.js} +1 -1
- package/dist/public/sdk/{mountRecoveryCodeBackupSurface-PutmFjf9.js → mountRecoveryCodeBackupSurface-C7aglQxf.js} +1 -1
- package/dist/public/sdk/{nearEd25519YaoMaterialActivation-C2QNLImD.js → nearEd25519YaoMaterialActivation-BfXmy3Jr.js} +1 -1
- package/dist/{esm/sdk/nearEd25519YaoSigningPreparation-K6n4Sq8_.js → public/sdk/nearEd25519YaoSigningPreparation-DHNk0F8e.js} +1 -1
- package/dist/public/sdk/nearRpcResults-CeHdqaS4.js +1 -0
- package/dist/public/sdk/{nonceLaneKeys-CZjeiii7.js → nonceLaneKeys-BF_UpvIy.js} +1 -1
- package/dist/public/sdk/{normalization-DA6o5MsH.js → normalization-Df9fZWJC.js} +1 -1
- package/dist/{esm/sdk/pendingWalletRecoveryCodeBackup-B-n7vmBS.js → public/sdk/pendingWalletRecoveryCodeBackup-Cjx-X-pP.js} +1 -1
- package/dist/public/sdk/{presignaturePool-DjTaB0nx.js → presignaturePool-BbvqRWYw.js} +1 -1
- package/dist/{esm/sdk/recovery-entrypoint-9e3SXU3t.js → public/sdk/recovery-entrypoint-DJbMDC_m.js} +1 -1
- package/dist/public/sdk/{registration-C988Nwzn.js → registration-CNLUYN-p.js} +1 -1
- package/dist/public/sdk/{registration-D4AijOa8.js → registration-HSwOHZOo.js} +1 -1
- package/dist/public/sdk/{registrationAccounts-DI_vcT7G.js → registrationAccounts-4r74gX1l.js} +1 -1
- package/dist/public/sdk/registrationIntent-Do1tD1V7.js +1 -0
- package/dist/public/sdk/{registrationSignerPlan-_8gsSjC0.js → registrationSignerPlan-DK2b3N_p.js} +1 -1
- package/dist/{esm/sdk/requireStepUpAuth-DC9LSyRI.js → public/sdk/requireStepUpAuth-COqCGb1i.js} +1 -1
- package/dist/public/sdk/{resealedEnvelopeResult-BKATJaqW.js → resealedEnvelopeResult-B1p5UkYg.js} +1 -1
- package/dist/{esm/sdk/routerAbNormalSigning-Da-uxxle.js → public/sdk/routerAbNormalSigning-D-UZmCBS.js} +1 -1
- package/dist/public/sdk/runtime-auth-BCoj7_-G.js +1 -0
- package/dist/public/sdk/{runtime-device-link-DtjR-htE.js → runtime-device-link-DAsq5tGT.js} +1 -1
- package/dist/{esm/sdk/runtime-ecdsa-tempo-BkUnzoX9.js → public/sdk/runtime-ecdsa-tempo-CVh_Vwl6.js} +1 -1
- package/dist/{esm/sdk/runtime-email-otp-CaxfpqKI.js → public/sdk/runtime-email-otp-BxSKK9AG.js} +1 -1
- package/dist/public/sdk/{runtime-export-Du5ugbzi.js → runtime-export-BWnQXMzT.js} +1 -1
- package/dist/public/sdk/runtime-near-CuzPZrDS.js +1 -0
- package/dist/public/sdk/runtime-preferences-B-nDWlm3.js +1 -0
- package/dist/public/sdk/runtime-recovery-DpOdEJ8N.js +1 -0
- package/dist/public/sdk/{runtime-recovery-codes-DKjOU32G.js → runtime-recovery-codes-DeUjQsxZ.js} +1 -1
- package/dist/public/sdk/runtimeContext-5JcewRo3.js +6 -0
- package/dist/{esm/sdk/secp256k1--vF2pJgR.js → public/sdk/secp256k1-CE7-q9Sn.js} +1 -1
- package/dist/public/sdk/sessionObservationRevision-JOvVF4Hf.js +1 -0
- package/dist/public/sdk/{signEvmFamily-DeCQOBYN.js → signEvmFamily-BY5jlZEG.js} +1 -1
- package/dist/{esm/sdk/signEvmFamilyWithUiConfirmForTempo-BIp-MeBV.js → public/sdk/signEvmFamilyWithUiConfirmForTempo-CrMIAXUe.js} +1 -1
- package/dist/public/sdk/{signEvmWithUiConfirm-BdLW7kqJ.js → signEvmWithUiConfirm-CGrLtMV6.js} +1 -1
- package/dist/public/sdk/signNear-DMpJFkwF.js +1 -0
- package/dist/public/sdk/{signatureUses-0z64Xpdj.js → signatureUses-kSrUHSSH.js} +1 -1
- package/dist/{esm/sdk/signingFlow-C7fwkxPx.js → public/sdk/signingFlow-BcetvUeS.js} +1 -1
- package/dist/{esm/sdk/signingQueue-DvHGcaLc.js → public/sdk/signingQueue-dMFOFOP5.js} +1 -1
- package/dist/public/sdk/surface-measurement-reporter-DXsvq401.js +1 -0
- package/dist/public/sdk/{thresholdEcdsa-CPVZNLEg.js → thresholdEcdsa-CqR1fFA-.js} +1 -1
- package/dist/public/sdk/{trace-BQv7E-bO.js → trace--mRP2OQc.js} +1 -1
- package/dist/public/sdk/{transaction-activity-olcDRay5.js → transaction-activity-DCzHGg3b.js} +1 -1
- package/dist/public/sdk/{transactionReviewAdmission-DPxuDgkU.js → transactionReviewAdmission-Cf_qUZJt.js} +1 -1
- package/dist/public/sdk/{transactionState-C8aYSDRA.js → transactionState-29T9xfvL.js} +1 -1
- package/dist/public/sdk/tx-confirm-ui.js +173 -18
- package/dist/public/sdk/{types-DOToeB6g.js → types-f7dyj5N6.js} +1 -1
- package/dist/public/sdk/{unlockedEd25519ExportRootCapability-CFmunau5.js → unlockedEd25519ExportRootCapability-yzxQjIFd.js} +1 -1
- package/dist/public/sdk/voiceid-host.js +1 -1
- package/dist/public/sdk/wallet-iframe-host-ecdsa.js +1 -1
- package/dist/public/sdk/wallet-iframe-host-full.js +1 -1
- package/dist/public/sdk/wallet-iframe-host-near.js +1 -1
- package/dist/public/sdk/wallet-iframe-host-runtime.js +1 -1
- package/dist/{esm/sdk/wallet-recovery-jyfGoejZ.js → public/sdk/wallet-recovery-BZB2Vu3X.js} +1 -1
- package/dist/public/sdk/wallet-ui.css +1 -1
- package/dist/public/sdk/{walletAuthMethodRecord-Bi78B6Ab.js → walletAuthMethodRecord-DLBB5fez.js} +1 -1
- package/dist/{esm/sdk/walletAuthority-DGdC9Glh.js → public/sdk/walletAuthority-BTGAuOi8.js} +1 -1
- package/dist/public/sdk/{walletCapabilityBindings-BRdFdh3l.js → walletCapabilityBindings-D5YYB7nN.js} +1 -1
- package/dist/public/sdk/{walletCustodyEcdsaContinuity-DdLNQs1M.js → walletCustodyEcdsaContinuity-C31YQ9av.js} +1 -1
- package/dist/{esm/sdk/walletOwnershipGeneration-z9NXOk-b.js → public/sdk/walletOwnershipGeneration-CgjCtPrV.js} +1 -1
- package/dist/{esm/sdk/walletRecoveryAdminProof-hytB9fXI.js → public/sdk/walletRecoveryAdminProof-CvSYbyg5.js} +1 -1
- package/dist/{esm/sdk/walletRecoveryCommit-sr8-RYvn.js → public/sdk/walletRecoveryCommit-Cc2LAkCS.js} +1 -1
- package/dist/public/sdk/{walletSessionAuthorizationStore-BEJyERPZ.js → walletSessionAuthorizationStore-B9Vwkshr.js} +1 -1
- package/dist/public/sdk/warmSessionHydration-B-A5Tdx7.js +1 -0
- package/dist/public/sdk/{webauthnP256-DVlYEUsG.js → webauthnP256-BsQQPurm.js} +1 -1
- package/dist/public/wallet-assets.manifest.json +270 -246
- package/dist/public/wallet-service/index.html +4 -4
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/ui/auth-menu/mountAuthMenuSurface.d.ts +1 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/shared/messages.d.ts +2 -0
- package/dist/types/wallet/src/core/authMethods/hostPlugin.d.ts +1 -0
- package/dist/types/wallet/src/core/rpcClients/near/NearClient.d.ts +13 -0
- package/dist/types/wallet/src/core/signingEngine/nearTransactionSubmission.d.ts +24 -0
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/transactionReviewAdmission.d.ts +2 -0
- package/dist/types/wallet/src/core/types/linkDevice.d.ts +4 -5
- package/dist/types/wallet/src/core/types/seams.d.ts +15 -3
- package/dist/types/wallet/src/core/ui/messages.d.ts +1 -1
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/HoverArrowIcon.d.ts +2 -1
- package/dist/types/wallet/src/react/components/ExternalNearWalletIcon.d.ts +5 -0
- package/dist/types/wallet/src/react/components/HostedSeamsAuthMenu/WalletConnectorMenu.d.ts +31 -0
- package/dist/types/wallet/src/react/components/HostedSeamsAuthMenu/types.d.ts +4 -0
- package/dist/types/wallet/src/react/components/externalWalletBrandImages.d.ts +3 -0
- package/dist/types/wallet/src/react/components/theme/design-tokens.d.ts +2 -0
- package/dist/types/wallet/src/react/index.d.ts +2 -0
- package/dist/types/wallet/src/voiceid-host.d.ts +1 -1
- package/package.json +1 -1
- package/dist/esm/sdk/appearance-token-vars-EYbmnHsJ.js +0 -1
- package/dist/esm/sdk/confirm-ui-BpqwuMSl.js +0 -2
- package/dist/esm/sdk/errors-DLUmUo9m.js +0 -1
- package/dist/esm/sdk/host-aTcpYE27.js +0 -1
- package/dist/esm/sdk/registrationIntent-BVPp0k0k.js +0 -1
- package/dist/esm/sdk/runtime-auth-C_Y8gL_n.js +0 -1
- package/dist/esm/sdk/runtime-near-fas7U0MC.js +0 -1
- package/dist/esm/sdk/runtime-preferences-7-f34-by.js +0 -1
- package/dist/esm/sdk/runtime-recovery-DmY0ZJpf.js +0 -1
- package/dist/esm/sdk/runtimeContext-DF8MdfXl.js +0 -6
- package/dist/esm/sdk/sessionObservationRevision-DKTqqbGf.js +0 -1
- package/dist/esm/sdk/signNear-DMzOU4dX.js +0 -1
- package/dist/esm/sdk/surface-measurement-reporter-DvzNDnHy.js +0 -1
- package/dist/esm/sdk/warmSessionHydration-EstsrMF8.js +0 -1
- package/dist/public/sdk/appearance-token-vars-EYbmnHsJ.js +0 -1
- package/dist/public/sdk/confirm-ui-BpqwuMSl.js +0 -2
- package/dist/public/sdk/errors-DLUmUo9m.js +0 -1
- package/dist/public/sdk/host-aTcpYE27.js +0 -1
- package/dist/public/sdk/registrationIntent-BVPp0k0k.js +0 -1
- package/dist/public/sdk/runtime-auth-C_Y8gL_n.js +0 -1
- package/dist/public/sdk/runtime-near-fas7U0MC.js +0 -1
- package/dist/public/sdk/runtime-preferences-7-f34-by.js +0 -1
- package/dist/public/sdk/runtime-recovery-DmY0ZJpf.js +0 -1
- package/dist/public/sdk/runtimeContext-DF8MdfXl.js +0 -6
- package/dist/public/sdk/sessionObservationRevision-DKTqqbGf.js +0 -1
- package/dist/public/sdk/signNear-DMzOU4dX.js +0 -1
- package/dist/public/sdk/surface-measurement-reporter-DvzNDnHy.js +0 -1
- package/dist/public/sdk/warmSessionHydration-EstsrMF8.js +0 -1
- /package/dist/esm/sdk/{accountIds-Dj_0GoY-.js → accountIds-CW2BP-d9.js} +0 -0
- /package/dist/esm/sdk/{actions-BIdcxldy.js → actions-DrtSTGus.js} +0 -0
- /package/dist/esm/sdk/{appearance-CAIe7Qed.js → appearance-DL7c6bML.js} +0 -0
- /package/dist/esm/sdk/{authenticatorOptions-2_XK8aXv.js → authenticatorOptions-WCDKYRux.js} +0 -0
- /package/dist/esm/sdk/{authorizationAdmission-BYwaSZYV.js → authorizationAdmission-28jo_IVJ.js} +0 -0
- /package/dist/esm/sdk/{browser-B1qU6ouJ.js → browser-CKS7Tq2r.js} +0 -0
- /package/dist/esm/sdk/{bytes-CA0mv-bG.js → bytes-DXo6uALR.js} +0 -0
- /package/dist/esm/sdk/{canonicalSignerErrorCode-BHDPNkvJ.js → canonicalSignerErrorCode-CX5PBpkt.js} +0 -0
- /package/dist/esm/sdk/{challengeDelivery-DWix1oso.js → challengeDelivery-Dj9HrjW9.js} +0 -0
- /package/dist/esm/sdk/{confirmTypes-DmEPoxys.js → confirmTypes-BvVtQs-M.js} +0 -0
- /package/dist/esm/sdk/{csp-stylesheet-CHtV6HyK.js → csp-stylesheet-DUSqfXvZ.js} +0 -0
- /package/dist/esm/sdk/{digestEncoding-n8Kr2kow.js → digestEncoding-CqNXPZY9.js} +0 -0
- /package/dist/esm/sdk/{ecdsaChainTarget-Lh24LLyA.js → ecdsaChainTarget-Bm5X4k-V.js} +0 -0
- /package/dist/esm/sdk/{executeWorkerOperation-XmBNaxrV.js → executeWorkerOperation-C9FOCCR7.js} +0 -0
- /package/dist/esm/sdk/{helpers-dZehRP4i.js → helpers-Dubwo5uK.js} +0 -0
- /package/dist/esm/sdk/{jsonRpc-YKL5n8VL.js → jsonRpc-BVDv1wfm.js} +0 -0
- /package/dist/esm/sdk/{keccak-BArcwgbj.js → keccak-mS0Mejjx.js} +0 -0
- /package/dist/esm/sdk/{keyMaterialEnvelope-BsdlckmN.js → keyMaterialEnvelope-Dm2ZEilb.js} +0 -0
- /package/dist/esm/sdk/{normalization-dgJxtZKK.js → normalization-B3i1-rPQ.js} +0 -0
- /package/dist/esm/sdk/{operationFingerprint-DgpQfpM-.js → operationFingerprint-Bas59T7L.js} +0 -0
- /package/dist/esm/sdk/{presignatures-CjcyX_-F.js → presignatures-BCeq56DG.js} +0 -0
- /package/dist/esm/sdk/{prfCache-Ck1mh5YB.js → prfCache-DEHaUPSW.js} +0 -0
- /package/dist/esm/sdk/{profileAccountProjection-dvLchPBo.js → profileAccountProjection-C5sNt-s2.js} +0 -0
- /package/dist/esm/sdk/{promptText-BIv8lx7_.js → promptText-bcKcsSka.js} +0 -0
- /package/dist/esm/sdk/{recoveryAuthorization-CMVdZ5OR.js → recoveryAuthorization-CQsjb8Tm.js} +0 -0
- /package/dist/esm/sdk/{registrationAuthMethodInput-Be4Td0Ef.js → registrationAuthMethodInput-BR1WVbK3.js} +0 -0
- /package/dist/esm/sdk/{sdkSentEvents-QPs69K3s.js → sdkSentEvents-DjOlKtdW.js} +0 -0
- /package/dist/esm/sdk/{shared-hkHoIS9i.js → shared-CkHhXgFB.js} +0 -0
- /package/dist/esm/sdk/{signer-worker-CmCKlJ__.js → signer-worker-BNodGJKY.js} +0 -0
- /package/dist/esm/sdk/{signerDomain-BLnlQPAV.js → signerDomain-BAsLT3XN.js} +0 -0
- /package/dist/esm/sdk/{signerSlot-DgLzb3Ee.js → signerSlot-D2RZnb27.js} +0 -0
- /package/dist/esm/sdk/{types-COS7UL3R.js → types-C4OErbBf.js} +0 -0
- /package/dist/esm/sdk/{walletCustodyOperation-CAnT3Ww-.js → walletCustodyOperation-DimzAbCB.js} +0 -0
- /package/dist/esm/sdk/{walletSessionAuthorizationProjection-CMl69JGe.js → walletSessionAuthorizationProjection-BzUH6gHV.js} +0 -0
- /package/dist/esm/sdk/{walletSessionAuthorizationStatus-C_q9eiOH.js → walletSessionAuthorizationStatus-DG7DPcgR.js} +0 -0
- /package/dist/esm/sdk/{walletSessionFailure-ZfdbUAG-.js → walletSessionFailure-CxsVtroW.js} +0 -0
- /package/dist/esm/sdk/{webauthnPromptCoordinator-DMETRUcN.js → webauthnPromptCoordinator-npsSRD51.js} +0 -0
- /package/dist/public/sdk/{accountIds-Dj_0GoY-.js → accountIds-CW2BP-d9.js} +0 -0
- /package/dist/public/sdk/{actions-BIdcxldy.js → actions-DrtSTGus.js} +0 -0
- /package/dist/public/sdk/{appearance-CAIe7Qed.js → appearance-DL7c6bML.js} +0 -0
- /package/dist/public/sdk/{authenticatorOptions-2_XK8aXv.js → authenticatorOptions-WCDKYRux.js} +0 -0
- /package/dist/public/sdk/{authorizationAdmission-BYwaSZYV.js → authorizationAdmission-28jo_IVJ.js} +0 -0
- /package/dist/public/sdk/{browser-B1qU6ouJ.js → browser-CKS7Tq2r.js} +0 -0
- /package/dist/public/sdk/{bytes-CA0mv-bG.js → bytes-DXo6uALR.js} +0 -0
- /package/dist/public/sdk/{canonicalSignerErrorCode-BHDPNkvJ.js → canonicalSignerErrorCode-CX5PBpkt.js} +0 -0
- /package/dist/public/sdk/{challengeDelivery-DWix1oso.js → challengeDelivery-Dj9HrjW9.js} +0 -0
- /package/dist/public/sdk/{confirmTypes-DmEPoxys.js → confirmTypes-BvVtQs-M.js} +0 -0
- /package/dist/public/sdk/{csp-stylesheet-CHtV6HyK.js → csp-stylesheet-DUSqfXvZ.js} +0 -0
- /package/dist/public/sdk/{digestEncoding-n8Kr2kow.js → digestEncoding-CqNXPZY9.js} +0 -0
- /package/dist/public/sdk/{ecdsaChainTarget-Lh24LLyA.js → ecdsaChainTarget-Bm5X4k-V.js} +0 -0
- /package/dist/public/sdk/{executeWorkerOperation-XmBNaxrV.js → executeWorkerOperation-C9FOCCR7.js} +0 -0
- /package/dist/public/sdk/{helpers-dZehRP4i.js → helpers-Dubwo5uK.js} +0 -0
- /package/dist/public/sdk/{jsonRpc-YKL5n8VL.js → jsonRpc-BVDv1wfm.js} +0 -0
- /package/dist/public/sdk/{keccak-BArcwgbj.js → keccak-mS0Mejjx.js} +0 -0
- /package/dist/public/sdk/{keyMaterialEnvelope-BsdlckmN.js → keyMaterialEnvelope-Dm2ZEilb.js} +0 -0
- /package/dist/public/sdk/{normalization-dgJxtZKK.js → normalization-B3i1-rPQ.js} +0 -0
- /package/dist/public/sdk/{operationFingerprint-DgpQfpM-.js → operationFingerprint-Bas59T7L.js} +0 -0
- /package/dist/public/sdk/{presignatures-CjcyX_-F.js → presignatures-BCeq56DG.js} +0 -0
- /package/dist/public/sdk/{prfCache-Ck1mh5YB.js → prfCache-DEHaUPSW.js} +0 -0
- /package/dist/public/sdk/{profileAccountProjection-dvLchPBo.js → profileAccountProjection-C5sNt-s2.js} +0 -0
- /package/dist/public/sdk/{promptText-BIv8lx7_.js → promptText-bcKcsSka.js} +0 -0
- /package/dist/public/sdk/{recoveryAuthorization-CMVdZ5OR.js → recoveryAuthorization-CQsjb8Tm.js} +0 -0
- /package/dist/public/sdk/{registrationAuthMethodInput-Be4Td0Ef.js → registrationAuthMethodInput-BR1WVbK3.js} +0 -0
- /package/dist/public/sdk/{sdkSentEvents-QPs69K3s.js → sdkSentEvents-DjOlKtdW.js} +0 -0
- /package/dist/public/sdk/{shared-hkHoIS9i.js → shared-CkHhXgFB.js} +0 -0
- /package/dist/public/sdk/{signer-worker-CmCKlJ__.js → signer-worker-BNodGJKY.js} +0 -0
- /package/dist/public/sdk/{signerDomain-BLnlQPAV.js → signerDomain-BAsLT3XN.js} +0 -0
- /package/dist/public/sdk/{signerSlot-DgLzb3Ee.js → signerSlot-D2RZnb27.js} +0 -0
- /package/dist/public/sdk/{types-COS7UL3R.js → types-C4OErbBf.js} +0 -0
- /package/dist/public/sdk/{walletCustodyOperation-CAnT3Ww-.js → walletCustodyOperation-DimzAbCB.js} +0 -0
- /package/dist/public/sdk/{walletSessionAuthorizationProjection-CMl69JGe.js → walletSessionAuthorizationProjection-BzUH6gHV.js} +0 -0
- /package/dist/public/sdk/{walletSessionAuthorizationStatus-C_q9eiOH.js → walletSessionAuthorizationStatus-DG7DPcgR.js} +0 -0
- /package/dist/public/sdk/{walletSessionFailure-ZfdbUAG-.js → walletSessionFailure-CxsVtroW.js} +0 -0
- /package/dist/public/sdk/{webauthnPromptCoordinator-DMETRUcN.js → webauthnPromptCoordinator-npsSRD51.js} +0 -0
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{n as e}from"./chunk-dVx5-UGu.js";import{v as t}from"./digests-BIaE0DMd.js";import{i as n}from"./chains-B72I4PDH.js";import{r}from"./transactionReviewAdmission-DPxuDgkU.js";import{t as i}from"./surface-measurement-reporter-DvzNDnHy.js";import{a,i as o,o as s,r as c,s as l}from"./csp-stylesheet-CHtV6HyK.js";import{t as u}from"./SeamsWordmark-DqiC9-sd.js";import{a as d,i as f,r as p,t as m}from"./actions-BIdcxldy.js";import{i as h,r as g}from"./intentDigest-B6EshTea.js";import{t as _}from"./promptText-BIv8lx7_.js";import{a as v}from"./transaction-activity-olcDRay5.js";import{a as y,c as b,i as x,n as S,o as C,r as w,s as T,t as ee}from"./appearance-token-vars-EYbmnHsJ.js";import{i as E,n as te,r as ne,t as re}from"./ConfirmationDrawer-BmzikAr4.js";import{n as ie,t as ae}from"./appearance-CAIe7Qed.js";let oe=!1;function se(e=!0){oe=!!e}function ce(){return oe}function le(e){if(!e)return``;if(typeof e==`string`)return e;try{return JSON.stringify(e,(e,t)=>typeof t==`bigint`?t.toString():t,2)}catch{return String(e)}}function D(e){if(!e||e===`0`)return`0 NEAR`;try{let t=BigInt(e),n=BigInt(`1000000000000000000000000`),r=t/n,i=t%n;if(i===BigInt(0))return`${r.toString()} NEAR`;let a=i.toString().padStart(24,`0`).slice(0,5);return a=a.replace(/0+$/g,``),a.length===0?`${r.toString()} NEAR`:`${r.toString()}.${a} NEAR`}catch{return e}}function ue(e){if(!e)return``;try{return`${BigInt(e)/BigInt(`1000000000000`)} Tgas`}catch{return e}}function O(e,t={}){if(!e||typeof e!=`string`)return``;let{prefix:n=12,suffix:r=6}=t;return e.length<=n+r+3?e:`${e.slice(0,n)}...${e.slice(-r)}`}function k(e){return e?e instanceof Uint8Array?`${e.byteLength} bytes`:Array.isArray(e)||typeof e==`string`?`${e.length} bytes`:`unknown`:`0 bytes`}function de(e){if(!e)return;let t=String(e.decoded||``),n=String(e.raw||``);if(!(!t||!n)&&t!==n)return{decoded:t,raw:n,defaultMode:e.defaultMode===`raw`?`raw`:`decoded`}}function fe(e,t){if(!/Value \(wei\)$/i.test(e.trim()))return!1;let n=t.trim();if(!n)return!1;if(n===`0`||/^0x0+$/i.test(n))return!0;try{return BigInt(n)===0n}catch{return!1}}function pe(e,t){return!Array.isArray(t)||t.length===0?[]:t.flatMap((t,n)=>{let r=String(t.label||``).trim(),i=String(t.value||``),a=t.renderAs||`inline`;if(fe(r,i))return[];if(a===`file-content`){let a=de(t.contentVariants),o=a?.defaultMode===`raw`?a.raw:a?.decoded||i;return[{id:`${e}-field-${n}`,label:r?`${r}:`:``,fieldLabel:r?`${r}:`:void 0,type:`file`,open:!1,content:o,...a?{contentVariants:a}:{},copyValue:typeof t.copyValue==`string`?t.copyValue:void 0,hideLabel:!!t.hideLabel,hideChevron:typeof t.hideChevron==`boolean`?t.hideChevron:!0}]}return[{id:`${e}-field-${n}`,label:r?`${r}: ${i}`:i,fieldLabel:r?`${r}:`:void 0,type:`file`,open:!1,copyValue:typeof t.copyValue==`string`?t.copyValue:void 0}]})}const me=({operation:e,depth:t,path:n,renderChild:r})=>{let i=String(e.id||``).trim()||`op-${n}`,a=(()=>{let t=String(e.to||``).trim();return/^0x[0-9a-fA-F]{40}$/.test(t)?t:void 0})(),o=String(e.description||``).trim(),s=Array.isArray(e.children)?e.children.map((e,i)=>r(e,t+1,`${n}.${i}`)):[],c=pe(i,e.fields),l=o?[{id:`${i}-description`,label:o,type:`file`,open:!1}]:[];if(e.kind===`raw.fallback`){let t=String(e.raw||``).trim();t&&l.push({id:`${i}-raw`,label:`Raw payload`,type:`file`,open:!1,content:t})}let u=[...l,...c,...s];return u.length===0?{id:i,label:String(e.label||e.kind),type:`file`,open:!1,contractAddress:a}:{id:i,label:String(e.label||e.kind),type:`folder`,open:t<1,contractAddress:a,children:u}};function he(e){switch(e){case`near`:return`NEAR`;case`evm`:return`EVM`;case`tempo`:return`Tempo`;default:return`Unknown`}}function ge(e){return!Array.isArray(e)||e.length===0?[]:[{id:`warnings-root`,label:`Warnings`,type:`folder`,open:!0,children:e.map((e,t)=>({id:`warning-${t}`,label:`[${String(e.severity||`warning`).toUpperCase()}] ${String(e.message||``)}`,type:`file`,open:!1}))}]}function _e(e,t,n){return me({operation:e,depth:t,path:n,renderChild:(e,t,n)=>_e(e,t,n)})}function A(e){let t=Array.isArray(e.children)?e.children.map(e=>A(e)):void 0;return e.type===`folder`?{...e,hideChevron:!0,children:t}:t?{...e,children:t}:e}function ve(e,t){let n=Array.isArray(e.children)?e.children.map(e=>ve(e,t)):void 0;return{...e,chain:t,...n?{children:n}:{}}}function ye(e){let t=e.chain===`evm`||e.chain===`tempo`,n=(Array.isArray(e.operations)?e.operations:[]).map((e,t)=>_e(e,0,String(t))).map(t=>ve(t,e.chain)).map(e=>t?A(e):e),r=[...ge(e.warnings).map(t=>ve(t,e.chain)).map(e=>t?A(e):e),...n];r.length===0&&r.push({id:`no-operations`,label:`No operations`,type:`file`,open:!1});let i=he(e.chain);return{id:`display-root`,label:String(e.title||``).trim()||`${i} Transaction`,type:`folder`,open:!0,children:r}}function be(e,n){let r;switch(e.type){case`FunctionCall`:r=[{id:`a${n}-args`,label:`using args:`,type:`file`,open:!1,hideChevron:!0,hideLabel:!0,content:le(e.args)}];break;case`Transfer`:r=[];break;case`CreateAccount`:r=[];break;case`DeployContract`:{let t=k(e.code);r=[{id:`a${n}-code-size`,label:`WASM contract code size: ${t}`,type:`file`,open:!1}];break}case`DeployGlobalContract`:{let t=e.code,i=e.deployMode,a=k(t);r=[{id:`a${n}-deploy-mode`,label:`mode: ${String(i||``)}`,type:`file`,open:!1},{id:`a${n}-code-size`,label:`WASM global contract code size: ${a}`,type:`file`,open:!1}];break}case`UseGlobalContract`:{let t=e.accountId,i=e.codeHash,a;a=t?`by account: ${String(t)}`:i?`by hash: ${O(String(i),{prefix:10,suffix:6})}`:`by global contract identifier`,r=[{id:`a${n}-identifier`,label:a,type:`file`,open:!1}];break}case`Stake`:r=[{id:`a${n}-publicKey`,label:`validator: ${O(e.publicKey)}`,type:`file`,open:!0,copyValue:e.publicKey}];break;case`AddKey`:{let i=e.accessKey,a=``;try{a=(t(i)?JSON.parse(i):i).permission===`FullAccess`?`Full Access`:`Function Call`}catch{a=`Unknown`}r=[{id:`a${n}-publicKey`,label:`key: ${O(e.publicKey)}`,open:!1,type:`file`,copyValue:e.publicKey},{id:`a${n}-permissions`,label:`permissions: ${a}`,open:!1,type:`file`}];break}case`DeleteKey`:r=[{id:`a${n}-publicKey`,label:`key: ${O(e.publicKey)}`,open:!1,type:`file`,copyValue:e.publicKey}];break;case`DeleteAccount`:r=[{id:`a${n}-beneficiaryId`,label:`sending balance to: ${e.beneficiaryId}`,open:!1,type:`file`}];break;default:return xe(e)}return{id:`action-${n}`,label:``,type:`folder`,open:!1,hideChevron:!0,action:e,actionIndex:n,children:r}}function xe(e){throw Error(`Unsupported NEAR action: ${String(e)}`)}function Se(e,t,n){let r=e.actions.map((e,t)=>be(e,t));return{id:`tx-${t}`,label:``,type:`folder`,open:!0,hideChevron:!0,transaction:e,transactionIndex:t,totalTransactions:n,children:[...r]}}function Ce(e){let t=e.length,n=e.map((e,n)=>Se(e,n,t));return{id:`txs-root`,label:t>1?`Transactions`:`Transaction`,type:`folder`,open:!0,children:n}}function we(e){let t=e.abiDecodeHint;if(t&&Array.isArray(t.abi)&&t.abi.length>0){let e=String(t.dataHex||``).trim();if(e&&e!==`0x`)return!0}return(Array.isArray(e.children)?e.children:[]).some(we)}function Te(e){return(Array.isArray(e.operations)?e.operations:[]).some(we)}function j(e){let t=Array.isArray(e.txSigningRequests)?e.txSigningRequests:[];if(t.length>0)return Ce(p(t));let n=e.model;if(!n)return null;let r=Array.isArray(n.operations)?n.operations:[],i=Array.isArray(n.warnings)?n.warnings:[];return r.length>0||i.length>0?ye(n):null}const Ee=/^NEAR account ([^\s]+) needs funding before signing\.$/;function De(e){let t=String(e||``).trim();return t.length<=8?t:`${t.slice(0,4)}...${t.slice(-4)}`}function Oe(e){let t=String(e||``).trim();return t?`NEAR account ${t} needs funding before signing.`:`NEAR account needs funding before signing.`}function ke(e){let t=String(e||``).trim(),n=Ee.exec(t);if(!n)return null;let r=String(n[1]||``).trim();return r?{accountId:r,shortAccountId:De(r)}:null}function Ae(e){return String(e||``).trim()===`Topping up account...`}function je(e){let t=De(e);return t?`Funding NEAR account ${t}...`:`Funding NEAR account...`}function Me(e){let t=String(e||``).trim();return t.startsWith(`Funding NEAR account`)&&t.endsWith(`...`)}function Ne(e){return Ae(e)||Me(e)}function Pe(e){let t=e.trim();if(!t)return{kind:`empty`};if(Ne(t))return{kind:`status`,text:t};let n=ke(t);return n?{kind:`funding`,accountId:n.accountId,shortAccountId:n.shortAccountId}:{kind:`text`,text:t}}function Fe(e){let t=e.presentation,n=t.errorMessage??``,r=t.cancelText??`Cancel`,i=t.securityContext?.passkeyRegistration;if(i?.kind===`passkey_registration_confirm_display_v1`)return{ok:!0,model:{appearance:e.appearance,content:{kind:`registration`,registration:{display:i,heading:t.title?.trim()||`Create your passkey`,body:t.body?.trim()||`Use Touch ID or your device passkey to create credentials for this account.`,cancelText:r,errorMessage:n,decision:t.loading?{kind:`creating`}:{kind:`ready`,onConfirm:e.callbacks.confirm},onCancel:e.callbacks.cancel}}}};let a;switch(t.signingAuthMode){case`emailOtp`:{let r=t.emailOtpPrompt,i=r?.challengeId.trim();if(!r||!i)return{ok:!1,error:`missing_email_challenge`};a={kind:`email`,email:{prompt:{challengeId:i,title:r.title,body:r.body,helperText:r.helperText,emailHint:r.emailHint,resendDebounceMs:r.resendDebounceMs,onResend:r.onResend},verification:Ie(t.loading===!0,n),onSubmit:e.callbacks.submitEmail}};break}case`warmSession`:a={kind:`session`};break;case`webauthn`:case void 0:a={kind:`passkey`};break;default:return M(t.signingAuthMode)}let o=Pe(t.body??``);return{ok:!0,model:{appearance:e.appearance,content:{kind:`transaction`,capture:t.authMethodCapture??null,review:{model:t.model??null,tree:e.tree},header:{heading:Le(t),website:Re(t.securityContext?.rpId?.trim()??``),chainDetails:ze(t,t.loading===!0||o.kind===`status`),errorMessage:n},body:o,prompt:a,transaction:{tree:e.tree,theme:e.appearance.theme.mode,explorers:{near:t.nearExplorerUrl||`https://testnet.nearblocks.io`,tempo:t.tempoExplorerUrl,evm:t.evmExplorerUrl},decision:t.loading||t.preparing?{kind:`preparing`}:{kind:`ready`,onConfirm:e.callbacks.confirm},confirmText:t.signingAuthMode===`emailOtp`?`Confirm Code`:t.confirmText??`Confirm`,cancelText:r,errorMessage:n,onCancel:e.callbacks.cancel,onBack:t.onBack,authMethodApprovalMessage:t.authMethodApprovalMessage}}}}}function Ie(e,t){return e?{kind:`pending`}:t?{kind:`rejected`,message:t}:{kind:`ready`}}function Le(e){let t=(e.model?.operations.length??0)===0?`Register with Passkey`:`Confirm with Passkey`;switch(e.signingAuthMode){case`emailOtp`:return e.emailOtpPrompt?.title?.trim()||`Enter email code to sign`;case`warmSession`:return`Review transaction`;case`webauthn`:return t;case void 0:return e.title?.trim()||t;default:return M(e.signingAuthMode)}}function Re(e){return e?{kind:`ready`,text:e}:{kind:`loading`}}function ze(e,t){let n=e.model;if(n?.chainId)return{kind:`ready`,text:`${Be(n.chain)} | ChainID: ${n.chainId}`};let r=String(e.securityContext?.blockHeight||``).trim();return r?{kind:`ready`,text:`block ${r}`}:t?{kind:`loading`}:{kind:`ready`,text:`block`}}function Be(e){switch(e){case`near`:return`NEAR`;case`evm`:return`EVM`;case`tempo`:return`Tempo`;case`unknown`:return`Unknown`;default:return M(e)}}function M(e){throw Error(`Unexpected confirmation presentation: ${String(e)}`)}const N=`seams-surface-resize-begin`;function Ve(e,t){return e.dispatchEvent(new CustomEvent(N,{bubbles:!0,composed:!0,detail:t}))}function He(e,t,n){let r=t;return e.addEventListener(N,r,n),()=>e.removeEventListener(N,r,n)}const Ue=`data-seams-confirm-surface`,P=`seams-confirm-surface-pinned`,F=`seams-confirm-surface-pinned-root`,I=`seams-surface-height-driven`,We=`--seams-surface-height-driven-target`;function Ge(e,t){let{fromCssPx:n,toCssPx:r}=t;if(!Number.isFinite(n)||!Number.isFinite(r))return!1;let i=r-n;if(Math.abs(i)<1)return!1;let a=Math.min(n,r),o=Math.max(n,r),s=null,c=!1,l=null,u=e=>{if(c)return;let r=n+(Number.isFinite(e)?Math.min(Math.max(e,0),1):0)*i;t.setHeightCssPx(Math.min(Math.max(r,a),o))},d=()=>{c||(c=!0,l!==null&&window.clearTimeout(l),t.finish())},f=()=>s||c?null:(t.onClaimed?.(),u(0),l=window.setTimeout(()=>{u(1),d()},1500),s={setProgress:u,finish:d},s);return Ve(e,{...t.reason?{reason:t.reason}:{},deltaCssPx:i,claim:f}),s!==null}function Ke(e){let t=null,n=null,r=()=>{let e=n;n=null,e&&e.classList.remove(I)};return{capture(){let n=e.element();t=n?n.getBoundingClientRect().height:null},commit(){let i=t;t=null;let a=e.element();!a||i===null||document.documentElement.classList.contains(F)||a.parentElement?.closest(`.${I}`)||(n=a,a.classList.add(I),e.setHeightCssPx(i),Promise.resolve(e.settled?.()).then(()=>new Promise(e=>requestAnimationFrame(()=>e()))).then(()=>{if(n!==a)return;if(document.documentElement.classList.contains(F)){r();return}a.classList.remove(I);let t=a.getBoundingClientRect().height;a.classList.add(I),!L({...e.reason?{reason:e.reason}:{},element:a,fromCssPx:i,toCssPx:t,setHeightCssPx:t=>e.setHeightCssPx(t),onSettled:()=>{n=null}})&&(r(),qe(a,i,t))}))},dispose:r}}function qe(e,t,n){Math.abs(n-t)<1||window.matchMedia(`(prefers-reduced-motion: reduce)`).matches||e.animate([{height:`${t}px`},{height:`${n}px`}],{duration:200,easing:`cubic-bezier(0.32, 0.72, 0, 1)`})}function L(e){let{element:t,fromCssPx:n,toCssPx:r}=e;if(!Number.isFinite(n)||!Number.isFinite(r)||Math.abs(r-n)<1)return!1;let i=e.drivenClasses??[I],a=i.filter(e=>!t.classList.contains(e));t.classList.add(...a),e.setHeightCssPx(n);let o=Ge(t,{...e.reason?{reason:e.reason}:{},fromCssPx:n,toCssPx:r,setHeightCssPx:e.setHeightCssPx,finish:()=>{t.classList.remove(...i),e.onSettled?.()}});return o||t.classList.remove(...a),o}let Je=null;const Ye={blipFrames:0,trace(e=2e3){return new Promise(t=>{let n=[],r=performance.now(),i=()=>{let a=Je,o=a?.classList.contains(P)?`*`:``;n.push(`${Math.round(performance.now()-r)}: box=${document.documentElement.clientHeight} content=${a?Math.round(a.getBoundingClientRect().height):`-`}${o}`),performance.now()-r<e?requestAnimationFrame(i):t(n)};requestAnimationFrame(i)})}};function Xe(e){Je=e;try{window.__seamsSurfaceMotion=Ye}catch{}}function Ze(){let e=document.documentElement?.clientHeight??0;return e>0?e:window.innerHeight}function Qe(e,t,n){return Math.min(Math.max(e,t),n)}function $e(e){return e.getAttribute(Ue)===`wallet-iframe`}function et(e){if(typeof CSSStyleSheet!=`function`||!(`adoptedStyleSheets`in document))return null;let t=null,n=()=>{e.classList.remove(P),document.documentElement.classList.remove(F)};return{set(n){try{t||=new CSSStyleSheet,t.replaceSync(`.${P}{height:${Math.max(0,Math.round(n))}px}.${F}{overflow:hidden}`),document.adoptedStyleSheets.includes(t)||(document.adoptedStyleSheets=[...document.adoptedStyleSheets,t])}catch{return!1}return e.classList.add(P),document.documentElement.classList.add(F),!0},release:n,dispose(){if(n(),!t)return;let e=t;t=null;try{document.adoptedStyleSheets=document.adoptedStyleSheets.filter(t=>t!==e)}catch{}}}}function tt(e,t={}){let n=t.viewportHeightCssPx??Ze,r=et(e);Xe(e);let i=null,a=()=>{let e=i;e&&(i=null,e.frame!==null&&cancelAnimationFrame(e.frame),e.driver.setProgress(1),e.driver.finish(),r?.release())},o=()=>{let e=i;if(!e)return;e.frame=null;let t=n();t===e.lastViewportPx?e.framesSinceChange+=1:(e.lastViewportPx=t,e.framesSinceChange=0,e.moved=!0);let r=Qe((t-e.originHostPx)/e.deltaCssPx,0,1);if(r>=1){if(e.framesAtTarget+=1,e.sawIntermediate||e.framesAtTarget>=3){a();return}e.frame=requestAnimationFrame(o);return}e.framesAtTarget>0&&(Ye.blipFrames+=1),e.framesAtTarget=0,r>0&&(e.sawIntermediate=!0),e.driver.setProgress(r);let s=e.moved?8:20;if(e.framesSinceChange>=s){a();return}e.frame=requestAnimationFrame(o)},s=He(e,t=>{let s=t.detail;if(!r||!s||!$e(e))return;let c=s.deltaCssPx;if(!Number.isFinite(c)||Math.abs(c)<1)return;a();let l=n(),u=e.getBoundingClientRect().height;if(!(l>0)||!(u>0)||Math.abs(l-u)>1)return;let d=Math.round(u),f=d+c;if(!(f>0)||!r.set(f))return;let p=s.claim();if(!p){r.release();return}i={driver:p,originHostPx:d,deltaCssPx:c,lastViewportPx:l,framesSinceChange:0,moved:!1,sawIntermediate:!1,framesAtTarget:0,frame:null},i.frame=requestAnimationFrame(o)});return{dispose(){s(),a(),r?.dispose()}}}function nt(e){let t=e.size??`100%`,n=e.strokeWidth??2;return c(`svg`,{class:`padlock-icon seams-padlock-icon`,xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":n,"stroke-linecap":`round`,"stroke-linejoin":`round`,width:t,height:t,"aria-hidden":`true`,focusable:`false`,children:[c(`rect`,{width:`18`,height:`11`,x:`3`,y:`11`,rx:`2`,ry:`2`}),c(`path`,{d:`M7 11V7a5 5 0 0 1 10 0v4`})]})}let rt=0;var it=class extends o{id=`seams-halo-${++rt}`;element=a();motion=null;frame=null;startedAt=null;angle=null;componentDidMount(){this.motion=this.element.current.ownerDocument.defaultView.matchMedia(`(prefers-reduced-motion: no-preference)`),this.motion.addEventListener(`change`,this.updateAnimation),this.syncDynamicStyles(),this.updateAnimation()}componentDidUpdate(e){e.styles!==this.props.styles&&e.styles.deleteDynamicRule(this.id),e.innerPadding!==this.props.innerPadding&&this.syncDynamicStyles(),(e.animated!==this.props.animated||e.durationMs!==this.props.durationMs||e.styles!==this.props.styles)&&this.updateAnimation()}componentWillUnmount(){this.cancelFrame(),this.motion?.removeEventListener(`change`,this.updateAnimation),this.motion=null,this.props.styles.deleteDynamicRule(this.id)}cancelFrame(){let e=this.element.current?.ownerDocument.defaultView;this.frame!==null&&e?.cancelAnimationFrame(this.frame),this.frame=null,this.startedAt=null}updateAnimation=()=>{this.cancelFrame(),this.angle=null,this.syncDynamicStyles(),this.props.animated&&this.motion?.matches&&(this.frame=this.element.current.ownerDocument.defaultView.requestAnimationFrame(this.tick))};tick=e=>{if(!this.element.current||!this.props.animated||!this.motion?.matches)return;this.startedAt??=e;let t=this.props.durationMs,n=t&&Number.isFinite(t)&&t>0?t:1150;this.angle=`${(e-this.startedAt)%n/n*360}deg`,this.syncDynamicStyles(),this.frame=this.element.current.ownerDocument.defaultView.requestAnimationFrame(this.tick)};syncDynamicStyles(){let e={};if(this.props.innerPadding&&(e[`--inner-padding`]=this.props.innerPadding),this.angle&&(e[`--halo-angle`]=this.angle),Object.keys(e).length===0){this.props.styles.deleteDynamicRule(this.id);return}this.props.styles.setDynamicDeclarations(this.id,`#${this.id}`,e)}render(){return c(`div`,{id:this.id,ref:this.element,class:`seams-halo-border`,children:c(`div`,{class:`halo-root${this.props.animated?` animated`:``}`,children:c(`div`,{class:`halo-inner`,children:c(`div`,{class:`halo-outer`,children:[this.props.animated&&c(`div`,{class:`halo-ring`,"aria-hidden":`true`}),c(`div`,{class:`halo-content`,children:this.props.children})]})})})})}};function at(e){return c(`div`,{class:`seams-passkey-halo-loading`,"aria-hidden":`true`,children:c(`div`,{class:`seams-passkey-loading-root`,children:c(it,{animated:e.animated,innerPadding:e.innerPadding,styles:e.styles,children:c(`div`,{class:`seams-passkey-loading-touch-icon-container`,children:c(`svg`,{class:`seams-passkey-loading-touch-icon`,"data-icon":e.icon,width:e.size??36,height:e.size??36,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,focusable:`false`,children:e.icon===`mail`?c(ot,{}):c(st,{})})})})})})}function ot(){return c(l,{children:[c(`path`,{d:`M4.5 6.5H19.5C20.0523 6.5 20.5 6.94772 20.5 7.5V16.5C20.5 17.0523 20.0523 17.5 19.5 17.5H4.5C3.94772 17.5 3.5 17.0523 3.5 16.5V7.5C3.5 6.94772 3.94772 6.5 4.5 6.5Z`,stroke:`currentColor`,"stroke-width":`var(--seams-modal__passkey-halo-loading-touch-icon__stroke-width, 3)`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"vector-effect":`non-scaling-stroke`}),c(`path`,{d:`M4.25 7.25L12 12.75L19.75 7.25`,stroke:`currentColor`,"stroke-width":`var(--seams-modal__passkey-halo-loading-touch-icon__stroke-width, 3)`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"vector-effect":`non-scaling-stroke`})]})}function st(){return c(`path`,{d:`M6.40519 19.0481C6.58912 18.6051 6.75832 18.1545 6.91219 17.6969M14.3433 20.6926C14.6095 19.9418 14.8456 19.1768 15.0502 18.399C15.2359 17.6934 15.3956 16.9772 15.5283 16.2516M19.4477 17.0583C19.8121 15.0944 20.0026 13.0694 20.0026 11C20.0026 6.58172 16.4209 3 12.0026 3C10.7472 3 9.55932 3.28918 8.50195 3.80456M3.52344 15.0245C3.83663 13.7343 4.00262 12.3865 4.00262 11C4.00262 9.25969 4.55832 7.64917 5.50195 6.33621M12.003 11C12.003 13.7604 11.5557 16.4163 10.7295 18.8992C10.5169 19.5381 10.2792 20.1655 10.0176 20.7803M7.71227 14.5C7.90323 13.3618 8.00262 12.1925 8.00262 11C8.00262 8.79086 9.79348 7 12.0026 7C14.2118 7 16.0026 8.79086 16.0026 11C16.0026 11.6166 15.9834 12.2287 15.9455 12.8357`,stroke:`currentColor`,"stroke-width":`var(--seams-modal__passkey-halo-loading-touch-icon__stroke-width, 3)`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"vector-effect":`non-scaling-stroke`,pathLength:`1`})}function ct(e){return c(l,{children:[c(`span`,{class:`loading-ellipsis`,"aria-hidden":`true`,children:[c(`span`,{class:`loading-ellipsis__dot`,children:`.`}),c(`span`,{class:`loading-ellipsis__dot`,children:`.`}),c(`span`,{class:`loading-ellipsis__dot`,children:`.`})]}),c(`span`,{class:`sr-only`,children:c(x,{copy:e.label})})]})}function lt(e,t){return`${e.trim().replace(/\/$/,``)}/address/${encodeURIComponent(t)}`}function ut(e){return c(`a`,{class:`highlight-receiver-id`,href:lt(e.base,e.address),target:`_blank`,rel:`noopener noreferrer`,children:e.children})}function dt(e){let t=e.trim();return/^0x[0-9a-fA-F]{40}$/.test(t)?`${t.slice(0,8)}...${t.slice(-4)}`:t}function ft(e){let t=e.label.trim().match(/^(Transaction(?:\s+\d+)?\s+to contract)\b/i);return t?`${t[1]} `:void 0}function pt(e){throw Error(`Unsupported transaction action: ${String(e)}`)}function R(e){let t=e.action;if(t)switch(t.type){case m.FunctionCall:return`Calling ${t.methodName} with ${D(t.deposit)} using ${ue(t.gas)}`;case m.Transfer:return`Transfer ${D(t.amount)}`;case m.CreateAccount:return`Creating Account`;case m.DeleteAccount:return`Deleting Account`;case m.Stake:return`Staking ${D(t.stake)}`;case m.AddKey:return`Adding Key`;case m.DeleteKey:return`Deleting Key`;case m.DeployContract:return`Deploying WASM contract`;case m.DeployGlobalContract:return`Deploy global WASM contract (mode: ${t.deployMode}, size ${k(t.code)})`;case m.UseGlobalContract:return t.accountId?`Use global contract by account ${t.accountId}`:t.codeHash?`Use global contract by hash ${t.codeHash}`:`Use global contract`;default:return pt(t)}if(e.transaction)return((e.totalTransactions??1)>1?`Transaction ${(e.transactionIndex??0)+1}: to `:`Transaction to `)+e.transaction.receiverId;let n=ft(e);return e.contractAddress?.trim()&&n?n+dt(e.contractAddress):e.label}function mt({node:e,explorers:t}){let n=e.action;if(n)switch(n.type){case m.FunctionCall:{let e=ue(n.gas),t=D(n.deposit);return c(l,{children:[c(x,{message:`Calling`}),` `,c(`span`,{class:`highlight-method-name`,children:n.methodName}),t!==`0 NEAR`&&c(l,{children:[` `,c(x,{message:`with`}),` `,c(`span`,{class:`highlight-method-name`,children:t})]}),e&&c(l,{children:[` `,c(x,{message:`using`}),` `,c(`span`,{class:`highlight-method-name`,children:e})]})]})}case m.Transfer:return c(l,{children:[c(x,{message:`Transfer`}),` `,c(`span`,{class:`highlight-amount`,children:D(n.amount)})]});case m.CreateAccount:return c(x,{message:`Creating Account`});case m.DeleteAccount:return c(x,{message:`Deleting Account`});case m.Stake:return c(x,{message:`Staking {value0}`,values:{value0:D(n.stake)}});case m.AddKey:return c(x,{message:`Adding Key`});case m.DeleteKey:return c(x,{message:`Deleting Key`});case m.DeployContract:return c(x,{message:`Deploying WASM contract ({value0})`,values:{value0:k(n.code)}});case m.DeployGlobalContract:return c(x,{copy:R(e)});case m.UseGlobalContract:return n.accountId?c(l,{children:[c(x,{message:`Use global contract`}),` `,c(ut,{base:t.near,address:n.accountId,children:n.accountId})]}):n.codeHash?c(l,{children:[c(x,{message:`Use global contract by hash`}),` `,c(`span`,{class:`highlight-method-name`,children:O(n.codeHash,{prefix:10,suffix:6})})]}):c(x,{message:`Use global contract`});default:return pt(n)}if(e.transaction)return c(l,{children:[c(x,{copy:(e.totalTransactions??1)>1?`Transaction ${(e.transactionIndex??0)+1}: to `:`Transaction to `}),c(ut,{base:t.near,address:e.transaction.receiverId,children:e.transaction.receiverId})]});let r=ft(e),i=e.contractAddress?.trim();if(i&&r){let n=e.chain&&e.chain!==`unknown`?t[e.chain]:void 0;return c(l,{children:[c(x,{copy:r}),n?c(ut,{base:n,address:i,children:dt(i)}):c(`span`,{class:`highlight-receiver-id`,children:dt(i)})]})}let a=e.label.trim();if(a.toLowerCase().startsWith(`calling `)){let e=a.slice(8).trim(),t=e.toLowerCase().indexOf(` using `);if(t<0&&e)return c(l,{children:[c(x,{message:`Calling`}),` `,c(`span`,{class:`highlight-method-name`,children:e})]});let n=e.slice(0,t).trim(),r=e.slice(t+7).trim();if(t>=0&&n)return c(l,{children:[c(x,{message:`Calling`}),` `,c(`span`,{class:`highlight-method-name`,children:n}),r&&c(l,{children:[c(x,{message:`using`}),` `,r]})]})}return e.fieldLabel?c(l,{children:[c(x,{copy:e.fieldLabel}),e.label.slice(e.fieldLabel.length)]}):c(x,{copy:e.label})}const z=[`anim-h`,`anim-h-active`,`anim-h-driven`],ht=[...z,`anim-h-hold`];let gt=0;function _t(){return c(`svg`,{class:`chevron`,viewBox:`0 0 16 16`,"aria-hidden":`true`,children:c(`path`,{fill:`currentColor`,d:`M6 3l5 5-5 5z`})})}function vt(e){return!!e.contentVariants?.decoded&&!!e.contentVariants.raw&&e.contentVariants.decoded!==e.contentVariants.raw}function yt(e,t,n){return c(xt,{node:n,depth:t,styles:e.styles,explorers:e.explorers,onToggle:e.onToggle,onCopy:e.onCopy},n.id)}function bt(e){if(!e.node.children?.length)return null;let t=c(`div`,{class:`tooltip-tree-root`,children:c(`div`,{class:`tooltip-tree-children`,children:e.node.children.map(yt.bind(null,e,1))})});return c(`div`,{class:`seams-tx-tree`,"data-theme":e.theme,children:e.showShadow?c(`div`,{class:`tooltip-border-outer`,children:t}):t})}var xt=class extends o{static contextType=w;state={mode:this.props.node.contentVariants?.defaultMode===`raw`?`raw`:`decoded`,copied:!1};id=`seams-tree-node-${++gt}`;details=a();shell=a();disposed=!1;copiedTimer=null;frame=null;motionTimer=null;motion=null;modeHeight=null;componentDidUpdate(e){if(e.styles!==this.props.styles&&e.styles.deleteDynamicRule(this.id),this.modeHeight!==null&&this.shell.current){let e=this.shell.current,t=this.modeHeight;this.modeHeight=null,e.classList.remove(...z);let n=e.getBoundingClientRect().height;e.classList.add(...z),L({reason:`${this.props.node.id}:file-content-mode`,element:e,drivenClasses:z,fromCssPx:t,toCssPx:n,setHeightCssPx:this.setHeight,onSettled:this.releaseHeight})||(e.classList.remove(...z),this.releaseHeight())}}componentWillUnmount(){this.disposed=!0,this.copiedTimer!==null&&clearTimeout(this.copiedTimer),this.motionTimer!==null&&clearTimeout(this.motionTimer),this.frame!==null&&this.details.current?.ownerDocument.defaultView?.cancelAnimationFrame(this.frame),this.motion?.body.removeEventListener(`transitionend`,this.onTransitionEnd),this.motion=null,this.releaseHeight()}setHeight=e=>{this.disposed||this.props.styles.setDynamicDeclarations(this.id,`#${this.id}`,{"--seams-tree__anim-target":`${e}px`})};releaseHeight=()=>{this.props.styles.deleteDynamicRule(this.id)};clearCopied=()=>{this.copiedTimer=null,this.disposed||this.setState({copied:!1})};copy=async e=>{e.preventDefault(),e.stopPropagation();let t=this.props.node.copyValue;if(!t)return;let n=e.currentTarget.closest(`.seams-tx-tree`);if(n)try{if(!await E(n,t)||this.disposed)return;this.copiedTimer!==null&&clearTimeout(this.copiedTimer),this.setState({copied:!0}),this.copiedTimer=setTimeout(this.clearCopied,2e3),this.props.onCopy?.(t)}catch{}};toggleMode=e=>{e.preventDefault(),e.stopPropagation(),vt(this.props.node)&&(this.shell.current&&(this.modeHeight=this.shell.current.getBoundingClientRect().height,this.setHeight(this.modeHeight),this.shell.current.classList.add(...z)),this.setState({mode:this.state.mode===`decoded`?`raw`:`decoded`}))};toggle=e=>{if(e.target.closest(`a, button`)){e.stopPropagation();return}e.preventDefault(),e.stopPropagation();let t=this.details.current;if(!t||this.motion)return;let n=t.querySelector(`:scope > .folder-children`),r=!t.open,i=t.ownerDocument.defaultView.matchMedia(`(prefers-reduced-motion: reduce)`).matches;if(!n||i){t.open=r,this.props.onToggle?.(this.props.node.id,r);return}this.motion={body:n,open:r};let a=r?0:n.getBoundingClientRect().height;this.setHeight(a),n.classList.add(`anim-h`,`anim-h-active`,`anim-h-hold`),t.open=!0,n.offsetHeight,this.frame=t.ownerDocument.defaultView.requestAnimationFrame(this.startMotion)};startMotion=()=>{if(this.frame=null,!this.motion||this.disposed)return;let{body:e,open:t}=this.motion,n=e.getBoundingClientRect().height,r=t?e.scrollHeight:0;L({reason:this.props.node.id,element:e,drivenClasses:z,fromCssPx:n,toCssPx:r,setHeightCssPx:this.setHeight,onSettled:this.finishMotion})||(e.addEventListener(`transitionend`,this.onTransitionEnd),e.classList.remove(`anim-h-hold`),this.setHeight(r),this.motionTimer=setTimeout(this.finishMotion,t?200:250))};onTransitionEnd=e=>{e.target===this.motion?.body&&e.propertyName===`height`&&this.finishMotion()};finishMotion=()=>{if(this.disposed||!this.motion)return;let{body:e,open:t}=this.motion;this.motion=null,this.motionTimer!==null&&clearTimeout(this.motionTimer),this.motionTimer=null,e.removeEventListener(`transitionend`,this.onTransitionEnd),e.classList.remove(...ht),this.details.current&&(this.details.current.open=t),this.releaseHeight(),this.props.onToggle?.(this.props.node.id,t)};label(e){let t=this.props.node;return c(`span`,{class:`label${t.type===`file`?` label-action-node`:``}`,hidden:t.hideLabel,children:[e&&!t.hideChevron&&c(_t,{}),c(`span`,{class:`label-text`,title:T(this.context,R(t)),children:c(mt,{node:t,explorers:this.props.explorers})}),t.type===`file`&&t.copyValue&&c(`button`,{type:`button`,class:`copy-badge`,"data-copied":String(this.state.copied),onClick:this.copy,title:T(this.context,this.state.copied?`Copied`:`Copy`),children:this.state.copied?`copied`:`copy`})]})}render(){let{node:e,depth:t}=this.props,n=`row summary-row depth-${Math.max(0,t-1)}`;if(e.type===`file`&&!e.content)return c(`div`,{id:this.id,class:`row file-row depth-${Math.max(0,t-1)}`,"data-no-elbow":String(!!e.hideLabel),children:[c(`span`,{class:`indent`}),this.label(!1)]});let r=vt(e),i=r&&e.contentVariants?e.contentVariants[this.state.mode]:e.content,a=this.state.mode===`decoded`?`bytes`:`decoded`;return c(`details`,{id:this.id,ref:this.details,class:`tree-node ${e.type}`,open:!!e.open,"data-node-id":e.id,children:[c(`summary`,{class:n,"data-no-elbow":String(!!e.hideLabel),onClick:this.toggle,children:[c(`span`,{class:`indent`}),this.label(!0),e.type===`file`&&c(`div`,{ref:this.shell,class:`file-content-shell${r?` has-mode-toggle`:``}`,children:[r&&c(`button`,{type:`button`,class:`file-content-mode-toggle`,title:T(this.context,`Show ${a}`),"aria-label":T(this.context,`Show ${a}`),onClick:this.toggleMode,children:c(x,{copy:a})}),c(`div`,{class:`file-content`,children:i})]})]}),e.type===`folder`&&!!e.children?.length&&c(`div`,{class:`folder-children`,children:e.children.map(yt.bind(null,this.props,t+1))})]})}};let St=0;function B(e){e.stopPropagation()}var Ct=class extends o{static contextType=w;state={armed:!1};id=`seams-confirm-content-${++St}`;root=a();reflow;frame=null;capturedBeforeUpdate=!1;reflowEnabled=!0;constructor(e){super(e),this.reflow=Ke({reason:`tx-body`,element:this.getReflowElement,setHeightCssPx:this.setHeight})}getReflowElement=()=>{let e=this.root.current;return e?.closest(`.modal-container-root, .seams-confirmation-drawer`)??e};setHeight=e=>{let t=this.getReflowElement(),n=t?.id?`#${t.id}`:`#${this.id}`;this.props.styles.setDynamicDeclarations(this.id,n,{[We]:`${e}px`})};componentDidMount(){this.reflowEnabled=this.getReflowElement()===this.root.current,this.frame=this.root.current.ownerDocument.defaultView.requestAnimationFrame(this.afterFirstPaint)}afterFirstPaint=()=>{this.frame=this.root.current.ownerDocument.defaultView.requestAnimationFrame(this.arm)};arm=()=>{this.frame=null,this.setState({armed:!0})};componentWillReceiveProps(){this.reflowEnabled&&(this.reflow.capture(),this.capturedBeforeUpdate=!0)}componentWillUpdate(){this.reflowEnabled&&(this.capturedBeforeUpdate||this.reflow.capture())}componentDidUpdate(e){this.reflowEnabled&&(this.capturedBeforeUpdate=!1,e.styles!==this.props.styles&&e.styles.deleteDynamicRule(this.id),this.reflow.commit())}componentWillUnmount(){this.frame!==null&&this.root.current?.ownerDocument.defaultView?.cancelAnimationFrame(this.frame),this.frame=null,this.reflow.dispose(),this.props.styles.deleteDynamicRule(this.id)}confirm=()=>{this.state.armed&&this.props.decision.kind===`ready`&&this.props.decision.onConfirm()};cancel=()=>{this.props.onCancel()};render(){let e=this.props.decision.kind===`preparing`;return c(`div`,{class:`seams-tx-confirm-content`,onPointerDown:B,onMouseDown:B,onTouchStart:B,children:c(`div`,{id:this.id,ref:this.root,class:`txc-root`,children:[this.props.errorMessage&&c(`div`,{class:`error`,role:`alert`,children:c(x,{copy:this.props.errorMessage})}),this.props.tree&&c(`div`,{class:`tooltip-width`,children:c(bt,{node:this.props.tree,theme:this.props.theme,explorers:this.props.explorers,styles:this.props.styles,showShadow:!1,onToggle:this.props.onTreeToggle,onCopy:this.props.onCopy})}),this.props.authMethodApprovalMessage&&c(`p`,{class:`seams-voiceid-instructions`,"data-seams-voice-id":`required`,role:`status`,children:this.props.authMethodApprovalMessage}),c(`div`,{class:`actions`,children:[!this.props.cancelInHeader&&c(`button`,{type:`button`,class:`cancel`,onClick:this.cancel,children:c(x,{copy:this.props.cancelText})}),c(`button`,{type:this.props.decision.kind===`form`?`submit`:`button`,form:this.props.decision.kind===`form`?this.props.decision.formId:void 0,class:`confirm${e?` loading`:``}`,onClick:this.confirm,disabled:e||!this.state.armed,children:e?c(l,{children:[c(`span`,{class:`loading-indicator`,role:`progressbar`,"aria-label":b(this.context,`Loading`)}),c(`span`,{children:c(x,{message:`Loading...`})})]}):c(l,{children:[this.props.confirmIcon,c(x,{copy:this.props.confirmText})]})})]})]})})}};function wt(e){throw Error(`Unexpected confirmation body: ${String(e)}`)}var Tt=class extends o{static contextType=w;copy=()=>{this.props.model.kind===`funding`&&this.props.onCopyAccount(this.props.model.accountId)};render(){let e=this.props.model;switch(e.kind){case`empty`:return null;case`text`:return c(`div`,{class:`confirmation-body`,children:c(x,{copy:e.text})});case`status`:return c(`div`,{class:`confirmation-body confirmation-body--status`,children:c(x,{copy:e.text})});case`funding`:return c(`div`,{class:`confirmation-body confirmation-body--funding`,children:[c(x,{message:`NEAR account`}),c(`button`,{type:`button`,class:`confirmation-body__copy-target`,title:T(this.context,`Copy ${e.accountId}`),"aria-label":T(this.context,`Copy NEAR account ${e.accountId}`),onClick:this.copy,children:e.shortAccountId}),c(x,{message:`needs funding`})]});default:return wt(e)}}};function Et(e){let t=y();return c(`div`,{class:`passkey-registration-confirm__identity`,"aria-label":b(t,`Passkey registration details`),children:[c(`div`,{class:`passkey-registration-confirm__row`,children:[c(`span`,{class:`passkey-registration-confirm__label`,children:c(x,{message:`Account`})}),c(`span`,{class:`passkey-registration-confirm__value`,title:T(t,e.display.intendedUserName),children:e.display.intendedUserName})]}),c(`div`,{class:`passkey-registration-confirm__row`,children:[c(`span`,{class:`passkey-registration-confirm__label`,children:c(x,{message:`Website`})}),c(`span`,{class:`passkey-registration-confirm__value`,title:T(t,e.display.rpId),children:e.display.rpId})]})]})}var Dt=class extends o{static contextType=w;confirm=()=>{this.props.decision.kind===`ready`&&this.props.decision.onConfirm()};cancel=()=>{this.props.onCancel()};render(){let e=this.props.decision.kind===`creating`;return c(`div`,{ref:this.props.root,class:`passkey-registration-confirm`,children:[c(`div`,{class:`hero passkey-registration-confirm__hero`,children:[c(at,{animated:!this.props.errorMessage,icon:`fingerprint`,size:44,styles:this.props.styles}),c(`div`,{class:`hero-container passkey-registration-confirm__hero-copy`,children:[c(`h2`,{class:`hero-heading`,children:c(x,{copy:this.props.heading})}),c(`p`,{class:`passkey-registration-confirm__body`,children:c(x,{copy:this.props.body})})]})]}),this.props.errorMessage&&c(`div`,{class:`error-banner`,children:c(x,{copy:this.props.errorMessage})}),c(Et,{display:this.props.display}),c(`div`,{class:`passkey-registration-confirm__actions`,children:[c(`button`,{type:`button`,class:`btn btn-cancel`,onClick:this.cancel,children:c(x,{copy:this.props.cancelText})}),c(`button`,{type:`button`,class:`btn btn-confirm`,disabled:e,onClick:this.confirm,children:e?c(l,{children:[c(`span`,{class:`loading-indicator passkey-registration-confirm__spinner`,role:`progressbar`,"aria-label":b(this.context,`Creating passkey`)}),c(`span`,{class:`passkey-registration-confirm__busy-label`,children:c(x,{message:`Creating passkey...`})})]}):c(x,{message:`Create passkey`})})]})]})}};let Ot=0;var kt=class extends o{id=`seams-email-code-${++Ot}`;input=e=>{this.props.state.kind===`editing`&&this.props.state.onInput(e.currentTarget.value)};resend=()=>{this.props.resend?.kind===`available`&&this.props.resend.onResend()};renderDigit=e=>{let t=this.props.code[e]||``;return c(`span`,{class:`email-otp-confirm__slot${t?` is-filled`:``}`,children:t},e)};render(){let e=this.props.state.kind!==`editing`,t=`${this.id}-helper`,n=`${this.id}-error`;return c(`div`,{class:`email-otp-confirm`,children:[c(`label`,{class:`email-otp-confirm__label`,for:this.id,children:c(x,{message:`Email code`})}),c(`div`,{class:`email-otp-confirm__code-field`,"data-disabled":e?`true`:`false`,children:[c(`input`,{id:this.id,name:`email-code`,type:`text`,class:`email-otp-confirm__input`,inputMode:`numeric`,autoComplete:`one-time-code`,"data-email-otp-challenge-id":this.props.challengeId,pattern:`[0-9]*`,maxLength:6,spellcheck:!1,value:this.props.code,disabled:e,onInput:this.input,"aria-invalid":this.props.errorMessage?`true`:void 0,"aria-describedby":this.props.errorMessage?`${t} ${n}`:t}),c(`div`,{class:`email-otp-confirm__slots${e?` is-submitting`:``}`,"aria-hidden":`true`,children:[0,1,2,3,4,5].map(this.renderDigit)})]}),c(`div`,{id:t,class:`email-otp-confirm__helper`,children:c(x,{copy:this.props.helperText})}),this.props.errorMessage&&c(`div`,{id:n,class:`email-otp-confirm__error`,children:c(x,{copy:this.props.errorMessage})}),this.props.resend&&c(`button`,{type:`button`,class:`email-otp-confirm__resend`,disabled:this.props.resend.kind===`unavailable`,onClick:this.resend,children:c(x,{copy:this.props.resend.label})})]})}},At=class{codeState={kind:`editing`,code:``};resendState={kind:`available`,label:`Resend code`};error=``;countdown=null;options;constructor(e){this.options=e}input=e=>{if(this.codeState.kind!==`editing`)return;let t=e.replace(/\D/g,``).slice(0,6);this.error=``,this.codeState={kind:`editing`,code:t},t.length===6?this.confirm():this.publish()};confirm(){if(this.codeState.kind!==`editing`)return`ignored`;let e=this.codeState.code;return e.length===6?(this.error=``,this.codeState={kind:`fading`,code:e,timer:setTimeout(this.submit,150)},this.publish(),`accepted`):(this.error=`Enter the 6-digit Email OTP code.`,this.publish(),`invalid`)}submit=()=>{if(this.codeState.kind!==`fading`)return;let e=this.codeState.code;this.codeState={kind:`submitting`,code:e},this.publish(),this.isDisposed()||this.options.onSubmit(e)};retry(e){this.codeState.kind!==`disposed`&&(this.cancelFade(),this.codeState={kind:`editing`,code:this.codeState.code},this.error=e,this.publish())}setVerification(e){if(this.codeState.kind!==`disposed`)switch(e.kind){case`ready`:this.codeState.kind===`submitting`&&this.retry(``);return;case`pending`:this.cancelFade(),this.codeState={kind:`submitting`,code:this.codeState.code},this.publish();return;case`rejected`:this.retry(e.message);return}}resend=async()=>{if(this.codeState.kind!==`editing`||this.resendState.kind!==`available`)return;let e=this.options.resend;if(!e)return;let t=Date.now()+e.cooldownMs,n={kind:`sending`,until:t};if(this.resendState=n,this.error=``,this.publish(),this.isDisposed())return;let r;try{r=await e.send()}catch{r={kind:`failed`,message:`Could not send code.`}}if(this.isDisposed()||this.resendState!==n)return;let i=r.kind===`sent`?`Code sent`:`Resend code`;r.kind===`failed`&&(this.error=r.message),Date.now()>=t?this.resendState={kind:`available`,label:i}:(this.resendState={kind:`cooldown`,until:t,label:i},this.countdown=setInterval(this.tick,250)),this.publish()};tick=()=>{this.resendState.kind===`cooldown`&&(Date.now()>=this.resendState.until&&(this.resendState={kind:`available`,label:this.resendState.label},this.clearCountdown()),this.publish())};isDisposed(){return this.codeState.kind===`disposed`}publish(){this.codeState.kind!==`disposed`&&this.options.onChange({code:this.codeState.code,phase:this.codeState.kind,error:this.error,resend:this.options.resend?this.resendSnapshot():null})}resendSnapshot(){switch(this.resendState.kind){case`available`:return{available:this.codeState.kind===`editing`,label:this.resendState.label};case`sending`:return{available:!1,label:`Sending...`};case`cooldown`:return{available:!1,label:`Resend in ${Math.max(1,Math.ceil((this.resendState.until-Date.now())/1e3))}s`}}}cancelFade(){this.codeState.kind===`fading`&&clearTimeout(this.codeState.timer)}clearCountdown(){this.countdown!==null&&clearInterval(this.countdown),this.countdown=null}dispose(){this.cancelFade(),this.clearCountdown(),this.codeState={kind:`disposed`},this.error=``}};function jt(e){return c(Mt,{...e},e.prompt.challengeId)}var Mt=class extends o{static contextType=w;session;form=a();lifetime;constructor(e){super(e),this.lifetime={kind:`active`,challengeId:e.prompt.challengeId,emailHint:e.prompt.emailHint?.trim()||``},this.state={code:``,phase:`editing`,error:``,resend:e.prompt.onResend?{available:!0,label:`Resend code`}:null},this.session=new At({onSubmit:this.submit,onChange:this.change,resend:e.prompt.onResend?{send:this.send,cooldownMs:Math.max(1e3,Math.floor(Number(e.prompt.resendDebounceMs)||1e4))}:null})}submit=e=>{this.lifetime.kind===`active`&&this.props.onSubmit(e,this.lifetime.challengeId)};send=async()=>{let e=this.props.prompt.onResend;if(!e)return{kind:`failed`,message:`Could not send code.`};try{let t=await e();if(this.lifetime.kind===`disposed`)return{kind:`sent`};let n=String(t?.challengeId||``).trim(),r=String(t?.emailHint||``).trim();return n&&(this.lifetime={kind:`active`,challengeId:n,emailHint:r||this.lifetime.emailHint}),{kind:`sent`}}catch(e){return{kind:`failed`,message:Pt(e)}}};change=e=>{this.setState(e)};confirm=e=>{e.preventDefault(),e.stopPropagation(),this.session.confirm()===`invalid`&&this.setState({},this.focusCode)};focusCode=()=>{this.form.current?.querySelector(`input`)?.focus({preventScroll:!0})};componentDidMount(){this.session.setVerification(this.props.verification)}componentDidUpdate(e){Nt(e.verification,this.props.verification)&&this.session.setVerification(this.props.verification)}componentWillUnmount(){this.lifetime={kind:`disposed`},this.session.dispose()}inputState(){switch(this.state.phase){case`editing`:return{kind:`editing`,onInput:this.session.input};case`fading`:return{kind:`fading`};case`submitting`:return{kind:`submitting`}}}resendAction(){let e=this.state.resend;return e?e.available?{kind:`available`,label:e.label,onResend:this.session.resend}:{kind:`unavailable`,label:e.label}:null}render(){return c(`form`,{ref:this.form,id:this.props.formId,onSubmit:this.confirm,noValidate:!0,children:c(kt,{challengeId:this.lifetime.kind===`active`?this.lifetime.challengeId:``,code:this.state.code,helperText:this.props.prompt.helperText?.trim()||_(this.lifetime.kind===`active`?this.lifetime.emailHint:``),errorMessage:T(this.context,this.state.error||void 0),state:this.inputState(),resend:this.resendAction()})})}};function Nt(e,t){return e.kind===t.kind?e.kind===`rejected`&&t.kind===`rejected`&&e.message!==t.message:!0}function Pt(e){if(e&&typeof e==`object`&&`code`in e&&e.code===`rate_limited`){let t=`retryAfterMs`in e?Number(e.retryAfterMs):NaN;return Number.isFinite(t)&&t>0?`Too many requests. Try again in ${Math.max(1,Math.ceil(t/1e3))}s.`:`Too many requests. Try again shortly.`}return e instanceof Error&&e.message?e.message:`Could not send code.`}let Ft=0;var V=class extends o{root=a();id=`seams-review-disclosure-${++Ft}`;componentDidMount(){this.root.current&&(this.root.current.open=this.props.initiallyOpen??!1)}motion=null;componentWillUnmount(){this.clearMotion(),this.root.current&&S(this.root.current.ownerDocument).deleteDynamicRule(this.id)}clearMotion(){this.motion&&(this.motion.kind===`local`&&(this.motion.size.onfinish=null,this.motion.size.cancel(),this.motion.fade.cancel()),this.motion=null,this.root.current?.removeAttribute(`data-resizing`))}setHeight=e=>{let t=this.root.current;t&&S(t.ownerDocument).setDynamicDeclarations(this.id,`#${this.id}`,{"--seams-review-disclosure-height":`${e}px`})};finish=()=>{let e=this.motion?.kind===`local`;if(this.root.current&&this.motion&&(this.root.current.open=this.motion.opening,this.root.current.removeAttribute(`data-closing`)),this.clearMotion(),e){let e=this.root.current?.closest(`.seams-confirmation-surface`),t=e?.ownerDocument.activeElement;if(t instanceof HTMLElement&&t.tabIndex>=0&&e?.contains(t)){let e=t.getBoundingClientRect(),n=t.ownerDocument.documentElement.clientHeight;(e.top<0||e.bottom>n)&&t.scrollIntoView({block:`center`,inline:`nearest`})}}};toggle=e=>{let t=this.root.current;if(!t||(e.preventDefault(),this.motion?.kind===`hosted`))return;let n=this.motion?!this.motion.opening:!t.open,r=t.lastElementChild;if(!(r instanceof HTMLElement))return;let i=t.open?r.getBoundingClientRect().height:0;if(this.clearMotion(),t.toggleAttribute(`data-closing`,!n),window.matchMedia(`(prefers-reduced-motion: reduce)`).matches||!t.animate){t.open=n,t.removeAttribute(`data-closing`);return}t.open=!0,t.setAttribute(`data-resizing`,``);let a=n?r.scrollHeight:0;if(this.motion={kind:`hosted`,opening:n},L({element:r,reason:`review-details`,fromCssPx:i,toCssPx:a,drivenClasses:[`seams-review-disclosure-driven`],setHeightCssPx:this.setHeight,onSettled:this.finish}))return;let o=r.animate([{height:`${i}px`,overflow:`hidden`},{height:`${a}px`,overflow:`hidden`}],{duration:n?220:180,easing:`cubic-bezier(.2,0,0,1)`,fill:`both`});this.motion={kind:`local`,opening:n,size:o,fade:r.animate(n?[{opacity:0},{opacity:1}]:[{opacity:1},{opacity:0}],{duration:n?180:100,easing:`ease-out`,fill:`both`})},o.onfinish=this.finish};render(){return c(`details`,{ref:this.root,class:`seams-review-${this.props.kind??`technical`}`,children:[c(`summary`,{onClick:this.toggle,children:[c(x,{copy:this.props.label}),c(`svg`,{class:`seams-review-caret`,viewBox:`0 0 20 20`,width:`16`,height:`16`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.6`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"aria-hidden":`true`,children:c(`path`,{d:`m5 7.5 5 5 5-5`})})]}),c(`div`,{id:this.id,children:this.props.children})]})}};function H({kind:e}){let t={back:`m15 6-6 6 6 6`,close:`M6 6l12 12M6 18L18 6`,minimize:`M5 12h14`,check:`m5 12 4 4L19 6`,arrow:`M7 17 17 7M7 7h10v10`,copy:`M8 8h12v12H8ZM4 16V4h12`,loader:`M12 3a9 9 0 1 1-9 9`,alert:`M12 8v5m0 3v.1M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0`,fingerprint:`M6.405 19.048c.184-.443.353-.894.507-1.351M14.343 20.693c.266-.751.502-1.516.707-2.294.186-.706.346-1.422.478-2.147M19.448 17.058c.364-1.964.555-3.989.555-6.058 0-4.418-3.582-8-8-8-1.255 0-2.443.289-3.501.805M3.523 15.025c.314-1.29.48-2.638.48-4.025 0-1.74.556-3.351 1.499-4.664M12.003 11c0 2.76-.447 5.416-1.273 7.899-.213.639-.451 1.266-.712 1.881M7.712 14.5c.191-1.138.291-2.308.291-3.5 0-2.209 1.791-4 4-4s4 1.791 4 4c0 .617-.02 1.229-.058 1.836`};return c(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.6`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"aria-hidden":`true`,children:c(`path`,{d:t[e]})})}function U(e){return e?e.chain===`evm`&&e.chainId===5042?`Arc`:e.chain===`evm`&&e.chainId===5042002?`Arc Testnet`:e.chain===`evm`&&e.chainId===8453?`Base`:e.chain===`evm`&&e.chainId===84532?`Base Sepolia`:e.chain===`evm`&&e.chainId===1?`Ethereum`:e.chain===`evm`&&e.chainId===11155111?`Ethereum Sepolia`:`${e.chain.toUpperCase()}${e.chainId?` · ${e.chainId}`:``}`:`Wallet transaction`}function It(e){if(e?.operations.length!==1)return null;let t=e.operations[0];return t.kind===`generic.contractCall`||t.kind===`tempo.eip2718`?t.to??null:null}function Lt({value:e,class:t}){let n=y();return c(`bdi`,{class:`seams-review-middle ${t}`,dir:`ltr`,title:T(n,e),children:[c(`span`,{children:e.slice(0,-8)}),c(`span`,{children:e.slice(-8)})]})}function Rt({symbol:e}){return e===`NEAR`?c(`svg`,{class:`seams-review-token`,viewBox:`0 0 48 48`,"aria-hidden":`true`,children:[c(`circle`,{cx:`24`,cy:`24`,r:`24`,fill:`#000`}),c(`svg`,{x:`9`,y:`9`,width:`30`,height:`30`,viewBox:`108 108 351 351`,children:c(`path`,{d:`m421.61,108c-13,0-25.07,6.74-31.88,17.82l-73.37,108.93c-2.39,3.59-1.42,8.43,2.17,10.82,2.91,1.94,6.76,1.7,9.41-.58l72.22-62.64c1.2-1.08,3.05-.97,4.13.23.49.55.75,1.26.75,1.99v196.12c0,1.62-1.31,2.92-2.93,2.92-.87,0-1.69-.38-2.24-1.05L181.56,121.24c-7.11-8.39-17.55-13.23-28.54-13.24h-7.63c-20.65,0-37.39,16.74-37.39,37.39v276.22c0,20.65,16.74,37.39,37.39,37.39,13,0,25.07-6.74,31.88-17.82l73.37-108.93c2.39-3.59,1.42-8.43-2.17-10.82-2.91-1.94-6.76-1.7-9.41.58l-72.22,62.64c-1.2,1.08-3.05.97-4.13-.23-.49-.55-.75-1.26-.74-1.99v-196.17c0-1.62,1.31-2.92,2.93-2.92.86,0,1.69.38,2.24,1.05l218.28,261.37c7.11,8.39,17.55,13.23,28.54,13.24h7.63c20.65.01,37.4-16.72,37.42-37.37V145.39c0-20.65-16.74-37.39-37.39-37.39Z`,fill:`#fff`})})]}):e===`ETH`?c(`svg`,{class:`seams-review-token`,viewBox:`0 0 42 42`,"aria-hidden":`true`,children:[c(`circle`,{cx:`21`,cy:`21`,r:`21`,fill:`#eef0fb`}),c(`path`,{d:`m21 6-9 15 9 5 9-5Z`,fill:`#627eea`}),c(`path`,{d:`m21 6 9 15-9 5Z`,fill:`#465da9`}),c(`path`,{d:`m12 23 9 13 9-13-9 5Z`,fill:`#627eea`})]}):e===`USDC`?c(`svg`,{class:`seams-review-token`,viewBox:`0 0 96 96`,fill:`none`,"aria-hidden":`true`,children:[c(`path`,{d:`M48 95C73.9574 95 95 73.9574 95 48C95 22.0426 73.9574 1 48 1C22.0426 1 1 22.0426 1 48C1 73.9574 22.0426 95 48 95Z`,fill:`#0B53BF`}),c(`path`,{d:`M56.4609 13.7778V19.8291C68.5341 23.4716 77.3759 34.6928 77.3759 47.9997C77.3759 61.3066 68.5341 72.5278 56.4609 76.1703V82.2216C71.8534 78.4616 83.2509 64.5672 83.2509 47.9997C83.2509 31.4322 71.8534 17.5378 56.4609 13.7778Z`,fill:`white`}),c(`path`,{d:`M18.625 47.9997C18.625 34.6928 27.4669 23.4716 39.54 19.8291V13.7778C24.1475 17.5378 12.75 31.4322 12.75 47.9997C12.75 64.5672 24.1475 78.4616 39.54 82.2216V76.1703C27.4669 72.5572 18.625 61.3066 18.625 47.9997Z`,fill:`white`}),c(`path`,{d:`M60.6319 54.5506C60.6319 42.5362 41.8025 47.4713 41.8025 40.8325C41.8025 38.4531 43.7119 36.9256 47.3544 36.9256C51.7019 36.9256 53.2 39.0406 53.67 41.89H59.6625C59.1279 36.5426 56.0588 33.1662 50.9382 32.1604V27.4375H45.0632V31.9918C39.4534 32.7062 35.9275 35.973 35.9275 40.8325C35.9275 52.9056 54.7863 48.3819 54.7863 54.9031C54.7863 57.3706 52.4069 59.0156 48.3825 59.0156C43.1244 59.0156 41.3913 56.695 40.745 53.4931H34.8994C35.2781 59.3502 38.8897 63.0159 45.0632 63.9307V68.5625H50.9382V63.9923C56.9633 63.2139 60.6319 59.7089 60.6319 54.5506Z`,fill:`white`})]}):c(`span`,{class:`seams-review-token seams-review-token-fallback`,"aria-hidden":`true`,children:e.slice(0,1)})}function zt({model:e,compact:t=!1}){let n=Vt(e);return n?c(`div`,{class:`seams-review-amount${t?` seams-review-amount--compact`:``}`,children:[c(Rt,{symbol:n.symbol}),c(`div`,{children:[c(`span`,{children:n.value}),` `,c(`small`,{children:n.symbol})]})]}):null}function W(){return c(`div`,{class:`seams-receipt-footer`,children:[c(`span`,{children:c(x,{message:`Secured by`})}),` `,c(u,{})]})}function Bt(e,t){if(!/^\d+$/.test(e))return e;let n=e.padStart(t+1,`0`),r=n.slice(-t).replace(/0+$/,``);return`${n.slice(0,-t)}${r?`.${r}`:``}`}function Vt(e){let t=e?.totals;return t?.nativeValue?t.nativeSymbol===`yoctoNEAR`?{value:Bt(t.nativeValue,24),symbol:`NEAR`}:e?.chain===`evm`&&(e.chainId===5042||e.chainId===5042002)&&t.nativeSymbol===`wei`?{value:Bt(t.nativeValue,18),symbol:`USDC`}:{value:t.nativeValue,symbol:t.nativeSymbol??``}:null}var G=class extends o{static contextType=w;state={copied:!1};lifetime=new AbortController;timer=null;resetCopied=()=>{this.setState({copied:!1})};componentWillUnmount(){this.lifetime.abort(),this.timer!==null&&clearTimeout(this.timer)}componentDidUpdate(e){e.value!==this.props.value&&(this.lifetime.abort(),this.lifetime=new AbortController,this.timer!==null&&clearTimeout(this.timer),this.resetCopied())}copy=async e=>{let t=e.currentTarget;if(!(t instanceof HTMLElement))return;let n=this.lifetime.signal;try{if(!await E(t,this.props.value,n)||n.aborted)return;this.setState({copied:!0}),this.timer!==null&&clearTimeout(this.timer),this.timer=setTimeout(this.resetCopied,3e3)}catch{n.aborted||this.setState({copied:!1})}};render(){return c(`button`,{type:`button`,class:`seams-review-copy${this.props.address?` seams-review-copy-address`:``}${this.state.copied?` copied`:``}`,onClick:this.copy,"aria-label":T(this.context,this.state.copied?`Copied`:this.props.label??`Copy value`),children:[this.props.address&&c(`bdi`,{class:`seams-review-full-address`,dir:`ltr`,children:this.props.value}),c(ne,{})]})}};function Ht({node:e}){let t=y();if(e.action||e.transaction)return c(l,{children:c(x,{copy:R(e)})});let n=ft(e);if(n&&e.contractAddress){let r=e.contractAddress;return c(`span`,{class:`seams-review-contract`,children:[c(x,{copy:n.trim()}),c(`span`,{class:`seams-review-contract-value`,children:[c(Lt,{value:r,class:`seams-review-contract-address`}),c(G,{value:r,label:T(t,`Copy contract address ${r}`)})]})]})}if(e.fieldLabel){let t=e.label.slice(e.fieldLabel.length);return c(l,{children:[c(x,{copy:e.fieldLabel}),e.fieldLabel===`Method:`?c(`span`,{class:`seams-review-function`,children:t}):t]})}let r=/^(Call(?:ing)? )([^\s]+)(.*)$/.exec(e.label);return r?c(l,{children:[c(x,{copy:r[1]}),c(`span`,{class:`seams-review-function`,children:r[2]}),r[3]]}):c(l,{children:c(x,{copy:e.label})})}function Ut({node:e}){let t=y(),n=e.contentVariants?.decoded??e.content,r=!!(e.contentVariants||n?.includes(`
|
|
2
|
-
`));return c(`div`,{class:`seams-review-detail`,children:[c(`div`,{class:n?`seams-review-detail-row${r?` seams-review-detail-row--block`:``}`:`seams-review-detail-label`,children:[c(`span`,{children:c(Ht,{node:e})}),n&&c(`pre`,{children:n}),e.copyValue&&c(G,{value:e.copyValue})]}),e.contentVariants&&c(V,{label:b(t,`Raw data`),kind:`raw`,children:c(`pre`,{children:e.contentVariants.raw})}),!!e.children?.length&&c(`div`,{class:`seams-review-detail-children`,children:e.children?.map(e=>c(Ut,{node:e},e.id))})]})}function Wt({data:e,details:t=!0}){let n=y(),r=e.model,i=r?.operations[0],a=It(r);return c(`div`,{class:`seams-transaction-review`,children:[c(zt,{model:r}),r?.warnings?.map(e=>c(`div`,{class:`seams-review-warning`,role:`alert`,children:c(x,{copy:e.message})},e.code)),c(`dl`,{class:`seams-review-fields`,children:[a&&c(`div`,{children:[c(`dt`,{children:c(x,{message:`To`})}),c(`dd`,{class:`seams-review-recipient`,children:c(G,{value:a,address:!0,label:T(n,`Copy recipient address ${a}`)})})]}),r&&c(`div`,{children:[c(`dt`,{children:c(x,{message:`Network`})}),c(`dd`,{children:[c(`span`,{class:`seams-review-network-dot`}),U(r)]})]}),r?.totals?.estimatedFee&&c(`div`,{children:[c(`dt`,{children:c(x,{message:`Estimated network fee`})}),c(`dd`,{children:[r.totals.estimatedFee,` `,r.totals.feeSymbol]})]})]}),t&&e.tree&&c(V,{initiallyOpen:e.detailsInitiallyOpen,label:T(n,i?.kind===`near.message`?`Message details`:`Transaction details`),children:c(Ut,{node:e.tree})}),r?.signerAccount&&c(`div`,{class:`seams-review-account`,children:[c(`span`,{class:`seams-review-avatar`,"aria-hidden":`true`,children:`S`}),c(`div`,{children:[c(x,{message:`Signing account`}),c(`small`,{children:c(G,{value:r.signerAccount,address:!0,label:T(n,`Copy signing account address ${r.signerAccount}`)})})]})]})]})}let Gt=0;var Kt=class extends o{static contextType=w;root=a();otpFormId=`seams-confirmation-email-${++Gt}`;reflowId=`seams-confirmation-content-surface-${Gt}`;getReflowElement=()=>this.root.current?.closest(`.modal-container-root, .seams-confirmation-drawer`)??null;setHeight=e=>{let t=this.getReflowElement();t?.id&&this.props.styles.setDynamicDeclarations(this.reflowId,`#${t.id}`,{[We]:`${e}px`})};reflow=Ke({reason:`confirm-body`,element:this.getReflowElement,setHeightCssPx:this.setHeight});copyAccount=e=>{let t=this.root.current;t&&E(t,e).catch(qt)};componentWillReceiveProps(){this.reflow.capture()}componentDidUpdate(e){e.styles!==this.props.styles&&e.styles.deleteDynamicRule(this.reflowId),this.reflow.commit()}componentWillUnmount(){this.reflow.dispose(),this.props.styles.deleteDynamicRule(this.reflowId)}render(){let e=this.props.model;switch(e.kind){case`registration`:return c(Dt,{...e.registration,root:this.root,styles:this.props.styles});case`transaction`:return this.renderTransaction(e);default:return Jt(e)}}renderTransaction(e){let t=this.props.variant===`drawer`?`seams-confirmation-content seams-confirmation-content--drawer`:`seams-confirmation-content`,n=e.prompt.kind===`email`&&e.transaction.decision.kind===`ready`?{kind:`form`,formId:this.otpFormId}:e.transaction.decision;return e.capture?c(`div`,{ref:this.root,class:t,children:c(`div`,{class:`seams-review-content seams-review-content--capture`,children:[this.props.variant!==`drawer`&&this.renderToolbar(e,n),c(Yt,{element:e.capture}),c(W,{})]})}):c(`div`,{ref:this.root,class:t,children:c(`div`,{class:`seams-review-content`,children:[this.props.variant!==`drawer`&&this.renderToolbar(e,n),e.review.model&&c(`div`,{class:`seams-review-eyebrow`,children:e.review.model.operations.length===1?c(x,{copy:e.review.model.operations[0].label.replace(/\s+using\s+[\d,.]+\s+gas$/i,``)}):c(x,{message:`Transaction`})}),c(`h2`,{class:`seams-review-title`,children:c(x,{copy:e.header.heading})}),c(Wt,{data:e.review}),c(`div`,{class:`seams-review-context`,children:[c(Tt,{model:e.body,onCopyAccount:this.copyAccount}),e.prompt.kind===`email`&&c(jt,{...e.prompt.email,formId:this.otpFormId})]}),c(Ct,{...e.transaction,tree:null,styles:this.props.styles,decision:n,cancelInHeader:!0,confirmIcon:e.prompt.kind===`passkey`?c(H,{kind:`fingerprint`}):void 0}),c(W,{})]})})}renderToolbar(e,t){return c(`div`,{class:`seams-review-toolbar`,children:[c(`div`,{class:`seams-review-origin`,children:[e.transaction.onBack&&c(`button`,{type:`button`,"aria-label":b(this.context,`Back to review`),title:b(this.context,`Back to review`),disabled:t.kind===`preparing`,onClick:e.transaction.onBack,children:c(H,{kind:`back`})}),c(nt,{}),e.header.website.kind===`ready`?e.header.website.text:c(ct,{label:b(this.context,`Loading website`)})]}),c(`button`,{type:`button`,"aria-label":T(this.context,e.transaction.cancelText),onClick:e.transaction.onCancel,children:c(H,{kind:`close`})})]})}};function qt(){}function Jt(e){throw Error(`Unexpected confirmation content: ${String(e)}`)}var Yt=class extends o{container=a();componentDidMount(){this.container.current?.append(this.props.element),this.props.element.querySelector(`button`)?.focus()}componentDidUpdate(e){e.element!==this.props.element&&this.container.current?.replaceChildren(this.props.element)}componentWillUnmount(){this.props.element.remove()}render(){return c(`div`,{ref:this.container,class:`seams-auth-method-capture`})}};function K(e){let{kind:t}=e.state;return t===`signing`||t===`broadcasting`||t===`submitted`}function Xt(e){return e.state.kind===`confirmed`||e.state.kind===`signed`}function Zt(e){if(e.subject===`message`)return e.state.kind===`signed`?3:0;let{state:t}=e;switch(t.kind){case`signing`:return 0;case`signed`:case`broadcasting`:return 1;case`submitted`:case`reverted`:return 2;case`confirmed`:return 3;case`failed`:case`unknown`:return t.hash?2:0;default:return q(t)}}function Qt(e){return e.subject===`message`?`Message signature`:`Transaction receipt`}function $t(e){if(e.subject===`message`)return tn(e.state);let{state:t}=e;switch(t.kind){case`signing`:return`Signing transaction`;case`signed`:return`Signature ready`;case`broadcasting`:return`Broadcasting transaction`;case`submitted`:return`Waiting for confirmation`;case`confirmed`:return`Transaction complete`;case`failed`:return`Transaction failed`;case`reverted`:return`Transaction reverted`;case`unknown`:return`Confirmation unavailable`;default:return q(t)}}function en(e){if(e.subject===`message`)return nn(e.state);let{state:t}=e;switch(t.kind){case`signing`:return`Preparing your signed transaction.`;case`signed`:return`Signature created, ready to broadcast.`;case`broadcasting`:return`Submitting your signed transaction to the network.`;case`submitted`:return`Submitted to the network. Waiting for the receipt.`;case`confirmed`:return`The network confirmed your transaction.`;case`failed`:case`reverted`:case`unknown`:return t.message;default:return q(t)}}function tn(e){switch(e.kind){case`signing`:return`Signing message`;case`signed`:return`Message signed`;case`failed`:return`Signature failed`;default:return q(e)}}function nn(e){switch(e.kind){case`signing`:return`Preparing your message signature.`;case`signed`:return`Signed off-chain. Nothing was sent to the network.`;case`failed`:return e.message;default:return q(e)}}function q(e){throw Error(`Unexpected transaction receipt state: ${String(e)}`)}const rn=`cubic-bezier(0.22, 1, 0.36, 1)`;let an=0;var on=class extends o{static contextType=w;explorerRow=a();explorerRowId=`seams-receipt-explorer-row-${++an}`;minimize=()=>{this.props.receipt.onView(`toast`)};expand=()=>{this.props.receipt.onView(`expanded`)};close=()=>{K(this.props.receipt)?this.minimize():this.props.receipt.onDismiss()};componentDidUpdate(e){let{receipt:t}=this.props;t.view===`expanded`&&e.receipt.view===`expanded`&&t.subject===`transaction`&&t.state.kind===`confirmed`&&e.receipt.state.kind!==`confirmed`&&this.revealExplorerLink()}componentWillUnmount(){this.releaseExplorerRow()}setExplorerRowHeight=e=>{let t=this.explorerRow.current;t&&S(t.ownerDocument).setDynamicDeclarations(this.explorerRowId,`#${this.explorerRowId}`,{"--seams-receipt-explorer-height":`${e}px`})};releaseExplorerRow=()=>{let e=this.explorerRow.current;e&&(delete e.dataset.opening,S(e.ownerDocument).deleteDynamicRule(this.explorerRowId))};revealExplorerLink(){let e=this.explorerRow.current,t=e?.firstElementChild;if(!e||!t||e.ownerDocument.defaultView?.matchMedia(`(prefers-reduced-motion: reduce)`).matches)return;let n=e.getBoundingClientRect().height;e.dataset.opening=``;let r=()=>{this.releaseExplorerRow(),t.animate([{opacity:0,filter:`blur(4px)`,transform:`translateY(6px)`},{opacity:1,filter:`blur(0)`,transform:`translateY(0)`}],{duration:240,easing:rn})};if(!L({reason:`receipt-explorer`,element:e,fromCssPx:0,toCssPx:n,drivenClasses:[`seams-receipt-explorer-driven`],setHeightCssPx:this.setExplorerRowHeight,onSettled:r})){let t=e.animate([{height:`0px`},{height:`${n}px`}],{duration:240,easing:rn});t.onfinish=r,t.oncancel=this.releaseExplorerRow}}render(){let{receipt:e,data:t}=this.props,n=$t(e),r=Xt(e),i=K(e),a=Zt(e),o=It(t.model),s=e.subject===`transaction`?e.state:null,u=s?.kind===`confirmed`&&s.hash?sn(t.model,this.props.explorers,s.hash):null;return e.view===`toast`?c(`div`,{class:`seams-transaction-toast`,"data-completed-stages":a,"data-stage":e.state.kind,"data-pending":i,children:[c(`div`,{class:`seams-toast-progress`,"aria-hidden":`true`,children:c(`span`,{class:`seams-toast-progress-fill`,children:i&&c(`span`,{class:`seams-toast-progress-active`})})}),c(`span`,{class:`seams-receipt-symbol`,"data-pending":i,children:c(H,{kind:i?`loader`:r?`check`:`alert`})}),c(`div`,{class:`seams-transaction-toast-text`,children:[c(`strong`,{role:`status`,children:c(x,{copy:n})}),c(`span`,{children:U(t.model)})]}),c(`button`,{type:`button`,class:`seams-receipt-open`,onClick:this.expand,children:[c(x,{message:`Open`}),` `,c(H,{kind:`arrow`})]}),!i&&c(`button`,{type:`button`,class:`seams-receipt-dismiss`,"aria-label":b(this.context,`Close transaction`),onClick:e.onDismiss,children:c(H,{kind:`close`})})]}):c(`div`,{class:`seams-transaction-receipt`,children:[c(`div`,{class:`seams-review-toolbar`,children:[c(`span`,{children:c(x,{copy:Qt(e)})}),c(`button`,{type:`button`,"aria-label":b(this.context,`Minimize transaction`),onClick:this.minimize,children:c(H,{kind:`minimize`})})]}),c(`div`,{class:`seams-receipt-heading`,children:[c(`span`,{class:`seams-receipt-symbol`,"data-pending":i,children:c(H,{kind:i?`loader`:r?`check`:`alert`})}),c(`div`,{children:[c(`h2`,{role:`status`,children:c(x,{copy:n})}),c(`p`,{children:c(x,{copy:en(e)})})]})]}),c(zt,{model:t.model,compact:!0}),c(`div`,{class:`seams-receipt-destination`,children:[o&&c(l,{children:[c(x,{message:`To`}),` `,c(G,{value:o,address:!0,label:T(this.context,`Copy recipient address ${o}`)})]}),!o&&U(t.model)]}),t.model?.totals?.estimatedFee&&c(`dl`,{class:`seams-review-fields`,children:c(`div`,{children:[c(`dt`,{children:c(x,{message:`Estimated network fee`})}),c(`dd`,{children:[t.model.totals.estimatedFee,` `,t.model.totals.feeSymbol]})]})}),s?c(ln,{state:s}):e.subject===`message`&&c(un,{state:e.state}),c(V,{label:b(this.context,`Receipt details`),children:c(`dl`,{class:`seams-review-fields`,children:[s&&t.model?.signerAccount&&c(`div`,{children:[c(`dt`,{children:c(x,{message:`From`})}),c(`dd`,{class:`seams-review-recipient`,children:c(G,{value:t.model.signerAccount,address:!0,label:T(this.context,`Copy signer address ${t.model.signerAccount}`)})})]}),o&&c(`div`,{children:[c(`dt`,{children:[c(x,{message:`To`}),` `]}),c(`dd`,{class:`seams-review-recipient`,children:c(G,{value:o,address:!0,label:T(this.context,`Copy recipient address ${o}`)})})]}),s?.hash&&c(`div`,{children:[c(`dt`,{children:c(x,{message:`Transaction`})}),c(`dd`,{children:[c(Lt,{value:s.hash,class:`seams-review-hash`}),c(G,{value:s.hash})]})]}),e.subject===`message`&&c(dn,{model:t.model}),c(`div`,{children:[c(`dt`,{children:c(x,{message:`Status`})}),c(`dd`,{children:c(x,{copy:n})})]})]})}),c(`button`,{type:`button`,class:`seams-receipt-primary`,onClick:this.close,children:i?c(x,{message:`Continue in background`}):c(x,{message:`Done`})}),u&&c(`div`,{id:this.explorerRowId,class:`seams-receipt-explorer-row`,ref:this.explorerRow,children:c(`a`,{class:`seams-receipt-explorer`,href:u,target:`_blank`,rel:`noopener noreferrer`,children:[c(x,{message:`View transaction`}),` `,c(H,{kind:`arrow`})]})}),c(W,{})]})}};function sn(e,t,n){if(!e)return null;let r;switch(e.chain){case`near`:r=t.near;break;case`evm`:r=t.evm;break;case`tempo`:r=t.tempo;break;case`unknown`:return null;default:return cn(e.chain)}if(!r)return null;let i=e.chain===`near`?`txns`:`tx`;return`${r.trim().replace(/\/$/,``)}/${i}/${encodeURIComponent(n)}`}function cn(e){throw Error(`Unexpected display chain: ${String(e)}`)}function ln({state:e}){let t=y(),n=Zt({subject:`transaction`,state:e});return c(`div`,{class:`seams-receipt-steps`,"aria-label":b(t,`Transaction progress`),children:[c(J,{stage:`signing`,label:b(t,`Signed`),activeLabel:`Signing`,complete:n>=1,active:e.kind===`signing`}),c(J,{stage:`broadcast`,label:b(t,`Broadcast`),activeLabel:`Broadcasting`,complete:n>=2,active:e.kind===`broadcasting`}),c(J,{stage:`confirming`,label:T(t,e.kind===`reverted`?`Reverted`:`Confirmed`),activeLabel:`Confirming`,complete:n===3,active:e.kind===`submitted`})]})}function un({state:e}){let t=y(),n=e.kind===`signed`,r=e.kind===`signing`;return c(`div`,{class:`seams-receipt-steps`,"aria-label":b(t,`Transaction progress`),children:[c(J,{stage:`signing`,label:b(t,`Signed`),activeLabel:`Signing`,complete:n,active:r}),c(J,{stage:`signed`,label:``,activeLabel:``,complete:n,active:!1}),c(J,{stage:`signed`,label:``,activeLabel:``,complete:n,active:!1})]})}function dn({model:e}){let t=y(),n=e?.operations.length===1?e.operations[0]:null;return n?.kind===`near.message`?c(l,{children:n.fields?.map(e=>c(`div`,{children:[c(`dt`,{children:c(x,{copy:e.label})}),e.renderAs===`file-content`?c(`dd`,{children:[c(`span`,{class:`seams-receipt-message`,children:e.value}),c(G,{value:e.copyValue??e.value})]}):c(`dd`,{class:`seams-review-recipient`,children:c(G,{value:e.copyValue??e.value,address:!0,label:T(t,`Copy ${e.label.toLowerCase()} address ${e.value}`)})})]},e.label))}):null}function J(e){let t=e.complete?`complete`:e.active?`active`:`waiting`;return c(`span`,{class:`seams-receipt-step`,"data-stage":e.stage,"data-state":t,"aria-current":e.active?`step`:void 0,children:[c(`span`,{class:`seams-receipt-track`,"aria-hidden":`true`}),c(x,{copy:e.active?e.activeLabel:e.label})]})}const fn=`cubic-bezier(0.22, 1, 0.36, 1)`,pn=[`.seams-receipt-symbol`,`[role="status"]`,`.seams-review-amount`,`.seams-receipt-footer`];function mn(e){let t=[];for(let n of pn){let r=e.querySelector(n);r&&t.push({selector:n,text:r.textContent,bounds:r.getBoundingClientRect(),fontSize:getComputedStyle(r).fontSize})}return t}function hn(e){let t=e.querySelector(`[data-seams-progress-line]`);if(!t)return[];let n=getComputedStyle(t).color,r=Array.from(t.querySelectorAll(`[data-seams-progress-segment]`));if(r.length===3&&r.every(_n))return r.map(e=>({bounds:e.getBoundingClientRect(),opacity:e.getAttribute(`opacity`)??`1`,color:n})).sort((e,t)=>e.bounds.left-t.bounds.left);let i=t.getBoundingClientRect(),a=i.width/3;return[0,1,2].map(e=>({bounds:new DOMRect(i.left+e*a,i.top+i.height/2,a,0),opacity:`0.55`,color:n}))}function gn(){}function _n(e){return e.getAttribute(`opacity`)!==`0`}let vn=0;var yn=class{element;styles;presentation;state;receipt=null;receiptMotion=[];receiptShell=null;receiptGhost=null;receiptSegments=[];clearReceiptMotion=()=>{for(let e of this.receiptMotion)e.cancel();this.receiptMotion=[],this.receiptShell?.remove(),this.receiptShell=null,this.receiptGhost?.remove(),this.receiptGhost=null;for(let e of this.receiptSegments)e.remove();this.receiptSegments=[],this.element.removeAttribute(`data-receipt-segments`),this.element.removeAttribute(`data-receipt-morphing`)};constructor(e){let t=e.parent.ownerDocument;this.styles=S(t),this.presentation={variant:e.presentation.variant,context:e.presentation.context},this.state={kind:`mounted`,model:e.model,onClosed:e.onClosed},this.element=t.createElement(`div`),this.element.id=`seams-confirmation-surface-${++vn}`,this.element.className=`seams-wallet-ui seams-confirmation-surface`,this.element.dataset.seamsConfirmSurface=e.presentation.context,this.element.dataset.seamsConfirmVariant=e.presentation.variant,this.element.addEventListener(`cancel`,this.cancel),e.parent.appendChild(this.element);try{this.update(e.model)}catch(e){throw this.remove(),e}}update(e){this.state.kind===`mounted`&&(this.state.model=e,this.element.dataset.confirmationKind=e.content.kind,this.element.dataset.seamsConfirmReady=String(e.content.kind===`transaction`&&e.content.transaction.decision.kind===`ready`),this.element.lang=e.appearance.locale??`en`,this.element.dataset.theme=e.appearance.theme.mode,this.styles.setDynamicRule(this.element.id,ee(this.element.id,e.appearance)),this.renderSurface())}close(){this.state.kind===`mounted`&&(this.state={kind:`closing`,model:this.state.model,onClosed:this.state.onClosed},this.presentation.variant===`modal`?this.dispose():this.renderSurface())}showReceipt(e){if(this.state.kind!==`mounted`||this.state.model.content.kind!==`transaction`)return;let t=this.receipt?.view!==e.view,n=this.receiptShell??this.element.querySelector(`.modal-container-root`),r=n?.getBoundingClientRect(),i=t?mn(this.element):[],a=t?this.liveCapture():null,o=n?getComputedStyle(n).borderRadius:`26px`;t&&this.clearReceiptMotion(),this.receipt=e,this.element.dataset.receiptView=e.view,this.element.dataset.seamsConfirmSurface=`wallet-iframe`,this.element.dataset.seamsConfirmVariant=`modal`,this.renderSurface();let s=this.element.querySelector(`.modal-container-root`);if(t&&r&&s&&!window.matchMedia(`(prefers-reduced-motion: reduce)`).matches){let t=s.getBoundingClientRect(),n=this.element.ownerDocument.createElement(`div`);n.className=`seams-receipt-morph-shell`,n.setAttribute(`aria-hidden`,`true`),this.element.appendChild(n),this.receiptShell=n,this.element.setAttribute(`data-receipt-morphing`,``),this.receiptMotion=[n.animate([{left:`${r.left}px`,top:`${r.top}px`,width:`${r.width}px`,height:`${r.height}px`,borderRadius:o},{left:`${t.left}px`,top:`${t.top}px`,width:`${t.width}px`,height:`${t.height}px`,borderRadius:getComputedStyle(s).borderRadius}],{duration:640,easing:fn,fill:`both`})];let c=a?this.handOverCapture(a,s):!1,l=new Set;for(let e of i){let t=s.querySelector(e.selector);if(!t||t.textContent!==e.text)continue;let n=t.getBoundingClientRect();l.add(t);let r=parseFloat(e.fontSize)/parseFloat(getComputedStyle(t).fontSize);this.receiptMotion.push(t.animate([{transform:`translate(${e.bounds.left-n.left}px, ${e.bounds.top-n.top}px) scale(${r})`,transformOrigin:`top left`},{transform:`translate(0, 0) scale(1)`,transformOrigin:`top left`}],{duration:640,easing:fn}))}let u=s.querySelectorAll(`.seams-transaction-receipt > :not(.seams-receipt-heading), .seams-receipt-heading > .seams-receipt-symbol, .seams-receipt-heading h2, .seams-receipt-heading p, .seams-transaction-toast > :not(.seams-transaction-toast-text, .seams-toast-progress), .seams-transaction-toast-text > *`),d=0;for(let t of u){if(l.has(t))continue;let n=a!==null&&t.matches(`.seams-review-toolbar`);this.receiptMotion.push(t.animate(n?[{opacity:0},{opacity:1}]:[{opacity:0,transform:`translateY(8px)`},{opacity:1,transform:`translateY(0)`}],a?{duration:360,delay:n?0:c&&t.matches(`.seams-receipt-steps`)?560:200+Math.min(d,6)*40,fill:`backwards`,easing:`cubic-bezier(0.2, 0, 0, 1)`}:{duration:120,delay:e.view===`toast`?240:180+Math.min(d,4)*15,fill:`backwards`,easing:`ease-out`})),n||(d+=1)}let f=this.receiptMotion;Promise.all(f.map(e=>e.finished)).then(()=>{this.receiptMotion===f&&this.clearReceiptMotion()},gn)}}liveCapture(){if(this.state.kind!==`mounted`||this.state.model.content.kind!==`transaction`)return null;let e=this.state.model.content.capture;return e?.isConnected?{element:e,bounds:e.getBoundingClientRect(),segments:hn(e)}:null}handOverCapture(e,t){let n=this.element.ownerDocument.createElement(`div`);n.className=`seams-receipt-capture-ghost`,n.setAttribute(`aria-hidden`,`true`),n.append(e.element),this.element.appendChild(n),this.receiptGhost=n;let r={left:`${e.bounds.left}px`,top:`${e.bounds.top}px`,width:`${e.bounds.width}px`,height:`${e.bounds.height}px`};this.receiptMotion.push(n.animate([{...r,opacity:1},{...r,opacity:0}],{duration:160,easing:`ease-out`,fill:`both`}));let i=t.querySelectorAll(`.seams-receipt-track`);if(e.segments.length===0||i.length!==e.segments.length)return!1;this.element.setAttribute(`data-receipt-segments`,``);for(let[t,n]of i.entries()){let r=e.segments[t],i=n.getBoundingClientRect(),a=n.closest(`.seams-receipt-step`)?.dataset.state===`complete`,o=this.element.ownerDocument.createElement(`div`);o.className=`seams-receipt-segment`,o.setAttribute(`aria-hidden`,`true`),this.element.appendChild(o),this.receiptSegments.push(o),this.receiptMotion.push(o.animate([{left:`${r.bounds.left}px`,top:`${r.bounds.top+r.bounds.height/2-.5}px`,width:`${r.bounds.width}px`,height:`1px`,borderRadius:`1px`,opacity:r.opacity,backgroundColor:r.color},{left:`${i.left}px`,top:`${i.top}px`,width:`${i.width}px`,height:`${i.height}px`,borderRadius:getComputedStyle(n).borderRadius,opacity:1,backgroundColor:getComputedStyle(n,a?`::after`:null).backgroundColor}],{duration:800,delay:120,easing:`cubic-bezier(0.65, 0, 0.35, 1)`,fill:`both`}))}return!0}dispose=()=>{if(this.state.kind===`disposed`)return;let e=this.state.onClosed;this.remove(),e()};remove(){this.clearReceiptMotion(),this.state={kind:`disposed`},this.element.removeEventListener(`cancel`,this.cancel),s(null,this.element),this.styles.deleteDynamicRule(this.element.id),this.element.remove()}cancel=()=>{if(this.state.kind!==`mounted`)return;if(this.receipt){K(this.receipt)?this.receipt.onView(`toast`):this.receipt.onDismiss();return}let e=this.state.model.content;e.kind===`registration`?e.registration.onCancel():e.transaction.onCancel()};confirm=()=>{if(this.state.kind!==`mounted`)return;let e=this.state.model.content,t=e.kind===`registration`?e.registration.decision:e.transaction.decision;t.kind===`ready`&&t.onConfirm()};submitOtp=(e,t)=>{if(this.state.kind!==`mounted`)return;let n=this.state.model.content;n.kind===`transaction`&&n.prompt.kind===`email`&&n.prompt.email.onSubmit(e,t)};renderSurface(){let e=this.state;if(e.kind===`disposed`)return;let t=e.model.content,n=this.contentModel(t,e.kind===`closing`),r=this.receipt&&t.kind===`transaction`?c(on,{receipt:this.receipt,data:t.review,explorers:t.transaction.explorers}):c(Kt,{model:n,styles:this.styles,variant:this.presentation.variant}),i=t.kind===`registration`?t.registration.heading:t.header.heading;if(this.receipt||this.presentation.variant===`modal`){s(C(e.model.appearance.locale??`en`,c(te,{context:this.receipt?`wallet-iframe`:this.presentation.context,label:i,onCancel:this.cancel,children:r})),this.element);return}let a=t.kind===`registration`?t.registration.decision:t.transaction.decision;s(C(e.model.appearance.locale??`en`,c(re,{context:this.presentation.context,label:i,origin:t.kind===`transaction`&&t.header.website.kind===`ready`?c(l,{children:[c(nt,{}),t.header.website.text]}):void 0,errorMessage:t.kind===`registration`?t.registration.errorMessage:t.transaction.errorMessage,styles:this.styles,state:e.kind===`closing`?{kind:`closing`,onClosed:this.dispose}:{kind:`open`,interaction:a.kind===`ready`?`ready`:`busy`},onCancel:this.cancel,children:r})),this.element)}contentModel(e,t){switch(e.kind){case`registration`:return{kind:`registration`,registration:{...e.registration,decision:!t&&e.registration.decision.kind===`ready`?{kind:`ready`,onConfirm:this.confirm}:{kind:`creating`},onCancel:this.cancel}};case`transaction`:return{kind:`transaction`,capture:e.capture,header:e.header,body:e.body,review:e.review,prompt:e.prompt.kind===`email`?{kind:`email`,email:{prompt:e.prompt.email.prompt,verification:t?{kind:`pending`}:e.prompt.email.verification,onSubmit:this.submitOtp}}:e.prompt,transaction:{...e.transaction,decision:!t&&e.transaction.decision.kind===`ready`?{kind:`ready`,onConfirm:this.confirm}:{kind:`preparing`},onCancel:this.cancel}};default:return bn(e)}}};function bn(e){throw Error(`Unexpected confirmation content: ${String(e)}`)}function xn(e){return new yn(e)}var Sn=class{element;surface;callbacks;appearance;presentation;tree;currentModel;constructor(e){this.callbacks=e.callbacks,this.appearance=e.appearance,this.presentation=e.presentation,this.tree=e.tree,this.currentModel=this.normalize(),this.surface=xn({parent:e.parent,presentation:{variant:e.variant,context:e.context},model:this.currentModel,onClosed:e.onClosed}),this.element=this.surface.element}update(e){this.presentation=Cn(this.presentation,e),e.appearance&&(this.appearance=e.appearance),Object.hasOwn(e,`model`)&&(this.tree=j({model:e.model})),this.currentModel=this.normalize(),this.surface.update(this.currentModel)}setTree(e){this.tree=e,this.currentModel=this.normalize(),this.surface.update(this.currentModel)}close(){this.surface.close()}showReceipt(e){this.surface.showReceipt(e)}dispose(){this.surface.dispose()}normalize(){let e=Fe({presentation:this.presentation,appearance:this.appearance,tree:this.tree,callbacks:this.callbacks});if(!e.ok)throw Error(`Cannot render confirmation surface: ${e.error}`);return e.model}};function Cn(e,t){return{model:Object.hasOwn(t,`model`)?t.model:e.model,securityContext:Object.hasOwn(t,`securityContext`)?t.securityContext:e.securityContext,loading:Object.hasOwn(t,`loading`)?t.loading:e.loading,preparing:Object.hasOwn(t,`preparing`)?t.preparing:e.preparing,title:Object.hasOwn(t,`title`)?t.title:e.title,body:Object.hasOwn(t,`body`)?t.body:e.body,authMethodCapture:Object.hasOwn(t,`authMethodCapture`)?t.authMethodCapture:e.authMethodCapture,authMethodApprovalMessage:Object.hasOwn(t,`authMethodApprovalMessage`)?t.authMethodApprovalMessage:e.authMethodApprovalMessage,errorMessage:Object.hasOwn(t,`errorMessage`)?t.errorMessage:e.errorMessage,confirmText:Object.hasOwn(t,`confirmText`)?t.confirmText:e.confirmText,cancelText:Object.hasOwn(t,`cancelText`)?t.cancelText:e.cancelText,onBack:Object.hasOwn(t,`onBack`)?t.onBack:e.onBack,signingAuthMode:Object.hasOwn(t,`signingAuthMode`)?t.signingAuthMode:e.signingAuthMode,emailOtpPrompt:Object.hasOwn(t,`emailOtpPrompt`)?t.emailOtpPrompt:e.emailOtpPrompt,nearExplorerUrl:Object.hasOwn(t,`nearExplorerUrl`)?t.nearExplorerUrl:e.nearExplorerUrl,tempoExplorerUrl:Object.hasOwn(t,`tempoExplorerUrl`)?t.tempoExplorerUrl:e.tempoExplorerUrl,evmExplorerUrl:Object.hasOwn(t,`evmExplorerUrl`)?t.evmExplorerUrl:e.evmExplorerUrl}}function wn(e){return new Sn(e)}var Tn=e({awaitConfirmUIDecision:()=>er,mountConfirmUI:()=>Yn,prepareConfirmUISurface:()=>$n});const Y=`seams-confirm-portal`;function En(e){return Math.max(0,Math.round(performance.now()-e))}const Dn=new WeakMap,On=new WeakMap,kn=new WeakMap,X=new WeakMap,An=new WeakMap,Z=new WeakMap;function jn(e){try{if(!ce()||typeof window>`u`||window.parent===window)return;window.parent?.postMessage({type:e},`*`)}catch{}}function Q(e){return e===`drawer`?`drawer`:`modal`}function Mn(e){return(e||[]).map(e=>({receiverId:e.receiverId,actions:(e.actions||[]).map(e=>f(e)?e:d(e)).map(e=>h(e))}))}async function Nn(e,t){if(!(!((t?.length||0)>0)||!e))try{return await g(Mn(t))===e?void 0:`INTENT_DIGEST_MISMATCH`}catch{return`UI_DIGEST_VALIDATION_FAILED`}}function Pn(e){e.childElementCount>0?e.classList.add(`seams-portal--visible`):e.classList.remove(`seams-portal--visible`)}function Fn(){let e=[];for(let t of document.querySelectorAll(`.seams-confirmation-surface`))t.parentElement?.closest(`.seams-confirmation-surface`)||e.push(t);return e}function In(){for(let e of Fn())An.get(e)?.callbacks.cancel(),X.get(e)?.dispose(),Z.delete(e),$(e),e.remove();let e=document.getElementById(Y);e&&Pn(e)}function Ln(){let e=document.getElementById(Y);if(!e){e=document.createElement(`div`),e.id=Y,e.classList.add(`seams-portal`);let t=document.body??document.documentElement;t&&t.appendChild(e)}return e}function Rn(e){X.delete(e),Z.delete(e),$(e),e.remove();let t=document.getElementById(Y);t&&Pn(t)}function zn(){(document.getElementById(Y)?.childElementCount??0)>0||jn(`WALLET_UI_CLOSED`)}function Bn(e,t){let r=t?.chain;if(r!==`near`&&r!==`tempo`&&r!==`evm`)return{};let i=n({chains:e.chains,family:r,chainId:t?.chainId});return i?r===`near`?{nearExplorerUrl:i}:r===`tempo`?{tempoExplorerUrl:i}:{evmExplorerUrl:i}:{}}function Vn(e,t){t&&(e.update(t),Object.hasOwn(t,`model`)&&Hn(e.element,e,t.model))}function Hn(e,t,n){let r=(Z.get(e)??0)+1;Z.set(e,r),!(!n||!Te(n))&&import(`./enrichDisplayModelWithAbi-CLn37drs.js`).then(i=>{if(Z.get(e)!==r||!e.isConnected||X.get(e)!==t)return;let a=i.enrichDisplayModelWithAbi(n);Z.get(e)===r&&t.setTree(j({model:a}))}).catch(e=>{console.warn(`[ConfirmUI] failed to lazy-load ABI display enrichment`,e)})}function $(e){Dn.get(e)?.disconnect(),Dn.delete(e),On.get(e)?.dispose(),On.delete(e),kn.delete(e)}function Un(e,t){switch(e.kind){case`disabled`:return null;case`wallet_iframe`:return i({kind:`request_surface`,element:t,requestId:e.requestId,postMeasurement:e.postMeasurement});default:{let t=e;throw Error(`Unhandled confirmation measurement binding: ${String(t)}`)}}}function Wn(e,t,n){e.setAttribute(Ue,nr(n,t)),e.setAttribute(`data-seams-confirm-variant`,t),e.toggleAttribute(`data-seams-review-frame`,!!r(n))}function Gn(e,t,n){if(r(n)?.attach(e),Wn(e,t,n),ie(kn.get(e),n))return;$(e),kn.set(e,n);let i=Un(n,e);i&&(Dn.set(e,i),On.set(e,tt(e)))}function Kn(e,t){t.kind===`review_available`&&e.returnToReview()}var qn=class{view=null;navigation={kind:`review_available`};queuedDecisions=[];decisionWaiters=[];phase=`pending`;cancelListeners=new Set;onBack;callbacks={confirm:this.confirm.bind(this),cancel:this.cancel.bind(this),submitEmail:this.submitEmail.bind(this)};constructor(e){this.admission=e,this.onBack=e?this.back.bind(this):void 0}attachView(e){this.view=e}publishDecision(e){if(this.phase===`published`)return;this.phase=`published`,this.navigation.kind=`decision_published`;let t=this.decisionWaiters.shift();if(t){t(e);return}this.queuedDecisions.push(e)}back(){this.phase===`checking`?this.cancel(`Voice approval was cancelled.`):this.admission&&Kn(this.admission,this.navigation)}cancel(e){if(this.phase!==`published`){this.publishDecision({kind:`cancelled`,error:e??null}),this.admission?.cancel(Error(e??`Wallet approval was cancelled.`));for(let t of this.cancelListeners)t({...e?{error:e}:{}})}}confirm(){this.approve({kind:`confirmed`,emailOtp:{kind:`absent`}})}submitEmail(e,t){let n=e.trim(),r=t.trim();if(!n||!r){this.cancel(`Email OTP challenge is missing.`);return}this.approve({kind:`confirmed`,emailOtp:{kind:`provided`,code:n,challengeId:r}})}async approve(e){if(!(this.phase!==`pending`||this.admission&&!this.admission.allowInteraction())){this.phase=`checking`;try{this.admission?.authMethodApprovalMessages&&this.view?.update({preparing:!0,authMethodCapture:this.admission.authMethodApprovalSurface});let t=await this.admission?.approveAuthMethod();if(t?.kind===`retry`){this.phase=`pending`,this.view?.update({preparing:!1,authMethodCapture:null,authMethodApprovalMessage:t.message});return}this.admission?.authMethodApprovalMessages&&this.view?.update({preparing:!1,authMethodApprovalMessage:this.admission.authMethodApprovalMessages.approved}),this.publishDecision(e)}catch(e){this.cancel(e instanceof Error?e.message:`Authentication method approval failed.`)}}}async takeDecision(){return this.queuedDecisions.shift()||(this.phase===`published`&&(this.phase=`pending`),await new Promise(this.waitForDecision))}waitForDecision=e=>{this.decisionWaiters.push(e)}};function Jn(e,t,n){let r=!1;return{element:e.element,close:i=>{r||(r=!0,i||t.callbacks.cancel(),t.cancelListeners.clear(),!(i&&n.kind===`wallet_iframe`&&v(n.requestId,e))&&($(e.element),e.close()))},update:t=>Vn(e,t),onCancel:e=>(t.cancelListeners.add(e),()=>t.cancelListeners.delete(e)),takeDecision:()=>t.takeDecision()}}async function Yn({ctx:e,summary:t,txSigningRequests:n,model:r,securityContext:i,loading:a,theme:o,appearance:s,uiMode:c,signingAuthMode:l,emailOtpPrompt:u}){return tr({ctx:e,summary:t,txSigningRequests:n,model:r,securityContext:i,loading:a,theme:o,appearance:s,variant:Q(c),signingAuthMode:l,emailOtpPrompt:u})}function Xn(e){let t=e.surface.handle,n=t.element;if(!n.isConnected)throw Error(`Cannot reuse a detached confirmation surface`);let r=X.get(n);if(!r)throw Error(`Cannot reuse an unmanaged confirmation surface`);Gn(n,e.variant,e.ctx.surfaceMeasurementBinding);let i=ae({getAppearance:e.ctx.getAppearance,requestedAppearance:e.appearance,requestedMode:e.theme}),a=Bn(e.ctx,e.model);return r.update({model:e.model,securityContext:e.securityContext,loading:e.loading??!1,appearance:i,title:e.summary.title??``,body:e.summary.body??``,signingAuthMode:e.signingAuthMode,emailOtpPrompt:e.emailOtpPrompt,errorMessage:``,...a}),r.setTree(j({txSigningRequests:e.txSigningRequests,model:e.model})),Hn(n,r,e.model),{handle:t,reused:!0}}function Zn(e){throw Error(`Unhandled confirmation surface: ${JSON.stringify(e)}`)}function Qn(e){switch(e.surface.kind){case`mount_new`:return{handle:tr({ctx:e.ctx,summary:e.summary,txSigningRequests:e.txSigningRequests,model:e.model,securityContext:e.securityContext,loading:e.loading,theme:e.theme,appearance:e.appearance,variant:e.variant,signingAuthMode:e.signingAuthMode,emailOtpPrompt:e.emailOtpPrompt}),reused:!1};case`reuse_mounted`:return Xn({...e,surface:e.surface});case`preparation_cancelled`:throw Error(`A cancelled preparation surface cannot be mounted`);default:return Zn(e.surface)}}async function $n(e){return Qn({ctx:e.ctx,summary:e.summary,txSigningRequests:e.txSigningRequests,model:e.model,securityContext:e.securityContext,loading:e.loading,theme:e.theme,appearance:e.appearance,variant:Q(e.uiMode),signingAuthMode:e.signingAuthMode,emailOtpPrompt:e.emailOtpPrompt,surface:e.surface}).handle}async function er({ctx:e,summary:t,txSigningRequests:n,model:r,securityContext:i,loading:a,theme:o,appearance:s,uiMode:c,onMounted:l,signingAuthMode:u,emailOtpPrompt:d,surface:f}){let p=Q(c);return new Promise(c=>{let m=performance.now(),{handle:h,reused:g}=Qn({ctx:e,summary:t,txSigningRequests:n,model:r,securityContext:i,loading:a,theme:o,appearance:s,variant:p,signingAuthMode:u,emailOtpPrompt:d,surface:f}),_=En(m),v=performance.now(),y=0,b=g?_:0,x=0,S=e=>e>0?e:En(v);Promise.resolve().then(()=>{y=S(y),g||(b=S(b))});try{l?.(h)}catch{}let C=e=>{let t={kind:`confirm_ui_prompt_diagnostics_v1`,elementDefineMs:0,mountMs:_,hostFirstUpdateMs:y,hostInteractiveMs:b,confirmEventMs:x,decisionWaitMs:En(v)};T(),c({...e,handle:h,diagnostics:t})},w=async e=>{if(x=S(x),e.kind===`cancelled`){let t=e.error||void 0;h.update({...t?{errorMessage:t}:{},loading:!1}),C({confirmed:!1,error:t});return}let i,a=await Nn(String(r?.intentDigest||t?.intentDigest||``).trim(),n);if(a&&(i=a),i){h.update({errorMessage:i,loading:!1}),C({confirmed:!1,error:i});return}C({confirmed:!0,...e.emailOtp.kind===`provided`?{otpCode:e.emailOtp.code,emailOtpChallengeId:e.emailOtp.challengeId}:{}})},T=()=>{y=Math.max(y,0)};(async()=>{let e=await h.takeDecision();u===`emailOtp`&&e.kind===`confirmed`&&e.emailOtp.kind===`absent`&&(h.update({loading:!1}),e=await h.takeDecision()),await w(e)})()})}function tr({ctx:e,summary:t,txSigningRequests:n,model:i,securityContext:a,loading:o,theme:s,appearance:c,variant:l,signingAuthMode:u,emailOtpPrompt:d}){r(e.surfaceMeasurementBinding)?.assertPending(),In();let f=ae({getAppearance:e.getAppearance,requestedAppearance:c,requestedMode:s}),p=Ln(),m=Bn(e,i),h=new qn(r(e.surfaceMeasurementBinding)),g;return g=wn({parent:p,variant:l,context:nr(e.surfaceMeasurementBinding,l),appearance:f,presentation:{onBack:h.onBack,model:i,securityContext:a,loading:o,title:t?.title??(t?.delegate?`Sign Delegate Action`:void 0),body:t?.body,confirmText:r(e.surfaceMeasurementBinding)?.authMethodApprovalMessages?.confirm,signingAuthMode:u,emailOtpPrompt:d,nearExplorerUrl:e.nearExplorerUrl??m.nearExplorerUrl,tempoExplorerUrl:e.tempoExplorerUrl??m.tempoExplorerUrl,evmExplorerUrl:e.evmExplorerUrl??m.evmExplorerUrl},tree:j({txSigningRequests:n,model:i}),callbacks:h.callbacks,onClosed:()=>{Rn(g.element),zn()}}),h.attachView(g),X.set(g.element,g),An.set(g.element,h),Pn(p),Gn(g.element,l,e.surfaceMeasurementBinding),Hn(g.element,g,i),p.classList.remove(`seams-portal--visible`),requestAnimationFrame(()=>{p.classList.add(`seams-portal--visible`)}),jn(`WALLET_UI_OPENED`),Jn(g,h,e.surfaceMeasurementBinding)}function nr(e,t){let n=e.kind===`wallet_iframe`?e.hostSurfaceVariant??t:t;return e.kind===`wallet_iframe`&&n===`modal`?`wallet-iframe`:`standalone`}export{nt as a,ce as c,$n as i,se as l,Tn as n,Oe as o,Yn as r,je as s,er as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
function e(e){try{return typeof e==`string`?e:e&&typeof e.message==`string`?e.message:String(e??``)}catch{return``}}function t(e){return`${e}B64u`}t(`seed`),t(`canonicalSeed`),t(`xClientBase`),t(`clientOutputMask`),t(`clientRecoverableSecret`),t(`prfFirst`),t(`prfSecond`),t(`signingShare32`),t(`clientNonceHandle`);function n(t){if(t instanceof Error)return t;let n=Error(e(t));try{let e=t;typeof e?.name==`string`&&(n.name=e.name),typeof e?.stack==`string`&&(n.stack=e.stack),e&&e.code!==void 0&&(n.code=e.code),e&&e.details!==void 0&&(n.details=e.details)}catch{}return n}function r(t){let n=e(t);if(i(t)||o(t))return!1;if(s(t))return!0;let r=n.toLowerCase();return n.includes(`The operation either timed out or was not allowed`)||n.includes(`NotAllowedError`)||n.includes(`AbortError`)||r.includes(`user cancelled`)||r.includes(`user canceled`)||r.includes(`user aborted`)||r.includes(`was cancelled`)||r.includes(`was canceled`)}function i(t){let n=e(t).toLowerCase();return n.includes(`relying party id`)||n.includes(`registrable domain suffix`)||n.includes(`claimed rp id`)||n.includes(`/.well-known/webauthn`)||n.includes(`.well-known/webauthn`)}const a=`Passkeys require trusted HTTPS for the app and wallet. Check both origins and their certificates.`;function o(t){let n=e(t);return n===a||n.toLowerCase().includes(`tls certificate errors`)}function s(t){if(i(t)||o(t))return!1;let n=e(t).toLowerCase(),r=t,a=String(r?.name||``).trim(),s=r?.code,c=String(s||``).trim().toLowerCase().replace(/[\s-]+/g,`_`);return s===4001||c===`4001`||c===`cancelled`||c===`canceled`||c===`abort_error`||c===`user_cancelled`||c===`user_canceled`||c===`user_rejected`||c===`action_rejected`||c===`request_rejected`||a===`NotAllowedError`||a===`AbortError`||n.includes(`user cancelled`)||n.includes(`user canceled`)||n.includes(`user rejected`)||n.includes(`request cancelled`)||n.includes(`request canceled`)||n.includes(`operation cancelled`)||n.includes(`operation canceled`)}function c(e){switch(e){case`registration`:return`Registration was cancelled. Please try again when you're ready to set up your passkey.`;case`login`:return`Login was cancelled. Please try again when you're ready to authenticate.`;default:return`Operation was cancelled. Please try again when you're ready.`}}function l(t,n=`registration`,s){let l=e(t);return o(t)?a:i(t)?`${n===`registration`?`Registration`:`Login`} failed because the configured WebAuthn RP ID is not valid for this app origin. Check VITE_RP_ID_BASE and the /.well-known/webauthn related-origin configuration for this environment.`:t&&typeof t==`object`&&`code`in t&&t.code===`production_paused`?`New sign-ups for this app are paused. The app owner must update its Seams billing.`:r(t)?c(n):l.includes(`PRF outputs missing`)?`${n===`registration`?`Registration`:`Login`} failed because your browser did not return the required passkey PRF results. On some mobile browsers this is not available for create(); try updating your browser or use a desktop browser. We’re working on an alternate path for broader device support.`:l.includes(`one of the credentials already registered`)?`A passkey for '${s||`this account`}' already exists. Please try logging in instead.`:l.includes(`Cannot deserialize the contract state`)?`Contract state deserialization failed. This may be due to a contract upgrade. Please try again or contact support.`:l.includes(`Web3Authn contract registration check failed`)?`Contract registration check failed: ${l.replace(`Web3Authn contract registration check failed: `,``)}`:l.includes(`Unknown error occurred`)?`${n===`registration`?`Registration`:`Login`} failed due to an unknown error. Please check your connection and try again.`:l}export{o as a,s as i,l as n,n as o,r,e as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{g as e,h as t}from"./digests-BIaE0DMd.js";import{n}from"./walletRegistrationSetupPrewarm-CEvGKQSg.js";import{t as r}from"./walletDbName-Ca0rCq5r.js";import{n as i,r as a,t as o}from"./configuration-DBEc3bsj.js";import{a as ee,i as s,n as c,o as te,r as ne,t as l}from"./transactionReview-CGIlI835.js";import{t as u}from"./events-D6l0_ugy.js";import{i as d,n as f,t as re}from"./transactionReviewAdmission-DPxuDgkU.js";import{_ as p,c as m,d as h,g,i as _,m as v,n as y,r as b,t as x,u as S}from"./sessionObservationRevision-DKTqqbGf.js";import{t as C}from"./walletIframeIdentity-CpgyEnKg.js";import{t as ie}from"./errors-DLUmUo9m.js";import{t as w}from"./signer-worker-CmCKlJ__.js";function T(){let e=globalThis;e.global===void 0&&(e.global=globalThis),!e.process||typeof e.process!=`object`?e.process={env:{}}:(!e.process.env||typeof e.process.env!=`object`)&&(e.process.env={})}function E(){T(),window.location.origin===`null`&&(window.parent?.postMessage({type:`SERVICE_HOST_DEBUG_ORIGIN`,origin:window.location.origin,href:window.location.href},`*`),console.warn(`[WalletHost] iframe is running with opaque (null) origin. Check COEP/CORP headers and ensure navigation succeeded.`)),D(),window.parent?.postMessage({type:`SERVICE_HOST_BOOTED`},`*`),window.parent?.postMessage({type:`SERVICE_HOST_DEBUG_ORIGIN`,origin:window.location.origin,href:window.location.href},`*`);let e=new URL(import.meta.url),t=e.searchParams.get(`v`);t&&g(t);let n=new URL(`.`,e).toString(),r=n.endsWith(`/`)?n:n+`/`;v()||p(r)}function D(){let e=()=>{let e=document;e.documentElement.classList.add(`seams-transparent`),e.body?.classList.add(`seams-transparent`),e.documentElement.classList.remove(`dark`),e.body?.classList.remove(`dark`)};document.readyState===`loading`?document.addEventListener(`DOMContentLoaded`,()=>e(),{once:!0}):e(),window.addEventListener(`load`,()=>e(),{once:!0})}const O={};let k=null,A=null;function ae(e){return e.request.type===`PM_ACKNOWLEDGE_WALLET_RECOVERY_CODE_BACKUP`?e.request.payload?.authorization?.kind===`email_otp`?j(e.kind):(k??=import(`./runtime-recovery-codes-DKjOU32G.js`),k):j(e.kind)}function oe(){j(`auth`).catch(se)}function se(){}function j(e){let t=O[e];if(t)return t;let n=M(e);return O[e]=n,n.catch(ce.bind(null,e,n)),n}function ce(e,t){O[e]===t&&delete O[e]}async function le(){k??=import(`./runtime-recovery-codes-DKjOU32G.js`),A??=Promise.all([k,import(`./mountRecoveryCodeBackupSurface-PutmFjf9.js`)]).then(()=>void 0),await A}function M(e){switch(e){case`auth`:return import(`./runtime-auth-C_Y8gL_n.js`);case`near`:return import(`./runtime-near-fas7U0MC.js`);case`ecdsa`:return import(`./runtime-ecdsa-tempo-BkUnzoX9.js`);case`email_otp`:return import(`./runtime-email-otp-CaxfpqKI.js`);case`recovery`:return import(`./runtime-recovery-DmY0ZJpf.js`);case`export`:return import(`./runtime-export-Du5ugbzi.js`);case`device_link`:return import(`./runtime-device-link-DtjR-htE.js`);case`preferences`:return import(`./runtime-preferences-7-f34-by.js`)}return N(e)}function N(e){throw Error(`Unhandled wallet host runtime route: ${String(e)}`)}function P(e){switch(e.type){case`PM_GET_RECENT_UNLOCKS`:case`PM_GET_CONFIRMATION_CONFIG`:return!0;case`PM_GET_EXACT_WALLET_SESSION_STATE`:{let t=e.request.payload;if(!t||typeof t!=`object`)return!1;let n=Reflect.get(t,`authenticationRead`),r=Reflect.get(t,`wallet`);return(n===`restore`||n===`current`)&&!!r&&typeof r==`object`&&Reflect.get(r,`kind`)===`current`}default:return!1}}function F(e){switch(e.type){case`PM_GET_EXACT_WALLET_SESSION_STATE`:return{revision:x(),walletId:null,state:{kind:`wallet_locked`},session:y()};case`PM_GET_RECENT_UNLOCKS`:return{walletIds:[],accountIds:[],accounts:[],lastUsedAccount:null};case`PM_GET_CONFIRMATION_CONFIG`:return{walletId:null,confirmationConfig:w,revision:0}}}let I=null;function L(){return I??=z().finally(R),I}function R(){I=null}async function z(){try{return typeof indexedDB>`u`||typeof indexedDB.databases!=`function`?!1:(await indexedDB.databases()).some(B)?await V():!0}catch{return!1}}function B(e){return e.name===r}function V(){return new Promise(e=>{let t=indexedDB.open(r);t.onupgradeneeded=()=>t.transaction?.abort(),t.onerror=()=>e(!1),t.onsuccess=()=>{let n=t.result;n.onversionchange=()=>n.close(),H(n).then(t=>{n.close(),e(t===0)},()=>{n.close(),e(!1)})}})}function H(e){let t=Array.from(e.objectStoreNames);return t.length===0?Promise.resolve(0):new Promise((n,r)=>{let i=e.transaction(t,`readonly`),a=0;for(let e of t){let t=i.objectStore(e).count();t.onsuccess=()=>{a+=t.result}}i.oncomplete=()=>n(a),i.onerror=()=>r(i.error),i.onabort=()=>r(i.error)})}function U(e){throw Error(`Unhandled wallet host route: ${String(e)}`)}function W(e,t){if(e===null)throw Error(`Invalid ${t} payload`);return e}function G(e){try{return C(e)}catch{throw Error(`Hosted auth-menu request requires a non-empty requestId`)}}function ue(e){switch(e.type){case`PM_ACTIVATE_TRANSACTION_REVIEW`:case`PING`:case`PM_PREPARE_WALLET_RUNTIME`:case`PM_SET_CONFIG`:case`PM_CANCEL`:case`PM_SET_TRANSACTION_VIEW`:case`PM_TRANSACTION_BROADCAST_STARTED`:return{kind:`boot`,type:e.type,request:e};case`PM_REGISTER_WALLET`:case`PM_ADD_WALLET_SIGNER`:case`PM_ADD_PASSKEY`:case`PM_ACTIVATE_AUTH_METHOD`:case`PM_GET_AUTH_METHOD_AVAILABILITY`:case`PM_SET_AUTH_METHOD_ENABLED`:case`PM_ADD_EMAIL_OTP`:case`PM_REVOKE_AUTH_METHOD`:case`PM_GET_NEAR_PROVISIONING_STATE`:case`PM_SIGN_TX_WITH_ACTIONS`:case`PM_SIGN_AND_SEND_TX`:case`PM_SEND_TRANSACTION`:case`PM_SIGN_DELEGATE_ACTION`:case`PM_SIGN_NEP413`:return{kind:`near`,type:e.type,request:e};case`PM_OPEN_AUTH_MENU`:{let t=G(e.requestId);return{kind:`auth`,type:e.type,request:{...e,requestId:t,payload:W(h(e.payload),`hosted auth-menu open`)}}}case`PM_CANCEL_AUTH_MENU`:{let t=G(e.requestId);return{kind:`auth`,type:e.type,request:{...e,requestId:t,payload:W(m(e.payload),`hosted auth-menu cancellation`)}}}case`PM_RESOLVE_AUTH_MENU_EXTERNAL_AUTH`:{let t=G(e.requestId);return{kind:`auth`,type:e.type,request:{...e,requestId:t,payload:W(S(e.payload),`hosted auth-menu external-auth resolution`)}}}case`PM_UNLOCK`:case`PM_UNLOCK_AUTH_METHOD`:case`PM_LOCK`:case`PM_LOCK_EXACT_WALLET_SESSION`:case`PM_GET_LAST_WALLET_MOVE_REQUEST`:case`PM_MOVE_WALLET`:case`PM_GET_WALLET_MOVE`:case`PM_GET_WALLET_PLACEMENT`:case`PM_GET_WALLET_SESSION`:case`PM_GET_EXACT_WALLET_SESSION_STATE`:case`PM_GET_RECENT_UNLOCKS`:return{kind:`auth`,type:e.type,request:e};case`PM_SIGN_TEMPO`:case`PM_REPORT_TEMPO_BROADCAST_ACCEPTED`:case`PM_REPORT_TEMPO_BROADCAST_REJECTED`:case`PM_REPORT_TEMPO_FINALIZED`:case`PM_REPORT_TEMPO_DROPPED_OR_REPLACED`:case`PM_RECONCILE_TEMPO_NONCE_LANE`:return{kind:`ecdsa`,type:e.type,request:e};case`PM_REDEEM_HOSTED_WALLET_SEAMS_SESSION`:case`PM_REQUEST_EMAIL_OTP_CHALLENGE`:case`PM_BEGIN_GOOGLE_EMAIL_OTP_WALLET_AUTH`:case`PM_GOOGLE_EMAIL_OTP_WALLET_AUTH_RESEND`:case`PM_GOOGLE_EMAIL_OTP_WALLET_AUTH_REROLL_WALLET_ID`:case`PM_GOOGLE_EMAIL_OTP_WALLET_AUTH_SUBMIT`:case`PM_GOOGLE_EMAIL_OTP_WALLET_AUTH_COMPLETE_REGISTRATION`:case`PM_GOOGLE_EMAIL_OTP_WALLET_AUTH_CANCEL`:case`PM_GET_WALLET_RECOVERY_CODE_STATUS`:case`PM_ACKNOWLEDGE_WALLET_RECOVERY_CODE_BACKUP`:case`PM_ROTATE_WALLET_RECOVERY_CODES`:case`PM_REQUEST_WALLET_CUSTODY_EMAIL_OTP_CHALLENGE`:return{kind:`email_otp`,type:e.type,request:e};case`PM_SYNC_ACCOUNT_FLOW`:return{kind:`recovery`,type:e.type,request:e};case`PM_RESOLVE_EXACT_KEY_EXPORT_LANE`:case`PM_EXPORT_KEYPAIR_UI`:return{kind:`export`,type:e.type,request:e};case`PM_HAS_PASSKEY`:case`PM_LIST_LINKED_DEVICES`:case`PM_REVOKE_LINKED_DEVICE`:case`PM_SCAN_AND_LINK_DEVICE`:case`PM_START_DEVICE2_LINKING_FLOW`:case`PM_DEVICE_LINK_TARGET_FACTOR_ACTION`:case`PM_DEVICE_LINK_EMAIL_OTP_BASE_FACTOR_ACTION`:case`PM_CANCEL_DEVICE_LINKING`:return{kind:`device_link`,type:e.type,request:e};case`PM_SET_CONFIRM_BEHAVIOR`:case`PM_SET_CONFIRMATION_CONFIG`:case`PM_GET_CONFIRMATION_CONFIG`:return{kind:`preferences`,type:e.type,request:e}}return U(e)}function K(e){return e.kind!==`boot`}let q=!1;const de=[{selector:`.seams-auth-menu-surface`,cancellationKind:`native_cancel`},{selector:`.seams-confirmation-surface`,cancellationKind:`native_cancel`},{selector:`.seams-auth-method-activation-surface`,cancellationKind:`native_cancel`},{selector:`.seams-export-surface`,cancellationKind:`wallet_iframe_cancel`},{selector:`[data-seams-wallet-recovery-backup-dialog]`,cancellationKind:`native_cancel`}];function J(e,t){let n=new Set(t),r=Object.keys(e);return r.length===t.length&&r.every(e=>n.has(e))}function fe(t){return!e(t)||!J(t,[`type`,`payload`])||t.type!==`CONNECT`||!e(t.payload)||!J(t.payload,[`protocolVersion`])?null:typeof t.payload.protocolVersion==`string`?{type:`CONNECT`,payload:{protocolVersion:t.payload.protocolVersion}}:null}function pe(e){if(e===`null`)return!0;try{let t=new URL(e);return(t.protocol===`https:`||t.protocol===`http:`)&&t.origin===e}catch{return!1}}function Y(e){try{e.close()}catch{}}function me(e,t){if(t===`17.0.0`)return!1;let n={expectedProtocolVersion:_,receivedProtocolVersion:t};try{e.postMessage({type:`ERROR`,payload:{code:b,message:`Wallet iframe protocol version mismatch: expected ${_}, received ${t??`missing`}`,details:n}})}catch{}return Y(e),!0}function X(e,t){return!t||t.has(e)}function Z(e,t,n,r){e.executionGeneration===t&&n(r)}function Q(e,t,n,r){return e.executionGeneration!==t||n(r)}function $(e={}){if(q)return;q=!0,E(),(!e.supportedRuntimeRouteKinds||e.supportedRuntimeRouteKinds.has(`email_otp`))&&le().catch(()=>void 0);let r=new Set,p=new Set,m=new Set,h=!1,g={parentOrigin:null,port:null,configuration:{kind:`unconfigured`},executionGeneration:0,onConfigurationChanged:null},v=e=>{try{g.port?.postMessage(e)}catch{}},y=e=>{e&&r.add(e)},b=e=>!!e&&(r.has(e)||d(e)?.cancelled===!0),x=e=>{e&&r.delete(e)},S=e=>{e&&v({type:`ERROR`,requestId:e,payload:{code:`cancelled`,message:`Request cancelled`}})},C=e=>!e||!b(e)?!1:d(e)?.cancelled?!0:(S(e),x(e),!0),w=()=>{for(let e of de){let t=document.querySelectorAll(e.selector);for(let n of t)try{e.cancellationKind===`native_cancel`?n.dispatchEvent(new Event(`cancel`,{cancelable:!0})):n.dispatchEvent(new CustomEvent(u.TX_CONFIRMER_CANCEL,{bubbles:!0,composed:!0}))}catch{}}},T=async r=>{let u=r.data;if(!u||!t(u))return;let _=u.requestId,T=typeof _==`string`&&u.type!==`PM_CANCEL`;if(T){if(m.has(_)){v({type:`ERROR`,requestId:_,payload:{code:`request_in_progress`,message:`Request identity is already active`}});return}m.add(_)}let E=g.executionGeneration,D=Z.bind(null,g,E,v),O=null;try{let t=u.type.startsWith(`PM_SIGN_`)?await(await import(`./runtimeContext-DF8MdfXl.js`)).walletAuthMethodReviewPolicy(g,u):{kind:`disabled`};if(g.executionGeneration!==E||b(_))return;if(`transactionReview`in u){if(u.type!==`PM_SIGN_AND_SEND_TX`&&u.type!==`PM_SIGN_TEMPO`)throw new l(`review_invalid_input`,`Review is unsupported for this request`);let e=s(u.transactionReview);if(e.requestId!==_)throw new l(`review_invalid_input`,`Review request identity mismatch`);let n=u.payload?.options?.confirmationConfig;if(n?.uiMode!==`modal`||n.behavior!==`requireClick`)throw new l(`review_unsupported_mode`,`Review requires modal presentation and explicit approval`);O=new re(e,u.type===`PM_SIGN_TEMPO`&&u.payload?.request.senderSignatureAlgorithm!==`secp256k1`?`credential`:`mpc`,e=>D({type:`TRANSACTION_REVIEW_STATE`,requestId:_,payload:e}),e=>D({type:`ERROR`,requestId:_,payload:{code:e instanceof l?e.code:`cancelled`,message:e.message}}),t)}(u.type===`PM_LOCK`||u.type===`PM_LOCK_EXACT_WALLET_SESSION`)&&f(new l(`review_identity_changed`,`The wallet session changed`));let r=ue(u);if(!K(r))switch(r.type){case`PING`:v({type:`PONG`,requestId:_});return;case`PM_PREPARE_WALLET_RUNTIME`:X(`auth`,e.supportedRuntimeRouteKinds)&&oe(),v({type:`PONG`,requestId:_});return;case`PM_SET_CONFIG`:{let e=o(g.configuration,i(r.request.payload)),t=a(g.configuration.kind===`configured`?g.configuration.config:null)!==a(e.config);if(g.configuration=e,t){g.executionGeneration+=1;let t=e.config;t.registration.publishableKey&&t.registration.projectEnvironmentId&&n(t.network.relayer.url);for(let e of p)v({type:`ERROR`,requestId:e,payload:{code:`wallet_configuration_changed`,message:`Wallet configuration changed during request`}});p.clear()}g.onConfigurationChanged?.(),t&&(f(new l(`review_identity_changed`,`Wallet execution configuration changed`)),w()),v({type:`PONG`,requestId:_});return}case`PM_ACTIVATE_TRANSACTION_REVIEW`:{let e=ne(r.request.payload);e&&d(e.requestId)?.activate(e);return}case`PM_CANCEL`:{let e=r.request.payload?.requestId,t=r.request.payload,n=t&&typeof t==`object`?Reflect.get(t,`transactionReview`):void 0;if(n!==void 0){let r=s(n),i=d(r.requestId);if(r.requestId===e&&i&&ee(r,i.metadata)){let e=new l(te(t&&typeof t==`object`?Reflect.get(t,`reviewErrorCode`):void 0),`Reviewed request cancelled`);try{c(i.metadata.validity)}catch(t){t instanceof Error&&(e=t)}i.cancel(e)}v({type:`PONG`,requestId:_});return}let i=e?d(e):void 0;if(i){i.cancel(new l(`cancelled`,`Request cancelled`)),v({type:`PONG`,requestId:_});return}y(e),(await import(`./deviceLinkApproval-DAZTjrud.js`).then(e=>e.i)).cancelDeviceLinkApproval(typeof e==`string`?{kind:`request`,requestId:e}:{kind:`all`}),w(),e&&S(e),v({type:`PONG`,requestId:_});return}case`PM_SET_TRANSACTION_VIEW`:{let e=r.request.payload,t=e&&typeof e==`object`?Reflect.get(e,`requestId`):null,n=e&&typeof e==`object`?Reflect.get(e,`view`):null;typeof t==`string`&&(n===`toast`||n===`closed`)&&(await import(`./transaction-activity-olcDRay5.js`).then(e=>e.o)).setTransactionActivityView(t,n);return}case`PM_TRANSACTION_BROADCAST_STARTED`:{let e=r.request.payload,t=e&&typeof e==`object`?Reflect.get(e,`signedTransaction`):null;typeof t==`string`&&(await import(`./transaction-activity-olcDRay5.js`).then(e=>e.o)).transactionBroadcastStarted(t);return}}if(!X(r.kind,e.supportedRuntimeRouteKinds)){v({type:`ERROR`,requestId:_,payload:{code:`unsupported_request`,message:`Unsupported wallet iframe request type: ${r.type}`}});return}if(_&&p.add(_),!h&&P(r)&&await L()&&!h){if(E!==g.executionGeneration||C(_))return;D({type:`PM_RESULT`,requestId:_,payload:{ok:!0,result:F(r)}});return}h=!0;let m=await ae(r);if(E!==g.executionGeneration)return;await m.handleWalletHostRuntimeRequest({transactionReview:O,state:g,executionGeneration:E,req:r.request,post:Z.bind(null,g,E,v),isCancelled:Q.bind(null,g,E,b),respondIfCancelled:Q.bind(null,g,E,C)})}catch(e){if(E!==g.executionGeneration&&u.type!==`PM_SET_CONFIG`||O?.cancelled)return;let t=await import(`./canonicalSignerErrorCode-BHDPNkvJ.js`);if(E!==g.executionGeneration&&u.type!==`PM_SET_CONFIG`)return;let n=e&&typeof e==`object`&&`code`in e?e.code:void 0,r=ie(e),i=t.resolveWalletBoundaryErrorCode({requestType:u.type,rawCode:n,message:r,defaultCode:`HOST_ERROR`}),a=t.resolveWalletBoundaryErrorMessage({requestType:u.type,rawCode:n,code:i,message:r}),o=t.resolveWalletBoundarySignerKind(u.type);v({type:`ERROR`,requestId:_,payload:{code:i,message:a,...t.isWalletSignerBoundaryRequestType(u.type)&&t.isCanonicalSignerSessionBoundaryCode(i)&&o?{signerKind:o}:{}}})}finally{T&&(m.delete(_),p.delete(_),x(_)),O?.finish()}};window.addEventListener(`message`,e=>{let t=fe(e.data),n=e.ports[0];if(!(!t||!n||g.port)){if(e.source!==window.parent||!pe(e.origin)){Y(n);return}if(!me(n,t.payload.protocolVersion)){typeof e.origin==`string`&&e.origin.length&&e.origin!==`null`&&(g.parentOrigin=e.origin),g.port=n;try{g.port.onmessage=T,g.port.start?.()}catch{}v({type:`READY`,payload:{protocolVersion:_}})}}})}try{$()}catch(e){console.error(`[WalletHost] init failed`,e)}export{$ as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{A as e,E as t,M as n,N as r,O as i,S as a,d as o,f as s,k as c,l,u as ee,x as te,y as ne}from"./domainIds-t1lp25yU.js";import{S as u,b as d,g as re,i as ie,r as ae,t as f}from"./digests-BIaE0DMd.js";import{i as oe}from"./base64-BmKR3UqU.js";import{n as se}from"./secureRandomId-8LSc91aN.js";import{A as ce,D as p,E as m,J as h,M as le,N as g,O as ue,k as de}from"./activeWalletSession-BJ4B-nJo.js";import{a as _,n as fe}from"./presignatures-CjcyX_-F.js";import{kt as pe}from"./digestEncoding-n8Kr2kow.js";import{i as me,n as he,t as v}from"./registrationAuthMethodInput-Be4Td0Ef.js";import{a as ge}from"./signerSlot-DgLzb3Ee.js";import{a as _e}from"./registrationSignerPlan-_8gsSjC0.js";function ve(e){return typeof e==`string`&&/^wreg_[A-Za-z0-9_-]{43}$/u.test(e)?e:null}function ye(){return`wreg_${se(32)}`}const y=`wallet_registration_setup:`;function b(e,t){return`${y}${e}:${t}`}function x(e){if(!re(e)||!re(e.value))throw Error(`Registration setup journal is invalid`);let t=e.value,n=d(t.scopeDigest,`Registration setup scope digest`),r=d(t.requestDigest,`Registration setup request digest`),i=ve(t.operationId);if(!i||!/^[a-f0-9]{64}$/u.test(n)||!/^[a-f0-9]{64}$/u.test(r)||e.key!==b(n,r))throw Error(`Registration setup journal scope is invalid`);if(t.state===`pending`&&!(`walletId`in t)&&!(`registrationCeremonyId`in t))return{state:`pending`,operationId:i,scopeDigest:n,requestDigest:r};if(t.state===`accepted`){let e=c(t.walletId);if(e.ok)return{state:`accepted`,operationId:i,scopeDigest:n,requestDigest:r,walletId:e.value,registrationCeremonyId:d(t.registrationCeremonyId,`Registration setup ceremony`)}}throw Error(`Registration setup journal state is invalid`)}async function be(e){return ie(f({relayerUrl:e.relayerUrl.replace(/\/+$/u,``),publishableKey:e.publishableKey,environmentId:e.environmentId}))}function xe(){}var S=class{constructor(e){this.manager=e}async begin(e,t){let n=await ie(f(t)),r=b(e,n),i={state:`pending`,operationId:ye(),scopeDigest:e,requestDigest:n},a=(await this.manager.getDB()).transaction(_.appState,`readwrite`),o=await a.store.get(r),s=o===void 0?i:x(o);return o===void 0&&await a.store.put({key:r,value:s}),await a.done,s}async accept(e,t){let n=b(e.scopeDigest,e.requestDigest),r=(await this.manager.getDB()).transaction(_.appState,`readwrite`),i=x(await r.store.get(n));if(i.operationId!==e.operationId||i.state===`accepted`&&(i.walletId!==t.walletId||i.registrationCeremonyId!==t.registrationCeremonyId))throw r.abort(),await r.done.catch(xe),Error(`Registration setup response changed its operation, wallet or ceremony`);let a={state:`accepted`,operationId:i.operationId,scopeDigest:i.scopeDigest,requestDigest:i.requestDigest,walletId:t.walletId,registrationCeremonyId:t.registrationCeremonyId};await r.store.put({key:n,value:a}),await r.done}async complete(e){let t=(await this.manager.getDB()).transaction(_.appState,`readwrite`),n=(await t.store.getAll(IDBKeyRange.bound(y,`${y}\uffff`))).map(x);for(let r of n)r.state===`accepted`&&r.walletId===e.walletId&&r.registrationCeremonyId===e.registrationCeremonyId&&await t.store.delete(b(r.scopeDigest,r.requestDigest));await t.done}};const Se=new S(fe),C=`wallet_seed_parallel_hkdf_sha256_v1`;function Ce(e){return e.kind===`wallet_custody_seed_v1`}function w(){return{kind:`wallet_custody_seed_v1`,derivationScheme:C}}function T(e){return{kind:`ed25519_yao_client_root_v1`,linkSessionId:e.linkSessionId,walletKeyId:e.walletKeyId,targetFactor:e.targetFactor,applicationBindingDigestB64u:e.applicationBindingDigestB64u,registeredPublicKeyB64u:e.registeredPublicKeyB64u,enrollmentId:e.enrollmentId,deviceId:e.deviceId,revocationEpoch:e.revocationEpoch}}function we(e){return{kind:`ed25519_lane_holder_share_v1`,walletKeyId:e.walletKeyId,laneId:e.laneId,laneShareEpoch:e.laneShareEpoch,nearEd25519SigningKeyId:e.nearEd25519SigningKeyId,registeredPublicKeyB64u:e.registeredPublicKeyB64u,participantBindingDigestB64u:e.participantBindingDigestB64u}}function Te(e){return{kind:`ecdsa_lane_holder_share_v1`,walletKeyId:e.walletKeyId,laneId:e.laneId,laneShareEpoch:e.laneShareEpoch,evmFamilySigningKeySlotId:e.evmFamilySigningKeySlotId,thresholdSessionId:e.thresholdSessionId,thresholdPublicKey33B64u:e.thresholdPublicKey33B64u}}const E=[`kind`,`walletKeyId`,`laneId`,`laneShareEpoch`],D={wallet_custody_seed_v1:[`kind`,`derivationScheme`],ed25519_yao_client_root_v1:[`kind`,`linkSessionId`,`walletKeyId`,`targetFactor`,`applicationBindingDigestB64u`,`registeredPublicKeyB64u`,`enrollmentId`,`deviceId`,`revocationEpoch`],ed25519_lane_holder_share_v1:[...E,`nearEd25519SigningKeyId`,`registeredPublicKeyB64u`,`participantBindingDigestB64u`],ecdsa_lane_holder_share_v1:[...E,`evmFamilySigningKeySlotId`,`thresholdSessionId`,`thresholdPublicKey33B64u`]},Ee=Array.from(new Set(Object.values(D).flat()));function De(e,t){if(e===`wallet_custody_seed_v1`||e===`ed25519_yao_client_root_v1`||e===`ed25519_lane_holder_share_v1`||e===`ecdsa_lane_holder_share_v1`)return e;throw Error(`${t}.kind must be a known passkey custody secret kind`)}function Oe(e,t){if(typeof e!=`number`||!Number.isSafeInteger(e)||e<0)throw Error(`${t} must be a non-negative safe integer`);return e}function ke(e,t){let n=u(e,t);if(h(n,[`kind`],t),n.kind===`passkey_prf`||n.kind===`email_otp`)return{kind:n.kind};throw Error(`${t}.kind must be passkey_prf or email_otp`)}function O(t,n){let r=e(t.walletKeyId);if(!r.ok)throw Error(`${n}.walletKeyId ${r.error.message}`);let i=te(t.laneId);if(!i.ok)throw Error(`${n}.laneId ${i.error.message}`);let a=l(t.laneShareEpoch);if(!a.ok)throw Error(`${n}.laneShareEpoch ${a.error.message}`);return{walletKeyId:r.value,laneId:i.value,laneShareEpoch:a.value}}function Ae(e,t){let n=a(e);if(!n.ok)throw Error(`${t} ${n.error.message}`);return n.value}function je(t,n=`passkeyCustodySecretBinding`){let r=u(t,n),i=De(r.kind,n);switch(h(r,D[i],n,Ee),i){case`wallet_custody_seed_v1`:if(r.derivationScheme!==C)throw Error(`${n}.derivationScheme must be ${C}`);return w();case`ed25519_yao_client_root_v1`:{let t=ee(r.linkSessionId);if(!t.ok)throw Error(`${n}.linkSessionId ${t.error.message}`);let i=e(r.walletKeyId);if(!i.ok)throw Error(`${n}.walletKeyId ${i.error.message}`);let a=o(r.enrollmentId);if(!a.ok)throw Error(`${n}.enrollmentId ${a.error.message}`);let c=s(r.deviceId);if(!c.ok)throw Error(`${n}.deviceId ${c.error.message}`);return T({linkSessionId:t.value,walletKeyId:i.value,targetFactor:ke(r.targetFactor,`${n}.targetFactor`),applicationBindingDigestB64u:m(r.applicationBindingDigestB64u,`${n}.applicationBindingDigestB64u`),registeredPublicKeyB64u:p(r.registeredPublicKeyB64u,`${n}.registeredPublicKeyB64u`),enrollmentId:a.value,deviceId:c.value,revocationEpoch:Oe(r.revocationEpoch,`${n}.revocationEpoch`)})}case`ed25519_lane_holder_share_v1`:{let e=O(r,n);return we({walletKeyId:e.walletKeyId,laneId:e.laneId,laneShareEpoch:e.laneShareEpoch,nearEd25519SigningKeyId:ge(r.nearEd25519SigningKeyId),registeredPublicKeyB64u:p(r.registeredPublicKeyB64u,`${n}.registeredPublicKeyB64u`),participantBindingDigestB64u:m(r.participantBindingDigestB64u,`${n}.participantBindingDigestB64u`)})}case`ecdsa_lane_holder_share_v1`:{let e=O(r,n);return Te({walletKeyId:e.walletKeyId,laneId:e.laneId,laneShareEpoch:e.laneShareEpoch,evmFamilySigningKeySlotId:pe(r.evmFamilySigningKeySlotId,`${n}.evmFamilySigningKeySlotId`),thresholdSessionId:Ae(r.thresholdSessionId,`${n}.thresholdSessionId`),thresholdPublicKey33B64u:le(r.thresholdPublicKey33B64u,`${n}.thresholdPublicKey33B64u`)})}}}const k=`wallet_custody_envelope_v2`,A=`passkey_prf_kek_hkdf_sha256_v1`,j=`email_otp_factor_kek_hkdf_sha256_v1`,M=`voiceid_device_factor_kek_hkdf_sha256_v1`;function Me(e){return e.ownership.kind===`method_bound`&&e.binding.kind===`wallet_custody_seed_v1`&&e.lifecycle.state===`active`}function Ne(e){return Me(e)&&e.factor.kind===`voiceid`}const Pe=[`kind`,`walletAuthMethodId`];function Fe(e,n){if(typeof e!=`object`||!e||Array.isArray(e))throw Error(`${n} must be an object`);let r=e;switch(h(r,Pe,n),r.kind){case`unbound`:if(r.walletAuthMethodId!==void 0)throw Error(`${n}.walletAuthMethodId belongs to the method_bound branch`);return{kind:`unbound`};case`method_bound`:{let e=t(r.walletAuthMethodId);if(!e.ok)throw Error(`${n}.walletAuthMethodId ${e.error.message}`);return{kind:`method_bound`,walletAuthMethodId:e.value}}default:throw Error(`${n}.kind must be unbound or method_bound`)}}function Ie(e){return JSON.stringify({walletId:e.walletId,envelopeId:e.envelopeId,factor:e.factor,envelopeRevision:e.envelopeRevision,binding:e.binding,ownership:N(e.ownership)})}function Le(e,n){if(e===`unbound`)return{kind:`unbound`};if(typeof e!=`object`||!e||Array.isArray(e))throw Error(`${n} must be "unbound" or a methodBound object`);let r=e;h(r,[`methodBound`],n);let i=r.methodBound;if(typeof i!=`object`||!i||Array.isArray(i))throw Error(`${n}.methodBound must be an object`);let a=i;h(a,[`walletAuthMethodId`],`${n}.methodBound`);let o=t(a.walletAuthMethodId);if(!o.ok)throw Error(`${n}.methodBound.walletAuthMethodId ${o.error.message}`);return{kind:`method_bound`,walletAuthMethodId:o.value}}function N(e){switch(e.kind){case`unbound`:return`unbound`;case`method_bound`:return{methodBound:{walletAuthMethodId:String(e.walletAuthMethodId)}};default:throw Error(`Unhandled custody envelope ownership: ${String(e)}`)}}function Re(e){return{kind:`method_bound`,walletAuthMethodId:e}}function P(e){return{kind:`passkey`,rpId:e.rpId,credentialIdB64u:e.credentialIdB64u,kekVersion:A}}function F(e){return{kind:`email_otp`,enrollmentId:e.enrollmentId,enrollmentSealKeyVersion:e.enrollmentSealKeyVersion,kekVersion:j}}function I(e){return{kind:`voiceid`,deviceKeyId:e.deviceKeyId,kekVersion:M}}function L(e){return{state:`active`,activatedAtMs:e.activatedAtMs}}function ze(e){return{state:`retired`,activatedAtMs:e.activatedAtMs,retiredAtMs:e.retiredAtMs}}function Be(e){return{state:`revoked`,activatedAtMs:e.activatedAtMs,revokedAtMs:e.revokedAtMs}}function Ve(e){return{kind:`wallet_custody_envelope_v2`,envelopeId:e.envelopeId,walletId:e.walletId,ownership:e.ownership,binding:e.binding,factor:e.factor,envelopeVersion:k,envelopeRevision:e.envelopeRevision,nonceB64u:e.nonceB64u,sealedCustodySecretB64u:e.sealedCustodySecretB64u,ciphertextDigestB64u:e.ciphertextDigestB64u,aadHashB64u:e.aadHashB64u,lifecycle:e.lifecycle,createdAtMs:e.createdAtMs,updatedAtMs:e.updatedAtMs}}const He=[`state`,`activatedAtMs`,`retiredAtMs`,`revokedAtMs`];function Ue(e,t=`lifecycle`){let n=u(e,t);h(n,He,t);let r=g(n.activatedAtMs,`${t}.activatedAtMs`);switch(n.state){case`active`:if(n.retiredAtMs!==void 0||n.revokedAtMs!==void 0)throw Error(`${t} cannot be active and carry a retired or revoked timestamp`);return L({activatedAtMs:r});case`retired`:{if(n.revokedAtMs!==void 0)throw Error(`${t} cannot be retired and carry a revoked timestamp`);let e=g(n.retiredAtMs,`${t}.retiredAtMs`);if(e<r)throw Error(`${t}.retiredAtMs cannot precede activation`);return ze({activatedAtMs:r,retiredAtMs:e})}case`revoked`:{if(n.retiredAtMs!==void 0)throw Error(`${t} cannot be revoked and carry a retired timestamp`);let e=g(n.revokedAtMs,`${t}.revokedAtMs`);if(e<r)throw Error(`${t}.revokedAtMs cannot precede activation`);return Be({activatedAtMs:r,revokedAtMs:e})}default:throw Error(`${t}.state must be active, retired, or revoked`)}}const We=[`kind`,`rpId`,`credentialIdB64u`,`kekVersion`],Ge=[`kind`,`enrollmentId`,`enrollmentSealKeyVersion`,`kekVersion`],Ke=[`kind`,`deviceKeyId`,`kekVersion`],R=Array.from(new Set([...We,...Ge,...Ke]));function qe(e,t){if(typeof e!=`string`||!e.trim())throw Error(`${t} is required`);return e}function Je(e,t=`factor`){let i=u(e,t);switch(i.kind){case`passkey`:{if(h(i,We,t,R),i.kekVersion!==A)throw Error(`${t}.kekVersion must be ${A}`);let e=r(i.rpId);if(!e.ok)throw Error(`${t}.rpId ${e.error.message}`);let a=n(i.credentialIdB64u);if(!a.ok)throw Error(`${t}.credentialIdB64u ${a.error.message}`);return P({rpId:e.value,credentialIdB64u:a.value})}case`email_otp`:if(h(i,Ge,t,R),i.kekVersion!==j)throw Error(`${t}.kekVersion must be ${j}`);return F({enrollmentId:qe(i.enrollmentId,`${t}.enrollmentId`),enrollmentSealKeyVersion:qe(i.enrollmentSealKeyVersion,`${t}.enrollmentSealKeyVersion`)});case`voiceid`:if(h(i,Ke,t,R),i.kekVersion!==M)throw Error(`${t}.kekVersion must be ${M}`);return I({deviceKeyId:m(i.deviceKeyId,`${t}.deviceKeyId`)});default:throw Error(`${t}.kind must be passkey, email_otp, or voiceid`)}}const Ye=[`kind`,`envelopeId`,`walletId`,`ownership`,`binding`,`factor`,`envelopeVersion`,`envelopeRevision`,`nonceB64u`,`sealedCustodySecretB64u`,`ciphertextDigestB64u`,`aadHashB64u`,`lifecycle`,`createdAtMs`,`updatedAtMs`];function Xe(e,t=`walletCustodyEnvelope`){let n=u(e,t);if(n.kind!==`wallet_custody_envelope_v2`)throw Error(`${t}.kind must be ${k}`);if(h(n,Ye,t),n.envelopeVersion!==`wallet_custody_envelope_v2`)throw Error(`${t}.envelopeVersion must be ${k}`);let r=ne(n.envelopeId);if(!r.ok)throw Error(`${t}.envelopeId ${r.error.message}`);let i=c(n.walletId);if(!i.ok)throw Error(`${t}.walletId ${i.error.message}`);let a=Fe(n.ownership,`${t}.ownership`),o=g(n.createdAtMs,`${t}.createdAtMs`),s=g(n.updatedAtMs,`${t}.updatedAtMs`);if(s<o)throw Error(`${t}.updatedAtMs cannot precede createdAtMs`);return Ve({envelopeId:r.value,walletId:i.value,ownership:a,binding:je(n.binding,`${t}.binding`),factor:Je(n.factor,`${t}.factor`),envelopeRevision:ce(n.envelopeRevision,`${t}.envelopeRevision`),nonceB64u:de(n.nonceB64u,`${t}.nonceB64u`),sealedCustodySecretB64u:ue(n.sealedCustodySecretB64u,`${t}.sealedCustodySecretB64u`),ciphertextDigestB64u:m(n.ciphertextDigestB64u,`${t}.ciphertextDigestB64u`),aadHashB64u:m(n.aadHashB64u,`${t}.aadHashB64u`),lifecycle:Ue(n.lifecycle,`${t}.lifecycle`),createdAtMs:o,updatedAtMs:s})}function Ze(e,t){return e.kind===t.kind?e.kind===`unbound`?!0:t.kind===`method_bound`&&String(e.walletAuthMethodId)===String(t.walletAuthMethodId):!1}function Qe(e){if(!e.establishedCustody)throw Error(`only a custody-establishing commit issues recovery codes`);return{...e,recoveryBackupAcknowledged:!0}}function $e(e,t){if(typeof e!=`object`||!e||Array.isArray(e))throw Error(`${t} walletCustody must be an object`);let n=e;switch(n.status){case`not_requested`:case`custody_already_established`:return{status:n.status};case`committed`:return{status:`committed`,issuedAtMs:g(n.issuedAtMs,`${t}.issuedAtMs`)};case`joined`:{let e=n.keyManifestDigestB64u;if(typeof e!=`string`||!e)throw Error(`${t} joined custody carries no key manifest digest`);return{status:`joined`,keyManifestDigestB64u:e}}case`rejected`:{let e=n.reason;if(typeof e!=`string`||!e)throw Error(`${t} rejected custody carries no reason`);return{status:`rejected`,reason:e}}default:throw Error(`${t} walletCustody status is unrecognised`)}}var z=(e=>(e.Unknown=`Unknown`,e.Pending=`Pending`,e.Failure=`Failure`,e))(z||{}),B=(e=>(e.NotStarted=`NotStarted`,e.Started=`Started`,e.Failure=`Failure`,e))(B||{});function V(e,t){if(typeof e!=`object`||!e||Array.isArray(e))throw Error(`Invalid ${t}: expected an object`);return e}function H(e,t){if(typeof e!=`string`)throw Error(`Invalid ${t}: expected a string`);return e}function U(e,t){if(!Array.isArray(e))throw Error(`Invalid ${t}: expected a string array`);let n=[];for(let r of e){if(typeof r!=`string`)throw Error(`Invalid ${t}: expected a string array`);n.push(r)}return n}function W(e,t){if(typeof e!=`number`||!Number.isSafeInteger(e)||e<0)throw Error(`Invalid ${t}: expected a non-negative safe integer`);return e}function G(e,t){if(typeof e==`number`&&!Number.isSafeInteger(e))throw Error(`Invalid ${t}: expected a safe integer or decimal string`);if(typeof e!=`string`&&typeof e!=`number`||!/^\d+$/.test(String(e)))throw Error(`Invalid ${t}: expected an unsigned decimal integer`);return BigInt(e)}function K(e,t){return{block_height:W(e.block_height,`${t}.block_height`),block_hash:H(e.block_hash,`${t}.block_hash`)}}function et(e){let t=V(V(e,`NEAR access key permission`).FunctionCall,`NEAR access key permission.FunctionCall`);return{FunctionCall:{allowance:H(t.allowance,`NEAR access key allowance`),receiver_id:H(t.receiver_id,`NEAR access key receiver_id`),method_names:U(t.method_names,`NEAR access key method_names`)}}}function tt(e){return e===`FullAccess`?e:et(e)}function nt(e,t){return{...t,nonce:G(e.nonce,`NEAR access key nonce`),permission:tt(e.permission)}}function rt(e){let t=V(e,`NEAR access key response`);return nt(t,K(t,`NEAR access key response`))}function it(e){let t=V(e,`NEAR access key list response`),n=K(t,`NEAR access key list response`);if(!Array.isArray(t.keys))throw Error(`Invalid NEAR access key list response.keys: expected an array`);let r=[];for(let e of t.keys){let t=V(e,`NEAR access key list entry`),i=V(t.access_key,`NEAR access key list entry.access_key`);r.push({public_key:H(t.public_key,`NEAR access key list entry.public_key`),access_key:nt(i,n)})}return{...n,keys:r}}function at(e){let t=V(e,`NEAR account response`);return{...K(t,`NEAR account response`),amount:G(t.amount,`NEAR account response.amount`),locked:G(t.locked,`NEAR account response.locked`),code_hash:H(t.code_hash,`NEAR account response.code_hash`),storage_usage:W(t.storage_usage,`NEAR account response.storage_usage`),storage_paid_at:W(t.storage_paid_at,`NEAR account response.storage_paid_at`)}}function ot(e){let t=H(V(e,`NEAR view code response`).code_base64,`NEAR view code response.code_base64`);if(!t)throw Error(`Invalid NEAR view code response.code_base64: empty string`);return t}function st(e){let t=V(V(e,`NEAR block response`).header,`NEAR block response.header`);return{header:{hash:H(t.hash,`NEAR block response.header.hash`),height:W(t.height,`NEAR block response.header.height`)}}}function ct(e){let t=V(e,`NEAR contract call response`);if(!Array.isArray(t.result))throw Error(`Invalid NEAR contract call response.result: expected bytes`);let n=[];for(let e of t.result){if(typeof e!=`number`||!Number.isInteger(e)||e<0||e>255)throw Error(`Invalid NEAR contract call response.result: expected bytes`);n.push(e)}return{...K(t,`NEAR contract call response`),logs:U(t.logs,`NEAR contract call response.logs`),result:n}}function lt(e){let t=new TextDecoder(`utf-8`,{fatal:!0}).decode(Uint8Array.from(e));if(!t.trim())return null;try{return JSON.parse(t)}catch{return t}}function ut(e,t){let n=V(e,t),r=typeof n.error_type==`string`?n.error_type:`InvalidTxError`in n?`InvalidTxError`:`ActionError`in n?`ActionError`:`TxExecutionError`;return{error_message:typeof n.error_message==`string`?n.error_message:`NEAR execution failed`,error_type:r,...`InvalidTxError`in n?{InvalidTxError:n.InvalidTxError}:{},...`ActionError`in n?{ActionError:n.ActionError}:{}}}function dt(e,t){let n=0;for(let r of t)Object.prototype.hasOwnProperty.call(e,r)&&n++;if(n!==1)throw Error(`Invalid NEAR status: expected exactly one variant`)}function ft(e){if(e===`Unknown`)return z.Unknown;if(e===`Pending`)return z.Pending;if(e===`Failure`)return z.Failure;let t=V(e,`NEAR execution status`);if(dt(t,[`SuccessValue`,`SuccessReceiptId`,`Failure`]),typeof t.SuccessValue==`string`)return{SuccessValue:t.SuccessValue};if(typeof t.SuccessReceiptId==`string`)return{SuccessReceiptId:t.SuccessReceiptId};if(`Failure`in t)return{Failure:ut(t.Failure,`NEAR execution failure`)};throw Error(`Invalid NEAR execution status`)}function pt(e){if(e===`NotStarted`)return B.NotStarted;if(e===`Started`)return B.Started;if(e===`Failure`)return B.Failure;let t=V(e,`NEAR final execution status`);if(dt(t,[`SuccessValue`,`Failure`]),typeof t.SuccessValue==`string`)return{SuccessValue:t.SuccessValue};if(`Failure`in t)return{Failure:ut(t.Failure,`NEAR final execution failure`)};throw Error(`Invalid NEAR final execution status`)}function mt(e){let t=V(e,`NEAR execution outcome`);return{logs:U(t.logs,`NEAR execution outcome.logs`),receipt_ids:U(t.receipt_ids,`NEAR execution outcome.receipt_ids`),gas_burnt:W(t.gas_burnt,`NEAR execution outcome.gas_burnt`),tokens_burnt:H(t.tokens_burnt,`NEAR execution outcome.tokens_burnt`),executor_id:H(t.executor_id,`NEAR execution outcome.executor_id`),status:ft(t.status)}}function ht(e){let t=V(e,`NEAR execution outcome with id`);return{id:H(t.id,`NEAR execution outcome id`),outcome:mt(t.outcome)}}function gt(e){switch(e){case`NONE`:case`INCLUDED`:case`INCLUDED_FINAL`:case`EXECUTED`:case`FINAL`:case`EXECUTED_OPTIMISTIC`:return e;default:throw Error(`Invalid NEAR final_execution_status`)}}function _t(e){let t=V(e,`NEAR final execution outcome`);if(!Array.isArray(t.receipts_outcome))throw Error(`Invalid NEAR final execution outcome.receipts_outcome: expected an array`);return{final_execution_status:gt(t.final_execution_status),status:pt(t.status),transaction:{hash:H(V(t.transaction,`NEAR final execution outcome.transaction`).hash,`NEAR final execution outcome.transaction.hash`)},transaction_outcome:ht(t.transaction_outcome),receipts_outcome:t.receipts_outcome.map(ht)}}function vt(e){return String(e||``).trim()}function yt(e){return String(e||``).trim()}async function bt(e){return oe(await ae(f(e)))}async function xt(e){return oe(await ae(f(e)))}function St(e){let n=v(e);if(!n||!(`caller`in n))return null;let r=me(n.caller);if(r===`linked_device_ceremony`)return Object.prototype.hasOwnProperty.call(n,`source`)?null:{caller:`linked_device_ceremony`};if(r!==`same_device_addition`)return null;let a=v(`source`in n?n.source:void 0);if(!a)return null;let o=i(`walletAuthorityId`in a?a.walletAuthorityId:void 0),s=t(`walletAuthMethodId`in a?a.walletAuthMethodId:void 0),c=me(`authorityDigestB64u`in a?a.authorityDigestB64u:void 0),l=`revocationEpoch`in a?a.revocationEpoch:void 0;return!o.ok||!s.ok||!c||typeof l!=`number`||!Number.isSafeInteger(l)||l<0?null:{caller:`same_device_addition`,source:{walletAuthorityId:o.value,walletAuthMethodId:s.value,authorityDigestB64u:c,revocationEpoch:l}}}function Ct(e,t){return e.walletAuthorityId===t.walletAuthorityId&&e.walletAuthMethodId===t.walletAuthMethodId&&e.authorityDigestB64u===t.authorityDigestB64u&&e.revocationEpoch===t.revocationEpoch}function q(e,t,n,r=[]){let i=v(e);if(!i)throw Error(t+` must be an object`);let a=new Set([...n,...r]),o=Object.keys(i);if(o.length<n.length||o.length>a.size)throw Error(t+` has invalid fields`);for(let e of n)if(!Object.prototype.hasOwnProperty.call(i,e))throw Error(t+`.`+e+` is required`);for(let e of o)if(!a.has(e))throw Error(t+` has invalid fields`);return i}function J(e,t,n){if(!Object.prototype.hasOwnProperty.call(e,t))throw Error(n+`.`+t+` is required`);return Reflect.get(e,t)}function Y(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function X(e,t,n){let r=J(e,t,n);if(typeof r!=`string`||r.length===0||r.trim()!==r)throw Error(n+`.`+t+` must be a non-empty canonical string`);return r}function Z(e,t,n,r){let i=J(e,t,n);if(typeof i!=`number`||!Number.isSafeInteger(i)||i<r)throw Error(n+`.`+t+` must be a safe integer`);return i}function wt(e,t){if(!Array.isArray(e))throw Error(t+` must be an array`);return e}function Tt(e,t,n){let r=wt(J(e,t,n),n+`.`+t);if(r.length===0)throw Error(n+`.`+t+` must not be empty`);let i=[];for(let e=0;e<r.length;e+=1){let a=r[e];if(typeof a!=`number`||!Number.isSafeInteger(a)||a<1)throw Error(n+`.`+t+`[`+e+`] must be a positive safe integer`);i.push(a)}return i}function Q(e,t,n){return Y(e,t)?X(e,t,n):void 0}function Et(e,t=`addSignerIntent.signerSelection.ecdsa.chainTarget`){try{let n=q(e,t,[`kind`],[`namespace`,`chainId`,`networkSlug`]);switch(X(n,`kind`,t)){case`evm`:{let e=q(n,t,[`kind`,`namespace`,`chainId`],[`networkSlug`]);if(X(e,`namespace`,t)!==`eip155`)return null;let r=Z(e,`chainId`,t,1),i=Q(e,`networkSlug`,t);return i===void 0?{kind:`evm`,namespace:`eip155`,chainId:r}:{kind:`evm`,namespace:`eip155`,chainId:r,networkSlug:i}}case`tempo`:{let e=q(n,t,[`kind`,`chainId`],[`networkSlug`]),r=Z(e,`chainId`,t,1),i=Q(e,`networkSlug`,t);return i===void 0?{kind:`tempo`,chainId:r}:{kind:`tempo`,chainId:r,networkSlug:i}}default:return null}}catch{return null}}function Dt(e){let t=`addSignerIntent.signerSelection`,n=q(e,t,[`mode`],[`ed25519`,`ecdsa`]);switch(X(n,`mode`,t)){case`ed25519`:{let e=q(J(q(n,t,[`mode`,`ed25519`]),`ed25519`,t),t+`.ed25519`,[`mode`,`signerSlot`,`participantIds`,`keyPurpose`,`keyVersion`,`derivationVersion`]);if(X(e,`mode`,t+`.ed25519`)!==`create_implicit_near_account`)throw Error(t+`.ed25519.mode is unsupported`);Z(e,`signerSlot`,t+`.ed25519`,1),Tt(e,`participantIds`,t+`.ed25519`),X(e,`keyPurpose`,t+`.ed25519`),X(e,`keyVersion`,t+`.ed25519`),Z(e,`derivationVersion`,t+`.ed25519`,1);break}case`ecdsa`:{let e=q(J(q(n,t,[`mode`,`ecdsa`]),`ecdsa`,t),t+`.ecdsa`,[`chainTargets`,`participantIds`]),r=wt(J(e,`chainTargets`,t+`.ecdsa`),t+`.ecdsa.chainTargets`);if(r.length===0)throw Error(t+`.ecdsa.chainTargets must not be empty`);for(let e of r)if(!Et(e))throw Error(t+`.ecdsa.chainTargets contains an invalid target`);Tt(e,`participantIds`,t+`.ecdsa`);break}default:throw Error(t+`.mode is unsupported`)}let r=_e(e,{normalizeEcdsaChainTarget:Et});if(!r.ok)throw Error(r.message);return r.value}function Ot(e){let t=`addAuthMethodIntent.authMethod`,n=q(e,t,[`kind`],[`rpId`,`email`]);switch(X(n,`kind`,t)){case`passkey`:{let e=r(X(q(n,t,[`kind`,`rpId`]),`rpId`,t));if(!e.ok)throw Error(e.error.message);break}case`email_otp`:X(q(n,t,[`kind`,`email`]),`email`,t);break;default:throw Error(t+`.kind is unsupported`)}let i=he(e);if(!i)throw Error(t+` is invalid`);return i}function kt(e){let n=`addAuthMethodIntent.source`,r=q(e,n,[`walletAuthorityId`,`walletAuthMethodId`,`authorityDigestB64u`,`revocationEpoch`]),a=i(X(r,`walletAuthorityId`,n)),o=t(X(r,`walletAuthMethodId`,n));if(!a.ok||!o.ok)throw Error(n+` has invalid identity`);X(r,`authorityDigestB64u`,n),Z(r,`revocationEpoch`,n,0)}function At(e,t){if(!Y(e,`runtimePolicyScope`))return;let n=t+`.runtimePolicyScope`,r=q(J(e,`runtimePolicyScope`,t),n,[`orgId`,`projectId`,`envId`],[`signingRootVersion`]),i=X(r,`orgId`,n),a=X(r,`projectId`,n),o=X(r,`envId`,n),s=Q(r,`signingRootVersion`,n);return s===void 0?{orgId:i,projectId:a,envId:o}:{orgId:i,projectId:a,envId:o,signingRootVersion:s}}function jt(e,t){let n=c(X(e,`walletId`,t));if(!n.ok)throw Error(n.error.message);return n.value}function Mt(e,n,r){let i=t(X(e,n,r));if(!i.ok)throw Error(i.error.message);return i.value}function Nt(e){let t=`addSignerIntent`,n=q(e,t,[`version`,`walletId`,`signerSelection`,`nonceB64u`],[`runtimePolicyScope`]);if(X(n,`version`,t)!==`add_signer_intent_v1`)throw Error(t+`.version is unsupported`);let r=jt(n,t),i=At(n,t),a=X(n,`nonceB64u`,t),o=Dt(J(n,`signerSelection`,t));return i===void 0?{version:`add_signer_intent_v1`,walletId:r,signerSelection:o,nonceB64u:a}:{version:`add_signer_intent_v1`,walletId:r,signerSelection:o,runtimePolicyScope:i,nonceB64u:a}}function Pt(e){let t=`addAuthMethodIntent`,n=q(e,t,[`version`,`walletId`,`authMethod`,`targetWalletAuthMethodId`,`caller`,`nonceB64u`],[`runtimePolicyScope`,`source`]);if(X(n,`version`,t)!==`add_auth_method_intent_v1`)throw Error(t+`.version is unsupported`);let r=jt(n,t),i=Mt(n,`targetWalletAuthMethodId`,t),a=Ot(J(n,`authMethod`,t)),o=At(n,t),s=X(n,`nonceB64u`,t);switch(X(n,`caller`,t)){case`same_device_addition`:kt(J(n,`source`,t));break;case`linked_device_ceremony`:if(Y(n,`source`))throw Error(t+`.source is not valid for linked_device_ceremony`);break;default:throw Error(t+`.caller is unsupported`)}let c=St(n);if(!c)throw Error(t+`.caller is invalid`);let l=o===void 0?{version:`add_auth_method_intent_v1`,walletId:r,authMethod:a,targetWalletAuthMethodId:i,nonceB64u:s}:{version:`add_auth_method_intent_v1`,walletId:r,authMethod:a,targetWalletAuthMethodId:i,runtimePolicyScope:o,nonceB64u:s};switch(c.caller){case`same_device_addition`:return{...l,caller:c.caller,source:c.source};case`linked_device_ceremony`:return{...l,caller:c.caller};default:return Ft(c)}}function Ft(e){throw Error(`Unsupported add-auth-method intent caller: ${String(e)}`)}function It(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n+=1)if(!Number.isSafeInteger(e[n])||e[n]!==t[n])return!1;return!0}function Lt(e,t){switch(e.kind){case`evm`:return t.kind===`evm`&&e.namespace===t.namespace&&e.chainId===t.chainId&&e.networkSlug===t.networkSlug;case`tempo`:return t.kind===`tempo`&&e.chainId===t.chainId&&e.networkSlug===t.networkSlug;default:return Rt(e)}}function Rt(e){throw Error(`Unsupported add-signer chain target: ${String(e)}`)}function zt(e,t){if(e.mode!==t.mode)return!1;switch(e.mode){case`ed25519`:return t.mode===`ed25519`&&e.ed25519.mode===t.ed25519.mode&&e.ed25519.signerSlot===t.ed25519.signerSlot&&It(e.ed25519.participantIds,t.ed25519.participantIds)&&e.ed25519.keyPurpose===t.ed25519.keyPurpose&&e.ed25519.keyVersion===t.ed25519.keyVersion&&e.ed25519.derivationVersion===t.ed25519.derivationVersion;case`ecdsa`:if(t.mode!==`ecdsa`||e.ecdsa.chainTargets.length!==t.ecdsa.chainTargets.length)return!1;for(let n=0;n<e.ecdsa.chainTargets.length;n+=1)if(!Lt(e.ecdsa.chainTargets[n],t.ecdsa.chainTargets[n]))return!1;return It(e.ecdsa.participantIds,t.ecdsa.participantIds);default:return Bt(e)}}function Bt(e){throw Error(`Unsupported add-signer selection: ${String(e)}`)}function $(e,t){return e===void 0||t===void 0?e===t:e.orgId===t.orgId&&e.projectId===t.projectId&&e.envId===t.envId&&e.signingRootVersion===t.signingRootVersion}function Vt(e,t){return e.version===t.version&&e.walletId===t.walletId&&zt(e.signerSelection,t.signerSelection)&&$(e.runtimePolicyScope,t.runtimePolicyScope)&&e.nonceB64u===t.nonceB64u}function Ht(e,t){if(e.kind!==t.kind)return!1;switch(e.kind){case`passkey`:return t.kind===`passkey`&&e.rpId===t.rpId;case`email_otp`:return t.kind===`email_otp`&&e.email===t.email;default:return Ut(e)}}function Ut(e){throw Error(`Unsupported add-auth-method input: ${String(e)}`)}function Wt(e,t){if(e.version!==t.version||e.walletId!==t.walletId||!Ht(e.authMethod,t.authMethod)||e.targetWalletAuthMethodId!==t.targetWalletAuthMethodId||!$(e.runtimePolicyScope,t.runtimePolicyScope)||e.nonceB64u!==t.nonceB64u)return!1;switch(e.caller){case`same_device_addition`:return t.caller===`same_device_addition`&&Ct(e.source,t.source);case`linked_device_ceremony`:return t.caller===`linked_device_ceremony`;default:return Gt(e)}}function Gt(e){throw Error(`Unsupported add-auth-method intent: ${String(e)}`)}export{Le as A,Ve as C,N as D,Ie as E,S as F,Se as I,be as L,T as M,w as N,Ne as O,Ce as P,Re as S,I as T,$e as _,Pt as a,L as b,Vt as c,at as d,st as f,lt as g,_t as h,bt as i,Ze as j,Xe as k,it as l,ct as m,yt as n,Nt as o,ot as p,xt as r,Wt as s,vt as t,rt as u,Qe as v,P as w,F as x,k as y};
|