@seams/wallet 0.7.1 → 0.7.3
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/THIRD_PARTY_NOTICES.md +1 -105
- package/dist/.build-inputs.sha256 +1 -1
- package/dist/esm/SeamsWeb/SeamsWeb.js +10 -1
- package/dist/esm/SeamsWeb/operations/auth/login.js +16 -6
- package/dist/esm/SeamsWeb/operations/auth/scheduleLinkedDevicePresignaturePrefill.js +64 -0
- package/dist/esm/SeamsWeb/operations/auth/walletAuth.js +2 -3
- package/dist/esm/SeamsWeb/operations/auth/walletUnlockEcdsaSubject.js +1 -4
- package/dist/esm/SeamsWeb/operations/devices/deviceLinkingHttpTransport.js +11 -12
- package/dist/esm/SeamsWeb/operations/devices/deviceLinkingResume.js +1 -5
- package/dist/esm/SeamsWeb/operations/devices/deviceLinkingWorkerChannels.js +24 -24
- package/dist/esm/SeamsWeb/operations/recovery/walletRecoveryDurablePayload.js +4 -7
- package/dist/esm/SeamsWeb/operations/registration/pendingRegistrationRecovery.js +2 -8
- package/dist/esm/SeamsWeb/operations/tempo/executeEvmFamilyTransaction.js +4 -1
- package/dist/esm/SeamsWeb/publicApi/auth.js +2 -1
- package/dist/esm/SeamsWeb/publicApi/tempo.js +6 -0
- package/dist/esm/SeamsWeb/signingSurface/BrowserSigningSurface.js +24 -15
- package/dist/esm/SeamsWeb/walletIframe/host/restoredSessionPresignaturePrefill.js +29 -0
- package/dist/esm/SeamsWeb/walletIframe/host/ui/auth-menu/AuthMenuSurface.js +88 -222
- package/dist/esm/SeamsWeb/walletIframe/shared/exactSessionState.js +6 -26
- package/dist/esm/build-paths.js +0 -2
- package/dist/esm/components/AccountMenuButton/MenuItem.css +17 -0
- package/dist/esm/components/AccountMenuButton/UserAccountButton.css +0 -5
- package/dist/esm/components/AccountMenuButton/Web3AuthProfileButton.css +0 -52
- package/dist/esm/components/QRCodeScanner.css +0 -15
- package/dist/esm/components/ShowQRCode.css +0 -14
- package/dist/esm/core/indexedDB/pendingWalletRecoveryCommit.js +5 -10
- package/dist/esm/core/indexedDB/pendingWalletRegistrationCommit.js +139 -273
- package/dist/esm/core/indexedDB/seamsWalletDB/laneHolderMaterialStore.js +10 -13
- package/dist/esm/core/rpcClients/relayer/walletRecoveryPrepare.js +69 -121
- package/dist/esm/core/signingEngine/assembly/ports/recovery.js +1 -1
- package/dist/esm/core/signingEngine/chains/evm/display/functionSelectors.js +2 -5
- package/dist/esm/core/signingEngine/flows/recovery/ecdsaExportFlow.js +2 -2
- package/dist/esm/core/signingEngine/flows/recovery/ecdsaExportMaterial.js +35 -28
- package/dist/esm/core/signingEngine/flows/recovery/ed25519YaoExportFlow.js +3 -3
- package/dist/esm/core/signingEngine/flows/recovery/exportKeypairOperation.js +1 -4
- package/dist/esm/core/signingEngine/flows/recovery/passkeyEd25519YaoRecovery.js +1 -4
- package/dist/esm/core/signingEngine/flows/signEvmFamily/emailOtpSigningSession.js +2 -2
- package/dist/esm/core/signingEngine/flows/signEvmFamily/preparedSigning.js +2 -9
- package/dist/esm/core/signingEngine/flows/signEvmFamily/signEvmFamily.js +6 -8
- package/dist/esm/core/signingEngine/flows/signEvmFamily/signers/ecdsaDerivationClientSigningMaterialSource.js +24 -18
- package/dist/esm/core/signingEngine/flows/signEvmFamily/signingFlow.js +6 -4
- package/dist/esm/core/signingEngine/flows/signEvmFamily/signingFlowRuntime.js +10 -9
- package/dist/esm/core/signingEngine/flows/signEvmFamily/transactionExecutor.js +2 -5
- package/dist/esm/core/signingEngine/flows/signNear/signNear.js +2 -2
- package/dist/esm/core/signingEngine/routerAb/ecdsaDerivation/presignaturePool.js +2 -0
- package/dist/esm/core/signingEngine/session/availability/availableSigningLanes.js +1 -10
- package/dist/esm/core/signingEngine/session/availability/persistedAvailableSigningLanes.js +7 -6
- package/dist/esm/core/signingEngine/session/emailOtp/EmailOtpWalletSessionCoordinator.js +108 -24
- package/dist/esm/core/signingEngine/session/emailOtp/ecdsaLogin.js +3 -8
- package/dist/esm/core/signingEngine/session/emailOtp/ecdsaRecovery.js +2 -2
- package/dist/esm/core/signingEngine/session/identity/selectLane.js +7 -21
- package/dist/esm/core/signingEngine/session/material/activeWalletAuthorityEcdsaRuntime.js +2 -7
- package/dist/esm/core/signingEngine/session/material/ecdsaCapabilityManifest.js +3 -15
- package/dist/esm/core/signingEngine/session/material/ecdsaSigningCapability.js +1 -1
- package/dist/esm/core/signingEngine/session/passkey/ed25519YaoWarmRecovery.js +1 -4
- package/dist/esm/core/signingEngine/session/persistence/sealedSessionRecords.js +5 -8
- package/dist/esm/core/signingEngine/session/warmCapabilities/ecdsaLoginPrefillSigningMaterialSource.js +2 -2
- package/dist/esm/core/signingEngine/session/warmCapabilities/nearEd25519CapabilityRehydration.js +1 -1
- package/dist/esm/core/signingEngine/threshold/commitQueueShared.js +20 -6
- package/dist/esm/core/signingEngine/threshold/crypto/ecdsaDerivationClientWasm.js +7 -4
- package/dist/esm/core/signingEngine/threshold/ecdsa/signingQueue.js +8 -50
- package/dist/esm/core/signingEngine/threshold/ed25519/commitQueue.js +7 -43
- package/dist/esm/core/signingEngine/uiConfirm/PasskeyMpcSessionManager.js +3 -2
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/TransactionReceipt.js +18 -16
- package/dist/esm/core/signingEngine/uiConfirm/ui/transaction-display/tree.js +1 -10
- package/dist/esm/core/signingEngine/workerManager/deviceLinkingPorts.js +67 -48
- package/dist/esm/core/signingEngine/workerManager/workerTransport.js +1 -5
- package/dist/esm/react/SeamsWeb/SeamsWeb.js +10 -1
- package/dist/esm/react/SeamsWeb/operations/auth/login.js +16 -6
- package/dist/esm/react/SeamsWeb/operations/auth/scheduleLinkedDevicePresignaturePrefill.js +64 -0
- package/dist/esm/react/SeamsWeb/operations/auth/walletAuth.js +2 -3
- package/dist/esm/react/SeamsWeb/operations/auth/walletUnlockEcdsaSubject.js +1 -4
- package/dist/esm/react/SeamsWeb/operations/devices/deviceLinkingHttpTransport.js +11 -12
- package/dist/esm/react/SeamsWeb/operations/devices/deviceLinkingResume.js +1 -5
- package/dist/esm/react/SeamsWeb/operations/devices/deviceLinkingWorkerChannels.js +24 -24
- package/dist/esm/react/SeamsWeb/operations/recovery/walletRecoveryDurablePayload.js +4 -7
- package/dist/esm/react/SeamsWeb/operations/registration/pendingRegistrationRecovery.js +2 -8
- package/dist/esm/react/SeamsWeb/operations/tempo/executeEvmFamilyTransaction.js +4 -1
- package/dist/esm/react/SeamsWeb/publicApi/auth.js +2 -1
- package/dist/esm/react/SeamsWeb/publicApi/tempo.js +6 -0
- package/dist/esm/react/SeamsWeb/signingSurface/BrowserSigningSurface.js +24 -15
- package/dist/esm/react/SeamsWeb/walletIframe/host/restoredSessionPresignaturePrefill.js +29 -0
- package/dist/esm/react/SeamsWeb/walletIframe/shared/exactSessionState.js +6 -26
- package/dist/esm/react/build-paths.js +0 -2
- package/dist/esm/react/components/AccountMenuButton/AuthenticationMethodsModal.js +2 -2
- package/dist/esm/react/components/AccountMenuButton/ExportKeysSection.js +1 -1
- package/dist/esm/react/components/AccountMenuButton/LinkedDevicesModal.js +4 -4
- package/dist/esm/react/components/AccountMenuButton/LockMenuItem.js +2 -1
- package/dist/esm/react/components/AccountMenuButton/MenuItem.css +17 -0
- package/dist/esm/react/components/AccountMenuButton/UserAccountButton.css +0 -5
- package/dist/esm/react/components/AccountMenuButton/WalletSettingsLayout.js +7 -7
- package/dist/esm/react/components/AccountMenuButton/Web3AuthProfileButton.css +0 -52
- package/dist/esm/react/components/AccountMenuButton/icons/GlobeIcon.js +12 -27
- package/dist/esm/react/components/AccountMenuButton/icons/KeyIcon.js +12 -27
- package/dist/esm/react/components/AccountMenuButton/icons/LaptopIcon.js +4 -19
- package/dist/esm/react/components/AccountMenuButton/icons/LinkIcon.js +4 -19
- package/dist/esm/react/components/AccountMenuButton/icons/LockIcon.js +11 -26
- package/dist/esm/react/components/AccountMenuButton/icons/MailIcon.js +10 -25
- package/dist/esm/react/components/AccountMenuButton/icons/RecoveryCodesIcon.js +16 -31
- package/dist/esm/react/components/AccountMenuButton/icons/ScanIcon.js +9 -24
- package/dist/esm/react/components/AccountMenuButton/icons/SlidersIcon.js +14 -29
- package/dist/esm/react/components/AccountMenuButton/icons/SmartphoneIcon.js +11 -26
- package/dist/esm/react/components/AccountMenuButton/icons/lucideIcon.js +27 -0
- package/dist/esm/react/components/AccountMenuButton/icons/strokeIcon.js +7 -17
- package/dist/esm/react/components/AccountMenuButton/index.js +6 -6
- package/dist/esm/react/components/QRCodeScanner.css +0 -15
- package/dist/esm/react/components/ShowQRCode.css +0 -14
- package/dist/esm/react/context/useSeamsWithSdkFlow.js +1 -2
- package/dist/esm/react/context/useWalletIframeLifecycle.js +0 -14
- package/dist/esm/react/core/indexedDB/pendingWalletRecoveryCommit.js +5 -10
- package/dist/esm/react/core/indexedDB/pendingWalletRegistrationCommit.js +139 -273
- package/dist/esm/react/core/rpcClients/relayer/walletRecoveryPrepare.js +4 -4
- package/dist/esm/react/core/signingEngine/assembly/ports/recovery.js +1 -1
- package/dist/esm/react/core/signingEngine/chains/evm/display/functionSelectors.js +2 -5
- package/dist/esm/react/core/signingEngine/flows/recovery/ecdsaExportFlow.js +2 -2
- package/dist/esm/react/core/signingEngine/flows/recovery/ecdsaExportMaterial.js +35 -28
- package/dist/esm/react/core/signingEngine/flows/recovery/ed25519YaoExportFlow.js +3 -3
- package/dist/esm/react/core/signingEngine/flows/recovery/exportKeypairOperation.js +1 -4
- package/dist/esm/react/core/signingEngine/flows/recovery/passkeyEd25519YaoRecovery.js +1 -4
- package/dist/esm/react/core/signingEngine/flows/signEvmFamily/emailOtpSigningSession.js +2 -2
- package/dist/esm/react/core/signingEngine/flows/signEvmFamily/preparedSigning.js +2 -9
- package/dist/esm/react/core/signingEngine/flows/signEvmFamily/signEvmFamily.js +6 -8
- package/dist/esm/react/core/signingEngine/flows/signEvmFamily/signers/ecdsaDerivationClientSigningMaterialSource.js +24 -18
- package/dist/esm/react/core/signingEngine/flows/signEvmFamily/signingFlow.js +6 -4
- package/dist/esm/react/core/signingEngine/flows/signEvmFamily/signingFlowRuntime.js +10 -9
- package/dist/esm/react/core/signingEngine/flows/signEvmFamily/transactionExecutor.js +2 -5
- package/dist/esm/react/core/signingEngine/flows/signNear/signNear.js +2 -2
- package/dist/esm/react/core/signingEngine/routerAb/ecdsaDerivation/presignaturePool.js +2 -0
- package/dist/esm/react/core/signingEngine/session/availability/availableSigningLanes.js +1 -10
- package/dist/esm/react/core/signingEngine/session/availability/persistedAvailableSigningLanes.js +7 -6
- package/dist/esm/react/core/signingEngine/session/emailOtp/EmailOtpWalletSessionCoordinator.js +108 -24
- package/dist/esm/react/core/signingEngine/session/emailOtp/ecdsaLogin.js +3 -8
- package/dist/esm/react/core/signingEngine/session/emailOtp/ecdsaRecovery.js +2 -2
- package/dist/esm/react/core/signingEngine/session/identity/selectLane.js +7 -21
- package/dist/esm/react/core/signingEngine/session/material/activeWalletAuthorityEcdsaRuntime.js +2 -7
- package/dist/esm/react/core/signingEngine/session/material/ecdsaCapabilityManifest.js +3 -15
- package/dist/esm/react/core/signingEngine/session/material/ecdsaSigningCapability.js +1 -1
- package/dist/esm/react/core/signingEngine/session/passkey/ed25519YaoWarmRecovery.js +1 -4
- package/dist/esm/react/core/signingEngine/session/persistence/sealedSessionRecords.js +5 -8
- package/dist/esm/react/core/signingEngine/session/warmCapabilities/ecdsaLoginPrefillSigningMaterialSource.js +2 -2
- package/dist/esm/react/core/signingEngine/session/warmCapabilities/nearEd25519CapabilityRehydration.js +1 -1
- package/dist/esm/react/core/signingEngine/threshold/commitQueueShared.js +20 -6
- package/dist/esm/react/core/signingEngine/threshold/crypto/ecdsaDerivationClientWasm.js +7 -4
- package/dist/esm/react/core/signingEngine/threshold/ecdsa/signingQueue.js +8 -50
- package/dist/esm/react/core/signingEngine/threshold/ed25519/commitQueue.js +7 -43
- package/dist/esm/react/core/signingEngine/uiConfirm/PasskeyMpcSessionManager.js +3 -2
- package/dist/esm/react/core/signingEngine/uiConfirm/ui/preact/TransactionReceipt.js +18 -16
- package/dist/esm/react/core/signingEngine/uiConfirm/ui/transaction-display/tree.js +1 -10
- package/dist/esm/react/core/signingEngine/workerManager/deviceLinkingPorts.js +67 -48
- package/dist/esm/react/core/signingEngine/workerManager/workerTransport.js +1 -5
- package/dist/esm/react/shared-ts/src/authorization/walletSessionIssuance.js +5 -8
- package/dist/esm/react/shared-ts/src/authorization/walletSignerActivationEquality.js +12 -0
- package/dist/esm/react/shared-ts/src/device-linking/committedSignerPackages.js +2 -5
- package/dist/esm/react/shared-ts/src/device-linking/delegatedActivationPlan.js +1 -5
- package/dist/esm/react/shared-ts/src/device-linking/ed25519ExportRoot.js +11 -15
- package/dist/esm/react/shared-ts/src/device-linking/sourceContribution.js +5 -8
- package/dist/esm/react/shared-ts/src/passkey-custody/primitives.js +5 -1
- package/dist/esm/react/shared-ts/src/signing-lanes/ownerContinuity.js +3 -7
- package/dist/esm/react/shared-ts/src/signing-lanes/recordParsers.js +12 -16
- package/dist/esm/react/shared-ts/src/threshold/signingRootScope.js +4 -1
- package/dist/esm/react/shared-ts/src/utils/ecdsaKeyFactsInventory.js +2 -4
- package/dist/esm/react/shared-ts/src/utils/ecdsaServerTiming.js +0 -1
- package/dist/esm/react/shared-ts/src/utils/exactKeys.js +17 -0
- package/dist/esm/react/shared-ts/src/utils/registrationIntent.js +2 -8
- package/dist/esm/react/shared-ts/src/utils/registrationSignerPlan.js +2 -5
- package/dist/esm/react/shared-ts/src/utils/routerAbEcdsaDerivation.js +1 -1
- package/dist/esm/react/shared-ts/src/utils/routerAbEd25519Yao.js +1 -1
- package/dist/esm/react/shared-ts/src/utils/thresholdEcdsaChainTarget.js +9 -0
- package/dist/esm/react/shared-ts/src/wallet-recovery/walletRecoveryCommittedProjection.js +1 -4
- package/dist/esm/react/styles/styles.css +17 -86
- package/dist/esm/react/utils/menuItemBlink.js +24 -0
- package/dist/esm/sdk/{accountLifecycle-BAGG_rbk.js → accountLifecycle-zthG08aC.js} +1 -1
- package/dist/esm/sdk/{adapters-B4JeK1nJ.js → adapters-Dli9XAZp.js} +20 -48
- package/dist/{public/sdk/canonicalSignerErrorCode-CRoJMVpp.js → esm/sdk/canonicalSignerErrorCode-BBIk365e.js} +1 -15
- package/dist/esm/sdk/{challengeDelivery-Dd0586fo.js → challengeDelivery-DZtopOAG.js} +1 -1
- package/dist/{public/sdk/configHelpers-vAQCzUD0.js → esm/sdk/configHelpers-D1EqxVxg.js} +1 -1
- package/dist/{public/sdk/defaultConfigs-B3c16M_8.js → esm/sdk/defaultConfigs-D_33pPT9.js} +3 -3
- package/dist/esm/sdk/{display-KdIL0ff7.js → display-P4nQF-yc.js} +1 -1
- package/dist/esm/sdk/{ecdsaCapabilityManifest-kzO_fW09.js → ecdsaCapabilityManifest-DuMs0VtU.js} +6 -18
- package/dist/{public/sdk/ecdsaPresignLifecycle-BFOTNYCK.js → esm/sdk/ecdsaPresignLifecycle-Bfx2AQKb.js} +2 -2
- package/dist/esm/sdk/{ecdsaWalletRecords-Cz4m6bIz.js → ecdsaWalletRecords-D42rtA9z.js} +2 -2
- package/dist/{public/sdk/evmFamilyEcdsaIdentity-Co5XDcEA.js → esm/sdk/evmFamilyEcdsaIdentity-CqGafQsI.js} +20 -34
- package/dist/esm/sdk/{exactSessionState-CiD5fBEs.js → exactSessionState-LWDUXydN.js} +10 -30
- package/dist/esm/sdk/{exactSigningLaneIdentity-DQeqPMST.js → exactSigningLaneIdentity-m6uTXV_A.js} +1 -1
- package/dist/esm/sdk/{export-viewer-host-ZqA2Yz3H.js → export-viewer-host-rWMSQQMP.js} +1 -1
- package/dist/{public/sdk/host-BWBbCAMu.js → esm/sdk/host-CnV8nAUe.js} +3 -3
- package/dist/{public/sdk/keyMaterialBrands-CX41hur6.js → esm/sdk/keyMaterialBrands-CogGAAZn.js} +1 -1
- package/dist/{public/sdk/localOnly-Bg8UuLZ5.js → esm/sdk/localOnly-DTpa2jD5.js} +2 -2
- package/dist/esm/sdk/{nearEd25519YaoMaterialActivation-DPb0s3hQ.js → nearEd25519YaoMaterialActivation-B5GecIvq.js} +38 -28
- package/dist/esm/sdk/{nearEd25519YaoSigningPreparation-BeD-SmbK.js → nearEd25519YaoSigningPreparation-CdOT5RuC.js} +3 -3
- package/dist/esm/sdk/{passkey-custody-Bk1jAknm.js → passkey-custody-UUHbC0pk.js} +1 -1
- package/dist/esm/sdk/{pendingWalletRecoveryCodeBackup-DLzBb3WQ.js → pendingWalletRecoveryCodeBackup-BWluQMbt.js} +1 -1
- package/dist/esm/sdk/{recovery-entrypoint-DW2tGyMs.js → recovery-entrypoint-C3fydnRC.js} +10 -10
- package/dist/esm/sdk/{registration-BZDzDv91.js → registration-Ct_7LdGf.js} +30 -42
- package/dist/esm/sdk/{registration-BzVHODuD.js → registration-DHERU8R_.js} +1 -1
- package/dist/esm/sdk/{registrationAccounts-CKku_Sgy.js → registrationAccounts-DmWPzf3T.js} +2 -2
- package/dist/esm/sdk/{registrationIntent-D0PxwEY4.js → registrationIntent-4zwk16zQ.js} +3 -9
- package/dist/esm/sdk/{registrationPreparationPreload-CIAuRlxI.js → registrationPreparationPreload-D6zpWp4O.js} +2 -2
- package/dist/esm/sdk/{registrationSignerPlan-CAikVZZQ.js → registrationSignerPlan-DhV8VAob.js} +2 -5
- package/dist/{public/sdk/router-C5lF_J_u.js → esm/sdk/router-B4ZWFy9E.js} +7 -7
- package/dist/{public/sdk/routerAbNormalSigning-fhvpDtmY.js → esm/sdk/routerAbNormalSigning-CVFEOZ2m.js} +1 -1
- package/dist/esm/sdk/router_ab_ed25519_yao_client_bg.wasm +0 -0
- package/dist/esm/sdk/{runtime-auth-DFTqwj3u.js → runtime-auth-DdfynDKt.js} +126 -273
- package/dist/esm/sdk/{runtime-device-link-C1Oub8Lw.js → runtime-device-link-HJ2ptFux.js} +12 -12
- package/dist/esm/sdk/{runtime-ecdsa-tempo-rkWwolw1.js → runtime-ecdsa-tempo-BGLsTAWR.js} +13 -13
- package/dist/{public/sdk/runtime-email-otp-vuUG5LYl.js → esm/sdk/runtime-email-otp-CpX88VZJ.js} +12 -12
- package/dist/{public/sdk/runtime-export-FZWj0HxJ.js → esm/sdk/runtime-export-DIVY473L.js} +13 -13
- package/dist/esm/sdk/{runtime-near-B9cjurVD.js → runtime-near-CxtQi4b2.js} +12 -12
- package/dist/esm/sdk/{runtime-preferences-Dq0bfyS5.js → runtime-preferences-vnJc5Svg.js} +12 -12
- package/dist/esm/sdk/{runtime-recovery-codes-bTm3fLV4.js → runtime-recovery-codes-BSCLVHQj.js} +6 -6
- package/dist/{public/sdk/runtime-recovery-C-vfFKF3.js → esm/sdk/runtime-recovery-i08vCJST.js} +12 -12
- package/dist/esm/sdk/{runtimeContext-iLXnxVlZ.js → runtimeContext-D3TBExQ6.js} +346 -305
- package/dist/esm/sdk/{runtimeLoader-hod6T2-m.js → runtimeLoader-DQVEFVaW.js} +11 -11
- package/dist/{public/sdk/secp256k1-el9aE4Sv.js → esm/sdk/secp256k1-D-I6Gh4D.js} +36 -25
- package/dist/esm/sdk/{sessionPolicy-CHiilOAB.js → sessionPolicy-DO-MkL65.js} +8 -1
- package/dist/{public/sdk/signEvmFamily-e4IWWsZs.js → esm/sdk/signEvmFamily-C3C97Th-.js} +43 -102
- package/dist/esm/sdk/{signEvmFamilyWithUiConfirmForTempo-Cu9qdk8M.js → signEvmFamilyWithUiConfirmForTempo-BI9DSTIS.js} +2 -2
- package/dist/{public/sdk/signEvmWithUiConfirm-C61TCBnh.js → esm/sdk/signEvmWithUiConfirm-Bmcim5-g.js} +1 -1
- package/dist/esm/sdk/{signNear-Bblwn2kT.js → signNear-Bmb2fj_a.js} +19 -55
- package/dist/{public/sdk/signerLoader-D7Aey0FD.js → esm/sdk/signerLoader-B7orgq5Z.js} +3 -3
- package/dist/{public/sdk/signingFlow-rZfPegH9.js → esm/sdk/signingFlow-SZ8t_lxv.js} +9 -10
- package/dist/esm/sdk/{trace-rHe0wz7q.js → trace-DKLQZvec.js} +0 -1
- package/dist/esm/sdk/{transactionState-DP9O8F6f.js → transactionState-CJ4U8pcl.js} +50 -41
- package/dist/esm/sdk/tx-confirm-ui.js +11 -46
- 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-Bz9qKgaL.js → esm/sdk/wallet-recovery-BX61-79p.js} +3 -6
- package/dist/esm/sdk/wallet-ui.css +41 -301
- package/dist/{public/sdk/walletAuthority-BQBxgUBn.js → esm/sdk/walletAuthority-DD9T25F6.js} +1 -5
- package/dist/esm/sdk/{walletCustodyEcdsaContinuity-Hn4ORIbf.js → walletCustodyEcdsaContinuity-CF4bv9OI.js} +166 -296
- package/dist/esm/sdk/{walletRecoveryCommit-sjGNTHUj.js → walletRecoveryCommit-AI1AtIRP.js} +81 -139
- package/dist/esm/shared-ts/src/authorization/walletSessionIssuance.js +5 -8
- package/dist/esm/shared-ts/src/authorization/walletSignerActivationEquality.js +12 -0
- package/dist/esm/shared-ts/src/device-linking/committedSignerPackages.js +2 -5
- package/dist/esm/shared-ts/src/device-linking/delegatedActivationPlan.js +1 -5
- package/dist/esm/shared-ts/src/device-linking/ed25519ExportRoot.js +11 -15
- package/dist/esm/shared-ts/src/device-linking/sourceContribution.js +5 -8
- package/dist/esm/shared-ts/src/passkey-custody/primitives.js +5 -1
- package/dist/esm/shared-ts/src/signing-lanes/ownerContinuity.js +3 -7
- package/dist/esm/shared-ts/src/signing-lanes/recordParsers.js +12 -16
- package/dist/esm/shared-ts/src/threshold/signingRootScope.js +4 -1
- package/dist/esm/shared-ts/src/utils/ecdsaKeyFactsInventory.js +2 -4
- package/dist/esm/shared-ts/src/utils/ecdsaServerTiming.js +0 -1
- package/dist/esm/shared-ts/src/utils/exactKeys.js +17 -0
- package/dist/esm/shared-ts/src/utils/registrationIntent.js +2 -8
- package/dist/esm/shared-ts/src/utils/registrationSignerPlan.js +2 -5
- package/dist/esm/shared-ts/src/utils/routerAbEcdsaDerivation.js +1 -1
- package/dist/esm/shared-ts/src/utils/routerAbEd25519Yao.js +1 -1
- package/dist/esm/shared-ts/src/utils/thresholdEcdsaChainTarget.js +9 -0
- package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryCommittedProjection.js +1 -4
- package/dist/esm/utils/menuItemBlink.js +24 -0
- package/dist/esm/wasm/near_signer/pkg/wasm_signer_worker.d.ts +1 -1
- package/dist/esm/wasm/near_signer/pkg/wasm_signer_worker_bg.wasm +0 -0
- package/dist/esm/wasm/router_ab_ecdsa_client/pkg/router_ab_ecdsa_client_bg.wasm +0 -0
- package/dist/esm/wasm/router_ab_ed25519_yao_client/pkg/router_ab_ed25519_yao_client_bg.wasm +0 -0
- package/dist/public/headers.manifest.json +1 -1
- package/dist/public/sdk/{accountLifecycle-BAGG_rbk.js → accountLifecycle-zthG08aC.js} +1 -1
- package/dist/public/sdk/{adapters-B4JeK1nJ.js → adapters-Dli9XAZp.js} +20 -48
- package/dist/{esm/sdk/canonicalSignerErrorCode-CRoJMVpp.js → public/sdk/canonicalSignerErrorCode-BBIk365e.js} +1 -15
- package/dist/public/sdk/{challengeDelivery-Dd0586fo.js → challengeDelivery-DZtopOAG.js} +1 -1
- package/dist/{esm/sdk/configHelpers-vAQCzUD0.js → public/sdk/configHelpers-D1EqxVxg.js} +1 -1
- package/dist/{esm/sdk/defaultConfigs-B3c16M_8.js → public/sdk/defaultConfigs-D_33pPT9.js} +3 -3
- package/dist/public/sdk/{display-KdIL0ff7.js → display-P4nQF-yc.js} +1 -1
- package/dist/public/sdk/{ecdsaCapabilityManifest-kzO_fW09.js → ecdsaCapabilityManifest-DuMs0VtU.js} +6 -18
- package/dist/{esm/sdk/ecdsaPresignLifecycle-BFOTNYCK.js → public/sdk/ecdsaPresignLifecycle-Bfx2AQKb.js} +2 -2
- package/dist/public/sdk/{ecdsaWalletRecords-Cz4m6bIz.js → ecdsaWalletRecords-D42rtA9z.js} +2 -2
- package/dist/{esm/sdk/evmFamilyEcdsaIdentity-Co5XDcEA.js → public/sdk/evmFamilyEcdsaIdentity-CqGafQsI.js} +20 -34
- package/dist/public/sdk/{exactSessionState-CiD5fBEs.js → exactSessionState-LWDUXydN.js} +10 -30
- package/dist/public/sdk/{exactSigningLaneIdentity-DQeqPMST.js → exactSigningLaneIdentity-m6uTXV_A.js} +1 -1
- package/dist/public/sdk/{export-viewer-host-ZqA2Yz3H.js → export-viewer-host-rWMSQQMP.js} +1 -1
- package/dist/{esm/sdk/host-BWBbCAMu.js → public/sdk/host-CnV8nAUe.js} +3 -3
- package/dist/{esm/sdk/keyMaterialBrands-CX41hur6.js → public/sdk/keyMaterialBrands-CogGAAZn.js} +1 -1
- package/dist/{esm/sdk/localOnly-Bg8UuLZ5.js → public/sdk/localOnly-DTpa2jD5.js} +2 -2
- package/dist/public/sdk/{nearEd25519YaoMaterialActivation-DPb0s3hQ.js → nearEd25519YaoMaterialActivation-B5GecIvq.js} +38 -28
- package/dist/public/sdk/{nearEd25519YaoSigningPreparation-BeD-SmbK.js → nearEd25519YaoSigningPreparation-CdOT5RuC.js} +3 -3
- package/dist/public/sdk/{passkey-custody-Bk1jAknm.js → passkey-custody-UUHbC0pk.js} +1 -1
- package/dist/public/sdk/{pendingWalletRecoveryCodeBackup-DLzBb3WQ.js → pendingWalletRecoveryCodeBackup-BWluQMbt.js} +1 -1
- package/dist/public/sdk/{recovery-entrypoint-DW2tGyMs.js → recovery-entrypoint-C3fydnRC.js} +10 -10
- package/dist/public/sdk/{registration-BZDzDv91.js → registration-Ct_7LdGf.js} +30 -42
- package/dist/public/sdk/{registration-BzVHODuD.js → registration-DHERU8R_.js} +1 -1
- package/dist/public/sdk/{registrationAccounts-CKku_Sgy.js → registrationAccounts-DmWPzf3T.js} +2 -2
- package/dist/public/sdk/{registrationIntent-D0PxwEY4.js → registrationIntent-4zwk16zQ.js} +3 -9
- package/dist/public/sdk/{registrationPreparationPreload-CIAuRlxI.js → registrationPreparationPreload-D6zpWp4O.js} +2 -2
- package/dist/public/sdk/{registrationSignerPlan-CAikVZZQ.js → registrationSignerPlan-DhV8VAob.js} +2 -5
- package/dist/{esm/sdk/router-C5lF_J_u.js → public/sdk/router-B4ZWFy9E.js} +7 -7
- package/dist/{esm/sdk/routerAbNormalSigning-fhvpDtmY.js → public/sdk/routerAbNormalSigning-CVFEOZ2m.js} +1 -1
- package/dist/public/sdk/router_ab_ed25519_yao_client_bg.wasm +0 -0
- package/dist/public/sdk/{runtime-auth-DFTqwj3u.js → runtime-auth-DdfynDKt.js} +126 -273
- package/dist/public/sdk/{runtime-device-link-C1Oub8Lw.js → runtime-device-link-HJ2ptFux.js} +12 -12
- package/dist/public/sdk/{runtime-ecdsa-tempo-rkWwolw1.js → runtime-ecdsa-tempo-BGLsTAWR.js} +13 -13
- package/dist/{esm/sdk/runtime-email-otp-vuUG5LYl.js → public/sdk/runtime-email-otp-CpX88VZJ.js} +12 -12
- package/dist/{esm/sdk/runtime-export-FZWj0HxJ.js → public/sdk/runtime-export-DIVY473L.js} +13 -13
- package/dist/public/sdk/{runtime-near-B9cjurVD.js → runtime-near-CxtQi4b2.js} +12 -12
- package/dist/public/sdk/{runtime-preferences-Dq0bfyS5.js → runtime-preferences-vnJc5Svg.js} +12 -12
- package/dist/public/sdk/{runtime-recovery-codes-bTm3fLV4.js → runtime-recovery-codes-BSCLVHQj.js} +6 -6
- package/dist/{esm/sdk/runtime-recovery-C-vfFKF3.js → public/sdk/runtime-recovery-i08vCJST.js} +12 -12
- package/dist/public/sdk/{runtimeContext-iLXnxVlZ.js → runtimeContext-D3TBExQ6.js} +346 -305
- package/dist/public/sdk/{runtimeLoader-hod6T2-m.js → runtimeLoader-DQVEFVaW.js} +11 -11
- package/dist/{esm/sdk/secp256k1-el9aE4Sv.js → public/sdk/secp256k1-D-I6Gh4D.js} +36 -25
- package/dist/public/sdk/{sessionPolicy-CHiilOAB.js → sessionPolicy-DO-MkL65.js} +8 -1
- package/dist/{esm/sdk/signEvmFamily-e4IWWsZs.js → public/sdk/signEvmFamily-C3C97Th-.js} +43 -102
- package/dist/public/sdk/{signEvmFamilyWithUiConfirmForTempo-Cu9qdk8M.js → signEvmFamilyWithUiConfirmForTempo-BI9DSTIS.js} +2 -2
- package/dist/{esm/sdk/signEvmWithUiConfirm-C61TCBnh.js → public/sdk/signEvmWithUiConfirm-Bmcim5-g.js} +1 -1
- package/dist/public/sdk/{signNear-Bblwn2kT.js → signNear-Bmb2fj_a.js} +19 -55
- package/dist/{esm/sdk/signerLoader-D7Aey0FD.js → public/sdk/signerLoader-B7orgq5Z.js} +3 -3
- package/dist/{esm/sdk/signingFlow-rZfPegH9.js → public/sdk/signingFlow-SZ8t_lxv.js} +9 -10
- package/dist/public/sdk/{trace-rHe0wz7q.js → trace-DKLQZvec.js} +0 -1
- package/dist/public/sdk/{transactionState-DP9O8F6f.js → transactionState-CJ4U8pcl.js} +50 -41
- package/dist/public/sdk/tx-confirm-ui.js +11 -46
- 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-Bz9qKgaL.js → public/sdk/wallet-recovery-BX61-79p.js} +3 -6
- package/dist/public/sdk/wallet-ui.css +41 -301
- package/dist/{esm/sdk/walletAuthority-BQBxgUBn.js → public/sdk/walletAuthority-DD9T25F6.js} +1 -5
- package/dist/public/sdk/{walletCustodyEcdsaContinuity-Hn4ORIbf.js → walletCustodyEcdsaContinuity-CF4bv9OI.js} +166 -296
- package/dist/public/sdk/{walletRecoveryCommit-sjGNTHUj.js → walletRecoveryCommit-AI1AtIRP.js} +81 -139
- package/dist/public/sdk/workers/device-linking-key.worker.js +106 -105
- package/dist/public/sdk/workers/ecdsa-derivation-client.worker.js +15 -24
- package/dist/public/sdk/workers/ecdsa-presign-client.worker.js +58 -73
- package/dist/public/sdk/workers/email-otp.worker.js +13 -16
- package/dist/public/sdk/workers/evm_crypto.wasm +0 -0
- package/dist/public/sdk/workers/evm_crypto_bg.wasm +0 -0
- package/dist/public/sdk/workers/near_signer.wasm +0 -0
- package/dist/public/sdk/workers/router_ab_ecdsa_client_bg.wasm +0 -0
- package/dist/public/sdk/workers/router_ab_ed25519_yao_client_bg.wasm +0 -0
- package/dist/public/sdk/workers/tempo_signer.wasm +0 -0
- package/dist/public/sdk/workers/tempo_signer_bg.wasm +0 -0
- package/dist/public/sdk/workers/wallet-custody-ceremony.worker.js +7 -7
- package/dist/public/sdk/workers/wallet_custody_ceremony_bg.wasm +0 -0
- package/dist/public/sdk/workers/wasm_signer_worker_bg.wasm +0 -0
- package/dist/public/wallet-assets.manifest.json +112 -112
- package/dist/public/wallet-service/index.html +4 -4
- package/dist/types/shared-ts/src/authorization/delegatedAuthority.d.ts +2 -1
- package/dist/types/shared-ts/src/authorization/walletSessionIssuance.d.ts +9 -2
- package/dist/types/shared-ts/src/authorization/walletSignerActivationEquality.d.ts +4 -0
- package/dist/types/shared-ts/src/device-linking/committedSignerPackages.d.ts +3 -4
- package/dist/types/shared-ts/src/device-linking/contracts.d.ts +5 -63
- package/dist/types/shared-ts/src/device-linking/sourceContribution.d.ts +2 -0
- package/dist/types/shared-ts/src/passkey-custody/custodyEnvelope.d.ts +5 -12
- package/dist/types/shared-ts/src/passkey-custody/primitives.d.ts +9 -0
- package/dist/types/shared-ts/src/signing-lanes/execution.d.ts +11 -1
- package/dist/types/shared-ts/src/signing-lanes/ids.d.ts +1 -10
- package/dist/types/shared-ts/src/signing-lanes/rotation.d.ts +3 -5
- package/dist/types/shared-ts/src/tenant-root/tenantRootIdentifier.d.ts +3 -0
- package/dist/types/shared-ts/src/tenant-root/tenantRootOperationRecord.d.ts +2 -1
- package/dist/types/shared-ts/src/threshold/ecdsaDerivationRoleLocalBootstrap.d.ts +6 -0
- package/dist/types/shared-ts/src/threshold/signingRootScope.d.ts +1 -0
- package/dist/types/shared-ts/src/utils/ecdsaKeyFactsInventory.d.ts +2 -11
- package/dist/types/shared-ts/src/utils/eip1559TxWasmJson.d.ts +16 -0
- package/dist/types/shared-ts/src/utils/emailOtpDomain.d.ts +2 -0
- package/dist/types/shared-ts/src/utils/exactKeys.d.ts +11 -0
- package/dist/types/shared-ts/src/utils/failure.d.ts +12 -0
- package/dist/types/shared-ts/src/utils/jsonRpc.d.ts +3 -4
- package/dist/types/shared-ts/src/utils/nearRpcResults.d.ts +1 -0
- package/dist/types/shared-ts/src/utils/registrationAuthMethodInput.d.ts +3 -8
- package/dist/types/shared-ts/src/utils/registrationSignerPlan.d.ts +7 -19
- package/dist/types/shared-ts/src/utils/routerAbEcdsaDerivation.d.ts +3 -1
- package/dist/types/shared-ts/src/utils/routerAbEd25519Yao.d.ts +1 -0
- package/dist/types/shared-ts/src/utils/routerAbEd25519YaoDigests.d.ts +3 -4
- package/dist/types/shared-ts/src/utils/routerAbNormalSigningIdentity.d.ts +30 -8
- package/dist/types/shared-ts/src/utils/routerApiKeyAuth.d.ts +2 -0
- package/dist/types/shared-ts/src/utils/signingSessionSeal.d.ts +10 -11
- package/dist/types/shared-ts/src/utils/thresholdEcdsaChainTarget.d.ts +25 -0
- package/dist/types/shared-ts/src/utils/variant.d.ts +18 -0
- package/dist/types/shared-ts/src/utils/walletAuthMethodRecord.d.ts +3 -6
- package/dist/types/shared-ts/src/utils/webauthnDeviceInfo.d.ts +4 -2
- package/dist/types/shared-ts/src/wallet-recovery/recoveryEnvelopes.d.ts +3 -16
- package/dist/types/shared-ts/src/wallet-recovery/walletRecoveryPreparation.d.ts +15 -0
- package/dist/types/shared-ts/src/wallet-recovery/walletRecoveryTarget.d.ts +3 -4
- package/dist/types/wallet/build-paths.d.ts +1 -2
- package/dist/types/wallet/src/SeamsWeb/SeamsWeb.d.ts +2 -0
- package/dist/types/wallet/src/SeamsWeb/operations/auth/scheduleLinkedDevicePresignaturePrefill.d.ts +11 -0
- package/dist/types/wallet/src/SeamsWeb/operations/auth/walletAuth.d.ts +2 -1
- package/dist/types/wallet/src/SeamsWeb/operations/auth/walletUnlockSubject.d.ts +3 -17
- package/dist/types/wallet/src/SeamsWeb/operations/authMethods/emailOtp/walletActivation.d.ts +3 -4
- package/dist/types/wallet/src/SeamsWeb/operations/devices/deviceLinkingAuthorityInstallation.d.ts +2 -10
- package/dist/types/wallet/src/SeamsWeb/operations/tempo/executeEvmFamilyTransaction.d.ts +1 -1
- package/dist/types/wallet/src/SeamsWeb/publicApi/types.d.ts +7 -16
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/restoredSessionPresignaturePrefill.d.ts +2 -1
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/ui/auth-menu/AuthMenuSurface.d.ts +1 -2
- package/dist/types/wallet/src/SeamsWeb/walletIframe/shared/messages.d.ts +5 -15
- package/dist/types/wallet/src/core/accountData/near/keyMaterial.d.ts +3 -5
- package/dist/types/wallet/src/core/indexedDB/passkeyClientDB.types.d.ts +2 -8
- package/dist/types/wallet/src/core/indexedDB/pendingWalletRegistrationCommit.d.ts +3 -4
- package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/ecdsaCapabilityManifestLookups.d.ts +7 -12
- package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/walletSessionAuthorizationStore.d.ts +3 -6
- package/dist/types/wallet/src/core/platform/ecdsaRoleLocalRecords.d.ts +9 -38
- package/dist/types/wallet/src/core/platform/http.d.ts +3 -5
- package/dist/types/wallet/src/core/platform/ports.d.ts +3 -7
- package/dist/types/wallet/src/core/rpcClients/near/NearRpcError.d.ts +1 -2
- package/dist/types/wallet/src/core/rpcClients/relayer/ownerWalletExecutionLanePreflight.d.ts +2 -11
- package/dist/types/wallet/src/core/rpcClients/relayer/thresholdEcdsa.d.ts +2 -8
- package/dist/types/wallet/src/core/rpcClients/relayer/walletRecoveryPrepare.d.ts +2 -14
- package/dist/types/wallet/src/core/signingEngine/chains/near/payloads.d.ts +2 -10
- package/dist/types/wallet/src/core/signingEngine/flows/recovery/ecdsaDerivationExport.d.ts +3 -4
- package/dist/types/wallet/src/core/signingEngine/flows/recovery/ecdsaExportFlow.d.ts +4 -8
- package/dist/types/wallet/src/core/signingEngine/flows/recovery/keyExportFlow.d.ts +7 -6
- package/dist/types/wallet/src/core/signingEngine/flows/registration/accountLifecycle.d.ts +1 -10
- package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/emailOtpSigningSession.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/freshAuthRetryPolicy.d.ts +3 -4
- package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/nonceResolution.d.ts +3 -4
- package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/readySecp256k1Material.d.ts +5 -8
- package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/signers/ecdsaDerivationClientSigningMaterialSource.d.ts +1 -0
- package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/signingFlowRuntime.d.ts +10 -5
- package/dist/types/wallet/src/core/signingEngine/flows/signNear/shared/ed25519YaoCapabilityResolution.d.ts +3 -10
- package/dist/types/wallet/src/core/signingEngine/flows/signNear/shared/operationStepUpPreparation.d.ts +3 -5
- package/dist/types/wallet/src/core/signingEngine/flows/signNear/signNep413.d.ts +3 -7
- package/dist/types/wallet/src/core/signingEngine/interfaces/near.d.ts +3 -4
- package/dist/types/wallet/src/core/signingEngine/interfaces/operationDeps.d.ts +3 -5
- package/dist/types/wallet/src/core/signingEngine/interfaces/operationStepUpPreparation.d.ts +3 -5
- package/dist/types/wallet/src/core/signingEngine/nonce/nearTransactionReadiness.d.ts +3 -5
- package/dist/types/wallet/src/core/signingEngine/nonce/nonceTypes.d.ts +2 -2
- package/dist/types/wallet/src/core/signingEngine/routerAb/ecdsaDerivation/clientCeremony.d.ts +5 -22
- package/dist/types/wallet/src/core/signingEngine/routerAb/ecdsaDerivation/poolFillRoutes.d.ts +3 -14
- package/dist/types/wallet/src/core/signingEngine/session/availability/persistedAvailableSigningLanes.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/session/emailOtp/EmailOtpWalletSessionCoordinator.d.ts +37 -14
- package/dist/types/wallet/src/core/signingEngine/session/emailOtp/ecdsaPublication.d.ts +3 -5
- package/dist/types/wallet/src/core/signingEngine/session/emailOtp/ed25519ExportContext.d.ts +2 -6
- package/dist/types/wallet/src/core/signingEngine/session/emailOtp/walletUnlock.d.ts +6 -15
- package/dist/types/wallet/src/core/signingEngine/session/identity/evmFamilyEcdsaIdentity.d.ts +3 -5
- package/dist/types/wallet/src/core/signingEngine/session/identity/exactWalletSessionCredential.d.ts +3 -4
- package/dist/types/wallet/src/core/signingEngine/session/identity/exactWalletSessionReader.d.ts +3 -6
- package/dist/types/wallet/src/core/signingEngine/session/identity/laneIdentity.d.ts +5 -8
- package/dist/types/wallet/src/core/signingEngine/session/identity/signingLaneAuthBinding.d.ts +3 -5
- package/dist/types/wallet/src/core/signingEngine/session/material/activeEcdsaCapabilityRuntime.d.ts +5 -10
- package/dist/types/wallet/src/core/signingEngine/session/material/activeWalletAuthorityEcdsaRuntime.d.ts +3 -6
- package/dist/types/wallet/src/core/signingEngine/session/material/capabilityPreparationResult.d.ts +3 -22
- package/dist/types/wallet/src/core/signingEngine/session/material/ecdsaCapabilityHydration.d.ts +3 -4
- package/dist/types/wallet/src/core/signingEngine/session/material/ecdsaSealedRuntime.d.ts +3 -4
- package/dist/types/wallet/src/core/signingEngine/session/material/ecdsaSigningCapability.d.ts +5 -0
- package/dist/types/wallet/src/core/signingEngine/session/material/nearEd25519YaoSigningPreparation.d.ts +5 -10
- package/dist/types/wallet/src/core/signingEngine/session/operationState/authorizationAdmission.d.ts +3 -8
- package/dist/types/wallet/src/core/signingEngine/session/operationState/types.d.ts +3 -5
- package/dist/types/wallet/src/core/signingEngine/session/passkey/ecdsaBootstrap.d.ts +3 -4
- package/dist/types/wallet/src/core/signingEngine/session/passkey/ecdsaSessionProvision.d.ts +3 -4
- package/dist/types/wallet/src/core/signingEngine/session/passkey/unlockEcdsaWarmupPlanner.d.ts +7 -25
- package/dist/types/wallet/src/core/signingEngine/session/sealedRecovery/sealedRecovery.types.d.ts +3 -4
- package/dist/types/wallet/src/core/signingEngine/session/warmCapabilities/capabilityReaderCore.d.ts +3 -16
- package/dist/types/wallet/src/core/signingEngine/session/warmCapabilities/ed25519SealedSessionRuntime.d.ts +6 -26
- package/dist/types/wallet/src/core/signingEngine/session/warmCapabilities/persistencePorts.d.ts +3 -4
- package/dist/types/wallet/src/core/signingEngine/stepUpConfirmation/channel/confirmTypes.d.ts +11 -36
- package/dist/types/wallet/src/core/signingEngine/stepUpConfirmation/otpPrompt/authLane.d.ts +5 -8
- package/dist/types/wallet/src/core/signingEngine/stepUpConfirmation/passkeyPrompt/touchIdPrompt.d.ts +3 -5
- package/dist/types/wallet/src/core/signingEngine/stepUpConfirmation/passkeyPrompt/webauthnPromptCoordinator.d.ts +3 -8
- package/dist/types/wallet/src/core/signingEngine/stepUpConfirmation/types.d.ts +7 -22
- package/dist/types/wallet/src/core/signingEngine/threshold/commitQueueShared.d.ts +10 -10
- package/dist/types/wallet/src/core/signingEngine/threshold/crypto/ecdsaDerivationClientWasm.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/threshold/ecdsa/bootstrapSession.d.ts +3 -4
- package/dist/types/wallet/src/core/signingEngine/threshold/ecdsa/signingQueue.d.ts +1 -7
- package/dist/types/wallet/src/core/signingEngine/threshold/ed25519/commitQueue.d.ts +1 -6
- package/dist/types/wallet/src/core/signingEngine/threshold/ed25519/walletSession.d.ts +6 -36
- package/dist/types/wallet/src/core/signingEngine/threshold/ed25519/yaoPublicCapabilityReferences.d.ts +3 -4
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/ExportPrivateKeySurface.d.ts +5 -9
- package/dist/types/wallet/src/core/signingEngine/workerManager/ecdsaPresignLifecycle.d.ts +5 -16
- package/dist/types/wallet/src/core/signingEngine/workerManager/workerTypes.d.ts +3 -0
- package/dist/types/wallet/src/core/signingEngine/workerManager/workers/email-otp/crypto.d.ts +2 -11
- package/dist/types/wallet/src/core/signingEngine/workerManager/workers/email-otp/custodyRestore.d.ts +0 -2
- package/dist/types/wallet/src/core/types/linkDevice.d.ts +3 -18
- package/dist/types/wallet/src/core/types/sdkPublicResults.d.ts +5 -18
- package/dist/types/wallet/src/core/types/sdkSentEvents.d.ts +4 -21
- package/dist/types/wallet/src/core/types/seams.d.ts +17 -71
- package/dist/types/wallet/src/externalEvm/types.d.ts +5 -12
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/GlobeIcon.d.ts +1 -4
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/KeyIcon.d.ts +1 -4
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/LaptopIcon.d.ts +1 -4
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/LinkIcon.d.ts +1 -4
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/LockIcon.d.ts +1 -4
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/MailIcon.d.ts +1 -4
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/RecoveryCodesIcon.d.ts +1 -4
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/ScanIcon.d.ts +1 -4
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/SlidersIcon.d.ts +1 -4
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/SmartphoneIcon.d.ts +1 -4
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/lucideIcon.d.ts +5 -0
- package/dist/types/wallet/src/react/hooks/useAccountInput.d.ts +1 -22
- package/dist/types/wallet/src/react/transactionReview/controller.d.ts +3 -10
- package/dist/types/wallet/src/utils/menuItemBlink.d.ts +9 -0
- package/dist/workers/device-linking-key.worker.js +106 -105
- package/dist/workers/ecdsa-derivation-client.worker.js +15 -24
- package/dist/workers/ecdsa-presign-client.worker.js +58 -73
- package/dist/workers/email-otp.worker.js +13 -16
- package/dist/workers/evm_crypto.wasm +0 -0
- package/dist/workers/evm_crypto_bg.wasm +0 -0
- package/dist/workers/near_signer.wasm +0 -0
- package/dist/workers/router_ab_ecdsa_client_bg.wasm +0 -0
- package/dist/workers/router_ab_ed25519_yao_client_bg.wasm +0 -0
- package/dist/workers/tempo_signer.wasm +0 -0
- package/dist/workers/tempo_signer_bg.wasm +0 -0
- package/dist/workers/wallet-custody-ceremony.worker.js +7 -7
- package/dist/workers/wallet_custody_ceremony_bg.wasm +0 -0
- package/dist/workers/wasm_signer_worker_bg.wasm +0 -0
- package/package.json +1 -1
- package/dist/esm/components/AccountMenuButton/HaloBorder/HaloBorder.css +0 -101
- package/dist/esm/core/signingEngine/session/emailOtp/coordinatorRuntime.js +0 -131
- package/dist/esm/core/signingEngine/uiConfirm/ui/transaction-display/renderers/evm.js +0 -12
- package/dist/esm/core/signingEngine/uiConfirm/ui/transaction-display/renderers/near.js +0 -12
- package/dist/esm/core/signingEngine/uiConfirm/ui/transaction-display/renderers/tempo.js +0 -12
- package/dist/esm/react/components/AccountMenuButton/HaloBorder/HaloBorder.css +0 -101
- package/dist/esm/react/core/signingEngine/session/emailOtp/coordinatorRuntime.js +0 -131
- package/dist/esm/react/core/signingEngine/uiConfirm/ui/transaction-display/renderers/evm.js +0 -12
- package/dist/esm/react/core/signingEngine/uiConfirm/ui/transaction-display/renderers/near.js +0 -12
- package/dist/esm/react/core/signingEngine/uiConfirm/ui/transaction-display/renderers/tempo.js +0 -12
- package/dist/types/wallet/src/core/signingEngine/session/emailOtp/coordinatorRuntime.d.ts +0 -43
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/transaction-display/renderers/evm.d.ts +0 -5
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/transaction-display/renderers/near.d.ts +0 -5
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/transaction-display/renderers/tempo.d.ts +0 -5
|
@@ -1,22 +1,5 @@
|
|
|
1
1
|
import type { SeamsWeb } from '../../SeamsWeb';
|
|
2
|
-
import type {
|
|
3
|
-
export interface AccountInputState {
|
|
4
|
-
inputUsername: string;
|
|
5
|
-
lastLoggedInUsername: string;
|
|
6
|
-
lastLoggedInDomain: string;
|
|
7
|
-
/** Sponsored named NEAR account target used only by named-account registration. */
|
|
8
|
-
targetAccountId: string;
|
|
9
|
-
/** Wallet identity used for passkey login/session operations. */
|
|
10
|
-
targetWalletId: string;
|
|
11
|
-
displayPostfix: string;
|
|
12
|
-
isUsingExistingAccount: boolean;
|
|
13
|
-
/** On-chain NEAR account existence for sponsored named-account registration. */
|
|
14
|
-
accountExists: boolean;
|
|
15
|
-
/** Local passkey credential existence for wallet-scoped passkey login. */
|
|
16
|
-
passkeyCredentialExists: boolean;
|
|
17
|
-
indexDBAccounts: string[];
|
|
18
|
-
indexDBAccountOptions: StoredAccountOption[];
|
|
19
|
-
}
|
|
2
|
+
import type { UseAccountInputReturn } from '../types';
|
|
20
3
|
interface UseAccountInputOptions {
|
|
21
4
|
seams: SeamsWeb;
|
|
22
5
|
/**
|
|
@@ -27,10 +10,6 @@ interface UseAccountInputOptions {
|
|
|
27
10
|
currentWalletId?: string | null;
|
|
28
11
|
isLoggedIn: boolean;
|
|
29
12
|
}
|
|
30
|
-
export interface UseAccountInputReturn extends AccountInputState {
|
|
31
|
-
setInputUsername: (username: string) => void;
|
|
32
|
-
refreshAccountData: () => Promise<void>;
|
|
33
|
-
}
|
|
34
13
|
export declare function useAccountInput({ seams, accountDomain, currentWalletId, isLoggedIn, }: UseAccountInputOptions): UseAccountInputReturn;
|
|
35
14
|
export {};
|
|
36
15
|
//# sourceMappingURL=useAccountInput.d.ts.map
|
|
@@ -3,14 +3,12 @@ import type { SeamsWeb } from '../../SeamsWeb';
|
|
|
3
3
|
import { type TransactionReviewCapabilities } from '../../SeamsWeb/publicApi/transactionReview';
|
|
4
4
|
import type { TransactionReviewReservation } from '../../SeamsWeb/walletIframe/client/transactionReviewReservation';
|
|
5
5
|
import { TransactionReviewError, type TransactionReview, type TransactionReviewControls } from './contract';
|
|
6
|
-
|
|
6
|
+
import type { ReadonlyExclusiveUnion } from '../../../../shared-ts/src/utils/variant';
|
|
7
|
+
export type ReviewCallState = ReadonlyExclusiveUnion<{
|
|
7
8
|
readonly kind: 'queued';
|
|
8
|
-
readonly reservation?: never;
|
|
9
|
-
readonly error?: never;
|
|
10
9
|
} | {
|
|
11
10
|
readonly kind: 'reviewing';
|
|
12
11
|
readonly reservation: TransactionReviewReservation;
|
|
13
|
-
readonly error?: never;
|
|
14
12
|
} | {
|
|
15
13
|
readonly kind: 'review_failed';
|
|
16
14
|
readonly reservation: TransactionReviewReservation;
|
|
@@ -18,20 +16,15 @@ export type ReviewCallState = {
|
|
|
18
16
|
} | {
|
|
19
17
|
readonly kind: 'preparing_approval';
|
|
20
18
|
readonly reservation: TransactionReviewReservation;
|
|
21
|
-
readonly error?: never;
|
|
22
19
|
} | {
|
|
23
20
|
readonly kind: 'wallet_approval';
|
|
24
21
|
readonly reservation: TransactionReviewReservation;
|
|
25
|
-
readonly error?: never;
|
|
26
22
|
} | {
|
|
27
23
|
readonly kind: 'signing';
|
|
28
24
|
readonly reservation: TransactionReviewReservation;
|
|
29
|
-
readonly error?: never;
|
|
30
25
|
} | {
|
|
31
26
|
readonly kind: 'settled';
|
|
32
|
-
|
|
33
|
-
readonly error?: never;
|
|
34
|
-
};
|
|
27
|
+
}>;
|
|
35
28
|
export interface ReviewCallView {
|
|
36
29
|
readonly review: TransactionReview;
|
|
37
30
|
readonly controls: TransactionReviewControls;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Blinks a chosen menu item once, highlight off and then on again, so the menu
|
|
3
|
+
* confirms which item was picked before it closes, as macOS menus do. The item's
|
|
4
|
+
* stylesheet renders `data-blink="off"` and `data-blink="on"`.
|
|
5
|
+
*
|
|
6
|
+
* Returns null while the item is already blinking, so a double click commits once.
|
|
7
|
+
*/
|
|
8
|
+
export declare function blinkMenuItem(item: HTMLElement): Promise<void> | null;
|
|
9
|
+
//# sourceMappingURL=menuItemBlink.d.ts.map
|
|
@@ -782,6 +782,11 @@ function requireCanonicalBase64Url(value, label) {
|
|
|
782
782
|
}
|
|
783
783
|
return decoded;
|
|
784
784
|
}
|
|
785
|
+
function requireParsed(result, label) {
|
|
786
|
+
if (result.ok)
|
|
787
|
+
return result.value;
|
|
788
|
+
throw new Error(`${label} ${result.error.message}`);
|
|
789
|
+
}
|
|
785
790
|
function parseDigestField(value, label) {
|
|
786
791
|
try {
|
|
787
792
|
return parseDigestB64u(value);
|
|
@@ -946,11 +951,11 @@ function parseLinkedDeviceEd25519ExportRootPackageV1(raw) {
|
|
|
946
951
|
}
|
|
947
952
|
return {
|
|
948
953
|
kind: "linked_device_ed25519_export_root_package_v1",
|
|
949
|
-
linkSessionId:
|
|
950
|
-
walletId:
|
|
951
|
-
walletKeyId:
|
|
952
|
-
enrollmentId:
|
|
953
|
-
deviceId:
|
|
954
|
+
linkSessionId: requireParsed(parseLinkDeviceSessionId(record.linkSessionId), "linkSessionId"),
|
|
955
|
+
walletId: requireParsed(parseWalletId(record.walletId), "walletId"),
|
|
956
|
+
walletKeyId: requireParsed(parseWalletKeyId(record.walletKeyId), "walletKeyId"),
|
|
957
|
+
enrollmentId: requireParsed(parseLinkedDeviceEnrollmentId(record.enrollmentId), "enrollmentId"),
|
|
958
|
+
deviceId: requireParsed(parseLinkedDeviceId(record.deviceId), "deviceId"),
|
|
954
959
|
transferAlg: LINKED_DEVICE_ED25519_EXPORT_ROOT_TRANSFER_ALG_V1,
|
|
955
960
|
applicationBindingDigestB64u: parseDigestField(record.applicationBindingDigestB64u, "applicationBindingDigestB64u"),
|
|
956
961
|
registeredPublicKeyB64u: parseEd25519PublicKeyB64u(record.registeredPublicKeyB64u, "registeredPublicKeyB64u"),
|
|
@@ -1002,11 +1007,6 @@ function parseUnixMs2(value, label) {
|
|
|
1002
1007
|
}
|
|
1003
1008
|
return value;
|
|
1004
1009
|
}
|
|
1005
|
-
function parseRequired(parsed, label) {
|
|
1006
|
-
if (!parsed.ok)
|
|
1007
|
-
throw new Error(`${label} ${parsed.error.message}`);
|
|
1008
|
-
return parsed.value;
|
|
1009
|
-
}
|
|
1010
1010
|
// ../shared-ts/src/device-linking/delegatedActivationPlan.ts
|
|
1011
1011
|
var MANIFEST_FIELDS = ["kind", "keyFamilies", "signers"];
|
|
1012
1012
|
var ED25519_SIGNER_FIELDS = [
|
|
@@ -1173,11 +1173,6 @@ function exactRecord3(raw, fields, label) {
|
|
|
1173
1173
|
}
|
|
1174
1174
|
return record;
|
|
1175
1175
|
}
|
|
1176
|
-
function requireParsed(parsed, label) {
|
|
1177
|
-
if (!parsed.ok)
|
|
1178
|
-
throw new Error(`${label} ${parsed.error.message}`);
|
|
1179
|
-
return parsed.value;
|
|
1180
|
-
}
|
|
1181
1176
|
// ../shared-ts/src/utils/routerAbPublicKeyset.ts
|
|
1182
1177
|
function requireRouterAbX25519PublicKey(value, label) {
|
|
1183
1178
|
const publicKey = coerceNonEmptyString(value, label);
|
|
@@ -3005,7 +3000,7 @@ function parseEd25519Package(raw) {
|
|
|
3005
3000
|
}
|
|
3006
3001
|
const deriverA = parseEd25519ClientPackage(record.deriver_a_client_package, "deriver_a_client_package", "deriver_a");
|
|
3007
3002
|
const deriverB = parseEd25519ClientPackage(record.deriver_b_client_package, "deriver_b_client_package", "deriver_b");
|
|
3008
|
-
if (!
|
|
3003
|
+
if (!sameRouterAbEd25519YaoByteSequence(activationReceipt.transcript, deriverA.transcript) || !sameRouterAbEd25519YaoByteSequence(activationReceipt.transcript, deriverB.transcript)) {
|
|
3009
3004
|
throw new Error("CommittedEd25519SignerPackageV1 receipt transcript does not match packages");
|
|
3010
3005
|
}
|
|
3011
3006
|
return {
|
|
@@ -3178,9 +3173,6 @@ function parseCommittedEcdsaSignerPackageWireV1(raw) {
|
|
|
3178
3173
|
function inspectRawObject2(raw) {
|
|
3179
3174
|
return raw !== null && typeof raw === "object" && !Array.isArray(raw) ? raw : null;
|
|
3180
3175
|
}
|
|
3181
|
-
function sameBytes(left, right) {
|
|
3182
|
-
return left.length === right.length && left.every((value, index) => value === right[index]);
|
|
3183
|
-
}
|
|
3184
3176
|
function requireExactWireFields(record, keys, label) {
|
|
3185
3177
|
const expected = new Set(keys);
|
|
3186
3178
|
const actual = Object.keys(record);
|
|
@@ -3642,6 +3634,9 @@ function u642(value, label) {
|
|
|
3642
3634
|
function lp322(value, label) {
|
|
3643
3635
|
return concat([u322(value.length, `${label}.length`), value]);
|
|
3644
3636
|
}
|
|
3637
|
+
// ../shared-ts/src/utils/emailOtpDomain.ts
|
|
3638
|
+
var EMAIL_OTP_FACTOR_RELEASE_AAD_DOMAIN_V1 = "seams/email-otp/factor-release/v1";
|
|
3639
|
+
|
|
3645
3640
|
// ../../wasm/near_signer/pkg/wasm_signer_worker.js
|
|
3646
3641
|
var wasm;
|
|
3647
3642
|
var WASM_VECTOR_LEN = 0;
|
|
@@ -6822,9 +6817,17 @@ function parsePasskeyCustodyEnvelopeRecord(raw, label = "walletCustodyEnvelope")
|
|
|
6822
6817
|
updatedAtMs
|
|
6823
6818
|
});
|
|
6824
6819
|
}
|
|
6820
|
+
// ../shared-ts/src/utils/exactKeys.ts
|
|
6821
|
+
function hasExactKeys(value, keys) {
|
|
6822
|
+
if (value === null || typeof value !== "object" || Array.isArray(value))
|
|
6823
|
+
return false;
|
|
6824
|
+
const actual = Object.keys(value);
|
|
6825
|
+
return actual.length === keys.length && actual.every((key) => keys.includes(key));
|
|
6826
|
+
}
|
|
6827
|
+
|
|
6825
6828
|
// src/core/signingEngine/workerManager/deviceLinkingPorts.ts
|
|
6826
6829
|
function parseOrdinaryMaterialWorkerRequestV1(value) {
|
|
6827
|
-
if (
|
|
6830
|
+
if (hasExactKeys(value, ["kind", "handleId", "requirements"])) {
|
|
6828
6831
|
if (value.kind !== "device_linking_ordinary_signer_material_recipient_prepare_v1") {
|
|
6829
6832
|
throw new Error("ordinary material worker request kind is unsupported");
|
|
6830
6833
|
}
|
|
@@ -6834,7 +6837,7 @@ function parseOrdinaryMaterialWorkerRequestV1(value) {
|
|
|
6834
6837
|
requirements: parseRecipientRequirementTuple(value.requirements)
|
|
6835
6838
|
};
|
|
6836
6839
|
}
|
|
6837
|
-
if (
|
|
6840
|
+
if (hasExactKeys(value, ["kind", "handleId", "committed", "targetFactor", "resealedExportRoot"])) {
|
|
6838
6841
|
if (value.kind !== "device_linking_ordinary_signer_material_seal_v1") {
|
|
6839
6842
|
throw new Error("ordinary material worker request kind is unsupported");
|
|
6840
6843
|
}
|
|
@@ -6857,7 +6860,15 @@ function parseOrdinaryMaterialWorkerRequestV1(value) {
|
|
|
6857
6860
|
throw new Error("ordinary material worker request kind is unsupported");
|
|
6858
6861
|
}
|
|
6859
6862
|
function parseOrdinaryMaterialWorkerPrivateRequestV1(value) {
|
|
6860
|
-
if (!
|
|
6863
|
+
if (!hasExactKeys(value, [
|
|
6864
|
+
"kind",
|
|
6865
|
+
"handleId",
|
|
6866
|
+
"targetFactor",
|
|
6867
|
+
"preparations",
|
|
6868
|
+
"recipientRequests",
|
|
6869
|
+
"recipientInputs",
|
|
6870
|
+
"factorSecret"
|
|
6871
|
+
])) {
|
|
6861
6872
|
throw new Error("ordinary material private worker request has invalid fields");
|
|
6862
6873
|
}
|
|
6863
6874
|
if (value.kind !== "device_linking_ordinary_signer_material_prepare_private_v1") {
|
|
@@ -6914,7 +6925,7 @@ function assertOrdinaryExportRootResealingMatchesIdentityV1(input) {
|
|
|
6914
6925
|
function parseOrdinaryResealedExportRootRecordV1(value) {
|
|
6915
6926
|
if (value === null)
|
|
6916
6927
|
return null;
|
|
6917
|
-
if (!
|
|
6928
|
+
if (!hasExactKeys(value, ["envelope"])) {
|
|
6918
6929
|
throw new Error("ordinary material resealed export root has unsupported fields");
|
|
6919
6930
|
}
|
|
6920
6931
|
return {
|
|
@@ -6944,7 +6955,7 @@ function parseRecipientRequirementTuple(value) {
|
|
|
6944
6955
|
throw new Error("ordinary signer material recipient requirements must contain one or two entries");
|
|
6945
6956
|
}
|
|
6946
6957
|
const requirements = value.map((entry, index) => {
|
|
6947
|
-
if (!
|
|
6958
|
+
if (!hasExactKeys(entry, ["kind", "keyFamily", "walletKeyId"])) {
|
|
6948
6959
|
throw new Error(`ordinary recipient requirement ${index} has invalid fields`);
|
|
6949
6960
|
}
|
|
6950
6961
|
if (entry.kind !== "ordinary_signer_material_recipient_requirement_v1") {
|
|
@@ -6967,7 +6978,7 @@ function parseRecipientRequestTuple(value) {
|
|
|
6967
6978
|
throw new Error("ordinary signer material recipient requests must contain one or two entries");
|
|
6968
6979
|
}
|
|
6969
6980
|
const requests = value.map((entry) => {
|
|
6970
|
-
if (
|
|
6981
|
+
if (hasExactKeys(entry, ["kind", "keyFamily", "walletKeyId", "recipientPublicKeyB64u"])) {
|
|
6971
6982
|
if (entry.kind !== "ordinary_ed25519_signer_material_recipient_request_v1" || entry.keyFamily !== "ed25519") {
|
|
6972
6983
|
throw new Error("ordinary Ed25519 recipient request kind is invalid");
|
|
6973
6984
|
}
|
|
@@ -6978,7 +6989,7 @@ function parseRecipientRequestTuple(value) {
|
|
|
6978
6989
|
recipientPublicKeyB64u: parseB64u(entry.recipientPublicKeyB64u, "Ed25519 recipient public key")
|
|
6979
6990
|
};
|
|
6980
6991
|
}
|
|
6981
|
-
if (
|
|
6992
|
+
if (hasExactKeys(entry, ["kind", "keyFamily", "walletKeyId", "clientEphemeralPublicKey"])) {
|
|
6982
6993
|
if (entry.kind !== "ordinary_ecdsa_signer_material_recipient_request_v1" || entry.keyFamily !== "ecdsa_secp256k1") {
|
|
6983
6994
|
throw new Error("ordinary ECDSA recipient request kind is invalid");
|
|
6984
6995
|
}
|
|
@@ -7002,7 +7013,7 @@ function parseRecipientInputTuple(value) {
|
|
|
7002
7013
|
throw new Error("ordinary signer material recipient inputs must contain one or two entries");
|
|
7003
7014
|
}
|
|
7004
7015
|
const inputs = value.map((entry) => {
|
|
7005
|
-
if (
|
|
7016
|
+
if (hasExactKeys(entry, ["kind", "keyFamily", "walletKeyId", "recipientPrivateKey"])) {
|
|
7006
7017
|
if (entry.kind !== "ordinary_ed25519_signer_material_recipient_input_v1" || entry.keyFamily !== "ed25519") {
|
|
7007
7018
|
throw new Error("ordinary Ed25519 recipient input kind is invalid");
|
|
7008
7019
|
}
|
|
@@ -7013,7 +7024,7 @@ function parseRecipientInputTuple(value) {
|
|
|
7013
7024
|
recipientPrivateKey: parsePrivateKeyBuffer(entry.recipientPrivateKey, "Ed25519 recipient private key")
|
|
7014
7025
|
};
|
|
7015
7026
|
}
|
|
7016
|
-
if (
|
|
7027
|
+
if (hasExactKeys(entry, ["kind", "keyFamily", "walletKeyId", "clientEphemeralPrivateKey"])) {
|
|
7017
7028
|
if (entry.kind !== "ordinary_ecdsa_signer_material_recipient_input_v1" || entry.keyFamily !== "ecdsa_secp256k1") {
|
|
7018
7029
|
throw new Error("ordinary ECDSA recipient input kind is invalid");
|
|
7019
7030
|
}
|
|
@@ -7075,7 +7086,13 @@ function parsePreparation(value) {
|
|
|
7075
7086
|
return parseLinkedDeviceOrdinaryMaterialSourceContributionPreparationV1(value);
|
|
7076
7087
|
}
|
|
7077
7088
|
function parseTargetFactorBindingV1(value) {
|
|
7078
|
-
if (
|
|
7089
|
+
if (hasExactKeys(value, [
|
|
7090
|
+
"kind",
|
|
7091
|
+
"walletAuthMethodId",
|
|
7092
|
+
"verificationDigestB64u",
|
|
7093
|
+
"rpId",
|
|
7094
|
+
"credentialIdB64u"
|
|
7095
|
+
])) {
|
|
7079
7096
|
if (value.kind !== "passkey") {
|
|
7080
7097
|
throw new Error("ordinary material target factor kind is unsupported");
|
|
7081
7098
|
}
|
|
@@ -7091,7 +7108,13 @@ function parseTargetFactorBindingV1(value) {
|
|
|
7091
7108
|
credentialIdB64u: parseB64u(value.credentialIdB64u, "ordinary target factor credentialIdB64u")
|
|
7092
7109
|
};
|
|
7093
7110
|
}
|
|
7094
|
-
if (
|
|
7111
|
+
if (hasExactKeys(value, [
|
|
7112
|
+
"kind",
|
|
7113
|
+
"walletAuthMethodId",
|
|
7114
|
+
"verificationDigestB64u",
|
|
7115
|
+
"emailHashHex",
|
|
7116
|
+
"registrationAuthorityId"
|
|
7117
|
+
])) {
|
|
7095
7118
|
if (value.kind !== "email_otp") {
|
|
7096
7119
|
throw new Error("ordinary material target factor kind is unsupported");
|
|
7097
7120
|
}
|
|
@@ -7128,39 +7151,6 @@ function parseB64u(value, label) {
|
|
|
7128
7151
|
decoded.fill(0);
|
|
7129
7152
|
return encoded;
|
|
7130
7153
|
}
|
|
7131
|
-
function isOrdinaryMaterialRecipientPrepareRecordV1(value) {
|
|
7132
|
-
return value !== null && typeof value === "object" && !Array.isArray(value) && Object.keys(value).sort().join("|") === "handleId|kind|requirements";
|
|
7133
|
-
}
|
|
7134
|
-
function isOrdinaryMaterialSealRecordV1(value) {
|
|
7135
|
-
return value !== null && typeof value === "object" && !Array.isArray(value) && Object.keys(value).sort().join("|") === "committed|handleId|kind|resealedExportRoot|targetFactor";
|
|
7136
|
-
}
|
|
7137
|
-
function isOrdinaryMaterialPrivateRequestRecordV1(value) {
|
|
7138
|
-
return value !== null && typeof value === "object" && !Array.isArray(value) && Object.keys(value).sort().join("|") === "factorSecret|handleId|kind|preparations|recipientInputs|recipientRequests|targetFactor";
|
|
7139
|
-
}
|
|
7140
|
-
function isOrdinaryResealedExportRootRecordV1(value) {
|
|
7141
|
-
return value !== null && typeof value === "object" && !Array.isArray(value) && Object.keys(value).sort().join("|") === "envelope";
|
|
7142
|
-
}
|
|
7143
|
-
function isOrdinaryRecipientRequirementRecordV1(value) {
|
|
7144
|
-
return value !== null && typeof value === "object" && !Array.isArray(value) && Object.keys(value).sort().join("|") === "keyFamily|kind|walletKeyId";
|
|
7145
|
-
}
|
|
7146
|
-
function isOrdinaryEd25519RecipientRequestRecordV1(value) {
|
|
7147
|
-
return value !== null && typeof value === "object" && !Array.isArray(value) && Object.keys(value).sort().join("|") === "keyFamily|kind|recipientPublicKeyB64u|walletKeyId";
|
|
7148
|
-
}
|
|
7149
|
-
function isOrdinaryEcdsaRecipientRequestRecordV1(value) {
|
|
7150
|
-
return value !== null && typeof value === "object" && !Array.isArray(value) && Object.keys(value).sort().join("|") === "clientEphemeralPublicKey|keyFamily|kind|walletKeyId";
|
|
7151
|
-
}
|
|
7152
|
-
function isOrdinaryEd25519RecipientInputRecordV1(value) {
|
|
7153
|
-
return value !== null && typeof value === "object" && !Array.isArray(value) && Object.keys(value).sort().join("|") === "keyFamily|kind|recipientPrivateKey|walletKeyId";
|
|
7154
|
-
}
|
|
7155
|
-
function isOrdinaryEcdsaRecipientInputRecordV1(value) {
|
|
7156
|
-
return value !== null && typeof value === "object" && !Array.isArray(value) && Object.keys(value).sort().join("|") === "clientEphemeralPrivateKey|keyFamily|kind|walletKeyId";
|
|
7157
|
-
}
|
|
7158
|
-
function isOrdinaryPasskeyTargetFactorRecordV1(value) {
|
|
7159
|
-
return value !== null && typeof value === "object" && !Array.isArray(value) && Object.keys(value).sort().join("|") === "credentialIdB64u|kind|rpId|verificationDigestB64u|walletAuthMethodId";
|
|
7160
|
-
}
|
|
7161
|
-
function isOrdinaryEmailOtpTargetFactorRecordV1(value) {
|
|
7162
|
-
return value !== null && typeof value === "object" && !Array.isArray(value) && Object.keys(value).sort().join("|") === "emailHashHex|kind|registrationAuthorityId|verificationDigestB64u|walletAuthMethodId";
|
|
7163
|
-
}
|
|
7164
7154
|
|
|
7165
7155
|
// src/core/signingEngine/workerManager/workers/device-linking-key/ecdsaTargetShareHpke.ts
|
|
7166
7156
|
var LINKED_DEVICE_ECDSA_SOURCE_CONTRIBUTION_HPKE_INFO_V1 = new TextEncoder().encode("seams/linked-device/ecdsa-source-contribution/hpke-x25519-hkdf-sha256-aes256gcm/v1");
|
|
@@ -7372,14 +7362,11 @@ function sameOrdinaryPreparations(left, right) {
|
|
|
7372
7362
|
return true;
|
|
7373
7363
|
}
|
|
7374
7364
|
function sameOrdinaryEd25519SourceBinding(left, right) {
|
|
7375
|
-
return left.operation === right.operation &&
|
|
7365
|
+
return left.operation === right.operation && sameRouterAbEd25519YaoByteSequence(left.session_id, right.session_id) && sameRouterAbEd25519YaoByteSequence(left.stable_key_context_binding, right.stable_key_context_binding) && left.lifecycle.lifecycle_id === right.lifecycle.lifecycle_id && left.lifecycle.work_kind === right.lifecycle.work_kind && left.lifecycle.primitive_request_kind === right.lifecycle.primitive_request_kind && left.lifecycle.root_share_epoch === right.lifecycle.root_share_epoch && left.lifecycle.account_id === right.lifecycle.account_id && left.lifecycle.session_id === right.lifecycle.session_id && left.lifecycle.signer_set_id === right.lifecycle.signer_set_id && left.lifecycle.selected_server_id === right.lifecycle.selected_server_id && sameRouterAbMpcMaterialActivationRef(left.material_activation, right.material_activation);
|
|
7376
7366
|
}
|
|
7377
7367
|
function sameOrdinaryEd25519ApplicationBinding(left, right) {
|
|
7378
7368
|
return left.wallet_id === right.wallet_id && left.near_ed25519_signing_key_id === right.near_ed25519_signing_key_id && left.signing_root_id === right.signing_root_id && left.key_creation_signer_slot === right.key_creation_signer_slot;
|
|
7379
7369
|
}
|
|
7380
|
-
function sameNumberArray(left, right) {
|
|
7381
|
-
return left.length === right.length && left.every((value, index) => value === right[index]);
|
|
7382
|
-
}
|
|
7383
7370
|
function sameOrdinaryTargetFactorAndPreparations(left, right) {
|
|
7384
7371
|
return sameOrdinaryTargetFactor(left.targetFactor, right.targetFactor) && sameOrdinaryPreparations(left.preparations, right.preparations);
|
|
7385
7372
|
}
|
|
@@ -7394,30 +7381,18 @@ function sameEcdsaTargetRecipientPreparation(left, right) {
|
|
|
7394
7381
|
}
|
|
7395
7382
|
|
|
7396
7383
|
// src/core/signingEngine/workerManager/workers/device-linking-key/requests.ts
|
|
7397
|
-
|
|
7398
|
-
|
|
7399
|
-
|
|
7400
|
-
|
|
7401
|
-
|
|
7402
|
-
|
|
7403
|
-
|
|
7404
|
-
|
|
7405
|
-
|
|
7406
|
-
|
|
7407
|
-
|
|
7408
|
-
|
|
7409
|
-
function isDeviceLinkingWalletSessionDeliveryRequestRecordV1(value) {
|
|
7410
|
-
return hasExactKeys(value, "delivery|expected|handleId|kind");
|
|
7411
|
-
}
|
|
7412
|
-
function isDeviceLinkingWalletSessionExpectedRecordV1(value) {
|
|
7413
|
-
return hasExactKeys(value, "authorityId|authorizationId|credentialDigestB64u|deliveryBinding|expiresAtMs|installationReceiptDigestB64u|issuedAtMs|linkSessionId|quotaId|recipientPublicKey65B64u|walletAuthMethodId|walletId|walletSessionId");
|
|
7414
|
-
}
|
|
7415
|
-
function isDeviceLinkingWorkerFrameRecordV1(value) {
|
|
7416
|
-
return hasExactKeys(value, "id|request");
|
|
7417
|
-
}
|
|
7418
|
-
function hasExactKeys(value, sortedKeys) {
|
|
7419
|
-
return isPlainObject(value) && Object.keys(value).sort().join("|") === sortedKeys;
|
|
7420
|
-
}
|
|
7384
|
+
var SIGN_REQUEST_FIELDS = [
|
|
7385
|
+
"kind",
|
|
7386
|
+
"handleId",
|
|
7387
|
+
"linkSessionId",
|
|
7388
|
+
"method",
|
|
7389
|
+
"canonicalPath",
|
|
7390
|
+
"bodyDigestB64u",
|
|
7391
|
+
"devicePublicKeyDigestB64u",
|
|
7392
|
+
"challengeB64u",
|
|
7393
|
+
"issuedAtMs",
|
|
7394
|
+
"expiresAtMs"
|
|
7395
|
+
];
|
|
7421
7396
|
function parseHandleId(value) {
|
|
7422
7397
|
const handleId = requireCanonicalString(value, "handleId", "is required");
|
|
7423
7398
|
if (handleId.length > 256)
|
|
@@ -7468,7 +7443,7 @@ function parseTimestamp2(value, label) {
|
|
|
7468
7443
|
return Number(value);
|
|
7469
7444
|
}
|
|
7470
7445
|
function parseSignRequest(value) {
|
|
7471
|
-
if (!
|
|
7446
|
+
if (!hasExactKeys(value, SIGN_REQUEST_FIELDS)) {
|
|
7472
7447
|
throw new Error("device-linking sign request has invalid fields");
|
|
7473
7448
|
}
|
|
7474
7449
|
if (value.kind !== "device_linking_request_sign_v1") {
|
|
@@ -7496,7 +7471,7 @@ function parseSignRequest(value) {
|
|
|
7496
7471
|
};
|
|
7497
7472
|
}
|
|
7498
7473
|
function parseFrame(value) {
|
|
7499
|
-
if (!
|
|
7474
|
+
if (!hasExactKeys(value, ["id", "request"])) {
|
|
7500
7475
|
throw new Error("device-linking worker frame has invalid fields");
|
|
7501
7476
|
}
|
|
7502
7477
|
const frame = value;
|
|
@@ -7506,13 +7481,13 @@ function parseFrame(value) {
|
|
|
7506
7481
|
};
|
|
7507
7482
|
}
|
|
7508
7483
|
function parseRequest(value) {
|
|
7509
|
-
if (
|
|
7484
|
+
if (hasExactKeys(value, ["kind"])) {
|
|
7510
7485
|
if (value.kind !== "device_linking_key_material_create_v1") {
|
|
7511
7486
|
throw new Error("device-linking worker request kind is unsupported");
|
|
7512
7487
|
}
|
|
7513
7488
|
return { kind: "device_linking_key_material_create_v1" };
|
|
7514
7489
|
}
|
|
7515
|
-
if (
|
|
7490
|
+
if (hasExactKeys(value, ["kind", "handleId"]) && value.kind === "device_linking_key_material_discard_v1") {
|
|
7516
7491
|
return {
|
|
7517
7492
|
kind: "device_linking_key_material_discard_v1",
|
|
7518
7493
|
handleId: parseHandleId(value.handleId)
|
|
@@ -7537,17 +7512,30 @@ function parseRequest(value) {
|
|
|
7537
7512
|
throw error;
|
|
7538
7513
|
}
|
|
7539
7514
|
}
|
|
7540
|
-
if (
|
|
7515
|
+
if (hasExactKeys(value, ["kind", "handleId"]) && value.kind === "device_linking_email_otp_export_root_recipient_create_v1") {
|
|
7541
7516
|
return {
|
|
7542
7517
|
kind: "device_linking_email_otp_export_root_recipient_create_v1",
|
|
7543
7518
|
handleId: parseHandleId(value.handleId)
|
|
7544
7519
|
};
|
|
7545
7520
|
}
|
|
7546
|
-
if (
|
|
7521
|
+
if (hasExactKeys(value, SIGN_REQUEST_FIELDS)) {
|
|
7547
7522
|
const parsed = parseSignRequest(value);
|
|
7548
7523
|
return { kind: "device_linking_request_sign_v1", ...parsed };
|
|
7549
7524
|
}
|
|
7550
|
-
if (
|
|
7525
|
+
if (hasExactKeys(value, [
|
|
7526
|
+
"kind",
|
|
7527
|
+
"handleId",
|
|
7528
|
+
"walletId",
|
|
7529
|
+
"linkSessionId",
|
|
7530
|
+
"enrollmentId",
|
|
7531
|
+
"deviceId",
|
|
7532
|
+
"walletAuthMethodId",
|
|
7533
|
+
"baseWalletAuthMethodId",
|
|
7534
|
+
"targetPreparationDigestB64u",
|
|
7535
|
+
"expectedChallengeId",
|
|
7536
|
+
"verificationGrant",
|
|
7537
|
+
"factorRelease"
|
|
7538
|
+
])) {
|
|
7551
7539
|
if (value.kind !== "device_linking_email_otp_factor_release_open_v1") {
|
|
7552
7540
|
throw new Error("device-linking worker request kind is unsupported");
|
|
7553
7541
|
}
|
|
@@ -7584,11 +7572,25 @@ function parseRequest(value) {
|
|
|
7584
7572
|
factorRelease: parseLinkedDeviceEmailOtpFactorReleaseEnvelopeV1(value.factorRelease)
|
|
7585
7573
|
};
|
|
7586
7574
|
}
|
|
7587
|
-
if (
|
|
7575
|
+
if (hasExactKeys(value, ["kind", "handleId", "delivery", "expected"])) {
|
|
7588
7576
|
if (value.kind !== "device_linking_wallet_session_credential_delivery_open_v1") {
|
|
7589
7577
|
throw new Error("device-linking worker request kind is unsupported");
|
|
7590
7578
|
}
|
|
7591
|
-
if (!
|
|
7579
|
+
if (!hasExactKeys(value.expected, [
|
|
7580
|
+
"linkSessionId",
|
|
7581
|
+
"walletId",
|
|
7582
|
+
"authorityId",
|
|
7583
|
+
"walletAuthMethodId",
|
|
7584
|
+
"authorizationId",
|
|
7585
|
+
"walletSessionId",
|
|
7586
|
+
"quotaId",
|
|
7587
|
+
"deliveryBinding",
|
|
7588
|
+
"credentialDigestB64u",
|
|
7589
|
+
"installationReceiptDigestB64u",
|
|
7590
|
+
"recipientPublicKey65B64u",
|
|
7591
|
+
"issuedAtMs",
|
|
7592
|
+
"expiresAtMs"
|
|
7593
|
+
])) {
|
|
7592
7594
|
throw new Error("device-linking Wallet Session credential delivery expected identity has invalid fields");
|
|
7593
7595
|
}
|
|
7594
7596
|
const expected = value.expected;
|
|
@@ -8070,7 +8072,7 @@ async function prepareOrdinarySignerMaterial(request) {
|
|
|
8070
8072
|
})) {
|
|
8071
8073
|
throw new Error("ordinary signer material preparation conflicts with the existing activation reference");
|
|
8072
8074
|
}
|
|
8073
|
-
if (!
|
|
8075
|
+
if (!sameBytes(factorSecret, existing.factorSecret)) {
|
|
8074
8076
|
throw new Error("ordinary signer material preparation conflicts with the existing factor secret");
|
|
8075
8077
|
}
|
|
8076
8078
|
factorSecret.fill(0);
|
|
@@ -8109,7 +8111,7 @@ function assertOrdinaryRecipientPreparationMatchesRequest(prepared, request) {
|
|
|
8109
8111
|
}
|
|
8110
8112
|
for (const expected of prepared.recipientInputs) {
|
|
8111
8113
|
const actual = request.recipientInputs.find((input) => input.keyFamily === expected.keyFamily && input.walletKeyId === expected.walletKeyId);
|
|
8112
|
-
if (!actual || !
|
|
8114
|
+
if (!actual || !sameBytes(recipientPrivateBytes(expected), recipientPrivateBytes(actual))) {
|
|
8113
8115
|
throw new Error("ordinary signer material recipient input changed before preparation");
|
|
8114
8116
|
}
|
|
8115
8117
|
}
|
|
@@ -8117,7 +8119,7 @@ function assertOrdinaryRecipientPreparationMatchesRequest(prepared, request) {
|
|
|
8117
8119
|
function recipientPrivateBytes(input) {
|
|
8118
8120
|
return new Uint8Array(input.kind === "ordinary_ed25519_signer_material_recipient_input_v1" ? input.recipientPrivateKey : input.clientEphemeralPrivateKey);
|
|
8119
8121
|
}
|
|
8120
|
-
function
|
|
8122
|
+
function sameBytes(left, right) {
|
|
8121
8123
|
if (left.length !== right.length)
|
|
8122
8124
|
return false;
|
|
8123
8125
|
let difference = 0;
|
|
@@ -8264,7 +8266,6 @@ async function createEmailOtpEd25519ExportRootRecipient(handleId) {
|
|
|
8264
8266
|
slot.emailOtpExportRootRecipient = recipient;
|
|
8265
8267
|
return { recipientPublicKeyB64u: recipient.public_key_b64u() };
|
|
8266
8268
|
}
|
|
8267
|
-
var EMAIL_OTP_FACTOR_RELEASE_AAD_PREFIX = "seams/email-otp/factor-release/v1";
|
|
8268
8269
|
async function decryptEmailOtpFactorReleaseEnvelope(input) {
|
|
8269
8270
|
const release = input.factorRelease;
|
|
8270
8271
|
if (input.expectedChallengeId !== release.challengeId) {
|
|
@@ -8273,7 +8274,7 @@ async function decryptEmailOtpFactorReleaseEnvelope(input) {
|
|
|
8273
8274
|
const factorSecret = await openDeliveryRecipientEnvelope({
|
|
8274
8275
|
slot: input.slot,
|
|
8275
8276
|
envelope: release,
|
|
8276
|
-
aad: () => `${
|
|
8277
|
+
aad: () => `${EMAIL_OTP_FACTOR_RELEASE_AAD_DOMAIN_V1}\x00${input.walletId}\x00${release.enrollmentId}\x00${release.enrollmentSealKeyVersion}\x00${release.challengeId}`
|
|
8277
8278
|
});
|
|
8278
8279
|
if (factorSecret.length !== 32) {
|
|
8279
8280
|
factorSecret.fill(0);
|