@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
|
@@ -5,7 +5,7 @@ import { isPlainObject, requireRecord, requireTrimmedString } from "../../../../
|
|
|
5
5
|
import { parseRouterAbEd25519NormalSigningState } from "../../../../shared-ts/src/utils/signingSessionSeal.js";
|
|
6
6
|
import { toAccountId } from "../../../types/accountIds.js";
|
|
7
7
|
import { walletIdFromString } from "../../../../shared-ts/src/utils/registrationIds.js";
|
|
8
|
-
import { normalizeRuntimePolicyScope, signingRootScopeFromRuntimePolicyScope } from "../../../../shared-ts/src/threshold/signingRootScope.js";
|
|
8
|
+
import { normalizeRuntimePolicyScope, sameRuntimePolicyScope, signingRootScopeFromRuntimePolicyScope } from "../../../../shared-ts/src/threshold/signingRootScope.js";
|
|
9
9
|
import { ROUTER_AB_ED25519_YAO_WARM_RECOVERY_BOOTSTRAP_PATH_V1, parseRouterAbEd25519YaoWarmRecoveryBootstrapRequestV1 } from "../../../../shared-ts/src/utils/routerAbEd25519Yao.js";
|
|
10
10
|
import { ed25519DurableMaterialLocator } from "../sealedRecovery/materialActivationKey.js";
|
|
11
11
|
import { parseEd25519YaoRecoveryCapabilityV1 } from "./ed25519YaoRecoveryCapability.js";
|
|
@@ -162,9 +162,6 @@ async function parseJsonResponseOrNull(response) {
|
|
|
162
162
|
return null;
|
|
163
163
|
}
|
|
164
164
|
}
|
|
165
|
-
function sameRuntimePolicyScope(left, right) {
|
|
166
|
-
return left.orgId === right.orgId && left.projectId === right.projectId && left.envId === right.envId && left.signingRootVersion === right.signingRootVersion;
|
|
167
|
-
}
|
|
168
165
|
async function parseWarmRecoveryDescriptor(args) {
|
|
169
166
|
const record = args.record;
|
|
170
167
|
const response = args.response;
|
|
@@ -46,24 +46,21 @@ function storagePayloadFromSealedStoreRow(value) {
|
|
|
46
46
|
const obj = asRecord(value);
|
|
47
47
|
return obj && SEALED_RECORD_PAYLOAD_FIELD in obj ? obj[SEALED_RECORD_PAYLOAD_FIELD] : value;
|
|
48
48
|
}
|
|
49
|
-
function optionalStringForIndex(value) {
|
|
50
|
-
return normalizeOptionalNonEmptyString(value);
|
|
51
|
-
}
|
|
52
49
|
function durableLaneStorageRow(record) {
|
|
53
50
|
const ecdsaChainTarget = record.ecdsaRestore?.chainTarget;
|
|
54
|
-
const ecdsaThresholdSessionId =
|
|
55
|
-
const ed25519ThresholdSessionId =
|
|
51
|
+
const ecdsaThresholdSessionId = normalizeOptionalNonEmptyString(record.thresholdSessionIds.ecdsa);
|
|
52
|
+
const ed25519ThresholdSessionId = normalizeOptionalNonEmptyString(record.thresholdSessionIds.ed25519);
|
|
56
53
|
return {
|
|
57
54
|
store_key: record.storeKey,
|
|
58
55
|
wallet_id: record.walletId,
|
|
59
56
|
auth_method: record.authMethod,
|
|
60
57
|
curve: record.curve,
|
|
61
|
-
signing_root_id:
|
|
62
|
-
signing_root_version:
|
|
58
|
+
signing_root_id: normalizeOptionalNonEmptyString("signingRootId" in record ? record.signingRootId : void 0),
|
|
59
|
+
signing_root_version: normalizeOptionalNonEmptyString("signingRootVersion" in record ? record.signingRootVersion : void 0),
|
|
63
60
|
ed25519_threshold_session_id: ed25519ThresholdSessionId,
|
|
64
61
|
ecdsa_threshold_session_id: ecdsaThresholdSessionId,
|
|
65
62
|
threshold_session_id: ecdsaThresholdSessionId || ed25519ThresholdSessionId,
|
|
66
|
-
key_handle:
|
|
63
|
+
key_handle: normalizeOptionalNonEmptyString(record.ecdsaRestore?.keyHandle),
|
|
67
64
|
chain_target_key: ecdsaChainTarget ? thresholdEcdsaChainTargetKey(ecdsaChainTarget) : void 0,
|
|
68
65
|
expires_at_ms: record.expiresAtMs,
|
|
69
66
|
updated_at: record.updatedAtMs,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { thresholdEcdsaRoleLocalAdmitPresignatureWasm, thresholdEcdsaRoleLocalCommitPresignatureWasm, thresholdEcdsaRoleLocalComputeSignatureShareFromPresignatureHandleWasm, thresholdEcdsaRoleLocalDestroyPresignatureWasm,
|
|
1
|
+
import { thresholdEcdsaListAvailablePresignaturesWasm, thresholdEcdsaRoleLocalAdmitPresignatureWasm, thresholdEcdsaRoleLocalCommitPresignatureWasm, thresholdEcdsaRoleLocalComputeSignatureShareFromPresignatureHandleWasm, thresholdEcdsaRoleLocalDestroyPresignatureWasm, thresholdEcdsaRoleLocalPresignSessionAbortWasm, thresholdEcdsaRoleLocalPresignSessionInitFromMaterialHandleWasm, thresholdEcdsaRoleLocalPresignSessionStepWasm, thresholdEcdsaRoleLocalReservePresignatureWasm } from "../../threshold/crypto/ecdsaDerivationClientWasm.js";
|
|
2
2
|
import { ecdsaRoleLocalPersistedMaterialSource, resolveEcdsaRoleLocalMaterial } from "../material/ecdsaRoleLocalMaterialResolver.js";
|
|
3
3
|
//#region src/core/signingEngine/session/warmCapabilities/ecdsaLoginPrefillSigningMaterialSource.ts
|
|
4
4
|
function requireResolvedLoginPrefillMaterial(resolution) {
|
|
@@ -40,7 +40,7 @@ function createEcdsaLoginPrefillClientSigningMaterialSource(args) {
|
|
|
40
40
|
destroyClientPresignature: thresholdEcdsaRoleLocalDestroyPresignatureWasm,
|
|
41
41
|
reserveClientPresignature: thresholdEcdsaRoleLocalReservePresignatureWasm,
|
|
42
42
|
commitClientPresignature: thresholdEcdsaRoleLocalCommitPresignatureWasm,
|
|
43
|
-
listAvailableClientPresignatures:
|
|
43
|
+
listAvailableClientPresignatures: thresholdEcdsaListAvailablePresignaturesWasm.bind(void 0, "role_local_derivation_handle"),
|
|
44
44
|
computeSignatureShareFromPresignatureHandle: thresholdEcdsaRoleLocalComputeSignatureShareFromPresignatureHandleWasm
|
|
45
45
|
};
|
|
46
46
|
}
|
package/dist/esm/core/signingEngine/session/warmCapabilities/nearEd25519CapabilityRehydration.js
CHANGED
|
@@ -2,8 +2,8 @@ import { mpcMaterialActivationRefsEqual } from "../../../../shared-ts/src/utils/
|
|
|
2
2
|
import { signingLaneAuthBindingKey } from "../identity/signingLaneAuthBinding.js";
|
|
3
3
|
import { SigningSessionIds } from "../operationState/types.js";
|
|
4
4
|
import { exactEd25519SigningLaneIdentity, exactSigningLaneIdentityKey, exactSigningLaneIdentityMatches, nearEd25519SignerBindingFromBoundaryFields } from "../identity/exactSigningLaneIdentity.js";
|
|
5
|
-
import { isConcreteAvailableSigningLane } from "../availability/availableSigningLanes.js";
|
|
6
5
|
import { materialActivationKey } from "../sealedRecovery/materialActivationKey.js";
|
|
6
|
+
import { isConcreteAvailableSigningLane } from "../availability/availableSigningLanes.js";
|
|
7
7
|
//#region src/core/signingEngine/session/warmCapabilities/nearEd25519CapabilityRehydration.ts
|
|
8
8
|
function exactEd25519LaneIdentityFromAvailableLane(lane) {
|
|
9
9
|
if (!lane.authorization) throw new Error("Available Ed25519 lane requires Wallet Session authorization");
|
|
@@ -8,6 +8,11 @@ function normalizeQueueLimit(value, fallback) {
|
|
|
8
8
|
min: 1
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
|
+
function thresholdCommitQueueError(code, message) {
|
|
12
|
+
const err = /* @__PURE__ */ new Error(`[SigningEngine] ${message}`);
|
|
13
|
+
err.code = code;
|
|
14
|
+
return err;
|
|
15
|
+
}
|
|
11
16
|
function getOrCreateQueueState(queueByKey, queueKey) {
|
|
12
17
|
const existing = queueByKey.get(queueKey);
|
|
13
18
|
if (existing) return existing;
|
|
@@ -63,14 +68,23 @@ function clearThresholdCommitQueue(queueByKey) {
|
|
|
63
68
|
}
|
|
64
69
|
queueByKey.clear();
|
|
65
70
|
}
|
|
71
|
+
function resolveThresholdCommitQueueKey(args) {
|
|
72
|
+
return [
|
|
73
|
+
"material",
|
|
74
|
+
encodeURIComponent(String(args.materialActivation.materialOwner)),
|
|
75
|
+
encodeURIComponent(String(args.materialActivation.capability)),
|
|
76
|
+
encodeURIComponent(String(args.materialActivation.activationId))
|
|
77
|
+
].join(":");
|
|
78
|
+
}
|
|
66
79
|
async function withThresholdCommitQueue(args) {
|
|
67
|
-
|
|
80
|
+
const { labels, owner } = args;
|
|
68
81
|
const queueKey = String(args.queueKey || "").trim();
|
|
69
|
-
if (!queueKey) throw new Error(
|
|
82
|
+
if (!queueKey) throw new Error(`[SigningEngine] ${labels.queue} requires non-empty queueKey`);
|
|
83
|
+
if (!args.enabled) return await args.task();
|
|
70
84
|
const maxQueueLength = normalizeQueueLimit(args.maxQueueLength, DEFAULT_MAX_QUEUE_LENGTH);
|
|
71
85
|
const queueTimeoutMs = normalizeQueueLimit(args.queueTimeoutMs, DEFAULT_QUEUE_TIMEOUT_MS);
|
|
72
86
|
const state = getOrCreateQueueState(args.queueByKey, queueKey);
|
|
73
|
-
if (state.items.length + (state.running ? 1 : 0) >= maxQueueLength) throw
|
|
87
|
+
if (state.items.length + (state.running ? 1 : 0) >= maxQueueLength) throw thresholdCommitQueueError("commit_queue_overflow", `${labels.queue} overflow for ${owner} (queueKey=${queueKey}, max=${maxQueueLength})`);
|
|
74
88
|
return await new Promise((resolve, reject) => {
|
|
75
89
|
let timeoutHandle = null;
|
|
76
90
|
let settled = false;
|
|
@@ -91,8 +105,8 @@ async function withThresholdCommitQueue(args) {
|
|
|
91
105
|
clearTimeoutHandle();
|
|
92
106
|
resolve(value);
|
|
93
107
|
};
|
|
94
|
-
const makeCancelledError = (reason) =>
|
|
95
|
-
const makeTimeoutError = (timeoutMs) =>
|
|
108
|
+
const makeCancelledError = (reason) => thresholdCommitQueueError("cancelled", `${labels.queuedOperation} cancelled for ${owner} (queueKey=${queueKey}${reason === "queue_cleared" ? ", queue_cleared" : ""})`);
|
|
109
|
+
const makeTimeoutError = (timeoutMs) => thresholdCommitQueueError("commit_queue_timeout", `${labels.queue} timeout for ${owner} (queueKey=${queueKey}, waited>${timeoutMs}ms before start)`);
|
|
96
110
|
const item = {
|
|
97
111
|
enqueuedAtMs: Date.now(),
|
|
98
112
|
timeoutMs: queueTimeoutMs,
|
|
@@ -120,6 +134,6 @@ async function withThresholdCommitQueue(args) {
|
|
|
120
134
|
});
|
|
121
135
|
}
|
|
122
136
|
//#endregion
|
|
123
|
-
export { clearThresholdCommitQueue, withThresholdCommitQueue };
|
|
137
|
+
export { clearThresholdCommitQueue, resolveThresholdCommitQueueKey, withThresholdCommitQueue };
|
|
124
138
|
|
|
125
139
|
//# sourceMappingURL=commitQueueShared.js.map
|
|
@@ -564,16 +564,19 @@ async function thresholdEcdsaRoleLocalCommitPresignatureWasm(input) {
|
|
|
564
564
|
}
|
|
565
565
|
})).type !== EcdsaPresignClientResponseType.CommitSuccess) throw new Error("ThresholdEcdsaRoleLocalCommitPresignature failed");
|
|
566
566
|
}
|
|
567
|
-
async function
|
|
567
|
+
async function thresholdEcdsaListAvailablePresignaturesWasm(authorityKind, input) {
|
|
568
568
|
const response = await requestEcdsaPresignOperation({
|
|
569
569
|
workerCtx: input.workerCtx,
|
|
570
570
|
request: {
|
|
571
571
|
type: EcdsaPresignClientRequestType.ListAvailable,
|
|
572
572
|
timeoutMs: ECDSA_DERIVATION_CLIENT_WORKER_TIMEOUT_MS,
|
|
573
|
-
payload: {
|
|
573
|
+
payload: {
|
|
574
|
+
authority: { kind: authorityKind },
|
|
575
|
+
poolIdentity: input.poolIdentity
|
|
576
|
+
}
|
|
574
577
|
}
|
|
575
578
|
});
|
|
576
|
-
if (response.type !== EcdsaPresignClientResponseType.ListAvailableSuccess) throw new Error("
|
|
579
|
+
if (response.type !== EcdsaPresignClientResponseType.ListAvailableSuccess) throw new Error("ThresholdEcdsaListAvailablePresignatures failed");
|
|
577
580
|
return response.payload.map(parseListedClientPresignature);
|
|
578
581
|
}
|
|
579
582
|
async function thresholdEcdsaRoleLocalComputeSignatureShareFromPresignatureHandleWasm(input) {
|
|
@@ -611,6 +614,6 @@ async function thresholdEcdsaRoleLocalComputeSignatureShareFromPresignatureHandl
|
|
|
611
614
|
return new Uint8Array(response.payload);
|
|
612
615
|
}
|
|
613
616
|
//#endregion
|
|
614
|
-
export { clearLinkedDeviceEcdsaHolderMaterialsWasm, closeRouterAbEcdsaPostRegistrationCeremonyWasm, closeRouterAbEcdsaRegistrationCeremonyWasm, createEcdsaHolderOrdinaryExportRequestWasm, createRouterAbEcdsaPostRegistrationCeremonyWasm, createRouterAbEcdsaRegistrationCeremonyWasm, destroyLinkedDeviceEcdsaHolderMaterialWasm, destroyLinkedDeviceEcdsaHolderMaterialsWasm, finalizeEcdsaClientBootstrapCommandWasm, finalizeEcdsaHolderOrdinaryExportWasm, finalizeRouterAbEcdsaExplicitExportWasm, finalizeRouterAbEcdsaRegistrationActivationWasm, openEcdsaRoleLocalSigningMaterialWasm, persistInitialCanonicalEcdsaActivationWasm, prepareEcdsaClientBootstrapCommandWasm, prepareLinkedDeviceEcdsaSourceContributionWasm, reconcileCanonicalEcdsaActivationWasm, signWalletRecoveryEcdsaMaterialPossessionProofWasm, storeEcdsaRoleLocalSigningMaterialWasm, storeLinkedDeviceEcdsaHolderMaterialWasm, thresholdEcdsaLinkedHolderPresignSessionInitWasm, thresholdEcdsaRoleLocalAdmitPresignatureWasm, thresholdEcdsaRoleLocalCommitPresignatureWasm, thresholdEcdsaRoleLocalComputeSignatureShareFromPresignatureHandleWasm, thresholdEcdsaRoleLocalDestroyPresignatureWasm,
|
|
617
|
+
export { clearLinkedDeviceEcdsaHolderMaterialsWasm, closeRouterAbEcdsaPostRegistrationCeremonyWasm, closeRouterAbEcdsaRegistrationCeremonyWasm, createEcdsaHolderOrdinaryExportRequestWasm, createRouterAbEcdsaPostRegistrationCeremonyWasm, createRouterAbEcdsaRegistrationCeremonyWasm, destroyLinkedDeviceEcdsaHolderMaterialWasm, destroyLinkedDeviceEcdsaHolderMaterialsWasm, finalizeEcdsaClientBootstrapCommandWasm, finalizeEcdsaHolderOrdinaryExportWasm, finalizeRouterAbEcdsaExplicitExportWasm, finalizeRouterAbEcdsaRegistrationActivationWasm, openEcdsaRoleLocalSigningMaterialWasm, persistInitialCanonicalEcdsaActivationWasm, prepareEcdsaClientBootstrapCommandWasm, prepareLinkedDeviceEcdsaSourceContributionWasm, reconcileCanonicalEcdsaActivationWasm, signWalletRecoveryEcdsaMaterialPossessionProofWasm, storeEcdsaRoleLocalSigningMaterialWasm, storeLinkedDeviceEcdsaHolderMaterialWasm, thresholdEcdsaLinkedHolderPresignSessionInitWasm, thresholdEcdsaListAvailablePresignaturesWasm, thresholdEcdsaRoleLocalAdmitPresignatureWasm, thresholdEcdsaRoleLocalCommitPresignatureWasm, thresholdEcdsaRoleLocalComputeSignatureShareFromPresignatureHandleWasm, thresholdEcdsaRoleLocalDestroyPresignatureWasm, thresholdEcdsaRoleLocalPresignSessionAbortWasm, thresholdEcdsaRoleLocalPresignSessionInitFromMaterialHandleWasm, thresholdEcdsaRoleLocalPresignSessionStepWasm, thresholdEcdsaRoleLocalReservePresignatureWasm, verifyRouterAbEcdsaRegistrationClientProofsWasm };
|
|
615
618
|
|
|
616
619
|
//# sourceMappingURL=ecdsaDerivationClientWasm.js.map
|
|
@@ -1,58 +1,16 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { withThresholdCommitQueue } from "../commitQueueShared.js";
|
|
2
2
|
//#region src/core/signingEngine/threshold/ecdsa/signingQueue.ts
|
|
3
|
-
function ecdsaSigningQueueWalletIdLabel(walletId) {
|
|
4
|
-
return String(walletId).trim();
|
|
5
|
-
}
|
|
6
|
-
function createThresholdEcdsaSigningQueueOverflowError(walletId, queueKey, maxQueueLength) {
|
|
7
|
-
const normalizedWalletId = ecdsaSigningQueueWalletIdLabel(walletId);
|
|
8
|
-
const err = /* @__PURE__ */ new Error(`[SigningEngine] threshold ECDSA signing queue overflow for ${normalizedWalletId} (queueKey=${queueKey}, max=${maxQueueLength})`);
|
|
9
|
-
err.code = "commit_queue_overflow";
|
|
10
|
-
return err;
|
|
11
|
-
}
|
|
12
|
-
function createThresholdEcdsaSigningQueueTimeoutError(walletId, queueKey, timeoutMs) {
|
|
13
|
-
const normalizedWalletId = ecdsaSigningQueueWalletIdLabel(walletId);
|
|
14
|
-
const err = /* @__PURE__ */ new Error(`[SigningEngine] threshold ECDSA signing queue timeout for ${normalizedWalletId} (queueKey=${queueKey}, waited>${timeoutMs}ms before start)`);
|
|
15
|
-
err.code = "commit_queue_timeout";
|
|
16
|
-
return err;
|
|
17
|
-
}
|
|
18
|
-
function createThresholdEcdsaSigningQueueCancelledError(walletId, queueKey, reason = "cancelled") {
|
|
19
|
-
const normalizedWalletId = ecdsaSigningQueueWalletIdLabel(walletId);
|
|
20
|
-
const message = reason === "queue_cleared" ? `[SigningEngine] threshold ECDSA queued signing operation cancelled for ${normalizedWalletId} (queueKey=${queueKey}, queue_cleared)` : `[SigningEngine] threshold ECDSA queued signing operation cancelled for ${normalizedWalletId} (queueKey=${queueKey})`;
|
|
21
|
-
const err = new Error(message);
|
|
22
|
-
err.code = "cancelled";
|
|
23
|
-
return err;
|
|
24
|
-
}
|
|
25
|
-
function resolveThresholdEcdsaSigningQueueKey(args) {
|
|
26
|
-
return [
|
|
27
|
-
"material",
|
|
28
|
-
encodeURIComponent(String(args.materialActivation.materialOwner)),
|
|
29
|
-
encodeURIComponent(String(args.materialActivation.capability)),
|
|
30
|
-
encodeURIComponent(String(args.materialActivation.activationId))
|
|
31
|
-
].join(":");
|
|
32
|
-
}
|
|
33
|
-
function clearThresholdEcdsaSigningQueue(queueByKey) {
|
|
34
|
-
clearThresholdCommitQueue(queueByKey);
|
|
35
|
-
}
|
|
36
3
|
async function withThresholdEcdsaSigningQueue(args) {
|
|
37
|
-
const queueKey = String(args.queueKey || "").trim();
|
|
38
|
-
if (!queueKey) throw new Error("[SigningEngine] threshold ECDSA signing queue requires non-empty queueKey");
|
|
39
|
-
const walletKey = args.walletId;
|
|
40
4
|
return await withThresholdCommitQueue({
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
task: args.task,
|
|
48
|
-
errors: {
|
|
49
|
-
makeOverflowError: (queueKey, maxQueueLength) => createThresholdEcdsaSigningQueueOverflowError(walletKey, queueKey, maxQueueLength),
|
|
50
|
-
makeTimeoutError: (queueKey, timeoutMs) => createThresholdEcdsaSigningQueueTimeoutError(walletKey, queueKey, timeoutMs),
|
|
51
|
-
makeCancelledError: (queueKey, reason) => createThresholdEcdsaSigningQueueCancelledError(walletKey, queueKey, reason)
|
|
52
|
-
}
|
|
5
|
+
...args,
|
|
6
|
+
labels: {
|
|
7
|
+
queue: "threshold ECDSA signing queue",
|
|
8
|
+
queuedOperation: "threshold ECDSA queued signing operation"
|
|
9
|
+
},
|
|
10
|
+
owner: String(args.walletId).trim()
|
|
53
11
|
});
|
|
54
12
|
}
|
|
55
13
|
//#endregion
|
|
56
|
-
export {
|
|
14
|
+
export { withThresholdEcdsaSigningQueue };
|
|
57
15
|
|
|
58
16
|
//# sourceMappingURL=signingQueue.js.map
|
|
@@ -1,52 +1,16 @@
|
|
|
1
1
|
import { withThresholdCommitQueue } from "../commitQueueShared.js";
|
|
2
2
|
//#region src/core/signingEngine/threshold/ed25519/commitQueue.ts
|
|
3
|
-
function createThresholdEd25519CommitQueueOverflowError(nearAccountId, queueKey, maxQueueLength) {
|
|
4
|
-
const accountId = String(nearAccountId);
|
|
5
|
-
const err = /* @__PURE__ */ new Error(`[SigningEngine] threshold Ed25519 commit queue overflow for ${accountId} (queueKey=${queueKey}, max=${maxQueueLength})`);
|
|
6
|
-
err.code = "commit_queue_overflow";
|
|
7
|
-
return err;
|
|
8
|
-
}
|
|
9
|
-
function createThresholdEd25519CommitQueueTimeoutError(nearAccountId, queueKey, timeoutMs) {
|
|
10
|
-
const accountId = String(nearAccountId);
|
|
11
|
-
const err = /* @__PURE__ */ new Error(`[SigningEngine] threshold Ed25519 commit queue timeout for ${accountId} (queueKey=${queueKey}, waited>${timeoutMs}ms before start)`);
|
|
12
|
-
err.code = "commit_queue_timeout";
|
|
13
|
-
return err;
|
|
14
|
-
}
|
|
15
|
-
function createThresholdEd25519CommitQueueCancelledError(nearAccountId, queueKey, reason = "cancelled") {
|
|
16
|
-
const accountId = String(nearAccountId);
|
|
17
|
-
const message = reason === "queue_cleared" ? `[SigningEngine] threshold Ed25519 queued commit cancelled for ${accountId} (queueKey=${queueKey}, queue_cleared)` : `[SigningEngine] threshold Ed25519 queued commit cancelled for ${accountId} (queueKey=${queueKey})`;
|
|
18
|
-
const err = new Error(message);
|
|
19
|
-
err.code = "cancelled";
|
|
20
|
-
return err;
|
|
21
|
-
}
|
|
22
|
-
function resolveThresholdEd25519CommitQueueKey(args) {
|
|
23
|
-
return [
|
|
24
|
-
"material",
|
|
25
|
-
encodeURIComponent(String(args.materialActivation.materialOwner)),
|
|
26
|
-
encodeURIComponent(String(args.materialActivation.capability)),
|
|
27
|
-
encodeURIComponent(String(args.materialActivation.activationId))
|
|
28
|
-
].join(":");
|
|
29
|
-
}
|
|
30
3
|
async function withThresholdEd25519CommitQueue(args) {
|
|
31
|
-
const queueKey = String(args.queueKey || "").trim();
|
|
32
|
-
if (!queueKey) throw new Error("[SigningEngine] threshold Ed25519 commit queue requires non-empty queueKey");
|
|
33
|
-
const accountKey = String(args.nearAccountId);
|
|
34
4
|
return await withThresholdCommitQueue({
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
task: args.task,
|
|
42
|
-
errors: {
|
|
43
|
-
makeOverflowError: (queueKey, maxQueueLength) => createThresholdEd25519CommitQueueOverflowError(accountKey, queueKey, maxQueueLength),
|
|
44
|
-
makeTimeoutError: (queueKey, timeoutMs) => createThresholdEd25519CommitQueueTimeoutError(accountKey, queueKey, timeoutMs),
|
|
45
|
-
makeCancelledError: (queueKey, reason) => createThresholdEd25519CommitQueueCancelledError(accountKey, queueKey, reason)
|
|
46
|
-
}
|
|
5
|
+
...args,
|
|
6
|
+
labels: {
|
|
7
|
+
queue: "threshold Ed25519 commit queue",
|
|
8
|
+
queuedOperation: "threshold Ed25519 queued commit"
|
|
9
|
+
},
|
|
10
|
+
owner: String(args.nearAccountId)
|
|
47
11
|
});
|
|
48
12
|
}
|
|
49
13
|
//#endregion
|
|
50
|
-
export {
|
|
14
|
+
export { withThresholdEd25519CommitQueue };
|
|
51
15
|
|
|
52
16
|
//# sourceMappingURL=commitQueue.js.map
|
|
@@ -4,10 +4,11 @@ import { parseSigningSessionSealKeyVersion } from "../../../shared-ts/src/thresh
|
|
|
4
4
|
import { walletAuthAuthorityRef } from "../../../shared-ts/src/utils/walletAuthAuthority.js";
|
|
5
5
|
import { walletSessionAuthorizations } from "../../indexedDB/seamsWalletDB/walletSessionAuthorizationStore.js";
|
|
6
6
|
import { IndexedDBManager } from "../../indexedDB/index.js";
|
|
7
|
+
import { resolveThresholdCommitQueueKey } from "../threshold/commitQueueShared.js";
|
|
7
8
|
import { materialActivationKey } from "../session/sealedRecovery/materialActivationKey.js";
|
|
8
9
|
import { createDeleteDurableSealedSessionCommand } from "../session/persistence/durableSealedSessionCommands.js";
|
|
9
10
|
import { acquireSigningSessionRestoreLease, deleteDurableSealedSessionRecord, listExactSealedSessionsForWallet, releaseSigningSessionRestoreLease } from "../session/persistence/sealedSessionStore.js";
|
|
10
|
-
import {
|
|
11
|
+
import { withThresholdEcdsaSigningQueue } from "../threshold/ecdsa/signingQueue.js";
|
|
11
12
|
import { parseUserConfirmWorkerResponse } from "../../types/secure-confirm-worker.js";
|
|
12
13
|
import BUILD_PATHS from "../../../build-paths.js";
|
|
13
14
|
import { resolveWorkerUrl } from "../../walletRuntimePaths/workers.js";
|
|
@@ -369,7 +370,7 @@ var PasskeyMpcSessionManagerImpl = class {
|
|
|
369
370
|
if (inFlight) return requirePasskeyEcdsaRestoreOutcome(await inFlight, "ready");
|
|
370
371
|
const task = withThresholdEcdsaSigningQueue({
|
|
371
372
|
queueByKey: this.deps.thresholdEcdsaSigningQueueByKey,
|
|
372
|
-
queueKey:
|
|
373
|
+
queueKey: resolveThresholdCommitQueueKey({ materialActivation: record.roleLocalMaterialRef.materialActivation }),
|
|
373
374
|
walletId: toWalletId(args.walletId),
|
|
374
375
|
enabled: true,
|
|
375
376
|
task: async () => await this.restorePasskeyEcdsaRecord({
|
|
@@ -51,6 +51,21 @@ var TransactionReceipt = class extends Component {
|
|
|
51
51
|
if (row.ownerDocument.defaultView?.matchMedia("(prefers-reduced-motion: reduce)").matches) return;
|
|
52
52
|
const height = row.getBoundingClientRect().height;
|
|
53
53
|
row.dataset.opening = "";
|
|
54
|
+
const showLink = () => {
|
|
55
|
+
this.releaseExplorerRow();
|
|
56
|
+
link.animate([{
|
|
57
|
+
opacity: 0,
|
|
58
|
+
filter: "blur(4px)",
|
|
59
|
+
transform: "translateY(6px)"
|
|
60
|
+
}, {
|
|
61
|
+
opacity: 1,
|
|
62
|
+
filter: "blur(0)",
|
|
63
|
+
transform: "translateY(0)"
|
|
64
|
+
}], {
|
|
65
|
+
duration: EXPLORER_REVEAL_MS,
|
|
66
|
+
easing: EXPLORER_REVEAL_EASING
|
|
67
|
+
});
|
|
68
|
+
};
|
|
54
69
|
if (!announceClampedSurfaceResize({
|
|
55
70
|
reason: "receipt-explorer",
|
|
56
71
|
element: row,
|
|
@@ -58,28 +73,15 @@ var TransactionReceipt = class extends Component {
|
|
|
58
73
|
toCssPx: height,
|
|
59
74
|
drivenClasses: ["seams-receipt-explorer-driven"],
|
|
60
75
|
setHeightCssPx: this.setExplorerRowHeight,
|
|
61
|
-
onSettled:
|
|
76
|
+
onSettled: showLink
|
|
62
77
|
})) {
|
|
63
78
|
const opening = row.animate([{ height: "0px" }, { height: `${height}px` }], {
|
|
64
79
|
duration: EXPLORER_REVEAL_MS,
|
|
65
80
|
easing: EXPLORER_REVEAL_EASING
|
|
66
81
|
});
|
|
67
|
-
opening.onfinish =
|
|
82
|
+
opening.onfinish = showLink;
|
|
83
|
+
opening.oncancel = this.releaseExplorerRow;
|
|
68
84
|
}
|
|
69
|
-
link.animate([{
|
|
70
|
-
opacity: 0,
|
|
71
|
-
filter: "blur(4px)",
|
|
72
|
-
transform: "translateY(6px)"
|
|
73
|
-
}, {
|
|
74
|
-
opacity: 1,
|
|
75
|
-
filter: "blur(0)",
|
|
76
|
-
transform: "translateY(0)"
|
|
77
|
-
}], {
|
|
78
|
-
duration: EXPLORER_REVEAL_MS,
|
|
79
|
-
delay: 60,
|
|
80
|
-
easing: EXPLORER_REVEAL_EASING,
|
|
81
|
-
fill: "backwards"
|
|
82
|
-
});
|
|
83
85
|
}
|
|
84
86
|
render() {
|
|
85
87
|
const { receipt, data } = this.props;
|
|
@@ -1,9 +1,6 @@
|
|
|
1
1
|
import { isString } from "../../../../../shared-ts/src/utils/validation.js";
|
|
2
2
|
import { formatArgs, formatCodeSize, shortenPubkey } from "./formatters.js";
|
|
3
3
|
import { renderFallbackDisplayOperation } from "./renderers/fallback.js";
|
|
4
|
-
import { isNearDisplayOperation, renderNearDisplayOperation } from "./renderers/near.js";
|
|
5
|
-
import { isEvmDisplayOperation, renderEvmDisplayOperation } from "./renderers/evm.js";
|
|
6
|
-
import { isTempoDisplayOperation, renderTempoDisplayOperation } from "./renderers/tempo.js";
|
|
7
4
|
//#region src/core/signingEngine/uiConfirm/ui/transaction-display/tree.ts
|
|
8
5
|
function toChainLabel(chain) {
|
|
9
6
|
switch (chain) {
|
|
@@ -28,14 +25,8 @@ function buildWarningNodes(warnings) {
|
|
|
28
25
|
}))
|
|
29
26
|
}];
|
|
30
27
|
}
|
|
31
|
-
function selectOperationRenderer(operation) {
|
|
32
|
-
if (isNearDisplayOperation(operation)) return renderNearDisplayOperation;
|
|
33
|
-
if (isEvmDisplayOperation(operation)) return renderEvmDisplayOperation;
|
|
34
|
-
if (isTempoDisplayOperation(operation)) return renderTempoDisplayOperation;
|
|
35
|
-
return renderFallbackDisplayOperation;
|
|
36
|
-
}
|
|
37
28
|
function renderOperationNode(operation, depth, path) {
|
|
38
|
-
return
|
|
29
|
+
return renderFallbackDisplayOperation({
|
|
39
30
|
operation,
|
|
40
31
|
depth,
|
|
41
32
|
path,
|
|
@@ -7,6 +7,7 @@ import "../../../shared-ts/src/passkey-custody/index.js";
|
|
|
7
7
|
import { parseLinkedDeviceOrdinaryMaterialSourceContributionPreparationV1 } from "../../../shared-ts/src/device-linking/sourceContribution.js";
|
|
8
8
|
import { parseCommittedAuthorityPackagesV1 } from "../../../shared-ts/src/device-linking/committedSignerPackages.js";
|
|
9
9
|
import { parseWalletAuthorityLinkedSignerMaterialRecordV1 } from "../../indexedDB/linkedAuthoritySignerMaterial.js";
|
|
10
|
+
import { hasExactKeys } from "../../../shared-ts/src/utils/exactKeys.js";
|
|
10
11
|
//#region src/core/signingEngine/workerManager/deviceLinkingPorts.ts
|
|
11
12
|
function targetFactorBindingV1(targetFactor) {
|
|
12
13
|
const authMethod = parseWalletAuthMethodId(targetFactor.authMethod.walletAuthMethodId);
|
|
@@ -67,11 +68,15 @@ function createDeviceLinkingOrdinaryMaterialWorkerPortV1(send) {
|
|
|
67
68
|
}
|
|
68
69
|
function parseOrdinaryResealedExportRootRecordV1(value) {
|
|
69
70
|
if (value === null) return null;
|
|
70
|
-
if (!
|
|
71
|
+
if (!hasExactKeys(value, ["envelope"])) throw new Error("ordinary material resealed export root has unsupported fields");
|
|
71
72
|
return { envelope: parsePasskeyCustodyEnvelopeRecord(value.envelope) };
|
|
72
73
|
}
|
|
73
74
|
function parsePreparationResult(value) {
|
|
74
|
-
if (!
|
|
75
|
+
if (!hasExactKeys(value, [
|
|
76
|
+
"kind",
|
|
77
|
+
"targetFactor",
|
|
78
|
+
"preparations"
|
|
79
|
+
])) throw new Error("ordinary material preparation result has invalid fields");
|
|
75
80
|
if (value.kind !== "device_linking_ordinary_signer_material_preparation_v1") throw new Error("ordinary material preparation result kind is invalid");
|
|
76
81
|
return {
|
|
77
82
|
kind: "device_linking_ordinary_signer_material_preparation_v1",
|
|
@@ -93,7 +98,11 @@ function parsePreparationTuple(value) {
|
|
|
93
98
|
function parseRecipientRequirementTuple(value) {
|
|
94
99
|
if (!Array.isArray(value) || value.length === 0 || value.length > 2) throw new Error("ordinary signer material recipient requirements must contain one or two entries");
|
|
95
100
|
const requirements = value.map((entry, index) => {
|
|
96
|
-
if (!
|
|
101
|
+
if (!hasExactKeys(entry, [
|
|
102
|
+
"kind",
|
|
103
|
+
"keyFamily",
|
|
104
|
+
"walletKeyId"
|
|
105
|
+
])) throw new Error(`ordinary recipient requirement ${index} has invalid fields`);
|
|
97
106
|
if (entry.kind !== "ordinary_signer_material_recipient_requirement_v1") throw new Error("ordinary recipient requirement kind is invalid");
|
|
98
107
|
if (entry.keyFamily !== "ed25519" && entry.keyFamily !== "ecdsa_secp256k1") throw new Error("ordinary recipient requirement key family is invalid");
|
|
99
108
|
const walletKeyId = parseWalletKey(entry.walletKeyId);
|
|
@@ -111,7 +120,12 @@ function parseRecipientRequirementTuple(value) {
|
|
|
111
120
|
function parseRecipientRequestTuple(value) {
|
|
112
121
|
if (!Array.isArray(value) || value.length === 0 || value.length > 2) throw new Error("ordinary signer material recipient requests must contain one or two entries");
|
|
113
122
|
const requests = value.map((entry) => {
|
|
114
|
-
if (
|
|
123
|
+
if (hasExactKeys(entry, [
|
|
124
|
+
"kind",
|
|
125
|
+
"keyFamily",
|
|
126
|
+
"walletKeyId",
|
|
127
|
+
"recipientPublicKeyB64u"
|
|
128
|
+
])) {
|
|
115
129
|
if (entry.kind !== "ordinary_ed25519_signer_material_recipient_request_v1" || entry.keyFamily !== "ed25519") throw new Error("ordinary Ed25519 recipient request kind is invalid");
|
|
116
130
|
return {
|
|
117
131
|
kind: "ordinary_ed25519_signer_material_recipient_request_v1",
|
|
@@ -120,7 +134,12 @@ function parseRecipientRequestTuple(value) {
|
|
|
120
134
|
recipientPublicKeyB64u: parseB64u(entry.recipientPublicKeyB64u, "Ed25519 recipient public key")
|
|
121
135
|
};
|
|
122
136
|
}
|
|
123
|
-
if (
|
|
137
|
+
if (hasExactKeys(entry, [
|
|
138
|
+
"kind",
|
|
139
|
+
"keyFamily",
|
|
140
|
+
"walletKeyId",
|
|
141
|
+
"clientEphemeralPublicKey"
|
|
142
|
+
])) {
|
|
124
143
|
if (entry.kind !== "ordinary_ecdsa_signer_material_recipient_request_v1" || entry.keyFamily !== "ecdsa_secp256k1") throw new Error("ordinary ECDSA recipient request kind is invalid");
|
|
125
144
|
return {
|
|
126
145
|
kind: "ordinary_ecdsa_signer_material_recipient_request_v1",
|
|
@@ -137,7 +156,11 @@ function parseRecipientRequestTuple(value) {
|
|
|
137
156
|
return [first, ...requests.slice(1)];
|
|
138
157
|
}
|
|
139
158
|
function parseRecipientPreparationResult(value) {
|
|
140
|
-
if (!
|
|
159
|
+
if (!hasExactKeys(value, [
|
|
160
|
+
"kind",
|
|
161
|
+
"recipientRequests",
|
|
162
|
+
"recipientInputs"
|
|
163
|
+
])) throw new Error("ordinary recipient preparation result has invalid fields");
|
|
141
164
|
if (value.kind !== "device_linking_ordinary_signer_material_recipient_preparation_v1") throw new Error("ordinary recipient preparation result kind is invalid");
|
|
142
165
|
const recipientRequests = parseRecipientRequestTuple(value.recipientRequests);
|
|
143
166
|
const recipientInputs = parseRecipientInputTuple(value.recipientInputs);
|
|
@@ -150,7 +173,12 @@ function parseRecipientPreparationResult(value) {
|
|
|
150
173
|
function parseRecipientInputTuple(value) {
|
|
151
174
|
if (!Array.isArray(value) || value.length === 0 || value.length > 2) throw new Error("ordinary signer material recipient inputs must contain one or two entries");
|
|
152
175
|
const inputs = value.map((entry) => {
|
|
153
|
-
if (
|
|
176
|
+
if (hasExactKeys(entry, [
|
|
177
|
+
"kind",
|
|
178
|
+
"keyFamily",
|
|
179
|
+
"walletKeyId",
|
|
180
|
+
"recipientPrivateKey"
|
|
181
|
+
])) {
|
|
154
182
|
if (entry.kind !== "ordinary_ed25519_signer_material_recipient_input_v1" || entry.keyFamily !== "ed25519") throw new Error("ordinary Ed25519 recipient input kind is invalid");
|
|
155
183
|
return {
|
|
156
184
|
kind: "ordinary_ed25519_signer_material_recipient_input_v1",
|
|
@@ -159,7 +187,12 @@ function parseRecipientInputTuple(value) {
|
|
|
159
187
|
recipientPrivateKey: parsePrivateKeyBuffer(entry.recipientPrivateKey, "Ed25519 recipient private key")
|
|
160
188
|
};
|
|
161
189
|
}
|
|
162
|
-
if (
|
|
190
|
+
if (hasExactKeys(entry, [
|
|
191
|
+
"kind",
|
|
192
|
+
"keyFamily",
|
|
193
|
+
"walletKeyId",
|
|
194
|
+
"clientEphemeralPrivateKey"
|
|
195
|
+
])) {
|
|
163
196
|
if (entry.kind !== "ordinary_ecdsa_signer_material_recipient_input_v1" || entry.keyFamily !== "ecdsa_secp256k1") throw new Error("ordinary ECDSA recipient input kind is invalid");
|
|
164
197
|
return {
|
|
165
198
|
kind: "ordinary_ecdsa_signer_material_recipient_input_v1",
|
|
@@ -207,7 +240,13 @@ function parsePreparation(value) {
|
|
|
207
240
|
return parseLinkedDeviceOrdinaryMaterialSourceContributionPreparationV1(value);
|
|
208
241
|
}
|
|
209
242
|
function parseTargetFactorBindingV1(value) {
|
|
210
|
-
if (
|
|
243
|
+
if (hasExactKeys(value, [
|
|
244
|
+
"kind",
|
|
245
|
+
"walletAuthMethodId",
|
|
246
|
+
"verificationDigestB64u",
|
|
247
|
+
"rpId",
|
|
248
|
+
"credentialIdB64u"
|
|
249
|
+
])) {
|
|
211
250
|
if (value.kind !== "passkey") throw new Error("ordinary material target factor kind is unsupported");
|
|
212
251
|
const authMethod = parseWalletAuthMethodId(value.walletAuthMethodId);
|
|
213
252
|
if (!authMethod.ok) throw new Error(authMethod.error.message);
|
|
@@ -220,7 +259,13 @@ function parseTargetFactorBindingV1(value) {
|
|
|
220
259
|
credentialIdB64u: parseB64u(value.credentialIdB64u, "ordinary target factor credentialIdB64u")
|
|
221
260
|
};
|
|
222
261
|
}
|
|
223
|
-
if (
|
|
262
|
+
if (hasExactKeys(value, [
|
|
263
|
+
"kind",
|
|
264
|
+
"walletAuthMethodId",
|
|
265
|
+
"verificationDigestB64u",
|
|
266
|
+
"emailHashHex",
|
|
267
|
+
"registrationAuthorityId"
|
|
268
|
+
])) {
|
|
224
269
|
if (value.kind !== "email_otp") throw new Error("ordinary material target factor kind is unsupported");
|
|
225
270
|
const authMethod = parseWalletAuthMethodId(value.walletAuthMethodId);
|
|
226
271
|
if (!authMethod.ok) throw new Error(authMethod.error.message);
|
|
@@ -238,7 +283,13 @@ function parseTargetFactorBindingV1(value) {
|
|
|
238
283
|
throw new Error("ordinary material target factor kind is unsupported");
|
|
239
284
|
}
|
|
240
285
|
function parseWalletAuthorityExportRootRecordV1(value) {
|
|
241
|
-
if (!
|
|
286
|
+
if (!hasExactKeys(value, [
|
|
287
|
+
"kind",
|
|
288
|
+
"authorityId",
|
|
289
|
+
"walletAuthMethodId",
|
|
290
|
+
"walletKeyId",
|
|
291
|
+
"envelope"
|
|
292
|
+
])) throw new Error("ordinary material export-root record has invalid fields");
|
|
242
293
|
if (value.kind !== "wallet_authority_export_root_v1") throw new Error("ordinary material export-root record kind is invalid");
|
|
243
294
|
const authorityId = parseWalletAuthorityId(value.authorityId);
|
|
244
295
|
if (!authorityId.ok) throw new Error(authorityId.error.message);
|
|
@@ -255,7 +306,11 @@ function parseWalletAuthorityExportRootRecordV1(value) {
|
|
|
255
306
|
};
|
|
256
307
|
}
|
|
257
308
|
function parseSealedLocalAuthorityMaterialSetV1(value) {
|
|
258
|
-
if (!
|
|
309
|
+
if (!hasExactKeys(value, [
|
|
310
|
+
"signerMaterials",
|
|
311
|
+
"exportRoot",
|
|
312
|
+
"installedRecordSetDigestB64u"
|
|
313
|
+
])) throw new Error("ordinary material worker returned an invalid sealed record set");
|
|
259
314
|
if (!Array.isArray(value.signerMaterials) || value.signerMaterials.length === 0) throw new Error("ordinary material worker returned an invalid sealed record set");
|
|
260
315
|
const signerMaterials = value.signerMaterials.map((entry) => parseWalletAuthorityLinkedSignerMaterialRecordV1(entry));
|
|
261
316
|
const firstSignerMaterial = signerMaterials[0];
|
|
@@ -281,42 +336,6 @@ function parseB64u(value, label) {
|
|
|
281
336
|
decoded.fill(0);
|
|
282
337
|
return encoded;
|
|
283
338
|
}
|
|
284
|
-
function isOrdinaryResealedExportRootRecordV1(value) {
|
|
285
|
-
return value !== null && typeof value === "object" && !Array.isArray(value) && Object.keys(value).sort().join("|") === "envelope";
|
|
286
|
-
}
|
|
287
|
-
function isOrdinaryMaterialPreparationResultRecordV1(value) {
|
|
288
|
-
return value !== null && typeof value === "object" && !Array.isArray(value) && Object.keys(value).sort().join("|") === "kind|preparations|targetFactor";
|
|
289
|
-
}
|
|
290
|
-
function isOrdinaryRecipientRequirementRecordV1(value) {
|
|
291
|
-
return value !== null && typeof value === "object" && !Array.isArray(value) && Object.keys(value).sort().join("|") === "keyFamily|kind|walletKeyId";
|
|
292
|
-
}
|
|
293
|
-
function isOrdinaryEd25519RecipientRequestRecordV1(value) {
|
|
294
|
-
return value !== null && typeof value === "object" && !Array.isArray(value) && Object.keys(value).sort().join("|") === "keyFamily|kind|recipientPublicKeyB64u|walletKeyId";
|
|
295
|
-
}
|
|
296
|
-
function isOrdinaryEcdsaRecipientRequestRecordV1(value) {
|
|
297
|
-
return value !== null && typeof value === "object" && !Array.isArray(value) && Object.keys(value).sort().join("|") === "clientEphemeralPublicKey|keyFamily|kind|walletKeyId";
|
|
298
|
-
}
|
|
299
|
-
function isOrdinaryRecipientPreparationResultRecordV1(value) {
|
|
300
|
-
return value !== null && typeof value === "object" && !Array.isArray(value) && Object.keys(value).sort().join("|") === "kind|recipientInputs|recipientRequests";
|
|
301
|
-
}
|
|
302
|
-
function isOrdinaryEd25519RecipientInputRecordV1(value) {
|
|
303
|
-
return value !== null && typeof value === "object" && !Array.isArray(value) && Object.keys(value).sort().join("|") === "keyFamily|kind|recipientPrivateKey|walletKeyId";
|
|
304
|
-
}
|
|
305
|
-
function isOrdinaryEcdsaRecipientInputRecordV1(value) {
|
|
306
|
-
return value !== null && typeof value === "object" && !Array.isArray(value) && Object.keys(value).sort().join("|") === "clientEphemeralPrivateKey|keyFamily|kind|walletKeyId";
|
|
307
|
-
}
|
|
308
|
-
function isOrdinaryPasskeyTargetFactorRecordV1(value) {
|
|
309
|
-
return value !== null && typeof value === "object" && !Array.isArray(value) && Object.keys(value).sort().join("|") === "credentialIdB64u|kind|rpId|verificationDigestB64u|walletAuthMethodId";
|
|
310
|
-
}
|
|
311
|
-
function isOrdinaryEmailOtpTargetFactorRecordV1(value) {
|
|
312
|
-
return value !== null && typeof value === "object" && !Array.isArray(value) && Object.keys(value).sort().join("|") === "emailHashHex|kind|registrationAuthorityId|verificationDigestB64u|walletAuthMethodId";
|
|
313
|
-
}
|
|
314
|
-
function isWalletAuthorityExportRootRecordV1(value) {
|
|
315
|
-
return value !== null && typeof value === "object" && !Array.isArray(value) && Object.keys(value).sort().join("|") === "authorityId|envelope|kind|walletAuthMethodId|walletKeyId";
|
|
316
|
-
}
|
|
317
|
-
function isSealedLocalAuthorityMaterialSetRecordV1(value) {
|
|
318
|
-
return value !== null && typeof value === "object" && !Array.isArray(value) && Object.keys(value).sort().join("|") === "exportRoot|installedRecordSetDigestB64u|signerMaterials";
|
|
319
|
-
}
|
|
320
339
|
//#endregion
|
|
321
340
|
export { createDeviceLinkingOrdinaryMaterialWorkerPortV1 };
|
|
322
341
|
|
|
@@ -384,11 +384,7 @@ var WorkerTransport = class {
|
|
|
384
384
|
return worker;
|
|
385
385
|
}
|
|
386
386
|
connectPresignAuthorityChannel(request) {
|
|
387
|
-
if (request.type
|
|
388
|
-
this.connectDerivationPresignChannel(this.getOrCreateWorker("ecdsaPresignClient"), "role_local_derivation_handle");
|
|
389
|
-
return;
|
|
390
|
-
}
|
|
391
|
-
if (request.type !== EcdsaPresignClientRequestType.SessionInit) return;
|
|
387
|
+
if (request.type !== EcdsaPresignClientRequestType.ListAvailable && request.type !== EcdsaPresignClientRequestType.SessionInit) return;
|
|
392
388
|
const presignWorker = this.getOrCreateWorker("ecdsaPresignClient");
|
|
393
389
|
const authorityKind = this.parsePresignAuthorityKind(request.payload);
|
|
394
390
|
switch (authorityKind) {
|