@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
package/README.md
CHANGED
|
@@ -1,24 +1,26 @@
|
|
|
1
1
|
# Seams Wallet SDK
|
|
2
2
|
|
|
3
|
-
`@seams/wallet` **0.
|
|
3
|
+
`@seams/wallet` **0.15.4** provides browser wallet lifecycle, NEAR and EVM-family
|
|
4
4
|
threshold signing, React components, and hosted wallet runtime assets.
|
|
5
5
|
|
|
6
6
|
## Install
|
|
7
7
|
|
|
8
8
|
```sh
|
|
9
|
-
pnpm add @seams/wallet@0.
|
|
9
|
+
pnpm add @seams/wallet@0.15.4
|
|
10
10
|
```
|
|
11
11
|
|
|
12
12
|
React integrations support React 18 and 19. Import the provider and UI from
|
|
13
13
|
`@seams/wallet/react` and its stylesheet from `@seams/wallet/react/styles`.
|
|
14
14
|
Keep the application package, wallet-origin assets, and
|
|
15
|
-
`@seams/wallet-server@0.
|
|
15
|
+
`@seams/wallet-server@0.15.4` on the matching release. The wallet iframe protocol
|
|
16
|
+
is `16.0.0`. A 0.13 application and a 0.14-or-later wallet host reject each other
|
|
17
|
+
with a protocol version mismatch.
|
|
16
18
|
|
|
17
|
-
##
|
|
19
|
+
## Current API
|
|
18
20
|
|
|
19
|
-
The
|
|
21
|
+
The public API groups calls under `auth`, `connection`, `config`, `events`,
|
|
20
22
|
`registration`, and the chain namespaces. See the
|
|
21
|
-
[
|
|
23
|
+
[browser reference](https://wallet.seams.sh/docs/reference/core).
|
|
22
24
|
Use `auth.lock()` to end the session while retaining valid durable presignatures.
|
|
23
25
|
|
|
24
26
|
Custom email unlock uses a host-owned challenge:
|
|
@@ -42,9 +44,8 @@ For an existing local email method, request with
|
|
|
42
44
|
`cancel()`. Use the replacement challenge returned by a successful resend.
|
|
43
45
|
The SDK selects signers and completes pending activation internally.
|
|
44
46
|
|
|
45
|
-
|
|
46
|
-
and
|
|
47
|
-
assets on the matching release. The 0.8.0 release does not contain them.
|
|
47
|
+
Request email codes only after a user chooses that method. The wallet host owns
|
|
48
|
+
the challenge and its expiry. The application receives the typed challenge handle.
|
|
48
49
|
|
|
49
50
|
## React quick start
|
|
50
51
|
|
|
@@ -92,10 +93,18 @@ recovery material out of app configuration and logs.
|
|
|
92
93
|
|
|
93
94
|
## Signing and lifecycle
|
|
94
95
|
|
|
95
|
-
`useSeams()` exposes
|
|
96
|
-
|
|
97
|
-
`near`
|
|
98
|
-
|
|
96
|
+
`useSeams()` exposes authentication actions, lifecycle state, and the current
|
|
97
|
+
`wallet`. The wallet is null while signed out. An authenticated wallet provides
|
|
98
|
+
`near`, `evm`, and `tempo` signers bound to its identity.
|
|
99
|
+
`wallet.near` is null until a NEAR account is ready. Check registration's pending
|
|
100
|
+
branches and use `registration.waitForNearAccount` before signing NEAR.
|
|
101
|
+
|
|
102
|
+
```tsx
|
|
103
|
+
const { unlock, lock, wallet } = useSeams();
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
Unlock updates the wallet in a subsequent React render. Use the authenticated
|
|
107
|
+
render's wallet in signing handlers. `wallet.walletId` identifies that wallet.
|
|
99
108
|
|
|
100
109
|
The framework-neutral `SeamsWeb` client groups operations under `registration`,
|
|
101
110
|
`auth`, `near`, `evm`, `tempo`, `recovery`, `devices`, and `keys`. Signing can
|
|
@@ -103,7 +112,7 @@ use fresh authorization for one operation; `unlock` provisions a bounded
|
|
|
103
112
|
reusable Wallet Session. An EVM-family signing or export call requires a
|
|
104
113
|
`chainTarget` naming a configured chain.
|
|
105
114
|
|
|
106
|
-
`keys.
|
|
115
|
+
`keys.exportKey` opens a wallet-origin viewer and returns `{ kind: 'exported' }`.
|
|
107
116
|
It does not return a private key to the application. `recovery.syncAccount`
|
|
108
117
|
synchronizes a known wallet's account state; the hosted menu handles recovery
|
|
109
118
|
codes and new-factor verification.
|
|
@@ -151,10 +160,29 @@ wallet use the same home. Travel does not change it. The owner can move a wallet
|
|
|
151
160
|
to another region with the wallet region setting. Automatic region relocation is
|
|
152
161
|
a future capability.
|
|
153
162
|
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
163
|
+
For APAC, registration and relocation request Southeast Asia placement through
|
|
164
|
+
`apac-se`. The hint does not guarantee a city or move existing objects. Operators
|
|
165
|
+
must verify the actual object locations and database primaries.
|
|
166
|
+
|
|
167
|
+
Follow the [upgrade guide](https://wallet.seams.sh/docs/deploy-and-operate/hosted-integration)
|
|
168
|
+
before changing the application, wallet assets, or backend. An incompatible open
|
|
169
|
+
client must reload matching assets before retrying.
|
|
170
|
+
|
|
171
|
+
## Initial loading and registration
|
|
172
|
+
|
|
173
|
+
When the wallet origin stores no wallet, the host answers connection reads from
|
|
174
|
+
its boot code. It loads the runtime when an operation needs it. Call
|
|
175
|
+
`seams.authMenu.prepare()` on sign-in intent to download the sign-in code earlier.
|
|
176
|
+
Mounting `HostedSeamsAuthMenu` starts that download without an additional call.
|
|
177
|
+
|
|
178
|
+
Opening the hosted registration view prepares its wallet and passkey challenge.
|
|
179
|
+
`authMenu.prepare()` only downloads code. A direct `registerWallet()` call starts
|
|
180
|
+
registration setup within that call. See the
|
|
181
|
+
[compiled hosted-menu examples](https://wallet.seams.sh/docs/examples/wallet-setup-and-authentication).
|
|
182
|
+
|
|
183
|
+
Registration can sign before its completion appears in the Console directory.
|
|
184
|
+
The Gateway retries pending directory publications. Until acknowledgment, the
|
|
185
|
+
wallet can be absent from the Console list and unavailable for region moves.
|
|
158
186
|
|
|
159
187
|
## Public entrypoints
|
|
160
188
|
|
|
@@ -166,7 +194,7 @@ show it and reload the current assets. See the
|
|
|
166
194
|
- `@seams/wallet/runtime` — explicit platform ports and custom signing runtime.
|
|
167
195
|
|
|
168
196
|
Use the documented package exports. Agent-lane issuance and VoiceID
|
|
169
|
-
authentication are planned and have no public
|
|
197
|
+
authentication are planned and have no public API in this release.
|
|
170
198
|
|
|
171
199
|
## Develop from source
|
|
172
200
|
|
package/THIRD_PARTY_NOTICES.md
CHANGED
|
@@ -5,7 +5,7 @@ distributed Seams Wallet SDK, server runtime, Wasm, strict Workers, and CLI.
|
|
|
5
5
|
Dependency license expressions come from their package metadata. Packaged
|
|
6
6
|
license and notice wording is reproduced below with normalized whitespace.
|
|
7
7
|
|
|
8
|
-
Inventory:
|
|
8
|
+
Inventory: 450 dependency records (41 npm, 409 Cargo).
|
|
9
9
|
|
|
10
10
|
## Dependency inventory
|
|
11
11
|
|
|
@@ -204,6 +204,7 @@ Inventory: 445 dependency records (41 npm, 404 Cargo).
|
|
|
204
204
|
| cargo | memchr | 2.8.2 | Unlicense OR MIT | Andrew Gallant <jamslam@gmail.com>; bluss |
|
|
205
205
|
| cargo | memchr | 2.8.3 | Unlicense OR MIT | Andrew Gallant <jamslam@gmail.com>; bluss |
|
|
206
206
|
| cargo | minicov | 0.3.8 | Apache-2.0/MIT | Amanieu d'Antras <amanieu@gmail.com> |
|
|
207
|
+
| cargo | mio | 1.2.4 | MIT | Carl Lerche <me@carllerche.com>; Thomas de Zeeuw <thomasdezeeuw@gmail.com>; Tokio Contributors <team@tokio.rs> |
|
|
207
208
|
| cargo | nix | 0.31.3 | MIT | |
|
|
208
209
|
| cargo | nu-ansi-term | 0.50.3 | MIT | Josh Triplett <josh@joshtriplett.org>; Ryan Scheel (Havvy) <ryan.havvy@gmail.com>; The Nushell Project Developers; ogham@bsago.me |
|
|
209
210
|
| cargo | num-bigint | 0.4.6 | MIT OR Apache-2.0 | The Rust Project Developers |
|
|
@@ -293,6 +294,7 @@ Inventory: 445 dependency records (41 npm, 404 Cargo).
|
|
|
293
294
|
| cargo | simdutf8 | 0.1.5 | MIT OR Apache-2.0 | Hans Kratz <hans@appfour.com> |
|
|
294
295
|
| cargo | slab | 0.4.12 | MIT | Carl Lerche <me@carllerche.com> |
|
|
295
296
|
| cargo | smallvec | 1.15.2 | MIT OR Apache-2.0 | The Servo Project Developers |
|
|
297
|
+
| cargo | socket2 | 0.6.5 | MIT OR Apache-2.0 | Alex Crichton <alex@alexcrichton.com>; Thomas de Zeeuw <thomasdezeeuw@gmail.com> |
|
|
296
298
|
| cargo | spin | 0.9.8 | MIT | John Ericson <git@JohnEricson.me>; Joshua Barretto <joshua.s.barretto@gmail.com>; Mathijs van de Nes <git@mathijs.vd-nes.nl> |
|
|
297
299
|
| cargo | spin | 0.9.9 | MIT | John Ericson <git@JohnEricson.me>; Joshua Barretto <joshua.s.barretto@gmail.com>; Mathijs van de Nes <git@mathijs.vd-nes.nl> |
|
|
298
300
|
| cargo | spki | 0.7.3 | Apache-2.0 OR MIT | RustCrypto Developers |
|
|
@@ -307,6 +309,7 @@ Inventory: 445 dependency records (41 npm, 404 Cargo).
|
|
|
307
309
|
| cargo | syn | 2.0.119 | MIT OR Apache-2.0 | David Tolnay <dtolnay@gmail.com> |
|
|
308
310
|
| cargo | syn | 3.0.3 | MIT OR Apache-2.0 | David Tolnay <dtolnay@gmail.com> |
|
|
309
311
|
| cargo | syn | 3.0.5 | MIT OR Apache-2.0 | David Tolnay <dtolnay@gmail.com> |
|
|
312
|
+
| cargo | syn | 3.0.9 | MIT OR Apache-2.0 | David Tolnay <dtolnay@gmail.com> |
|
|
310
313
|
| cargo | termcolor | 1.4.1 | Unlicense OR MIT | Andrew Gallant <jamslam@gmail.com> |
|
|
311
314
|
| cargo | thiserror-impl | 2.0.17 | MIT OR Apache-2.0 | David Tolnay <dtolnay@gmail.com> |
|
|
312
315
|
| cargo | thiserror-impl | 2.0.18 | MIT OR Apache-2.0 | David Tolnay <dtolnay@gmail.com> |
|
|
@@ -321,6 +324,8 @@ Inventory: 445 dependency records (41 npm, 404 Cargo).
|
|
|
321
324
|
| cargo | tinyvec | 1.12.0 | Zlib OR Apache-2.0 OR MIT | Lokathor <zefria@gmail.com> |
|
|
322
325
|
| cargo | tinyvec | 1.13.2 | Zlib OR Apache-2.0 OR MIT | Lokathor <zefria@gmail.com> |
|
|
323
326
|
| cargo | tinyvec | 1.9.0 | Zlib OR Apache-2.0 OR MIT | Lokathor <zefria@gmail.com> |
|
|
327
|
+
| cargo | tokio-macros | 2.7.2 | MIT | Tokio Contributors <team@tokio.rs> |
|
|
328
|
+
| cargo | tokio | 1.52.3 | MIT | Tokio Contributors <team@tokio.rs> |
|
|
324
329
|
| cargo | toml_datetime | 0.6.11 | MIT OR Apache-2.0 | |
|
|
325
330
|
| cargo | toml_datetime | 1.1.1+spec-1.1.0 | MIT OR Apache-2.0 | |
|
|
326
331
|
| cargo | toml_edit | 0.22.27 | MIT OR Apache-2.0 | |
|
|
@@ -1279,6 +1284,35 @@ Applies to:
|
|
|
1279
1284
|
limitations under the License.
|
|
1280
1285
|
|
|
1281
1286
|
|
|
1287
|
+
### 07919255c7e04793
|
|
1288
|
+
|
|
1289
|
+
Packaged as: LICENSE
|
|
1290
|
+
|
|
1291
|
+
Applies to:
|
|
1292
|
+
|
|
1293
|
+
- cargo:mio@1.2.4
|
|
1294
|
+
|
|
1295
|
+
Copyright (c) 2014 Carl Lerche and other MIO contributors
|
|
1296
|
+
|
|
1297
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
1298
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
1299
|
+
in the Software without restriction, including without limitation the rights
|
|
1300
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
1301
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
1302
|
+
furnished to do so, subject to the following conditions:
|
|
1303
|
+
|
|
1304
|
+
The above copyright notice and this permission notice shall be included in
|
|
1305
|
+
all copies or substantial portions of the Software.
|
|
1306
|
+
|
|
1307
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
1308
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
1309
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
1310
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
1311
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
1312
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
1313
|
+
THE SOFTWARE.
|
|
1314
|
+
|
|
1315
|
+
|
|
1282
1316
|
### 0816e154b159ba25
|
|
1283
1317
|
|
|
1284
1318
|
Packaged as: LICENSE-MIT
|
|
@@ -1509,6 +1543,38 @@ Applies to:
|
|
|
1509
1543
|
DEALINGS IN THE SOFTWARE.
|
|
1510
1544
|
|
|
1511
1545
|
|
|
1546
|
+
### 0b83dc40cba89b99
|
|
1547
|
+
|
|
1548
|
+
Packaged as: LICENSE
|
|
1549
|
+
|
|
1550
|
+
Applies to:
|
|
1551
|
+
|
|
1552
|
+
- cargo:tokio-macros@2.7.2
|
|
1553
|
+
|
|
1554
|
+
MIT License
|
|
1555
|
+
|
|
1556
|
+
Copyright (c) 2019 Yoshua Wuyts
|
|
1557
|
+
Copyright (c) Tokio Contributors
|
|
1558
|
+
|
|
1559
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
1560
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
1561
|
+
in the Software without restriction, including without limitation the rights
|
|
1562
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
1563
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
1564
|
+
furnished to do so, subject to the following conditions:
|
|
1565
|
+
|
|
1566
|
+
The above copyright notice and this permission notice shall be included in all
|
|
1567
|
+
copies or substantial portions of the Software.
|
|
1568
|
+
|
|
1569
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
1570
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
1571
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
1572
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
1573
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
1574
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
1575
|
+
SOFTWARE.
|
|
1576
|
+
|
|
1577
|
+
|
|
1512
1578
|
### 0c1240e29b4a2c52
|
|
1513
1579
|
|
|
1514
1580
|
Packaged as: LICENSE-BSD-1
|
|
@@ -2752,6 +2818,7 @@ Applies to:
|
|
|
2752
2818
|
- cargo:syn@2.0.119
|
|
2753
2819
|
- cargo:syn@3.0.3
|
|
2754
2820
|
- cargo:syn@3.0.5
|
|
2821
|
+
- cargo:syn@3.0.9
|
|
2755
2822
|
- cargo:thiserror-impl@2.0.17
|
|
2756
2823
|
- cargo:thiserror-impl@2.0.18
|
|
2757
2824
|
- cargo:thiserror-impl@2.0.19
|
|
@@ -2899,6 +2966,37 @@ Applies to:
|
|
|
2899
2966
|
DEALINGS IN THE SOFTWARE.
|
|
2900
2967
|
|
|
2901
2968
|
|
|
2969
|
+
### 253cd04c6714889d
|
|
2970
|
+
|
|
2971
|
+
Packaged as: LICENSE
|
|
2972
|
+
|
|
2973
|
+
Applies to:
|
|
2974
|
+
|
|
2975
|
+
- cargo:tokio@1.52.3
|
|
2976
|
+
|
|
2977
|
+
MIT License
|
|
2978
|
+
|
|
2979
|
+
Copyright (c) Tokio Contributors
|
|
2980
|
+
|
|
2981
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
2982
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
2983
|
+
in the Software without restriction, including without limitation the rights
|
|
2984
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
2985
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
2986
|
+
furnished to do so, subject to the following conditions:
|
|
2987
|
+
|
|
2988
|
+
The above copyright notice and this permission notice shall be included in all
|
|
2989
|
+
copies or substantial portions of the Software.
|
|
2990
|
+
|
|
2991
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
2992
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
2993
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
2994
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
2995
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
2996
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
2997
|
+
SOFTWARE.
|
|
2998
|
+
|
|
2999
|
+
|
|
2902
3000
|
### 275c491d6d116055
|
|
2903
3001
|
|
|
2904
3002
|
Packaged as: LICENSE-APACHE
|
|
@@ -3728,6 +3826,7 @@ Applies to:
|
|
|
3728
3826
|
- cargo:js-sys@0.3.90
|
|
3729
3827
|
- cargo:openssl-probe@0.2.1
|
|
3730
3828
|
- cargo:pkg-config@0.3.34
|
|
3829
|
+
- cargo:socket2@0.6.5
|
|
3731
3830
|
- cargo:wasm-bindgen-backend@0.2.100
|
|
3732
3831
|
- cargo:wasm-bindgen-futures@0.4.73
|
|
3733
3832
|
- cargo:wasm-bindgen-macro-support@0.2.100
|
|
@@ -5842,6 +5941,7 @@ Applies to:
|
|
|
5842
5941
|
- cargo:syn@2.0.119
|
|
5843
5942
|
- cargo:syn@3.0.3
|
|
5844
5943
|
- cargo:syn@3.0.5
|
|
5944
|
+
- cargo:syn@3.0.9
|
|
5845
5945
|
- cargo:thiserror-impl@2.0.17
|
|
5846
5946
|
- cargo:thiserror-impl@2.0.18
|
|
5847
5947
|
- cargo:thiserror-impl@2.0.19
|
|
@@ -9305,6 +9405,7 @@ Applies to:
|
|
|
9305
9405
|
- cargo:security-framework@3.7.0
|
|
9306
9406
|
- cargo:simd_cesu8@1.2.0
|
|
9307
9407
|
- cargo:smallvec@1.15.2
|
|
9408
|
+
- cargo:socket2@0.6.5
|
|
9308
9409
|
- cargo:stable_deref_trait@1.2.1
|
|
9309
9410
|
- cargo:vcpkg@0.2.15
|
|
9310
9411
|
- cargo:version_check@0.9.5
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
4cdea319a3b81f51e0abec6abf496c487403c76dfe82717b04b6ea66997f021f
|
|
@@ -24,8 +24,27 @@ import { deliverNearProvisioningStateChanged, normalizeExportKeypairWithUIInput,
|
|
|
24
24
|
* with flexible event-based callbacks for custom UX implementation
|
|
25
25
|
*/
|
|
26
26
|
var SeamsWeb = class {
|
|
27
|
+
disposePreferences;
|
|
28
|
+
preferenceState = new ClientPreferenceState();
|
|
29
|
+
nearClient;
|
|
30
|
+
configs;
|
|
31
|
+
appearance;
|
|
32
|
+
config;
|
|
33
|
+
events;
|
|
34
|
+
connection;
|
|
35
|
+
authMenu;
|
|
36
|
+
walletIframe;
|
|
37
|
+
recovery;
|
|
38
|
+
devices;
|
|
39
|
+
keys;
|
|
40
|
+
preferences;
|
|
41
|
+
auth;
|
|
42
|
+
placement;
|
|
43
|
+
registration;
|
|
44
|
+
near;
|
|
45
|
+
tempo;
|
|
46
|
+
evm;
|
|
27
47
|
constructor(configs, nearClient) {
|
|
28
|
-
this.preferenceState = new ClientPreferenceState();
|
|
29
48
|
this.configs = buildConfigsFromEnv(configs);
|
|
30
49
|
this.nearClient = nearClient || new MinimalNearClient(resolvePrimaryNearRpcUrl(this.configs.network.chains));
|
|
31
50
|
this.appearance = this.configs.ui.appearance;
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { isNearChainNetwork } from "../../../core/config/chains.js";
|
|
2
|
+
import { THRESHOLD_ED25519_2P_PARTICIPANT_IDS } from "../../../shared-ts/src/threshold/participants.js";
|
|
3
|
+
import { parseNamedNearAccountId } from "../../../shared-ts/src/utils/near.js";
|
|
4
|
+
import { THRESHOLD_SECP256K1_ECDSA_2P_PARTICIPANT_IDS_V1 } from "../../../shared-ts/src/threshold/secp256k1.js";
|
|
5
|
+
import { implicitNearAccountProvisioning, sponsoredNamedNearAccountProvisioning } from "../../../shared-ts/src/utils/registrationSignerPlan.js";
|
|
6
|
+
import { listThresholdEcdsaProvisionTargets } from "../session/thresholdEcdsaProvisioning.js";
|
|
7
|
+
//#region src/SeamsWeb/operations/registration/registrationSignerSet.ts
|
|
8
|
+
function buildConfiguredWalletRegistrationSignerSetSelection(args) {
|
|
9
|
+
let accountProvisioning = null;
|
|
10
|
+
for (const chain of args.configs.network.chains) if (isNearChainNetwork(chain.network)) {
|
|
11
|
+
accountProvisioning = resolvePasskeyRegistrationAccountProvisioning(args);
|
|
12
|
+
break;
|
|
13
|
+
}
|
|
14
|
+
return buildRegistrationSignerSetSelection(accountProvisioning, configuredEcdsaRegistrationTargets(args.configs, args.options));
|
|
15
|
+
}
|
|
16
|
+
function configuredEcdsaRegistrationTargets(configs, options) {
|
|
17
|
+
const targets = listThresholdEcdsaProvisionTargets({
|
|
18
|
+
signerOptions: options.signerOptions ?? configs.signing.thresholdEcdsa.provisioningDefaults,
|
|
19
|
+
chains: configs.network.chains
|
|
20
|
+
});
|
|
21
|
+
const chainTargets = [];
|
|
22
|
+
for (const target of targets) chainTargets.push(target.chainTarget);
|
|
23
|
+
return chainTargets;
|
|
24
|
+
}
|
|
25
|
+
function buildRegistrationSignerSetSelection(accountProvisioning, ecdsaChainTargets) {
|
|
26
|
+
const signers = [];
|
|
27
|
+
if (accountProvisioning) signers.push({
|
|
28
|
+
kind: "near_ed25519",
|
|
29
|
+
accountProvisioning,
|
|
30
|
+
signerSlot: 1,
|
|
31
|
+
participantIds: [...THRESHOLD_ED25519_2P_PARTICIPANT_IDS],
|
|
32
|
+
derivationVersion: 1
|
|
33
|
+
});
|
|
34
|
+
if (ecdsaChainTargets.length) signers.push({
|
|
35
|
+
kind: "evm_family_ecdsa",
|
|
36
|
+
chainTargets: [...ecdsaChainTargets],
|
|
37
|
+
participantIds: [...THRESHOLD_SECP256K1_ECDSA_2P_PARTICIPANT_IDS_V1]
|
|
38
|
+
});
|
|
39
|
+
if (!signers.length) throw new Error("Wallet registration requires at least one configured, enabled signer");
|
|
40
|
+
return {
|
|
41
|
+
kind: "signer_set",
|
|
42
|
+
signers
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
function sponsoredNamedRegistrationProvisioningFromAccountId(nearAccountId) {
|
|
46
|
+
const parsed = parseNamedNearAccountId(nearAccountId);
|
|
47
|
+
if (!parsed.ok) throw new Error(parsed.message);
|
|
48
|
+
return sponsoredNamedNearAccountProvisioning(parsed.value);
|
|
49
|
+
}
|
|
50
|
+
function relayerNamedSubaccountProvisioningFromWalletId(args) {
|
|
51
|
+
const walletId = String(args.walletId || "").trim();
|
|
52
|
+
const relayerAccountId = String(args.relayerAccountId || "").trim();
|
|
53
|
+
if (!walletId) throw new Error("Relayer named NEAR registration requires walletId");
|
|
54
|
+
if (!relayerAccountId) throw new Error("Relayer named NEAR registration requires relayer accountId");
|
|
55
|
+
return sponsoredNamedRegistrationProvisioningFromAccountId(`${walletId}.${relayerAccountId}`);
|
|
56
|
+
}
|
|
57
|
+
function resolvePasskeyRegistrationAccountProvisioning(args) {
|
|
58
|
+
const preference = args.preference ?? args.configs.registration.nearAccountProvisioning;
|
|
59
|
+
switch (preference.kind) {
|
|
60
|
+
case "implicit_account": return implicitNearAccountProvisioning();
|
|
61
|
+
case "relayer_named_subaccount":
|
|
62
|
+
if (args.wallet.kind !== "provided") throw new Error("Relayer named NEAR registration requires a provided walletId");
|
|
63
|
+
return relayerNamedSubaccountProvisioningFromWalletId({
|
|
64
|
+
walletId: args.wallet.walletId,
|
|
65
|
+
relayerAccountId: args.configs.network.relayer.accountId
|
|
66
|
+
});
|
|
67
|
+
default: return preference;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
//#endregion
|
|
71
|
+
export { buildConfiguredWalletRegistrationSignerSetSelection };
|
|
72
|
+
|
|
73
|
+
//# sourceMappingURL=registrationSignerSet.js.map
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { chainFamilyFromNetwork } from "../../../core/config/chains.js";
|
|
2
|
+
import { thresholdEcdsaChainTargetFromConfig, thresholdEcdsaChainTargetKey } from "../../../core/signingEngine/interfaces/ecdsaChainTarget.js";
|
|
3
|
+
//#region src/SeamsWeb/operations/session/thresholdEcdsaProvisioning.ts
|
|
4
|
+
function listThresholdEcdsaProvisionTargets(args) {
|
|
5
|
+
const targets = [];
|
|
6
|
+
const seen = /* @__PURE__ */ new Set();
|
|
7
|
+
for (const chainConfig of args.chains) {
|
|
8
|
+
const family = chainFamilyFromNetwork(chainConfig.network);
|
|
9
|
+
if (family !== "evm" && family !== "tempo") continue;
|
|
10
|
+
if (!(family === "tempo" ? args.signerOptions.tempo : args.signerOptions.evm).enabled) continue;
|
|
11
|
+
const chainTarget = thresholdEcdsaChainTargetFromConfig(chainConfig);
|
|
12
|
+
const key = thresholdEcdsaChainTargetKey(chainTarget);
|
|
13
|
+
if (seen.has(key)) continue;
|
|
14
|
+
seen.add(key);
|
|
15
|
+
targets.push({ chainTarget });
|
|
16
|
+
}
|
|
17
|
+
return targets;
|
|
18
|
+
}
|
|
19
|
+
//#endregion
|
|
20
|
+
export { listThresholdEcdsaProvisionTargets };
|
|
21
|
+
|
|
22
|
+
//# sourceMappingURL=thresholdEcdsaProvisioning.js.map
|
|
@@ -2,9 +2,10 @@ import { CAPABILITY_KINDS, EVM_ECDSA_MPC_OPERATION_KINDS, NEAR_ED25519_MPC_OPERA
|
|
|
2
2
|
import { configuredThresholdEcdsaChainTargets, thresholdEcdsaChainTargetsEqual } from "../../core/signingEngine/interfaces/ecdsaChainTarget.js";
|
|
3
3
|
//#region src/SeamsWeb/publicApi/capabilitySelection.ts
|
|
4
4
|
var BrowserCapabilityUnavailableError = class extends Error {
|
|
5
|
+
code = "browser_capability_unavailable";
|
|
6
|
+
selection;
|
|
5
7
|
constructor(selection) {
|
|
6
8
|
super(`Browser capability ${selection.operation.capabilityKind} is unavailable for ${selection.operation.operationKind}: ${selection.reason}`);
|
|
7
|
-
this.code = "browser_capability_unavailable";
|
|
8
9
|
this.name = "BrowserCapabilityUnavailableError";
|
|
9
10
|
this.selection = selection;
|
|
10
11
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { toError } from "../../shared-ts/src/utils/errors.js";
|
|
1
2
|
import { waitForNearAccount } from "./waitForNearAccount.js";
|
|
2
3
|
import { createCurrentWalletResolver } from "./currentWallet.js";
|
|
3
4
|
import { createDevicesCapability } from "./devices.js";
|
|
@@ -5,6 +6,7 @@ import { createKeyExportCapability } from "./keyExport.js";
|
|
|
5
6
|
import { createNearSignerCapability } from "./near.js";
|
|
6
7
|
import { createEvmFamilyCapabilities } from "./tempo.js";
|
|
7
8
|
import { registerTransactionReviewBridge } from "./transactionReview.js";
|
|
9
|
+
import { buildConfiguredWalletRegistrationSignerSetSelection } from "../operations/registration/registrationSignerSet.js";
|
|
8
10
|
//#region src/SeamsWeb/publicApi/createPublicApi.ts
|
|
9
11
|
function createPublicApi(deps) {
|
|
10
12
|
const auth = deps.auth;
|
|
@@ -37,7 +39,7 @@ function createPublicApi(deps) {
|
|
|
37
39
|
addPasskey: deps.registration.addPasskey,
|
|
38
40
|
addEmail: deps.registration.addEmail,
|
|
39
41
|
removeAuthMethod: deps.registration.removeAuthMethod,
|
|
40
|
-
registerWallet: deps.registration.
|
|
42
|
+
registerWallet: registerWallet.bind(null, deps.registration, deps.configs)
|
|
41
43
|
},
|
|
42
44
|
recovery: deps.recovery,
|
|
43
45
|
devices,
|
|
@@ -51,6 +53,29 @@ function createPublicApi(deps) {
|
|
|
51
53
|
evm: evmFamily.evm
|
|
52
54
|
};
|
|
53
55
|
}
|
|
56
|
+
async function registerWallet(commands, configs, args) {
|
|
57
|
+
let command;
|
|
58
|
+
try {
|
|
59
|
+
const wallet = args.wallet === void 0 ? { kind: "server_allocated" } : args.wallet;
|
|
60
|
+
const signerSelection = args.signerSelection === void 0 ? buildConfiguredWalletRegistrationSignerSetSelection({
|
|
61
|
+
configs,
|
|
62
|
+
wallet,
|
|
63
|
+
options: args.options ?? {}
|
|
64
|
+
}) : args.signerSelection;
|
|
65
|
+
command = {
|
|
66
|
+
authMethod: args.authMethod,
|
|
67
|
+
wallet,
|
|
68
|
+
signerSelection,
|
|
69
|
+
options: args.options
|
|
70
|
+
};
|
|
71
|
+
} catch (error) {
|
|
72
|
+
const normalized = toError(error);
|
|
73
|
+
await args.options?.onError?.(normalized);
|
|
74
|
+
await args.options?.afterCall?.(false, void 0, normalized);
|
|
75
|
+
throw normalized;
|
|
76
|
+
}
|
|
77
|
+
return commands.registerWallet(command);
|
|
78
|
+
}
|
|
54
79
|
function createApplicationPublicApi(deps) {
|
|
55
80
|
const api = createPublicApi(deps);
|
|
56
81
|
const currentWallet = createCurrentWalletResolver({ getWalletSession: deps.auth.getSession });
|
|
@@ -69,76 +69,27 @@ function isOutsideRect(event, rect) {
|
|
|
69
69
|
}
|
|
70
70
|
function ignoreDismissFailure(error) {}
|
|
71
71
|
var OverlayController = class {
|
|
72
|
+
ensureIframe;
|
|
73
|
+
dismissHandler;
|
|
74
|
+
dialog = null;
|
|
75
|
+
iframe = null;
|
|
76
|
+
reviewSlot = null;
|
|
77
|
+
mode = { kind: "hidden" };
|
|
78
|
+
visible = false;
|
|
79
|
+
generation = 0;
|
|
80
|
+
pointerCapture = null;
|
|
81
|
+
restoreFocus = null;
|
|
82
|
+
pendingProgrammaticCloseEvents = 0;
|
|
83
|
+
listenersInstalled = false;
|
|
84
|
+
lastAppliedGeometry = null;
|
|
85
|
+
authMenuVisualScale = 1;
|
|
86
|
+
lastAppliedAuthMenuVisualScale = 1;
|
|
87
|
+
dialogDisplayMode = null;
|
|
88
|
+
pendingRevealFrame = null;
|
|
89
|
+
reviewHandoff = { kind: "idle" };
|
|
90
|
+
surfaceResizeAnimation = null;
|
|
91
|
+
surfaceResizeTimer = null;
|
|
72
92
|
constructor(opts) {
|
|
73
|
-
this.dialog = null;
|
|
74
|
-
this.iframe = null;
|
|
75
|
-
this.reviewSlot = null;
|
|
76
|
-
this.mode = { kind: "hidden" };
|
|
77
|
-
this.visible = false;
|
|
78
|
-
this.generation = 0;
|
|
79
|
-
this.pointerCapture = null;
|
|
80
|
-
this.restoreFocus = null;
|
|
81
|
-
this.pendingProgrammaticCloseEvents = 0;
|
|
82
|
-
this.listenersInstalled = false;
|
|
83
|
-
this.lastAppliedGeometry = null;
|
|
84
|
-
this.authMenuVisualScale = 1;
|
|
85
|
-
this.lastAppliedAuthMenuVisualScale = 1;
|
|
86
|
-
this.dialogDisplayMode = null;
|
|
87
|
-
this.pendingRevealFrame = null;
|
|
88
|
-
this.reviewHandoff = { kind: "idle" };
|
|
89
|
-
this.surfaceResizeAnimation = null;
|
|
90
|
-
this.surfaceResizeTimer = null;
|
|
91
|
-
this.handleReviewHandoffFinished = (event) => {
|
|
92
|
-
if (this.reviewHandoff.kind !== "animating" || event.currentTarget !== this.reviewHandoff.incoming) return;
|
|
93
|
-
this.finishReviewHandoff();
|
|
94
|
-
};
|
|
95
|
-
this.revealMeasuredSurface = () => {
|
|
96
|
-
this.pendingRevealFrame = null;
|
|
97
|
-
const dialog = this.dialog;
|
|
98
|
-
if (!dialog || !this.visible || this.mode.kind !== "compact_request_modal" || geometryKind(this.mode.geometry) === "provisional") return;
|
|
99
|
-
dialog.classList.remove(OverlayStyleClasses.REVEAL_PENDING);
|
|
100
|
-
};
|
|
101
|
-
this.handleSurfaceResizeFinished = (event) => {
|
|
102
|
-
if (event.currentTarget !== this.surfaceResizeAnimation) return;
|
|
103
|
-
this.cancelSurfaceResize();
|
|
104
|
-
};
|
|
105
|
-
this.handleCancel = (event) => {
|
|
106
|
-
event.preventDefault();
|
|
107
|
-
this.requestDismiss("escape");
|
|
108
|
-
};
|
|
109
|
-
this.handleClose = () => {
|
|
110
|
-
this.dialogDisplayMode = null;
|
|
111
|
-
if (this.pendingProgrammaticCloseEvents > 0) {
|
|
112
|
-
this.pendingProgrammaticCloseEvents -= 1;
|
|
113
|
-
return;
|
|
114
|
-
}
|
|
115
|
-
if (this.visible) this.requestDismiss("escape");
|
|
116
|
-
};
|
|
117
|
-
this.handlePointerDown = (event) => {
|
|
118
|
-
if (!this.visible || this.mode.kind === "hidden" || !this.dialog) return;
|
|
119
|
-
const dialogRect = this.dialog.getBoundingClientRect();
|
|
120
|
-
const iframeRect = this.ensureIframe().getBoundingClientRect();
|
|
121
|
-
if (!isOutsideRect(event, dialogRect) || !isOutsideRect(event, iframeRect)) {
|
|
122
|
-
this.pointerCapture = null;
|
|
123
|
-
return;
|
|
124
|
-
}
|
|
125
|
-
this.pointerCapture = {
|
|
126
|
-
pointerId: event.pointerId,
|
|
127
|
-
generation: this.generation
|
|
128
|
-
};
|
|
129
|
-
};
|
|
130
|
-
this.handlePointerUp = (event) => {
|
|
131
|
-
const capture = this.pointerCapture;
|
|
132
|
-
this.pointerCapture = null;
|
|
133
|
-
if (!capture || capture.pointerId !== event.pointerId || capture.generation !== this.generation) return;
|
|
134
|
-
if (!this.dialog || this.mode.kind === "hidden") return;
|
|
135
|
-
const dialogRect = this.dialog.getBoundingClientRect();
|
|
136
|
-
const iframeRect = this.ensureIframe().getBoundingClientRect();
|
|
137
|
-
if (isOutsideRect(event, dialogRect) && isOutsideRect(event, iframeRect)) this.requestDismiss("backdrop");
|
|
138
|
-
};
|
|
139
|
-
this.handlePointerCancel = (event) => {
|
|
140
|
-
if (this.pointerCapture?.pointerId === event.pointerId) this.pointerCapture = null;
|
|
141
|
-
};
|
|
142
93
|
this.ensureIframe = opts.ensureIframe;
|
|
143
94
|
this.dismissHandler = opts.onDismiss;
|
|
144
95
|
}
|
|
@@ -353,6 +304,10 @@ var OverlayController = class {
|
|
|
353
304
|
};
|
|
354
305
|
incoming.addEventListener("finish", this.handleReviewHandoffFinished, { once: true });
|
|
355
306
|
}
|
|
307
|
+
handleReviewHandoffFinished = (event) => {
|
|
308
|
+
if (this.reviewHandoff.kind !== "animating" || event.currentTarget !== this.reviewHandoff.incoming) return;
|
|
309
|
+
this.finishReviewHandoff();
|
|
310
|
+
};
|
|
356
311
|
finishReviewHandoff() {
|
|
357
312
|
if (this.reviewHandoff.kind !== "animating") return;
|
|
358
313
|
const onReady = this.reviewHandoff.onReady;
|
|
@@ -386,6 +341,12 @@ var OverlayController = class {
|
|
|
386
341
|
this.cancelPendingReveal();
|
|
387
342
|
this.pendingRevealFrame = window.requestAnimationFrame(this.revealMeasuredSurface);
|
|
388
343
|
}
|
|
344
|
+
revealMeasuredSurface = () => {
|
|
345
|
+
this.pendingRevealFrame = null;
|
|
346
|
+
const dialog = this.dialog;
|
|
347
|
+
if (!dialog || !this.visible || this.mode.kind !== "compact_request_modal" || geometryKind(this.mode.geometry) === "provisional") return;
|
|
348
|
+
dialog.classList.remove(OverlayStyleClasses.REVEAL_PENDING);
|
|
349
|
+
};
|
|
389
350
|
startSurfaceResize(origin, destination, duration) {
|
|
390
351
|
const dialog = this.dialog;
|
|
391
352
|
if (!dialog || window.matchMedia("(prefers-reduced-motion: reduce)").matches) return;
|
|
@@ -398,6 +359,10 @@ var OverlayController = class {
|
|
|
398
359
|
this.surfaceResizeTimer = setTimeout(this.cancelSurfaceResize.bind(this), duration);
|
|
399
360
|
animation.addEventListener("finish", this.handleSurfaceResizeFinished, { once: true });
|
|
400
361
|
}
|
|
362
|
+
handleSurfaceResizeFinished = (event) => {
|
|
363
|
+
if (event.currentTarget !== this.surfaceResizeAnimation) return;
|
|
364
|
+
this.cancelSurfaceResize();
|
|
365
|
+
};
|
|
401
366
|
cancelPendingReveal() {
|
|
402
367
|
if (this.pendingRevealFrame === null) return;
|
|
403
368
|
window.cancelAnimationFrame(this.pendingRevealFrame);
|
|
@@ -481,6 +446,43 @@ var OverlayController = class {
|
|
|
481
446
|
if (!event || !this.dismissHandler) return;
|
|
482
447
|
Promise.resolve(this.dismissHandler(event)).catch(ignoreDismissFailure);
|
|
483
448
|
}
|
|
449
|
+
handleCancel = (event) => {
|
|
450
|
+
event.preventDefault();
|
|
451
|
+
this.requestDismiss("escape");
|
|
452
|
+
};
|
|
453
|
+
handleClose = () => {
|
|
454
|
+
this.dialogDisplayMode = null;
|
|
455
|
+
if (this.pendingProgrammaticCloseEvents > 0) {
|
|
456
|
+
this.pendingProgrammaticCloseEvents -= 1;
|
|
457
|
+
return;
|
|
458
|
+
}
|
|
459
|
+
if (this.visible) this.requestDismiss("escape");
|
|
460
|
+
};
|
|
461
|
+
handlePointerDown = (event) => {
|
|
462
|
+
if (!this.visible || this.mode.kind === "hidden" || !this.dialog) return;
|
|
463
|
+
const dialogRect = this.dialog.getBoundingClientRect();
|
|
464
|
+
const iframeRect = this.ensureIframe().getBoundingClientRect();
|
|
465
|
+
if (!isOutsideRect(event, dialogRect) || !isOutsideRect(event, iframeRect)) {
|
|
466
|
+
this.pointerCapture = null;
|
|
467
|
+
return;
|
|
468
|
+
}
|
|
469
|
+
this.pointerCapture = {
|
|
470
|
+
pointerId: event.pointerId,
|
|
471
|
+
generation: this.generation
|
|
472
|
+
};
|
|
473
|
+
};
|
|
474
|
+
handlePointerUp = (event) => {
|
|
475
|
+
const capture = this.pointerCapture;
|
|
476
|
+
this.pointerCapture = null;
|
|
477
|
+
if (!capture || capture.pointerId !== event.pointerId || capture.generation !== this.generation) return;
|
|
478
|
+
if (!this.dialog || this.mode.kind === "hidden") return;
|
|
479
|
+
const dialogRect = this.dialog.getBoundingClientRect();
|
|
480
|
+
const iframeRect = this.ensureIframe().getBoundingClientRect();
|
|
481
|
+
if (isOutsideRect(event, dialogRect) && isOutsideRect(event, iframeRect)) this.requestDismiss("backdrop");
|
|
482
|
+
};
|
|
483
|
+
handlePointerCancel = (event) => {
|
|
484
|
+
if (this.pointerCapture?.pointerId === event.pointerId) this.pointerCapture = null;
|
|
485
|
+
};
|
|
484
486
|
getState() {
|
|
485
487
|
return {
|
|
486
488
|
visible: this.visible,
|