@seams/wallet 0.15.4 → 0.17.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/README.md +47 -19
- package/THIRD_PARTY_NOTICES.md +102 -1
- package/dist/.build-inputs.sha256 +1 -1
- package/dist/esm/SeamsWeb/SeamsWeb.js +20 -1
- package/dist/esm/SeamsWeb/operations/registration/registrationSignerSet.js +73 -0
- package/dist/esm/SeamsWeb/operations/session/thresholdEcdsaProvisioning.js +22 -0
- package/dist/esm/SeamsWeb/publicApi/capabilitySelection.js +2 -1
- package/dist/esm/SeamsWeb/publicApi/createPublicApi.js +26 -1
- package/dist/esm/SeamsWeb/walletIframe/client/overlay/overlay-controller.js +71 -69
- package/dist/esm/SeamsWeb/walletIframe/client/preferenceState.js +6 -8
- package/dist/esm/SeamsWeb/walletIframe/client/preferences.js +7 -5
- package/dist/esm/SeamsWeb/walletIframe/client/progress/on-events-progress-bus.js +2 -1
- package/dist/esm/SeamsWeb/walletIframe/client/router.js +116 -108
- package/dist/esm/SeamsWeb/walletIframe/client/surface/transactionSurfaceQueue.js +11 -7
- package/dist/esm/SeamsWeb/walletIframe/client/transactionReviewReservation.js +3 -2
- package/dist/esm/SeamsWeb/walletIframe/client/transport/IframeTransport.js +53 -49
- package/dist/esm/SeamsWeb/walletIframe/client/transport/iframe-transport-handshake.js +6 -2
- package/dist/esm/SeamsWeb/walletIframe/coordinator.js +18 -13
- package/dist/esm/SeamsWeb/walletIframe/host/auth-menu/domain.js +13 -1
- package/dist/esm/SeamsWeb/walletIframe/host/surface-measurement-reporter.js +14 -13
- package/dist/esm/SeamsWeb/walletIframe/host/ui/auth-menu/AuthMenuFooter.js +1 -4
- package/dist/esm/SeamsWeb/walletIframe/host/ui/auth-menu/AuthMenuSurface.js +306 -301
- package/dist/esm/SeamsWeb/walletIframe/host/ui/auth-menu/mountAuthMenuSurface.js +9 -6
- package/dist/esm/SeamsWeb/walletIframe/shared/exactSessionState.js +1 -0
- package/dist/esm/core/config/configBuilder.js +1 -1
- package/dist/esm/core/config/defaultConfigs.js +1 -0
- package/dist/esm/core/indexedDB/accountSignerLifecycle.js +2 -0
- package/dist/esm/core/indexedDB/seamsWalletDB/ecdsaCapabilityManifestStore.js +1 -0
- package/dist/esm/core/indexedDB/seamsWalletDB/manager.js +6 -5
- package/dist/esm/core/indexedDB/seamsWalletDB/repositories.js +2 -0
- package/dist/esm/core/indexedDB/seamsWalletDB/walletSessionAuthorizationStore.js +2 -2
- package/dist/esm/core/indexedDB/unifiedIndexedDBManager.js +6 -3
- package/dist/esm/core/rpcClients/near/NearRpcError.js +7 -0
- package/dist/esm/core/rpcClients/relayer/routerAbNormalSigning.js +3 -0
- package/dist/esm/core/rpcClients/relayer/walletRegistration.js +6 -2
- package/dist/esm/core/rpcClients/relayer/walletSessionAuthorizationStatus.js +5 -4
- package/dist/esm/core/signingEngine/chains/evm/evmAdapter.js +2 -1
- package/dist/esm/core/signingEngine/chains/tempo/tempoAdapter.js +2 -1
- package/dist/esm/core/signingEngine/flows/registration/accountLifecycle.js +1 -1
- package/dist/esm/core/signingEngine/flows/signEvmFamily/signers/secp256k1.js +5 -1
- package/dist/esm/core/signingEngine/flows/signEvmFamily/signers/webauthnP256.js +1 -1
- package/dist/esm/core/signingEngine/flows/signEvmFamily/signingFlow.js +3 -2
- package/dist/esm/core/signingEngine/routerAb/ecdsaDerivation/presignatureRefillProgress.js +5 -7
- package/dist/esm/core/signingEngine/session/lifecycle/walletSessionFailure.js +2 -0
- package/dist/esm/core/signingEngine/session/material/ecdsaCapabilityManifest.js +68 -10
- package/dist/esm/core/signingEngine/session/material/walletSigningStateFailure.js +2 -2
- package/dist/esm/core/signingEngine/session/operationState/authorizationAdmission.js +2 -0
- package/dist/esm/core/signingEngine/stepUpConfirmation/methodSelection.js +2 -0
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ConfirmContent.js +29 -28
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ConfirmationBody.js +3 -6
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ConfirmationContent.js +20 -23
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ConfirmationDrawer.js +134 -137
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ConfirmationModal.js +17 -20
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/EmailOtpContent.js +41 -39
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/EmailOtpInput.js +14 -17
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/HaloBorder.js +21 -24
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/PasskeyRegistrationContent.js +6 -9
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/RecoveryCodeBackupSurface.js +100 -103
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ReviewDisclosure.js +70 -73
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/TransactionReceipt.js +23 -26
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/TransactionReview.js +19 -22
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/TransactionTree.js +114 -117
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/email-otp-session.js +81 -80
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/mountConfirmationSurface.js +41 -37
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/mountRecoveryCodeBackupSurface.js +13 -9
- package/dist/esm/core/signingEngine/uiConfirm/ui/transaction-display/tree.js +4 -21
- package/dist/esm/core/types/actionBuilders.js +16 -2
- package/dist/esm/core/types/amounts.js +83 -0
- package/dist/esm/core/types/linkDevice.js +1 -1
- package/dist/esm/externalEvm/controller.js +49 -48
- package/dist/esm/index.js +2 -1
- package/dist/esm/react/boundWallet.js +56 -0
- package/dist/esm/react/components/AccountMenuButton/LinkedDevicesModal.css +13 -2
- package/dist/esm/react/components/AccountMenuButton/WalletRegionSection.js +90 -93
- package/dist/esm/react/components/AccountMenuButton/WalletSettingsLayout.js +55 -58
- package/dist/esm/react/components/HostedSeamsAuthMenu/shell.js +17 -6
- package/dist/esm/react/components/ShowQRCode.css +13 -2
- package/dist/esm/react/context/index.js +30 -3
- package/dist/esm/react/context/useSeamsWithSdkFlow.js +1 -1
- package/dist/esm/react/externalEvm.js +22 -25
- package/dist/esm/react/index.js +4 -4
- package/dist/esm/react/styles/styles.css +13 -2
- package/dist/esm/react/transactionReview/TransactionReviewHost.js +3 -6
- package/dist/esm/react/transactionReview/boundCalls.js +1 -1
- package/dist/esm/react/transactionReview/controller.js +121 -119
- package/dist/esm/sdk/ConfirmationDrawer-CXVNmfTy.js +1 -0
- package/dist/esm/sdk/NonceCoordinator-DuDKN-B8.js +1 -0
- package/dist/{public/sdk/accountLifecycle-CBOkr0vU.js → esm/sdk/accountLifecycle-D61FIpFS.js} +1 -1
- package/dist/esm/sdk/{activeWalletSession-WdZkhtBB.js → activeWalletSession-Ba6X4CUN.js} +1 -1
- package/dist/esm/sdk/adapters-CTlDBRJy.js +2 -0
- package/dist/esm/sdk/authorizationAdmission-Dd23mTx7.js +1 -0
- package/dist/esm/sdk/{canonicalPrimitives-Dsbsxgxc.js → canonicalPrimitives-BOzRXzfv.js} +1 -1
- package/dist/esm/sdk/{capabilityKinds-N8xo_IEh.js → capabilityKinds-D0Yrp9uf.js} +1 -1
- package/dist/esm/sdk/{chains-C_X_fNuS.js → chains-CPmd4s9f.js} +1 -1
- package/dist/esm/sdk/challengeDelivery-FD9GHK1T.js +1 -0
- package/dist/esm/sdk/{clientSessionPersistenceState-CBylL1Ul.js → clientSessionPersistenceState-BHRUSWMt.js} +1 -1
- package/dist/esm/sdk/{commitQueue-DYEgzoLA.js → commitQueue-DOIaR0Hr.js} +1 -1
- package/dist/esm/sdk/{configHelpers-B-hs0mTO.js → configHelpers-BXdl5Mxs.js} +1 -1
- package/dist/esm/sdk/{digestEncoding-BX3VW9eF.js → digestEncoding-CbEFYvlJ.js} +1 -1
- package/dist/esm/sdk/{display-DsfJkAra.js → display-CY_aJEn6.js} +1 -1
- package/dist/esm/sdk/domainIds-C3fUa33Q.js +1 -0
- package/dist/esm/sdk/ecdsaCapabilityManifest-DzA996y9.js +1 -0
- package/dist/esm/sdk/{ecdsaChainTarget-Bfatk3oP.js → ecdsaChainTarget-DkOrgv4y.js} +1 -1
- package/dist/esm/sdk/ecdsaDerivationClientWasm-DQlajPpE.js +1 -0
- package/dist/{public/sdk/ecdsaDerivationExport-DOGzq0qC.js → esm/sdk/ecdsaDerivationExport-DyugdheE.js} +1 -1
- package/dist/esm/sdk/{ecdsaWalletRecords-CHfrYvKr.js → ecdsaWalletRecords-C_v74n5X.js} +1 -1
- package/dist/{public/sdk/emailOtpEcdsaDerivationIdentity-Bik0N8v9.js → esm/sdk/emailOtpEcdsaDerivationIdentity-BDVjvnmO.js} +1 -1
- package/dist/esm/sdk/{errors-DIWY1KR9.js → errors-ADOZT8oV.js} +1 -1
- package/dist/esm/sdk/export-viewer-host-DsRaS0UH.js +1 -0
- package/dist/{public/sdk/exportKeypairOperation-DzbjKbnk.js → esm/sdk/exportKeypairOperation-SJPysnE1.js} +1 -1
- package/dist/esm/sdk/{helpers-B9fpZNAP.js → helpers-D3CUEdHI.js} +1 -1
- package/dist/esm/sdk/{host-z-JJRWQe.js → host-GPb_mSAQ.js} +1 -1
- package/dist/esm/sdk/{intentDigest-P_-CM7lS.js → intentDigest-CGLrsMgj.js} +1 -1
- package/dist/esm/sdk/{lanes-5kcTFbPx.js → lanes-DJKIHJBm.js} +1 -1
- package/dist/esm/sdk/{localOnly-C5mSXb_D.js → localOnly-CPmpw381.js} +1 -1
- package/dist/esm/sdk/mountExportPrivateKeySurface-C8_tpDHF.js +1 -0
- package/dist/esm/sdk/mountRecoveryCodeBackupSurface-BtNFtmSj.js +2 -0
- package/dist/esm/sdk/nearEd25519YaoMaterialActivation-J6EHFScV.js +1 -0
- package/dist/{public/sdk/nearEd25519YaoSigningPreparation-RIfkYN0d.js → esm/sdk/nearEd25519YaoSigningPreparation-CqBNMG87.js} +1 -1
- package/dist/esm/sdk/{nonceLaneKeys-BCYfl1wv.js → nonceLaneKeys-D18nlLjh.js} +1 -1
- package/dist/esm/sdk/{normalization-n503J-BI.js → normalization-Ct9-AY13.js} +1 -1
- package/dist/esm/sdk/{operationFingerprint-BHNYryLY.js → operationFingerprint-Boa9DQ51.js} +1 -1
- package/dist/esm/sdk/{passkey-custody-DpTM-eNJ.js → passkey-custody-CBSal3E9.js} +1 -1
- package/dist/esm/sdk/{pendingWalletRecoveryCodeBackup-C60sZMj5.js → pendingWalletRecoveryCodeBackup-CvsrXbzn.js} +1 -1
- package/dist/esm/sdk/presignaturePool-CQNt13kE.js +1 -0
- package/dist/esm/sdk/{primitives-CqrjmIAH.js → primitives-cC0a9GRC.js} +1 -1
- package/dist/{public/sdk/recovery-entrypoint-BULjaFBM.js → esm/sdk/recovery-entrypoint-nj7Zo3CR.js} +1 -1
- package/dist/esm/sdk/{registration-CyF7nOXs.js → registration-49OGU_GZ.js} +1 -1
- package/dist/esm/sdk/registration-C7tywPXF.js +1 -0
- package/dist/esm/sdk/{registrationAccounts-BQMUusdD.js → registrationAccounts-9GFI0Ger.js} +1 -1
- package/dist/esm/sdk/{registrationAuthMethodInput-RbSR7R1G.js → registrationAuthMethodInput-B23_HRil.js} +1 -1
- package/dist/esm/sdk/{registrationIds-BaK3jUS6.js → registrationIds-Br-zI4_5.js} +1 -1
- package/dist/esm/sdk/{registrationIntent-090Zj7Iu.js → registrationIntent-PqmcTEE3.js} +1 -1
- package/dist/esm/sdk/{registrationSignerPlan-CPzHavPM.js → registrationSignerPlan-BHkqlian.js} +1 -1
- package/dist/{public/sdk/requireStepUpAuth-BCY5ZStI.js → esm/sdk/requireStepUpAuth-C4PGTly-.js} +1 -1
- package/dist/esm/sdk/routerAbNormalSigning-xxATTIh5.js +1 -0
- package/dist/esm/sdk/runtime-auth-CpjGW90U.js +1 -0
- package/dist/esm/sdk/{runtime-device-link-Dq8g_UNb.js → runtime-device-link-CKgfGi7D.js} +1 -1
- package/dist/esm/sdk/{runtime-ecdsa-tempo-AGjT7Xpa.js → runtime-ecdsa-tempo-5VV9xSEh.js} +1 -1
- package/dist/esm/sdk/{runtime-email-otp-BpBOuSsT.js → runtime-email-otp-D1hYZNn6.js} +1 -1
- package/dist/esm/sdk/{runtime-export-CBsacCPY.js → runtime-export-B92wQD25.js} +1 -1
- package/dist/esm/sdk/{runtime-near-J3hKjC7G.js → runtime-near-CUuKg38M.js} +1 -1
- package/dist/esm/sdk/runtime-preferences-EdL3G_MO.js +1 -0
- package/dist/esm/sdk/{runtime-recovery-codes-GOytzExh.js → runtime-recovery-codes-LR4mg7-k.js} +1 -1
- package/dist/esm/sdk/runtime-recovery-uyw8sywI.js +1 -0
- package/dist/esm/sdk/{sdkSentEvents-D4KtK7_I.js → sdkSentEvents-DujYAPEM.js} +1 -1
- package/dist/esm/sdk/secp256k1-BldUPNQI.js +1 -0
- package/dist/{public/sdk/sessionObservationRevision-CnEOLDbl.js → esm/sdk/sessionObservationRevision-DmmNV25w.js} +1 -1
- package/dist/esm/sdk/shared-ha31XIdc.js +6 -0
- package/dist/{public/sdk/signEvmFamily-Cpm3e6Zs.js → esm/sdk/signEvmFamily-C_RvEnDB.js} +1 -1
- package/dist/esm/sdk/signEvmFamilyWithUiConfirmForTempo-CUKdq5dE.js +1 -0
- package/dist/esm/sdk/{signEvmWithUiConfirm-BRmdLgmm.js → signEvmWithUiConfirm-CxXzcvj2.js} +1 -1
- package/dist/esm/sdk/signNear-Dno7NsP_.js +1 -0
- package/dist/esm/sdk/signatureUses-B_nN17i7.js +1 -0
- package/dist/esm/sdk/{signerDomain-Dp7BhfmZ.js → signerDomain-BFqRQ0Jl.js} +1 -1
- package/dist/{public/sdk/signingFlow-VAnM8L5C.js → esm/sdk/signingFlow-DtugI_2z.js} +2 -2
- package/dist/esm/sdk/{signingQueue-D_Ebmzcn.js → signingQueue-C1Pb07gm.js} +1 -1
- package/dist/{public/sdk/singletons-BXhnsqeY.js → esm/sdk/singletons-DxIyVhNb.js} +1 -1
- package/dist/esm/sdk/surface-measurement-reporter-BJhfiPw6.js +1 -0
- package/dist/{public/sdk/thresholdEcdsa-CneSKcRt.js → esm/sdk/thresholdEcdsa-murTq-xz.js} +1 -1
- package/dist/esm/sdk/{trace-BBux0jtr.js → trace-CsRMlSh1.js} +1 -1
- package/dist/{public/sdk/transaction-activity-Cccvec2J.js → esm/sdk/transaction-activity-C0nCSW6c.js} +1 -1
- package/dist/esm/sdk/transactionReviewAdmission-CNNho8IG.js +1 -0
- package/dist/{public/sdk/transactionState-Day-1x7Y.js → esm/sdk/transactionState-XbZm9Zon.js} +1 -1
- package/dist/esm/sdk/tx-confirm-ui.js +709 -744
- package/dist/esm/sdk/{types-hKLqDUhR.js → types-CQTWmtqu.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-Bfhfk52N.js → esm/sdk/wallet-recovery-CVUalZ3p.js} +1 -1
- package/dist/esm/sdk/wallet-ui.css +1 -1
- package/dist/{public/sdk/walletAuthMethodRecord-LniOQQmj.js → esm/sdk/walletAuthMethodRecord-Bv68Vq-g.js} +1 -1
- package/dist/esm/sdk/{walletAuthority-CAiGuWW2.js → walletAuthority-v5wvv3IB.js} +1 -1
- package/dist/esm/sdk/walletCustodyEcdsaContinuity-rRHExT_R.js +1 -0
- package/dist/esm/sdk/{walletDbName-DtRewci9.js → walletDbName-DRzPv5Ir.js} +1 -1
- package/dist/esm/sdk/{walletOwnershipGeneration-B6HyR2rE.js → walletOwnershipGeneration-pMmmJ6XA.js} +1 -1
- package/dist/esm/sdk/{walletRecoveryCommit-C6HF84_U.js → walletRecoveryCommit-DvC6WlGz.js} +1 -1
- package/dist/esm/sdk/{walletRecoveryRotate-BN3H8byw.js → walletRecoveryRotate-Dd3prJpr.js} +1 -1
- package/dist/esm/sdk/walletRegistrationSetupPrewarm-DcbhVNMQ.js +1 -0
- package/dist/esm/sdk/walletSessionAuthorizationStatus-DVV3xkAx.js +1 -0
- package/dist/esm/sdk/walletSessionAuthorizationStore-D-MhJ0PC.js +1 -0
- package/dist/esm/sdk/walletSessionFailure-C6TAQTZn.js +1 -0
- package/dist/esm/sdk/webauthnP256-XgYu-Y6E.js +1 -0
- package/dist/esm/sdk/webauthnPromptCoordinator-D5sP8Q7e.js +1 -0
- package/dist/esm/shared-ts/src/authorization/delegatedAuthority.js +1 -1
- package/dist/esm/shared-ts/src/authorization/operationFingerprint.js +6 -0
- package/dist/esm/shared-ts/src/near/nearClient.js +6 -0
- package/dist/esm/shared-ts/src/threshold/participants.js +2 -1
- package/dist/esm/shared-ts/src/threshold/secp256k1.js +6 -0
- package/dist/esm/shared-ts/src/utils/domainIds.js +7 -0
- package/dist/esm/shared-ts/src/utils/index.js +1 -1
- package/dist/esm/shared-ts/src/utils/registrationSignerPlan.js +14 -1
- package/dist/esm/shared-ts/src/utils/routerAbEd25519Yao.js +5 -4
- package/dist/esm/utils/qrScanner.js +10 -8
- package/dist/public/headers.manifest.json +1 -1
- package/dist/public/sdk/ConfirmationDrawer-CXVNmfTy.js +1 -0
- package/dist/public/sdk/NonceCoordinator-DuDKN-B8.js +1 -0
- package/dist/{esm/sdk/accountLifecycle-CBOkr0vU.js → public/sdk/accountLifecycle-D61FIpFS.js} +1 -1
- package/dist/public/sdk/{activeWalletSession-WdZkhtBB.js → activeWalletSession-Ba6X4CUN.js} +1 -1
- package/dist/public/sdk/adapters-CTlDBRJy.js +2 -0
- package/dist/public/sdk/authorizationAdmission-Dd23mTx7.js +1 -0
- package/dist/public/sdk/{canonicalPrimitives-Dsbsxgxc.js → canonicalPrimitives-BOzRXzfv.js} +1 -1
- package/dist/public/sdk/{capabilityKinds-N8xo_IEh.js → capabilityKinds-D0Yrp9uf.js} +1 -1
- package/dist/public/sdk/{chains-C_X_fNuS.js → chains-CPmd4s9f.js} +1 -1
- package/dist/public/sdk/challengeDelivery-FD9GHK1T.js +1 -0
- package/dist/public/sdk/{clientSessionPersistenceState-CBylL1Ul.js → clientSessionPersistenceState-BHRUSWMt.js} +1 -1
- package/dist/public/sdk/{commitQueue-DYEgzoLA.js → commitQueue-DOIaR0Hr.js} +1 -1
- package/dist/public/sdk/{configHelpers-B-hs0mTO.js → configHelpers-BXdl5Mxs.js} +1 -1
- package/dist/public/sdk/{digestEncoding-BX3VW9eF.js → digestEncoding-CbEFYvlJ.js} +1 -1
- package/dist/public/sdk/{display-DsfJkAra.js → display-CY_aJEn6.js} +1 -1
- package/dist/public/sdk/domainIds-C3fUa33Q.js +1 -0
- package/dist/public/sdk/ecdsaCapabilityManifest-DzA996y9.js +1 -0
- package/dist/public/sdk/{ecdsaChainTarget-Bfatk3oP.js → ecdsaChainTarget-DkOrgv4y.js} +1 -1
- package/dist/public/sdk/ecdsaDerivationClientWasm-DQlajPpE.js +1 -0
- package/dist/{esm/sdk/ecdsaDerivationExport-DOGzq0qC.js → public/sdk/ecdsaDerivationExport-DyugdheE.js} +1 -1
- package/dist/public/sdk/{ecdsaWalletRecords-CHfrYvKr.js → ecdsaWalletRecords-C_v74n5X.js} +1 -1
- package/dist/{esm/sdk/emailOtpEcdsaDerivationIdentity-Bik0N8v9.js → public/sdk/emailOtpEcdsaDerivationIdentity-BDVjvnmO.js} +1 -1
- package/dist/public/sdk/{errors-DIWY1KR9.js → errors-ADOZT8oV.js} +1 -1
- package/dist/public/sdk/export-viewer-host-DsRaS0UH.js +1 -0
- package/dist/{esm/sdk/exportKeypairOperation-DzbjKbnk.js → public/sdk/exportKeypairOperation-SJPysnE1.js} +1 -1
- package/dist/public/sdk/{helpers-B9fpZNAP.js → helpers-D3CUEdHI.js} +1 -1
- package/dist/public/sdk/{host-z-JJRWQe.js → host-GPb_mSAQ.js} +1 -1
- package/dist/public/sdk/{intentDigest-P_-CM7lS.js → intentDigest-CGLrsMgj.js} +1 -1
- package/dist/public/sdk/{lanes-5kcTFbPx.js → lanes-DJKIHJBm.js} +1 -1
- package/dist/public/sdk/{localOnly-C5mSXb_D.js → localOnly-CPmpw381.js} +1 -1
- package/dist/public/sdk/mountExportPrivateKeySurface-C8_tpDHF.js +1 -0
- package/dist/public/sdk/mountRecoveryCodeBackupSurface-BtNFtmSj.js +2 -0
- package/dist/public/sdk/nearEd25519YaoMaterialActivation-J6EHFScV.js +1 -0
- package/dist/{esm/sdk/nearEd25519YaoSigningPreparation-RIfkYN0d.js → public/sdk/nearEd25519YaoSigningPreparation-CqBNMG87.js} +1 -1
- package/dist/public/sdk/{nonceLaneKeys-BCYfl1wv.js → nonceLaneKeys-D18nlLjh.js} +1 -1
- package/dist/public/sdk/{normalization-n503J-BI.js → normalization-Ct9-AY13.js} +1 -1
- package/dist/public/sdk/{operationFingerprint-BHNYryLY.js → operationFingerprint-Boa9DQ51.js} +1 -1
- package/dist/public/sdk/{passkey-custody-DpTM-eNJ.js → passkey-custody-CBSal3E9.js} +1 -1
- package/dist/public/sdk/{pendingWalletRecoveryCodeBackup-C60sZMj5.js → pendingWalletRecoveryCodeBackup-CvsrXbzn.js} +1 -1
- package/dist/public/sdk/presignaturePool-CQNt13kE.js +1 -0
- package/dist/public/sdk/{primitives-CqrjmIAH.js → primitives-cC0a9GRC.js} +1 -1
- package/dist/{esm/sdk/recovery-entrypoint-BULjaFBM.js → public/sdk/recovery-entrypoint-nj7Zo3CR.js} +1 -1
- package/dist/public/sdk/{registration-CyF7nOXs.js → registration-49OGU_GZ.js} +1 -1
- package/dist/public/sdk/registration-C7tywPXF.js +1 -0
- package/dist/public/sdk/{registrationAccounts-BQMUusdD.js → registrationAccounts-9GFI0Ger.js} +1 -1
- package/dist/public/sdk/{registrationAuthMethodInput-RbSR7R1G.js → registrationAuthMethodInput-B23_HRil.js} +1 -1
- package/dist/public/sdk/{registrationIds-BaK3jUS6.js → registrationIds-Br-zI4_5.js} +1 -1
- package/dist/public/sdk/{registrationIntent-090Zj7Iu.js → registrationIntent-PqmcTEE3.js} +1 -1
- package/dist/public/sdk/{registrationSignerPlan-CPzHavPM.js → registrationSignerPlan-BHkqlian.js} +1 -1
- package/dist/{esm/sdk/requireStepUpAuth-BCY5ZStI.js → public/sdk/requireStepUpAuth-C4PGTly-.js} +1 -1
- package/dist/public/sdk/routerAbNormalSigning-xxATTIh5.js +1 -0
- package/dist/public/sdk/runtime-auth-CpjGW90U.js +1 -0
- package/dist/public/sdk/{runtime-device-link-Dq8g_UNb.js → runtime-device-link-CKgfGi7D.js} +1 -1
- package/dist/public/sdk/{runtime-ecdsa-tempo-AGjT7Xpa.js → runtime-ecdsa-tempo-5VV9xSEh.js} +1 -1
- package/dist/public/sdk/{runtime-email-otp-BpBOuSsT.js → runtime-email-otp-D1hYZNn6.js} +1 -1
- package/dist/public/sdk/{runtime-export-CBsacCPY.js → runtime-export-B92wQD25.js} +1 -1
- package/dist/public/sdk/{runtime-near-J3hKjC7G.js → runtime-near-CUuKg38M.js} +1 -1
- package/dist/public/sdk/runtime-preferences-EdL3G_MO.js +1 -0
- package/dist/public/sdk/{runtime-recovery-codes-GOytzExh.js → runtime-recovery-codes-LR4mg7-k.js} +1 -1
- package/dist/public/sdk/runtime-recovery-uyw8sywI.js +1 -0
- package/dist/public/sdk/{sdkSentEvents-D4KtK7_I.js → sdkSentEvents-DujYAPEM.js} +1 -1
- package/dist/public/sdk/secp256k1-BldUPNQI.js +1 -0
- package/dist/{esm/sdk/sessionObservationRevision-CnEOLDbl.js → public/sdk/sessionObservationRevision-DmmNV25w.js} +1 -1
- package/dist/public/sdk/shared-ha31XIdc.js +6 -0
- package/dist/{esm/sdk/signEvmFamily-Cpm3e6Zs.js → public/sdk/signEvmFamily-C_RvEnDB.js} +1 -1
- package/dist/public/sdk/signEvmFamilyWithUiConfirmForTempo-CUKdq5dE.js +1 -0
- package/dist/public/sdk/{signEvmWithUiConfirm-BRmdLgmm.js → signEvmWithUiConfirm-CxXzcvj2.js} +1 -1
- package/dist/public/sdk/signNear-Dno7NsP_.js +1 -0
- package/dist/public/sdk/signatureUses-B_nN17i7.js +1 -0
- package/dist/public/sdk/{signerDomain-Dp7BhfmZ.js → signerDomain-BFqRQ0Jl.js} +1 -1
- package/dist/{esm/sdk/signingFlow-VAnM8L5C.js → public/sdk/signingFlow-DtugI_2z.js} +2 -2
- package/dist/public/sdk/{signingQueue-D_Ebmzcn.js → signingQueue-C1Pb07gm.js} +1 -1
- package/dist/{esm/sdk/singletons-BXhnsqeY.js → public/sdk/singletons-DxIyVhNb.js} +1 -1
- package/dist/public/sdk/surface-measurement-reporter-BJhfiPw6.js +1 -0
- package/dist/{esm/sdk/thresholdEcdsa-CneSKcRt.js → public/sdk/thresholdEcdsa-murTq-xz.js} +1 -1
- package/dist/public/sdk/{trace-BBux0jtr.js → trace-CsRMlSh1.js} +1 -1
- package/dist/{esm/sdk/transaction-activity-Cccvec2J.js → public/sdk/transaction-activity-C0nCSW6c.js} +1 -1
- package/dist/public/sdk/transactionReviewAdmission-CNNho8IG.js +1 -0
- package/dist/{esm/sdk/transactionState-Day-1x7Y.js → public/sdk/transactionState-XbZm9Zon.js} +1 -1
- package/dist/public/sdk/tx-confirm-ui.js +709 -744
- package/dist/public/sdk/{types-hKLqDUhR.js → types-CQTWmtqu.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-Bfhfk52N.js → public/sdk/wallet-recovery-CVUalZ3p.js} +1 -1
- package/dist/public/sdk/wallet-ui.css +1 -1
- package/dist/{esm/sdk/walletAuthMethodRecord-LniOQQmj.js → public/sdk/walletAuthMethodRecord-Bv68Vq-g.js} +1 -1
- package/dist/public/sdk/{walletAuthority-CAiGuWW2.js → walletAuthority-v5wvv3IB.js} +1 -1
- package/dist/public/sdk/walletCustodyEcdsaContinuity-rRHExT_R.js +1 -0
- package/dist/public/sdk/{walletDbName-DtRewci9.js → walletDbName-DRzPv5Ir.js} +1 -1
- package/dist/public/sdk/{walletOwnershipGeneration-B6HyR2rE.js → walletOwnershipGeneration-pMmmJ6XA.js} +1 -1
- package/dist/public/sdk/{walletRecoveryCommit-C6HF84_U.js → walletRecoveryCommit-DvC6WlGz.js} +1 -1
- package/dist/public/sdk/{walletRecoveryRotate-BN3H8byw.js → walletRecoveryRotate-Dd3prJpr.js} +1 -1
- package/dist/public/sdk/walletRegistrationSetupPrewarm-DcbhVNMQ.js +1 -0
- package/dist/public/sdk/walletSessionAuthorizationStatus-DVV3xkAx.js +1 -0
- package/dist/public/sdk/walletSessionAuthorizationStore-D-MhJ0PC.js +1 -0
- package/dist/public/sdk/walletSessionFailure-C6TAQTZn.js +1 -0
- package/dist/public/sdk/webauthnP256-XgYu-Y6E.js +1 -0
- package/dist/public/sdk/webauthnPromptCoordinator-D5sP8Q7e.js +1 -0
- package/dist/public/sdk/workers/device-linking-key.worker.js +12 -11
- package/dist/public/sdk/workers/ecdsa-derivation-client.worker.js +146 -48
- package/dist/public/sdk/workers/ecdsa-online-client.worker.js +7 -6
- package/dist/public/sdk/workers/ecdsa-presign-client.worker.js +7 -6
- package/dist/public/sdk/workers/email-otp.worker.js +24 -4
- package/dist/public/sdk/workers/passkey-mpc-export.worker.js +17 -1
- package/dist/public/sdk/workers/passkey-mpc-session.worker.js +2 -1
- package/dist/public/sdk/workers/wallet-custody-ceremony.worker.js +2 -0
- package/dist/public/wallet-assets.manifest.json +190 -190
- package/dist/public/wallet-service/index.html +4 -4
- package/dist/types/shared-ts/src/authorization/capabilityKinds.d.ts +14 -14
- package/dist/types/shared-ts/src/authorization/delegatedAuthority.d.ts +1 -1
- package/dist/types/shared-ts/src/device-linking/ed25519ExportRoot.d.ts +1 -1
- package/dist/types/shared-ts/src/device-linking/requestProof.d.ts +1 -1
- package/dist/types/shared-ts/src/device-linking/sourceContribution.d.ts +5 -5
- package/dist/types/shared-ts/src/passkey-custody/custodyEnvelope.d.ts +3 -3
- package/dist/types/shared-ts/src/passkey-custody/custodySecretBinding.d.ts +1 -1
- package/dist/types/shared-ts/src/tenant-root/tenantRootIdentity.d.ts +1 -1
- package/dist/types/shared-ts/src/tenant-root/tenantRootOperationRecord.d.ts +2 -2
- package/dist/types/shared-ts/src/utils/base64.d.ts +2 -2
- package/dist/types/shared-ts/src/utils/digestEncoding.d.ts +1 -1
- package/dist/types/shared-ts/src/utils/digests.d.ts +2 -2
- package/dist/types/shared-ts/src/utils/emailOtpDomain.d.ts +16 -16
- package/dist/types/shared-ts/src/utils/emailOtpRecoveryKey.d.ts +1 -1
- package/dist/types/shared-ts/src/utils/routerAbEcdsaDerivation.d.ts +10 -10
- package/dist/types/shared-ts/src/utils/routerAbEd25519Yao.d.ts +12 -11
- package/dist/types/shared-ts/src/utils/routerAbPublicKeyset.d.ts +3 -3
- package/dist/types/shared-ts/src/utils/routerAbTraceContext.d.ts +1 -1
- package/dist/types/shared-ts/src/utils/signerDomain.d.ts +15 -15
- package/dist/types/shared-ts/src/utils/signingSessionSeal.d.ts +11 -11
- package/dist/types/shared-ts/src/utils/walletSessionFailure.d.ts +8 -8
- package/dist/types/shared-ts/src/utils/webauthnDeviceInfo.d.ts +2 -2
- package/dist/types/shared-ts/src/utils/wireSchema.d.ts +1 -1
- package/dist/types/shared-ts/src/wallet-recovery/recoveryKeyId.d.ts +1 -1
- package/dist/types/wallet/build-paths.d.ts +73 -73
- package/dist/types/wallet/src/SeamsWeb/operations/authMethods/emailOtp/googleEmailOtpWalletAuthFlow.d.ts +3 -2
- package/dist/types/wallet/src/SeamsWeb/operations/devices/deviceLinkingResume.d.ts +2 -2
- package/dist/types/wallet/src/SeamsWeb/operations/devices/linkDeviceTargetActivation.d.ts +1 -1
- package/dist/types/wallet/src/SeamsWeb/operations/registration/pendingRegistrationRecovery.d.ts +3 -3
- package/dist/types/wallet/src/SeamsWeb/operations/registration/registrationEd25519Yao.d.ts +4 -3
- package/dist/types/wallet/src/SeamsWeb/operations/registration/registrationSignerSet.d.ts +5 -0
- package/dist/types/wallet/src/SeamsWeb/operations/registration/registrationTiming.d.ts +2 -2
- package/dist/types/wallet/src/SeamsWeb/publicApi/createPublicApi.d.ts +10 -1
- package/dist/types/wallet/src/SeamsWeb/publicApi/types.d.ts +4 -2
- package/dist/types/wallet/src/SeamsWeb/signingSurface/BrowserSigningSurface.d.ts +1 -0
- package/dist/types/wallet/src/SeamsWeb/signingSurface/ports.d.ts +1 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/client/router.d.ts +2 -1
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/auth-menu/domain.d.ts +15 -2
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/createEmailOtpCommands.d.ts +3 -2
- package/dist/types/wallet/src/SeamsWeb/walletIframe/shared/messages.d.ts +3 -3
- package/dist/types/wallet/src/config.d.ts +8 -8
- package/dist/types/wallet/src/core/browser/walletIframe/events.d.ts +1 -1
- package/dist/types/wallet/src/core/indexedDB/linkedAuthoritySignerMaterial.d.ts +3 -3
- package/dist/types/wallet/src/core/indexedDB/pendingWalletRecoveryCommit.d.ts +1 -1
- package/dist/types/wallet/src/core/indexedDB/schemaNames.d.ts +181 -181
- package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/ecdsaCapabilityManifestRecords.d.ts +8 -8
- package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/ecdsaClientPresignatures.d.ts +4 -4
- package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/walletSessionAuthorizationStore.d.ts +1 -1
- package/dist/types/wallet/src/core/indexedDB/walletCustodyEd25519MaterialRecord.d.ts +2 -2
- package/dist/types/wallet/src/core/indexedDB/walletDbName.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/chains/evm/evmAdapter.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/chains/evm/evmSigning.types.d.ts +1 -0
- package/dist/types/wallet/src/core/signingEngine/chains/tempo/tempoAdapter.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/flows/shared/signingStateMachine.d.ts +27 -27
- package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/signers/secp256k1.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/signers/webauthnP256.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/signingFlowRuntime.d.ts +17 -17
- package/dist/types/wallet/src/core/signingEngine/nonce/nonceTypes.d.ts +40 -40
- package/dist/types/wallet/src/core/signingEngine/session/material/walletSigningStateFailure.d.ts +4 -4
- package/dist/types/wallet/src/core/signingEngine/session/operationState/types.d.ts +8 -8
- package/dist/types/wallet/src/core/signingEngine/session/passkey/ed25519YaoLocalMaterial.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/session/persistence/sealedSessionRecords.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/stepUpConfirmation/channel/confirmCommon.d.ts +3 -3
- package/dist/types/wallet/src/core/signingEngine/stepUpConfirmation/types.d.ts +4 -4
- package/dist/types/wallet/src/core/signingEngine/threshold/ed25519/yaoClient.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/threshold/sessionPolicy.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/handlers/flows/adapters/adapters.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/ConfirmHeader.d.ts +2 -2
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/CopyStatusIcon.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/PadlockIcon.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/PasskeyHaloLoading.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/PasskeyRegistrationDetails.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/SeamsWordmark.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/webauthnAuth/credentials/helpers.d.ts +2 -2
- package/dist/types/wallet/src/core/signingEngine/workerManager/SignerWorkerManager.d.ts +1 -0
- package/dist/types/wallet/src/core/signingEngine/workerManager/deviceLinkingPorts.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/workerManager/ecdsaClientWorkerChannels.d.ts +3 -3
- package/dist/types/wallet/src/core/signingEngine/workerManager/ecdsaPresignPoolIdentity.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/workerManager/validation.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/workerManager/workerTransport.d.ts +1 -0
- package/dist/types/wallet/src/core/signingEngine/workerManager/workerTypes.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/workerManager/workers/device-linking-key/ecdsaTargetShareHpke.d.ts +3 -3
- package/dist/types/wallet/src/core/signingEngine/workerManager/workers/device-linking-key/ordinaryMaterialState.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/workerManager/workers/email-otp/crypto.d.ts +3 -3
- package/dist/types/wallet/src/core/signingEngine/workerManager/workers/email-otp/materialParsing.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/workerManager/workers/email-otp/payloadParsing.d.ts +2 -2
- package/dist/types/wallet/src/core/signingEngine/workerManager/workers/email-otp/unlock.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/workerManager/workers/workerErrorPayload.d.ts +2 -2
- package/dist/types/wallet/src/core/types/actionBuilders.d.ts +16 -2
- package/dist/types/wallet/src/core/types/amounts.d.ts +75 -0
- package/dist/types/wallet/src/core/types/amounts.typecheck.d.ts +2 -0
- package/dist/types/wallet/src/core/types/sdkSentEvents.d.ts +5 -5
- package/dist/types/wallet/src/core/types/secure-confirm-worker.d.ts +1 -1
- package/dist/types/wallet/src/core/types/signer-worker.d.ts +7 -7
- package/dist/types/wallet/src/externalEvm/types.d.ts +1 -0
- package/dist/types/wallet/src/index.d.ts +2 -0
- package/dist/types/wallet/src/react/{hooks/useWallet.d.ts → boundWallet.d.ts} +8 -48
- package/dist/types/wallet/src/react/components/AccountMenuButton/AccountMenuButtonView.d.ts +0 -1
- package/dist/types/wallet/src/react/components/AccountMenuButton/AccountsSection.d.ts +0 -1
- package/dist/types/wallet/src/react/components/AccountMenuButton/AuthenticationMethodsModal.d.ts +0 -1
- package/dist/types/wallet/src/react/components/AccountMenuButton/ExportKeysSection.d.ts +0 -1
- package/dist/types/wallet/src/react/components/AccountMenuButton/LinkedDevicesModal.d.ts +0 -1
- package/dist/types/wallet/src/react/components/AccountMenuButton/ProfileDropdown.d.ts +0 -1
- package/dist/types/wallet/src/react/components/AccountMenuButton/WalletSettingsLayout.d.ts +0 -1
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/GlobeIcon.d.ts +1 -1
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/HoverArrowIcon.d.ts +0 -1
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/KeyIcon.d.ts +1 -1
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/LaptopIcon.d.ts +1 -1
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/LinkIcon.d.ts +1 -1
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/LockIcon.d.ts +1 -1
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/LockKeyholeIcon.d.ts +1 -1
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/MailIcon.d.ts +1 -1
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/PlusIcon.d.ts +1 -1
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/RecoveryCodesIcon.d.ts +1 -1
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/ScanIcon.d.ts +1 -1
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/SlidersIcon.d.ts +1 -1
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/SmartphoneIcon.d.ts +1 -1
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/TouchIcon.d.ts +0 -1
- package/dist/types/wallet/src/react/components/AccountMenuButton/index.d.ts +0 -1
- package/dist/types/wallet/src/react/components/AccountMenuButton/types.d.ts +8 -8
- package/dist/types/wallet/src/react/components/ShowQRCode.d.ts +0 -1
- package/dist/types/wallet/src/react/components/VoiceAssistantCard.d.ts +0 -1
- package/dist/types/wallet/src/react/components/theme/design-tokens.d.ts +1 -0
- package/dist/types/wallet/src/react/context/index.d.ts +2 -1
- package/dist/types/wallet/src/react/context/useSeamsContextValue.d.ts +2 -2
- package/dist/types/wallet/src/react/index.d.ts +3 -2
- package/dist/types/wallet/src/react/styles.d.ts +2 -0
- package/dist/types/wallet/src/react/transactionReview/boundCalls.d.ts +57 -57
- package/dist/types/wallet/src/react/types.d.ts +14 -1
- package/dist/types/wallet/src/theme/base-styles.d.ts +4 -4
- package/dist/workers/device-linking-key.worker.js +12 -11
- package/dist/workers/ecdsa-derivation-client.worker.js +146 -48
- package/dist/workers/ecdsa-online-client.worker.js +7 -6
- package/dist/workers/ecdsa-presign-client.worker.js +7 -6
- package/dist/workers/email-otp.worker.js +24 -4
- package/dist/workers/passkey-mpc-export.worker.js +17 -1
- package/dist/workers/passkey-mpc-session.worker.js +2 -1
- package/dist/workers/wallet-custody-ceremony.worker.js +2 -0
- package/package.json +8 -6
- package/dist/esm/react/hooks/useWallet.js +0 -108
- package/dist/esm/sdk/ConfirmationDrawer-BFzQjd1P.js +0 -1
- package/dist/esm/sdk/NonceCoordinator-CDGnEgfI.js +0 -1
- package/dist/esm/sdk/adapters-DsAaBNNY.js +0 -2
- package/dist/esm/sdk/authorizationAdmission-CGinGhXH.js +0 -1
- package/dist/esm/sdk/challengeDelivery-CATQ4u6P.js +0 -1
- package/dist/esm/sdk/domainIds-BzkGsRqO.js +0 -1
- package/dist/esm/sdk/ecdsaCapabilityManifest-DX6TflEz.js +0 -1
- package/dist/esm/sdk/ecdsaDerivationClientWasm-CpjnN4aK.js +0 -1
- package/dist/esm/sdk/export-viewer-host-CV-lSsQF.js +0 -1
- package/dist/esm/sdk/mountExportPrivateKeySurface-CatAhYoG.js +0 -1
- package/dist/esm/sdk/mountRecoveryCodeBackupSurface-DlEb3uD7.js +0 -2
- package/dist/esm/sdk/nearEd25519YaoMaterialActivation-Bo3IOTS-.js +0 -1
- package/dist/esm/sdk/presignaturePool-V10fZpG3.js +0 -1
- package/dist/esm/sdk/registration-DEGZR8kA.js +0 -1
- package/dist/esm/sdk/routerAbNormalSigning-C4P2tDU-.js +0 -1
- package/dist/esm/sdk/runtime-auth-ZcxkQ-XF.js +0 -1
- package/dist/esm/sdk/runtime-preferences-CVt5sLvm.js +0 -1
- package/dist/esm/sdk/runtime-recovery-BzewdcoT.js +0 -1
- package/dist/esm/sdk/secp256k1-CKq7_HD-.js +0 -1
- package/dist/esm/sdk/shared-BywEqTsd.js +0 -6
- package/dist/esm/sdk/signEvmFamilyWithUiConfirmForTempo-DGWmm9n7.js +0 -1
- package/dist/esm/sdk/signNear-XGZBxc_g.js +0 -1
- package/dist/esm/sdk/signatureUses-BKAoDbQd.js +0 -1
- package/dist/esm/sdk/surface-measurement-reporter-DvVHPu_O.js +0 -1
- package/dist/esm/sdk/transactionReviewAdmission-CIvR4W5_.js +0 -1
- package/dist/esm/sdk/walletCustodyEcdsaContinuity-B4fTDL10.js +0 -1
- package/dist/esm/sdk/walletRegistrationSetupPrewarm-B9kpnrbK.js +0 -1
- package/dist/esm/sdk/walletSessionAuthorizationStatus-BL7j2TeM.js +0 -1
- package/dist/esm/sdk/walletSessionAuthorizationStore-DmYe-cDR.js +0 -1
- package/dist/esm/sdk/walletSessionFailure-YuhraC3P.js +0 -1
- package/dist/esm/sdk/webauthnP256-BwgxtG5N.js +0 -1
- package/dist/esm/sdk/webauthnPromptCoordinator-CwJeKiYq.js +0 -1
- package/dist/public/sdk/ConfirmationDrawer-BFzQjd1P.js +0 -1
- package/dist/public/sdk/NonceCoordinator-CDGnEgfI.js +0 -1
- package/dist/public/sdk/adapters-DsAaBNNY.js +0 -2
- package/dist/public/sdk/authorizationAdmission-CGinGhXH.js +0 -1
- package/dist/public/sdk/challengeDelivery-CATQ4u6P.js +0 -1
- package/dist/public/sdk/domainIds-BzkGsRqO.js +0 -1
- package/dist/public/sdk/ecdsaCapabilityManifest-DX6TflEz.js +0 -1
- package/dist/public/sdk/ecdsaDerivationClientWasm-CpjnN4aK.js +0 -1
- package/dist/public/sdk/export-viewer-host-CV-lSsQF.js +0 -1
- package/dist/public/sdk/mountExportPrivateKeySurface-CatAhYoG.js +0 -1
- package/dist/public/sdk/mountRecoveryCodeBackupSurface-DlEb3uD7.js +0 -2
- package/dist/public/sdk/nearEd25519YaoMaterialActivation-Bo3IOTS-.js +0 -1
- package/dist/public/sdk/presignaturePool-V10fZpG3.js +0 -1
- package/dist/public/sdk/registration-DEGZR8kA.js +0 -1
- package/dist/public/sdk/routerAbNormalSigning-C4P2tDU-.js +0 -1
- package/dist/public/sdk/runtime-auth-ZcxkQ-XF.js +0 -1
- package/dist/public/sdk/runtime-preferences-CVt5sLvm.js +0 -1
- package/dist/public/sdk/runtime-recovery-BzewdcoT.js +0 -1
- package/dist/public/sdk/secp256k1-CKq7_HD-.js +0 -1
- package/dist/public/sdk/shared-BywEqTsd.js +0 -6
- package/dist/public/sdk/signEvmFamilyWithUiConfirmForTempo-DGWmm9n7.js +0 -1
- package/dist/public/sdk/signNear-XGZBxc_g.js +0 -1
- package/dist/public/sdk/signatureUses-BKAoDbQd.js +0 -1
- package/dist/public/sdk/surface-measurement-reporter-DvVHPu_O.js +0 -1
- package/dist/public/sdk/transactionReviewAdmission-CIvR4W5_.js +0 -1
- package/dist/public/sdk/walletCustodyEcdsaContinuity-B4fTDL10.js +0 -1
- package/dist/public/sdk/walletRegistrationSetupPrewarm-B9kpnrbK.js +0 -1
- package/dist/public/sdk/walletSessionAuthorizationStatus-BL7j2TeM.js +0 -1
- package/dist/public/sdk/walletSessionAuthorizationStore-DmYe-cDR.js +0 -1
- package/dist/public/sdk/walletSessionFailure-YuhraC3P.js +0 -1
- package/dist/public/sdk/webauthnP256-BwgxtG5N.js +0 -1
- package/dist/public/sdk/webauthnPromptCoordinator-CwJeKiYq.js +0 -1
|
@@ -2,14 +2,12 @@ import { DEFAULT_CONFIRMATION_CONFIG } from "../../../core/types/signer-worker.j
|
|
|
2
2
|
//#region src/SeamsWeb/walletIframe/client/preferenceState.ts
|
|
3
3
|
/** Application-origin projection. It has no persistence or signing dependencies. */
|
|
4
4
|
var ClientPreferenceState = class {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
this.disposed = false;
|
|
12
|
-
}
|
|
5
|
+
currentWalletId = null;
|
|
6
|
+
confirmed = /* @__PURE__ */ new Map();
|
|
7
|
+
pending = /* @__PURE__ */ new Map();
|
|
8
|
+
configurationListeners = /* @__PURE__ */ new Set();
|
|
9
|
+
walletListeners = /* @__PURE__ */ new Set();
|
|
10
|
+
disposed = false;
|
|
13
11
|
getCurrentWalletId() {
|
|
14
12
|
return this.currentWalletId;
|
|
15
13
|
}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { toError } from "../../../shared-ts/src/utils/errors.js";
|
|
2
2
|
//#region src/SeamsWeb/walletIframe/client/preferences.ts
|
|
3
3
|
var PreferenceWrite = class {
|
|
4
|
+
state = { kind: "pending" };
|
|
5
|
+
settled;
|
|
6
|
+
resolve;
|
|
4
7
|
constructor(id, walletId, patch) {
|
|
5
8
|
this.id = id;
|
|
6
9
|
this.walletId = walletId;
|
|
7
10
|
this.patch = patch;
|
|
8
|
-
this.state = { kind: "pending" };
|
|
9
11
|
this.settled = new Promise(this.captureResolution.bind(this));
|
|
10
12
|
}
|
|
11
13
|
settle(state) {
|
|
@@ -38,13 +40,13 @@ function createApplicationPreferences(state, walletIframe) {
|
|
|
38
40
|
};
|
|
39
41
|
}
|
|
40
42
|
var ApplicationPreferences = class {
|
|
43
|
+
queue = Promise.resolve();
|
|
44
|
+
writes = /* @__PURE__ */ new Map();
|
|
45
|
+
nextId = 0;
|
|
46
|
+
disposed = false;
|
|
41
47
|
constructor(state, walletIframe) {
|
|
42
48
|
this.state = state;
|
|
43
49
|
this.walletIframe = walletIframe;
|
|
44
|
-
this.queue = Promise.resolve();
|
|
45
|
-
this.writes = /* @__PURE__ */ new Map();
|
|
46
|
-
this.nextId = 0;
|
|
47
|
-
this.disposed = false;
|
|
48
50
|
}
|
|
49
51
|
setConfirmationBehavior(behavior) {
|
|
50
52
|
this.setConfirmationConfig({ behavior });
|
|
@@ -12,8 +12,9 @@ import { isDeviceLinkEmailOtpBaseFactorSelectionProgressV1, isDeviceLinkTargetFa
|
|
|
12
12
|
* - Event Statistics: Tracks counts/timestamps for debugging
|
|
13
13
|
*/
|
|
14
14
|
var OnEventsProgressBus = class {
|
|
15
|
+
subs = /* @__PURE__ */ new Map();
|
|
16
|
+
logger;
|
|
15
17
|
constructor(logger) {
|
|
16
|
-
this.subs = /* @__PURE__ */ new Map();
|
|
17
18
|
this.logger = logger;
|
|
18
19
|
}
|
|
19
20
|
/**
|
|
@@ -427,11 +427,11 @@ function walletIframeSurfaceBusyError(detail) {
|
|
|
427
427
|
return error;
|
|
428
428
|
}
|
|
429
429
|
var WalletIframeConnectionClosedRequestError = class extends Error {
|
|
430
|
+
code = "connection_closed";
|
|
430
431
|
constructor(requestId, connectionId, requestType) {
|
|
431
432
|
super(`Wallet iframe connection closed while handling ${requestType}`);
|
|
432
433
|
this.requestId = requestId;
|
|
433
434
|
this.connectionId = connectionId;
|
|
434
|
-
this.code = "connection_closed";
|
|
435
435
|
this.name = "WalletIframeConnectionClosedRequestError";
|
|
436
436
|
}
|
|
437
437
|
};
|
|
@@ -528,114 +528,72 @@ function assertNeverSdkLifecycleEventName(value) {
|
|
|
528
528
|
throw new Error(`Unsupported SDK lifecycle event: ${String(value)}`);
|
|
529
529
|
}
|
|
530
530
|
var WalletIframeRouter = class {
|
|
531
|
+
placement = createIframePlacementCommands(this.post.bind(this));
|
|
532
|
+
walletSessionReads = /* @__PURE__ */ new Map();
|
|
533
|
+
opts;
|
|
534
|
+
transport;
|
|
535
|
+
state = {
|
|
536
|
+
port: null,
|
|
537
|
+
connectionId: null,
|
|
538
|
+
ready: false,
|
|
539
|
+
configured: false,
|
|
540
|
+
configurationInFlight: null,
|
|
541
|
+
initInFlight: null,
|
|
542
|
+
hostedWalletSessionInFlight: null,
|
|
543
|
+
hostedWalletSessionExpiresAtMs: 0,
|
|
544
|
+
hostedWalletSessionSource: null,
|
|
545
|
+
pending: /* @__PURE__ */ new Map(),
|
|
546
|
+
reqCounter: 0
|
|
547
|
+
};
|
|
548
|
+
listeners = {
|
|
549
|
+
connectionClosed: /* @__PURE__ */ new Set(),
|
|
550
|
+
sessionChanged: /* @__PURE__ */ new Set(),
|
|
551
|
+
preferencesChanged: /* @__PURE__ */ new Set(),
|
|
552
|
+
hostedAuthMenuExternalAuthRequest: /* @__PURE__ */ new Set(),
|
|
553
|
+
sdkLifecycleEvent: /* @__PURE__ */ new Set()
|
|
554
|
+
};
|
|
555
|
+
expiredSigningSessionsByWallet = /* @__PURE__ */ new Map();
|
|
556
|
+
exactSessionState = null;
|
|
557
|
+
sessionSelectionGeneration = 0;
|
|
558
|
+
sessionObservationRevision = -1;
|
|
559
|
+
walletRuntimePreparedConnectionId = null;
|
|
560
|
+
lastPreferencesChangedPayload = null;
|
|
561
|
+
mirroredConfirmationUiMode = null;
|
|
562
|
+
progressBus;
|
|
563
|
+
debug = false;
|
|
564
|
+
walletOriginUrl;
|
|
565
|
+
walletOriginOrigin;
|
|
566
|
+
overlayState;
|
|
567
|
+
walletIframeSurface = hiddenWalletIframeSurface();
|
|
568
|
+
transactionReceipt = null;
|
|
569
|
+
surfaceRenderer;
|
|
570
|
+
activeSurfaceMeasurement = null;
|
|
571
|
+
activeSurfaceMeasurementUnavailable = false;
|
|
572
|
+
surfaceGeneration = 0;
|
|
573
|
+
activeSurfaceMeasurementGeneration = 0;
|
|
574
|
+
surfaceViewportListenersAttached = false;
|
|
575
|
+
surfaceLayoutObserver = null;
|
|
576
|
+
measurementFallbackTimer = null;
|
|
577
|
+
measurementFallbackGeneration = 0;
|
|
578
|
+
disposed = false;
|
|
579
|
+
reviews = /* @__PURE__ */ new Map();
|
|
580
|
+
reviewCancellationTimers = /* @__PURE__ */ new Map();
|
|
581
|
+
reviewIdentityGeneration = 0;
|
|
582
|
+
reviewWaiters = /* @__PURE__ */ new Map();
|
|
583
|
+
reviewSessionDeadline = null;
|
|
584
|
+
reviewGeneration = 0;
|
|
585
|
+
reviewResizeObserver = null;
|
|
586
|
+
reviewSurfaceMeasurement;
|
|
587
|
+
reviewMutationObserver = null;
|
|
588
|
+
transactionSurfaceQueue = new WalletIframeTransactionSurfaceQueue();
|
|
589
|
+
hostedAuthMenuRequestIds = /* @__PURE__ */ new Map();
|
|
590
|
+
hostedAuthMenuConnectionIds = /* @__PURE__ */ new Map();
|
|
591
|
+
hostedAuthMenuAnchors = /* @__PURE__ */ new Map();
|
|
592
|
+
hostedAuthMenuAnchorTrackingFrame = null;
|
|
593
|
+
hostedAuthMenuAnchorTrackingSession = null;
|
|
594
|
+
hostedAuthMenuAnchorTrackingDeadlineMs = 0;
|
|
595
|
+
cancelledHostedAuthMenuSessions = /* @__PURE__ */ new Set();
|
|
531
596
|
constructor(options) {
|
|
532
|
-
this.placement = createIframePlacementCommands(this.post.bind(this));
|
|
533
|
-
this.walletSessionReads = /* @__PURE__ */ new Map();
|
|
534
|
-
this.state = {
|
|
535
|
-
port: null,
|
|
536
|
-
connectionId: null,
|
|
537
|
-
ready: false,
|
|
538
|
-
configured: false,
|
|
539
|
-
configurationInFlight: null,
|
|
540
|
-
initInFlight: null,
|
|
541
|
-
hostedWalletSessionInFlight: null,
|
|
542
|
-
hostedWalletSessionExpiresAtMs: 0,
|
|
543
|
-
hostedWalletSessionSource: null,
|
|
544
|
-
pending: /* @__PURE__ */ new Map(),
|
|
545
|
-
reqCounter: 0
|
|
546
|
-
};
|
|
547
|
-
this.listeners = {
|
|
548
|
-
connectionClosed: /* @__PURE__ */ new Set(),
|
|
549
|
-
sessionChanged: /* @__PURE__ */ new Set(),
|
|
550
|
-
preferencesChanged: /* @__PURE__ */ new Set(),
|
|
551
|
-
hostedAuthMenuExternalAuthRequest: /* @__PURE__ */ new Set(),
|
|
552
|
-
sdkLifecycleEvent: /* @__PURE__ */ new Set()
|
|
553
|
-
};
|
|
554
|
-
this.expiredSigningSessionsByWallet = /* @__PURE__ */ new Map();
|
|
555
|
-
this.exactSessionState = null;
|
|
556
|
-
this.sessionSelectionGeneration = 0;
|
|
557
|
-
this.sessionObservationRevision = -1;
|
|
558
|
-
this.walletRuntimePreparedConnectionId = null;
|
|
559
|
-
this.lastPreferencesChangedPayload = null;
|
|
560
|
-
this.mirroredConfirmationUiMode = null;
|
|
561
|
-
this.debug = false;
|
|
562
|
-
this.walletIframeSurface = hiddenWalletIframeSurface();
|
|
563
|
-
this.transactionReceipt = null;
|
|
564
|
-
this.activeSurfaceMeasurement = null;
|
|
565
|
-
this.activeSurfaceMeasurementUnavailable = false;
|
|
566
|
-
this.surfaceGeneration = 0;
|
|
567
|
-
this.activeSurfaceMeasurementGeneration = 0;
|
|
568
|
-
this.surfaceViewportListenersAttached = false;
|
|
569
|
-
this.surfaceLayoutObserver = null;
|
|
570
|
-
this.measurementFallbackTimer = null;
|
|
571
|
-
this.measurementFallbackGeneration = 0;
|
|
572
|
-
this.disposed = false;
|
|
573
|
-
this.reviews = /* @__PURE__ */ new Map();
|
|
574
|
-
this.reviewCancellationTimers = /* @__PURE__ */ new Map();
|
|
575
|
-
this.reviewIdentityGeneration = 0;
|
|
576
|
-
this.reviewWaiters = /* @__PURE__ */ new Map();
|
|
577
|
-
this.reviewSessionDeadline = null;
|
|
578
|
-
this.reviewGeneration = 0;
|
|
579
|
-
this.reviewResizeObserver = null;
|
|
580
|
-
this.reviewMutationObserver = null;
|
|
581
|
-
this.transactionSurfaceQueue = new WalletIframeTransactionSurfaceQueue();
|
|
582
|
-
this.hostedAuthMenuRequestIds = /* @__PURE__ */ new Map();
|
|
583
|
-
this.hostedAuthMenuConnectionIds = /* @__PURE__ */ new Map();
|
|
584
|
-
this.hostedAuthMenuAnchors = /* @__PURE__ */ new Map();
|
|
585
|
-
this.hostedAuthMenuAnchorTrackingFrame = null;
|
|
586
|
-
this.hostedAuthMenuAnchorTrackingSession = null;
|
|
587
|
-
this.hostedAuthMenuAnchorTrackingDeadlineMs = 0;
|
|
588
|
-
this.cancelledHostedAuthMenuSessions = /* @__PURE__ */ new Set();
|
|
589
|
-
this.refreshReviewGeometry = () => {
|
|
590
|
-
const surface = this.walletIframeSurface;
|
|
591
|
-
if (surface.kind !== "modal_transaction_review") return;
|
|
592
|
-
const slot = this.reviews.get(surface.identity.requestId)?.reservation.slot;
|
|
593
|
-
if (slot?.firstElementChild) this.reviewResizeObserver?.observe(slot.firstElementChild);
|
|
594
|
-
this.renderActiveWalletIframeSurface();
|
|
595
|
-
};
|
|
596
|
-
this.handleSurfaceViewportChange = () => {
|
|
597
|
-
if (this.walletIframeSurface.kind === "hidden") return;
|
|
598
|
-
this.renderActiveWalletIframeSurface();
|
|
599
|
-
};
|
|
600
|
-
this.handleMeasurementFallbackTimeout = () => {
|
|
601
|
-
this.measurementFallbackTimer = null;
|
|
602
|
-
this.markMeasurementUnavailable(this.measurementFallbackGeneration);
|
|
603
|
-
};
|
|
604
|
-
this.handleOverlayDismiss = (event) => {
|
|
605
|
-
const surface = this.walletIframeSurface;
|
|
606
|
-
if (surface.kind === "hidden") return;
|
|
607
|
-
if (surface.identity.surfaceId !== event.identity.surfaceId || surface.identity.requestId !== event.identity.requestId) return;
|
|
608
|
-
if (surface.kind === "modal_auth_menu") {
|
|
609
|
-
if (surface.authMenuSessionId !== event.authMenuSessionId) return;
|
|
610
|
-
this.cancelHostedAuthMenuWithReason(surface.authMenuSessionId, "close_button");
|
|
611
|
-
return;
|
|
612
|
-
}
|
|
613
|
-
if (event.authMenuSessionId !== void 0) return;
|
|
614
|
-
if (this.transactionReceipt?.requestId === surface.identity.requestId) {
|
|
615
|
-
this.state.port?.postMessage({
|
|
616
|
-
type: "PM_SET_TRANSACTION_VIEW",
|
|
617
|
-
payload: {
|
|
618
|
-
requestId: surface.identity.requestId,
|
|
619
|
-
view: "toast"
|
|
620
|
-
}
|
|
621
|
-
});
|
|
622
|
-
return;
|
|
623
|
-
}
|
|
624
|
-
this.cancelRequest(surface.identity.requestId);
|
|
625
|
-
};
|
|
626
|
-
this.handleTransportConnectionClosed = () => {
|
|
627
|
-
const connectionId = this.state.connectionId;
|
|
628
|
-
if (connectionId) this.handleConnectionClosed(connectionId);
|
|
629
|
-
};
|
|
630
|
-
this.updateHostedAuthMenuAnchorPosition = (timestampMs) => {
|
|
631
|
-
this.hostedAuthMenuAnchorTrackingFrame = null;
|
|
632
|
-
const authMenuSessionId = this.hostedAuthMenuAnchorTrackingSession;
|
|
633
|
-
if (!authMenuSessionId) return;
|
|
634
|
-
const surface = this.walletIframeSurface;
|
|
635
|
-
if (surface.kind === "modal_auth_menu" && surface.authMenuSessionId === authMenuSessionId) this.renderActiveWalletIframeSurface();
|
|
636
|
-
if (timestampMs >= this.hostedAuthMenuAnchorTrackingDeadlineMs) return;
|
|
637
|
-
this.hostedAuthMenuAnchorTrackingFrame = requestAnimationFrame(this.updateHostedAuthMenuAnchorPosition);
|
|
638
|
-
};
|
|
639
597
|
if (!options?.walletOrigin) throw new Error("[WalletIframeRouter] walletOrigin is required when using the wallet iframe");
|
|
640
598
|
let parsedOrigin;
|
|
641
599
|
try {
|
|
@@ -793,6 +751,13 @@ var WalletIframeRouter = class {
|
|
|
793
751
|
assertReviewIdentity(connectionId, generation) {
|
|
794
752
|
if (this.state.connectionId !== connectionId || generation !== this.reviewIdentityGeneration || this.disposed) throw new TransactionReviewError("review_identity_changed", "The wallet connection or signing session changed");
|
|
795
753
|
}
|
|
754
|
+
refreshReviewGeometry = () => {
|
|
755
|
+
const surface = this.walletIframeSurface;
|
|
756
|
+
if (surface.kind !== "modal_transaction_review") return;
|
|
757
|
+
const slot = this.reviews.get(surface.identity.requestId)?.reservation.slot;
|
|
758
|
+
if (slot?.firstElementChild) this.reviewResizeObserver?.observe(slot.firstElementChild);
|
|
759
|
+
this.renderActiveWalletIframeSurface();
|
|
760
|
+
};
|
|
796
761
|
finishReviewReservation(requestId) {
|
|
797
762
|
this.reviews.delete(requestId);
|
|
798
763
|
this.clearReviewCancellationTimer(requestId);
|
|
@@ -935,12 +900,20 @@ var WalletIframeRouter = class {
|
|
|
935
900
|
this.surfaceViewportListenersAttached = false;
|
|
936
901
|
this.cancelMeasurementFallback();
|
|
937
902
|
}
|
|
903
|
+
handleSurfaceViewportChange = () => {
|
|
904
|
+
if (this.walletIframeSurface.kind === "hidden") return;
|
|
905
|
+
this.renderActiveWalletIframeSurface();
|
|
906
|
+
};
|
|
938
907
|
scheduleMeasurementFallback(generation) {
|
|
939
908
|
this.cancelMeasurementFallback();
|
|
940
909
|
if (this.walletIframeSurface.kind === "hidden") return;
|
|
941
910
|
this.measurementFallbackGeneration = generation;
|
|
942
911
|
this.measurementFallbackTimer = window.setTimeout(this.handleMeasurementFallbackTimeout, WALLET_IFRAME_SURFACE_MEASUREMENT_FALLBACK_TIMEOUT_MS);
|
|
943
912
|
}
|
|
913
|
+
handleMeasurementFallbackTimeout = () => {
|
|
914
|
+
this.measurementFallbackTimer = null;
|
|
915
|
+
this.markMeasurementUnavailable(this.measurementFallbackGeneration);
|
|
916
|
+
};
|
|
944
917
|
/**
|
|
945
918
|
* A request that is still reporting progress has not stalled, so its surface
|
|
946
919
|
* must not be declared unmeasurable while it works toward mounting.
|
|
@@ -964,6 +937,32 @@ var WalletIframeRouter = class {
|
|
|
964
937
|
this.measurementFallbackTimer = null;
|
|
965
938
|
}
|
|
966
939
|
}
|
|
940
|
+
handleOverlayDismiss = (event) => {
|
|
941
|
+
const surface = this.walletIframeSurface;
|
|
942
|
+
if (surface.kind === "hidden") return;
|
|
943
|
+
if (surface.identity.surfaceId !== event.identity.surfaceId || surface.identity.requestId !== event.identity.requestId) return;
|
|
944
|
+
if (surface.kind === "modal_auth_menu") {
|
|
945
|
+
if (surface.authMenuSessionId !== event.authMenuSessionId) return;
|
|
946
|
+
this.cancelHostedAuthMenuWithReason(surface.authMenuSessionId, "close_button");
|
|
947
|
+
return;
|
|
948
|
+
}
|
|
949
|
+
if (event.authMenuSessionId !== void 0) return;
|
|
950
|
+
if (this.transactionReceipt?.requestId === surface.identity.requestId) {
|
|
951
|
+
this.state.port?.postMessage({
|
|
952
|
+
type: "PM_SET_TRANSACTION_VIEW",
|
|
953
|
+
payload: {
|
|
954
|
+
requestId: surface.identity.requestId,
|
|
955
|
+
view: "toast"
|
|
956
|
+
}
|
|
957
|
+
});
|
|
958
|
+
return;
|
|
959
|
+
}
|
|
960
|
+
this.cancelRequest(surface.identity.requestId);
|
|
961
|
+
};
|
|
962
|
+
handleTransportConnectionClosed = () => {
|
|
963
|
+
const connectionId = this.state.connectionId;
|
|
964
|
+
if (connectionId) this.handleConnectionClosed(connectionId);
|
|
965
|
+
};
|
|
967
966
|
surfaceIdentityEqual(left, right) {
|
|
968
967
|
if (left.kind === "hidden" || right.kind === "hidden") return left.kind === right.kind;
|
|
969
968
|
if (left.connectionId !== right.connectionId || left.identity.surfaceId !== right.identity.surfaceId || left.identity.requestId !== right.identity.requestId) return false;
|
|
@@ -1065,6 +1064,15 @@ var WalletIframeRouter = class {
|
|
|
1065
1064
|
this.hostedAuthMenuAnchorTrackingDeadlineMs = performance.now() + 750;
|
|
1066
1065
|
this.hostedAuthMenuAnchorTrackingFrame = requestAnimationFrame(this.updateHostedAuthMenuAnchorPosition);
|
|
1067
1066
|
}
|
|
1067
|
+
updateHostedAuthMenuAnchorPosition = (timestampMs) => {
|
|
1068
|
+
this.hostedAuthMenuAnchorTrackingFrame = null;
|
|
1069
|
+
const authMenuSessionId = this.hostedAuthMenuAnchorTrackingSession;
|
|
1070
|
+
if (!authMenuSessionId) return;
|
|
1071
|
+
const surface = this.walletIframeSurface;
|
|
1072
|
+
if (surface.kind === "modal_auth_menu" && surface.authMenuSessionId === authMenuSessionId) this.renderActiveWalletIframeSurface();
|
|
1073
|
+
if (timestampMs >= this.hostedAuthMenuAnchorTrackingDeadlineMs) return;
|
|
1074
|
+
this.hostedAuthMenuAnchorTrackingFrame = requestAnimationFrame(this.updateHostedAuthMenuAnchorPosition);
|
|
1075
|
+
};
|
|
1068
1076
|
stopHostedAuthMenuAnchorTracking(authMenuSessionId) {
|
|
1069
1077
|
if (this.hostedAuthMenuAnchorTrackingSession !== authMenuSessionId) return;
|
|
1070
1078
|
this.hostedAuthMenuAnchorTrackingSession = null;
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
//#region src/SeamsWeb/walletIframe/client/surface/transactionSurfaceQueue.ts
|
|
2
2
|
const MAX_DEADLINE_TIMER_DELAY_MS = 2147483647;
|
|
3
3
|
var TransactionSurfaceLeaseDeferred = class {
|
|
4
|
+
promise;
|
|
5
|
+
resolvePromise;
|
|
6
|
+
rejectPromise;
|
|
4
7
|
constructor() {
|
|
5
8
|
this.promise = new Promise(this.capturePromise.bind(this));
|
|
6
9
|
}
|
|
@@ -16,9 +19,12 @@ var TransactionSurfaceLeaseDeferred = class {
|
|
|
16
19
|
}
|
|
17
20
|
};
|
|
18
21
|
var TransactionSurfaceLease = class {
|
|
22
|
+
kind = "wallet_iframe_transaction_surface_lease_v1";
|
|
23
|
+
requestId;
|
|
24
|
+
queue;
|
|
25
|
+
leaseId;
|
|
26
|
+
released = false;
|
|
19
27
|
constructor(args) {
|
|
20
|
-
this.kind = "wallet_iframe_transaction_surface_lease_v1";
|
|
21
|
-
this.released = false;
|
|
22
28
|
this.queue = args.queue;
|
|
23
29
|
this.leaseId = args.leaseId;
|
|
24
30
|
this.requestId = args.requestId;
|
|
@@ -30,11 +36,9 @@ var TransactionSurfaceLease = class {
|
|
|
30
36
|
}
|
|
31
37
|
};
|
|
32
38
|
var WalletIframeTransactionSurfaceQueue = class {
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
this.nextLeaseId = 0;
|
|
37
|
-
}
|
|
39
|
+
state = { kind: "idle" };
|
|
40
|
+
waiters = [];
|
|
41
|
+
nextLeaseId = 0;
|
|
38
42
|
acquire(args) {
|
|
39
43
|
if (args.deadline.kind === "deadline" && Date.now() >= args.deadline.atMs) return Promise.reject(this.timeoutError(args.requestId));
|
|
40
44
|
if (this.state.kind === "idle" && this.waiters.length === 0) return Promise.resolve(this.startLease(args.requestId));
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { TransactionReviewError, assertTransactionReviewValid } from "../shared/transactionReview.js";
|
|
2
2
|
//#region src/SeamsWeb/walletIframe/client/transactionReviewReservation.ts
|
|
3
3
|
var TransactionReviewReservation = class {
|
|
4
|
+
currentState = { kind: "reviewing" };
|
|
5
|
+
listeners = /* @__PURE__ */ new Set();
|
|
6
|
+
metadata;
|
|
4
7
|
constructor(connectionId, identity, slot, title, validity, confirmationConfig, generation, lease, assertCurrent, cancelRequest, finishRequest, resumeRequest) {
|
|
5
8
|
this.connectionId = connectionId;
|
|
6
9
|
this.identity = identity;
|
|
@@ -12,8 +15,6 @@ var TransactionReviewReservation = class {
|
|
|
12
15
|
this.cancelRequest = cancelRequest;
|
|
13
16
|
this.finishRequest = finishRequest;
|
|
14
17
|
this.resumeRequest = resumeRequest;
|
|
15
|
-
this.currentState = { kind: "reviewing" };
|
|
16
|
-
this.listeners = /* @__PURE__ */ new Set();
|
|
17
18
|
this.metadata = Object.freeze({
|
|
18
19
|
kind: "transaction_review_v1",
|
|
19
20
|
connectionId,
|
|
@@ -51,56 +51,60 @@ function roundTransportDurationMs(startedAt) {
|
|
|
51
51
|
return Math.max(0, Math.round(performance.now() - startedAt));
|
|
52
52
|
}
|
|
53
53
|
var IframeTransport = class {
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
54
|
+
opts;
|
|
55
|
+
iframeEl = null;
|
|
56
|
+
connectionClosed = false;
|
|
57
|
+
connectionClosedListeners = /* @__PURE__ */ new Set();
|
|
58
|
+
serviceBooted = false;
|
|
59
|
+
connectInFlight = null;
|
|
60
|
+
connectedPort = null;
|
|
61
|
+
iframeInitialLoadSeen = false;
|
|
62
|
+
handshakeComplete = false;
|
|
63
|
+
walletServiceUrl;
|
|
64
|
+
walletOrigin;
|
|
65
|
+
testOptions;
|
|
66
|
+
debug = false;
|
|
67
|
+
lastDiagnostics = createZeroWalletIframeTransportDiagnostics();
|
|
68
|
+
onIframeLoad = () => {
|
|
69
|
+
if (!this.iframeInitialLoadSeen) {
|
|
70
|
+
this.iframeInitialLoadSeen = true;
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
if (!this.handshakeComplete || this.connectionClosed) return;
|
|
62
74
|
this.handshakeComplete = false;
|
|
63
|
-
|
|
64
|
-
this.
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
this.
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
this.serviceBooted = true;
|
|
97
|
-
return;
|
|
98
|
-
}
|
|
99
|
-
if (type === IframeMessage.HostLog) {
|
|
100
|
-
if (this.debug) console.debug("[IframeTransport][wallet-log]", data.payload);
|
|
101
|
-
return;
|
|
102
|
-
}
|
|
103
|
-
};
|
|
75
|
+
const port = this.connectedPort;
|
|
76
|
+
this.connectedPort = null;
|
|
77
|
+
try {
|
|
78
|
+
port?.close();
|
|
79
|
+
} catch {}
|
|
80
|
+
const iframe = this.iframeEl;
|
|
81
|
+
this.iframeEl = null;
|
|
82
|
+
iframe?.remove();
|
|
83
|
+
this.emitConnectionClosed();
|
|
84
|
+
};
|
|
85
|
+
onWindowMessage = (e) => {
|
|
86
|
+
const data = e.data;
|
|
87
|
+
if (!isObject(data)) return;
|
|
88
|
+
const type = data.type;
|
|
89
|
+
if (type === IframeMessage.HostDebugOrigin) {
|
|
90
|
+
if (this.debug) console.debug("[IframeTransport][host-origin]", {
|
|
91
|
+
origin: data.origin,
|
|
92
|
+
href: data.href,
|
|
93
|
+
eventOrigin: e.origin
|
|
94
|
+
});
|
|
95
|
+
return;
|
|
96
|
+
}
|
|
97
|
+
if (e.origin !== this.walletOrigin) return;
|
|
98
|
+
if (type === IframeMessage.HostBooted) {
|
|
99
|
+
this.serviceBooted = true;
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
102
|
+
if (type === IframeMessage.HostLog) {
|
|
103
|
+
if (this.debug) console.debug("[IframeTransport][wallet-log]", data.payload);
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
106
|
+
};
|
|
107
|
+
constructor(options) {
|
|
104
108
|
this.opts = {
|
|
105
109
|
servicePath: "/wallet-service",
|
|
106
110
|
connectTimeoutMs: 8e3,
|
|
@@ -8,18 +8,22 @@ function createAbortError() {
|
|
|
8
8
|
}
|
|
9
9
|
const WALLET_IFRAME_READY_TIMEOUT_CODE = "WALLET_IFRAME_READY_TIMEOUT";
|
|
10
10
|
var WalletIframeReadyTimeoutError = class extends Error {
|
|
11
|
+
code = WALLET_IFRAME_READY_TIMEOUT_CODE;
|
|
12
|
+
elapsedMs;
|
|
13
|
+
timeoutMs;
|
|
11
14
|
constructor(args) {
|
|
12
15
|
super(`[IframeTransport] Wallet iframe READY timed out after ${args.elapsedMs}ms`);
|
|
13
|
-
this.code = WALLET_IFRAME_READY_TIMEOUT_CODE;
|
|
14
16
|
this.name = "WalletIframeReadyTimeoutError";
|
|
15
17
|
this.elapsedMs = args.elapsedMs;
|
|
16
18
|
this.timeoutMs = args.timeoutMs;
|
|
17
19
|
}
|
|
18
20
|
};
|
|
19
21
|
var WalletIframeProtocolVersionMismatchError = class extends Error {
|
|
22
|
+
code = WALLET_IFRAME_PROTOCOL_VERSION_MISMATCH;
|
|
23
|
+
expectedProtocolVersion;
|
|
24
|
+
receivedProtocolVersion;
|
|
20
25
|
constructor(args) {
|
|
21
26
|
super(`[IframeTransport] Wallet iframe protocol version mismatch: expected ${args.expectedProtocolVersion}, received ${args.receivedProtocolVersion ?? "missing"}`);
|
|
22
|
-
this.code = WALLET_IFRAME_PROTOCOL_VERSION_MISMATCH;
|
|
23
27
|
this.name = "WalletIframeProtocolVersionMismatchError";
|
|
24
28
|
this.expectedProtocolVersion = args.expectedProtocolVersion;
|
|
25
29
|
this.receivedProtocolVersion = args.receivedProtocolVersion;
|
|
@@ -18,20 +18,25 @@ function rejectAbortedConnection(signal, _resolve, reject) {
|
|
|
18
18
|
* This keeps `SeamsWeb` focused on business flows while preserving one cohesive iframe domain module.
|
|
19
19
|
*/
|
|
20
20
|
var WalletIframeCoordinator = class {
|
|
21
|
+
configs;
|
|
22
|
+
userPreferences;
|
|
23
|
+
getAppearance;
|
|
24
|
+
iframeRouter = null;
|
|
25
|
+
connection = { kind: "idle" };
|
|
26
|
+
connectionGeneration = 0;
|
|
27
|
+
connectionListeners = /* @__PURE__ */ new Set();
|
|
28
|
+
walletIframeCloseUnsubscribe = null;
|
|
29
|
+
walletIframePrefsUnsubscribe = null;
|
|
30
|
+
sessionDeliveryRevision = 0;
|
|
31
|
+
walletIframeSessionUnsubscribe = null;
|
|
32
|
+
sessionListeners = /* @__PURE__ */ new Set();
|
|
33
|
+
walletIframeLifecycleUnsubscribe = null;
|
|
34
|
+
walletIframeAuthMenuUnsubscribe = null;
|
|
35
|
+
sdkLifecycleEventListeners = /* @__PURE__ */ new Set();
|
|
36
|
+
hostedAuthMenuExternalAuthRequestListeners = /* @__PURE__ */ new Set();
|
|
37
|
+
forwardSdkLifecycleEventListener;
|
|
38
|
+
forwardHostedAuthMenuExternalAuthRequestListener;
|
|
21
39
|
constructor(deps) {
|
|
22
|
-
this.iframeRouter = null;
|
|
23
|
-
this.connection = { kind: "idle" };
|
|
24
|
-
this.connectionGeneration = 0;
|
|
25
|
-
this.connectionListeners = /* @__PURE__ */ new Set();
|
|
26
|
-
this.walletIframeCloseUnsubscribe = null;
|
|
27
|
-
this.walletIframePrefsUnsubscribe = null;
|
|
28
|
-
this.sessionDeliveryRevision = 0;
|
|
29
|
-
this.walletIframeSessionUnsubscribe = null;
|
|
30
|
-
this.sessionListeners = /* @__PURE__ */ new Set();
|
|
31
|
-
this.walletIframeLifecycleUnsubscribe = null;
|
|
32
|
-
this.walletIframeAuthMenuUnsubscribe = null;
|
|
33
|
-
this.sdkLifecycleEventListeners = /* @__PURE__ */ new Set();
|
|
34
|
-
this.hostedAuthMenuExternalAuthRequestListeners = /* @__PURE__ */ new Set();
|
|
35
40
|
this.configs = deps.configs;
|
|
36
41
|
this.userPreferences = deps.userPreferences;
|
|
37
42
|
this.getAppearance = deps.getAppearance;
|
|
@@ -1,4 +1,16 @@
|
|
|
1
1
|
//#region src/SeamsWeb/walletIframe/host/auth-menu/domain.ts
|
|
2
|
+
/** A wait on a prompt outside the menu shares one look: the ring, then the
|
|
3
|
+
* headline, then what to do in that prompt. */
|
|
4
|
+
const AUTH_MENU_WAITING_PROMPTS = {
|
|
5
|
+
passkey: {
|
|
6
|
+
label: "Passkey authentication",
|
|
7
|
+
instruction: "Complete the prompt on your device."
|
|
8
|
+
},
|
|
9
|
+
google: {
|
|
10
|
+
label: "Google sign-in",
|
|
11
|
+
instruction: "Choose your Google account."
|
|
12
|
+
}
|
|
13
|
+
};
|
|
2
14
|
function resolveAuthMenuLoginAccount(accountOptions, selectedAccount) {
|
|
3
15
|
const exactSelection = selectedAccount ? accountOptions.find((account) => account.walletId === selectedAccount.walletId && account.authMethod === selectedAccount.authMethod) : null;
|
|
4
16
|
const sameWalletSelection = selectedAccount ? accountOptions.find((account) => account.walletId === selectedAccount.walletId) : null;
|
|
@@ -82,6 +94,6 @@ function isAuthMenuGoogleActionReady(viewModel) {
|
|
|
82
94
|
return authMenuLoginAllowsEmailOtp(resolveAuthMenuLoginAccount(viewModel.accountOptions, viewModel.selectedAccount));
|
|
83
95
|
}
|
|
84
96
|
//#endregion
|
|
85
|
-
export { isAuthMenuActionReady, isAuthMenuGoogleActionReady, isAuthMenuLoadingStatus, isAuthMenuReady, resolveAuthMenuLoginAccount };
|
|
97
|
+
export { AUTH_MENU_WAITING_PROMPTS, isAuthMenuActionReady, isAuthMenuGoogleActionReady, isAuthMenuLoadingStatus, isAuthMenuReady, resolveAuthMenuLoginAccount };
|
|
86
98
|
|
|
87
99
|
//# sourceMappingURL=domain.js.map
|
|
@@ -75,20 +75,16 @@ function allocateSurfaceMeasurementSequence() {
|
|
|
75
75
|
return sequence;
|
|
76
76
|
}
|
|
77
77
|
var SurfaceMeasurementReporter = class {
|
|
78
|
+
observer;
|
|
79
|
+
latestEntry = null;
|
|
80
|
+
recentPostTimes = [];
|
|
81
|
+
warnedAboutStreaming = false;
|
|
82
|
+
surfaceHasSettled = false;
|
|
83
|
+
animationFrame = null;
|
|
84
|
+
lastSize = null;
|
|
85
|
+
disconnected = false;
|
|
78
86
|
constructor(options) {
|
|
79
87
|
this.options = options;
|
|
80
|
-
this.latestEntry = null;
|
|
81
|
-
this.recentPostTimes = [];
|
|
82
|
-
this.warnedAboutStreaming = false;
|
|
83
|
-
this.surfaceHasSettled = false;
|
|
84
|
-
this.animationFrame = null;
|
|
85
|
-
this.lastSize = null;
|
|
86
|
-
this.disconnected = false;
|
|
87
|
-
this.onResize = (entries) => {
|
|
88
|
-
if (this.disconnected) return;
|
|
89
|
-
this.latestEntry = entries.at(-1) ?? null;
|
|
90
|
-
this.scheduleReport();
|
|
91
|
-
};
|
|
92
88
|
if (typeof ResizeObserver === "function") {
|
|
93
89
|
this.observer = new ResizeObserver(this.onResize);
|
|
94
90
|
this.observer.observe(options.element);
|
|
@@ -107,6 +103,11 @@ var SurfaceMeasurementReporter = class {
|
|
|
107
103
|
this.animationFrame = null;
|
|
108
104
|
this.latestEntry = null;
|
|
109
105
|
}
|
|
106
|
+
onResize = (entries) => {
|
|
107
|
+
if (this.disconnected) return;
|
|
108
|
+
this.latestEntry = entries.at(-1) ?? null;
|
|
109
|
+
this.scheduleReport();
|
|
110
|
+
};
|
|
110
111
|
scheduleReport() {
|
|
111
112
|
if (this.disconnected) return;
|
|
112
113
|
if (this.animationFrame !== null && typeof cancelAnimationFrame === "function") {
|
|
@@ -143,7 +144,7 @@ var SurfaceMeasurementReporter = class {
|
|
|
143
144
|
if (!this.surfaceHasSettled) return;
|
|
144
145
|
if (this.recentPostTimes.length < STREAMING_POSTS_THRESHOLD) return;
|
|
145
146
|
this.warnedAboutStreaming = true;
|
|
146
|
-
console.warn(`[SEAMS] ${this.options.kind} posted ${this.recentPostTimes.length} surface measurements in ${STREAMING_WINDOW_MS}ms after it had settled. Content inside a measured surface must announce a height change once (announceSurfaceResize) instead of animating its own height; the host box cannot follow a moving target
|
|
147
|
+
console.warn(`[SEAMS] ${this.options.kind} posted ${this.recentPostTimes.length} surface measurements in ${STREAMING_WINDOW_MS}ms after it had settled. Content inside a measured surface must announce a height change once (announceSurfaceResize) instead of animating its own height; the host box cannot follow a moving target.`);
|
|
147
148
|
}
|
|
148
149
|
sameSize(size) {
|
|
149
150
|
return this.lastSize?.widthCssPx === size.widthCssPx && this.lastSize?.heightCssPx === size.heightCssPx;
|
|
@@ -9,10 +9,7 @@ import { jsx, jsxs } from "preact/jsx-runtime";
|
|
|
9
9
|
* failure takes that line over, so reporting one never moves the controls.
|
|
10
10
|
*/
|
|
11
11
|
var AuthMenuFooter = class extends Component {
|
|
12
|
-
|
|
13
|
-
super(..._args);
|
|
14
|
-
this.shownNotice = "";
|
|
15
|
-
}
|
|
12
|
+
shownNotice = "";
|
|
16
13
|
render() {
|
|
17
14
|
const { notice, onRetry } = this.props;
|
|
18
15
|
if (notice) this.shownNotice = notice;
|