@seams/wallet 0.8.0 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +140 -254
- package/THIRD_PARTY_NOTICES.md +7 -1
- package/dist/.build-inputs.sha256 +1 -1
- package/dist/esm/SeamsWeb/SeamsWeb.js +98 -1825
- package/dist/esm/SeamsWeb/assembly/createWalletIframeRouter.js +4 -15
- package/dist/esm/SeamsWeb/index.js +2 -2
- package/dist/esm/SeamsWeb/operations/devices/scanDevice.js +3 -361
- package/dist/esm/SeamsWeb/operations/near/delegateAction.js +18 -106
- package/dist/esm/SeamsWeb/operations/recovery/walletRecovery.js +3 -3
- package/dist/esm/SeamsWeb/operations/recovery/walletRecoveryCommit.js +8 -209
- package/dist/esm/SeamsWeb/operations/recovery/walletRecoveryDurablePayload.js +5 -5
- package/dist/esm/SeamsWeb/operations/recovery/walletRecoveryJournal.js +2 -64
- package/dist/esm/SeamsWeb/operations/tempo/executeEvmFamilyTransaction.js +1 -1
- package/dist/esm/SeamsWeb/operations/tempo/index.js +1 -13
- package/dist/esm/SeamsWeb/publicApi/auth.js +3 -19
- package/dist/esm/SeamsWeb/publicApi/createPublicApi.js +59 -94
- package/dist/esm/SeamsWeb/publicApi/currentWallet.js +1 -1
- package/dist/esm/SeamsWeb/publicApi/devices.js +33 -64
- package/dist/esm/SeamsWeb/publicApi/evm.js +28 -93
- package/dist/esm/SeamsWeb/publicApi/keyExport.js +26 -52
- package/dist/esm/SeamsWeb/publicApi/near.js +140 -435
- package/dist/esm/SeamsWeb/publicApi/placement.js +206 -0
- package/dist/esm/SeamsWeb/publicApi/session.js +13 -0
- package/dist/esm/SeamsWeb/publicApi/tempo.js +64 -221
- package/dist/esm/SeamsWeb/publicApi/waitForNearAccount.js +72 -0
- package/dist/esm/SeamsWeb/walletIframe/client/deviceCommands.js +50 -0
- package/dist/esm/SeamsWeb/walletIframe/client/emailOtpCommands.js +25 -0
- package/dist/esm/SeamsWeb/walletIframe/client/evmFamilyCommands.js +118 -0
- package/dist/esm/SeamsWeb/walletIframe/client/inboundMessages.js +223 -0
- package/dist/esm/SeamsWeb/walletIframe/client/nearCommands.js +153 -0
- package/dist/esm/SeamsWeb/walletIframe/client/overlay/overlay-styles.js +2 -2
- package/dist/esm/SeamsWeb/walletIframe/client/placementCommands.js +65 -0
- package/dist/esm/SeamsWeb/walletIframe/client/preferenceState.js +93 -0
- package/dist/esm/SeamsWeb/walletIframe/client/preferences.js +117 -0
- package/dist/esm/SeamsWeb/walletIframe/client/registrationCommands.js +92 -0
- package/dist/esm/SeamsWeb/walletIframe/client/router.js +241 -583
- package/dist/esm/SeamsWeb/walletIframe/client/sessionCommands.js +61 -0
- package/dist/esm/SeamsWeb/walletIframe/coordinator.js +175 -134
- package/dist/esm/SeamsWeb/walletIframe/host/ui/auth-menu/AuthMenuSurface.js +13 -1
- package/dist/esm/SeamsWeb/walletIframe/host/ui/auth-menu/mountAuthMenuSurface.js +1 -1
- package/dist/esm/SeamsWeb/walletIframe/shared/configuration.js +37 -0
- package/dist/esm/SeamsWeb/walletIframe/shared/exactSessionState.js +31 -11
- package/dist/esm/SeamsWeb/walletIframe/shared/facadeBoundary.js +96 -0
- package/dist/esm/SeamsWeb/walletIframe/shared/messages.js +6 -32
- package/dist/esm/advanced.js +3 -3
- package/dist/esm/build-paths.js +0 -4
- package/dist/esm/core/accountData/near/accountProjection.js +3 -3
- package/dist/esm/core/accountData/near/keyMaterial.js +2 -2
- package/dist/esm/core/config/chains.js +1 -28
- package/dist/esm/core/config/configBuilder.js +3 -14
- package/dist/esm/core/config/defaultConfigs.js +4 -6
- package/dist/esm/core/config/presignatures.js +6 -0
- package/dist/esm/core/diagnostics/registration.js +8 -0
- package/dist/esm/core/indexedDB/accountKeyMaterial.js +1 -1
- package/dist/esm/core/indexedDB/linkedAuthoritySignerMaterial.js +4 -125
- package/dist/esm/core/indexedDB/normalization.js +7 -1
- package/dist/esm/core/indexedDB/pendingWalletRecoveryCommit.js +1 -1
- package/dist/esm/core/indexedDB/pendingWalletRegistrationCommit.js +3 -41
- package/dist/esm/core/indexedDB/seamsWalletDB/accountSignerRows.js +261 -0
- package/dist/esm/core/indexedDB/seamsWalletDB/ecdsaCapabilityManifestLookups.js +2 -201
- package/dist/esm/core/indexedDB/seamsWalletDB/ecdsaCapabilityManifestRecords.js +5 -736
- package/dist/esm/core/indexedDB/seamsWalletDB/ecdsaCapabilityManifestStore.js +6 -1084
- package/dist/esm/core/indexedDB/seamsWalletDB/ecdsaClientPresignatures.js +20 -138
- package/dist/esm/core/indexedDB/seamsWalletDB/manager.js +100 -4
- package/dist/esm/core/indexedDB/seamsWalletDB/nonceLeaseRows.js +156 -0
- package/dist/esm/core/indexedDB/seamsWalletDB/registrationSetup.js +4 -11
- package/dist/esm/core/indexedDB/seamsWalletDB/repositories.js +91 -547
- package/dist/esm/core/indexedDB/seamsWalletDB/signerOutboxRows.js +90 -0
- package/dist/esm/core/indexedDB/seamsWalletDB/walletCustodyEcdsaContinuity.js +7 -92
- package/dist/esm/core/indexedDB/seamsWalletDB/walletOwnershipGeneration.js +43 -0
- package/dist/esm/core/indexedDB/seamsWalletDB/walletSessionAuthorizationStore.js +103 -157
- package/dist/esm/core/indexedDB/unifiedIndexedDBManager.js +2 -1
- package/dist/esm/core/indexedDB/walletCustodyEd25519MaterialRecord.js +1 -1
- package/dist/esm/core/rpcClients/evm/nonceBackend.js +1 -176
- package/dist/esm/core/rpcClients/near/accountExists.js +34 -0
- package/dist/esm/core/rpcClients/relayer/ecdsaPrepareSession.js +42 -0
- package/dist/esm/core/rpcClients/relayer/relayerHttp.js +31 -1
- package/dist/esm/core/rpcClients/relayer/routerAbNormalSigning.js +47 -11
- package/dist/esm/core/rpcClients/relayer/walletRecoveryFinalize.js +2 -48
- package/dist/esm/core/rpcClients/relayer/walletRecoveryPrepare.js +9 -9
- package/dist/esm/core/rpcClients/relayer/walletRecoveryRotate.js +1 -223
- package/dist/esm/core/rpcClients/relayer/walletRegistration.js +36 -2197
- package/dist/esm/core/rpcClients/relayer/walletSessionAuthorizationStatus.js +145 -14
- package/dist/esm/core/signingEngine/chains/evm/bytes.js +1 -15
- package/dist/esm/core/signingEngine/chains/evm/evmAdapter.js +1 -1
- package/dist/esm/core/signingEngine/chains/near/display.js +1 -27
- package/dist/esm/core/signingEngine/chains/near/nearSignerWasm.js +2 -2
- package/dist/esm/core/signingEngine/flows/registration/accountLifecycle.js +6 -39
- package/dist/esm/core/signingEngine/flows/shared/signingConfirmation.js +2 -2
- package/dist/esm/core/signingEngine/flows/shared/signingStateMachine.js +1 -11
- package/dist/esm/core/signingEngine/flows/signEvmFamily/authPlanning.js +2 -2
- package/dist/esm/core/signingEngine/flows/signEvmFamily/ecdsaSelection.js +3 -3
- package/dist/esm/core/signingEngine/flows/signEvmFamily/emailOtpSigningSession.js +3 -136
- package/dist/esm/core/signingEngine/flows/signEvmFamily/freshWalletSessionRetry.js +1 -1
- package/dist/esm/core/signingEngine/flows/signEvmFamily/operationIds.js +1 -1
- package/dist/esm/core/signingEngine/flows/signEvmFamily/preparedSigning.js +2 -3
- package/dist/esm/core/signingEngine/flows/signEvmFamily/readySecp256k1Material.js +40 -5
- package/dist/esm/core/signingEngine/flows/signEvmFamily/signEvmFamily.js +4 -4
- package/dist/esm/core/signingEngine/flows/signEvmFamily/signers/ecdsaDerivationClientSigningMaterialSource.js +1 -1
- package/dist/esm/core/signingEngine/flows/signEvmFamily/signers/secp256k1.js +27 -53
- package/dist/esm/core/signingEngine/flows/signEvmFamily/signingFlow.js +5 -5
- package/dist/esm/core/signingEngine/flows/signEvmFamily/signingFlowRuntime.js +40 -33
- package/dist/esm/core/signingEngine/flows/signEvmFamily/thresholdAdmission.js +8 -2
- package/dist/esm/core/signingEngine/flows/signNear/implicitAccountFunding.js +1 -1
- package/dist/esm/core/signingEngine/flows/signNear/shared/ed25519YaoNormalSigning.js +94 -31
- package/dist/esm/core/signingEngine/flows/signNear/shared/implicitAccountFundingPort.js +1 -8
- package/dist/esm/core/signingEngine/flows/signNear/shared/operationStepUpPreparation.js +1 -38
- package/dist/esm/core/signingEngine/flows/signNear/shared/signatureOnlySigning.js +53 -8
- package/dist/esm/core/signingEngine/flows/signNear/signDelegate.js +5 -5
- package/dist/esm/core/signingEngine/flows/signNear/signNear.js +30 -44
- package/dist/esm/core/signingEngine/flows/signNear/signNep413.js +21 -12
- package/dist/esm/core/signingEngine/flows/signNear/signTransactions.js +10 -9
- package/dist/esm/core/signingEngine/interfaces/ecdsaChainTarget.js +1 -1
- package/dist/esm/core/signingEngine/nonce/nonceLaneKeys.js +1 -35
- package/dist/esm/core/signingEngine/nonce/nonceTypes.js +2 -26
- package/dist/esm/core/signingEngine/routerAb/ecdsaDerivation/httpRequest.js +4 -3
- package/dist/esm/core/signingEngine/routerAb/ecdsaDerivation/poolFillRoutes.js +5 -1
- package/dist/esm/core/signingEngine/routerAb/ecdsaDerivation/presignaturePool.js +112 -162
- package/dist/esm/core/signingEngine/routerAb/ecdsaDerivation/presignaturePoolPolicy.js +31 -0
- package/dist/esm/core/signingEngine/routerAb/ecdsaDerivation/signingMaterialRef.js +1 -1
- package/dist/esm/core/signingEngine/session/availability/availableSigningLanes.js +3 -913
- package/dist/esm/core/signingEngine/session/emailOtp/challengeDelivery.js +1 -45
- package/dist/esm/core/signingEngine/session/emailOtp/ecdsaSigningSessionAuthority.js +1 -81
- package/dist/esm/core/signingEngine/session/identity/clientSessionPersistenceState.js +1 -43
- package/dist/esm/core/signingEngine/session/identity/emailOtpEcdsaDerivationIdentity.js +1 -9
- package/dist/esm/core/signingEngine/session/identity/evmFamilyEcdsaIdentity.js +3 -125
- package/dist/esm/core/signingEngine/session/identity/exactSigningLaneIdentity.js +3 -19
- package/dist/esm/core/signingEngine/session/identity/laneIdentity.js +2 -106
- package/dist/esm/core/signingEngine/session/keyMaterialBrands.js +1 -1
- package/dist/esm/core/signingEngine/session/lifecycle/walletSessionFailure.js +1 -1
- package/dist/esm/core/signingEngine/session/material/activeEcdsaCapabilityRuntime.js +1 -114
- package/dist/esm/core/signingEngine/session/material/activeWalletAuthorityEcdsaRuntime.js +2 -2
- package/dist/esm/core/signingEngine/session/material/ecdsaCapabilityManifest.js +2 -187
- package/dist/esm/core/signingEngine/session/material/ecdsaRoleLocalMaterialResolver.js +2 -18
- package/dist/esm/core/signingEngine/session/material/ecdsaSigningCapability.js +2 -130
- package/dist/esm/core/signingEngine/session/material/linkedEcdsaHolderRuntime.js +1 -25
- package/dist/esm/core/signingEngine/session/material/nearEd25519YaoMaterialActivation.js +1 -73
- package/dist/esm/core/signingEngine/session/material/walletSigningStateFailure.js +1 -69
- package/dist/esm/core/signingEngine/session/operationState/preparedOperation.js +1 -5
- package/dist/esm/core/signingEngine/session/operationState/transactionState.js +0 -1
- package/dist/esm/core/signingEngine/session/passkey/prfCache.js +1 -5
- package/dist/esm/core/signingEngine/session/persistence/durableSealedSessionCommands.js +1 -9
- package/dist/esm/core/signingEngine/session/persistence/ecdsaRoleLocalRecords.js +3 -202
- package/dist/esm/core/signingEngine/session/persistence/sealedSessionRecords.js +4 -83
- package/dist/esm/core/signingEngine/session/persistence/sealedSessionStore.js +2 -2
- package/dist/esm/core/signingEngine/session/planning/planner.js +2 -13
- package/dist/esm/core/signingEngine/session/sealedRecovery/materialActivationKey.js +1 -8
- package/dist/esm/core/signingEngine/session/warmCapabilities/routerAbWalletSessionCredential.js +2 -1
- package/dist/esm/core/signingEngine/session/warmCapabilities/sealedRefreshParity.js +2 -41
- package/dist/esm/core/signingEngine/stepUpConfirmation/intentDigestPreparation.js +1 -14
- package/dist/esm/core/signingEngine/stepUpConfirmation/types.js +1 -7
- package/dist/esm/core/signingEngine/threshold/commitQueueShared.js +1 -127
- package/dist/esm/core/signingEngine/threshold/crypto/ecdsaDerivationClientWasm.js +3 -297
- package/dist/esm/core/signingEngine/threshold/ecdsa/operationStepUp.js +10 -24
- package/dist/esm/core/signingEngine/threshold/ed25519/walletSession.js +7 -209
- package/dist/esm/core/signingEngine/threshold/ed25519/yaoPublicCapabilityReferences.js +5 -208
- package/dist/esm/core/signingEngine/threshold/sessionPolicy.js +3 -9
- package/dist/esm/core/signingEngine/uiConfirm/nearFundingNotice.js +1 -17
- package/dist/esm/core/signingEngine/uiConfirm/ui/confirm-surface-resize.js +2 -173
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ConfirmationContent.js +3 -3
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ReviewDisclosure.js +2 -2
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/TransactionReceipt.js +1 -1
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/TransactionReview.js +5 -4
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/mountConfirmationSurface.js +2 -2
- package/dist/esm/core/signingEngine/uiConfirm/ui/surface-resize-events.js +1 -6
- package/dist/esm/core/signingEngine/uiConfirm/ui/transaction-display/formatters.js +1 -10
- package/dist/esm/core/signingEngine/webauthnAuth/credentials/credentialExtensions.js +1 -19
- package/dist/esm/core/signingEngine/webauthnAuth/credentials/helpers.js +2 -170
- package/dist/esm/core/signingEngine/workerManager/ecdsaPresignPoolIdentity.js +27 -5
- package/dist/esm/core/signingEngine/workerManager/validation.js +1 -104
- package/dist/esm/core/signingEngine/workerManager/workerTypes.js +1 -33
- package/dist/esm/core/types/rpc.js +1 -4
- package/dist/esm/core/types/sdkSentEvents.js +1 -24
- package/dist/esm/core/walletRuntimePaths/base.js +1 -28
- package/dist/esm/externalEvm/controller.js +7 -7
- package/dist/esm/index.js +8 -7
- package/dist/esm/react/components/AccountMenuButton/AuthenticationMethodsModal.js +9 -9
- package/dist/esm/react/components/AccountMenuButton/LinkedDevicesModal.css +1 -2
- package/dist/esm/react/components/AccountMenuButton/LinkedDevicesModal.js +9 -185
- package/dist/esm/react/components/AccountMenuButton/WalletRegionSection.js +303 -0
- package/dist/esm/react/components/AccountMenuButton/WalletSettingsLayout.js +31 -5
- package/dist/esm/react/components/AccountMenuButton/index.js +21 -13
- package/dist/esm/react/components/AccountMenuButton/types.js +2 -1
- package/dist/esm/react/components/HostedSeamsAuthMenu/shell.js +5 -17
- package/dist/esm/react/components/QRCodeScanner.js +5 -5
- package/dist/esm/react/components/ShowQRCode.js +13 -13
- package/dist/esm/react/context/SeamsWebProvider.js +1 -2
- package/dist/esm/react/context/index.js +8 -10
- package/dist/esm/react/context/seamsManagerSingleton.js +1 -1
- package/dist/esm/react/context/useLoginStateRefresher.js +10 -13
- package/dist/esm/react/context/useNearProvisioningStateRefresh.js +3 -3
- package/dist/esm/react/context/useSeamsContextValue.js +33 -81
- package/dist/esm/react/context/useSeamsWithSdkFlow.js +22 -51
- package/dist/esm/react/context/useWalletIframeLifecycle.js +20 -110
- package/dist/esm/react/hooks/useAccountInput.js +10 -13
- package/dist/esm/react/hooks/useDeviceLinking.js +1 -1
- package/dist/esm/react/hooks/useNearClient.js +1 -1
- package/dist/esm/react/hooks/useQRCamera.js +2 -8
- package/dist/esm/react/hooks/useWallet.js +5 -6
- package/dist/esm/react/hooks/useWalletAuth.js +3 -4
- package/dist/esm/react/hooks/useWalletDevices.js +2 -2
- package/dist/esm/react/index.js +4 -4
- package/dist/esm/react/transactionReview/TransactionReviewHost.js +1 -1
- package/dist/esm/react/transactionReview/boundCalls.js +5 -39
- package/dist/esm/react/transactionReview/controller.js +3 -4
- package/dist/esm/react/transactionReview/snapshot.js +1 -1
- package/dist/esm/react/utils/walletIframe.js +11 -52
- package/dist/esm/sdk/ConfirmationDrawer-DY0_yeUV.js +1 -0
- package/dist/esm/sdk/NonceCoordinator-CFFq8-Q9.js +1 -0
- package/dist/esm/sdk/accountLifecycle-CAMVowDl.js +1 -0
- package/dist/esm/sdk/activeWalletSession-DiZcKjB_.js +1 -0
- package/dist/esm/sdk/adapters-DdDOQzl4.js +2 -0
- package/dist/esm/sdk/appearance-ZGVLwA4N.js +1 -0
- package/dist/esm/sdk/authenticatorOptions-DMLnDWT2.js +1 -0
- package/dist/esm/sdk/authorizationAdmission-Ckx6q6tp.js +1 -0
- package/dist/esm/sdk/bytes-BBYkulRB.js +1 -0
- package/dist/esm/sdk/canonicalPrimitives-CKPGgpxg.js +1 -0
- package/dist/esm/sdk/canonicalSignerErrorCode-DEHsPxNm.js +1 -0
- package/dist/esm/sdk/capabilityKinds-CKQ4Uqnv.js +1 -0
- package/dist/esm/sdk/chains-CiYQT1K4.js +1 -0
- package/dist/esm/sdk/challengeDelivery-DxXAkOfS.js +1 -0
- package/dist/esm/sdk/clientSessionPersistenceState-CImFWDj6.js +1 -0
- package/dist/esm/sdk/commitQueue-iBNUt9Bz.js +1 -0
- package/dist/esm/sdk/configBuilder-ZiZwFKt4.js +1 -0
- package/dist/esm/sdk/configHelpers-D8Ivi6p8.js +1 -0
- package/dist/esm/sdk/digestEncoding-Dzc1rzWV.js +1 -0
- package/dist/esm/sdk/display-ClqZq-Xt.js +1 -0
- package/dist/esm/sdk/ecdsaCapabilityManifest-BlzJAQF8.js +1 -0
- package/dist/esm/sdk/ecdsaChainTarget-C8ZtMZ8l.js +1 -0
- package/dist/esm/sdk/ecdsaDerivationClientWasm-CVeNEou2.js +1 -0
- package/dist/esm/sdk/ecdsaDerivationExport-BZFHSMCv.js +1 -0
- package/dist/esm/sdk/ecdsaWalletRecords-D4WeYc7H.js +1 -0
- package/dist/esm/sdk/emailOtpEcdsaDerivationIdentity-B8HzTh4T.js +1 -0
- package/dist/esm/sdk/enrichDisplayModelWithAbi-69bNckvi.js +1 -0
- package/dist/esm/sdk/evmCryptoWasm-BXsIyRon.js +1 -0
- package/dist/esm/sdk/export-viewer-host-CsFeiIhd.js +1 -0
- package/dist/esm/sdk/exportKeypairOperation-DGQIYML3.js +1 -0
- package/dist/esm/sdk/helpers-Ddy72ULN.js +1 -0
- package/dist/esm/sdk/host-B1CdRGoI.js +1 -0
- package/dist/esm/sdk/intentDigest-CE-tLw87.js +1 -0
- package/dist/esm/sdk/jsxRuntime.module-BcZNe_OA.js +2 -0
- package/dist/esm/sdk/lanes-DnBwWv4l.js +1 -0
- package/dist/esm/sdk/localOnly-ClCo6602.js +1 -0
- package/dist/esm/sdk/messages-vxz27Way.js +1 -0
- package/dist/esm/sdk/mountExportPrivateKeySurface-CBZ0wRYj.js +1 -0
- package/dist/esm/sdk/mountRecoveryCodeBackupSurface-B1qhFF6G.js +2 -0
- package/dist/esm/sdk/nearEd25519YaoMaterialActivation-fWQI3rYj.js +1 -0
- package/dist/esm/sdk/nearEd25519YaoSigningPreparation-B0d1AG3u.js +1 -0
- package/dist/esm/sdk/nonceLaneKeys-Fkvk2UPy.js +1 -0
- package/dist/esm/sdk/normalization-CpLZcL2f.js +1 -0
- package/dist/esm/sdk/normalization-DCvuCvh0.js +1 -0
- package/dist/esm/sdk/normalize-kUDm5zfS.js +1 -0
- package/dist/esm/sdk/operationFingerprint-CTR9G1NT.js +1 -0
- package/dist/esm/sdk/passkey-custody-BQj44jEM.js +1 -0
- package/dist/esm/sdk/pendingWalletRecoveryCodeBackup-yJN8VAHn.js +1 -0
- package/dist/esm/sdk/presignaturePool-DwlTReFO.js +1 -0
- package/dist/esm/sdk/presignatures-DB2IPD-A.js +1 -0
- package/dist/esm/sdk/prfCache-BMpqZZ-v.js +1 -0
- package/dist/esm/sdk/primitives-CAcl7ON7.js +1 -0
- package/dist/esm/sdk/promptText-D2f5Rg0h.js +1 -0
- package/dist/esm/sdk/recovery-entrypoint-Bl5GgbW9.js +1 -0
- package/dist/esm/sdk/registration-C4sALQZO.js +1 -0
- package/dist/esm/sdk/registration-CEqVAgNJ.js +1 -0
- package/dist/esm/sdk/registrationAccounts-D4RVetMz.js +1 -0
- package/dist/esm/sdk/registrationAuthMethodInput-6ccY2Vuh.js +1 -0
- package/dist/esm/sdk/registrationIds-CdPqm-Ya.js +1 -0
- package/dist/esm/sdk/registrationIntent-DOkZcKSP.js +1 -0
- package/dist/esm/sdk/registrationSignerPlan-B9GCvpTV.js +1 -0
- package/dist/esm/sdk/requireStepUpAuth-DCVqmeee.js +1 -0
- package/dist/esm/sdk/routerAbNormalSigning-BG75eyI2.js +1 -0
- package/dist/esm/sdk/router_ab_ed25519_yao_client_bg.wasm +0 -0
- package/dist/esm/sdk/runtime-auth-tgfe70hU.js +1 -0
- package/dist/esm/sdk/runtime-device-link-BUxuQupR.js +1 -0
- package/dist/esm/sdk/runtime-ecdsa-tempo-DOBk_EtI.js +1 -0
- package/dist/esm/sdk/runtime-email-otp-CsAJKvYC.js +1 -0
- package/dist/esm/sdk/runtime-export-7REbcnBl.js +1 -0
- package/dist/esm/sdk/runtime-near-BA0DQf6H.js +1 -0
- package/dist/esm/sdk/runtime-preferences-cRViPE8a.js +1 -0
- package/dist/esm/sdk/runtime-recovery-RRc8Yz1y.js +1 -0
- package/dist/esm/sdk/runtime-recovery-codes-BZMiAR_5.js +1 -0
- package/dist/esm/sdk/sdkSentEvents-D3q1h-Uo.js +1 -0
- package/dist/esm/sdk/secp256k1-DSLttQND.js +1 -0
- package/dist/esm/sdk/secureRandomId-BIekT8bE.js +1 -0
- package/dist/esm/sdk/sessionPolicy-J-RrlPZQ.js +1 -0
- package/dist/esm/sdk/shared-DdfxBUGY.js +6 -0
- package/dist/esm/sdk/signEvmFamily-KUNWKVeh.js +1 -0
- package/dist/esm/sdk/signEvmFamilyWithUiConfirmForTempo-Dc57bJ3V.js +1 -0
- package/dist/esm/sdk/signEvmWithUiConfirm-CqxL7UbT.js +1 -0
- package/dist/esm/sdk/signNear-CO5bx24Z.js +1 -0
- package/dist/esm/sdk/signatureUses-CjJ233KX.js +1 -0
- package/dist/esm/sdk/signerDomain-vQmlnsbF.js +1 -0
- package/dist/esm/sdk/signingFlow-vrXxrhlG.js +2 -0
- package/dist/esm/sdk/signingQueue-BrGJXBqe.js +1 -0
- package/dist/esm/sdk/signingSessionSeal-CDLUmAFY.js +1 -0
- package/dist/esm/sdk/singletons-8UH3gOnZ.js +1 -0
- package/dist/esm/sdk/theme-_AUTWLS_.js +1 -0
- package/dist/esm/sdk/thresholdEcdsa-CO7xo1So.js +1 -0
- package/dist/esm/sdk/trace-BvbCxdXF.js +1 -0
- package/dist/esm/sdk/transaction-activity-D40ih2j-.js +1 -0
- package/dist/esm/sdk/transactionReviewAdmission-C-a3ctCJ.js +1 -0
- package/dist/esm/sdk/transactionState-DVinJk4K.js +1 -0
- package/dist/esm/sdk/tx-confirm-ui.js +7 -11
- package/dist/esm/sdk/types-BNUuaUtl.js +1 -0
- package/dist/esm/sdk/types-D3GM-uHR.js +1 -0
- 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/esm/sdk/wallet-recovery-C1kesLCF.js +1 -0
- package/dist/esm/sdk/wallet-ui.css +1 -1
- package/dist/esm/sdk/walletAuthMethodRecord-CXedSgpV.js +1 -0
- package/dist/esm/sdk/walletAuthority-B5hXHWpK.js +1 -0
- package/dist/esm/sdk/walletCustodyEcdsaContinuity-abNZ_dvX.js +1 -0
- package/dist/esm/sdk/walletIframeIdentity-DJ0KOBHg.js +1 -0
- package/dist/esm/sdk/walletOwnershipGeneration-DoXVMDWe.js +1 -0
- package/dist/esm/sdk/walletRecoveryCommit-Cc9AqHr0.js +1 -0
- package/dist/esm/sdk/walletRecoveryRotate-DWTAFYiv.js +1 -0
- package/dist/esm/sdk/walletSessionAuthorizationProjection-DWBksIJR.js +1 -0
- package/dist/esm/sdk/walletSessionAuthorizationStatus-o1VgsLhA.js +1 -0
- package/dist/esm/sdk/walletSessionAuthorizationStore-gEYPmu-G.js +1 -0
- package/dist/esm/sdk/walletSessionFailure-Bu4VPKTz.js +1 -0
- package/dist/esm/sdk/warmSessionHydration-DgjuUacN.js +1 -0
- package/dist/esm/sdk/webauthnP256-BEz4DEAs.js +1 -0
- package/dist/esm/sdk/webauthnPromptCoordinator-BEudHQBr.js +1 -0
- package/dist/esm/shared-ts/src/authorization/capabilityKinds.js +1 -7
- package/dist/esm/shared-ts/src/authorization/delegatedAuthority.js +2 -20
- package/dist/esm/shared-ts/src/authorization/index.js +1 -2
- package/dist/esm/shared-ts/src/authorization/operationFingerprint.js +1 -20
- package/dist/esm/shared-ts/src/authorization/walletAuthority.js +4 -51
- package/dist/esm/shared-ts/src/authorization/walletSessionIssuance.js +1 -112
- package/dist/esm/shared-ts/src/device-linking/activeWalletSession.js +13 -3
- package/dist/esm/shared-ts/src/device-linking/authorityActivation.js +6 -116
- package/dist/esm/shared-ts/src/device-linking/committedSignerPackages.js +3 -270
- package/dist/esm/shared-ts/src/device-linking/delegatedActivationPlan.js +2 -2
- package/dist/esm/shared-ts/src/device-linking/deviceManagement.js +1 -12
- package/dist/esm/shared-ts/src/device-linking/digests.js +1 -109
- package/dist/esm/shared-ts/src/device-linking/index.js +0 -2
- package/dist/esm/shared-ts/src/device-linking/parsers.js +7 -921
- package/dist/esm/shared-ts/src/device-linking/requestProof.js +1 -19
- package/dist/esm/shared-ts/src/device-linking/sourceContribution.js +5 -358
- package/dist/esm/shared-ts/src/device-linking/walletSessionCredentialDelivery.js +1 -172
- package/dist/esm/shared-ts/src/device-linking/wireFields.js +4 -5
- package/dist/esm/shared-ts/src/near/actions.js +1 -13
- package/dist/esm/shared-ts/src/near/nearClient.js +1 -1
- package/dist/esm/shared-ts/src/passkey-custody/custodyEnvelope.js +3 -59
- package/dist/esm/shared-ts/src/passkey-custody/custodySecretBinding.js +4 -8
- package/dist/esm/shared-ts/src/passkey-custody/index.js +0 -1
- package/dist/esm/shared-ts/src/signing-lanes/index.js +0 -1
- package/dist/esm/shared-ts/src/signing-lanes/ownerContinuity.js +0 -59
- package/dist/esm/shared-ts/src/threshold/ed25519OperationFingerprint.js +1 -1
- package/dist/esm/shared-ts/src/threshold/keyMaterialBrands.js +1 -4
- package/dist/esm/shared-ts/src/threshold/participants.js +1 -2
- package/dist/esm/shared-ts/src/threshold/signingRootScope.js +1 -4
- package/dist/esm/shared-ts/src/utils/authenticatorOptions.js +1 -12
- package/dist/esm/shared-ts/src/utils/canonicalPrimitives.js +2 -5
- package/dist/esm/shared-ts/src/utils/domainIds.js +1 -7
- package/dist/esm/shared-ts/src/utils/ecdsaCapabilityActivation.js +1 -16
- package/dist/esm/shared-ts/src/utils/ecdsaServerTiming.js +6 -1
- package/dist/esm/shared-ts/src/utils/emailOtpDomain.js +1 -23
- package/dist/esm/shared-ts/src/utils/emailOtpRecoveryKey.js +1 -42
- package/dist/esm/shared-ts/src/utils/errors.js +1 -43
- package/dist/esm/shared-ts/src/utils/index.js +18 -22
- package/dist/esm/shared-ts/src/utils/near.js +2 -74
- package/dist/esm/shared-ts/src/utils/normalize.js +1 -22
- package/dist/esm/shared-ts/src/utils/registrationAuthMethodInput.js +1 -74
- package/dist/esm/shared-ts/src/utils/registrationEstablishedSession.js +6 -275
- package/dist/esm/shared-ts/src/utils/registrationIds.js +1 -203
- package/dist/esm/shared-ts/src/utils/registrationIntent.js +1 -389
- package/dist/esm/shared-ts/src/utils/registrationSignerPlan.js +2 -434
- package/dist/esm/shared-ts/src/utils/routerAbEcdsaDerivation.js +6 -414
- package/dist/esm/shared-ts/src/utils/routerAbEd25519Yao.js +1 -334
- package/dist/esm/shared-ts/src/utils/routerAbEd25519YaoDigests.js +2 -40
- package/dist/esm/shared-ts/src/utils/routerAbNormalSigningIdentity.js +1 -1
- package/dist/esm/shared-ts/src/utils/signingSessionSeal.js +1 -6
- package/dist/esm/shared-ts/src/utils/thresholdEcdsaKeyHandle.js +1 -6
- package/dist/esm/shared-ts/src/utils/validation.js +2 -17
- package/dist/esm/shared-ts/src/utils/walletAuthAuthority.js +1 -28
- package/dist/esm/shared-ts/src/utils/walletAuthMethodRecord.js +1 -11
- package/dist/esm/shared-ts/src/utils/walletCapabilityBindings.js +1 -7
- package/dist/esm/shared-ts/src/wallet-recovery/index.js +3 -5
- package/dist/esm/shared-ts/src/wallet-recovery/recoveryCodeIssuance.js +1 -35
- package/dist/esm/shared-ts/src/wallet-recovery/recoveryCodeLocator.js +0 -32
- package/dist/esm/shared-ts/src/wallet-recovery/recoveryCodeReservation.js +1 -15
- package/dist/esm/shared-ts/src/wallet-recovery/recoveryKeyId.js +0 -11
- package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryCommittedProjection.js +1 -1
- package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryEcdsaPossession.js +2 -42
- package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryEnvelopeSet.js +3 -53
- package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryRotation.js +2 -63
- package/dist/esm/threshold.js +1 -1
- package/dist/esm/utils/intentDigest.js +1 -62
- 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/ConfirmationDrawer-DY0_yeUV.js +1 -0
- package/dist/public/sdk/NonceCoordinator-CFFq8-Q9.js +1 -0
- package/dist/public/sdk/accountLifecycle-CAMVowDl.js +1 -0
- package/dist/public/sdk/activeWalletSession-DiZcKjB_.js +1 -0
- package/dist/public/sdk/adapters-DdDOQzl4.js +2 -0
- package/dist/public/sdk/appearance-ZGVLwA4N.js +1 -0
- package/dist/public/sdk/authenticatorOptions-DMLnDWT2.js +1 -0
- package/dist/public/sdk/authorizationAdmission-Ckx6q6tp.js +1 -0
- package/dist/public/sdk/bytes-BBYkulRB.js +1 -0
- package/dist/public/sdk/canonicalPrimitives-CKPGgpxg.js +1 -0
- package/dist/public/sdk/canonicalSignerErrorCode-DEHsPxNm.js +1 -0
- package/dist/public/sdk/capabilityKinds-CKQ4Uqnv.js +1 -0
- package/dist/public/sdk/chains-CiYQT1K4.js +1 -0
- package/dist/public/sdk/challengeDelivery-DxXAkOfS.js +1 -0
- package/dist/public/sdk/clientSessionPersistenceState-CImFWDj6.js +1 -0
- package/dist/public/sdk/commitQueue-iBNUt9Bz.js +1 -0
- package/dist/public/sdk/configBuilder-ZiZwFKt4.js +1 -0
- package/dist/public/sdk/configHelpers-D8Ivi6p8.js +1 -0
- package/dist/public/sdk/digestEncoding-Dzc1rzWV.js +1 -0
- package/dist/public/sdk/display-ClqZq-Xt.js +1 -0
- package/dist/public/sdk/ecdsaCapabilityManifest-BlzJAQF8.js +1 -0
- package/dist/public/sdk/ecdsaChainTarget-C8ZtMZ8l.js +1 -0
- package/dist/public/sdk/ecdsaDerivationClientWasm-CVeNEou2.js +1 -0
- package/dist/public/sdk/ecdsaDerivationExport-BZFHSMCv.js +1 -0
- package/dist/public/sdk/ecdsaWalletRecords-D4WeYc7H.js +1 -0
- package/dist/public/sdk/emailOtpEcdsaDerivationIdentity-B8HzTh4T.js +1 -0
- package/dist/public/sdk/enrichDisplayModelWithAbi-69bNckvi.js +1 -0
- package/dist/public/sdk/evmCryptoWasm-BXsIyRon.js +1 -0
- package/dist/public/sdk/export-viewer-host-CsFeiIhd.js +1 -0
- package/dist/public/sdk/exportKeypairOperation-DGQIYML3.js +1 -0
- package/dist/public/sdk/helpers-Ddy72ULN.js +1 -0
- package/dist/public/sdk/host-B1CdRGoI.js +1 -0
- package/dist/public/sdk/intentDigest-CE-tLw87.js +1 -0
- package/dist/public/sdk/jsxRuntime.module-BcZNe_OA.js +2 -0
- package/dist/public/sdk/lanes-DnBwWv4l.js +1 -0
- package/dist/public/sdk/localOnly-ClCo6602.js +1 -0
- package/dist/public/sdk/messages-vxz27Way.js +1 -0
- package/dist/public/sdk/mountExportPrivateKeySurface-CBZ0wRYj.js +1 -0
- package/dist/public/sdk/mountRecoveryCodeBackupSurface-B1qhFF6G.js +2 -0
- package/dist/public/sdk/nearEd25519YaoMaterialActivation-fWQI3rYj.js +1 -0
- package/dist/public/sdk/nearEd25519YaoSigningPreparation-B0d1AG3u.js +1 -0
- package/dist/public/sdk/nonceLaneKeys-Fkvk2UPy.js +1 -0
- package/dist/public/sdk/normalization-CpLZcL2f.js +1 -0
- package/dist/public/sdk/normalization-DCvuCvh0.js +1 -0
- package/dist/public/sdk/normalize-kUDm5zfS.js +1 -0
- package/dist/public/sdk/operationFingerprint-CTR9G1NT.js +1 -0
- package/dist/public/sdk/passkey-custody-BQj44jEM.js +1 -0
- package/dist/public/sdk/pendingWalletRecoveryCodeBackup-yJN8VAHn.js +1 -0
- package/dist/public/sdk/presignaturePool-DwlTReFO.js +1 -0
- package/dist/public/sdk/presignatures-DB2IPD-A.js +1 -0
- package/dist/public/sdk/prfCache-BMpqZZ-v.js +1 -0
- package/dist/public/sdk/primitives-CAcl7ON7.js +1 -0
- package/dist/public/sdk/promptText-D2f5Rg0h.js +1 -0
- package/dist/public/sdk/recovery-entrypoint-Bl5GgbW9.js +1 -0
- package/dist/public/sdk/registration-C4sALQZO.js +1 -0
- package/dist/public/sdk/registration-CEqVAgNJ.js +1 -0
- package/dist/public/sdk/registrationAccounts-D4RVetMz.js +1 -0
- package/dist/public/sdk/registrationAuthMethodInput-6ccY2Vuh.js +1 -0
- package/dist/public/sdk/registrationIds-CdPqm-Ya.js +1 -0
- package/dist/public/sdk/registrationIntent-DOkZcKSP.js +1 -0
- package/dist/public/sdk/registrationSignerPlan-B9GCvpTV.js +1 -0
- package/dist/public/sdk/requireStepUpAuth-DCVqmeee.js +1 -0
- package/dist/public/sdk/routerAbNormalSigning-BG75eyI2.js +1 -0
- package/dist/public/sdk/router_ab_ed25519_yao_client_bg.wasm +0 -0
- package/dist/public/sdk/runtime-auth-tgfe70hU.js +1 -0
- package/dist/public/sdk/runtime-device-link-BUxuQupR.js +1 -0
- package/dist/public/sdk/runtime-ecdsa-tempo-DOBk_EtI.js +1 -0
- package/dist/public/sdk/runtime-email-otp-CsAJKvYC.js +1 -0
- package/dist/public/sdk/runtime-export-7REbcnBl.js +1 -0
- package/dist/public/sdk/runtime-near-BA0DQf6H.js +1 -0
- package/dist/public/sdk/runtime-preferences-cRViPE8a.js +1 -0
- package/dist/public/sdk/runtime-recovery-RRc8Yz1y.js +1 -0
- package/dist/public/sdk/runtime-recovery-codes-BZMiAR_5.js +1 -0
- package/dist/public/sdk/sdkSentEvents-D3q1h-Uo.js +1 -0
- package/dist/public/sdk/secp256k1-DSLttQND.js +1 -0
- package/dist/public/sdk/secureRandomId-BIekT8bE.js +1 -0
- package/dist/public/sdk/sessionPolicy-J-RrlPZQ.js +1 -0
- package/dist/public/sdk/shared-DdfxBUGY.js +6 -0
- package/dist/public/sdk/signEvmFamily-KUNWKVeh.js +1 -0
- package/dist/public/sdk/signEvmFamilyWithUiConfirmForTempo-Dc57bJ3V.js +1 -0
- package/dist/public/sdk/signEvmWithUiConfirm-CqxL7UbT.js +1 -0
- package/dist/public/sdk/signNear-CO5bx24Z.js +1 -0
- package/dist/public/sdk/signatureUses-CjJ233KX.js +1 -0
- package/dist/public/sdk/signerDomain-vQmlnsbF.js +1 -0
- package/dist/public/sdk/signingFlow-vrXxrhlG.js +2 -0
- package/dist/public/sdk/signingQueue-BrGJXBqe.js +1 -0
- package/dist/public/sdk/signingSessionSeal-CDLUmAFY.js +1 -0
- package/dist/public/sdk/singletons-8UH3gOnZ.js +1 -0
- package/dist/public/sdk/theme-_AUTWLS_.js +1 -0
- package/dist/public/sdk/thresholdEcdsa-CO7xo1So.js +1 -0
- package/dist/public/sdk/trace-BvbCxdXF.js +1 -0
- package/dist/public/sdk/transaction-activity-D40ih2j-.js +1 -0
- package/dist/public/sdk/transactionReviewAdmission-C-a3ctCJ.js +1 -0
- package/dist/public/sdk/transactionState-DVinJk4K.js +1 -0
- package/dist/public/sdk/tx-confirm-ui.js +7 -11
- package/dist/public/sdk/types-BNUuaUtl.js +1 -0
- package/dist/public/sdk/types-D3GM-uHR.js +1 -0
- 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/public/sdk/wallet-recovery-C1kesLCF.js +1 -0
- package/dist/public/sdk/wallet-ui.css +1 -1
- package/dist/public/sdk/walletAuthMethodRecord-CXedSgpV.js +1 -0
- package/dist/public/sdk/walletAuthority-B5hXHWpK.js +1 -0
- package/dist/public/sdk/walletCustodyEcdsaContinuity-abNZ_dvX.js +1 -0
- package/dist/public/sdk/walletIframeIdentity-DJ0KOBHg.js +1 -0
- package/dist/public/sdk/walletOwnershipGeneration-DoXVMDWe.js +1 -0
- package/dist/public/sdk/walletRecoveryCommit-Cc9AqHr0.js +1 -0
- package/dist/public/sdk/walletRecoveryRotate-DWTAFYiv.js +1 -0
- package/dist/public/sdk/walletSessionAuthorizationProjection-DWBksIJR.js +1 -0
- package/dist/public/sdk/walletSessionAuthorizationStatus-o1VgsLhA.js +1 -0
- package/dist/public/sdk/walletSessionAuthorizationStore-gEYPmu-G.js +1 -0
- package/dist/public/sdk/walletSessionFailure-Bu4VPKTz.js +1 -0
- package/dist/public/sdk/warmSessionHydration-DgjuUacN.js +1 -0
- package/dist/public/sdk/webauthnP256-BEz4DEAs.js +1 -0
- package/dist/public/sdk/webauthnPromptCoordinator-BEudHQBr.js +1 -0
- package/dist/public/sdk/workers/device-linking-key.worker.js +18 -0
- package/dist/public/sdk/workers/ecdsa-derivation-client.worker.js +1490 -1268
- package/dist/public/sdk/workers/ecdsa-online-client.worker.js +96 -0
- package/dist/public/sdk/workers/ecdsa-presign-client.worker.js +101 -1
- package/dist/public/sdk/workers/email-otp.worker.js +267 -237
- package/dist/public/sdk/workers/evm-crypto.worker.js +12 -8
- package/dist/public/sdk/workers/passkey-mpc-export.worker.js +30 -1
- 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/shamir3pass.worker.js +10 -8
- package/dist/public/sdk/workers/tempo-signer.worker.js +12 -8
- package/dist/public/sdk/workers/wallet-custody-ceremony.worker.js +3 -1
- 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 +391 -295
- package/dist/public/wallet-service/index.html +4 -4
- package/dist/types/shared-ts/src/device-linking/activeWalletSession.d.ts +2 -1
- package/dist/types/shared-ts/src/device-linking/contracts.d.ts +10 -0
- package/dist/types/shared-ts/src/threshold/ed25519OperationFingerprint.d.ts +2 -1
- package/dist/types/shared-ts/src/utils/emailOtpDomain.d.ts +3 -1
- package/dist/types/shared-ts/src/utils/routerAbPublicKeyset.d.ts +0 -9
- package/dist/types/shared-ts/src/utils/walletManagementProtocol.d.ts +1 -1
- package/dist/types/wallet/build-paths.d.ts +0 -4
- package/dist/types/wallet/src/SeamsWeb/SeamsWeb.d.ts +26 -146
- package/dist/types/wallet/src/SeamsWeb/assembly/browserSigningSurfaceAssembly.d.ts +7 -6
- package/dist/types/wallet/src/SeamsWeb/assembly/browserSigningSurfacePorts.d.ts +2 -4
- package/dist/types/wallet/src/SeamsWeb/assembly/createWalletIframeRouter.d.ts +2 -2
- package/dist/types/wallet/src/SeamsWeb/assembly/initializeBrowserSigningRuntime.d.ts +0 -2
- package/dist/types/wallet/src/SeamsWeb/index.d.ts +1 -1
- package/dist/types/wallet/src/SeamsWeb/operations/auth/login.d.ts +2 -8
- package/dist/types/wallet/src/SeamsWeb/operations/auth/unlockCompletion.d.ts +26 -0
- package/dist/types/wallet/src/SeamsWeb/operations/auth/unlockPendingRegistration.d.ts +14 -0
- package/dist/types/wallet/src/SeamsWeb/operations/auth/unlockSessionPolicy.d.ts +16 -0
- package/dist/types/wallet/src/SeamsWeb/operations/authMethods/emailOtp/challenge.d.ts +2 -2
- package/dist/types/wallet/src/SeamsWeb/operations/authMethods/emailOtp/googleEmailOtpWalletAuthFlow.d.ts +3 -2
- package/dist/types/wallet/src/SeamsWeb/operations/authMethods/revokeAuthMethod.d.ts +17 -1
- package/dist/types/wallet/src/SeamsWeb/operations/devices/linkDevice.d.ts +0 -7
- package/dist/types/wallet/src/SeamsWeb/operations/devices/walletHostComposition.d.ts +2 -0
- package/dist/types/wallet/src/SeamsWeb/operations/near/actions.d.ts +4 -21
- package/dist/types/wallet/src/SeamsWeb/operations/near/delegateAction.d.ts +4 -14
- package/dist/types/wallet/src/SeamsWeb/operations/near/signDelegateAction.d.ts +14 -0
- package/dist/types/wallet/src/SeamsWeb/operations/near/signNEP413.d.ts +2 -2
- package/dist/types/wallet/src/SeamsWeb/operations/registration/pendingEcdsaRegistrationRecovery.d.ts +11 -11
- package/dist/types/wallet/src/SeamsWeb/operations/registration/pendingEcdsaRegistrationRecoveryValidation.d.ts +18 -4
- package/dist/types/wallet/src/SeamsWeb/operations/registration/pendingRegistrationRecovery.d.ts +4 -20
- package/dist/types/wallet/src/SeamsWeb/operations/registration/registration.d.ts +10 -4
- package/dist/types/wallet/src/SeamsWeb/operations/registration/registrationEd25519Yao.d.ts +1 -1
- package/dist/types/wallet/src/SeamsWeb/operations/registration/registrationSignerSet.d.ts +1 -0
- package/dist/types/wallet/src/SeamsWeb/operations/registration/registrationTerminalCommit.d.ts +0 -4
- package/dist/types/wallet/src/SeamsWeb/operations/registration/registrationTiming.d.ts +2 -3
- package/dist/types/wallet/src/SeamsWeb/operations/tempo/index.d.ts +0 -3
- package/dist/types/wallet/src/SeamsWeb/publicApi/auth.d.ts +4 -13
- package/dist/types/wallet/src/SeamsWeb/publicApi/createPublicApi.d.ts +22 -43
- package/dist/types/wallet/src/SeamsWeb/publicApi/devices.d.ts +3 -21
- package/dist/types/wallet/src/SeamsWeb/publicApi/evm.d.ts +10 -16
- package/dist/types/wallet/src/SeamsWeb/publicApi/evmFamilyCommands.d.ts +6 -0
- package/dist/types/wallet/src/SeamsWeb/publicApi/index.d.ts +2 -2
- package/dist/types/wallet/src/SeamsWeb/publicApi/keyExport.d.ts +8 -16
- package/dist/types/wallet/src/SeamsWeb/publicApi/near.d.ts +10 -10
- package/dist/types/wallet/src/SeamsWeb/publicApi/nearCommands.d.ts +17 -0
- package/dist/types/wallet/src/SeamsWeb/publicApi/placement.d.ts +90 -0
- package/dist/types/wallet/src/SeamsWeb/publicApi/placement.typecheck.d.ts +2 -0
- package/dist/types/wallet/src/SeamsWeb/publicApi/session.d.ts +3 -0
- package/dist/types/wallet/src/SeamsWeb/publicApi/tempo.d.ts +11 -11
- package/dist/types/wallet/src/SeamsWeb/publicApi/types.d.ts +106 -243
- package/dist/types/wallet/src/SeamsWeb/publicApi/waitForNearAccount.d.ts +27 -0
- package/dist/types/wallet/src/SeamsWeb/signingSurface/BrowserSigningSurface.d.ts +33 -78
- package/dist/types/wallet/src/SeamsWeb/signingSurface/ports.d.ts +8 -31
- package/dist/types/wallet/src/SeamsWeb/walletIframe/client/deviceCommands.d.ts +4 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/client/emailOtpCommands.d.ts +4 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/client/evmFamilyCommands.d.ts +6 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/client/inboundMessages.d.ts +62 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/client/nearCommands.d.ts +6 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/client/placementCommands.d.ts +31 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/client/preferenceState.d.ts +35 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/client/preferences.d.ts +10 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/client/registrationCommands.d.ts +6 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/client/router.d.ts +36 -121
- package/dist/types/wallet/src/SeamsWeb/walletIframe/client/sessionCommands.d.ts +6 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/coordinator.d.ts +29 -35
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/WalletHostRuntime.d.ts +98 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/auth-menu/controller.d.ts +2 -2
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/context.d.ts +11 -9
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/createDeviceDomain.d.ts +20 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/createEmailOtpCommands.d.ts +11 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/createEvmFamilyCommands.d.ts +8 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/createNearCommands.d.ts +4 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/createPlacementCommands.d.ts +11 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/createRegistrationCommands.d.ts +4 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/createSessionCommands.d.ts +16 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/handlers/placement.d.ts +3 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/handlers/walletIframeHandler.types.d.ts +7 -3
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/hostedWalletSeamsSession.d.ts +2 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/reconcileWalletPlacement.d.ts +10 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/requestRouter.d.ts +4 -4
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/requestWalletMove.d.ts +11 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/runtimeContext.d.ts +5 -3
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/runtimeLoader.d.ts +0 -1
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/sessionObserver.d.ts +39 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/walletMoveLocator.d.ts +5 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/walletMutationGuard.d.ts +3 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/shared/configuration.d.ts +30 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/shared/emailOtpLifecycle.d.ts +43 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/shared/exactSessionState.d.ts +15 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/shared/facadeBoundary.d.ts +14 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/shared/messages.d.ts +35 -100
- package/dist/types/wallet/src/core/config/chains.d.ts +1 -3
- package/dist/types/wallet/src/core/config/configBuilder.d.ts +16 -6
- package/dist/types/wallet/src/core/config/defaultConfigs.d.ts +3 -4
- package/dist/types/wallet/src/core/config/defineConfig.d.ts +3 -6
- package/dist/types/wallet/src/core/config/presignatures.d.ts +3 -0
- package/dist/types/wallet/src/core/diagnostics/registration.d.ts +2 -0
- package/dist/types/wallet/src/core/indexedDB/normalization.d.ts +5 -0
- package/dist/types/wallet/src/core/indexedDB/passkeyClientDB.types.d.ts +2 -2
- package/dist/types/wallet/src/core/indexedDB/pendingWalletRegistrationCommit.d.ts +0 -10
- package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/accountSignerRows.d.ts +44 -0
- package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/ecdsaCapabilityManifestStore.d.ts +0 -2
- package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/ecdsaClientPresignatures.d.ts +0 -5
- package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/manager.d.ts +11 -0
- package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/nonceLeaseRows.d.ts +23 -0
- package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/repositories.d.ts +1 -0
- package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/signerOutboxRows.d.ts +15 -0
- package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/walletOwnershipGeneration.d.ts +6 -0
- package/dist/types/wallet/src/core/indexedDB/unifiedIndexedDBManager.d.ts +1 -1
- package/dist/types/wallet/src/core/rpcClients/near/accountExists.d.ts +3 -0
- package/dist/types/wallet/src/core/rpcClients/near/rpcCalls.d.ts +1 -14
- package/dist/types/wallet/src/core/rpcClients/relayer/ecdsaPrepareSession.d.ts +13 -0
- package/dist/types/wallet/src/core/rpcClients/relayer/ownerWalletExecutionLanePreflight.d.ts +3 -3
- package/dist/types/wallet/src/core/rpcClients/relayer/relayerHttp.d.ts +17 -0
- package/dist/types/wallet/src/core/rpcClients/relayer/routerAbNormalSigning.d.ts +19 -3
- package/dist/types/wallet/src/core/rpcClients/relayer/walletRegistration.d.ts +29 -40
- package/dist/types/wallet/src/core/rpcClients/relayer/walletSessionAuthorizationStatus.d.ts +34 -0
- package/dist/types/wallet/src/core/signingEngine/assembly/ports/shared.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/assembly/ports/warmSigning.d.ts +2 -1
- package/dist/types/wallet/src/core/signingEngine/assembly/warmup.d.ts +2 -14
- package/dist/types/wallet/src/core/signingEngine/chains/near/nearSignerWasm.d.ts +2 -6
- package/dist/types/wallet/src/core/signingEngine/flows/recovery/public.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/emailOtpPublic.d.ts +1 -32
- package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/emailOtpSigningSession.d.ts +3 -82
- package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/readySecp256k1Material.d.ts +62 -1
- package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/requireEvmFamilyStepUpAuth.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/signers/secp256k1.d.ts +4 -55
- package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/signingFlow.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/thresholdAdmission.d.ts +3 -2
- package/dist/types/wallet/src/core/signingEngine/flows/signNear/shared/ed25519YaoNormalSigning.d.ts +33 -1
- package/dist/types/wallet/src/core/signingEngine/flows/signNear/shared/signatureOnlySigning.d.ts +16 -2
- package/dist/types/wallet/src/core/signingEngine/flows/signNear/signNear.d.ts +1 -2
- package/dist/types/wallet/src/core/signingEngine/flows/signNear/signNep413.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/interfaces/ecdsaChainTarget.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/interfaces/near.d.ts +3 -0
- package/dist/types/wallet/src/core/signingEngine/routerAb/ecdsaDerivation/presignaturePool.d.ts +9 -5
- package/dist/types/wallet/src/core/signingEngine/routerAb/ecdsaDerivation/presignaturePoolPolicy.d.ts +5 -0
- package/dist/types/wallet/src/core/signingEngine/session/SigningSessionCoordinator.d.ts +1 -7
- package/dist/types/wallet/src/core/signingEngine/session/availability/persistedAvailableSigningLanes.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/session/availability/readiness.d.ts +0 -17
- package/dist/types/wallet/src/core/signingEngine/session/emailOtp/EmailOtpWalletSessionCoordinator.d.ts +2 -2
- package/dist/types/wallet/src/core/signingEngine/session/emailOtp/ecdsaSigningSessionAuthority.d.ts +2 -33
- package/dist/types/wallet/src/core/signingEngine/session/emailOtp/exportRecovery.d.ts +2 -2
- package/dist/types/wallet/src/core/signingEngine/session/emailOtp/exportRecoveryRuntime.d.ts +14 -3
- package/dist/types/wallet/src/core/signingEngine/session/emailOtp/publicTypes.d.ts +1 -2
- package/dist/types/wallet/src/core/signingEngine/session/emailOtp/workerEnrollment.d.ts +0 -12
- package/dist/types/wallet/src/core/signingEngine/session/lanes/walletExecutionLaneHydration.d.ts +11 -25
- package/dist/types/wallet/src/core/signingEngine/session/lifecycle/walletSessionStatus.d.ts +0 -8
- package/dist/types/wallet/src/core/signingEngine/session/material/ecdsaSigningCapability.d.ts +2 -2
- package/dist/types/wallet/src/core/signingEngine/session/operationState/preparedOperation.d.ts +0 -8
- package/dist/types/wallet/src/core/signingEngine/session/operationState/trace.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/session/operationState/transactionState.d.ts +0 -1
- package/dist/types/wallet/src/core/signingEngine/session/passkey/ed25519YaoRecoveryCapability.d.ts +2 -0
- package/dist/types/wallet/src/core/signingEngine/session/public.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/session/routerAbSigningWalletSession.d.ts +2 -0
- package/dist/types/wallet/src/core/signingEngine/session/userPreferences.d.ts +8 -11
- package/dist/types/wallet/src/core/signingEngine/session/warmCapabilities/capabilityReader.d.ts +2 -1
- package/dist/types/wallet/src/core/signingEngine/session/warmCapabilities/capabilityReaderCore.d.ts +2 -1
- package/dist/types/wallet/src/core/signingEngine/stepUpConfirmation/otpPrompt/authLane.d.ts +6 -12
- package/dist/types/wallet/src/core/signingEngine/threshold/ecdsa/operationStepUp.d.ts +6 -5
- package/dist/types/wallet/src/core/signingEngine/threshold/ed25519/yaoClient.d.ts +6 -17
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/ReviewDisclosure.d.ts +1 -0
- package/dist/types/wallet/src/core/signingEngine/walletCustody/ceremonyDriver.d.ts +0 -1
- package/dist/types/wallet/src/core/signingEngine/walletCustody/walletRegistrationEd25519.d.ts +17 -0
- package/dist/types/wallet/src/core/signingEngine/workerManager/SignerWorkerManager.d.ts +0 -1
- package/dist/types/wallet/src/core/signingEngine/workerManager/ecdsaPresignLifecycle.d.ts +0 -2
- package/dist/types/wallet/src/core/signingEngine/workerManager/ecdsaPresignPoolIdentity.d.ts +9 -0
- package/dist/types/wallet/src/core/signingEngine/workerManager/workerTransport.d.ts +0 -5
- package/dist/types/wallet/src/core/signingEngine/workerManager/workerTypes.d.ts +15 -27
- package/dist/types/wallet/src/core/signingEngine/workerManager/workers/email-otp/enrollment.d.ts +1 -17
- package/dist/types/wallet/src/core/types/rpc.d.ts +0 -1
- package/dist/types/wallet/src/core/types/sdkPublicResults.d.ts +1 -0
- package/dist/types/wallet/src/core/types/sdkSentEvents.d.ts +2 -0
- package/dist/types/wallet/src/core/types/seams.d.ts +12 -9
- package/dist/types/wallet/src/core/types/signer-worker.d.ts +2 -1
- package/dist/types/wallet/src/externalEvm/controller.d.ts +5 -1
- package/dist/types/wallet/src/index.d.ts +5 -2
- package/dist/types/wallet/src/react/components/AccountMenuButton/WalletRegionSection.d.ts +54 -0
- package/dist/types/wallet/src/react/components/AccountMenuButton/WalletSettingsLayout.d.ts +7 -2
- package/dist/types/wallet/src/react/components/AccountMenuButton/index.d.ts +1 -1
- package/dist/types/wallet/src/react/components/AccountMenuButton/types.d.ts +1 -0
- package/dist/types/wallet/src/react/components/HostedSeamsAuthMenu/public.d.ts +1 -1
- package/dist/types/wallet/src/react/components/HostedSeamsAuthMenu/types.d.ts +2 -5
- package/dist/types/wallet/src/react/context/SeamsWebProvider.d.ts +0 -5
- package/dist/types/wallet/src/react/context/useLoginStateRefresher.d.ts +1 -1
- package/dist/types/wallet/src/react/context/useNearProvisioningStateRefresh.d.ts +1 -1
- package/dist/types/wallet/src/react/context/useSeamsContextValue.d.ts +2 -2
- package/dist/types/wallet/src/react/context/useWalletIframeLifecycle.d.ts +4 -2
- package/dist/types/wallet/src/react/hooks/useQRCamera.d.ts +1 -7
- package/dist/types/wallet/src/react/hooks/useWallet.d.ts +5 -6
- package/dist/types/wallet/src/react/hooks/useWalletAuth.d.ts +1 -1
- package/dist/types/wallet/src/react/hooks/useWalletDevices.d.ts +1 -1
- package/dist/types/wallet/src/react/index.d.ts +2 -2
- package/dist/types/wallet/src/react/transactionReview/boundCalls.d.ts +0 -26
- package/dist/types/wallet/src/react/types.d.ts +12 -20
- package/dist/types/wallet/src/react/utils/walletIframe.d.ts +2 -6
- package/dist/workers/device-linking-key.worker.js +18 -0
- package/dist/workers/ecdsa-derivation-client.worker.js +1490 -1268
- package/dist/workers/ecdsa-online-client.worker.js +96 -0
- package/dist/workers/ecdsa-presign-client.worker.js +101 -1
- package/dist/workers/email-otp.worker.js +267 -237
- package/dist/workers/evm-crypto.worker.js +12 -8
- package/dist/workers/passkey-mpc-export.worker.js +30 -1
- 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/shamir3pass.worker.js +10 -8
- package/dist/workers/tempo-signer.worker.js +12 -8
- package/dist/workers/wallet-custody-ceremony.worker.js +3 -1
- 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/SeamsWeb/assembly/browserSigningSurfaceAssembly.js +0 -817
- package/dist/esm/SeamsWeb/assembly/browserWorkerWarmupPolicy.js +0 -31
- package/dist/esm/SeamsWeb/assembly/configureBrowserIndexedDB.js +0 -10
- package/dist/esm/SeamsWeb/assembly/createBrowserRecoveryPublicDeps.js +0 -95
- package/dist/esm/SeamsWeb/assembly/createBrowserSigningRuntime.js +0 -34
- package/dist/esm/SeamsWeb/assembly/createBrowserSigningStores.js +0 -39
- package/dist/esm/SeamsWeb/assembly/createBrowserStepUpRuntime.js +0 -34
- package/dist/esm/SeamsWeb/assembly/createBrowserWarmSessionPublicDeps.js +0 -29
- package/dist/esm/SeamsWeb/assembly/initializeBrowserSigningRuntime.js +0 -19
- package/dist/esm/SeamsWeb/assembly/runtimeConfig.js +0 -12
- package/dist/esm/SeamsWeb/operations/auth/login.js +0 -4383
- package/dist/esm/SeamsWeb/operations/auth/scheduleEcdsaSessionPresignaturePrefill.js +0 -41
- package/dist/esm/SeamsWeb/operations/auth/scheduleLinkedDevicePresignaturePrefill.js +0 -64
- package/dist/esm/SeamsWeb/operations/auth/walletAuth.js +0 -142
- package/dist/esm/SeamsWeb/operations/auth/walletUnlockEcdsaSubject.js +0 -33
- package/dist/esm/SeamsWeb/operations/auth/walletUnlockSubject.js +0 -288
- package/dist/esm/SeamsWeb/operations/authMethods/addAuthMethodSourceClaim.js +0 -72
- package/dist/esm/SeamsWeb/operations/authMethods/emailOtp/addEmailOtp.js +0 -191
- package/dist/esm/SeamsWeb/operations/authMethods/emailOtp/challenge.js +0 -247
- package/dist/esm/SeamsWeb/operations/authMethods/emailOtp/googleEmailOtpWalletAuthFlow.js +0 -568
- package/dist/esm/SeamsWeb/operations/authMethods/emailOtp/localEmailOtpProjection.js +0 -69
- package/dist/esm/SeamsWeb/operations/authMethods/emailOtp/registrationAuthority.js +0 -62
- package/dist/esm/SeamsWeb/operations/authMethods/emailOtp/registrationOffer.js +0 -69
- package/dist/esm/SeamsWeb/operations/authMethods/emailOtp/walletActivation.js +0 -95
- package/dist/esm/SeamsWeb/operations/authMethods/passkey/addPasskey.js +0 -260
- package/dist/esm/SeamsWeb/operations/authMethods/passkey/ecdsaBootstrap.js +0 -17
- package/dist/esm/SeamsWeb/operations/authMethods/passkey/exactPasskeyAuthority.js +0 -34
- package/dist/esm/SeamsWeb/operations/authMethods/passkey/localUnlock.js +0 -16
- package/dist/esm/SeamsWeb/operations/authMethods/passkey/loginAssertion.js +0 -25
- package/dist/esm/SeamsWeb/operations/authMethods/passkey/registrationAuthority.js +0 -84
- package/dist/esm/SeamsWeb/operations/authMethods/revokeAuthMethod.js +0 -205
- package/dist/esm/SeamsWeb/operations/authMethods/sourcePasskeyProof.js +0 -12
- package/dist/esm/SeamsWeb/operations/devices/deviceLinkingAuthorityInstallation.js +0 -444
- package/dist/esm/SeamsWeb/operations/devices/deviceLinkingComposition.js +0 -106
- package/dist/esm/SeamsWeb/operations/devices/deviceLinkingEd25519ExportRoot.js +0 -194
- package/dist/esm/SeamsWeb/operations/devices/deviceLinkingHttpTransport.js +0 -524
- package/dist/esm/SeamsWeb/operations/devices/deviceLinkingOwnerTransport.js +0 -135
- package/dist/esm/SeamsWeb/operations/devices/deviceLinkingResume.js +0 -212
- package/dist/esm/SeamsWeb/operations/devices/deviceLinkingTargetCredential.js +0 -63
- package/dist/esm/SeamsWeb/operations/devices/deviceLinkingTargetEd25519ExportRoot.js +0 -61
- package/dist/esm/SeamsWeb/operations/devices/deviceLinkingWorkerChannels.js +0 -337
- package/dist/esm/SeamsWeb/operations/devices/linkDevice.js +0 -75
- package/dist/esm/SeamsWeb/operations/devices/linkDeviceFlow.js +0 -1383
- package/dist/esm/SeamsWeb/operations/devices/linkDeviceFlowSupport.js +0 -143
- package/dist/esm/SeamsWeb/operations/devices/linkDeviceTargetActivation.js +0 -119
- package/dist/esm/SeamsWeb/operations/devices/walletHostComposition.js +0 -130
- package/dist/esm/SeamsWeb/operations/devices/walletHostOwnerAuthority.js +0 -191
- package/dist/esm/SeamsWeb/operations/evm/index.js +0 -35
- package/dist/esm/SeamsWeb/operations/near/actions.js +0 -484
- package/dist/esm/SeamsWeb/operations/near/commandSubject.js +0 -14
- package/dist/esm/SeamsWeb/operations/near/index.js +0 -37
- package/dist/esm/SeamsWeb/operations/near/signNEP413.js +0 -116
- package/dist/esm/SeamsWeb/operations/recovery/accountSync.js +0 -21
- package/dist/esm/SeamsWeb/operations/recovery/recoveryWalletBinding.js +0 -43
- package/dist/esm/SeamsWeb/operations/recovery/syncAccount.js +0 -912
- package/dist/esm/SeamsWeb/operations/recovery/walletRecoveryCodeBackup.js +0 -100
- package/dist/esm/SeamsWeb/operations/recovery/walletRecoveryRotation.js +0 -213
- package/dist/esm/SeamsWeb/operations/registration/pendingEcdsaRegistrationRecovery.js +0 -184
- package/dist/esm/SeamsWeb/operations/registration/pendingEcdsaRegistrationRecoveryUnlock.js +0 -247
- package/dist/esm/SeamsWeb/operations/registration/pendingEcdsaRegistrationRecoveryValidation.js +0 -134
- package/dist/esm/SeamsWeb/operations/registration/pendingRegistrationRecovery.js +0 -354
- package/dist/esm/SeamsWeb/operations/registration/registration.js +0 -3818
- package/dist/esm/SeamsWeb/operations/registration/registrationEd25519Yao.js +0 -166
- package/dist/esm/SeamsWeb/operations/registration/registrationSignerSet.js +0 -60
- package/dist/esm/SeamsWeb/operations/registration/registrationStrictEcdsa.js +0 -343
- package/dist/esm/SeamsWeb/operations/registration/registrationTerminalCommit.js +0 -296
- package/dist/esm/SeamsWeb/operations/registration/registrationTiming.js +0 -682
- package/dist/esm/SeamsWeb/operations/session/thresholdEcdsaProvisioning.js +0 -36
- package/dist/esm/SeamsWeb/operations/session/thresholdWarmSessionBootstrap.js +0 -20
- package/dist/esm/SeamsWeb/publicApi/awaitNearReady.js +0 -72
- package/dist/esm/SeamsWeb/publicApi/preferences.js +0 -61
- package/dist/esm/SeamsWeb/publicApi/recovery.js +0 -19
- package/dist/esm/SeamsWeb/publicApi/types.js +0 -10
- package/dist/esm/SeamsWeb/signingSurface/BrowserSigningSurface.js +0 -3917
- package/dist/esm/SeamsWeb/walletIframe/host/restoredSessionPresignaturePrefill.js +0 -29
- package/dist/esm/core/browser/walletIframe/events.js +0 -6
- package/dist/esm/core/browser/walletIframe/host-mode.js +0 -9
- package/dist/esm/core/config/managedRuntimeScope.js +0 -16
- package/dist/esm/core/indexedDB/seamsWalletDB/pendingWalletRecoveryCodeBackup.js +0 -144
- package/dist/esm/core/platform/browser/createBrowserPlatformRuntime.js +0 -535
- package/dist/esm/core/platform/secretSources.js +0 -111
- package/dist/esm/core/platform/signerCoreCommandAdapters.js +0 -122
- package/dist/esm/core/rpcClients/near/rpcCalls.js +0 -376
- package/dist/esm/core/rpcClients/relayer/ownerWalletExecutionLanePreflight.js +0 -67
- package/dist/esm/core/rpcClients/relayer/passkeyCustodyEnvelope.js +0 -218
- package/dist/esm/core/rpcClients/relayer/sealedRefreshCapabilities.js +0 -148
- package/dist/esm/core/rpcClients/relayer/thresholdEcdsa.js +0 -235
- package/dist/esm/core/rpcClients/relayer/walletRecoveryGoogleEmailOtp.js +0 -161
- package/dist/esm/core/rpcClients/relayer/walletRegistrationTerminalResponse.js +0 -718
- package/dist/esm/core/signingEngine/assembly/createManagers.js +0 -80
- package/dist/esm/core/signingEngine/assembly/createPorts.js +0 -54
- package/dist/esm/core/signingEngine/assembly/ports/emailOtp.js +0 -30
- package/dist/esm/core/signingEngine/assembly/ports/evmFamily.js +0 -73
- package/dist/esm/core/signingEngine/assembly/ports/near.js +0 -21
- package/dist/esm/core/signingEngine/assembly/ports/recovery.js +0 -75
- package/dist/esm/core/signingEngine/assembly/ports/registration.js +0 -22
- package/dist/esm/core/signingEngine/assembly/ports/session.js +0 -25
- package/dist/esm/core/signingEngine/assembly/ports/shared.js +0 -39
- package/dist/esm/core/signingEngine/assembly/ports/stepUpRuntime.js +0 -67
- package/dist/esm/core/signingEngine/assembly/ports/warmSigning.js +0 -92
- package/dist/esm/core/signingEngine/assembly/warmup.js +0 -64
- package/dist/esm/core/signingEngine/flows/recovery/ecdsaDerivationExport.js +0 -427
- package/dist/esm/core/signingEngine/flows/recovery/ecdsaExportFlow.js +0 -660
- package/dist/esm/core/signingEngine/flows/recovery/ecdsaExportMaterial.js +0 -249
- package/dist/esm/core/signingEngine/flows/recovery/ed25519YaoExportFlow.js +0 -353
- package/dist/esm/core/signingEngine/flows/recovery/exportKeypairOperation.js +0 -213
- package/dist/esm/core/signingEngine/flows/recovery/exportLaneSelection.js +0 -283
- package/dist/esm/core/signingEngine/flows/recovery/keyExportConfirmation.js +0 -325
- package/dist/esm/core/signingEngine/flows/recovery/keyExportFlow.js +0 -81
- package/dist/esm/core/signingEngine/flows/recovery/passkeyEd25519YaoRecovery.js +0 -192
- package/dist/esm/core/signingEngine/flows/recovery/public.js +0 -26
- package/dist/esm/core/signingEngine/flows/recovery/stepUpAuthorization.js +0 -139
- package/dist/esm/core/signingEngine/flows/registration/nearProvisioningRegistry.js +0 -79
- package/dist/esm/core/signingEngine/flows/registration/public.js +0 -85
- package/dist/esm/core/signingEngine/flows/registration/services/ecdsaRegistrationSessions.js +0 -77
- package/dist/esm/core/signingEngine/flows/registration/services/passkeyEd25519YaoAddSigner.js +0 -82
- package/dist/esm/core/signingEngine/flows/registration/session.js +0 -24
- package/dist/esm/core/signingEngine/flows/signEvmFamily/emailOtpPublic.js +0 -123
- package/dist/esm/core/signingEngine/nonce/NonceCoordinator.js +0 -1026
- package/dist/esm/core/signingEngine/nonce/evmNonceLane.js +0 -182
- package/dist/esm/core/signingEngine/nonce/nearNonceLane.js +0 -669
- package/dist/esm/core/signingEngine/nonce/nonceDiagnostics.js +0 -232
- package/dist/esm/core/signingEngine/nonce/nonceLeaseState.js +0 -128
- package/dist/esm/core/signingEngine/nonce/nonceUtils.js +0 -33
- package/dist/esm/core/signingEngine/session/SigningSessionCoordinator.js +0 -344
- package/dist/esm/core/signingEngine/session/authority/authorityOperationResolver.js +0 -114
- package/dist/esm/core/signingEngine/session/availability/canonicalLaneInventory.js +0 -127
- package/dist/esm/core/signingEngine/session/availability/clientSessionExpiryInvalidator.js +0 -72
- package/dist/esm/core/signingEngine/session/availability/persistedAvailableSigningLanes.js +0 -214
- package/dist/esm/core/signingEngine/session/availability/readiness.js +0 -464
- package/dist/esm/core/signingEngine/session/emailOtp/EmailOtpWalletSessionCoordinator.js +0 -130
- package/dist/esm/core/signingEngine/session/emailOtp/ecdsaBootstrapCommit.js +0 -106
- package/dist/esm/core/signingEngine/session/emailOtp/ecdsaLifecycleRuntime.js +0 -47
- package/dist/esm/core/signingEngine/session/emailOtp/ecdsaLogin.js +0 -930
- package/dist/esm/core/signingEngine/session/emailOtp/ecdsaPublication.js +0 -414
- package/dist/esm/core/signingEngine/session/emailOtp/ecdsaRecovery.js +0 -264
- package/dist/esm/core/signingEngine/session/emailOtp/ed25519ExportContext.js +0 -373
- package/dist/esm/core/signingEngine/session/emailOtp/exportRecovery.js +0 -284
- package/dist/esm/core/signingEngine/session/emailOtp/exportRecoveryRuntime.js +0 -50
- package/dist/esm/core/signingEngine/session/emailOtp/persistedSnapshot.js +0 -22
- package/dist/esm/core/signingEngine/session/emailOtp/publicTypes.js +0 -38
- package/dist/esm/core/signingEngine/session/emailOtp/routePlan.js +0 -60
- package/dist/esm/core/signingEngine/session/emailOtp/runtimeConfig.js +0 -24
- package/dist/esm/core/signingEngine/session/emailOtp/sealedRefreshPolicy.js +0 -49
- package/dist/esm/core/signingEngine/session/emailOtp/sealedRestoreOrchestrator.js +0 -234
- package/dist/esm/core/signingEngine/session/emailOtp/sealedRuntimePurpose.js +0 -16
- package/dist/esm/core/signingEngine/session/emailOtp/sealedSessionRegistry.js +0 -40
- package/dist/esm/core/signingEngine/session/emailOtp/status.js +0 -72
- package/dist/esm/core/signingEngine/session/emailOtp/walletUnlock.js +0 -168
- package/dist/esm/core/signingEngine/session/emailOtp/warmSessionRuntime.js +0 -70
- package/dist/esm/core/signingEngine/session/emailOtp/workerEnrollment.js +0 -159
- package/dist/esm/core/signingEngine/session/emailOtp/workerRequests.js +0 -84
- package/dist/esm/core/signingEngine/session/emailOtp/zeroize.js +0 -9
- package/dist/esm/core/signingEngine/session/identity/exactWalletSessionCredential.js +0 -104
- package/dist/esm/core/signingEngine/session/identity/exactWalletSessionReader.js +0 -54
- package/dist/esm/core/signingEngine/session/identity/ownerLaneScope.js +0 -185
- package/dist/esm/core/signingEngine/session/lanes/walletExecutionLaneHydration.js +0 -194
- package/dist/esm/core/signingEngine/session/lifecycle/canonicalWalletSessionStatus.js +0 -32
- package/dist/esm/core/signingEngine/session/lifecycle/walletSessionStatus.js +0 -123
- package/dist/esm/core/signingEngine/session/material/ecdsaCapabilityHydration.js +0 -75
- package/dist/esm/core/signingEngine/session/material/ecdsaSealedRuntime.js +0 -197
- package/dist/esm/core/signingEngine/session/material/mpcCapabilityHydration.js +0 -79
- package/dist/esm/core/signingEngine/session/material/nearEd25519YaoSigningPreparation.js +0 -122
- package/dist/esm/core/signingEngine/session/material/restorableMpcMaterialRef.internal.js +0 -21
- package/dist/esm/core/signingEngine/session/passkey/ecdsaBootstrap.js +0 -184
- package/dist/esm/core/signingEngine/session/passkey/ecdsaKeyFactsInventory.js +0 -205
- package/dist/esm/core/signingEngine/session/passkey/ecdsaRecovery.js +0 -84
- package/dist/esm/core/signingEngine/session/passkey/ecdsaSessionProvision.js +0 -224
- package/dist/esm/core/signingEngine/session/passkey/ecdsaWarmCapabilityBootstrap.js +0 -147
- package/dist/esm/core/signingEngine/session/passkey/ed25519Provisioner.js +0 -55
- package/dist/esm/core/signingEngine/session/passkey/ed25519SessionProvision.js +0 -228
- package/dist/esm/core/signingEngine/session/passkey/ed25519YaoLocalMaterial.js +0 -536
- package/dist/esm/core/signingEngine/session/passkey/ed25519YaoRecoveryCapability.js +0 -94
- package/dist/esm/core/signingEngine/session/passkey/ed25519YaoSealedSession.js +0 -57
- package/dist/esm/core/signingEngine/session/passkey/ed25519YaoWarmRecovery.js +0 -281
- package/dist/esm/core/signingEngine/session/passkey/passkeyCustodySessionCache.js +0 -90
- package/dist/esm/core/signingEngine/session/passkey/public.js +0 -15
- package/dist/esm/core/signingEngine/session/passkey/unlockEcdsaWarmupPlanner.js +0 -247
- package/dist/esm/core/signingEngine/session/persistence/clientSessionPersistence.js +0 -135
- package/dist/esm/core/signingEngine/session/persistence/walletSessionAuthorizationProjection.js +0 -51
- package/dist/esm/core/signingEngine/session/planning/operationIdBinding.js +0 -36
- package/dist/esm/core/signingEngine/session/postconditions/runtimePostconditions.js +0 -163
- package/dist/esm/core/signingEngine/session/public.js +0 -44
- package/dist/esm/core/signingEngine/session/routerAbSigningWalletSession.js +0 -119
- package/dist/esm/core/signingEngine/session/sealedRecovery/exactRecordLookup.js +0 -148
- package/dist/esm/core/signingEngine/session/sealedRecovery/recoveryRecord.js +0 -248
- package/dist/esm/core/signingEngine/session/sealedRecovery/restoreCoordinator.js +0 -229
- package/dist/esm/core/signingEngine/session/userPreferences.js +0 -212
- package/dist/esm/core/signingEngine/session/warmCapabilities/capabilityReader.js +0 -62
- package/dist/esm/core/signingEngine/session/warmCapabilities/capabilityReaderCore.js +0 -293
- package/dist/esm/core/signingEngine/session/warmCapabilities/clearVolatileWarmSigningMaterial.js +0 -44
- package/dist/esm/core/signingEngine/session/warmCapabilities/ecdsaBootstrapPersistence.js +0 -107
- package/dist/esm/core/signingEngine/session/warmCapabilities/ecdsaBootstrapQueue.js +0 -22
- package/dist/esm/core/signingEngine/session/warmCapabilities/ecdsaLoginPrefill.js +0 -93
- package/dist/esm/core/signingEngine/session/warmCapabilities/ecdsaLoginPrefillSigningMaterialSource.js +0 -50
- package/dist/esm/core/signingEngine/session/warmCapabilities/ecdsaProvisionPlan.js +0 -9
- package/dist/esm/core/signingEngine/session/warmCapabilities/ed25519SealedSessionRuntime.js +0 -251
- package/dist/esm/core/signingEngine/session/warmCapabilities/nearEd25519CapabilityRehydration.js +0 -98
- package/dist/esm/core/signingEngine/session/warmCapabilities/public.js +0 -31
- package/dist/esm/core/signingEngine/session/warmCapabilities/readModel.js +0 -155
- package/dist/esm/core/signingEngine/session/warmCapabilities/routerAbEd25519WalletSessionState.js +0 -256
- package/dist/esm/core/signingEngine/session/warmCapabilities/statusReader.js +0 -100
- package/dist/esm/core/signingEngine/session/warmCapabilities/transitions.js +0 -47
- package/dist/esm/core/signingEngine/session/warmCapabilities/types.js +0 -122
- package/dist/esm/core/signingEngine/session/warmCapabilities/volatileWarmMaterialCommands.js +0 -45
- package/dist/esm/core/signingEngine/stepUpConfirmation/channel/confirmCommon.js +0 -89
- package/dist/esm/core/signingEngine/stepUpConfirmation/channel/confirmTypes.js +0 -12
- package/dist/esm/core/signingEngine/stepUpConfirmation/otpPrompt/authLane.js +0 -31
- package/dist/esm/core/signingEngine/stepUpConfirmation/otpPrompt/exportAuthorization.js +0 -108
- package/dist/esm/core/signingEngine/stepUpConfirmation/passkeyPrompt/touchIdPrompt.js +0 -271
- package/dist/esm/core/signingEngine/stepUpConfirmation/passkeyPrompt/webauthnPromptCoordinator.js +0 -167
- package/dist/esm/core/signingEngine/stepUpConfirmation/userConfirmationType.js +0 -15
- package/dist/esm/core/signingEngine/threshold/crypto/ed25519YaoLaneWasm.js +0 -67
- package/dist/esm/core/signingEngine/threshold/ecdsa/activation.js +0 -267
- package/dist/esm/core/signingEngine/threshold/ecdsa/bootstrapSession.js +0 -115
- package/dist/esm/core/signingEngine/threshold/ecdsa/postRegistrationSessionActivation.js +0 -132
- package/dist/esm/core/signingEngine/threshold/ecdsa/signingQueue.js +0 -16
- package/dist/esm/core/signingEngine/threshold/ed25519/commitQueue.js +0 -16
- package/dist/esm/core/signingEngine/threshold/ed25519/connectSession.js +0 -137
- package/dist/esm/core/signingEngine/threshold/ed25519/yaoActiveClientRegistry.js +0 -146
- package/dist/esm/core/signingEngine/threshold/ed25519/yaoClient.js +0 -563
- package/dist/esm/core/signingEngine/threshold/ed25519/yaoPageLifecycleOwner.js +0 -23
- package/dist/esm/core/signingEngine/uiConfirm/PasskeyMpcExportManager.js +0 -233
- package/dist/esm/core/signingEngine/uiConfirm/PasskeyMpcSessionDurableState.js +0 -493
- package/dist/esm/core/signingEngine/uiConfirm/PasskeyMpcSessionManager.js +0 -746
- package/dist/esm/core/signingEngine/uiConfirm/UiConfirmManager.js +0 -599
- package/dist/esm/core/signingEngine/uiConfirm/confirmationReadinessRegistry.js +0 -41
- package/dist/esm/core/signingEngine/uiConfirm/exportConfirmRequest.js +0 -149
- package/dist/esm/core/signingEngine/uiConfirm/handlers/determineConfirmationConfig.js +0 -82
- package/dist/esm/core/signingEngine/uiConfirm/handlers/flowOrchestrator.js +0 -363
- package/dist/esm/core/signingEngine/uiConfirm/handlers/flows/adapters/adapters.js +0 -337
- package/dist/esm/core/signingEngine/uiConfirm/handlers/flows/adapters/request.js +0 -120
- package/dist/esm/core/signingEngine/uiConfirm/handlers/flows/localOnly.js +0 -149
- package/dist/esm/core/signingEngine/uiConfirm/handlers/flows/registration.js +0 -235
- package/dist/esm/core/signingEngine/uiConfirm/handlers/flows/requestRegistrationCredentialConfirmation.js +0 -178
- package/dist/esm/core/signingEngine/uiConfirm/handlers/flows/signing.js +0 -684
- package/dist/esm/core/signingEngine/uiConfirm/handlers/handlePromptFromWorker.js +0 -90
- package/dist/esm/core/signingEngine/uiConfirm/ui/appearance.js +0 -27
- package/dist/esm/core/signingEngine/uiConfirm/ui/confirm-ui.js +0 -516
- package/dist/esm/core/signingEngine/uiConfirm/ui/export-private-key-reveal.js +0 -155
- package/dist/esm/core/signingEngine/uiConfirm/ui/export-viewer-host.js +0 -207
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ExportPrivateKeySurface.js +0 -318
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/RecoveryCodeBackupSurface.js +0 -518
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/confirmation-controller.js +0 -80
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/mountExportPrivateKeySurface.js +0 -86
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/mountRecoveryCodeBackupSurface.js +0 -82
- package/dist/esm/core/signingEngine/uiConfirm/ui/surface-measurement-binding.js +0 -12
- package/dist/esm/core/signingEngine/uiConfirm/ui/transaction-activity.js +0 -46
- package/dist/esm/core/signingEngine/uiConfirm/ui/transaction-display/abi/abiDecode.js +0 -315
- package/dist/esm/core/signingEngine/uiConfirm/ui/transaction-display/abi/enrichDisplayModelWithAbi.js +0 -77
- package/dist/esm/core/signingEngine/uiConfirm/ui/transaction-display/confirmation-tree.js +0 -27
- package/dist/esm/core/signingEngine/uiConfirm/ui/transaction-display/renderers/fallback.js +0 -52
- package/dist/esm/core/signingEngine/uiConfirm/ui/transaction-display/renderers/types.js +0 -62
- package/dist/esm/core/signingEngine/uiConfirm/ui/transaction-display/tree.js +0 -249
- package/dist/esm/core/signingEngine/uiConfirm/warmSessionUiConfirm.js +0 -65
- package/dist/esm/core/signingEngine/walletCustody/activateEd25519Capability.js +0 -122
- package/dist/esm/core/signingEngine/walletCustody/ceremonyActiveClientMetadata.js +0 -94
- package/dist/esm/core/signingEngine/walletCustody/ceremonyDriver.js +0 -171
- package/dist/esm/core/signingEngine/walletCustody/ceremonyStepRunner.js +0 -20
- package/dist/esm/core/signingEngine/walletCustody/ed25519ActiveClient.js +0 -100
- package/dist/esm/core/signingEngine/walletCustody/ed25519Projection.js +0 -32
- package/dist/esm/core/signingEngine/walletCustody/ed25519SeedMaterial.js +0 -92
- package/dist/esm/core/signingEngine/walletCustody/emailOtpLink.js +0 -132
- package/dist/esm/core/signingEngine/walletCustody/joinCustodyWire.js +0 -64
- package/dist/esm/core/signingEngine/walletCustody/openCustodyCache.js +0 -126
- package/dist/esm/core/signingEngine/walletCustody/passkeyLink.js +0 -180
- package/dist/esm/core/signingEngine/walletCustody/recoveryReplacementEnvelope.js +0 -60
- package/dist/esm/core/signingEngine/walletCustody/registrationCeremony.js +0 -460
- package/dist/esm/core/signingEngine/walletCustody/unlockedEd25519ExportRootCapability.js +0 -258
- package/dist/esm/core/signingEngine/walletCustody/walletRecoveryCredential.js +0 -23
- package/dist/esm/core/signingEngine/walletCustody/walletRecoveryEcdsa.js +0 -75
- package/dist/esm/core/signingEngine/walletCustody/walletRecoveryEd25519.js +0 -129
- package/dist/esm/core/signingEngine/walletCustody/walletRecoveryManifest.js +0 -178
- package/dist/esm/core/signingEngine/walletCustody/walletRecoveryRotation.js +0 -102
- package/dist/esm/core/signingEngine/webauthnAuth/credentials/collectAuthenticationCredentialForChallengeB64u.js +0 -154
- package/dist/esm/core/signingEngine/webauthnAuth/device/signerSlot.js +0 -25
- package/dist/esm/core/signingEngine/webauthnAuth/walletOriginWebAuthn.js +0 -109
- package/dist/esm/core/signingEngine/workerManager/SignerWorkerManager.js +0 -68
- package/dist/esm/core/signingEngine/workerManager/deviceLinkingPorts.js +0 -342
- package/dist/esm/core/signingEngine/workerManager/deviceLinkingSourceContribution.js +0 -158
- package/dist/esm/core/signingEngine/workerManager/ecdsaClientWorkerChannels.js +0 -13
- package/dist/esm/core/signingEngine/workerManager/ecdsaPresignLifecycle.js +0 -6
- package/dist/esm/core/signingEngine/workerManager/workerTransport.js +0 -734
- package/dist/esm/core/types/confirmationConfig.js +0 -39
- package/dist/esm/core/types/secure-confirm-worker.js +0 -22
- package/dist/esm/core/walletRuntimePaths/emailOtpWorker.js +0 -12
- package/dist/esm/core/walletRuntimePaths/multichainWorkers.js +0 -25
- package/dist/esm/core/walletRuntimePaths/walletCustodyCeremonyWorker.js +0 -18
- package/dist/esm/core/walletRuntimePaths/workers.js +0 -93
- package/dist/esm/react/context/useEagerPrewarm.js +0 -38
- package/dist/esm/sdk/ConfirmationDrawer-DrsREojk.js +0 -1
- package/dist/esm/sdk/EvmClient-DoxytQaJ.js +0 -1
- package/dist/esm/sdk/NearClient-vJ65Wjrq.js +0 -1
- package/dist/esm/sdk/NonceCoordinator-BBeadCSq.js +0 -1
- package/dist/esm/sdk/accountLifecycle-EyfYPnuT.js +0 -1
- package/dist/esm/sdk/actions-DZLxCcrU.js +0 -1
- package/dist/esm/sdk/adapters-DtAyuoiA.js +0 -2
- package/dist/esm/sdk/base-Xtd32asf.js +0 -1
- package/dist/esm/sdk/bytes-t5S5mkat.js +0 -1
- package/dist/esm/sdk/canonicalPrimitives-MPGET2cl.js +0 -1
- package/dist/esm/sdk/canonicalSignerErrorCode-C0hh_SVi.js +0 -1
- package/dist/esm/sdk/capabilityKinds-XaXXiD2B.js +0 -1
- package/dist/esm/sdk/chains-yAls2d9X.js +0 -1
- package/dist/esm/sdk/challengeDelivery-cAsaUC6U.js +0 -1
- package/dist/esm/sdk/configHelpers-CseiVoZD.js +0 -1
- package/dist/esm/sdk/csp-stylesheet-B1fAhrGB.js +0 -2
- package/dist/esm/sdk/defaultConfigs-CWpApkMq.js +0 -1
- package/dist/esm/sdk/display-jK7_hYho.js +0 -1
- package/dist/esm/sdk/domainIds-GDzjOs6i.js +0 -1
- package/dist/esm/sdk/ecdsaCapabilityManifest-CHFu-QrV.js +0 -1
- package/dist/esm/sdk/ecdsaChainTarget-CRcRR78w.js +0 -1
- package/dist/esm/sdk/ecdsaPresignLifecycle-CQnCxSlq.js +0 -1
- package/dist/esm/sdk/ecdsaPresignPoolIdentity-Ci-ovDlv.js +0 -1
- package/dist/esm/sdk/ecdsaWalletRecords-Cm1DdexN.js +0 -1
- package/dist/esm/sdk/enrichDisplayModelWithAbi-CR-4ebuU.js +0 -1
- package/dist/esm/sdk/evmCryptoWasm-CwEXiLrC.js +0 -1
- package/dist/esm/sdk/evmFamilyEcdsaIdentity-Br3iFdQx.js +0 -1
- package/dist/esm/sdk/exactSessionState-CjD8gekO.js +0 -210
- package/dist/esm/sdk/exactSigningLaneIdentity-olheZx_n.js +0 -1
- package/dist/esm/sdk/export-viewer-host-jo7h_0wl.js +0 -1
- package/dist/esm/sdk/helpers-D4QckQhq.js +0 -1
- package/dist/esm/sdk/host-BAqOYnju.js +0 -1
- package/dist/esm/sdk/intentDigest-CB6zy3lN.js +0 -1
- package/dist/esm/sdk/jsxRuntime.module-CoHsKD_3.js +0 -1
- package/dist/esm/sdk/keyMaterialBrands-uVZHfAh3.js +0 -1
- package/dist/esm/sdk/localOnly-DBQRG6Qh.js +0 -1
- package/dist/esm/sdk/messages-Cv2j4SKI.js +0 -1
- package/dist/esm/sdk/mountExportPrivateKeySurface-G7Z_9JMQ.js +0 -1
- package/dist/esm/sdk/mountRecoveryCodeBackupSurface-BBCTaQsu.js +0 -2
- package/dist/esm/sdk/nearEd25519YaoMaterialActivation-DQIw8ho3.js +0 -1
- package/dist/esm/sdk/nearEd25519YaoSigningPreparation-Bp_CvWRz.js +0 -1
- package/dist/esm/sdk/nearRpcResults--cBcfmp4.js +0 -1
- package/dist/esm/sdk/nonceLaneKeys-BBYi4g51.js +0 -1
- package/dist/esm/sdk/normalization-BGPR6osg.js +0 -1
- package/dist/esm/sdk/operationFingerprint-5-wH2Ht8.js +0 -1
- package/dist/esm/sdk/operationFingerprint-DtQb0pdp.js +0 -1
- package/dist/esm/sdk/passkey-custody-LP4UTFbn.js +0 -1
- package/dist/esm/sdk/pendingWalletRecoveryCodeBackup-BNk4ebsY.js +0 -1
- package/dist/esm/sdk/prfCache-Mbo7_USg.js +0 -1
- package/dist/esm/sdk/promptText-s8TQ6ckX.js +0 -1
- package/dist/esm/sdk/recovery-entrypoint-DkT8sFO5.js +0 -1
- package/dist/esm/sdk/registration-Btozh7uh.js +0 -1
- package/dist/esm/sdk/registration-CSAG_h4Y.js +0 -1
- package/dist/esm/sdk/registrationAccounts-DIeEVy6W.js +0 -1
- package/dist/esm/sdk/registrationIds-BIel5S0i.js +0 -1
- package/dist/esm/sdk/registrationIntent-DV1GYZ3K.js +0 -1
- package/dist/esm/sdk/registrationPreparationPreload-vOCqNuG4.js +0 -1
- package/dist/esm/sdk/registrationSignerPlan-FzD3TwxB.js +0 -1
- package/dist/esm/sdk/relayerHttp-DaPeS929.js +0 -1
- package/dist/esm/sdk/routePlan-B_KJaPtm.js +0 -1
- package/dist/esm/sdk/router-Dd3fFHk3.js +0 -1
- package/dist/esm/sdk/routerAbNormalSigning-D_fHjq5l.js +0 -1
- package/dist/esm/sdk/runtime-auth-B2M91rSx.js +0 -1
- package/dist/esm/sdk/runtime-device-link-ojjPSRaG.js +0 -1
- package/dist/esm/sdk/runtime-ecdsa-tempo-CE4JLgmn.js +0 -1
- package/dist/esm/sdk/runtime-email-otp-DDwtKVAe.js +0 -1
- package/dist/esm/sdk/runtime-export-JXYk8sQ-.js +0 -1
- package/dist/esm/sdk/runtime-near-BB8AG6dV.js +0 -1
- package/dist/esm/sdk/runtime-preferences-DKFZYccW.js +0 -1
- package/dist/esm/sdk/runtime-recovery-C_XjsDBg.js +0 -1
- package/dist/esm/sdk/runtime-recovery-codes-CWp839mH.js +0 -1
- package/dist/esm/sdk/runtimeContext-BpObgzbj.js +0 -6
- package/dist/esm/sdk/runtimeLoader-DjgBf_yF.js +0 -1
- package/dist/esm/sdk/sdkSentEvents-_RGAEeld.js +0 -1
- package/dist/esm/sdk/secp256k1-B_6W9QDJ.js +0 -1
- package/dist/esm/sdk/secureRandomId-CTdlJ5Mx.js +0 -1
- package/dist/esm/sdk/sessionPolicy-CNVK7nJ6.js +0 -1
- package/dist/esm/sdk/shared-j_KsFbCT.js +0 -1
- package/dist/esm/sdk/signEvmFamily-CcLVBm0f.js +0 -1
- package/dist/esm/sdk/signEvmFamilyWithUiConfirmForTempo-DgTbh6jX.js +0 -1
- package/dist/esm/sdk/signEvmWithUiConfirm-ChreN7aZ.js +0 -1
- package/dist/esm/sdk/signNear-mWbTE2Dl.js +0 -1
- package/dist/esm/sdk/signatureUses-CQkkUcwT.js +0 -1
- package/dist/esm/sdk/signerDomain-BhUTzDmF.js +0 -1
- package/dist/esm/sdk/signerLoader-By0IY24G.js +0 -1
- package/dist/esm/sdk/signingFlow-LUWrZi2d.js +0 -2
- package/dist/esm/sdk/signingSessionSeal-Mr2Xp44o.js +0 -1
- package/dist/esm/sdk/trace-M34pNGuF.js +0 -1
- package/dist/esm/sdk/transaction-activity-BbDod7ji.js +0 -1
- package/dist/esm/sdk/transactionReview-CBE5oH4c.js +0 -1
- package/dist/esm/sdk/transactionReviewAdmission-0ZgWs6q3.js +0 -1
- package/dist/esm/sdk/transactionState-9d7f3xVj.js +0 -1
- package/dist/esm/sdk/types-M7vxrYtJ.js +0 -1
- package/dist/esm/sdk/validation-dC1-_uyG.js +0 -1
- package/dist/esm/sdk/wallet-recovery-CcDZ1hMH.js +0 -1
- package/dist/esm/sdk/walletAuthority-CoWSeqvQ.js +0 -1
- package/dist/esm/sdk/walletCustodyEcdsaContinuity-B7xi7nwh.js +0 -1
- package/dist/esm/sdk/walletIframeIdentity-C0b0XMQF.js +0 -1
- package/dist/esm/sdk/walletRecoveryCommit-ljxVeo-d.js +0 -1
- package/dist/esm/sdk/walletRecoveryRotate-HztDcDaY.js +0 -1
- package/dist/esm/sdk/warmSessionHydration-BPGM0YRU.js +0 -1
- package/dist/esm/sdk/webauthnP256-qu06GNFm.js +0 -1
- package/dist/esm/sdk/webauthnPromptCoordinator-DO-qfECu.js +0 -1
- package/dist/esm/shared-ts/src/authorization/walletCustodyOperation.js +0 -16
- package/dist/esm/shared-ts/src/device-linking/contracts.js +0 -8
- package/dist/esm/shared-ts/src/device-linking/ed25519ExportRoot.js +0 -167
- package/dist/esm/shared-ts/src/passkey-custody/ceremonyCommitPayload.js +0 -43
- package/dist/esm/shared-ts/src/signing-lanes/participants.js +0 -256
- package/dist/esm/shared-ts/src/signing-lanes/recordParsers.js +0 -479
- package/dist/esm/shared-ts/src/threshold/secp256k1.js +0 -6
- package/dist/esm/shared-ts/src/utils/addAuthMethodRegistration.js +0 -103
- package/dist/esm/shared-ts/src/utils/ecdsaKeyFactsInventory.js +0 -43
- package/dist/esm/shared-ts/src/utils/exactKeys.js +0 -17
- package/dist/esm/shared-ts/src/utils/routerAbTraceContext.js +0 -36
- package/dist/esm/shared-ts/src/utils/walletAddSignerActivation.js +0 -32
- package/dist/public/sdk/ConfirmationDrawer-DrsREojk.js +0 -1
- package/dist/public/sdk/EvmClient-DoxytQaJ.js +0 -1
- package/dist/public/sdk/NearClient-vJ65Wjrq.js +0 -1
- package/dist/public/sdk/NonceCoordinator-BBeadCSq.js +0 -1
- package/dist/public/sdk/accountLifecycle-EyfYPnuT.js +0 -1
- package/dist/public/sdk/actions-DZLxCcrU.js +0 -1
- package/dist/public/sdk/adapters-DtAyuoiA.js +0 -2
- package/dist/public/sdk/base-Xtd32asf.js +0 -1
- package/dist/public/sdk/bytes-t5S5mkat.js +0 -1
- package/dist/public/sdk/canonicalPrimitives-MPGET2cl.js +0 -1
- package/dist/public/sdk/canonicalSignerErrorCode-C0hh_SVi.js +0 -1
- package/dist/public/sdk/capabilityKinds-XaXXiD2B.js +0 -1
- package/dist/public/sdk/chains-yAls2d9X.js +0 -1
- package/dist/public/sdk/challengeDelivery-cAsaUC6U.js +0 -1
- package/dist/public/sdk/configHelpers-CseiVoZD.js +0 -1
- package/dist/public/sdk/csp-stylesheet-B1fAhrGB.js +0 -2
- package/dist/public/sdk/defaultConfigs-CWpApkMq.js +0 -1
- package/dist/public/sdk/display-jK7_hYho.js +0 -1
- package/dist/public/sdk/domainIds-GDzjOs6i.js +0 -1
- package/dist/public/sdk/ecdsaCapabilityManifest-CHFu-QrV.js +0 -1
- package/dist/public/sdk/ecdsaChainTarget-CRcRR78w.js +0 -1
- package/dist/public/sdk/ecdsaPresignLifecycle-CQnCxSlq.js +0 -1
- package/dist/public/sdk/ecdsaPresignPoolIdentity-Ci-ovDlv.js +0 -1
- package/dist/public/sdk/ecdsaWalletRecords-Cm1DdexN.js +0 -1
- package/dist/public/sdk/enrichDisplayModelWithAbi-CR-4ebuU.js +0 -1
- package/dist/public/sdk/evmCryptoWasm-CwEXiLrC.js +0 -1
- package/dist/public/sdk/evmFamilyEcdsaIdentity-Br3iFdQx.js +0 -1
- package/dist/public/sdk/exactSessionState-CjD8gekO.js +0 -210
- package/dist/public/sdk/exactSigningLaneIdentity-olheZx_n.js +0 -1
- package/dist/public/sdk/export-viewer-host-jo7h_0wl.js +0 -1
- package/dist/public/sdk/helpers-D4QckQhq.js +0 -1
- package/dist/public/sdk/host-BAqOYnju.js +0 -1
- package/dist/public/sdk/intentDigest-CB6zy3lN.js +0 -1
- package/dist/public/sdk/jsxRuntime.module-CoHsKD_3.js +0 -1
- package/dist/public/sdk/keyMaterialBrands-uVZHfAh3.js +0 -1
- package/dist/public/sdk/localOnly-DBQRG6Qh.js +0 -1
- package/dist/public/sdk/messages-Cv2j4SKI.js +0 -1
- package/dist/public/sdk/mountExportPrivateKeySurface-G7Z_9JMQ.js +0 -1
- package/dist/public/sdk/mountRecoveryCodeBackupSurface-BBCTaQsu.js +0 -2
- package/dist/public/sdk/nearEd25519YaoMaterialActivation-DQIw8ho3.js +0 -1
- package/dist/public/sdk/nearEd25519YaoSigningPreparation-Bp_CvWRz.js +0 -1
- package/dist/public/sdk/nearRpcResults--cBcfmp4.js +0 -1
- package/dist/public/sdk/nonceLaneKeys-BBYi4g51.js +0 -1
- package/dist/public/sdk/normalization-BGPR6osg.js +0 -1
- package/dist/public/sdk/operationFingerprint-5-wH2Ht8.js +0 -1
- package/dist/public/sdk/operationFingerprint-DtQb0pdp.js +0 -1
- package/dist/public/sdk/passkey-custody-LP4UTFbn.js +0 -1
- package/dist/public/sdk/pendingWalletRecoveryCodeBackup-BNk4ebsY.js +0 -1
- package/dist/public/sdk/prfCache-Mbo7_USg.js +0 -1
- package/dist/public/sdk/promptText-s8TQ6ckX.js +0 -1
- package/dist/public/sdk/recovery-entrypoint-DkT8sFO5.js +0 -1
- package/dist/public/sdk/registration-Btozh7uh.js +0 -1
- package/dist/public/sdk/registration-CSAG_h4Y.js +0 -1
- package/dist/public/sdk/registrationAccounts-DIeEVy6W.js +0 -1
- package/dist/public/sdk/registrationIds-BIel5S0i.js +0 -1
- package/dist/public/sdk/registrationIntent-DV1GYZ3K.js +0 -1
- package/dist/public/sdk/registrationPreparationPreload-vOCqNuG4.js +0 -1
- package/dist/public/sdk/registrationSignerPlan-FzD3TwxB.js +0 -1
- package/dist/public/sdk/relayerHttp-DaPeS929.js +0 -1
- package/dist/public/sdk/routePlan-B_KJaPtm.js +0 -1
- package/dist/public/sdk/router-Dd3fFHk3.js +0 -1
- package/dist/public/sdk/routerAbNormalSigning-D_fHjq5l.js +0 -1
- package/dist/public/sdk/runtime-auth-B2M91rSx.js +0 -1
- package/dist/public/sdk/runtime-device-link-ojjPSRaG.js +0 -1
- package/dist/public/sdk/runtime-ecdsa-tempo-CE4JLgmn.js +0 -1
- package/dist/public/sdk/runtime-email-otp-DDwtKVAe.js +0 -1
- package/dist/public/sdk/runtime-export-JXYk8sQ-.js +0 -1
- package/dist/public/sdk/runtime-near-BB8AG6dV.js +0 -1
- package/dist/public/sdk/runtime-preferences-DKFZYccW.js +0 -1
- package/dist/public/sdk/runtime-recovery-C_XjsDBg.js +0 -1
- package/dist/public/sdk/runtime-recovery-codes-CWp839mH.js +0 -1
- package/dist/public/sdk/runtimeContext-BpObgzbj.js +0 -6
- package/dist/public/sdk/runtimeLoader-DjgBf_yF.js +0 -1
- package/dist/public/sdk/sdkSentEvents-_RGAEeld.js +0 -1
- package/dist/public/sdk/secp256k1-B_6W9QDJ.js +0 -1
- package/dist/public/sdk/secureRandomId-CTdlJ5Mx.js +0 -1
- package/dist/public/sdk/sessionPolicy-CNVK7nJ6.js +0 -1
- package/dist/public/sdk/shared-j_KsFbCT.js +0 -1
- package/dist/public/sdk/signEvmFamily-CcLVBm0f.js +0 -1
- package/dist/public/sdk/signEvmFamilyWithUiConfirmForTempo-DgTbh6jX.js +0 -1
- package/dist/public/sdk/signEvmWithUiConfirm-ChreN7aZ.js +0 -1
- package/dist/public/sdk/signNear-mWbTE2Dl.js +0 -1
- package/dist/public/sdk/signatureUses-CQkkUcwT.js +0 -1
- package/dist/public/sdk/signerDomain-BhUTzDmF.js +0 -1
- package/dist/public/sdk/signerLoader-By0IY24G.js +0 -1
- package/dist/public/sdk/signingFlow-LUWrZi2d.js +0 -2
- package/dist/public/sdk/signingSessionSeal-Mr2Xp44o.js +0 -1
- package/dist/public/sdk/trace-M34pNGuF.js +0 -1
- package/dist/public/sdk/transaction-activity-BbDod7ji.js +0 -1
- package/dist/public/sdk/transactionReview-CBE5oH4c.js +0 -1
- package/dist/public/sdk/transactionReviewAdmission-0ZgWs6q3.js +0 -1
- package/dist/public/sdk/transactionState-9d7f3xVj.js +0 -1
- package/dist/public/sdk/types-M7vxrYtJ.js +0 -1
- package/dist/public/sdk/validation-dC1-_uyG.js +0 -1
- package/dist/public/sdk/wallet-recovery-CcDZ1hMH.js +0 -1
- package/dist/public/sdk/walletAuthority-CoWSeqvQ.js +0 -1
- package/dist/public/sdk/walletCustodyEcdsaContinuity-B7xi7nwh.js +0 -1
- package/dist/public/sdk/walletIframeIdentity-C0b0XMQF.js +0 -1
- package/dist/public/sdk/walletRecoveryCommit-ljxVeo-d.js +0 -1
- package/dist/public/sdk/walletRecoveryRotate-HztDcDaY.js +0 -1
- package/dist/public/sdk/warmSessionHydration-BPGM0YRU.js +0 -1
- package/dist/public/sdk/webauthnP256-qu06GNFm.js +0 -1
- package/dist/public/sdk/webauthnPromptCoordinator-DO-qfECu.js +0 -1
- package/dist/public/sdk/workers/evm_crypto.wasm +0 -0
- package/dist/public/sdk/workers/near_signer.wasm +0 -0
- package/dist/public/sdk/workers/tempo_signer.wasm +0 -0
- package/dist/types/wallet/src/SeamsWeb/assembly/browserWorkerWarmupPolicy.d.ts +0 -4
- package/dist/types/wallet/src/SeamsWeb/assembly/configureBrowserIndexedDB.d.ts +0 -3
- package/dist/types/wallet/src/SeamsWeb/operations/auth/walletAuth.d.ts +0 -56
- package/dist/types/wallet/src/SeamsWeb/operations/evm/index.d.ts +0 -9
- package/dist/types/wallet/src/SeamsWeb/operations/near/index.d.ts +0 -11
- package/dist/types/wallet/src/SeamsWeb/operations/recovery/accountSync.d.ts +0 -19
- package/dist/types/wallet/src/SeamsWeb/publicApi/awaitNearReady.d.ts +0 -27
- package/dist/types/wallet/src/SeamsWeb/publicApi/devices.typecheck.d.ts +0 -2
- package/dist/types/wallet/src/SeamsWeb/publicApi/preferences.d.ts +0 -8
- package/dist/types/wallet/src/SeamsWeb/publicApi/recovery.d.ts +0 -14
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/config-guards.d.ts +0 -15
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/registrationPreparationPreload.d.ts +0 -2
- package/dist/types/wallet/src/core/signingEngine/flows/registration/public.d.ts +0 -68
- package/dist/types/wallet/src/react/context/useEagerPrewarm.d.ts +0 -3
- package/dist/workers/evm_crypto.wasm +0 -0
- package/dist/workers/near_signer.wasm +0 -0
- package/dist/workers/tempo_signer.wasm +0 -0
- /package/dist/esm/sdk/{accountIds-C3Ihsd2c.js → accountIds-BzZs7YoX.js} +0 -0
- /package/dist/esm/sdk/{base64-ojm5DKcF.js → base64-CsEj-_bC.js} +0 -0
- /package/dist/esm/sdk/{browser-CsOGMbMy.js → browser-D4wUl_77.js} +0 -0
- /package/dist/esm/sdk/{errors-DfbnsXjO.js → errors-BZO3LF6G.js} +0 -0
- /package/dist/esm/sdk/{events-BJyVcnsn.js → events-DsQJQ0Cl.js} +0 -0
- /package/dist/esm/sdk/{executeWorkerOperation-CrFf3FkL.js → executeWorkerOperation-BInr8RYN.js} +0 -0
- /package/dist/esm/sdk/{jsonRpc-C85RYR0A.js → jsonRpc-DrCYQIM9.js} +0 -0
- /package/dist/esm/sdk/{keccak-zexutGfG.js → keccak-B02Fekdh.js} +0 -0
- /package/dist/esm/sdk/{profileAccountProjection-DHCaMtOu.js → profileAccountProjection-DmmfMood.js} +0 -0
- /package/dist/esm/sdk/{signerSlot-BQ1g5JNV.js → signerSlot-Dto7dObP.js} +0 -0
- /package/dist/esm/sdk/{surface-measurement-reporter-OICExWKE.js → surface-measurement-reporter-IlPOI3QK.js} +0 -0
- /package/dist/public/sdk/{accountIds-C3Ihsd2c.js → accountIds-BzZs7YoX.js} +0 -0
- /package/dist/public/sdk/{base64-ojm5DKcF.js → base64-CsEj-_bC.js} +0 -0
- /package/dist/public/sdk/{browser-CsOGMbMy.js → browser-D4wUl_77.js} +0 -0
- /package/dist/public/sdk/{errors-DfbnsXjO.js → errors-BZO3LF6G.js} +0 -0
- /package/dist/public/sdk/{events-BJyVcnsn.js → events-DsQJQ0Cl.js} +0 -0
- /package/dist/public/sdk/{executeWorkerOperation-CrFf3FkL.js → executeWorkerOperation-BInr8RYN.js} +0 -0
- /package/dist/public/sdk/{jsonRpc-C85RYR0A.js → jsonRpc-DrCYQIM9.js} +0 -0
- /package/dist/public/sdk/{keccak-zexutGfG.js → keccak-B02Fekdh.js} +0 -0
- /package/dist/public/sdk/{profileAccountProjection-DHCaMtOu.js → profileAccountProjection-DmmfMood.js} +0 -0
- /package/dist/public/sdk/{signerSlot-BQ1g5JNV.js → signerSlot-Dto7dObP.js} +0 -0
- /package/dist/public/sdk/{surface-measurement-reporter-OICExWKE.js → surface-measurement-reporter-IlPOI3QK.js} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{n as e}from"./chunk-dVx5-UGu.js";import{B as t,S as n,V as r,r as i}from"./domainIds-GDzjOs6i.js";import{_ as a,d as o,i as s,r as c,u as l}from"./validation-dC1-_uyG.js";import{r as u}from"./transactionReviewAdmission-0ZgWs6q3.js";import{t as d}from"./errors-DfbnsXjO.js";import{i as f,n as p,r as m}from"./base64-ojm5DKcF.js";import{n as h}from"./secureRandomId-CTdlJ5Mx.js";import{d as g,o as _}from"./sessionPolicy-CNVK7nJ6.js";import{et as v,it as y,jt as b}from"./ecdsaPresignLifecycle-CQnCxSlq.js";import{c as x,d as ee,f as S,h as te,m as C,p as w,s as T}from"./capabilityKinds-XaXXiD2B.js";import{d as ne,f as E,l as re,m as D}from"./chains-yAls2d9X.js";import{r as O}from"./canonicalPrimitives-MPGET2cl.js";import{a as ie,c as k}from"./ecdsaChainTarget-CRcRR78w.js";import{n as A,t as j}from"./signerDomain-BhUTzDmF.js";import{d as ae,i as M,t as N,u as P}from"./accountIds-C3Ihsd2c.js";import{x as F}from"./evmFamilyEcdsaIdentity-Br3iFdQx.js";import{a as oe,m as I,o as L}from"./sdkSentEvents-_RGAEeld.js";import{t as se}from"./signerSlot-BQ1g5JNV.js";import{i as ce}from"./signingSessionSeal-Mr2Xp44o.js";import{a as le,c as ue,i as R,n as de,o as fe,r as z,s as B,t as pe}from"./types-M7vxrYtJ.js";import{o as me,t as he}from"./challengeDelivery-cAsaUC6U.js";import{p as V}from"./nonceLaneKeys-BBYi4g51.js";import{a as ge,i as _e,l as H,u as ve}from"./helpers-D4QckQhq.js";import{i as ye,n as be}from"./profileAccountProjection-DHCaMtOu.js";import{b as xe,s as Se,t as Ce}from"./nearEd25519YaoMaterialActivation-DQIw8ho3.js";import{n as we,t as Te}from"./relayerHttp-DaPeS929.js";import{c as Ee,f as De,o as Oe}from"./exactSigningLaneIdentity-olheZx_n.js";import{s as ke}from"./nearEd25519YaoSigningPreparation-Bp_CvWRz.js";import{n as Ae,r as je,t as Me}from"./operationFingerprint-DtQb0pdp.js";import{a as U,c as Ne,o as Pe,s as Fe,t as Ie}from"./trace-M34pNGuF.js";import{a as Le,n as Re,o as ze,t as W}from"./actions-DZLxCcrU.js";import{n as Be}from"./NearClient-vJ65Wjrq.js";import{n as G}from"./defaultConfigs-CWpApkMq.js";import{n as Ve}from"./NonceCoordinator-BBeadCSq.js";import{t as He}from"./executeWorkerOperation-CrFf3FkL.js";import{a as Ue,i as We,n as Ge,o as Ke}from"./promptText-s8TQ6ckX.js";import{S as qe,_ as Je,c as Ye,g as Xe,h as Ze,l as Qe,n as $e,o as et,s as tt,u as nt,w as rt,x as it}from"./operationFingerprint-5-wH2Ht8.js";import{S as at,_ as ot,a as st,b as ct,d as lt,h as ut,i as dt,l as ft,n as pt,r as mt,s as ht,u as gt,x as _t,y as vt}from"./routerAbNormalSigning-D_fHjq5l.js";import{C as yt,S as bt,a as xt,b as St,c as Ct,i as wt,n as Tt,r as Et,s as Dt,t as Ot}from"./transactionState-9d7f3xVj.js";let kt=function(e){return e[e.SignTransactionsWithActionsSuccess=0]=`SignTransactionsWithActionsSuccess`,e[e.SignNep413MessageSuccess=1]=`SignNep413MessageSuccess`,e[e.SignDelegateActionSuccess=2]=`SignDelegateActionSuccess`,e}({});const At={ThresholdEd25519ComputeNep413SigningDigest:`thresholdEd25519ComputeNep413SigningDigest`,ThresholdEd25519ComputeDelegateSigningDigest:`thresholdEd25519ComputeDelegateSigningDigest`,ThresholdEd25519BuildDelegateSigningPayload:`thresholdEd25519BuildDelegateSigningPayload`,ThresholdEd25519FinalizeDelegateFromSignature:`thresholdEd25519FinalizeDelegateFromSignature`,ThresholdEd25519FinalizeNearTxFromSignature:`thresholdEd25519FinalizeNearTxFromSignature`,ThresholdEd25519BuildNearTxUnsignedBorsh:`thresholdEd25519BuildNearTxUnsignedBorsh`,ThresholdEd25519DecodeSignedNearTxBorsh:`thresholdEd25519DecodeSignedNearTxBorsh`},jt={uiMode:`modal`,behavior:`requireClick`,autoProceedDelay:0};function Mt(e){try{return JSON.stringify(e,(e,t)=>typeof t==`bigint`?t.toString():t,2)}catch{return String(e)}}function K(e,t,n){let r=String(t??``).trim();if(r)return{label:e,value:r,...typeof n==`string`&&n.trim()?{copyValue:n}:{}}}function Nt(e){switch(e.action_type){case W.Transfer:case W.FunctionCall:return BigInt(e.deposit||`0`);case W.Stake:return BigInt(e.stake||`0`);default:return BigInt(0)}}function Pt(e){try{let t=JSON.parse(e)?.permission;if(t===`FullAccess`)return`FullAccess`;if(t&&typeof t==`object`){if(`FullAccess`in t)return`FullAccess`;if(`FunctionCall`in t)return`FunctionCall`}}catch{return`Unknown`}return`Unknown`}function Ft(e){let{action:t,txIndex:n,actionIndex:r,receiverId:i}=e,a=`near.tx.${n}.action.${r}`;switch(t.action_type){case W.CreateAccount:return{id:a,kind:`near.action`,actionType:`createAccount`,label:`Action ${r+1}: CreateAccount`,fields:[K(`Receiver`,i)].filter(Boolean)};case W.Transfer:return{id:a,kind:`near.action`,actionType:`transfer`,label:`Action ${r+1}: Transfer`,fields:[K(`Receiver`,i),K(`Amount (yoctoNEAR)`,t.deposit)].filter(Boolean)};case W.FunctionCall:{let e=String(t.args||``),n=e?[{id:`${a}.args`,kind:`raw.fallback`,label:`Function Arguments`,raw:e}]:[];return{id:a,kind:`near.action`,actionType:`functionCall`,label:`Action ${r+1}: FunctionCall`,fields:[K(`Receiver`,i),K(`Method`,t.method_name),K(`Gas`,t.gas),K(`Deposit (yoctoNEAR)`,t.deposit)].filter(Boolean),...n.length?{children:n}:{}}}case W.Stake:return{id:a,kind:`near.action`,actionType:`stake`,label:`Action ${r+1}: Stake`,fields:[K(`Receiver`,i),K(`Stake (yoctoNEAR)`,t.stake),K(`Validator Key`,t.public_key,t.public_key)].filter(Boolean)};case W.AddKey:return{id:a,kind:`near.action`,actionType:`addKey`,label:`Action ${r+1}: AddKey`,fields:[K(`Receiver`,i),K(`Public Key`,t.public_key,t.public_key),K(`Permission`,Pt(t.access_key))].filter(Boolean)};case W.DeleteKey:return{id:a,kind:`near.action`,actionType:`deleteKey`,label:`Action ${r+1}: DeleteKey`,fields:[K(`Receiver`,i),K(`Public Key`,t.public_key,t.public_key)].filter(Boolean)};case W.DeployContract:return{id:a,kind:`near.action`,actionType:`deployContract`,label:`Action ${r+1}: DeployContract`,fields:[K(`Receiver`,i),K(`Code Bytes`,String(t.code?.length??0))].filter(Boolean)};case W.DeployGlobalContract:return{id:a,kind:`near.action`,actionType:`deployGlobalContract`,label:`Action ${r+1}: DeployGlobalContract`,fields:[K(`Receiver`,i),K(`Deploy Mode`,t.deploy_mode),K(`Code Bytes`,String(t.code?.length??0))].filter(Boolean)};case W.UseGlobalContract:return{id:a,kind:`near.action`,actionType:`useGlobalContract`,label:`Action ${r+1}: UseGlobalContract`,fields:[K(`Receiver`,i),K(`By Account`,t.account_id),K(`By Code Hash`,t.code_hash,t.code_hash)].filter(Boolean)};case W.DeleteAccount:return{id:a,kind:`near.action`,actionType:`deleteAccount`,label:`Action ${r+1}: DeleteAccount`,fields:[K(`Receiver`,i),K(`Beneficiary`,t.beneficiary_id)].filter(Boolean)};case W.SignedDelegate:return{id:a,kind:`near.action`,actionType:`signedDelegate`,label:`Action ${r+1}: SignedDelegate`,children:[{id:`${a}.delegate`,kind:`raw.fallback`,label:`Signed Delegate Payload`,raw:Mt(t)}]};default:return{id:a,kind:`raw.fallback`,label:`Action ${r+1}: Unsupported`,raw:Mt(t)}}}function It(e,t,n){let r=String(e.receiverId||``).trim()||`(unknown receiver)`,i=Array.isArray(e.actions)?e.actions:[],a=i.reduce((e,t)=>e+Nt(t),BigInt(0)),o=[K(`Receiver`,r),K(`Action Count`,String(i.length)),K(`Attached Value (yoctoNEAR)`,a>0?a.toString():void 0)].filter(Boolean);return{id:`near.tx.${t}`,kind:`generic.contractCall`,label:n>1?`Transaction ${t+1}`:`Transaction`,to:r,value:a>0?a.toString():void 0,fields:o,children:i.map((e,n)=>Ft({action:e,txIndex:t,actionIndex:n,receiverId:r}))}}function Lt(e){let t=Array.isArray(e.txSigningRequests)?e.txSigningRequests:[],n=t.map((e,n)=>It(e,n,t.length)),r=t.reduce((e,t)=>e+(Array.isArray(t.actions)?t.actions.reduce((e,t)=>e+Nt(t),BigInt(0)):BigInt(0)),BigInt(0));return{chain:`near`,intentDigest:e.intentDigest,signerAccount:e.signerAccount,title:e.title||`NEAR Transaction`,subtitle:e.subtitle,operations:n,...r>0?{totals:{nativeValue:r.toString(),nativeSymbol:`yoctoNEAR`}}:{}}}function Rt(e){let t={id:`near.message`,kind:`near.message`,label:`Message signature`,fields:[K(`Signer`,e.signerAccount,e.signerAccount),K(`Recipient`,e.recipient,e.recipient),{label:`Message`,value:e.message,copyValue:e.message,renderAs:`file-content`,hideChevron:!0}].filter(Boolean)};return{chain:`near`,intentDigest:e.intentDigest,signerAccount:e.signerAccount,title:e.title||`NEP-413 message`,subtitle:e.subtitle,operations:[t]}}function zt(e){try{return Lt(e)}catch{return{chain:`near`,signerAccount:e.signerAccount,...e.title?{title:e.title}:{},...e.subtitle?{subtitle:e.subtitle}:{},operations:[]}}}async function Bt(e,t){let n=N(e),r=await be(t,ye(n)).catch(()=>null);if(!r?.profileId)throw Error(`No profile/account mapping for account ${n}`);let i=await t.getLastProfileState().catch(()=>null);if(!i?.profileId||i.profileId!==r.profileId)throw Error(`No last user session for account ${n}`);let a=se(i.activeSignerSlot,{min:1});if(a===null)throw Error(`Invalid last-user signerSlot for account ${n}`);return a}async function Vt(e){let t=N(e.nearAccount.accountId),n=se(e.signerSlot,{min:1});if(n===null)throw Error(`Invalid signerSlot for ${e.operationLabel}: ${e.signerSlot}`);if(e.requestedSignerSlot!==void 0){let t=se(e.requestedSignerSlot,{min:1});if(t===null||t!==n)throw Error(`Requested signerSlot does not match the selected signing lane for ${e.operationLabel}`)}let r=await e.materialExecutor.resolveSigningKeyMaterial();if(r.nearAccountId!==t||r.signerSlot!==n)throw Error(`[SigningEngine] threshold key material does not match the selected lane`);return{thresholdKeyMaterial:r}}function Ht(e){let t=Wt({nearAccountId:e.nearAccountId,tx:e.transaction,txIndex:0});return{txSigningRequest:t,confirmationTransaction:{receiverId:t.receiverId,actions:t.actions}}}function Ut(e){let t=e.delegate.actions.map(Le);t.forEach((e,t)=>{try{ze(e)}catch(e){throw Error(`Delegate action ${t} validation failed: ${e instanceof Error?e.message:String(e)}`)}});let n={senderId:e.delegate.senderId||e.nearAccountId,receiverId:e.delegate.receiverId,actions:t,nonce:e.delegate.nonce,maxBlockHeight:e.delegate.maxBlockHeight};return{confirmationDelegate:n,workerDelegate:{...n,nonce:e.delegate.nonce.toString(),maxBlockHeight:e.delegate.maxBlockHeight.toString(),publicKey:e.signingPublicKey}}}function Wt(e){let t=String(e.tx?.receiverId||``).trim();if(!t)throw Error(`[SigningEngine] transactions[${e.txIndex}].receiverId is required`);let n=Array.isArray(e.tx?.actions)?e.tx.actions:[];if(n.length===0)throw Error(`[SigningEngine] transactions[${e.txIndex}].actions must be non-empty`);for(let e=0;e<n.length;e++)ze(n[e]);return{nearAccountId:e.nearAccountId,receiverId:t,actions:n}}async function Gt(e){return Yt({kind:`near:transactions_with_actions:planning`,payload:{purpose:`near_transaction`,...Xt(e),transactions:Zt(e.transactions)}})}async function Kt(e){return Yt({kind:`near:transactions_with_actions`,payload:{purpose:`near_transaction`,...Xt(e),transactions:Zt(e.transactions),unsignedTransactionBorshB64u:s(e.unsignedTransactionBorshB64u,`unsignedTransactionBorshB64u`),signingDigestB64u:s(e.signingDigestB64u,`signingDigestB64u`)}})}async function qt(e){return Yt({kind:`near:nep413`,payload:{purpose:`nep413_message`,...Xt(e),message:s(e.message,`message`),recipient:s(e.recipient,`recipient`),nonce:s(e.nonce,`nonce`),state:e.state?String(e.state):null}})}async function Jt(e){return Yt({kind:`near:delegate_action`,payload:{purpose:`delegate_action`,...Xt(e),delegate:Qt(e.delegate)}})}async function Yt(e){return`sha256:${f(await D(E({kind:s(e.kind,`kind`),payload:fn(e.payload)})))}`}function Xt(e){return{nearAccountId:s(e.nearAccountId,`nearAccountId`),nearNetworkId:s(e.nearNetworkId,`nearNetworkId`),relayerKeyId:s(e.relayerKeyId,`relayerKeyId`),signerPublicKey:s(e.signerPublicKey,`signerPublicKey`)}}function Zt(e){if(!Array.isArray(e)||e.length<1)throw Error(`transactions must be a non-empty array`);return e.map((e,t)=>$t(e,`transactions[${t}]`))}function Qt(e){return{senderId:s(e.senderId,`delegate.senderId`),receiverId:s(e.receiverId,`delegate.receiverId`),actions:en(e.actions,`delegate.actions`),nonce:s(e.nonce,`delegate.nonce`),maxBlockHeight:s(e.maxBlockHeight,`delegate.maxBlockHeight`),publicKey:s(e.publicKey,`delegate.publicKey`)}}function $t(e,t){let n=a(e,t);return{nearAccountId:s(n.nearAccountId,`${t}.nearAccountId`),receiverId:s(n.receiverId,`${t}.receiverId`),actions:en(n.actions,`${t}.actions`)}}function en(e,t){if(!Array.isArray(e))throw Error(`${t} must be an array`);return e.map((e,n)=>tn(e,`${t}[${n}]`))}function tn(e,t){let n=a(e,t),r=s(n.action_type,`${t}.action_type`);switch(r){case`CreateAccount`:return{action_type:r};case`DeployContract`:return{action_type:r,code:sn(n.code,`${t}.code`)};case`FunctionCall`:return{action_type:r,method_name:s(n.method_name,`${t}.method_name`),args:s(n.args,`${t}.args`),gas:s(n.gas,`${t}.gas`),deposit:s(n.deposit,`${t}.deposit`)};case`Transfer`:return{action_type:r,deposit:s(n.deposit,`${t}.deposit`)};case`Stake`:return{action_type:r,stake:s(n.stake,`${t}.stake`),public_key:s(n.public_key,`${t}.public_key`)};case`AddKey`:return{action_type:r,public_key:s(n.public_key,`${t}.public_key`),access_key:s(n.access_key,`${t}.access_key`)};case`DeleteKey`:return{action_type:r,public_key:s(n.public_key,`${t}.public_key`)};case`DeleteAccount`:return{action_type:r,beneficiary_id:s(n.beneficiary_id,`${t}.beneficiary_id`)};case`SignedDelegate`:return{action_type:r,delegate_action:nn(n.delegate_action,`${t}.delegate_action`),signature:an(n.signature,`${t}.signature`)};case`DeployGlobalContract`:return{action_type:r,code:sn(n.code,`${t}.code`),deploy_mode:un(n.deploy_mode,`${t}.deploy_mode`)};case`UseGlobalContract`:return on(n,t)}throw Error(`${t}.action_type is unsupported`)}function nn(e,t){let n=a(e,t);return{senderId:s(n.senderId,`${t}.senderId`),receiverId:s(n.receiverId,`${t}.receiverId`),actions:en(n.actions,`${t}.actions`),nonce:ln(n.nonce,`${t}.nonce`),maxBlockHeight:ln(n.maxBlockHeight,`${t}.maxBlockHeight`),publicKey:rn(n.publicKey,`${t}.publicKey`)}}function rn(e,t){let n=a(e,t);return{keyType:cn(n.keyType,`${t}.keyType`),keyData:sn(n.keyData,`${t}.keyData`)}}function an(e,t){let n=a(e,t);return{keyType:cn(n.keyType,`${t}.keyType`),signatureData:sn(n.signatureData,`${t}.signatureData`)}}function on(e,t){let n=dn(e.account_id),r=dn(e.code_hash);if(n&&r)throw Error(`${t} requires exactly one of account_id or code_hash`);if(n)return{action_type:`UseGlobalContract`,account_id:n};if(r)return{action_type:`UseGlobalContract`,code_hash:r};throw Error(`${t} requires exactly one of account_id or code_hash`)}function sn(e,t){if(!Array.isArray(e))throw Error(`${t} must be an array`);return e.map((e,n)=>{if(typeof e!=`number`||!Number.isInteger(e)||e<0||e>255)throw Error(`${t}[${n}] must be a byte`);return e})}function cn(e,t){if(typeof e!=`number`||!Number.isSafeInteger(e))throw Error(`${t} must be a safe integer`);return e}function ln(e,t){return typeof e==`bigint`||typeof e==`number`&&Number.isSafeInteger(e)?e:s(e,t)}function un(e,t){let n=s(e,t);if(n===`CodeHash`||n===`AccountId`)return n;throw Error(`${t} is invalid`)}function dn(e){return String(e||``).trim()||null}function fn(e){if(typeof e==`bigint`)return e.toString(10);if(e instanceof Uint8Array)return{__bytesB64u:f(e)};if(ArrayBuffer.isView(e))return{__bytesB64u:f(new Uint8Array(e.buffer,e.byteOffset,e.byteLength))};if(e instanceof ArrayBuffer)return{__bytesB64u:f(new Uint8Array(e))};if(Array.isArray(e))return e.map(fn);if(!e||typeof e!=`object`)return e;let t={};for(let n of Object.keys(e).sort()){let r=fn(e[n]);r!==void 0&&(t[n]=r)}return t}async function pn(e){if(We(e.signingAuthPlan)&&!e.emailOtpEd25519StepUp)throw Error(`[SigningEngine][near] Email OTP step-up runner is unavailable`);if(Ue(e.signingAuthPlan)&&!e.passkeyEd25519OperationStepUp)throw Error(`[SigningEngine][near] Passkey operation step-up runner is unavailable`);let t=null,n=await Xe({operation:{kind:`near_ed25519_step_up`,requiredSignatureUses:e.requiredSignatureUses},selectedLane:{authMethod:ue(e.signingLaneAuth)},policy:vn(e.signingAuthPlan),methods:{...e.emailOtpEd25519StepUp?{emailOtp:{method:`email_otp`,prepareChallenge:async()=>await e.emailOtpEd25519StepUp.prepare({operationFingerprintDigest:e.operationFingerprintDigest}),...e.emailOtpEd25519StepUp.resend?{resendChallenge:async()=>await e.emailOtpEd25519StepUp.resend({operationFingerprintDigest:e.operationFingerprintDigest})}:{},complete:hn}}:{},passkey:{method:`passkey`,prepare:async()=>{if(!e.passkeyEd25519OperationStepUp)throw Error(`[SigningEngine][near] Passkey operation step-up runner is unavailable`);return t=await e.passkeyEd25519OperationStepUp.prepare(),{}},complete:gn}}}),r=e.signingAuthPlan;if(n.method===`warm_session`){if(!yn(r))throw Error(`[SigningEngine][near] warm-session step-up requires a warm-session plan`);return{kind:`warm_session`,confirmationAuthPayload:{signingAuthPlan:r}}}if(n.method===`email_otp`){if(!We(r))throw Error(`[SigningEngine][near] Email OTP step-up requires an Email OTP plan`);return{kind:`email_otp`,confirmationAuthPayload:{signingAuthPlan:{kind:`emailOtpReauth`,method:`email_otp`,emailOtpPrompt:n.prompt}},emailOtpPrompt:n.prompt}}if(!Ue(r))throw Error(`[SigningEngine][near] passkey step-up requires a passkey plan`);return{kind:`passkey`,confirmationAuthPayload:{signingAuthPlan:r},plannedPasskeyOperationStepUp:_n(t)}}function mn(e){switch(e.kind){case`passkey`:return{kind:`passkeyReauth`,method:`passkey`};case`email_otp`:return{kind:`emailOtpReauth`,method:`email_otp`};default:throw Error(`[SigningEngine][near] unsupported material auth requirement`)}}async function hn(){}async function gn(){}function _n(e){if(!e)throw Error(`[SigningEngine][near] Passkey operation step-up plan is required`);return e}function vn(e){if(Ke(e)){if(e.curve!==`ed25519`)throw Error(`[SigningEngine][near] warm-session step-up requires an Ed25519 auth plan`);return{kind:`reuse_warm_session`,authorization:{method:e.method,curve:`ed25519`,thresholdSessionId:e.thresholdSessionId,expiresAtMs:e.expiresAtMs,remainingUses:e.remainingUses}}}return{kind:`use_selected_lane`}}function yn(e){return Ke(e)&&e.curve===`ed25519`}function bn(e,t,n){try{e?.(I({...n,flowId:`signing:near:${String(t)}:${n.phase}`,accountId:String(t)}))}catch{}}function xn(e,t){let n=tt(e.signingAuthPlan);if(t.phase===`confirmation.complete`){if(n===`passkey`&&t.status===`succeeded`)return}else if(n!==`passkey`||t.phase!==`auth.passkey.prompt.started`&&t.phase!==`auth.passkey.prompt.succeeded`)return;let r=et(t,n);r&&bn(e.onEvent,e.nearAccountId,{...r,authMethod:n})}function Sn(e){return{kind:`warm_session`,signingAuthPlan:e,thresholdSessionId:e.thresholdSessionId,expiresAtMs:e.expiresAtMs,remainingUses:e.remainingUses}}function Cn(e){if(e.prepared.kind===`warm_session`)return Sn(e.prepared.confirmationAuthPayload.signingAuthPlan);if(e.prepared.kind===`email_otp`)return{kind:`email_otp`,signingAuthPlan:e.prepared.confirmationAuthPayload.signingAuthPlan,challengeId:Tn(e.confirmation.emailOtpChallengeId,e.prepared.emailOtpPrompt.challengeId),otpCode:wn(e.confirmation.otpCode),...e.prepared.emailOtpPrompt.emailHint?{emailHint:e.prepared.emailOtpPrompt.emailHint}:{}};if(!e.confirmation.credential)throw Error(`[SigningEngine] missing WebAuthn credential for NEAR step-up authorization`);return{kind:`passkey`,signingAuthPlan:e.prepared.confirmationAuthPayload.signingAuthPlan,credential:_e(e.confirmation.credential),plannedPasskeyOperationStepUp:e.prepared.plannedPasskeyOperationStepUp}}function wn(e){let t=String(e||``).trim();if(!/^\d{6}$/.test(t))throw Error(`[SigningEngine] missing Email OTP code for NEAR step-up authorization`);return t}function Tn(e,t){let n=String(e||t||``).trim();if(!n)throw Error(`[SigningEngine] missing Email OTP challenge id for NEAR step-up authorization`);return n}function En(e){if(!e||!Array.isArray(e.actions)||e.actions.length===0)throw Error(`[SigningEngine][near] one NEAR transaction with actions is required`);return 1}function Dn(e){throw Error(`[SigningEngine][near] exactly one NEAR transaction is supported per signing operation; received ${e.length}`)}const On=2e4;async function kn(e){return In(await He({ctx:e.workerCtx,kind:`nearSigner`,request:{type:At.ThresholdEd25519ComputeNep413SigningDigest,timeoutMs:On,payload:{message:e.message,recipient:e.recipient,nonce:e.nonce,...e.state?{state:e.state}:{}}}}))}async function An(e){return In(await He({ctx:e.workerCtx,kind:`nearSigner`,request:{type:At.ThresholdEd25519ComputeDelegateSigningDigest,timeoutMs:On,payload:{delegate:e.delegate}}}))}async function jn(e){return Ln(await He({ctx:e.workerCtx,kind:`nearSigner`,request:{type:At.ThresholdEd25519BuildDelegateSigningPayload,timeoutMs:On,payload:{delegate:e.delegate}}}))}async function Mn(e){return Rn(await He({ctx:e.workerCtx,kind:`nearSigner`,request:{type:At.ThresholdEd25519FinalizeDelegateFromSignature,timeoutMs:On,payload:{delegate:e.delegate,signingDigestB64u:e.signingDigestB64u,signatureB64u:e.signatureB64u}}}))}async function Nn(e){let t=zn(await He({ctx:e.workerCtx,kind:`nearSigner`,request:{type:At.ThresholdEd25519BuildNearTxUnsignedBorsh,timeoutMs:On,payload:{txSigningRequests:[e.txSigningRequest],transactionContext:e.transactionContext}}})),n=t[0];if(!n||t.length!==1)throw Error(`near signer worker returned invalid single-transaction unsigned payload`);return n}async function Pn(e){return Bn(await He({ctx:e.workerCtx,kind:`nearSigner`,request:{type:At.ThresholdEd25519FinalizeNearTxFromSignature,timeoutMs:On,payload:{unsignedTransactionBorshB64u:e.unsignedTransactionBorshB64u,signingDigestB64u:e.signingDigestB64u,signatureB64u:e.signatureB64u,expectedNearAccountId:e.expectedNearAccountId,expectedSignerPublicKey:e.expectedSignerPublicKey}}}))}async function Fn(e){return Vn(await He({ctx:e.workerCtx,kind:`nearSigner`,request:{type:At.ThresholdEd25519DecodeSignedNearTxBorsh,timeoutMs:On,payload:{signedTransactionBorshB64u:e.signedTransactionBorshB64u}}}))}function In(e){let t=e;if(!t?.signingDigestB64u)throw Error(`near signer worker returned invalid Ed25519 signing digest result`);return t}function Ln(e){let t=e;if(!t?.canonicalDelegateBorshB64u||!t.signingDigestB64u)throw Error(`near signer worker returned invalid Ed25519 delegate signing payload`);return t}function Rn(e){let t=e;if(!t?.delegateAction||!t.signature||!t.borshBytes)throw Error(`near signer worker returned invalid Ed25519 signed delegate result`);return t}function zn(e){if(!Array.isArray(e))throw Error(`near signer worker returned invalid Ed25519 unsigned tx result`);return e.map(e=>{let t=e;if(!t?.unsignedTransactionBorshB64u||!t.signingDigestB64u)throw Error(`near signer worker returned invalid Ed25519 unsigned tx item`);return t})}function Bn(e){let t=e;if(!t?.signedTransactionBorshB64u||!t.transactionHash)throw Error(`near signer worker returned invalid Ed25519 finalized tx result`);return t}function Vn(e){let t=e;if(!t?.signedTransaction?.transaction||!t.signedTransaction.signature||!t.signedTransaction.borshBytes||!t.transactionHash)throw Error(`near signer worker returned invalid Ed25519 signed tx decode result`);return t}function Hn(e,t){return e.request_id===t.request_id&&e.account_id===t.account_id&&e.authorization.kind===t.authorization.kind&&(e.authorization.kind===`reusable_wallet_session`?t.authorization.kind===`reusable_wallet_session`&&e.authorization.wallet_session_id===t.authorization.wallet_session_id:t.authorization.kind===`operation_step_up`)&&e.material_activation.kind===t.material_activation.kind&&e.material_activation.activation_id===t.material_activation.activation_id&&e.material_activation.capability===t.material_activation.capability&&e.material_activation.material_owner===t.material_activation.material_owner&&e.material_activation.key_binding===t.material_activation.key_binding&&e.material_activation.lifecycle_binding===t.material_activation.lifecycle_binding&&e.material_activation.signing_worker===t.material_activation.signing_worker&&e.signing_worker_id===t.signing_worker_id}function Un(e,t){return e.length===t.length&&e.every((e,n)=>e===t[n])}function Wn(e){if(!Hn(e.request.scope,e.response.scope))throw Error(`Router A/B normal-signing prepare response scope mismatch`);if(e.request.expires_at_ms!==e.response.expires_at_ms)throw Error(`Router A/B normal-signing prepare response expiry mismatch`);if(e.response.signing_worker.server_id!==e.request.scope.signing_worker_id)throw Error(`Router A/B normal-signing prepare response SigningWorker mismatch`);if(!Un(e.signingPayloadDigest.bytes,e.response.signing_payload_digest.bytes))throw Error(`Router A/B normal-signing prepare response payload digest mismatch`)}function Gn(e){if(!Hn(e.request.scope,e.response.scope))throw Error(`Router A/B normal-signing response scope mismatch`);if(e.response.signing_worker.server_id!==e.request.scope.signing_worker_id)throw Error(`Router A/B normal-signing response SigningWorker mismatch`);if(!Un(e.signingPayloadDigest.bytes,e.response.signing_payload_digest.bytes))throw Error(`Router A/B normal-signing response payload digest mismatch`);if(e.response.signature.bytes.length!==64)throw Error(`Router A/B normal-signing response signature must be 64 bytes`)}function q(e,t){let n=String(e||``).trim();if(!n)throw Error(`Router A/B Ed25519 normal-signing ready state is missing ${t}`);return n}function J(e,t,n){if(e!==t)throw Error(`Router A/B Ed25519 normal-signing ready state ${n} mismatch`)}function Kn(e,t){let n=Math.floor(Number(e));if(!Number.isFinite(n)||n<=Date.now())throw Error(`Router A/B Ed25519 normal-signing ready state ${t} is expired`);return n}function qn(e,t){let n=Math.floor(Number(e));if(!Number.isSafeInteger(n)||n<=0)throw Error(`Router A/B Ed25519 normal-signing ready state ${t} is exhausted`);return n}function Jn(e){let t=e.state,n=t.signingWalletSession,r=q(e.thresholdSessionId,`thresholdSessionId`),i=q(t.thresholdSessionId,`state.thresholdSessionId`),a=q(t.signingLane.thresholdSessionId,`state.signingLane.thresholdSessionId`);J(i,r,`thresholdSessionId`),J(a,r,`lane thresholdSessionId`);let o=q(t.walletSessionId,`state.walletSessionId`),s=q(t.quotaId,`state.quotaId`);J(t.signingLane.walletSessionId,o,`lane walletSessionId`),J(t.signingLane.quotaId,s,`lane quotaId`);let c=q(e.nearAccountId,`nearAccountId`);q(t.signingLane.identity.signer.account.wallet.walletId,`state.signingLane.identity.signer.account.wallet.walletId`),J(q(e.thresholdKeyMaterial.nearAccountId,`thresholdKeyMaterial.nearAccountId`),c,`threshold key accountId`);let l=n.routerAbNormalSigning,u=q(n.auth.walletSessionToken,`Wallet Session bearer token`),d=q(t.signingRootId,`state.signingRootId`),f=q(t.signingRootVersion,`state.signingRootVersion`);J(n.thresholdSessionId,r,`Wallet Session thresholdSessionId`),J(n.walletSessionId,o,`Wallet Session walletSessionId`),J(n.quotaId,s,`Wallet Session quotaId`),J(n.signingRootId,d,`signingRootId`),J(n.signingRootVersion,f,`signingRootVersion`),J(t.routerAbNormalSigning.signingWorkerId,l.signingWorkerId,`signingWorkerId`),Kn(n.expiresAtMs,`expiresAtMs`);let p=qn(n.remainingUses,`remainingUses`);if(t.remainingUses!==p)throw Error(`Router A/B Ed25519 normal-signing ready state remainingUses mismatch`);return{kind:`router_ab_ed25519_normal_signing_ready_state_v1`,relayerUrl:q(t.relayerUrl,`relayerUrl`),signingWorkerId:q(l.signingWorkerId,`signingWorkerId`),signerPublicKey:q(e.thresholdKeyMaterial.publicKey,`signerPublicKey`),credential:{kind:`wallet_session_opaque`,walletSessionToken:u}}}function Yn(e){if(!e||typeof e!=`object`||Array.isArray(e))throw Error(`operation step-up preparation ref must be an object`);let t=e;if(Object.keys(t).length!==3||t.kind!==`near_operation_step_up_prepared_v1`)throw Error(`operation step-up preparation ref is invalid`);let n=String(t.handle||``).trim();if(!n.startsWith(`near-operation-step-up:`)||/\s/.test(n))throw Error(`operation step-up preparation handle is invalid`);return{kind:`near_operation_step_up_prepared_v1`,handle:n,challengeB64u:O(t.challengeB64u)}}const Xn=new Map,Zn=new Map;function Qn(e,t){let n=String(e||``).trim();if(!n)throw Error(`[SigningEngine][near] ${t} is required`);return n}function $n(e){Xn.set(Qn(e.requestId,`requestId`),e.build)}function er(e){Xn.delete(String(e||``).trim())}const tr={async prepare(e){let t=Qn(e.requestId,`requestId`),n=Xn.get(t);if(!n)throw Error(`[SigningEngine][near] operation step-up preparation is unavailable`);Xn.delete(t);let r=e.kind===`near_transaction`?await n({kind:`near_transaction`,transactionContext:e.transactionContext,operationId:Qn(e.operationId,`operationId`),operationFingerprint:Qn(e.operationFingerprint,`operationFingerprint`),displayDigest:Qn(e.displayDigest,`displayDigest`)}):await n({kind:`near_signature_only`,displayDigest:Qn(e.displayDigest,`displayDigest`)}),i=await Ae(r.envelope),a=Yn({kind:`near_operation_step_up_prepared_v1`,handle:`near-operation-step-up:${h(24,`operation step-up handle`)}`,challengeB64u:i});return Zn.set(a.handle,{requestId:t,operation:r.operation}),a},cancel(e){let t=String(e.requestId||``).trim();t&&Xn.delete(t),e.handle&&Zn.delete(e.handle);for(let[e,n]of Zn)n.requestId===t&&Zn.delete(e)}};function nr(e){let t=Qn(e.requestId,`requestId`),n=Qn(Yn(e.ref).handle,`operation step-up handle`),r=Zn.get(n);if(Zn.delete(n),!r||r.requestId!==t)throw Error(`[SigningEngine][near] prepared operation step-up is unavailable`);return r.operation}function rr(e){if(!i(e.expected,e.actual))throw Error(`[SigningEngine][near] operation assertion changed material activation`)}const ir=Symbol(`ClientSecretSource`),ar=Symbol(`EmailOtpWorkerSessionHandle`);function Y(e,t){let n=String(e||``).trim();if(!n)throw Error(`[platform] ${t} is required`);return n}function or(e,t){if(!e||typeof e!=`object`||Array.isArray(e))throw Error(`[platform] ${t} must be an object`);return e}function sr(e){return cr({prfFirstB64u:e.prf.prfFirstB64u,rpId:e.rpId,credentialIdB64u:e.credentialIdB64u})}function cr(e){return{kind:`webauthn_prf_first`,prfFirstB64u:Y(e.prfFirstB64u,`prfFirstB64u`),rpId:e.rpId,credentialIdB64u:Y(e.credentialIdB64u,`credentialIdB64u`),[ir]:`webauthn_prf_first`}}function lr(e){let t=Y(e.sessionId,`sessionId`);switch(e.action){case`threshold_ecdsa_bootstrap`:return{kind:`email_otp_worker_session_handle_v1`,sessionId:t,walletId:e.walletId,keyHandle:Y(e.keyHandle,`keyHandle`),authSubjectId:e.authSubjectId,action:`threshold_ecdsa_bootstrap`,operation:e.operation,chainTarget:e.chainTarget,[ar]:`email_otp_worker_session_handle`};case`threshold_ed25519_session`:return{kind:`email_otp_worker_session_handle_v1`,sessionId:t,walletId:e.walletId,rpId:e.rpId,authSubjectId:e.authSubjectId,action:`threshold_ed25519_session`,operation:e.operation,[ar]:`email_otp_worker_session_handle`};default:{let t=e;throw Error(`[platform] unsupported email OTP worker-issued handle action: ${String(t)}`)}}}function ur(e){let t=or(e,`email OTP worker-issued session handle`),n=Y(String(t.kind||``),`email OTP worker-issued handle kind`);if(n!==`email_otp_worker_session_handle_v1`)throw Error(`[platform] unsupported email OTP worker-issued handle kind: ${n}`);let r=Y(String(t.action||``),`email OTP worker-issued handle action`),i=Y(String(t.operation||``),`email OTP worker-issued handle operation`);if(i!==`registration`&&i!==`wallet_unlock`&&i!==`sign`&&i!==`export`)throw Error(`[platform] unsupported email OTP worker-issued handle operation: ${i}`);let a=i,o={sessionId:Y(String(t.sessionId||``),`email OTP worker-issued handle sessionId`),walletId:k(t.walletId),authSubjectId:me(t.authSubjectId),operation:a};if(r===`threshold_ecdsa_bootstrap`){if(`rpId`in t)throw Error(`[platform] email OTP ECDSA worker-issued handles cannot include rpId`);if(a===`registration`)throw Error(`[platform] registration Email OTP ECDSA worker-issued handles are retired`);let e=ie(or(t.chainTarget,`email OTP worker-issued handle chainTarget`));if(`evmFamilySigningKeySlotId`in t)throw Error(`[platform] runtime Email OTP ECDSA handles cannot include evmFamilySigningKeySlotId`);return lr({...o,action:r,operation:a,keyHandle:Y(String(t.keyHandle||``),`email OTP worker-issued handle keyHandle`),chainTarget:e})}if(r===`threshold_ed25519_session`){if(`chainTarget`in t)throw Error(`[platform] email OTP Ed25519 worker-issued handles cannot include chainTarget`);if(`evmFamilySigningKeySlotId`in t||`keyHandle`in t)throw Error(`[platform] email OTP Ed25519 worker-issued handles cannot include ECDSA key identity`);return lr({...o,action:r,rpId:F(t.rpId)})}throw Error(`[platform] unsupported email OTP worker-issued handle action: ${r}`)}function dr(e){return e.action===`threshold_ecdsa_bootstrap`&&e.operation===`export`}function fr(e){let t=ur(e);if(!dr(t))throw Error(`[platform] Email OTP ECDSA export requires an export worker handle`);return t}const pr=15e3;function mr(e){e.abort(`timeout`)}function hr(e,t){let n=String(e??``).trim();if(!n)throw Error(`[threshold-ed25519] ${t} is required`);return n}function gr(e){let t=hr(H(e.credential),`prfFirstB64u`);return{ok:!0,operation:`get_passkey`,requirePrfFirst:!0,credential:e.credential,credentialIdB64u:hr(e.credential.rawId||e.credential.id,`credentialIdB64u`),rawIdB64u:String(e.credential.rawId||``).trim(),rpId:F(e.rpId),prf:{kind:`required`,prfFirstB64u:t}}}function _r(e){return{kind:`webauthn_prf_first_credential`,credential:e.credential,secretSource:sr(gr(e))}}function vr(e){return e.policySecretSource.secretSource.prfFirstB64u}function yr(e){if(typeof e!=`string`)return null;let t=Date.parse(e);return Number.isSafeInteger(t)&&t>Date.now()?t:null}function br(e){return typeof e==`number`&&Number.isSafeInteger(e)&&e>0?e:null}async function xr(e){let i=r(t(e.relayerUrl));if(!i)return{ok:!1,code:`invalid_args`,message:`Missing relayerUrl for Wallet Session mint`};if(typeof fetch!=`function`)return{ok:!1,code:`unsupported`,message:`fetch is not available for Wallet Session mint`};let a=ve(e.auth.policySecretSource.credential),s=new AbortController,c=null;try{let t=`${i}${ce}`,r=e.existingOperationCredential,l=String(e.publishableKey||``).trim()||void 0,u=r?.token||l,f=!r&&l&&String(e.projectEnvironmentId||``).trim()||void 0;c=setTimeout(mr,pr,s);let p=await fetch(t,{method:`POST`,headers:{"Content-Type":`application/json`,...u?{Authorization:`Bearer ${u}`}:{}},credentials:`omit`,signal:s.signal,body:JSON.stringify({sessionKind:e.sessionKind,relayerKeyId:e.relayerKeyId,sessionPolicy:e.sessionPolicy,...f?{projectEnvironmentId:f}:{},walletSessionTarget:{kind:`new_wallet_session`},...a?{webauthn_authentication:a}:{}})}),m;try{let e=await p.json();m=o(e)?e:{}}catch(e){if(s.signal.aborted)throw e;m={}}if(!p.ok)return Se(m)||{ok:!1,code:typeof m.code==`string`?m.code:`http_error`,message:typeof m.message==`string`?m.message:`HTTP ${p.status}`};let h=Se(m);if(h)return h;if(m.ok!==!0)return{ok:!1,code:typeof m.code==`string`?m.code:`invalid_response`,message:typeof m.message==`string`?m.message:`Wallet Session mint returned an unsuccessful response`};let g=n(m.thresholdSessionId);if(!g.ok)return{ok:!1,code:`invalid_response`,message:`Wallet Session mint returned an invalid thresholdSessionId`};let v=te(m.walletSessionId),y=C(m.authorizationId),x=ee(m.quotaId);if(!v.ok||!y.ok||!x.ok)return{ok:!1,code:`invalid_response`,message:`Wallet Session mint returned invalid authorization identity`};let S=yr(m.expiresAt),w=br(m.remainingUses),T=_(m.runtimePolicyScope);if(!S||!w||!T)return{ok:!1,code:`invalid_response`,message:`Wallet Session mint returned invalid lifecycle or policy data`};let ne={ok:!0,thresholdSessionId:g.value,walletSessionId:v.value,authorizationId:y.value,quotaId:x.value,expiresAtMs:S,remainingUses:w,runtimePolicyScope:T};if(m.sessionKind===`issued_exact_wallet_session`){let e;try{e=b(m.operationCredential)}catch(e){return{ok:!1,code:`invalid_response`,message:d(e)||`Wallet Session mint returned an invalid operation credential`}}return e.walletSessionId===v.value?{...ne,sessionKind:m.sessionKind,operationCredential:e}:{ok:!1,code:`invalid_response`,message:`Wallet Session mint credential does not identify its session`}}return m.sessionKind!==`already_committed_exact_wallet_session`||m.operationCredential!==void 0?{ok:!1,code:`invalid_response`,message:`Wallet Session mint returned an invalid session branch`}:r?r.walletSessionId===v.value?{...ne,sessionKind:m.sessionKind}:{ok:!1,code:`invalid_response`,message:`Reused Wallet Session mint returned another lifecycle identity`}:{ok:!1,code:`invalid_response`,message:`Reused Wallet Session mint requires the credential the caller already holds`}}catch(e){let t=d(e)||`Failed to mint threshold session`,n=s.signal.aborted;return{ok:!1,code:n?`timeout`:`network_error`,message:n?`Wallet Session mint timed out after ${pr}ms`:t}}finally{c!==null&&clearTimeout(c)}}function Sr(e){switch(e.kind){case`passkey`:return{kind:`passkey`,authority:e.authority,webauthn_authentication:ve(e.credential)};case`email_otp`:return{kind:`email_otp`,authority_ref:e.authorityRef,provider_subject_id:hr(e.providerSubjectId,`providerSubjectId`),challenge_id:hr(e.challengeId,`challengeId`),otp_code:hr(e.otpCode,`otpCode`)};default:throw Error(`[threshold-ed25519] unsupported operation step-up proof`)}}function Cr(e,t){if(!e||typeof e!=`object`||Array.isArray(e))throw Error(`[threshold-ed25519] ${t} must be an object`);return e}function wr(e,t,n){let r=Object.keys(e).sort(),i=[...t].sort();if(r.length!==i.length)throw Error(`[threshold-ed25519] ${n} contains unexpected fields`);for(let e=0;e<r.length;e+=1)if(r[e]!==i[e])throw Error(`[threshold-ed25519] ${n} contains unexpected fields`)}function Tr(e,t){if(typeof e!=`string`||e.length===0||e.trim()!==e)throw Error(`[threshold-ed25519] ${t} must be a non-empty normalized string`);return e}function Er(e){switch(e.proof.kind){case`passkey`:if(e.materialRecovery.kind!==`not_requested`)throw Error(`[threshold-ed25519] passkey operation step-up cannot request material recovery`);return{kind:`not_requested`};case`email_otp`:switch(e.materialRecovery.kind){case`not_requested`:return{kind:`not_requested`};case`email_otp_factor_release_v1`:return{kind:`email_otp_factor_release_v1`,workerEphemeralPublicKey65B64u:Tr(e.materialRecovery.workerEphemeralPublicKey65B64u,`workerEphemeralPublicKey65B64u`)};default:throw e.materialRecovery,Error(`[threshold-ed25519] unsupported material recovery request`)}default:throw e.proof,Error(`[threshold-ed25519] unsupported operation step-up proof`)}}function Dr(e){let t=Cr(e.value,`operation step-up material recovery`);switch(t.kind){case`not_requested`:if(wr(t,[`kind`],`operation step-up material recovery`),e.requested.kind!==`not_requested`)throw Error(`[threshold-ed25519] operation step-up material recovery response does not match the request`);return{kind:`not_requested`};case`email_otp_factor_release_v1`:if(wr(t,[`kind`,`challengeId`,`enrollmentId`,`enrollmentSealKeyVersion`,`serverEphemeralPublicKey65B64u`,`nonce12B64u`,`ciphertextB64u`],`operation step-up material recovery`),e.requested.kind!==`email_otp_factor_release_v1`)throw Error(`[threshold-ed25519] operation step-up material recovery response does not match the request`);return{kind:`email_otp_factor_release_v1`,challengeId:Tr(t.challengeId,`materialRecovery.challengeId`),enrollmentId:Tr(t.enrollmentId,`materialRecovery.enrollmentId`),enrollmentSealKeyVersion:Tr(t.enrollmentSealKeyVersion,`materialRecovery.enrollmentSealKeyVersion`),serverEphemeralPublicKey65B64u:Tr(t.serverEphemeralPublicKey65B64u,`materialRecovery.serverEphemeralPublicKey65B64u`),nonce12B64u:Tr(t.nonce12B64u,`materialRecovery.nonce12B64u`),ciphertextB64u:Tr(t.ciphertextB64u,`materialRecovery.ciphertextB64u`)};default:throw Error(`[threshold-ed25519] operation step-up material recovery kind is invalid`)}}function Or(e){let t=Cr(e.body,`operation step-up response`);if(wr(t,[`ok`,`kind`,`authorization`,`expiresAtMs`,`materialRecovery`],`operation step-up response`),t.ok!==!0||t.kind!==`verified_step_up`)throw Error(`[threshold-ed25519] operation step-up response kind is invalid`);let n=Cr(t.authorization,`operation step-up authorization`);if(wr(n,[`kind`,`evidence_set_digest`],`operation step-up authorization`),n.kind!==`operation_step_up`)throw Error(`[threshold-ed25519] operation step-up authorization marker is invalid`);let r=Tr(n.evidence_set_digest,`operation step-up authorization.evidence_set_digest`);if(O(r),typeof t.expiresAtMs!=`number`||!Number.isSafeInteger(t.expiresAtMs)||t.expiresAtMs<=Date.now())throw Error(`[threshold-ed25519] operation step-up expiry is invalid`);return{kind:`verified_step_up`,authorization:{kind:`operation_step_up`,evidence_set_digest:r},expiresAtMs:t.expiresAtMs,materialRecovery:Dr({value:t.materialRecovery,requested:e.requestedMaterialRecovery})}}async function kr(e){let n=r(t(e.relayerUrl));if(!n)throw Error(`[threshold-ed25519] operation step-up relayerUrl is required`);let i=Er(e),a=e.credential.kind===`wallet_session_opaque`?{token:e.credential.walletSessionToken,missingMessage:`walletSessionToken is required`}:null,o=we({...a?{headers:Te(a)}:{},body:{kind:`router_ab_ed25519_yao_operation_step_up_grant_v1`,normalSigningRequest:e.normalSigningRequest,displayDigest:e.displayDigest,proof:Sr(e.proof),materialRecovery:i.kind===`email_otp_factor_release_v1`?{kind:i.kind,worker_ephemeral_public_key_65_b64u:i.workerEphemeralPublicKey65B64u}:i}}),s=await fetch(`${n}${ce}`,{...o}),c=await s.json().catch(()=>({}));if(!s.ok){let e=c&&typeof c==`object`&&!Array.isArray(c)?c:{};throw Error(`[threshold-ed25519] operation step-up failed: ${String(e.message||`HTTP ${s.status}`)}`)}return Or({body:c,requestedMaterialRecovery:i})}const Ar=12e4;async function jr(e){return await e.ctx.resolveOperationStepUpCredential({walletId:e.walletId,relayerUrl:e.relayerUrl,proof:e.proof})}function Mr(e){if(e.prepared.prepare.request.scope.authorization.kind!==`operation_step_up`)throw Error(`[SigningEngine][near] operation step-up authorization scope is missing`);if(e.issuedAuthorization.kind!==`verified_step_up`)throw Error(`[SigningEngine][near] operation step-up authorization is invalid`)}function Nr(e){let t=e.thresholdKeyMaterial.participants.find(t=>t.role===e.role)?.id;if(!t)throw Error(`threshold-ed25519 signing requires ${e.role} participant id`);return t}function Pr(e){return[...m(e)].map(e=>e.toString(16).padStart(2,`0`)).join(``)}function Fr(e){return re(e.chains||G.network.chains)}function Ir(e){let t=globalThis.crypto;if(t&&typeof t.randomUUID==`function`)return`router-ab-normal-signing/${e}/${t.randomUUID()}`;if(t&&typeof t.getRandomValues==`function`){let n=new Uint8Array(16);return t.getRandomValues(n),`router-ab-normal-signing/${e}/${f(n)}`}throw Error(`secure randomness is unavailable for Router A/B normal-signing request id`)}function Lr(e){if(!e.ok)throw Error(e.error.message);return e.value}function Rr(e){let t=Math.floor(Number(e.walletSessionExpiresAtMs)),n=Math.floor(Number(e.requestedTtlMs));if(!Number.isFinite(t)||t<=Date.now())throw Error(`[SigningEngine][near] Router A/B Ed25519 Wallet Session is expired`);if(!Number.isFinite(n)||n<=0)throw Error(`[SigningEngine][near] Router A/B Ed25519 request TTL is invalid`);return Math.min(t,Date.now()+n)}function zr(e){let t=e.walletSessionState.routerAbNormalSigning;if(!t)return null;let n=String(e.walletId||``).trim();if(!n)throw Error(`[SigningEngine][near] Router A/B Ed25519 signing scope is missing wallet id`);let r=Ce(e.activeClient.metadata());return{request_id:Ir(e.operationId),account_id:n,authorization:{kind:`reusable_wallet_session`,wallet_session_id:e.walletSessionState.walletSessionId},material_activation:{kind:`mpc_material_activation_ref`,activation_id:r.activationId,capability:r.capability,material_owner:r.materialOwner,key_binding:r.keyBinding,lifecycle_binding:r.lifecycleBinding,signing_worker:r.signingWorker},signing_worker_id:t.signingWorkerId}}function Br(e){let t=e.materialFacts.routerAbNormalSigning;if(!t)throw Error(`[SigningEngine][near] Router A/B Ed25519 signing scope is missing`);return{request_id:Ir(e.operationId),account_id:String(e.walletId),authorization:{kind:`operation_step_up`},material_activation:{kind:`mpc_material_activation_ref`,activation_id:e.materialActivation.activationId,capability:e.materialActivation.capability,material_owner:e.materialActivation.materialOwner,key_binding:e.materialActivation.keyBinding,lifecycle_binding:e.materialActivation.lifecycleBinding,signing_worker:e.materialActivation.signingWorker},signing_worker_id:t.signingWorkerId}}function Vr(e){return e.map(e=>{switch(e.action_type){case`CreateAccount`:return{action_type:W.CreateAccount};case`DeployContract`:return{action_type:W.DeployContract,code:[...e.code]};case`FunctionCall`:return{action_type:W.FunctionCall,method_name:e.method_name,args:e.args,gas:e.gas,deposit:e.deposit};case`Transfer`:return{action_type:W.Transfer,deposit:e.deposit};case`Stake`:return{action_type:W.Stake,stake:e.stake,public_key:e.public_key};case`AddKey`:return{action_type:W.AddKey,public_key:e.public_key,access_key:e.access_key};case`DeleteKey`:return{action_type:W.DeleteKey,public_key:e.public_key};case`DeleteAccount`:return{action_type:W.DeleteAccount,beneficiary_id:e.beneficiary_id};case`SignedDelegate`:{let t=Vr(e.delegate_action.actions).map(Re);return{action_type:W.SignedDelegate,delegate_action:{senderId:e.delegate_action.senderId,receiverId:e.delegate_action.receiverId,actions:t,nonce:e.delegate_action.nonce,maxBlockHeight:e.delegate_action.maxBlockHeight,publicKey:{keyType:e.delegate_action.publicKey.keyType,keyData:[...e.delegate_action.publicKey.keyData]}},signature:{keyType:e.signature.keyType,signatureData:[...e.signature.signatureData]}}}case`DeployGlobalContract`:return{action_type:W.DeployGlobalContract,code:[...e.code],deploy_mode:e.deploy_mode};case`UseGlobalContract`:return`account_id`in e?{action_type:W.UseGlobalContract,account_id:e.account_id}:{action_type:W.UseGlobalContract,code_hash:e.code_hash}}})}async function Hr(e){return{signedDelegate:await Mn({delegate:e.delegate,signingDigestB64u:e.signingDigestB64u,signatureB64u:e.signatureB64u,workerCtx:e.ctx}),hash:Pr(e.signingDigestB64u)}}function X(e,t,n){if(String(e)!==String(t))throw Error(`Router A/B Ed25519 active Client ${n} mismatch`)}function Ur(e,t){if(e.length!==t.length)return!1;let n=0;for(let r=0;r<e.length;r+=1)n|=e[r]^t[r];return n===0}function Wr(e,t){if(e.length!==32||e.some(e=>!Number.isInteger(e)||e<0||e>255))throw Error(`Router A/B normal-signing ${t} must contain 32 bytes`);return Uint8Array.from(e)}function Gr(e){let t=M(e);if(!t.startsWith(`ed25519:`))throw Error(`Router A/B Ed25519 signer public key must use ed25519`);let n=P(t.slice(8));if(n.length!==32)throw Error(`Router A/B Ed25519 signer public key must decode to 32 bytes`);return n}function Kr(e){let t=e.activeClient.metadata(),n=Ce(t),r=e.materialFacts.signer,i=Nr({thresholdKeyMaterial:e.thresholdKeyMaterial,role:`client`}),a=Nr({thresholdKeyMaterial:e.thresholdKeyMaterial,role:`relayer`});if(e.thresholdKeyMaterial.participants.length!==2)throw Error(`Router A/B Ed25519 active Client requires exactly two participants`);X(t.scope.account_id,e.prepare.request.scope.account_id,`scope account`),X(t.scope.threshold_session_id,e.materialFacts.thresholdSessionId,`threshold session`),X(t.scope.account_id,e.walletId,`scope wallet`),X(n.activationId,e.prepare.request.scope.material_activation.activation_id,`material activation`),X(n.capability,e.prepare.request.scope.material_activation.capability,`material capability`),X(n.materialOwner,e.prepare.request.scope.material_activation.material_owner,`material owner`),X(n.keyBinding,e.prepare.request.scope.material_activation.key_binding,`material key binding`),X(n.lifecycleBinding,e.prepare.request.scope.material_activation.lifecycle_binding,`material lifecycle`),X(n.signingWorker,e.prepare.request.scope.material_activation.signing_worker,`material SigningWorker`);let o=e.prepare.request.scope.authorization;if(o.kind!==e.authorization.kind)throw Error(`Router A/B Ed25519 authorization kind mismatch`);switch(e.authorization.kind){case`reusable_wallet_session`:if(o.kind!==`reusable_wallet_session`)throw Error(`Router A/B Ed25519 reusable authorization is missing`);X(o.wallet_session_id,e.authorization.walletSessionId,`authorization session`);break;case`operation_step_up`:if(o.kind!==`operation_step_up`)throw Error(`Router A/B Ed25519 operation step-up authorization is missing`);break;default:e.authorization}X(t.scope.signing_worker_id,e.prepare.request.scope.signing_worker_id,`scope SigningWorker`),X(t.scope.signing_worker_id,e.signingWorkerId,`prepare SigningWorker`),X(t.applicationBinding.wallet_id,e.walletId,`application wallet`),X(t.applicationBinding.wallet_id,r.account.wallet.walletId,`lane wallet`),X(t.applicationBinding.near_ed25519_signing_key_id,r.nearEd25519SigningKeyId,`signing key`),X(t.applicationBinding.signing_root_id,e.materialFacts.signingRootId,`signing root`),X(t.applicationBinding.key_creation_signer_slot,r.signerSlot,`signer slot`),X(t.applicationBinding.key_creation_signer_slot,e.thresholdKeyMaterial.signerSlot,`key-material signer slot`),X(t.participantIds[0],i,`Client participant`),X(t.participantIds[1],a,`SigningWorker participant`);let s=Gr(e.thresholdKeyMaterial.publicKey);if(!Ur(t.registeredPublicKey,s))throw Error(`Router A/B Ed25519 active Client registered public key mismatch`);if(!Ur(t.signingWorkerVerifyingShare,e.signingWorkerVerifyingShare))throw Error(`Router A/B Ed25519 active Client SigningWorker verifying share mismatch`)}async function qr(e){let t=e.prepare.request.intent.operation_id,n=performance.now(),r=`failed`;try{let n=await Jr(e,t);return r=`succeeded`,n}finally{U(t,`signature_total`,n,r)}}async function Jr(e,t){let n=m(e.signingDigestB64u);if(n.length!==32)throw Error(`Router A/B normal-signing ${e.signingPayloadLabel} must be 32 bytes`);let r=Wr(e.prepare.admissionMaterial.admittedSigningDigest.bytes,`admitted digest`);if(!Ur(n,r))throw Error(`Router A/B normal-signing admitted digest mismatch`);e.authorization===`reusable_wallet_session`&&Jn({state:e.walletSessionState,thresholdSessionId:e.thresholdSessionId,nearAccountId:e.nearAccountId,thresholdKeyMaterial:e.thresholdKeyMaterial});let i=e.authorization===`reusable_wallet_session`?{thresholdSessionId:e.walletSessionState.thresholdSessionId,signer:e.walletSessionState.signingLane.identity.signer,signingRootId:e.walletSessionState.signingRootId,signingRootVersion:e.walletSessionState.signingRootVersion,routerAbNormalSigning:e.walletSessionState.routerAbNormalSigning,runtimePolicyScope:e.walletSessionState.runtimePolicyScope,relayerUrl:e.walletSessionState.relayerUrl}:e.materialFacts,a=performance.now(),o=await ft({relayServerUrl:i.relayerUrl,credential:e.credential,request:e.prepare.request});U(t,`prepare`,a),Wn({request:e.prepare.request,signingPayloadDigest:e.prepare.admissionMaterial.signingPayloadDigest,response:o});let s=m(o.server_verifying_share_b64u);if(s.length!==32)throw Error(`Router A/B normal-signing SigningWorker verifying share must be 32 bytes`);Kr({activeClient:e.activeClient,authorization:e.authorization===`reusable_wallet_session`?{kind:`reusable_wallet_session`,walletSessionId:e.walletSessionState.signingWalletSession.walletSessionId}:{kind:`operation_step_up`},materialFacts:i,thresholdKeyMaterial:e.thresholdKeyMaterial,walletId:e.walletId,prepare:e.prepare,signingWorkerId:o.signing_worker.server_id,signingWorkerVerifyingShare:s});let c=performance.now(),l=await e.activeClient.createSigningShare({admittedDigest:r,signingWorkerCommitments:o.server_commitments,signingWorkerVerifyingShare:s});if(U(t,`client_share`,c),l.clientVerifyingShare.length!==32)throw Error(`Router A/B normal-signing Client verifying share must be 32 bytes`);let u=performance.now(),d=await ht({relayServerUrl:i.relayerUrl,credential:e.credential,request:st({scope:e.prepare.request.scope,expiresAtMs:e.prepare.request.expires_at_ms,prepareResponse:o,admissionMaterial:e.prepare.admissionMaterial,clientCommitments:l.clientCommitments,clientVerifyingShareB64u:f(l.clientVerifyingShare),clientSignatureShareB64u:l.clientSignatureShareB64u})});return U(t,`finalize`,u),Gn({request:e.prepare.request,signingPayloadDigest:e.prepare.admissionMaterial.signingPayloadDigest,response:d}),{signatureB64u:gt(d.signature,`Router A/B normal-signing signature`),signerPublicKey:e.thresholdKeyMaterial.publicKey}}async function Yr(e){let t=Fr(e.ctx);return e.intent.kind===`nep413_message_v1`?await dt({scope:e.scope,expiresAtMs:e.expiresAtMs,operationId:e.operationId,operationFingerprint:e.operationFingerprint,displayDigestB64u:e.displayDigest,nearAccountId:e.nearAccountId,nearNetworkId:t,message:e.intent.message,recipient:e.intent.recipient,nonce:e.intent.nonce,...e.intent.state?{callbackUrl:e.intent.state}:{},expectedSigningDigestB64u:e.signingDigestB64u}):await pt({scope:e.scope,expiresAtMs:e.expiresAtMs,operationId:e.operationId,operationFingerprint:e.operationFingerprint,displayDigestB64u:e.displayDigest,nearAccountId:e.nearAccountId,nearNetworkId:t,delegate:{senderId:e.intent.delegate.senderId,receiverId:e.intent.delegate.receiverId,publicKey:e.intent.delegate.publicKey,nonce:e.intent.delegate.nonce,maxBlockHeight:e.intent.delegate.maxBlockHeight,actionFingerprint:await lt(e.intent.delegate.actions),canonicalDelegateBorshB64u:(await jn({delegate:{senderId:e.intent.delegate.senderId,receiverId:e.intent.delegate.receiverId,actions:Vr(e.intent.delegate.actions),nonce:e.intent.delegate.nonce,maxBlockHeight:e.intent.delegate.maxBlockHeight,publicKey:e.intent.delegate.publicKey},workerCtx:e.ctx})).canonicalDelegateBorshB64u},expectedSigningDigestB64u:e.signingDigestB64u})}async function Xr(e){let t=Br({materialActivation:e.materialActivation,materialFacts:e.materialFacts,walletId:e.walletId,operationId:e.operationId}),n=await Yr({ctx:e.ctx,thresholdSessionId:e.thresholdSessionId,scope:t,expiresAtMs:Date.now()+Ar,nearAccountId:e.nearAccountId,operationId:e.operationId,operationFingerprint:e.operationFingerprint,displayDigest:e.displayDigest,signingDigestB64u:e.signingDigestB64u,intent:e.intent}),r=Me({tenantId:Lr(w(e.materialFacts.runtimePolicyScope.orgId)),principalId:Lr(S(String(e.walletId))),capabilityId:Lr(T(e.materialActivation.capability)),operationId:Lr(x(String(e.operationId))),operation:{capabilityKind:`near_ed25519_mpc_signing`,operationKind:e.intent.kind===`nep413_message_v1`?`near.sign_nep413_message`:`near.sign_delegate_action`},digests:{laneDigest:je(e.operationFingerprint),intentDigest:O(f(Uint8Array.from(n.admissionMaterial.intentDigest.bytes))),displayDigest:O(e.displayDigest)}});return{operation:{kind:`near_signature_only`,prepare:n,signingDigestB64u:e.signingDigestB64u,materialActivation:e.materialActivation},envelope:r}}function Zr(e){if(e.auth.kind!==`email_otp`)throw Error(`[SigningEngine][near] Email OTP step-up requires an Email OTP auth binding`);let t=e.preparation.hydration.authority;if(!t||String(t.walletId)!==String(e.walletId))throw Error(`[SigningEngine][near] Email OTP material authority changed`);return{kind:`email_otp`,authorityRef:t,providerSubjectId:e.auth.providerSubjectId,challengeId:e.challengeId,otpCode:e.otpCode}}function Qr(e){switch(e.authorization.kind){case`passkey`:return{kind:`passkey`,authority:e.authorization.plannedPasskeyOperationStepUp.authority,credential:e.authorization.credential};case`email_otp`:return Zr({preparation:e.preparation,auth:$r(e.auth),walletId:e.walletId,challengeId:e.authorization.challengeId,otpCode:e.authorization.otpCode});default:throw e.authorization,Error(`[SigningEngine][near] unsupported operation step-up authorization`)}}function $r(e){if(e.kind!==`email_otp`)throw Error(`[SigningEngine][near] Email OTP step-up requires an Email OTP auth binding`);return e}function ei(e){if(!e)throw Error(`[SigningEngine][near] operation step-up proof is missing`);return e}function ti(e){return e.authorization.kind===`operation_step_up`}async function ni(e){if(e.issuedAuthorization)return e.issuedAuthorization;switch(e.proof.kind){case`passkey`:return await kr({relayerUrl:e.relayerUrl,normalSigningRequest:e.normalSigningRequest,displayDigest:e.displayDigest,proof:e.proof,credential:e.credential,materialRecovery:{kind:`not_requested`}});case`email_otp`:return await kr({relayerUrl:e.relayerUrl,normalSigningRequest:e.normalSigningRequest,displayDigest:e.displayDigest,proof:e.proof,credential:e.credential,materialRecovery:{kind:`not_requested`}});default:throw e.proof,Error(`[SigningEngine][near] unsupported operation step-up proof`)}}async function ri(e){if(ti(e)){let t=Ce(e.activeClient.metadata());if(rr({expected:e.authorization.prepared.materialActivation,actual:t}),e.authorization.prepared.signingDigestB64u!==e.signingDigestB64u)throw Error(`[SigningEngine][near] signature-only operation digest changed`);let n=e.authorization.prepared.prepare,r=await jr({ctx:e.ctx,walletId:e.walletId,relayerUrl:e.materialFacts.relayerUrl,proof:e.authorization.proof}),i=await ni({issuedAuthorization:e.authorization.issuedAuthorization,relayerUrl:e.materialFacts.relayerUrl,normalSigningRequest:n.request,displayDigest:e.displayDigest,proof:e.authorization.proof,credential:r});if(n.request.scope.authorization.kind!==`operation_step_up`||i.kind!==`verified_step_up`)throw Error(`[SigningEngine][near] issued operation step-up evidence changed identity`);return{kind:`router_ab_ed25519_signature_only_normal_signing_result_v1`,authorization:`operation_step_up`,issuedAuthorization:i,...await qr({thresholdSessionId:e.thresholdSessionId,materialFacts:e.materialFacts,thresholdKeyMaterial:e.thresholdKeyMaterial,walletId:e.walletId,nearAccountId:e.nearAccountId,activeClient:e.activeClient,signingDigestB64u:e.signingDigestB64u,signingPayloadLabel:`signature-only payload digest`,prepare:n,credential:r,authorization:`operation_step_up`})}}let t=zr({activeClient:e.activeClient,walletSessionState:e.walletSessionState,walletId:e.walletId,operationId:e.operationId});if(!t)return null;let n=await Yr({ctx:e.ctx,thresholdSessionId:e.thresholdSessionId,scope:t,expiresAtMs:Rr({walletSessionExpiresAtMs:e.walletSessionState.signingWalletSession.expiresAtMs,requestedTtlMs:Ar}),nearAccountId:e.nearAccountId,operationId:e.operationId,operationFingerprint:e.operationFingerprint,displayDigest:e.displayDigest,signingDigestB64u:e.signingDigestB64u,intent:e.intent});return{kind:`router_ab_ed25519_signature_only_normal_signing_result_v1`,authorization:`reusable_wallet_session`,...await qr({thresholdSessionId:e.thresholdSessionId,walletSessionState:e.walletSessionState,thresholdKeyMaterial:e.thresholdKeyMaterial,walletId:e.walletId,nearAccountId:e.nearAccountId,activeClient:e.activeClient,signingDigestB64u:e.signingDigestB64u,signingPayloadLabel:`signature-only payload digest`,prepare:n,credential:Jn({state:e.walletSessionState,thresholdSessionId:e.thresholdSessionId,nearAccountId:e.nearAccountId,thresholdKeyMaterial:e.thresholdKeyMaterial}).credential,authorization:e.authorization.kind})}}async function ii(e){let t=await Nn({txSigningRequest:e.txSigningRequest,transactionContext:e.transactionContext,workerCtx:e.ctx}),n=Fr(e.ctx),r=$t(e.txSigningRequest,`txSigningRequest`),i=await mt({scope:Br({materialActivation:e.materialActivation,materialFacts:e.materialFacts,walletId:e.walletId,operationId:e.operationId}),expiresAtMs:Date.now()+Ar,operationId:e.operationId,operationFingerprint:e.operationFingerprint,displayDigestB64u:e.displayDigest,nearAccountId:e.nearAccountId,nearNetworkId:n,transactions:[{receiverId:r.receiverId,actionFingerprint:await lt(r.actions)}],unsignedTransactionBorshB64u:t.unsignedTransactionBorshB64u,expectedSigningDigestB64u:t.signingDigestB64u}),a=Me({tenantId:Lr(w(e.materialFacts.runtimePolicyScope.orgId)),principalId:Lr(S(String(e.walletId))),capabilityId:Lr(T(e.materialActivation.capability)),operationId:Lr(x(String(e.operationId))),operation:{capabilityKind:`near_ed25519_mpc_signing`,operationKind:`near.sign_transaction`},digests:{laneDigest:je(e.operationFingerprint),intentDigest:O(f(Uint8Array.from(i.admissionMaterial.intentDigest.bytes))),displayDigest:O(e.displayDigest)}});return{operation:{kind:`near_transaction`,prepare:i,unsignedTransactionBorshB64u:t.unsignedTransactionBorshB64u,signingDigestB64u:t.signingDigestB64u,materialActivation:e.materialActivation},envelope:a}}function ai(e){return e.authorization.kind===`operation_step_up`}function oi(e){return ai(e)?e.materialFacts:{thresholdSessionId:e.walletSessionState.thresholdSessionId,signer:e.walletSessionState.signingLane.identity.signer,signingRootId:e.walletSessionState.signingRootId,signingRootVersion:e.walletSessionState.signingRootVersion,routerAbNormalSigning:e.walletSessionState.routerAbNormalSigning,runtimePolicyScope:e.walletSessionState.runtimePolicyScope,relayerUrl:e.walletSessionState.relayerUrl}}async function si(e){let t=oi(e);if(!t.routerAbNormalSigning)throw Error(`[SigningEngine][near] Router A/B Ed25519 normal-signing state is missing`);if(!e.transactionContext)throw Error(`[SigningEngine][near] Router A/B Ed25519 transaction signing is missing transaction context from confirmation`);let n=ai(e),r=n?{unsignedTransactionBorshB64u:e.authorization.prepared.unsignedTransactionBorshB64u,signingDigestB64u:e.authorization.prepared.signingDigestB64u}:await Nn({txSigningRequest:e.txSigningRequest,transactionContext:e.transactionContext,workerCtx:e.ctx});if(m(r.signingDigestB64u).length!==32)throw Error(`Router A/B normal-signing NEAR payload digest must be 32 bytes`);let i=Fr(e.ctx),a=$t(e.txSigningRequest,`txSigningRequest`),o=z.signingOperationFingerprint(await Kt({nearAccountId:e.nearAccountId,nearNetworkId:i,relayerKeyId:e.thresholdKeyMaterial.relayerKeyId,signerPublicKey:e.thresholdKeyMaterial.publicKey,transactions:[a],unsignedTransactionBorshB64u:r.unsignedTransactionBorshB64u,signingDigestB64u:r.signingDigestB64u})),s,c,l;if(n){s=e.authorization.prepared.prepare,c=await jr({ctx:e.ctx,walletId:e.walletId,relayerUrl:t.relayerUrl,proof:e.authorization.proof});let n=await ni({issuedAuthorization:e.authorization.issuedAuthorization,relayerUrl:t.relayerUrl,normalSigningRequest:s.request,displayDigest:e.authorization.displayDigest,proof:e.authorization.proof,credential:c});if(s.request.scope.authorization.kind!==`operation_step_up`||n.kind!==`verified_step_up`)throw Error(`[SigningEngine][near] issued operation step-up evidence changed identity`);l=n}else{let t=zr({activeClient:e.activeClient,walletSessionState:e.walletSessionState,walletId:e.walletId,operationId:e.operationId});if(!t)throw Error(`[SigningEngine][near] Router A/B Ed25519 signing scope is missing`);s=await mt({scope:t,expiresAtMs:Rr({walletSessionExpiresAtMs:e.walletSessionState.signingWalletSession.expiresAtMs,requestedTtlMs:Ar}),operationId:e.operationId,operationFingerprint:o,displayDigestB64u:e.displayDigest,nearAccountId:e.nearAccountId,nearNetworkId:i,transactions:[{receiverId:a.receiverId,actionFingerprint:await lt(a.actions)}],unsignedTransactionBorshB64u:r.unsignedTransactionBorshB64u,expectedSigningDigestB64u:r.signingDigestB64u}),c=Jn({state:e.walletSessionState,thresholdSessionId:e.thresholdSessionId,nearAccountId:e.nearAccountId,thresholdKeyMaterial:e.thresholdKeyMaterial}).credential}e.ctx.beforeSigning?.();let u=ai(e)?await qr({thresholdSessionId:e.thresholdSessionId,materialFacts:t,thresholdKeyMaterial:e.thresholdKeyMaterial,walletId:e.walletId,nearAccountId:e.nearAccountId,activeClient:e.activeClient,signingDigestB64u:r.signingDigestB64u,signingPayloadLabel:`NEAR payload digest`,prepare:s,credential:c,authorization:`operation_step_up`}):await qr({thresholdSessionId:e.thresholdSessionId,walletSessionState:e.walletSessionState,thresholdKeyMaterial:e.thresholdKeyMaterial,walletId:e.walletId,nearAccountId:e.nearAccountId,activeClient:e.activeClient,signingDigestB64u:r.signingDigestB64u,signingPayloadLabel:`NEAR payload digest`,prepare:s,credential:c,authorization:`reusable_wallet_session`}),d=await Pn({unsignedTransactionBorshB64u:r.unsignedTransactionBorshB64u,signingDigestB64u:r.signingDigestB64u,signatureB64u:u.signatureB64u,expectedNearAccountId:e.nearAccountId,expectedSignerPublicKey:e.thresholdKeyMaterial.publicKey,workerCtx:e.ctx}),f=await Fn({signedTransactionBorshB64u:d.signedTransactionBorshB64u,workerCtx:e.ctx}),p=d.transactionHash||f.transactionHash,h={type:kt.SignTransactionsWithActionsSuccess,payload:{free:()=>void 0,success:!0,transactionHashes:[p],signedTransactions:[f.signedTransaction],logs:[`NEAR transaction signed through Router A/B normal signing`],error:void 0}};if(n){if(!l)throw Error(`[SigningEngine][near] operation step-up authorization was not issued`);return{kind:`router_ab_ed25519_near_transaction_normal_signing_result_v1`,authorization:`operation_step_up`,issuedAuthorization:l,okResponse:h}}return{kind:`router_ab_ed25519_near_transaction_normal_signing_result_v1`,authorization:`reusable_wallet_session`,okResponse:h}}const ci=1e3,li=[120,180,250,350,500,700,1e3,1e3,1500,1500,2e3],ui=Symbol(`NearWalletSessionFundingAuthority`);function di(e=ci){return new Promise(t=>{setTimeout(t,e)})}function fi(e){let t=String(e.walletSessionToken||``).trim();if(!t)throw Error(`[SigningEngine][near] authenticated Wallet Session token is required for funding`);return t}function pi(e){return{kind:`near_ed25519_funding_session`,signer:e.signingLane.identity.signer,thresholdSessionId:e.thresholdSessionId,walletSessionToken:e.walletSessionAuth.walletSessionToken}}function mi(e){switch(e.kind){case`warm_session`:return`warm_session`;case`passkey`:return`passkey_reauth`;case`email_otp`:return`email_otp_reauth`;default:return gi(e)}}function hi(e){switch(e){case`passkey`:return`passkey_reauth`;case`email_otp`:return`email_otp_reauth`;default:throw Error(`[SigningEngine][near] unsupported operation step-up funding method`)}}function gi(e){throw Error(`Unsupported NEAR funding authorization: ${String(e)}`)}function _i(e){let t=String(e.fundingSession.signer.account.wallet.walletId),n=String(e.fundingSession.signer.account.nearAccountId),r=e.request.operation;if(String(e.request.subject.walletId)!==t||String(e.request.subject.nearAccountId)!==n||e.request.subject.nearPublicKeyStr!==e.nearPublicKeyStr)throw Error(`[SigningEngine][near] funding request subject does not match authenticated lane`);if(String(r.operationId)!==String(e.signingOperation.operationId)||String(r.operationFingerprint)!==String(e.signingOperation.operationFingerprint)||r.intent!==e.signingOperation.intent||r.accountId!==n)throw Error(`[SigningEngine][near] funding request operation does not match signing operation`);if(e.request.signatureUses!==e.signatureUses)throw Error(`[SigningEngine][near] funding request signature use count mismatch`);if(String(e.fundingSession.thresholdSessionId).trim().length===0)throw Error(`[SigningEngine][near] funding authority threshold session mismatch`)}function vi(e){return{kind:`near_wallet_session_funding_authority`,provenance:e.provenance,request:e.request,thresholdSessionId:e.fundingSession.thresholdSessionId,walletSessionToken:fi(e.fundingSession),[ui]:!0}}async function yi(e){let t=e.authority.request,n=Ve({chains:e.ctx.chains,walletId:String(t.subject.walletId),nearAccountId:String(t.subject.nearAccountId),nearPublicKeyStr:t.subject.nearPublicKeyStr}),r;for(let i=1;i<=12;i+=1)try{let r=await e.ctx.nonceCoordinator.reserveNearContext({lane:n,operation:t.operation,count:t.signatureUses,nearClient:e.ctx.nearClient});return{transactionContext:r.context,nonceLeases:r.leases.map(V),reservedLeases:r.leases}}catch(e){r=e,i<12&&await di(li[i-1]??ci)}throw r instanceof Error?r:Error(`Funded NEAR account access key did not become available`)}async function bi(e){let t=e.authority.request,n=await xe({relayerUrl:e.ctx.relayerUrl,walletId:String(t.subject.walletId),nearAccountId:String(t.subject.nearAccountId),nearPublicKeyStr:t.subject.nearPublicKeyStr,walletSessionToken:e.authority.walletSessionToken});if(!n.ok)throw Error(n.message||n.code||`Failed to fund implicit NEAR account`);return await yi(e)}async function xi(e){switch(e.confirmation.readiness.kind){case`context_ready`:return e.confirmation.readiness;case`funding_required`:{_i({request:e.confirmation.readiness.request,fundingSession:pi(e.walletSessionState),nearPublicKeyStr:e.nearPublicKeyStr,signingOperation:e.signingOperation,signatureUses:e.signatureUses});let t=vi({request:e.confirmation.readiness.request,fundingSession:pi(e.walletSessionState),provenance:mi(e.authorization)}),n=await bi({ctx:e.ctx,authority:t});return{kind:`context_ready`,transactionContext:n.transactionContext,nonceLeases:n.nonceLeases}}default:return Si(e.confirmation.readiness)}}function Si(e){throw Error(`Unsupported confirmed NEAR transaction readiness: ${String(e)}`)}async function Ci(e){_i({request:e.request,fundingSession:e.fundingSession,nearPublicKeyStr:e.nearPublicKeyStr,signingOperation:e.signingOperation,signatureUses:e.signatureUses});let t=vi({request:e.request,fundingSession:e.fundingSession,provenance:hi(e.method)}),n=await bi({ctx:e.ctx,authority:t});return{readiness:{kind:`context_ready`,transactionContext:n.transactionContext,nonceLeases:n.nonceLeases},reservedNonceLeases:n.reservedLeases}}const wi=new Map;function Ti(e){let t=String(e||``).trim();if(!t)throw Error(`[SigningEngine][near] requestId is required`);return t}function Ei(e){wi.set(Ti(e.requestId),e.fund)}function Di(e){wi.delete(String(e||``).trim())}const Oi={async fund(e){let t=Ti(e.requestId),n=wi.get(t);if(!n)throw Error(`[SigningEngine][near] implicit-account funding is unavailable`);return wi.delete(t),await n(e.request)}};function ki(e){switch(e.kind){case`passkey_live`:case`email_otp_live`:return e.material.facts;case`passkey_sealed`:case`email_otp_sealed`:return e.facts;default:throw Error(`[SigningEngine][near] unsupported operation material`)}}async function Ai(e,t){switch(e.hydration.kind){case`use_live_runtime`:case`rehydrate_material_activation`:return await t.resolve(e);case`reauthorize_public_anchor`:throw Error(`[SigningEngine][near] material requires public-anchor reauthorization`);case`blocked`:throw Error(`[SigningEngine][near] material hydration is blocked: ${e.hydration.reason}`);default:throw e.hydration,Error(`[SigningEngine][near] unsupported Ed25519 Yao hydration plan`)}}async function ji(e){if(e.method===`passkey`&&e.preparation.hydration.kind===`rehydrate_material_activation`){let t=await e.executor.preparePasskeyOperationStepUp(e.preparation);return{kind:`passkey_sealed`,materialActivation:t.materialActivation,facts:t.facts,rehydrate:t.rehydrate}}if(e.method===`email_otp`){let t=await e.executor.prepareEmailOtpOperationStepUp(e.preparation);switch(t.kind){case`live`:return{kind:`email_otp_live`,materialActivation:t.materialActivation,material:t.material};case`sealed`:return{kind:`email_otp_sealed`,materialActivation:t.materialActivation,facts:t.facts,authorizeAndRehydrate:t.authorizeAndRehydrate};default:throw Error(`[SigningEngine][near] unsupported Email OTP operation material`)}}let t=await Ai(e.preparation,e.executor);return{kind:`passkey_live`,materialActivation:Ce(t.activeClient.metadata()),material:t}}async function Mi(e){rr({expected:e.expectedActivation,actual:e.material.materialActivation});let t,n=null;if(e.kind===`email_otp_live`||e.kind===`email_otp_sealed`)if(e.kind===`email_otp_live`)t=e.material.material;else{let r=await e.material.authorizeAndRehydrate({normalSigningRequest:e.normalSigningRequest,displayDigest:e.displayDigest,proof:e.proof});t=r.material,n=r.issuedAuthorization}else t=e.material.kind===`passkey_live`?e.material.material:await e.material.rehydrate(e.credential);try{return rr({expected:e.expectedActivation,actual:Ce(t.activeClient.metadata())}),{material:t,issuedAuthorization:n}}catch(n){throw(e.material.kind===`passkey_sealed`||e.material.kind===`email_otp_sealed`)&&t.activeClient.dispose(),n}}async function Ni(e){let t=await Ai(e.preparation,e.executor);return{thresholdSessionId:t.facts.thresholdSessionId,material:t,walletSessionState:await e.executor.resolveWalletSessionState()}}function Pi(e){if(!e)throw Error(`[SigningEngine][near] confirmed operation step-up is missing preparation`);return e}function Fi(e){if(!e)throw Error(`[SigningEngine][near] prepared operation step-up is missing`);if(e.kind!==`near_transaction`)throw Error(`[SigningEngine][near] prepared operation step-up is not a transaction`);return e}function Ii(e){if(!e)throw Error(`[SigningEngine][near] transaction operation material is unavailable`);return e}function Li(e){e.owned&&e.resolved?.material.activeClient.dispose()}function Ri(e,t){throw Li(e),t}async function zi(e){return{material:await Ai(e.preparation,e.executor),walletSessionState:await e.executor.resolveWalletSessionState()}}function Bi(e){if(!e)throw Error(`[SigningEngine][near] warm signing material was not prepared`);return e}async function Vi(e){if(e.authorization.kind===`passkey`){if(e.material.kind!==`passkey_live`&&e.material.kind!==`passkey_sealed`)throw Error(`[SigningEngine][near] passkey transaction material changed factor`);return await Mi({kind:`passkey`,material:e.material,expectedActivation:e.prepared.materialActivation,credential:e.authorization.credential})}if(e.material.kind!==`email_otp_live`&&e.material.kind!==`email_otp_sealed`)throw Error(`[SigningEngine][near] Email OTP transaction material changed factor`);if(e.proof.kind!==`email_otp`)throw Error(`[SigningEngine][near] Email OTP transaction proof is missing`);return e.material.kind===`email_otp_live`?await Mi({kind:`email_otp_live`,material:e.material,expectedActivation:e.prepared.materialActivation}):await Mi({kind:`email_otp_sealed`,material:e.material,expectedActivation:e.prepared.materialActivation,normalSigningRequest:e.prepared.prepare.request,displayDigest:e.displayDigest,proof:e.proof})}function Z(e,t,n){try{e?.(I({...n,flowId:`signing:near:${String(t)}:${n.phase}`,accountId:String(t)}))}catch{}}async function Hi(e){let t=performance.now(),n=`failed`;try{if(!e.state)throw Error(`[SigningEngine][near] reusable Wallet Session state is unavailable`);let t=await e.coordinator.resolveActiveAuthorizedRouterAbEd25519WalletSessionState({state:e.state,nowMs:Date.now()});if(!t)throw Error(`[SigningEngine][near] reusable Wallet Session authorization is unavailable`);return n=`succeeded`,t}finally{U(e.operationId,`wallet_session_authorization`,t,n)}}async function Ui(e){let t=await ji({method:e.method,preparation:e.preparation,executor:e.executor}),n=ki(t);if(String(n.thresholdSessionId)!==e.expectedThresholdSessionId)throw Error(`[SigningEngine][near] prepared operation material changed threshold session`);return $n({requestId:e.requestId,build:async r=>{if(r.kind!==`near_transaction`)throw Error(`[SigningEngine][near] transaction step-up preparation kind changed`);if(r.operationId!==String(e.operation.operationId))throw Error(`[SigningEngine][near] operation step-up operation identity changed`);return await ii({...e.operation,thresholdSessionId:n.thresholdSessionId,materialFacts:n,materialActivation:t.materialActivation,transactionContext:r.transactionContext,displayDigest:r.displayDigest})}}),Ei({requestId:e.requestId,fund:async t=>await Ci({...e.funding,request:t,fundingSession:await e.executor.resolveFundingSession(),method:e.method})}),t}function Wi(e){er(e),Di(e)}function Gi(e){if(!e.readiness){Wi(e.requestId);return}e.readiness.then(Wi.bind(void 0,e.requestId),Wi.bind(void 0,e.requestId))}function Ki(e){return e.selection.kind===`authorization_required`}async function qi(e){return Ki(e)?await Ji(e):await Yi(e)}async function Ji(e){let{ctx:t,commandSubject:n,nearAccount:r,transaction:i,rpcCall:a,onEvent:o,confirmationConfigOverride:s,title:c,body:l,signerSlot:u,signingOperationState:d,signingSessionCoordinator:f,selection:p,yaoSigningPreparation:m,yaoMaterialExecutor:h,passkeyEd25519OperationStepUp:g,emailOtpEd25519StepUp:_}=e,v=d.operationId,y=p.candidate,b=N(r.accountId),x=[];if(!t.touchConfirm)throw Error(`UiConfirm bridge not available for signing`);if(!f)throw Error(`[SigningEngine][near] production signing session coordinator is required`);let{thresholdKeyMaterial:ee}=await Vt({materialExecutor:h,nearAccount:r,signerSlot:y.signerSlot,requestedSignerSlot:u,operationLabel:`signing`,warnings:x}),S=$i({nearAccountId:b,relayerUrl:t.relayerUrl,thresholdKeyMaterial:ee}),te={nearRpcUrl:a.nearRpcUrl||ne(G.network.chains),nearAccountId:b},{txSigningRequest:C,confirmationTransaction:w}=Ht({nearAccountId:String(b),transaction:i}),T=$t(C,`txSigningRequest`),E=z.signingOperationFingerprint(await Gt({nearAccountId:b,nearNetworkId:re(t.chains||G.network.chains),relayerKeyId:S.threshold.thresholdKeyMaterial.relayerKeyId,signerPublicKey:S.threshold.thresholdKeyMaterial.publicKey,transactions:[T]}));f.bindCallerProvidedOperationIdToFingerprint({operationId:v,operationFingerprint:E});let D=je(E),O={kind:`deferred_ed25519_material_identity`,signer:De({walletId:y.walletId,nearAccountId:y.nearAccountId,nearEd25519SigningKeyId:y.nearEd25519SigningKeyId,signerSlot:y.signerSlot}),materialActivation:y.materialActivation,thresholdSessionId:z.thresholdEd25519Session(y.thresholdSessionId)},ie={kind:R.OperationStepUp,lane:{identity:O,auth:y.auth,curve:`ed25519`,keyKind:`threshold_ed25519`,chainFamily:`near`,sessionOrigin:`per_operation`,storageSource:`sealed_restore`,retention:`single_use`,materialActivation:O.materialActivation,thresholdSessionId:O.thresholdSessionId}},k=mn(y.auth),A={operationId:v,operationFingerprint:E,intent:de.TransactionSign},j=await pn({signingAuthPlan:k,signingLaneAuth:y.auth,requiredSignatureUses:En(i),operationFingerprintDigest:D,...g?{passkeyEd25519OperationStepUp:g}:{},..._?{emailOtpEd25519StepUp:_}:{}});if(j.kind===`warm_session`)throw Error(`[SigningEngine][near] deferred Ed25519 transaction cannot use warm session`);let ae=En(i),M=Ui({requestId:String(v),expectedThresholdSessionId:String(O.thresholdSessionId),method:j.kind,preparation:m,executor:h,operation:{ctx:t,thresholdKeyMaterial:S.threshold.thresholdKeyMaterial,walletId:n.walletSession.walletId,nearAccountId:b,operationId:v,operationFingerprint:E,txSigningRequest:C},funding:{ctx:t,nearPublicKeyStr:S.signingNearPublicKeyStr,signingOperation:A,signatureUses:ae}}),P;try{P=await Qe({signingSessionPlan:ie,signingOperation:A,signingOperationState:d,runtime:t.touchConfirm,request:{ctx:{touchConfirm:t.touchConfirm},sessionId:String(v),chain:`near`,kind:`transaction`,...Ze({signingAuthPlan:j.confirmationAuthPayload.signingAuthPlan}),walletId:y.walletId,txSigningRequests:[w],rpcCall:te,nearPublicKeyStr:S.signingNearPublicKeyStr,nearFundingRequest:{subject:{walletId:y.walletId,nearAccountId:b,nearPublicKeyStr:S.signingNearPublicKeyStr},operation:{...A,accountId:String(b)},signatureUses:ae},confirmationConfigOverride:$e({signingAuthPlan:j.confirmationAuthPayload.signingAuthPlan,override:s}),title:c,body:l,confirmationReadiness:{promise:M},onProgress:xn.bind(void 0,{onEvent:o,nearAccountId:b,signingAuthPlan:j.confirmationAuthPayload.signingAuthPlan})}})}finally{Gi({requestId:String(v),readiness:M})}let F=await M,oe=ki(F),I=Cn({prepared:j,confirmation:P});if(I.kind===`warm_session`)throw Error(`[SigningEngine][near] deferred transaction requires operation step-up`);let se=Qr({authorization:I,preparation:m,auth:y.auth,walletId:n.walletSession.walletId}),ce=Fi(nr({requestId:String(v),ref:Pi(P.operationStepUpPreparation)})),le=await Vi({material:F,prepared:ce,displayDigest:P.intentDigest,authorization:I,proof:ei(se)});Z(o,b,{phase:L.STEP_07_AUTHENTICATION_COMPLETE,status:`succeeded`,interaction:{kind:`none`,overlay:`none`},authMethod:tt(j.confirmationAuthPayload.signingAuthPlan)});try{if(await t.nonceCoordinator.recoverDurableLeases({walletId:String(y.walletId)}),P.readiness.kind!==`context_ready`)throw Error(`[SigningEngine][near] implicit-account funding requires transaction context`);let e=await si({ctx:t,thresholdSessionId:oe.thresholdSessionId,activeClient:le.material.activeClient,materialFacts:oe,thresholdKeyMaterial:S.threshold.thresholdKeyMaterial,walletId:n.walletSession.walletId,nearAccountId:b,operationId:v,operationFingerprint:E,displayDigest:P.intentDigest,txSigningRequest:C,transactionContext:P.readiness.transactionContext,authorization:{kind:`operation_step_up`,prepared:ce,displayDigest:P.intentDigest,proof:ei(se),issuedAuthorization:le.issuedAuthorization}});if(!e||e.authorization!==`operation_step_up`)throw Error(`[SigningEngine][near] operation step-up transaction signing is unavailable`);Mr({prepared:ce,issuedAuthorization:e.issuedAuthorization});let r=Qi({okResponse:e.okResponse,nearAccountId:b,warnings:x,nonceLeases:P.readiness.nonceLeases});return await Zi(t,P.readiness.nonceLeases),r}catch(e){throw Li({resolved:le,owned:F.kind===`passkey_sealed`||F.kind===`email_otp_sealed`}),e}}async function Yi({ctx:e,commandSubject:t,nearAccount:n,transaction:r,rpcCall:i,onEvent:a,confirmationConfigOverride:o,title:s,body:c,signerSlot:l,signingOperationState:u,signingSessionCoordinator:d,transactionOperation:f,ed25519SigningBoundary:p,passkeyEd25519OperationStepUp:m,emailOtpEd25519StepUp:h,yaoSigningPreparation:g,yaoMaterialExecutor:_}){let v=performance.now(),y=u.operationId,b=N(n.accountId),x=e.relayerUrl,ee=[],S=e.nonceCoordinator.recoverDurableLeases({walletId:String(t.walletSession.walletId)});S.catch(()=>{}),Z(a,b,{phase:L.STEP_02_REQUEST_PREPARED,status:`running`,message:`Loading threshold signing state`,interaction:{kind:`none`,overlay:`none`}});let{thresholdKeyMaterial:te}=await Vt({materialExecutor:_,nearAccount:n,signerSlot:p.signingLane.identity.signer.signerSlot,requestedSignerSlot:l,operationLabel:`signing`,warnings:ee}),C=$i({nearAccountId:b,relayerUrl:x,thresholdKeyMaterial:te}),w={nearRpcUrl:i.nearRpcUrl||ne(G.network.chains),nearAccountId:b},{txSigningRequest:T,confirmationTransaction:E}=Ht({nearAccountId:String(w.nearAccountId),transaction:r}),D=$t(T,`txSigningRequest`),O=z.signingOperationFingerprint(await Gt({nearAccountId:b,nearNetworkId:re(e.chains||G.network.chains),relayerKeyId:C.threshold.thresholdKeyMaterial.relayerKeyId,signerPublicKey:C.threshold.thresholdKeyMaterial.publicKey,transactions:[D]})),ie=je(O);if(!e.touchConfirm)throw Error(`UiConfirm bridge not available for signing`);let k=e.touchConfirm;if(!d)throw Error(`[SigningEngine][near] production signing session coordinator is required`);d.bindCallerProvidedOperationIdToFingerprint({operationId:y,operationFingerprint:O});let A=En(r),j={operationId:y,operationFingerprint:O,intent:de.TransactionSign},ae=async e=>await rt({signingSessionPlan:p.signingSessionPlan,signingOperation:j,commandKind:e.commandKind,execute:e.execute}),M=p.thresholdSessionId,P=String(M||``).trim(),F=p.signingAuthPlan,oe=p.signingLane;if(!f)throw Error(`[SigningEngine][near] threshold transaction signing requires prepared transaction operation`);if(Ke(F)&&F.thresholdSessionId!==M)throw Error(`[SigningEngine][near] warm-session auth plan must match prepared session identity`);let I={thresholdSessionId:Ke(F)?F.thresholdSessionId:M,lane:oe,signingAuthPlan:F,confirmationAuthPayload:{signingAuthPlan:F},warmSessionReady:Ke(F)},se=oe,ce=new Set,le=e=>{ce.has(e)||(ce.add(e),Pe(`near`,Ie({event:`auth_side_effect_started`,lane:se,sideEffect:e,phase:`confirmed`})))},ue=e=>{e.phase===`auth.passkey.prompt.started`&&le(`passkey_reauth`),xn({onEvent:a,nearAccountId:b,signingAuthPlan:I.confirmationAuthPayload.signingAuthPlan},e)},R=await pn({signingAuthPlan:F,signingLaneAuth:oe.auth,requiredSignatureUses:A,operationFingerprintDigest:ie,...m?{passkeyEd25519OperationStepUp:m}:{},...h?{emailOtpEd25519StepUp:h}:{}}),fe=R.kind===`warm_session`?zi({preparation:g,executor:_}):null;fe?.catch(()=>{});let B=R.confirmationAuthPayload;Ke(B.signingAuthPlan)&&Z(a,b,{phase:L.STEP_06_AUTH_WARM_SESSION_CLAIMED,status:`succeeded`,interaction:{kind:`none`,overlay:`none`},data:{thresholdSessionId:B.signingAuthPlan.thresholdSessionId,expiresAtMs:B.signingAuthPlan.expiresAtMs,remainingUses:B.signingAuthPlan.remainingUses}});let pe=!qe(u.current);pe&&Z(a,b,{phase:L.STEP_05_CONFIRMATION_DISPLAYED,status:`waiting_for_user`,message:`Opening confirmation prompt`,interaction:{kind:`transaction_confirmation`,overlay:`show`}});let me=R.kind===`warm_session`?null:Ui({requestId:P,expectedThresholdSessionId:P,method:R.kind,preparation:g,executor:_,operation:{ctx:e,thresholdKeyMaterial:C.threshold.thresholdKeyMaterial,walletId:t.walletSession.walletId,nearAccountId:b,operationId:j.operationId,operationFingerprint:O,txSigningRequest:T},funding:{ctx:e,nearPublicKeyStr:C.signingNearPublicKeyStr,signingOperation:j,signatureUses:A}});U(String(y),`pre_confirmation`,v);let he=performance.now(),V;try{V=await Qe({signingSessionPlan:p.signingSessionPlan,signingOperation:j,signingOperationState:u,runtime:k,request:{ctx:{touchConfirm:k},sessionId:P,chain:`near`,kind:`transaction`,...Ze({signingAuthPlan:B.signingAuthPlan}),walletId:String(oe.identity.signer.account.wallet.walletId),txSigningRequests:[E],rpcCall:w,nearPublicKeyStr:C.signingNearPublicKeyStr,nearFundingRequest:{subject:{walletId:oe.identity.signer.account.wallet.walletId,nearAccountId:b,nearPublicKeyStr:C.signingNearPublicKeyStr},operation:{...j,accountId:String(b)},signatureUses:A},confirmationConfigOverride:$e({signingAuthPlan:B.signingAuthPlan,override:o}),title:s,body:c,...me?{confirmationReadiness:{promise:me}}:{},onProgress:ue}})}finally{Gi({requestId:P,readiness:me})}let ge=performance.now();U(String(y),`confirmation`,he);let _e=me?await me:null;pe&&Z(a,b,{phase:L.STEP_05_CONFIRMATION_APPROVED,status:`succeeded`,interaction:{kind:`transaction_confirmation`,overlay:`hide`}});let H=Cn({prepared:R,confirmation:V}),ve=H.kind===`warm_session`?null:Qr({authorization:H,preparation:g,auth:f.lane.auth,walletId:t.walletSession.walletId}),ye=H.kind===`warm_session`?null:nr({requestId:P,ref:Pi(V.operationStepUpPreparation)}),be=H.kind===`warm_session`?null:await Vi({material:Ii(_e),prepared:Fi(ye),displayDigest:V.intentDigest,authorization:H,proof:ei(ve)}),xe=_e?.kind===`passkey_sealed`||_e?.kind===`email_otp_sealed`,Se=performance.now();try{await S,U(String(j.operationId),`durable_lease_recovery_wait`,Se)}catch(e){throw U(String(j.operationId),`durable_lease_recovery_wait`,Se,`failed`),Li({resolved:be,owned:xe}),e}let Ce=!1,{canonicalThresholdSessionId:we,activeClient:Te,walletSessionState:Ee,operationMaterialFacts:De,issuedAuthorization:Oe,transactionContext:ke,nonceLeaseRefs:Ae}=await ae({commandKind:Je.PreparePayload,execute:async()=>{Z(a,b,{phase:L.STEP_08_SIGNER_PREPARE_STARTED,status:`running`,message:`Preparing NEAR signer`,interaction:{kind:`none`,overlay:`none`}});let t=performance.now(),n=H.kind===`warm_session`?{kind:`warm_session`,resolved:await Bi(fe)}:{kind:`operation_step_up`,resolved:be};U(String(j.operationId),`material_resolution_wait`,t);let r=(n.kind,n.resolved.material.facts.thresholdSessionId),i=(n.kind,n.resolved.material.activeClient),o=n.kind===`warm_session`?n.resolved.walletSessionState:null,s=performance.now(),c=n.kind===`warm_session`?await xi({confirmation:V,ctx:e,nearPublicKeyStr:C.signingNearPublicKeyStr,walletSessionState:o,authorization:H,signingOperation:j,signatureUses:A}):V.readiness.kind===`context_ready`?V.readiness:(()=>{throw Error(`[SigningEngine][near] operation step-up confirmation did not resolve a transaction context`)})();return U(String(j.operationId),`transaction_context`,s),Z(a,b,{phase:L.STEP_07_AUTHENTICATION_COMPLETE,status:`succeeded`,interaction:{kind:`none`,overlay:`none`},authMethod:I.warmSessionReady?`warm_session`:I.signingAuthPlan.method}),Z(a,b,{phase:L.STEP_08_SIGNER_PREPARE_SUCCEEDED,status:`succeeded`,message:`NEAR signer ready`,interaction:{kind:`none`,overlay:`none`},data:{signer:`threshold-ed25519`,thresholdSessionId:r,clientBaseSource:`yao_active_client`}}),{canonicalThresholdSessionId:r,activeClient:i,walletSessionState:o,operationMaterialFacts:n.kind===`operation_step_up`?n.resolved.material.facts:null,issuedAuthorization:n.kind===`operation_step_up`?n.resolved.issuedAuthorization:null,transactionContext:c.transactionContext,nonceLeaseRefs:c.nonceLeases}}}).catch(Ri.bind(void 0,{resolved:be,owned:xe})),Me=async t=>{Ce||!Ae.length||await Xi(e,Ae,`signing_failed`).catch(e=>{console.warn(`[SigningEngine][near][transaction] failed to release nonce leases`,{originalError:t instanceof Error?t.message:String(t||``),releaseError:e instanceof Error?e.message:String(e||``)})})},Ne=async n=>{Z(a,b,{phase:L.STEP_10_COMMIT_STARTED,status:`running`,interaction:{kind:`none`,overlay:`none`}});let r=H.kind===`warm_session`?await si({ctx:e,thresholdSessionId:we,activeClient:n,walletSessionState:await Hi({state:Ee,coordinator:d,operationId:String(j.operationId)}),thresholdKeyMaterial:C.threshold.thresholdKeyMaterial,walletId:t.walletSession.walletId,nearAccountId:b,operationId:j.operationId,operationFingerprint:O,displayDigest:V.intentDigest,txSigningRequest:T,transactionContext:ke,authorization:{kind:`reusable_wallet_session`}}):await si({ctx:e,thresholdSessionId:we,activeClient:n,materialFacts:De,thresholdKeyMaterial:C.threshold.thresholdKeyMaterial,walletId:t.walletSession.walletId,nearAccountId:b,operationId:j.operationId,operationFingerprint:O,displayDigest:V.intentDigest,txSigningRequest:T,transactionContext:ke,authorization:{kind:`operation_step_up`,prepared:Fi(ye),displayDigest:V.intentDigest,proof:H.kind===`passkey`?{kind:`passkey`,authority:H.plannedPasskeyOperationStepUp.authority,credential:H.credential}:{...Zr({preparation:g,auth:f.lane.auth,walletId:t.walletSession.walletId,challengeId:H.challengeId,otpCode:H.otpCode})},issuedAuthorization:Oe}});if(r)return r.okResponse;throw Error(`[SigningEngine][near] Router A/B Ed25519 signing is unavailable`)};return await ae({commandKind:Je.Sign,execute:async()=>{try{let t=await Ne(Te);Ce=!0;let n=performance.now();await Zi(e,Ae),U(String(j.operationId),`nonce_lease_commit`,n);let r=performance.now(),i=Qi({okResponse:t,nearAccountId:b,warnings:ee,nonceLeases:Ae});return U(String(j.operationId),`transaction_assembly`,r),U(String(j.operationId),`confirmed_to_signed`,ge),Z(a,b,{phase:L.STEP_11_TRANSACTION_SIGNED,status:`succeeded`,interaction:{kind:`none`,overlay:`hide`}}),Z(a,b,{phase:L.STEP_15_COMPLETED,status:`succeeded`,interaction:{kind:`none`,overlay:`none`},data:{operation:`sign`}}),i}catch(e){let t=e instanceof Error?e:Error(String(e));throw await Me(t),Li({resolved:be,owned:xe}),t}}})}async function Xi(e,t,n){t.length&&await Promise.all(t.map(t=>e.nonceCoordinator.release({leaseId:t.leaseId,operationId:t.operationId,operationFingerprint:t.operationFingerprint,reason:n})))}async function Zi(e,t){t.length&&await Promise.all(t.map(t=>e.nonceCoordinator.markSigned({leaseId:t.leaseId,operationId:t.operationId,operationFingerprint:t.operationFingerprint})))}function Qi(e){let t=e.okResponse.payload.signedTransactions||[];if(t.length!==1)throw Error(`Expected one signed transaction but received ${t.length}`);let n=t[0];if(!n||!n.transaction||!n.signature)throw Error(`Incomplete signed transaction data received`);let r=e.nonceLeases?.[0],i=n.serverDispatch;return{signedTransaction:new Be({transaction:n.transaction,signature:n.signature,borsh_bytes:Array.from(n.borshBytes||[]),...r?{nonceLease:r}:{},...i?{serverDispatch:i}:{}}),nearAccountId:N(e.nearAccountId),logs:[...e.okResponse.payload.logs||[],...e.warnings],...r?{nonceLease:r}:{}}}function $i(e){let t=e.thresholdKeyMaterial;if(!t)throw Error(`Missing threshold key material for ${e.nearAccountId}`);let n=String(t.publicKey||``).trim();if(!n)throw Error(`Missing threshold signing public key for ${e.nearAccountId}`);let r=String(e.relayerUrl||``).trim();if(!r)throw Error(`Missing relayerUrl (required for threshold-signer)`);let i=g(t.participants.map(e=>e.id));if(!i||i.length<2)throw Error(`Invalid threshold signing participantIds (expected >=2 participants, got [${(i||[]).join(`,`)}])`);return{signingNearPublicKeyStr:n,threshold:{relayerUrl:r,thresholdKeyMaterial:t}}}const ea=e=>typeof e==`string`?e:M(ae(e.keyData));function Q(e){return typeof e!=`number`||!Number.isFinite(e)||e<0?null:Math.round(e)}function ta(e){if(e==null||!l(e))return;let t=e;if(t.kind!==`registration_confirmation_diagnostics_v1`)return;let n=Q(t.workerReadyMs),r=Q(t.workerRequestRoundTripMs),i=Q(t.workerResponseValidationMs),a=Q(t.requestSetupMs),o=Q(t.promptUserMs),s=Q(t.promptElementDefineMs),c=Q(t.promptMountMs),u=Q(t.promptHostFirstUpdateMs),d=Q(t.promptHostInteractiveMs),f=Q(t.promptConfirmEventMs),p=Q(t.promptDecisionWaitMs),m=Q(t.credentialCreateStartMs),h=Q(t.credentialCreateMs),g=Q(t.credentialSerializeMs),_=Q(t.duplicateRetryCount),v=Q(t.mainThreadTotalMs);if(!(n==null||r==null||i==null||a==null||o==null||s==null||c==null||u==null||d==null||f==null||p==null||m==null||h==null||g==null||_==null||v==null))return{kind:`registration_confirmation_diagnostics_v1`,workerReadyMs:n,workerRequestRoundTripMs:r,workerResponseValidationMs:i,requestSetupMs:a,promptUserMs:o,promptElementDefineMs:s,promptMountMs:c,promptHostFirstUpdateMs:u,promptHostInteractiveMs:d,promptConfirmEventMs:f,promptDecisionWaitMs:p,credentialCreateStartMs:m,credentialCreateMs:h,credentialSerializeMs:g,duplicateRetryCount:_,mainThreadTotalMs:v}}function na(e){if(e==null)return;if(!l(e))throw Error(`Invalid transactionContext: expected object`);let{nearPublicKeyStr:t,nextNonce:n,txBlockHeight:r,txBlockHash:i,accessKeyInfo:a}=e,o=c(t,`transactionContext.nearPublicKeyStr`),s=c(n,`transactionContext.nextNonce`),u=c(r,`transactionContext.txBlockHeight`),d=c(i,`transactionContext.txBlockHash`),f=a;if(f!=null&&!l(f))throw Error(`Invalid transactionContext.accessKeyInfo: expected object`);return f??={nonce:0},{nearPublicKeyStr:o,nextNonce:s,txBlockHeight:u,txBlockHash:d,accessKeyInfo:f}}function ra(e){if(e==null)return;let t=ge(e);if(t.type!==`public-key`)throw Error(`Invalid credential.type: expected "public-key"`);let{id:n,rawId:r,response:i,authenticatorAttachment:a}=t;if(c(n,`credential.id`),c(r,`credential.rawId`),!l(i))throw Error(`Invalid credential.response: expected object`);let{clientDataJSON:o,attestationObject:s,transports:u}=i;if(c(o,`credential.response.clientDataJSON`),c(s,`credential.response.attestationObject`),!Array.isArray(u))throw Error(`Invalid credential.response.transports: expected string[]`);for(let e of u)if(typeof e!=`string`)throw Error(`Invalid credential.response.transports item: expected string`);if(a!=null&&typeof a!=`string`)throw Error(`Invalid credential.authenticatorAttachment: expected string | undefined`);return t}function ia(e){if(!l(e))throw Error(`Invalid response payload: expected object`);let{confirmed:t,requestId:n,intentDigest:r,credential:i,transactionContext:a,registrationDiagnostics:o,error:s}=e,u=c(n,`requestId`),d=r==null?``:c(r,`intentDigest`),f=i==null?void 0:ra(i);if(!f)throw Error(`Missing registration credential`);let p=a==null?void 0:na(a),m=ta(o),h=s==null?void 0:c(s,`error`);return{confirmed:!!t,requestId:u,intentDigest:d,credential:f,...p?{transactionContext:p}:{},...m?{registrationDiagnostics:m}:{},...h==null?{}:{error:h}}}function aa(e){let t=e.lane,n=e.readiness;if(t.curve!==n.curve)throw Error(`[SigningSession] planner lane and readiness curves do not match`);if(t.curve===`ecdsa`&&n.curve===`ecdsa`){let e=t.authorization,r=n.authorization,a=e.session,o=r.session;if(!i(t.materialActivation,n.materialActivation)||e.selectedAuthority.authorityId!==r.selectedAuthority.authorityId||e.selectedAuthMethod.kind!==r.selectedAuthMethod.kind||e.selectedAuthMethod.walletAuthMethodId!==r.selectedAuthMethod.walletAuthMethodId||a.walletId!==o.walletId||a.authorityId!==o.authorityId||a.authMethodId!==o.authMethodId||a.authorizationId!==o.authorizationId||a.quotaId!==o.quotaId||a.authorityDigestB64u!==o.authorityDigestB64u||a.authorityRevocationEpoch!==o.authorityRevocationEpoch||e.operationCredential.walletSessionId!==r.operationCredential.walletSessionId||e.operationCredential.token!==r.operationCredential.token)throw Error(`[SigningSession] planner ECDSA readiness authority does not match its lane`)}let r=sa(e);if(r)return{kind:R.NotReady,lane:t,reason:r};let a=e.forceFreshAuth||e.sensitiveOperationPolicy===`require_fresh_same_method`||t.retention===`single_use`;if(n.status===`ready`&&!a){if(t.curve===`ed25519`&&n.curve===`ed25519`)return{kind:R.WarmSession,lane:t,keyRef:{kind:pe.Cached,curve:`ed25519`,thresholdSessionId:n.thresholdSessionId}};if(t.curve!==`ecdsa`||n.curve!==`ecdsa`)throw Error(`[SigningSession] planner lane and readiness curves do not match`);return{kind:R.WarmSession,lane:t,keyRef:{kind:pe.Cached,curve:`ecdsa`,materialActivation:n.materialActivation,authorization:n.authorization}}}if(n.status===`auth_unavailable`||n.status===`status_unavailable`||n.status===`status_unknown`)return{kind:R.NotReady,lane:t,reason:n.status};if(ue(t.auth)===`email_otp`)return{kind:R.EmailOtpReauth,lane:t,challenge:{chainFamily:t.chainFamily,lane:t}};if(t.curve===`ed25519`&&n.curve===`ed25519`)return{kind:R.PasskeyReauth,lane:t,reconnect:{lane:t,curve:`ed25519`,thresholdSessionId:n.thresholdSessionId}};if(t.curve!==`ecdsa`||n.curve!==`ecdsa`)throw Error(`[SigningSession] planner lane and readiness curves do not match`);return{kind:R.PasskeyReauth,lane:t,reconnect:{lane:t,curve:`ecdsa`,materialActivation:n.materialActivation,authorization:n.authorization}}}function oa(e,t){return{event:`signing_planner_decision`,readinessStatus:e.readiness.status,forceFreshAuth:!!e.forceFreshAuth,...e.sensitiveOperationPolicy?{sensitiveOperationPolicy:e.sensitiveOperationPolicy}:{},plan:fe(t),lane:le(e.lane),...t.kind===R.NotReady?{reason:t.reason}:{}}}function sa(e){return ue(e.lane.auth)===`email_otp`&&(e.sensitiveOperationPolicy===`deny_email_otp`||e.sensitiveOperationPolicy===`require_passkey`)?`policy_blocked`:null}function ca(e){let t=e.selectedLane.identity.signer,n=k(e.commandSubject.walletSession.walletId),r=String(e.commandSubject.nearAccount.accountId);if(t.account.wallet.walletId!==n||String(t.account.nearAccountId)!==r)throw Error(`[SigningEngine][near] selected Ed25519 lane does not match command subject`);return{walletId:n,nearAccountId:r}}function la(e){let t=e.selectedLane.identity.signer,n={walletId:t.account.wallet.walletId,nearAccountId:t.account.nearAccountId,nearEd25519SigningKeyId:t.nearEd25519SigningKeyId,signerSlot:t.signerSlot,walletSessionId:e.selectedLane.walletSessionId,quotaId:e.selectedLane.quotaId,thresholdSessionId:e.selectedLane.thresholdSessionId};switch(e.selectedLane.auth.kind){case`passkey`:return ke({...n,auth:e.selectedLane.auth,storageSource:`login`});case`email_otp`:{let t=e.preparation.authorization.kind===`authorized`;return ke({...n,auth:e.selectedLane.auth,retention:t?`session`:`single_use`,sessionOrigin:t?`login`:`per_operation`})}default:throw e.selectedLane.auth,Error(`[SigningEngine][near] unsupported selected Ed25519 auth binding`)}}function ua(e){let t=z.thresholdEd25519Session(e.selectedLane.thresholdSessionId);switch(e.preparation.authorization.kind){case`authorized`:{let n=e.preparation.authorization.authorization.status,r=n.remainingUses,i=n.expiresAtMs,a=i<=Date.now()?`expired`:r<e.requiredSignatureUses?`exhausted`:`ready`;return{readiness:a===`expired`?{status:`expired`,curve:`ed25519`,thresholdSessionId:t,expiresAtMs:i}:{status:a,curve:`ed25519`,thresholdSessionId:t,remainingUses:r,expiresAtMs:i},expiresAtMs:i,remainingUses:r,forceFreshAuth:a!==`ready`}}case`authorization_required`:return{readiness:{status:`missing_session`,curve:`ed25519`,thresholdSessionId:t},expiresAtMs:0,remainingUses:0,forceFreshAuth:!0};default:throw e.preparation.authorization,Error(`[SigningEngine][near] unsupported material authorization state`)}}function da(e){ca(e);let t=Math.max(1,Math.floor(Number(e.requiredSignatureUses)||1)),n=la(e),r=ua({selectedLane:e.selectedLane,preparation:e.preparation,requiredSignatureUses:t});return Fe(`near`,n,{reason:`near_threshold_auth_plan`}),{thresholdSessionId:z.thresholdEd25519Session(e.selectedLane.thresholdSessionId),lane:n,coordinatorInput:{lane:n,readiness:r.readiness,expiresAtMs:r.expiresAtMs,remainingUses:r.remainingUses,forceFreshAuth:e.forceFreshAuth||r.forceFreshAuth}}}function fa(e){let{lane:t}=e.context,n=e.resolvedSigningSession,r=n.signingSessionPlan;if(r.kind===R.NotReady)throw Error(`[SigningEngine][near] signing session is not ready: ${r.reason}`);return{signingAuthPlan:nt({plan:r,accountId:String(t.identity.signer.account.nearAccountId),intent:de.TransactionSign,curve:`ed25519`,expiresAtMs:n.expiresAtMs,remainingUses:n.remainingUses})}}function pa(e,t){if(!t)throw Error(`[SigningEngine][near] ${e} operation step-up preparation is missing`);return t}function ma(e,t){if(!t||t.kind!==`near_signature_only`)throw Error(`[SigningEngine][near] ${e} operation step-up preparation kind changed`);return t}function ha(e,t){if(!t)throw Error(`[SigningEngine][near] ${e} operation step-up material is missing`);return t}function ga(e,t){if(!t)throw Error(`[SigningEngine][near] ${e} operation signing digest is missing`);return t}function _a(e){if(!e)throw Error(`[SigningEngine][near] reusable Wallet Session authorization is unavailable`);return e}async function va(e){if(e.authorization.kind===`passkey`){if(e.material.kind!==`passkey_live`&&e.material.kind!==`passkey_sealed`)throw Error(`[SigningEngine][near] passkey ${e.label} material changed factor`);return await Mi({kind:`passkey`,material:e.material,expectedActivation:e.prepared.materialActivation,credential:e.authorization.credential})}if(e.material.kind!==`email_otp_live`&&e.material.kind!==`email_otp_sealed`)throw Error(`[SigningEngine][near] Email OTP ${e.label} material changed factor`);if(!e.emailOtpProof)throw Error(`[SigningEngine][near] Email OTP ${e.label} proof is missing`);return e.material.kind===`email_otp_live`?await Mi({kind:`email_otp_live`,material:e.material,expectedActivation:e.prepared.materialActivation}):await Mi({kind:`email_otp_sealed`,material:e.material,expectedActivation:e.prepared.materialActivation,normalSigningRequest:e.prepared.prepare.request,displayDigest:e.displayDigest,proof:e.emailOtpProof})}function ya(e){if(e.selection.kind===`authorized`){let t=da({requiredSignatureUses:1,commandSubject:e.commandSubject,forceFreshAuth:e.forceFreshAuth,selectedLane:e.selection.selectedLane,preparation:e.preparation}),n={signingSessionPlan:aa({lane:t.coordinatorInput.lane,readiness:t.coordinatorInput.readiness,forceFreshAuth:t.coordinatorInput.forceFreshAuth}),readiness:t.coordinatorInput.readiness,expiresAtMs:t.coordinatorInput.expiresAtMs||0,remainingUses:t.coordinatorInput.remainingUses||0};return{signingAuthPlan:fa({context:t,resolvedSigningSession:n}).signingAuthPlan,signingSessionPlan:n.signingSessionPlan}}let t=e.selection.candidate,n=mn(t.auth),r={kind:`deferred_ed25519_material_identity`,signer:De({walletId:t.walletId,nearAccountId:t.nearAccountId,nearEd25519SigningKeyId:t.nearEd25519SigningKeyId,signerSlot:t.signerSlot}),materialActivation:t.materialActivation,thresholdSessionId:z.thresholdEd25519Session(t.thresholdSessionId)};return{signingAuthPlan:n,signingSessionPlan:{kind:R.OperationStepUp,lane:{identity:r,auth:t.auth,curve:`ed25519`,keyKind:`threshold_ed25519`,chainFamily:`near`,sessionOrigin:`per_operation`,storageSource:`sealed_restore`,retention:`single_use`,materialActivation:r.materialActivation,thresholdSessionId:r.thresholdSessionId}}}}async function ba(e,t){let n=await pn({signingAuthPlan:t.signingAuthPlan,signingLaneAuth:e.auth,requiredSignatureUses:1,operationFingerprintDigest:je(e.signingOperation.operationFingerprint),passkeyEd25519OperationStepUp:t.passkeyEd25519OperationStepUp,emailOtpEd25519StepUp:t.emailOtpEd25519StepUp});if(n.kind===`warm_session`)return{preparedStepUp:n,operationStepUp:null};let r=await ji({method:n.kind,preparation:e.preparation,executor:e.executor}),i=ki(r),a=await e.computeSigningDigestB64u();return $n({requestId:String(e.signingOperation.operationId),build:async t=>{if(t.kind!==`near_signature_only`)throw Error(`[SigningEngine][near] ${e.label} operation step-up preparation kind changed`);return await Xr({ctx:e.ctx,thresholdSessionId:i.thresholdSessionId,materialFacts:i,walletId:e.walletId,nearAccountId:e.nearAccountId,materialActivation:r.materialActivation,operationId:e.signingOperation.operationId,operationFingerprint:e.signingOperation.operationFingerprint,displayDigest:t.displayDigest,signingDigestB64u:a,intent:e.intent})}}),{preparedStepUp:n,operationStepUp:{material:r,signingDigestB64u:a}}}async function xa(e,t){let n=String(e.signingOperation.operationId);try{return await Ye({signingSessionPlan:e.signingSessionPlan,signingOperation:e.signingOperation,runtime:t.touchConfirm,request:{ctx:{touchConfirm:t.touchConfirm},sessionId:n,chain:`near`,...t.request,...Ze({signingAuthPlan:t.signingAuthPlan}),walletId:String(e.walletId),nearAccountId:e.nearAccountId,nearPublicKeyStr:t.nearPublicKeyStr,title:t.title,body:t.body,confirmationConfigOverride:$e({signingAuthPlan:t.signingAuthPlan,override:t.confirmationConfigOverride}),onProgress:xn.bind(void 0,{onEvent:t.onEvent,nearAccountId:e.nearAccountId,signingAuthPlan:t.signingAuthPlan})}})}finally{er(n)}}function Sa(e,t,n){let r=Cn({prepared:t.preparedStepUp,confirmation:n});if(r.kind===`warm_session`)return{kind:`warm_session`,displayDigest:n.intentDigest,stepUpAuthorization:r};let i=Qr({authorization:r,preparation:e.preparation,auth:e.auth,walletId:e.walletId}),a=ma(e.label,nr({requestId:String(e.signingOperation.operationId),ref:pa(e.label,n.operationStepUpPreparation)}));return{kind:`operation_step_up`,displayDigest:n.intentDigest,stepUpAuthorization:r,proof:i,prepared:a,...ha(e.label,t.operationStepUp)}}async function Ca(e,t){if(t.kind===`warm_session`){let n=await Ni({preparation:e.preparation,executor:e.executor});return{kind:`warm_session`,thresholdSessionId:n.thresholdSessionId,displayDigest:t.displayDigest,resolved:n}}return{kind:`operation_step_up`,thresholdSessionId:ki(t.material).thresholdSessionId,displayDigest:t.displayDigest,resolved:await va({label:e.label,material:t.material,prepared:t.prepared,displayDigest:t.displayDigest,authorization:t.stepUpAuthorization,emailOtpProof:t.proof.kind===`email_otp`?t.proof:null}),proof:t.proof,prepared:t.prepared,signingDigestB64u:t.signingDigestB64u}}async function wa(e,t,n){let r=t.kind===`warm_session`?await e.computeSigningDigestB64u():ga(e.label,t.signingDigestB64u),i=t.kind===`warm_session`?await ri({ctx:e.ctx,thresholdSessionId:t.thresholdSessionId,activeClient:t.resolved.material.activeClient,walletSessionState:_a(await n.resolveActiveAuthorizedRouterAbEd25519WalletSessionState({state:t.resolved.walletSessionState,nowMs:Date.now()})),walletId:e.walletId,thresholdKeyMaterial:e.thresholdKeyMaterial,nearAccountId:e.nearAccountId,operationId:e.signingOperation.operationId,operationFingerprint:e.signingOperation.operationFingerprint,displayDigest:t.displayDigest,signingDigestB64u:r,intent:e.intent,authorization:{kind:`reusable_wallet_session`}}):await ri({ctx:e.ctx,thresholdSessionId:t.thresholdSessionId,activeClient:t.resolved.material.activeClient,materialFacts:t.resolved.material.facts,walletId:e.walletId,thresholdKeyMaterial:e.thresholdKeyMaterial,nearAccountId:e.nearAccountId,operationId:e.signingOperation.operationId,operationFingerprint:e.signingOperation.operationFingerprint,displayDigest:t.displayDigest,signingDigestB64u:r,intent:e.intent,authorization:{kind:`operation_step_up`,prepared:t.prepared,proof:t.proof,issuedAuthorization:t.resolved.issuedAuthorization}});if(!i)throw Error(`[SigningEngine][near] Router A/B Ed25519 ${e.label} signing is unavailable`);return t.kind===`operation_step_up`&&i.authorization===`operation_step_up`&&Mr({prepared:t.prepared,issuedAuthorization:i.issuedAuthorization}),{signingDigestB64u:r,signatureB64u:i.signatureB64u,signerPublicKey:i.signerPublicKey}}async function Ta(e,t){return await rt({signingSessionPlan:e.signingSessionPlan,signingOperation:e.signingOperation,commandKind:Je.Sign,execute:async()=>{try{return await t()}catch(e){throw e instanceof Error?e:Error(String(e))}}})}function $(e,t,n){try{e?.(I({...n,flowId:`signing:near:${String(t)}:${n.phase}`,accountId:String(t)}))}catch{}}function Ea(e){switch(e.kind){case`warm_session`:return`warm_session`;case`passkey`:return`passkey`;case`email_otp`:return`email_otp`;default:return Da(e)}}function Da(e){throw Error(`[SigningEngine][near] unsupported prepared step-up: ${String(e)}`)}async function Oa({ctx:e,commandSubject:t,nearAccount:n,delegate:r,rpcCall:i,onEvent:a,confirmationConfigOverride:o,title:s,body:c,operationId:l,signerSlot:u,signingSessionCoordinator:d,forceFreshAuth:f,passkeyEd25519OperationStepUp:p,emailOtpEd25519StepUp:m,yaoSigningPreparation:h,yaoMaterialExecutor:g,selection:_}){let v=_.kind===`authorized`?_.selectedLane.auth:_.candidate.auth,y=_.kind===`authorized`?_.selectedLane.identity.signer.signerSlot:_.candidate.signerSlot,b=N(n.accountId),x=e.relayerUrl,ee={nearRpcUrl:i.nearRpcUrl||ne(G.network.chains),nearAccountId:b},S=[],te=e.touchConfirm;if(!te)throw Error(`UiConfirm bridge not available for delegate signing`);let{signingAuthPlan:C,signingSessionPlan:w}=ya({selection:_,commandSubject:t,forceFreshAuth:f,preparation:h});$(a,b,{phase:L.STEP_02_REQUEST_PREPARED,status:`running`,message:`Loading threshold signing state`,interaction:{kind:`none`,overlay:`none`}});let{thresholdKeyMaterial:T}=await Vt({materialExecutor:g,nearAccount:n,signerSlot:y,requestedSignerSlot:u,operationLabel:`delegate signing`,warnings:S}),E=ka({nearAccountId:b,relayerUrl:x,thresholdKeyMaterial:T,providedDelegatePublicKey:r.publicKey,warnings:S}),D=Ut({nearAccountId:b,delegate:r,signingPublicKey:E.delegatePublicKeyStr}),O={...D.workerDelegate,actions:D.workerDelegate.actions.map((e,t)=>tn(e,`delegate.actions[${t}]`))},ie={operationId:l,operationFingerprint:z.signingOperationFingerprint(await Jt({nearAccountId:b,nearNetworkId:re(e.chains||G.network.chains),relayerKeyId:E.threshold.thresholdKeyMaterial.relayerKeyId,signerPublicKey:E.delegatePublicKeyStr,delegate:O})),intent:de.TransactionSign},k={label:`delegate`,ctx:e,walletId:t.walletSession.walletId,nearAccountId:b,auth:v,signingSessionPlan:w,signingOperation:ie,thresholdKeyMaterial:E.threshold.thresholdKeyMaterial,preparation:h,executor:g,intent:{kind:`near_delegate_action_v1`,delegate:O},computeSigningDigestB64u:async()=>(await An({delegate:D.workerDelegate,workerCtx:e})).signingDigestB64u},A=await ba(k,{signingAuthPlan:C,passkeyEd25519OperationStepUp:p,emailOtpEd25519StepUp:m}),j=A.preparedStepUp.confirmationAuthPayload;Ke(j.signingAuthPlan)&&$(a,b,{phase:L.STEP_06_AUTH_WARM_SESSION_CLAIMED,status:`succeeded`,interaction:{kind:`none`,overlay:`none`},data:{thresholdSessionId:j.signingAuthPlan.thresholdSessionId,expiresAtMs:j.signingAuthPlan.expiresAtMs,remainingUses:j.signingAuthPlan.remainingUses}}),$(a,b,{phase:L.STEP_05_CONFIRMATION_DISPLAYED,status:`waiting_for_user`,message:`Opening confirmation prompt`,interaction:{kind:`transaction_confirmation`,overlay:`show`}});let ae=await xa(k,{touchConfirm:te,signingAuthPlan:j.signingAuthPlan,nearPublicKeyStr:E.signingNearPublicKeyStr,onEvent:a,title:s,body:c,confirmationConfigOverride:o,request:{kind:`delegate`,delegate:D.confirmationDelegate,rpcCall:ee}});$(a,b,{phase:L.STEP_05_CONFIRMATION_APPROVED,status:`succeeded`,interaction:{kind:`transaction_confirmation`,overlay:`hide`}});let M=Sa(k,A,ae),P=await rt({signingSessionPlan:w,signingOperation:ie,commandKind:Je.PreparePayload,execute:async()=>{$(a,b,{phase:L.STEP_08_SIGNER_PREPARE_STARTED,status:`running`,message:`Preparing NEAR signer`,interaction:{kind:`none`,overlay:`none`}});let e=await Ca(k,M);return $(a,b,{phase:L.STEP_07_AUTHENTICATION_COMPLETE,status:`succeeded`,interaction:{kind:`none`,overlay:`none`},authMethod:Ea(A.preparedStepUp)}),$(a,b,{phase:L.STEP_08_SIGNER_PREPARE_SUCCEEDED,status:`succeeded`,message:`NEAR signer ready`,interaction:{kind:`none`,overlay:`none`},data:{signer:`threshold-ed25519`,thresholdSessionId:e.thresholdSessionId,clientBaseSource:`yao_active_client`}}),e}}),F=await Ta(k,async()=>{$(a,b,{phase:L.STEP_10_COMMIT_STARTED,status:`running`,interaction:{kind:`none`,overlay:`none`}});let t=await wa(k,P,d),n=await Hr({ctx:e,delegate:D.workerDelegate,signingDigestB64u:t.signingDigestB64u,signatureB64u:t.signatureB64u});return{type:kt.SignDelegateActionSuccess,payload:{success:!0,hash:n.hash,signedDelegate:n.signedDelegate,logs:[`Delegate action signed through Router A/B normal signing`],error:void 0}}});return $(a,b,{phase:L.STEP_11_TRANSACTION_SIGNED,status:`succeeded`,interaction:{kind:`none`,overlay:`hide`}}),$(a,b,{phase:L.STEP_15_COMPLETED,status:`succeeded`,interaction:{kind:`none`,overlay:`none`},data:{operation:`sign_delegate`,hash:F.payload.hash}}),{signedDelegate:F.payload.signedDelegate,hash:F.payload.hash,nearAccountId:N(b),logs:[...F.payload.logs||[],...S]}}function ka(e){let t=M(ea(e.providedDelegatePublicKey)),n=e.thresholdKeyMaterial;if(!n)throw Error(`Missing threshold key material for ${e.nearAccountId}`);let r=M(n.publicKey);if(!r)throw Error(`Missing threshold signing public key for ${e.nearAccountId}`);if(t&&t!==r&&e.warnings.push(`Delegate public key ${t} does not match threshold signer key; using ${r}`),!String(e.relayerUrl||``).trim())throw Error(`Missing relayerUrl (required for threshold-signer)`);let i=g(n.participants.map(e=>e.id));if(!i||i.length<2)throw Error(`Invalid threshold signing participantIds (expected >=2 participants, got [${(i||[]).join(`,`)}])`);return{signingNearPublicKeyStr:r,delegatePublicKeyStr:r,threshold:{thresholdKeyMaterial:n}}}async function Aa({ctx:e,commandSubject:t,nearAccount:n,signingSessionCoordinator:r,payload:i,forceFreshAuth:a,passkeyEd25519OperationStepUp:o,emailOtpEd25519StepUp:s,yaoSigningPreparation:c,yaoMaterialExecutor:l,selection:u,onEvent:d}){let f=u.kind===`authorized`?u.selectedLane.auth:u.candidate.auth,h=u.kind===`authorized`?u.selectedLane.identity.signer.signerSlot:u.candidate.signerSlot,g=i.operationId,_=e.relayerUrl,v=n.accountId,y=e.touchConfirm;if(!y)throw Error(`UiConfirm bridge not available for NEP-413 signing`);let{signingAuthPlan:b,signingSessionPlan:x}=ya({selection:u,commandSubject:t,forceFreshAuth:a,preparation:c}),{thresholdKeyMaterial:ee}=await Vt({materialExecutor:l,nearAccount:n,signerSlot:h,requestedSignerSlot:i.signerSlot,operationLabel:`NEP-413 signing`}),S=ja({nearAccountId:v,relayerUrl:_,thresholdKeyMaterial:ee}),te={operationId:g,operationFingerprint:z.signingOperationFingerprint(await qt({nearAccountId:v,nearNetworkId:re(e.chains||G.network.chains),relayerKeyId:S.threshold.thresholdKeyMaterial.relayerKeyId,signerPublicKey:S.threshold.thresholdKeyMaterial.publicKey,message:i.message,recipient:i.recipient,nonce:i.nonce,state:i.state||null})),intent:de.TransactionSign},C={label:`NEP-413`,ctx:e,walletId:t.walletSession.walletId,nearAccountId:v,auth:f,signingSessionPlan:x,signingOperation:te,thresholdKeyMaterial:S.threshold.thresholdKeyMaterial,preparation:c,executor:l,intent:{kind:`nep413_message_v1`,message:i.message,recipient:i.recipient,nonce:i.nonce,...i.state?{state:i.state}:{}},computeSigningDigestB64u:async()=>(await kn({message:i.message,recipient:i.recipient,nonce:i.nonce,...i.state?{state:i.state}:{},workerCtx:e})).signingDigestB64u},w=await ba(C,{signingAuthPlan:b,passkeyEd25519OperationStepUp:o,emailOtpEd25519StepUp:s}),T=Sa(C,w,await xa(C,{touchConfirm:y,signingAuthPlan:w.preparedStepUp.confirmationAuthPayload.signingAuthPlan,nearPublicKeyStr:S.nearPublicKey,onEvent:d,title:i.title,body:i.body,confirmationConfigOverride:i.confirmationConfigOverride,request:{kind:`nep413`,message:i.message,recipient:i.recipient}})),ne=await rt({signingSessionPlan:x,signingOperation:te,commandKind:Je.PreparePayload,execute:async()=>await Ca(C,T)}),E=await Ta(C,async()=>{let e=await wa(C,ne,r);return{type:kt.SignNep413MessageSuccess,payload:{accountId:v,publicKey:e.signerPublicKey,signature:p(m(e.signatureB64u)),state:i.state||void 0}}});return{success:!0,accountId:E.payload.accountId,publicKey:E.payload.publicKey,signature:E.payload.signature,state:E.payload.state||void 0}}function ja(e){let t=e.thresholdKeyMaterial;if(!t)throw Error(`Missing threshold key material for ${e.nearAccountId}`);let n=String(t.publicKey||``).trim();if(!n)throw Error(`Missing threshold signing public key for ${e.nearAccountId}`);if(!String(e.relayerUrl||``).trim())throw Error(`Missing relayerUrl (required for threshold-signer)`);let r=g(t.participants.map(e=>e.id));if(!r||r.length<2)throw Error(`Invalid threshold signing participantIds (expected >=2 participants, got [${(r||[]).join(`,`)}])`);return{nearPublicKey:n,threshold:{thresholdKeyMaterial:t}}}async function Ma(e){if(e.chain!==`near`)throw Error(`[NearSigningFlow] invalid chain`);return e.kind===`transactionWithActions`?(Na(e.payload),await qi(e.payload)):e.kind===`delegateAction`?(Fa(e.payload),await Oa(e.payload)):e.kind===`nep413`?(Ia(e.payload),await Aa(e.payload)):e}function Na(e){let t=String(e.nearAccount?.accountId||``).trim();if(!t)throw Error(`[NearSigningFlow] nearAccount is required`);if(String(e.rpcCall?.nearAccountId||``).trim()!==t)throw Error(`[NearSigningFlow] rpcCall.nearAccountId must match nearAccount.accountId`);let n=e.transactions;Array.isArray(n)&&Dn(n),Pa(e.transaction,0)}function Pa(e,t){if(!String(e?.receiverId||``).trim())throw Error(`[NearSigningFlow] transactions[${t}].receiverId is required`);let n=Array.isArray(e?.actions)?e.actions:[];if(n.length===0)throw Error(`[NearSigningFlow] transactions[${t}].actions must be non-empty`);n.forEach(ze)}function Fa(e){let t=String(e.nearAccount?.accountId||``).trim();if(!t)throw Error(`[NearSigningFlow] nearAccount is required`);if(String(e.rpcCall?.nearAccountId||``).trim()!==t)throw Error(`[NearSigningFlow] rpcCall.nearAccountId must match nearAccount.accountId`);if(!String(e.delegate?.receiverId||``).trim())throw Error(`[NearSigningFlow] delegate.receiverId is required`);let n=Array.isArray(e.delegate?.actions)?e.delegate.actions:[];if(n.length===0)throw Error(`[NearSigningFlow] delegate.actions must be non-empty`);n.forEach(e=>ze(Le(e)))}function Ia(e){let t=String(e.nearAccount?.accountId||``).trim();if(!t)throw Error(`[NearSigningFlow] nearAccount is required for NEP-413`);if(String(e.payload?.accountId||``).trim()!==t)throw Error(`[NearSigningFlow] payload.accountId must match nearAccount.accountId`);if(!String(e.payload?.recipient||``).trim())throw Error(`[NearSigningFlow] recipient is required for NEP-413`);if(!String(e.payload?.message||``).trim())throw Error(`[NearSigningFlow] message is required for NEP-413`)}async function La(e){return await yt({...e,labels:{queue:`threshold Ed25519 commit queue`,queuedOperation:`threshold Ed25519 queued commit`},owner:String(e.nearAccountId)})}var Ra=e({signDelegateAction:()=>Do,signNEP413Message:()=>Ao,signNear:()=>Ha,signTransactionWithActions:()=>Co});function za(e){if(!(e instanceof ot))return;let t=e.authorizationDecision;if(!(!t||t.kind!==`step_up_required`||!(`request_id`in t.step_up)))return{kind:`step_up_required`,reason:t.reason,step_up:t.step_up}}function Ba(e){let t=za(e),n=ct(e);return t?_t(n??{kind:`exhausted`,source:`server_prepare`,detail:`Server requires owner operation step-up`}):n?.kind===`in_flight`?_t(n):null}async function Va(e){if(e.failure?.kind!==`expired`)return;let t=St({source:{kind:`ed25519`,laneIdentity:Oe(e.lane)},expiresAtMs:e.expiresAtMs,detectedAtMs:Date.now()});if((await e.coordinator.invalidateExpiredWalletSession({state:t,source:oe.serverRejection})).kind===`unavailable`)throw Error(`[SigningEngine][near] expired Wallet Session cleanup failed`)}async function Ha(e,t){if(t.kind===`transactionWithActions`){let n=e.getSignerWorkerContext(),r=u(n.touchConfirm?.getContext().surfaceMeasurementBinding);return r&&(r.assertPending(),e={...e,getSignerWorkerContext:jo.bind(null,n,r.beforeSigning)}),await Co(e,t.args)}if(t.kind===`delegateAction`)return await Do(e,t.args);if(t.kind===`nep413`)return await Ao(e,t.args);throw Error(`[SigningEngine] unsupported near signing intent: ${String(t.kind||``)}`)}function Ua(){let e=h(32,`NEAR transaction signing operation IDs`);return z.signingOperation(`near-transaction-sign:${e}`)}function Wa(e){return e.state===`missing`?{state:e.state,curve:e.curve,chain:e.chain}:{authMethod:ue(e.auth),walletId:e.walletId,nearAccountId:e.nearAccountId,nearEd25519SigningKeyId:e.nearEd25519SigningKeyId,signerSlot:e.signerSlot,state:e.state,source:e.source||`unknown`,...e.authorizationState===`authorized`?{walletSessionId:e.authorization.operationCredential.walletSessionId,quotaId:e.authorization.session.quotaId}:{},thresholdSessionId:e.thresholdSessionId,remainingUses:e.remainingUses,expiresAtMs:e.expiresAtMs}}function Ga(e){let t=e?.candidates.ed25519.near||[];return{generation:e?.generation||0,candidateCount:t.length,candidates:t.map(Wa)}}function Ka(e,t,n){try{e?.(I({...n,flowId:`signing:near:${String(t)}:${n.phase}`,accountId:String(t)}))}catch{}}function qa(e){if(Ee(e.signingLane.identity)!==Ee(e.transactionLane.identity))throw Error(`[SigningEngine][near] prepared signing lane drifted from selected transaction lane`)}function Ja(e,t){let n=e.identity.signer,r=t.identity.signer;return String(n.account.wallet.walletId)===String(r.account.wallet.walletId)&&String(n.account.nearAccountId)===String(r.account.nearAccountId)&&String(n.nearEd25519SigningKeyId)===String(r.nearEd25519SigningKeyId)&&n.signerSlot===r.signerSlot&&B(e.auth)===B(t.auth)}function Ya(e){let t=e.readiness.status;return t===`ready`?{status:`ready`,remainingUses:Math.max(0,Math.floor(Number(e.readiness.remainingUses)||0)),expiresAtMs:Math.max(0,Math.floor(Number(e.readiness.expiresAtMs)||0))}:t===`expired`||t===`exhausted`||t===`status_unknown`?t===`status_unknown`?{status:t,reason:`trusted wallet budget status is unavailable`}:{status:t}:t===`auth_unavailable`||t===`status_unavailable`?{status:t,reason:t}:{status:`status_unavailable`,reason:t}}function Xa(e){if(e.curve!==`ed25519`||e.keyKind!==`threshold_ed25519`)throw Error(`[SigningEngine][near] prepared signing lane is not Ed25519`);if(e.chainFamily!==`near`)throw Error(`[SigningEngine][near] prepared Ed25519 lane must target NEAR`);let t=String(e.thresholdSessionId||``).trim(),n=String(e.walletSessionId||``).trim(),r=String(e.quotaId||``).trim();if(!t||!n||!r)throw Error(`[SigningEngine][near] prepared Ed25519 lane is missing session identity`);return{...e,curve:`ed25519`,keyKind:`threshold_ed25519`,chainFamily:`near`,walletSessionId:z.walletSession(n),quotaId:z.walletSessionQuota(r),thresholdSessionId:z.thresholdEd25519Session(t)}}function Za(e){if(e.authorization.kind!==`authorized`)return null;let t=e.authorization.authorization;return{walletSessionId:t.operationCredential.walletSessionId,quotaId:t.session.quotaId}}async function Qa(e){let t=e.preparedOperation,n=t.lane;Fe(`near`,n,{reason:`near_transaction_auth_planning`});let r=e.commandSubject.nearAccount.accountId,i={accountId:r,intent:de.TransactionSign,curve:`ed25519`},a=t.signingSessionPlan;if(a.kind===R.NotReady)throw console.warn(`[SigningEngine][near][ed25519] transaction auth planning not ready`,{nearAccountId:r,authMethod:ue(n.auth),reason:a.reason,readiness:t.readiness.status,walletSessionId:n.walletSessionId,quotaId:n.quotaId,thresholdSessionId:n.thresholdSessionId,retention:n.retention,remainingUses:t.remainingUses,expiresAtMs:t.expiresAtMs}),a.reason===`policy_blocked`?Error(`[SigningEngine] NEAR operation requires passkey authentication after Email OTP login`):Error(`[SigningEngine][near] signing session is not ready: ${a.reason}`);return{signingAuthPlan:nt({plan:a,accountId:i.accountId,intent:i.intent,curve:i.curve,expiresAtMs:t.expiresAtMs,remainingUses:t.remainingUses}),signingLane:n}}function $a(e){let t=String(e.providedThresholdSessionId||``).trim(),n=String(e.identity.thresholdSessionId||``).trim();if(t&&t!==n)throw Error(`[SigningEngine][near] transaction thresholdSessionId must match prepared Ed25519 identity`);return n}function eo(e){switch(e.authorization.kind){case`authorized`:return!1;case`authorization_required`:return!0;default:throw e.authorization,Error(`[SigningEngine][near] unsupported material authorization state`)}}function to(e){if(e.authorization.kind!==`authorized`)throw Error(`[SigningEngine][near] reusable Wallet Session authorization is unavailable`);return e.authorization.authorization.status.expiresAtMs}async function no(e){let t={walletId:k(e.commandSubject.walletSession.walletId),nearAccountId:N(e.commandSubject.nearAccount.accountId)};return e.materialIdentity?await e.deps.prepareNearEd25519YaoMaterialBoundary({...t,materialIdentity:e.materialIdentity}):await e.deps.prepareNearEd25519YaoMaterialBoundary({...t,laneIdentity:e.selectedLane.identity,auth:e.selectedLane.auth})}function ro(e,t){return z.signingOperation(e.createSigningSessionId(`near-${t}-operation`))}function io(e){return{kind:`prepared_near_transaction_execution`,thresholdSessionId:e.thresholdSessionId,signingSessionPlan:e.preparedSigningSession.preparedOperation.signingSessionPlan,signingAuthPlan:e.preparedSigningSession.signingAuthPlan,signingLane:e.preparedSigningSession.signingLane,signingSessionCoordinator:e.signingSessionCoordinator,transactionOperation:e.preparedSigningSession.transactionOperation,passkeyEd25519OperationStepUp:e.passkeyEd25519OperationStepUp,emailOtpEd25519StepUp:e.emailOtpEd25519StepUp}}function ao(e){return vt({walletId:String(e.walletId),curve:`ed25519`,walletSessionId:String(e.prepared.signingLane.walletSessionId),quotaId:String(e.prepared.signingLane.quotaId),projectionVersion:`server-owned`,authorityKey:B(e.prepared.signingLane.auth),targetKey:`near:${String(e.nearAccountId)}`})}function oo(e){if(e.prepared.kind!==`authorized`)throw Error(`[SigningEngine][near] deferred Ed25519 material has no reusable session`);return vt({walletId:String(e.walletId),curve:`ed25519`,walletSessionId:String(e.prepared.selectedLane.walletSessionId),quotaId:String(e.prepared.selectedLane.quotaId),projectionVersion:`projection-unadmitted`,authorityKey:B(e.prepared.selectedLane.auth),targetKey:`near:${String(e.nearAccountId)}`})}function so(e){if(e.auth.kind!==`passkey`)return;let t=e.auth;return{prepare:async()=>{let n=e.signer,r=await lo({authorityRef:co(e.preparation),walletId:n.account.wallet.walletId,rpId:t.rpId,credentialIdB64u:t.credentialIdB64u});return{thresholdSessionId:e.thresholdSessionId,authority:r}}}}function co(e){switch(e.hydration.kind){case`use_live_runtime`:case`rehydrate_material_activation`:case`reauthorize_public_anchor`:return e.hydration.authority;case`blocked`:throw Error(`[SigningEngine][near] blocked Passkey material has no authority`);default:throw e.hydration,Error(`[SigningEngine][near] unsupported Passkey material authority`)}}async function lo(e){let t=v({walletId:e.walletId,factor:{kind:`passkey`,credentialIdB64u:e.credentialIdB64u},verifier:{kind:`webauthn`,rpId:e.rpId},bindingId:e.authorityRef.walletAuthMethodId});if(!t)throw Error(`[SigningEngine][near] exact Passkey step-up authority is invalid`);let n=await y({authority:t});if(n.walletId!==e.authorityRef.walletId||n.walletAuthMethodId!==e.authorityRef.walletAuthMethodId||n.authorityDigest!==e.authorityRef.authorityDigest)throw Error(`[SigningEngine][near] exact Passkey step-up authority changed`);return t}function uo(e){if(e.auth.kind!==A.emailOtp||typeof e.deps.requestEmailOtpEd25519SigningChallenge!=`function`||!e.preparation.hydration.materialActivation)return;if(String(e.signer.account.wallet.walletId)!==String(e.commandSubject.walletSession.walletId)||String(e.signer.account.nearAccountId)!==String(e.commandSubject.nearAccount.accountId))throw Error(`[SigningEngine][near] Email OTP step-up lane changed subject`);let t=async t=>{let n=await e.deps.requestEmailOtpEd25519SigningChallenge({walletSession:e.commandSubject.walletSession,operationFingerprintDigest:t.operationFingerprintDigest});return Ka(e.onEvent,e.commandSubject.nearAccount.accountId,{phase:L.STEP_06_AUTH_EMAIL_OTP_INPUT_REQUIRED,status:`waiting_for_user`,interaction:{kind:`otp_input`,overlay:`show`},data:{emailHint:n.emailHint,demoOtpCode:he(n.delivery)}}),n};return{prepare:t,resend:t}}async function fo(e){let t=Dt({availableLanes:await bo({deps:e.deps,commandSubject:e.commandSubject,authMethod:null}),intent:_o({commandSubject:e.commandSubject,signerSlot:e.signerSlot,authSelectionPolicy:{kind:`any`},operationUsesNeeded:1})});if(!t.ok)throw Error(`[SigningEngine][near] signature-only signing requires exact Ed25519 material`);if(t.kind===`authorization_required`){let n=t.candidate,r=De({walletId:n.walletId,nearAccountId:n.nearAccountId,nearEd25519SigningKeyId:n.nearEd25519SigningKeyId,signerSlot:n.signerSlot}),i={kind:`near_ed25519_material_identity`,signer:r,auth:n.auth,thresholdSessionId:z.thresholdEd25519Session(n.thresholdSessionId)},a=await no({deps:e.deps,commandSubject:e.commandSubject,materialIdentity:i});return{kind:`authorization_required`,candidate:n,materialIdentity:i,forceFreshAuth:!0,passkeyEd25519OperationStepUp:so({auth:n.auth,signer:r,thresholdSessionId:i.thresholdSessionId,preparation:a.preparation})||null,emailOtpEd25519StepUp:uo({deps:e.deps,commandSubject:e.commandSubject,auth:n.auth,signer:r,preparation:a.preparation,onEvent:e.onEvent})||null,yaoSigningPreparation:a.preparation,yaoMaterialExecutor:a.executor}}let n=t.lane,r=await no({deps:e.deps,commandSubject:e.commandSubject,selectedLane:n});return{kind:`authorized`,selectedLane:n,forceFreshAuth:e.attempt.forceFreshAuth||eo(r.preparation),passkeyEd25519OperationStepUp:so({auth:n.auth,signer:n.identity.signer,thresholdSessionId:n.identity.thresholdSessionId,preparation:r.preparation})||null,emailOtpEd25519StepUp:uo({deps:e.deps,commandSubject:e.commandSubject,auth:n.auth,signer:n.identity.signer,preparation:r.preparation,onEvent:e.onEvent})||null,yaoSigningPreparation:r.preparation,yaoMaterialExecutor:r.executor}}async function po(e){let t=bt({materialActivation:e.materialActivation});return await e.deps.withThresholdEd25519CommitQueue({queueKey:t,nearAccountId:e.nearAccountId,enabled:!0,task:e.task})}async function mo(e){let t=Dt({availableLanes:await bo({deps:e.deps,commandSubject:e.commandSubject,authMethod:null}),intent:_o({commandSubject:e.commandSubject,signerSlot:e.input.signerSlot,authSelectionPolicy:{kind:`any`},operationUsesNeeded:En(e.input.transaction)})});if(!t.ok||t.kind!==`authorization_required`)return null;let n=t.candidate,r=De({walletId:n.walletId,nearAccountId:n.nearAccountId,nearEd25519SigningKeyId:n.nearEd25519SigningKeyId,signerSlot:n.signerSlot}),i={kind:`near_ed25519_material_identity`,signer:r,auth:n.auth,thresholdSessionId:z.thresholdEd25519Session(n.thresholdSessionId)},a=await no({deps:e.deps,commandSubject:e.commandSubject,materialIdentity:i});return{candidate:n,preparation:a.preparation,executor:a.executor,passkeyEd25519OperationStepUp:so({auth:n.auth,signer:r,thresholdSessionId:i.thresholdSessionId,preparation:a.preparation})||null,emailOtpEd25519StepUp:uo({deps:e.deps,commandSubject:e.commandSubject,auth:n.auth,signer:r,preparation:a.preparation,onEvent:e.input.onEvent})||null}}function ho(e){switch(e.hydration.kind){case`use_live_runtime`:case`rehydrate_material_activation`:return e.hydration.materialActivation;case`reauthorize_public_anchor`:throw Error(`[SigningEngine][near] retired public material cannot enter the material commit queue`);case`blocked`:throw Error(`[SigningEngine][near] blocked material cannot enter the material commit queue: ${e.hydration.reason}`)}throw e.hydration,Error(`[SigningEngine][near] unsupported material hydration plan`)}function go(e){let t=e.authSelectionPolicy||null;if(!t)return null;let n=Ct(xt(wt(_o({commandSubject:e.commandSubject,signerSlot:e.signerSlot,authSelectionPolicy:t,operationUsesNeeded:e.operationUsesNeeded})),{availableLanes:e.availableLanes}));if(n.tag===`LaneSelected`){if(n.lane.curve!==`ed25519`||n.availableLane.curve!==`ed25519`)throw Error(`[SigningEngine][near] Ed25519 selector returned a non-Ed25519 lane`);return n}if(n.failure.kind===`no_candidate`)return null;throw Error(`[SigningEngine][near] Ed25519 transaction lane selection failed: ${n.failure.kind}`)}function _o(e){return{walletId:k(e.commandSubject.walletSession.walletId),curve:`ed25519`,chain:`near`,signerSelection:vo({nearAccountId:e.commandSubject.nearAccount.accountId,signerSlot:e.signerSlot}),authSelectionPolicy:e.authSelectionPolicy,operationUsesNeeded:e.operationUsesNeeded}}function vo(e){if(e.signerSlot===void 0)return{kind:`near_account`,nearAccountId:e.nearAccountId};let t=se(e.signerSlot);if(t===null)throw Error(`[SigningEngine][near] signerSlot must be a positive safe integer`);return{kind:`signer_slot`,nearAccountId:e.nearAccountId,signerSlot:t}}function yo(e){return go({availableLanes:e.availableLanes,authSelectionPolicy:{kind:`any`},commandSubject:e.commandSubject,signerSlot:e.signerSlot,operationUsesNeeded:e.operationUsesNeeded})}async function bo(e){let t=e.commandSubject.nearAccount.accountId,n=e.commandSubject.walletSession.walletId;if(typeof e.deps.readAvailableSigningLanesForSigning!=`function`)throw Error(`[SigningEngine][near] transaction signing requires available signing lanes reader`);let r=await e.deps.resolveOwnerLaneScope(n);return await e.deps.readAvailableSigningLanesForSigning({walletId:n,curve:`ed25519`,ownerScope:r,...e.authMethod?{authMethod:e.authMethod}:{}}).catch(e=>(console.warn(`[SigningEngine][near] available signing lanes read failed`,{nearAccountId:t,error:e instanceof Error?e.message:String(e||`unknown error`)}),null))}async function xo(e){let t=e.commandSubject.nearAccount.accountId,n=Math.max(1,Math.floor(Number(e.operationUsesNeeded)||1)),r=e.selectedLane.lane,i=da({commandSubject:e.commandSubject,selectedLane:r,preparation:e.preparation,forceFreshAuth:e.forceFreshAuth,requiredSignatureUses:n}),a=i.lane;qa({signingLane:a,transactionLane:e.selectedLane.lane});let o={readiness:i.coordinatorInput.readiness,expiresAtMs:i.coordinatorInput.expiresAtMs,remainingUses:i.coordinatorInput.remainingUses};r.auth.kind===`email_otp`&&o.readiness.status!==`ready`&&console.warn(`[SigningEngine][near][email-otp] Ed25519 pre-confirm readiness is not ready`,{nearAccountId:t,readiness:o.readiness.status,thresholdSessionId:r.thresholdSessionId,walletSessionId:r.walletSessionId,quotaId:r.quotaId,retention:a.retention,remainingUses:o.remainingUses,expiresAtMs:o.expiresAtMs,requiredSignatureUses:n}),Pe(`near`,Ie({event:`pre_confirm_readiness_checked`,lane:a,readinessStatus:o.readiness.status,phase:`pre_confirm`}));let s=Ot(e.selectedLane,Ya({readiness:o.readiness,expiresAtMs:o.expiresAtMs,remainingUses:o.remainingUses,usesNeeded:n})),c=Tt(s),l=Xa(a),u=Za(e.preparation),d={readiness:o.readiness,expiresAtMs:o.expiresAtMs,remainingUses:o.remainingUses,usesNeeded:n,...u?{trustedStatusAuth:u}:{}};return{lane:a,transactionLane:e.selectedLane.lane,transactionIntent:e.selectedLane.intent,readiness:d,availableLanesGeneration:e.availableLanes?.generation||0,metadata:{transactionLane:e.selectedLane.lane,transactionOperation:c,transactionReadinessState:s,identity:l,availableLanesGeneration:e.availableLanes?.generation||0,readiness:d}}}async function So(e){let t=e.commandSubject.nearAccount.accountId,n=En(e.input.transaction),r=await bo({deps:e.deps,commandSubject:e.commandSubject,authMethod:null}),i=yo({commandSubject:e.commandSubject,availableLanes:r,signerSlot:e.input.signerSlot,operationUsesNeeded:n});if(!i)throw console.warn(`[SigningEngine][near][ed25519] exact transaction lane selection failed ${JSON.stringify({nearAccountId:t,signerSlot:e.input.signerSlot??null,requiredSignatureUses:n,availableLanes:Ga(r)})}`),Error(`[SigningEngine][near] Ed25519 transaction signing requires an exact selected lane`);let a={kind:`account_class`,authMethod:ue(i.lane.auth)},o=await no({deps:e.deps,commandSubject:e.commandSubject,selectedLane:i.lane});if(o.preparation.authorization.kind===`authorized`){let t=o.preparation.authorization.authorization;if(i.lane.walletSessionId!==t.operationCredential.walletSessionId||i.lane.quotaId!==t.session.quotaId){r=await bo({deps:e.deps,commandSubject:e.commandSubject,authMethod:ue(i.lane.auth)});let a=yo({commandSubject:e.commandSubject,availableLanes:r,signerSlot:e.input.signerSlot,operationUsesNeeded:n});if(!a||!Ja(i.lane,a.lane)||a.lane.walletSessionId!==t.operationCredential.walletSessionId||a.lane.quotaId!==t.session.quotaId)throw Error(`[SigningEngine][near] material restoration changed the Wallet Session without an exact refreshed lane`);i=a}}let s=e.forceFreshAuth===!0||eo(o.preparation),c=await Et({intent:_o({commandSubject:e.commandSubject,signerSlot:e.input.signerSlot,authSelectionPolicy:a,operationUsesNeeded:n}),coordinator:e.signingSessionCoordinator,forceFreshAuth:s,sensitiveOperationPolicy:e.input.sensitivePolicy||j.inheritSessionPolicy,onPlannerTrace:e=>Ne(`near`,e),lifecycleAdapter:{prepare:async()=>{let t=await xo({deps:e.deps,commandSubject:e.commandSubject,signingSessionCoordinator:e.signingSessionCoordinator,availableLanes:r,selectedLane:i,preparation:o.preparation,forceFreshAuth:s,operationUsesNeeded:n});return{...t,metadata:t.metadata}}}}),l=c.thresholdOperation,u=c.transactionOperation,d=l.lane,f=u.lane,p=l.metadata.identity,{signingAuthPlan:m}=await Qa({commandSubject:e.commandSubject,preparedOperation:l});return{preparation:o.preparation,signingAuthPlan:m,signingLane:d,transactionLane:f,identity:p,thresholdSessionId:z.thresholdEd25519Session($a({providedThresholdSessionId:e.input.thresholdSessionId,identity:p})),availableLanesGeneration:l.availableLanesGeneration,preparedOperation:l,transactionOperation:u}}async function Co(e,t){let n=performance.now();await e.touchConfirm.openTransactionPreparationModal({chain:`near`,walletLabel:String(t.commandSubject.nearAccount.accountId),txSigningRequests:[t.transaction],model:zt({txSigningRequests:[t.transaction],signerAccount:String(t.commandSubject.nearAccount.accountId),title:t.title,subtitle:t.body}),confirmationConfigOverride:t.confirmationConfigOverride});try{let r=Ua();return U(String(r),`preparation_modal`,n),await wo(e,t,{signingOperationState:it({operationId:r})})}finally{e.touchConfirm.closeTransactionPreparationModal()}}async function wo(e,t,n){let r=t.commandSubject.nearAccount,i=N(r.accountId),a={signerSlot:t.signerSlot,confirmationConfigOverride:t.confirmationConfigOverride,title:t.title,body:t.body,onEvent:t.onEvent},o=n.signingOperationState.operationId,s=n.signingSessionCoordinator||e.signingSessionCoordinator,c=performance.now(),l=await mo({deps:e,input:t,commandSubject:t.commandSubject,operationId:o});if(U(String(o),`authorization_probe`,c),l){let o=e.getSignerWorkerContext();return await po({deps:e,nearAccountId:i,materialActivation:ho(l.preparation),task:async()=>await Ma({chain:`near`,kind:`transactionWithActions`,payload:{ctx:o,commandSubject:t.commandSubject,nearAccount:r,transaction:t.transaction,rpcCall:t.rpcCall,signerSlot:a.signerSlot,confirmationConfigOverride:a.confirmationConfigOverride,title:a.title,body:a.body,onEvent:a.onEvent,signingOperationState:n.signingOperationState,signingSessionCoordinator:s,selection:{kind:`authorization_required`,candidate:l.candidate},passkeyEd25519OperationStepUp:l.passkeyEd25519OperationStepUp||void 0,emailOtpEd25519StepUp:l.emailOtpEd25519StepUp||void 0,sensitivePolicy:t.sensitivePolicy,yaoSigningPreparation:l.preparation,yaoMaterialExecutor:l.executor}})})}let u=performance.now(),d=await So({deps:e,input:t,commandSubject:t.commandSubject,signingSessionCoordinator:s,operationId:o,forceFreshAuth:n.forceFreshAuth===!0});U(String(o),`lane_preparation`,u);let f=performance.now(),p=d.preparation.authorization,m=d.signingAuthPlan,h=d.signingLane,g=d.transactionLane,_=d.thresholdSessionId;qa({signingLane:h,transactionLane:g});try{return await po({deps:e,nearAccountId:i,materialActivation:ho(d.preparation),task:async()=>{let i=e.getSignerWorkerContext(),c=await no({deps:e,commandSubject:t.commandSubject,selectedLane:g}),l=so({auth:g.auth,signer:g.identity.signer,thresholdSessionId:_,preparation:c.preparation}),u=uo({deps:e,commandSubject:t.commandSubject,auth:g.auth,signer:g.identity.signer,preparation:c.preparation,onEvent:a.onEvent}),p=io({preparedSigningSession:d,thresholdSessionId:_,signingSessionCoordinator:s,passkeyEd25519OperationStepUp:l||null,emailOtpEd25519StepUp:u||null}),m={thresholdSessionId:p.thresholdSessionId,signingSessionPlan:p.signingSessionPlan,signingAuthPlan:p.signingAuthPlan,signingLane:p.signingLane},h={ctx:i,commandSubject:t.commandSubject,nearAccount:r,transaction:t.transaction,rpcCall:t.rpcCall,signerSlot:a.signerSlot,confirmationConfigOverride:a.confirmationConfigOverride,title:a.title,body:a.body,onEvent:a.onEvent,signingOperationState:n.signingOperationState,signingSessionCoordinator:p.signingSessionCoordinator,selection:{kind:`authorized`,selectedLane:g},transactionOperation:p.transactionOperation,ed25519SigningBoundary:m,yaoSigningPreparation:c.preparation,yaoMaterialExecutor:c.executor,...p.passkeyEd25519OperationStepUp?{passkeyEd25519OperationStepUp:p.passkeyEd25519OperationStepUp}:{},...p.emailOtpEd25519StepUp?{emailOtpEd25519StepUp:p.emailOtpEd25519StepUp}:{}};return U(String(o),`execution_setup`,f),await Ma({chain:`near`,kind:`transactionWithActions`,payload:h})}})}catch(r){let o=m.kind===Ge.PasskeyReauth||m.kind===Ge.EmailOtpReauth,c=za(r),l=Ba(r),u=ut(r),f=c?.kind===`step_up_required`;if(!n.retryingFreshAuth&&!o&&p.kind===`authorized`&&(f||l)){if(l?.kind===`wait_and_retry_admission`)return await at(l.retryAfterMs),await wo(e,t,{forceFreshAuth:!1,signingOperationState:n.signingOperationState,retryingFreshAuth:n.retryingFreshAuth,signingSessionCoordinator:s});await Va({failure:u,coordinator:s,lane:d.transactionLane,expiresAtMs:p.authorization.status.expiresAtMs});let r=g.auth.kind===`email_otp`,o=c?.kind===`step_up_required`?c.reason:void 0,f=l?l.reason===`stale_projection`?`wallet_signing_budget_stale_projection`:`wallet_signing_budget_exhausted`:o===`wallet_session_missing`?`threshold_session_missing`:`threshold_session_expired`;if(Ka(a.onEvent,i,{phase:r?L.STEP_06_AUTH_EMAIL_OTP_CHALLENGE_STARTED:L.STEP_09_THRESHOLD_SESSION_RECONNECT_STARTED,status:`running`,message:r?`Signing session needs reauthorization; requesting Email OTP`:`Signing session needs reauthorization; requesting passkey`,interaction:{kind:`none`,overlay:`none`},data:{chain:`near`,reason:f}}),l?.kind===`request_fresh_step_up`){let r=ao({walletId:t.commandSubject.walletSession.walletId,nearAccountId:i,prepared:d});return await s.runWalletSessionQuotaAdmissionRetry({queueKey:r,refresh:async()=>await wo(e,t,{forceFreshAuth:!0,signingOperationState:n.signingOperationState,retryingFreshAuth:!0,signingSessionCoordinator:s}),retryAfterRefresh:async()=>await wo(e,t,{forceFreshAuth:!1,signingOperationState:n.signingOperationState,retryingFreshAuth:n.retryingFreshAuth,signingSessionCoordinator:s})})}return await wo(e,t,{forceFreshAuth:!0,signingOperationState:n.signingOperationState,retryingFreshAuth:!0,signingSessionCoordinator:s})}throw r}}async function To(e){return await Ma({chain:`near`,kind:`delegateAction`,payload:{ctx:e.deps.getSignerWorkerContext(),commandSubject:e.input.commandSubject,nearAccount:e.input.commandSubject.nearAccount,delegate:e.input.delegate,rpcCall:e.normalizedRpcCall,signingSessionCoordinator:e.deps.signingSessionCoordinator,signerSlot:e.input.signerSlot,confirmationConfigOverride:e.input.confirmationConfigOverride,title:e.input.title,body:e.input.body,onEvent:e.input.onEvent,operationId:e.operationId,forceFreshAuth:e.prepared.forceFreshAuth,selection:e.prepared.kind===`authorized`?{kind:`authorized`,selectedLane:e.prepared.selectedLane}:{kind:`authorization_required`,candidate:e.prepared.candidate},passkeyEd25519OperationStepUp:e.prepared.passkeyEd25519OperationStepUp,emailOtpEd25519StepUp:e.prepared.emailOtpEd25519StepUp,yaoSigningPreparation:e.prepared.yaoSigningPreparation,yaoMaterialExecutor:e.prepared.yaoMaterialExecutor}})}async function Eo(e){let t=N(e.input.commandSubject.nearAccount.accountId),n=await fo({deps:e.deps,commandSubject:e.input.commandSubject,signerSlot:e.input.signerSlot,operationId:e.operationId,onEvent:e.input.onEvent,attempt:e.attempt}),r={nearRpcUrl:e.input.rpcCall.nearRpcUrl||e.deps.nearRpcUrl,nearAccountId:t};try{return await po({deps:e.deps,nearAccountId:t,materialActivation:ho(n.yaoSigningPreparation),task:To.bind(void 0,{deps:e.deps,input:e.input,operationId:e.operationId,prepared:n,normalizedRpcCall:r})})}catch(r){let i=za(r),a=Ba(r);if(e.attempt.kind===`initial`&&a){if(a.kind===`wait_and_retry_admission`)return await at(a.retryAfterMs),await Eo(e);let r=oo({walletId:e.input.commandSubject.walletSession.walletId,nearAccountId:t,prepared:n});return await e.deps.signingSessionCoordinator.runWalletSessionQuotaAdmissionRetry({queueKey:r,refresh:async()=>await Eo({...e,attempt:{kind:`fresh_auth_retry`,forceFreshAuth:!0}}),retryAfterRefresh:async()=>await Eo({...e,attempt:{kind:`initial`,forceFreshAuth:!1}})})}let o=ut(r);if(e.attempt.kind===`initial`&&!n.forceFreshAuth&&i)return await Va({failure:o,coordinator:e.deps.signingSessionCoordinator,lane:n.selectedLane,expiresAtMs:to(n.yaoSigningPreparation)}),await Eo({deps:e.deps,input:e.input,operationId:e.operationId,attempt:{kind:`fresh_auth_retry`,forceFreshAuth:!0}});throw r}}async function Do(e,t){try{return await Eo({deps:e,input:t,operationId:ro(e,`delegate`),attempt:{kind:`initial`,forceFreshAuth:!1}})}catch(e){throw console.error(`[SigningEngine][delegate] failed`,e),e}}async function Oo(e){let t=e.input.commandSubject.nearAccount;return await Ma({chain:`near`,kind:`nep413`,payload:{ctx:e.deps.getSignerWorkerContext(),commandSubject:e.input.commandSubject,nearAccount:t,signingSessionCoordinator:e.deps.signingSessionCoordinator,onEvent:e.input.onEvent,forceFreshAuth:e.prepared.forceFreshAuth,selection:e.prepared.kind===`authorized`?{kind:`authorized`,selectedLane:e.prepared.selectedLane}:{kind:`authorization_required`,candidate:e.prepared.candidate},passkeyEd25519OperationStepUp:e.prepared.passkeyEd25519OperationStepUp,emailOtpEd25519StepUp:e.prepared.emailOtpEd25519StepUp,yaoSigningPreparation:e.prepared.yaoSigningPreparation,yaoMaterialExecutor:e.prepared.yaoMaterialExecutor,payload:{message:e.input.message,recipient:e.input.recipient,nonce:e.input.nonce,state:e.input.state,accountId:t.accountId,signerSlot:e.input.signerSlot,title:e.input.title,body:e.input.body,confirmationConfigOverride:e.input.confirmationConfigOverride,operationId:e.operationId}}})}async function ko(e){let t=N(e.input.commandSubject.nearAccount.accountId),n=await fo({deps:e.deps,commandSubject:e.input.commandSubject,signerSlot:e.input.signerSlot,operationId:e.operationId,onEvent:e.input.onEvent,attempt:e.attempt});try{return await po({deps:e.deps,nearAccountId:t,materialActivation:ho(n.yaoSigningPreparation),task:Oo.bind(void 0,{deps:e.deps,input:e.input,operationId:e.operationId,prepared:n})})}catch(t){let r=za(t),i=ut(t);if(e.attempt.kind===`initial`&&!n.forceFreshAuth&&r!==void 0)return await Va({failure:i,coordinator:e.deps.signingSessionCoordinator,lane:n.selectedLane,expiresAtMs:to(n.yaoSigningPreparation)}),await ko({deps:e.deps,input:e.input,operationId:e.operationId,attempt:{kind:`fresh_auth_retry`,forceFreshAuth:!0}});throw t}}async function Ao(e,t){try{return await ko({deps:e,input:t,operationId:ro(e,`nep413`),attempt:{kind:`initial`,forceFreshAuth:!1}})}catch(e){return console.error(`SigningEngine: NEP-413 signing error:`,e),{success:!1,error:e instanceof Error?e.message:String(e||`Unknown error`)}}}function jo(e,t){return{...e,beforeSigning:t}}export{jt as _,aa as a,_r as c,fr as d,ur as f,Rt as g,Lt as h,oa as i,vr as l,Bt as m,Ra as n,ia as o,tr as p,La as r,Oi as s,Ha as t,xr as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./bytes-t5S5mkat.js";import{a as t,r as n}from"./evmCryptoWasm-CwEXiLrC.js";var r=class{constructor(e){this.chain=`evm`,this.workerCtx=e}async buildIntent(r){if(r.chain!==`evm`)throw Error(`[EvmAdapter] invalid chain`);if(r.kind!==`eip1559`)throw Error(`[EvmAdapter] unsupported request kind`);let i=await n(r.tx,this.workerCtx),a=e(i);return{chain:`evm`,uiModel:{kind:`eip1559`,tx:r.tx},signRequests:[{kind:`digest`,algorithm:`secp256k1`,digest32:i,label:`evm:eip1559:sender`}],finalize:async n=>({chain:`evm`,kind:`eip1559`,txHashHex:a,rawTxHex:e(await t({tx:r.tx,signature65:n[0],workerCtx:this.workerCtx}))})}}};function i(e){switch(e.kind){case`eip1559`:case`tempoTransaction`:return 1;default:return e}}export{r as n,i as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{z as e}from"./domainIds-GDzjOs6i.js";const t=`email_otp`,n=[`wallet_unlock`,`transaction_sign`,`export_key`],r=`registration`,i=`device_link`,a={login:`wallet_email_otp_login`,registration:`wallet_email_otp_registration`,recoveryBootstrap:`wallet_email_otp_recovery_bootstrap`,unseal:`wallet_email_otp_unseal`,deviceLink:`wallet_email_otp_device_link`},o=`export_key`,s=`wallet_unlock`,c=`transaction_sign`;function l(e){return n.includes(e)}const u={thresholdEd25519:`threshold-ed25519`,thresholdEcdsa:`threshold-ecdsa`},d={passkey:`passkey`,emailOtp:t},f={passkey:`passkey`,emailOtp:t},p={inheritSessionPolicy:`inherit_session_policy`,requireFreshSameMethod:`require_fresh_same_method`,requirePasskey:`require_passkey`,denyEmailOtp:`deny_email_otp`},m={passkeyRegistration:`passkey_registration`,emailOtpRegistration:`email_otp_registration`,selfHostedImport:`self_hosted_import`},h=Object.values(f);function g(t){return e(t)?.toLowerCase()||``}function _(e){return h.includes(g(e))}export{f as a,a as c,r as d,c as f,m as i,i as l,l as m,d as n,_ as o,s as p,u as r,t as s,p as t,o as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
let e=null,t=null,n=null,r=null;async function i(){return e||=import(`./secp256k1-B_6W9QDJ.js`).then(e=>e.n).then(e=>e.Secp256k1Engine),await e}async function a(){return t||=import(`./webauthnP256-qu06GNFm.js`).then(e=>e.WebAuthnP256Engine),await t}async function o(){return n||=import(`./signEvmWithUiConfirm-ChreN7aZ.js`).then(e=>e.signEvmWithUiConfirm),await n}async function s(){return r||=import(`./signEvmFamilyWithUiConfirmForTempo-DgTbh6jX.js`).then(e=>e.signEvmFamilyWithUiConfirmForTempo),await r}export{a as i,s as n,o as r,i as t};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{i as e}from"./base64-ojm5DKcF.js";import{f as t,t as n}from"./chains-yAls2d9X.js";import{o as r,r as i}from"./canonicalPrimitives-MPGET2cl.js";import{a,c as o,r as s}from"./ecdsaChainTarget-CRcRR78w.js";import{m as c,o as l}from"./sdkSentEvents-_RGAEeld.js";import{r as u}from"./types-M7vxrYtJ.js";import{i as d}from"./helpers-D4QckQhq.js";import{r as f}from"./operationFingerprint-DtQb0pdp.js";import{i as p}from"./trace-M34pNGuF.js";import{t as m}from"./EvmClient-DoxytQaJ.js";import{a as h,i as g,o as _,r as v}from"./promptText-s8TQ6ckX.js";import{E as ee,T as te,_ as y,a as ne,b as re,g as b,i as x,o as ie,r as S,s as ae,y as oe}from"./operationFingerprint-5-wH2Ht8.js";import{a as C,i as w,r as T,t as se}from"./bytes-t5S5mkat.js";const E=/^0x[0-9a-f]{40}$/,D=Object.freeze({"0x06fdde03":`name()`,"0x095ea7b3":`approve(address,uint256)`,"0x18160ddd":`totalSupply()`,"0x23b872dd":`transferFrom(address,address,uint256)`,"0x2e1a7d4d":`withdraw(uint256)`,"0x313ce567":`decimals()`,"0x42842e0e":`safeTransferFrom(address,address,uint256)`,"0x47e1da2a":`executeBatch(address[],uint256[],bytes[])`,"0x6352211e":`ownerOf(uint256)`,"0x70a08231":`balanceOf(address)`,"0x081812fc":`getApproved(uint256)`,"0x95d89b41":`symbol()`,"0xa22cb465":`setApprovalForAll(address,bool)`,"0xa9059cbb":`transfer(address,uint256)`,"0xb61d27f6":`execute(address,uint256,bytes)`,"0xb88d4fde":`safeTransferFrom(address,address,uint256,bytes)`,"0xd0e30db0":`deposit()`,"0xd505accf":`permit(address,address,uint256,uint256,uint8,bytes32,bytes32)`,"0xdd62ed3e":`allowance(address,address)`,"0xe985e9c5":`isApprovedForAll(address,address)`,"0xe7897444":`setUserToken(address)`,"0xf2fde38b":`transferOwnership(address)`}),O=Object.freeze({"0xbb442b54c85efba2d7b81ea52990ad638cdba483":Object.freeze({"0xa4136862":`setGreeting(string)`,"0xef690cc0":`greeting()`,"0x867ae9d4":`dripTo(address,address[])`}),"0xeb7ab5a6f761072c96147a54b8a15f012e836691":Object.freeze({"0xa4136862":`setGreeting(string)`,"0xcfae3217":`greet()`})});function k(e){let t=String(e||``).trim().toLowerCase();if(E.test(t))return t}function A(e){return T(e)}function j(e,t){let n=C(e);if(!n)return;let r=k(t);if(r){let e=O[r];if(e&&e[n])return e[n]}return D[n]}function M(e,t){let n=j(e,t);if(n){let e=n.indexOf(`(`),t=(e>0?n.slice(0,e):n).trim();if(t)return`${t}()`}let r=C(e);if(r)return`function ${r}`}function ce(e,t){let n=[];for(let r=0;r<e.length;r+=t)n.push(e.slice(r,r+t));return n}function N(e){let t=w(e,{lowercase:!0});if(t===`0x`)return`data: 0x`;let n=t.slice(2);if(!n)return`data: 0x`;if(n.length<=8)return`data: 0x${n}`;let r=n.slice(0,8),i=ce(n.slice(8),64);return[`data: 0x${r}`,...i].join(`
|
|
2
|
-
`)}function P(e,t){let n=e/t,r=e%t;if(r===0n)return n.toString();let i=r*100n/t;if(i===0n)return n.toString();let a=i.toString().padStart(2,`0`).replace(/0+$/,``);return a?`${n.toString()}.${a}`:n.toString()}function F(e){return e>=1000000n?`${P(e,1000000n)}mil`:e>=1000n?`${P(e,1000n)}k`:e.toString()}function I(e){try{return JSON.stringify(e,(e,t)=>typeof t==`bigint`?t.toString():t,2)}catch{return String(e)}}function L(e,t,n){let r=String(t??``).trim();if(r)return{label:e,value:r,...typeof n==`string`&&n.trim()?{copyValue:n}:{}}}function R(e){let t=w(e.dataHex);if(t!==`0x`&&!(!Array.isArray(e.abi)||e.abi.length===0))return{dataHex:t,abi:e.abi}}function z(e){let t=M(e.selector,e.to),n=!!e.to&&e.dataHex!==`0x`,r=F(e.tx.gasLimit),i=e.to?`Transaction to contract`:`Contract Deployment`,a=L(`Data`,N(e.dataHex),e.dataHex);a&&(a.renderAs=`file-content`,a.hideLabel=!0,a.hideChevron=!0);let o=[a,L(`Value (wei)`,e.valueWei)].filter(Boolean),s;if(n){let n={id:`evm.eip1559.call`,kind:`generic.contractCall`,label:`Calling ${t||`contract function`} using ${r} gas`,to:e.to,value:e.valueWei,selector:e.selector,fields:o},i=R({dataHex:e.dataHex,abi:e.tx.abi});i&&(n.abiDecodeHint=i),s=[n]}return{id:`evm.eip1559`,kind:`generic.contractCall`,label:i,to:e.to,value:e.valueWei,selector:e.selector,...s?{children:s}:{}}}function B(e){let t=e.request;if(t.kind!==`eip1559`)return{chain:`evm`,intentDigest:e.intentDigest,signerAccount:e.signerAccount,title:e.title||`EVM Transaction`,subtitle:e.subtitle,operations:[{id:`evm.raw`,kind:`raw.fallback`,label:`Unsupported EVM Payload`,raw:I(t)}],raw:{format:`json`,value:I(t)}};let n=t.tx,r=n.to==null?void 0:String(n.to).toLowerCase(),i=n.value.toString(),a=w(String(n.data||`0x`)),o=z({to:r,valueWei:i,tx:n,dataHex:a,selector:A(a)}),s=n.value>0n?n.value:void 0;return{chain:`evm`,chainId:n.chainId,intentDigest:e.intentDigest,signerAccount:e.signerAccount,title:e.title||`EVM Transaction`,subtitle:e.subtitle,operations:[o],...s==null?{}:{totals:{nativeValue:s.toString(),nativeSymbol:`wei`}}}}function le(e){let t=o(e.subjectId),n=Y(e.leaseId,`leaseId`),r=Y(e.operationId,`operationId`),i=Y(e.operationFingerprint,`operationFingerprint`),a={chainTarget:e.chainTarget,subjectId:t,sender:q(e.sender),nonce:J(e.nonce,`nonce`).toString(),leaseId:n,operationId:r,operationFingerprint:i};return e.nonceKey!=null&&(a.nonceKey=J(e.nonceKey,`nonceKey`).toString()),Number.isSafeInteger(e.reservedAtMs)&&(a.reservedAtMs=e.reservedAtMs),Number.isSafeInteger(e.expiresAtMs)&&(a.expiresAtMs=e.expiresAtMs),a}function V(e){if(!e||typeof e!=`object`)throw Error(`[evmNonceBackend] invalid managed nonce snapshot: object`);let t=xe(e),n=o(e.subjectId??e.walletId),r=q(e.sender),i=J(e.nonce,`nonce`),a=e.nonceKey==null?void 0:J(e.nonceKey,`nonceKey`),s=Y(e.leaseId,`leaseId`),c=Y(e.operationId,`operationId`),l=Y(e.operationFingerprint,`operationFingerprint`),u=we(e.reservedAtMs),d=we(e.expiresAtMs);return{chainTarget:t,subjectId:n,sender:r,...a==null?{}:{nonceKey:a},nonce:i,leaseId:s,operationId:c,operationFingerprint:l,...u==null?{}:{reservedAtMs:u},...d==null?{}:{expiresAtMs:d}}}function H(e){let t={chainTarget:s({chain:e.chain,chainId:e.chainId,networkSlug:e.networkKey}),subjectId:o(e.walletId),sender:q(e.sender)};return e.nonceKey!=null&&(t.nonceKey=J(e.nonceKey,`nonceKey`)),t}const U=15e3;function ue(e){return{async fetchChainNonce(t){let n=be(t);return await e.fetchChainNonce(n)},async fetchBroadcastTransactionStatus(t){let n=be(t);return await e.fetchBroadcastTransactionStatus({...n,txHash:Ce(t.txHash)})}}}function de(e){let t=e.fetchImpl||fetch.bind(globalThis);return ue({fetchChainNonce:async n=>await pe({chains:e.chains,input:n,fetchImpl:t}),fetchBroadcastTransactionStatus:async n=>await fe({chains:e.chains,input:n,fetchImpl:t})})}async function fe(e){let t=me(e.chains,e.input),n=await W({rpcUrl:t,method:`eth_getTransactionReceipt`,params:[e.input.txHash],fetchImpl:e.fetchImpl});if(n&&typeof n==`object`)return{kind:`finalized`};let r=await W({rpcUrl:t,method:`eth_getTransactionByHash`,params:[e.input.txHash],fetchImpl:e.fetchImpl});return r&&typeof r==`object`?{kind:`pending`}:{kind:`missing`}}async function W(e){return await m({rpcUrl:e.rpcUrl,fetchImpl:e.fetchImpl,requestTimeoutMs:U}).request({method:e.method,params:e.params})}async function pe(e){return Te(await m({rpcUrl:me(e.chains,e.input),fetchImpl:e.fetchImpl,requestTimeoutMs:U}).request({method:`eth_getTransactionCount`,params:[e.input.sender,`pending`]}),`eth_getTransactionCount`)}function me(e,t){let r=t.chain,i=t.chainId,a=String(t.networkKey||``).trim().toLowerCase(),o=e=>e.filter(e=>{let t=ve(e);return typeof t==`number`&&t===i}),s=e=>e.filter(e=>String(e.network||``).trim().toLowerCase()===a),c=e.filter(e=>he(e));if(!c.length)throw Error(`[evmNonceBackend] missing RPC config for nonce-enabled chains`);let l=s(c);if(l.length===1){let e=l[0];return _e({chain:e,requestedChain:r,networkKey:t.networkKey,chainId:i}),ge({chain:e,chainId:i,networkKey:t.networkKey}),K(e.rpcUrl,e.network)}if(l.length>1){let e=o(l).filter(e=>G(e,r));if(e.length===1){let t=e[0];return K(t.rpcUrl,t.network)}throw Error(`[evmNonceBackend] ambiguous networkKey mapping for ${t.networkKey} (chainId=${String(i)})`)}let u=o(c),d=u.filter(e=>G(e,r));if(d.length===1){let e=d[0];return K(e.rpcUrl,e.network)}if(d.length>1){let e=d.map(e=>String(e.network||``).trim()).join(`, `);throw Error(`[evmNonceBackend] ambiguous chainId routing for ${r} chainId=${String(i)} across [${e}]`)}if(u.length>0){let e=Array.from(new Set(u.map(e=>n(e.network))));throw Error(`[evmNonceBackend] chainId=${String(i)} is configured for [${e.join(`, `)}] but is incompatible with ${r} routing`)}throw Error(`[evmNonceBackend] unable to resolve RPC URL for ${r} ${t.networkKey} (chainId=${String(i)})`)}function he(e){let t=n(e.network);return t===`evm`||t===`tempo`}function G(e,t){let r=n(e.network);return t===`tempo`?r===`tempo`:r===`evm`||r===`tempo`}function ge(e){let t=ve(e.chain);if(typeof t!=`number`)throw Error(`[evmNonceBackend] configured network ${e.chain.network} is missing numeric chainId`);if(t!==e.chainId)throw Error(`[evmNonceBackend] chainId mismatch for network ${e.networkKey}: expected ${t}, received ${String(e.chainId)}`)}function _e(e){if(G(e.chain,e.requestedChain))return;let t=n(e.chain.network);throw Error(`[evmNonceBackend] network ${e.networkKey} (family=${t}) is incompatible with ${e.requestedChain} request (chainId=${String(e.chainId)})`)}function ve(e){return ye(e)?e.chainId:void 0}function ye(e){return n(e.network)!==`near`}function K(e,t){let n=String(e||``).trim();if(!n)throw Error(`[evmNonceBackend] missing rpcUrl for ${t}`);return n}function be(e){let t=e.chainTarget.kind;if(t!==`evm`&&t!==`tempo`)throw Error(`[evmNonceBackend] invalid chain '${String(t)}'`);let n=String(e.chainTarget.networkSlug||``).trim().toLowerCase();if(!n)throw Error(`[evmNonceBackend] networkKey is required`);return{chain:t,networkKey:n,chainId:e.chainTarget.chainId,sender:Se(e.sender,`sender`),nonceKey:t===`tempo`?J(e.nonceKey,`nonceKey`):0n,walletId:String(o(e.subjectId))}}function xe(e){if(e.chainTarget)return a(e.chainTarget);let t=e.chain;if(t!==`evm`&&t!==`tempo`)throw Error(`[evmNonceBackend] invalid managed nonce snapshot: chain`);let n=String(e.networkKey||``).trim();if(!n)throw Error(`[evmNonceBackend] invalid managed nonce snapshot: networkKey`);let r=e.chainId;if(typeof r!=`number`||!Number.isSafeInteger(r)||r<=0)throw Error(`[evmNonceBackend] invalid managed nonce snapshot: chainId`);return s({chain:t,chainId:r,networkSlug:n})}function Se(e,t){let n=String(e||``).trim().toLowerCase();if(!/^0x[0-9a-f]{40}$/.test(n))throw Error(`[evmNonceBackend] invalid ${t}: expected 20-byte 0x-prefixed hex`);return n}function q(e){return Se(e,`sender`)}function Ce(e){let t=String(e||``).trim().toLowerCase();if(!/^0x[0-9a-f]{64}$/.test(t))throw Error(`[evmNonceBackend] invalid txHash: expected 32-byte 0x-prefixed hex`);return t}function J(e,t){try{let n=BigInt(e);if(n<0n)throw Error(`[evmNonceBackend] ${t} must be non-negative`);return n}catch{throw Error(`[evmNonceBackend] invalid ${t}: expected bigint-compatible value`)}}function Y(e,t){let n=String(e||``).trim();if(!n)throw Error(`[evmNonceBackend] invalid managed nonce snapshot: ${t}`);return n}function we(e){if(e==null)return;let t=Math.floor(Number(e));return Number.isSafeInteger(t)?t:void 0}function Te(e,t){let n=String(e||``).trim();if(!/^0x[0-9a-fA-F]+$/.test(n))throw Error(`[evmNonceBackend] invalid ${t} result: expected hex quantity`);return BigInt(n)}function Ee(e){return e.kind===`required`?e.authPlan.signingAuthPlan:void 0}async function De(e){let t=Ee(e.thresholdEcdsaStepUp),n=e.thresholdEcdsaStepUp.kind===`required`?e.thresholdEcdsaStepUp.runtime:void 0,r=n?.reusableAuthorization??{kind:`active`},i=Oe({signingAuthPlan:t,hasEmailOtpSigning:!!n?.emailOtpSigning,hasThresholdEcdsaRequest:e.hasThresholdEcdsaRequest,needsWebAuthn:e.needsWebAuthn,reusableAuthorization:r});if(!i)throw Error(`[chains] ${e.explicitAuthErrorLabel} signing requires explicit auth input`);let a=await b({operation:{kind:`evm_family_threshold_ecdsa_step_up`,usesNeeded:Math.max(1,Math.floor(Number(e.requiredSignatureUses)||1))},selectedLane:i,policy:ke(t,r),methods:{...n?.emailOtpSigning?{emailOtp:{method:`email_otp`,prepareChallenge:n.emailOtpSigning.prepare,...n.emailOtpSigning.resend?{resendChallenge:n.emailOtpSigning.resend}:{},complete:async()=>void 0}}:{},passkey:{method:`passkey`,prepare:async()=>({}),complete:async()=>void 0}}});if(a.method===`warm_session`){if(!t||!Ae(t))throw Error(`[chains] warm-session step-up requires an existing warm-session plan`);return{kind:`warm_session`,confirmationAuthPayload:{signingAuthPlan:t}}}if(a.method===`email_otp`){let e=je({signingAuthPlan:t,prepared:a});if(!g(e))throw Error(`[chains] Email OTP step-up requires an Email OTP signing auth plan`);return{kind:`email_otp`,confirmationAuthPayload:{signingAuthPlan:e},emailOtpPrompt:a.prompt}}let o=je({signingAuthPlan:t,prepared:a});if(!h(o))throw Error(`[chains] passkey step-up requires a passkey signing auth plan`);return{kind:`passkey`,confirmationAuthPayload:{signingAuthPlan:o}}}function Oe(e){return e.reusableAuthorization.kind===`absent`?{authMethod:e.reusableAuthorization.requiredFactor}:e.signingAuthPlan?g(e.signingAuthPlan)?{authMethod:`email_otp`}:h(e.signingAuthPlan)?{authMethod:`passkey`}:{authMethod:e.signingAuthPlan.method}:e.hasEmailOtpSigning?{authMethod:`email_otp`}:!e.hasThresholdEcdsaRequest&&e.needsWebAuthn?{authMethod:`passkey`}:null}function ke(e,t){if(t.kind===`absent`)return{kind:`use_selected_lane`};if(e&&_(e)){if(e.curve!==`ecdsa`)throw Error(`[chains] EVM-family warm-session step-up requires an ECDSA auth plan`);return{kind:`reuse_warm_session`,authorization:{method:e.method,curve:`ecdsa`,materialActivation:e.materialActivation,authorization:e.authorization,expiresAtMs:e.expiresAtMs,remainingUses:e.remainingUses}}}return{kind:`use_selected_lane`}}function Ae(e){return _(e)&&e.curve===`ecdsa`}function je(e){if(e.signingAuthPlan)return e.prepared.method===`email_otp`?{kind:`emailOtpReauth`,method:`email_otp`,emailOtpPrompt:e.prepared.prompt}:e.prepared.method===`passkey`&&!h(e.signingAuthPlan)?{kind:`passkeyReauth`,method:`passkey`}:e.signingAuthPlan;if(e.prepared.method===`email_otp`)return{kind:`emailOtpReauth`,method:`email_otp`,emailOtpPrompt:e.prepared.prompt};if(e.prepared.method===`passkey`)return{kind:`passkeyReauth`,method:`passkey`};throw Error(`[chains] warm-session step-up requires an existing signing auth plan`)}function Me(e){return{kind:`warm_session`,signingAuthPlan:e.signingAuthPlan,materialActivation:e.signingAuthPlan.materialActivation,authorization:e.signingAuthPlan.authorization,expiresAtMs:e.signingAuthPlan.expiresAtMs,remainingUses:e.signingAuthPlan.remainingUses}}function Ne(e){return{kind:`email_otp`,signingAuthPlan:e.signingAuthPlan,challengeId:Le(e.confirmation.emailOtpChallengeId,e.prompt,`EVM-family step-up authorization`),otpCode:Ie(e.confirmation.otpCode),...e.prompt.emailHint?{emailHint:e.prompt.emailHint}:{}}}function Pe(e){if(!e.confirmation.credential)throw Error(`[chains] missing WebAuthn credential for EVM-family step-up authorization`);return{kind:`passkey`,signingAuthPlan:e.signingAuthPlan,credential:d(e.confirmation.credential)}}function Fe(e){if(e.prepared.kind===`active_wallet_authority`)throw Error(`[chains] active Wallet Authority confirmation has no threshold step-up`);return e.prepared.kind===`warm_session`?Me({signingAuthPlan:e.prepared.confirmationAuthPayload.signingAuthPlan}):e.prepared.kind===`email_otp`?Ne({signingAuthPlan:e.prepared.confirmationAuthPayload.signingAuthPlan,prompt:e.prepared.emailOtpPrompt,confirmation:e.confirmation}):Pe({signingAuthPlan:e.prepared.confirmationAuthPayload.signingAuthPlan,confirmation:e.confirmation})}function Ie(e){let t=String(e||``).trim();if(!/^\d{6}$/.test(t))throw Error(`[chains] missing Email OTP code from touchConfirm`);return t}function Le(e,t,n){let r=String(e||t.challengeId||``).trim();if(!r)throw Error(`[chains] missing Email OTP challenge id for ${n}`);return r}const Re=`AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`,ze=`pending-intent-digest`,X=new Map;function Z(e){return String(e||``).trim()}function Be(e){let t=Z(e.requestId);t&&X.set(t,e.preparation)}function Ve(e){let t=Z(e);if(!t)return;let n=X.get(t);if(n)return X.delete(t),n}function He(e){let t=Z(e);t&&X.delete(t)}var Q=class extends Error{constructor(e){super(`[chains] threshold ECDSA material was superseded (${e.supersessionKind}): prepared ${String(e.preparedMaterialActivation.activationId)}, current ${String(e.currentMaterialActivation.activationId)}`),this.name=`EvmFamilyEcdsaMaterialSupersededError`,this.superseded=e}};function Ue(e){return e instanceof Q}function We(e){return e.curve===`ed25519`?{curve:e.curve,thresholdSessionId:e.thresholdSessionId,expiresAtMs:e.expiresAtMs,remainingUses:e.remainingUses}:{curve:e.curve,materialActivationId:String(e.materialActivation.activationId),expiresAtMs:e.expiresAtMs,remainingUses:e.remainingUses}}function Ge(e){switch(e.kind){case`material_for_step_up`:return e.material;case`material_from_canonical_capability`:case`material_from_step_up`:return e.material.signerSession}}function Ke(e){return typeof e?.signReady==`function`}async function qe(n){let a=String(n.operationFingerprint||``).trim();if(!a)throw Error(`[chains] exact EVM signing operation fingerprint digest is required`);return{laneDigest:f(u.signingOperationFingerprint(a)),intentDigest:i(e(n.signingDigest32)),displayDigest:await r(t(n.displayModel))}}function Je(e){return{intentDigest:e.intentDigestHex,challengeB64u:e.challengeB64u,displayModel:e.displayModel}}function Ye(e,t){return String(e.laneDigest)===String(t.laneDigest)&&String(e.intentDigest)===String(t.intentDigest)&&String(e.displayDigest)===String(t.displayDigest)}function Xe(e){if(e.prepared.operation!==e.operation)throw Error(`[chains] prepared ECDSA operation step-up does not match the operation being signed`);if(!Ye(e.prepared.operationDigests,e.operationDigests))throw Error(`[chains] prepared ECDSA operation step-up digest drift`)}function Ze(e){if(!e.prepared)throw Error(`[chains] passkey ECDSA step-up requires an operation prepared before confirmation`);let t=String(e.prepared.prepared.challengeB64u||``).trim();if(!t||t!==String(e.challengeB64u||``).trim())throw Error(`[chains] passkey ECDSA step-up challenge does not match the prepared operation`);return t}function $(e){throw Error(`[chains] unsupported EVM-family signing authorization: ${String(e)}`)}async function Qe(e){switch(e.authorization.kind){case`active_wallet_authority`:return{kind:`active_wallet_authority`,confirmationAuthPayload:{signingAuthPlan:e.authorization.confirmationAuthPlan}};case`owner`:return await De({thresholdEcdsaStepUp:e.thresholdEcdsaStepUp,hasThresholdEcdsaRequest:e.hasThresholdEcdsaRequest,needsWebAuthn:e.needsWebAuthn,requiredSignatureUses:e.requiredSignatureUses,explicitAuthErrorLabel:e.explicitAuthErrorLabel});default:return $(e.authorization)}}function $e(e){if(e.input.authorization.kind!==`active_wallet_authority`)throw Error(`[chains] pending active Wallet Authority confirmation requires exact authorization`);return{ctx:{touchConfirm:e.input.touchConfirm},sessionId:e.sessionId,chain:e.config.targetKind,kind:`intentDigest`,signingSubject:{kind:`evm_wallet`,walletId:e.input.walletId},signingAuthPlan:e.input.authorization.confirmationAuthPlan,challengeB64u:Re,intentDigest:ze,displayModel:e.config.buildDisplayModel({request:e.input.request,signerAccount:e.input.walletId,title:e.config.title,subtitle:e.config.body}),title:e.config.title,body:e.config.body,confirmationConfigOverride:e.input.confirmationConfigOverride}}async function et(e){let t=String(e.operation.intent.operationId);p(t,`material_queue`,e.queuedAt);let n=performance.now(),r=await e.resolveMaterial(e.request,e.operation,e.operationDigests);return p(t,`material_authorization`,n),await e.engine.signReady(e.request,r.material,e.operation,e.operationDigests)}async function tt(t){let{config:n,input:r}=t,i=ne(`intent`),a=`signing:${n.flowName}:${r.walletId}:${i}`,o=r.request.senderSignatureAlgorithm===`secp256k1`,s=r.thresholdEcdsaStepUp,u=s.kind===`not_required`?void 0:s.runtime,f=Ee(s),m=r.authorization.kind===`owner`&&s.kind===`required`&&(s.runtime.reusableAuthorization.kind===`absent`||!_(s.authPlan.signingAuthPlan));if(o&&!f)switch(r.authorization.kind){case`owner`:throw Error(`[chains] threshold ECDSA transaction signing requires an explicit auth plan`);case`active_wallet_authority`:break;default:$(r.authorization)}let h=f??(r.authorization.kind===`active_wallet_authority`?r.authorization.confirmationAuthPlan:null),g=h?ae(h):`passkey`,b=e=>{try{r.onEvent?.(c({...e,flowId:a,walletId:r.walletId,authMethod:g}))}catch{}},C=new Set,w=e=>{if(!C.has(e)){C.add(e);try{u?.onAuthSideEffectStarted?.(e)}catch{}}},T=e=>{e.phase===`auth.passkey.prompt.started`&&w(`passkey_reauth`);let t=ie(e,g);t&&b(t)},E=async(e,t)=>{let n=async e=>{await t[e]?.()};if(!r.signingSessionPlan){await ee({commands:e,execute:n});return}let i=await te({steps:oe(re({sessionPlan:r.signingSessionPlan,operation:r.signingOperation||null,commands:e})),executor:{execute:async e=>{await n(e.kind)}},onTransition:r.onSigningOperationTransition});if(!i.ok)throw i.error;if(i.finalState.kind===`failed`)throw Error(i.finalState.reason)},D=n.webauthn.kind===`supported`&&n.webauthn.requestNeedsWebAuthn(r.request),O=r.request,k=null,A=!1,j=!1,M=s.kind===`required`?s.operation:null,ce=async()=>{if(M)return M;throw Error(`[chains] threshold ECDSA transaction signing requires an operation`)},N=async()=>{if(!(A||!k||!r.releaseNonceReservation)){A=!0;try{await r.releaseNonceReservation(k)}catch{}}},P=async()=>{if(!k)return;let e=String(k.leaseId||``).trim(),t=String(k.operationId||``).trim(),i=String(k.operationFingerprint||``).trim();if(!e||!t||!i)throw Error(`[chains] managed ${n.nonceErrorLabel} nonce reservation is missing lease metadata`);await r.ctx.nonceCoordinator.markSigned({leaseId:e,operationId:t,operationFingerprint:i})},F=(async()=>{if(r.prepareRequestWithManagedNonce){let e=await r.prepareRequestWithManagedNonce();O=e.request,k=e.reservation}let t=await n.buildIntent({workerCtx:r.workerCtx,request:O});n.webauthn.kind===`supported`&&n.webauthn.validateIntent(t);let i=t.signRequests[0];if(!i)throw Error(`[chains] signing intent has no sign requests`);let a=x(i),o=se(a),s=n.buildDisplayModel({request:O,intentDigest:o,signerAccount:r.walletId,title:n.title,subtitle:n.body}),c=e(a);if(m&&i.algorithm===`secp256k1`&&u&&M&&r.resolveEcdsaSigningMaterialPlan){let e=await qe({operationFingerprint:r.signingOperation?.operationFingerprint,signingDigest32:x(i),displayModel:s}),t=await r.resolveEcdsaSigningMaterialPlan();switch(t.kind){case`ready`:H=t.value;break;case`authorization_required`:H=t.requirement;break;case`superseded`:throw new Q(t.replacement);case`failed`:throw Error(`[chains] threshold ECDSA material is unavailable: ${t.failure.reason}`)}let n=H;if(!n)throw Error(`[chains] ECDSA preparation did not produce signing material`);let a=await u.operationStepUp.prepare({operation:M,operationDigests:e,material:Ge(n)});U={prepared:a,operation:M,operationDigests:e},c=a.challengeB64u}return{intent:t,challengeB64u:c,intentDigestHex:o,displayModel:s}})();r.authorization.kind===`active_wallet_authority`&&Be({requestId:i,preparation:F.then(Je)});let I=null,L=null,R=null,z=null,B=!1,V=null,H=null,U=null,ue=async(e,t,n)=>{if(r.resolveEcdsaSigningMaterialPlan){let e=await r.resolveEcdsaSigningMaterialPlan();switch(e.kind){case`ready`:H=e.value;break;case`authorization_required`:H=e.requirement;break;case`superseded`:throw new Q(e.replacement);case`failed`:throw Error(`[chains] threshold ECDSA material is unavailable: ${e.failure.reason}`)}}let i=H;if(!i)throw Error(`[chains] missing ready threshold ECDSA material for secp256k1 signing`);if(!L||L.kind===`warm_session`){if(i.kind===`material_for_step_up`)throw Error(`[chains] auth-neutral ECDSA material reached signing without a same-method step-up`);return i}if(!u)throw Error(`[chains] ECDSA operation step-up runtime is unavailable`);let a=U;if(!a)throw Error(`[chains] ECDSA step-up signing requires an operation prepared before confirmation`);return Xe({prepared:a,operation:t,operationDigests:n}),{kind:`material_from_step_up`,material:await u.operationStepUp.authorize({authorization:L,prepared:a.prepared,material:Ge(i)})}},de=async()=>{if(r.authorization.kind===`active_wallet_authority`){b({phase:l.STEP_05_CONFIRMATION_DISPLAYED,status:`waiting_for_user`,interaction:{kind:`transaction_confirmation`,overlay:`show`}}),r.onConfirmationDisplayed?.();let e=$e({config:n,input:r,sessionId:i});R=await S({runtime:r.touchConfirm,request:e})(),z=await F,B=z.intent.signRequests.some(e=>e.algorithm===`secp256k1`);let t=await Qe({authorization:r.authorization,thresholdEcdsaStepUp:s,hasThresholdEcdsaRequest:o,needsWebAuthn:D,requiredSignatureUses:n.requiredSignatureUsesForRequest(r.request),explicitAuthErrorLabel:n.explicitAuthErrorLabel});if(!_(t.confirmationAuthPayload.signingAuthPlan)&&!v(t.confirmationAuthPayload.signingAuthPlan))throw Error(`[chains] active Wallet Authority signing requires a session auth plan`);I=t;let a=t.confirmationAuthPayload.signingAuthPlan;b({phase:l.STEP_06_AUTH_WARM_SESSION_CLAIMED,status:`succeeded`,interaction:{kind:`none`,overlay:`none`},data:v(a)?{walletSessionId:String(a.walletSessionId),expiresAtMs:a.expiresAtMs,authorityId:String(a.authorityId),authMethodId:String(a.authMethodId)}:We(a)}),w(`auth_confirmed`),b({phase:l.STEP_05_CONFIRMATION_APPROVED,status:`succeeded`,interaction:{kind:`transaction_confirmation`,overlay:`hide`}});return}z=await F,B=z.intent.signRequests.some(e=>e.algorithm===`secp256k1`),b({phase:l.STEP_05_CONFIRMATION_DISPLAYED,status:`waiting_for_user`,interaction:{kind:`transaction_confirmation`,overlay:`show`}}),r.onConfirmationDisplayed?.();let e=await Qe({authorization:r.authorization,thresholdEcdsaStepUp:s,hasThresholdEcdsaRequest:o,needsWebAuthn:D,requiredSignatureUses:n.requiredSignatureUsesForRequest(r.request),explicitAuthErrorLabel:n.explicitAuthErrorLabel});I=e;let t=e.confirmationAuthPayload;if(_(t.signingAuthPlan)||v(t.signingAuthPlan)){let e=t.signingAuthPlan;b({phase:l.STEP_06_AUTH_WARM_SESSION_CLAIMED,status:`succeeded`,interaction:{kind:`none`,overlay:`none`},data:v(e)?{walletSessionId:String(e.walletSessionId),expiresAtMs:e.expiresAtMs,authorityId:String(e.authorityId),authMethodId:String(e.authMethodId)}:We(e)})}let a={ctx:{touchConfirm:r.touchConfirm},sessionId:i,chain:n.targetKind,kind:`intentDigest`,signingSubject:{kind:`evm_wallet`,walletId:r.walletId},challengeB64u:z.challengeB64u,intentDigest:z.intentDigestHex,displayModel:z.displayModel,title:n.title,body:n.body,onProgress:T,confirmationConfigOverride:r.confirmationConfigOverride},c=e.kind===`passkey`?{...a,...e.confirmationAuthPayload,webauthnChallenge:{kind:`intent_digest`,challengeB64u:Ze({prepared:U,challengeB64u:z.challengeB64u})}}:e.kind===`email_otp`?{...a,...e.confirmationAuthPayload,emailOtpPrompt:e.emailOtpPrompt}:{...a,...e.confirmationAuthPayload};R=await S({runtime:r.touchConfirm,request:c})();let u=R;if(!u)throw Error(`[chains] signing confirmation did not produce a decision`);switch(w(`auth_confirmed`),r.authorization.kind){case`owner`:L=Fe({prepared:e,confirmation:u});break;default:$(r.authorization)}b({phase:l.STEP_05_CONFIRMATION_APPROVED,status:`succeeded`,interaction:{kind:`transaction_confirmation`,overlay:`hide`}})},fe=async()=>{if(!z)throw Error(`[chains] signing intent must be prepared before threshold admission`);if(!R)throw Error(`[chains] signing confirmation is required before threshold admission`);if(!I)throw Error(`[chains] signing auth payload is required before threshold admission`);switch(r.authorization.kind){case`owner`:if(!L)throw Error(`[chains] signing step-up authorization is required before threshold admission`);if(B&&!M)throw Error(`[chains] threshold ECDSA operation must be prepared before signing`);break;case`active_wallet_authority`:break;default:$(r.authorization)}},W=async()=>{let e=performance.now();if(!z)throw Error(`[chains] signing intent must be prepared before signing`);if(!R)throw Error(`[chains] signing confirmation must complete before signing`);let t=z.intent;B&&b({phase:l.STEP_10_COMMIT_STARTED,status:`running`,interaction:{kind:`none`,overlay:`none`}});let a=[];for(let e of t.signRequests){let t;if(e.kind===`webauthn`){if(n.webauthn.kind!==`supported`)throw Error(`[chains] WebAuthn signing is not supported for this chain`);if(!R.credential)throw Error(`[chains] missing WebAuthn credential from touchConfirm`);t=(await n.webauthn.resolveKeyRef({ctx:r.ctx,walletId:r.walletId,workerCtx:r.workerCtx,signReq:e,credential:d(R.credential)})).keyRef}else if(e.algorithm===`secp256k1`){let t=await qe({operationFingerprint:r.signingOperation?.operationFingerprint,signingDigest32:e.digest32,displayModel:z.displayModel});switch(r.authorization.kind){case`active_wallet_authority`:{let n=r.signingOperation?.operationId;if(!n)throw Error(`[chains] active Wallet Authority ECDSA signing requires an operation id`);a.push(await r.authorization.sign({requestId:i,operationId:String(n),operationDigests:t,signingDigest32:e.digest32}));continue}case`owner`:break;default:$(r.authorization)}let n=await ce(),o=r.engines.secp256k1;if(!o)throw Error(`[chains] missing engine for algorithm: ${e.algorithm}`);if(!Ke(o))throw Error(`[chains] secp256k1 signing engine requires ready material support`);if(!r.runEcdsaMaterialUse)throw Error(`[chains] secp256k1 signing requires exact material serialization`);a.push(await r.runEcdsaMaterialUse(et.bind(void 0,{request:e,engine:o,operation:n,operationDigests:t,queuedAt:performance.now(),resolveMaterial:ue})));continue}else throw Error(`[chains] unsupported ${n.explicitAuthErrorLabel} signing algorithm: ${e.algorithm}`);let o=r.engines.webauthnP256;if(!o)throw Error(`[chains] missing engine for algorithm: ${e.algorithm}`);a.push(await o.sign(e,t))}let o=performance.now();V=await t.finalize(a),j=!0,await P();let s=null;M?s=String(M.intent.operationId):r.authorization.kind===`active_wallet_authority`&&r.signingOperation&&(s=String(r.signingOperation.operationId)),s!==null&&(p(s,`transaction_assembly`,o),p(s,`commit_total`,e)),b({phase:l.STEP_11_TRANSACTION_SIGNED,status:`succeeded`,interaction:{kind:`none`,overlay:`hide`}}),b({phase:l.STEP_15_COMPLETED,status:`succeeded`,interaction:{kind:`none`,overlay:`none`},data:{operation:`sign`}})};try{if(await E([y.ShowConfirmation,y.PreparePayload,y.Sign],{[y.ShowConfirmation]:de,[y.PreparePayload]:fe,[y.Sign]:W}),!V)throw Error(`[chains] signing operation completed without a signed result`);let e=V;return k?{...e,managedNonce:le(k)}:e}catch(e){throw j||(k?await N():r.releaseNonceReservation&&await F.then(async()=>{await N()}).catch(()=>void 0)),e}}export{ze as a,de as c,B as d,F as f,A as h,Re as i,V as l,M as m,Ue as n,He as o,N as p,tt as r,Ve as s,Q as t,H as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
const e=`shamir3pass-v2`,t=`rfc2409-group2`,n=`iframe_origin_indexeddb`,r=`signing_session_secret32`,i=`router_ab_ed25519_normal_signing_v1`,a=`/router-ab/wallet-session/ed25519`,o=new Uint8Array([64,12,49,139,102,149,151,54,89,161,105,138,229,128,223,216,0,29,153,81,186,50,198,149,230,52,153,71,80,79,63,132]),s=new Uint8Array([38,218,80,229,172,150,74,126,160,132,82,127,182,71,246,51,11,50,222,81,169,175,70,82,75,0,109,143,127,231,244,209]);function c(e){return String(e||``).trim()||null}function l(e){let t=e&&typeof e==`object`?e:null;if(!t||t.kind!==`router_ab_ed25519_normal_signing_v1`)return null;let n=c(t.signingWorkerId);if(!n)throw Error(`Invalid Router A/B Ed25519 normal-signing state: missing signingWorkerId`);return{kind:i,signingWorkerId:n}}function u(e){let t=l(e);if(!t)throw Error(`Router A/B Ed25519 normal-signing state is required`);return t}export{e as a,r as c,a as i,l,s as n,t as o,i as r,n as s,o as t,u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e}from"./types-M7vxrYtJ.js";const t=new Set([`ecdsa_sign_authorize`,`ecdsa_sign_admit`,`ecdsa_sign_proxy`,`ecdsa_sign_complete`,`ecdsa_sign_total`,`ecdsa_presign_authenticate`,`ecdsa_presign_material`,`ecdsa_presign_admit`,`ecdsa_presign_proxy`,`ecdsa_presign_total`,`ecdsa_presign_sw_material`,`ecdsa_presign_sw_session`,`ecdsa_presign_sw_do_total`,`ecdsa_presign_sw_admit`,`ecdsa_presign_sw_total`]);function n(e){let n=new Map;if(!e)return n;for(let r of e.split(`,`)){let[e,...i]=r.trim().split(`;`);if(!(!t.has(e)||n.has(e)))for(let t of i){let[r,i]=t.trim().split(`=`);if(r!==`dur`||!i?.trim())continue;let a=Number(i);Number.isFinite(a)&&a>=0&&n.set(e,a);break}}return n}function r(e,t,r){if(!(!r||!p()))for(let[i,a]of n(r))d(`evm-family`,{event:`ecdsa_server_timing`,operationId:e,phase:t,stage:i,durationMs:a})}function i(e,t,r){if(!(!r||!p()))for(let[i,a]of n(r))d(`evm-family`,{event:`ecdsa_presign_server_timing`,presignSessionId:e,phase:t,stage:i,durationMs:a})}function a(e,t,n,r=`succeeded`){d(`evm-family`,{event:`ecdsa_signing_timing`,operationId:e,stage:t,durationMs:Math.max(0,performance.now()-n),outcome:r})}function o(e,t,n,r=`succeeded`){d(`near`,{event:`ed25519_signing_timing`,operationId:e,stage:t,durationMs:Math.max(0,performance.now()-n),outcome:r})}function s(t,n,r={}){if(!(!n||!p()))try{console.debug(`[SigningLane][${t}]`,{event:`signing_lane_resolved`,lane:e(n),...r.reason?{reason:r.reason}:{}})}catch{}}function c(e,t){if(p())try{console.debug(`[SigningBoundary][${e}]`,t)}catch{}}function l(t){return{event:t.event,...t.lane?{lane:e(t.lane)}:{},...t.readinessStatus?{readinessStatus:t.readinessStatus}:{},...t.sideEffect?{sideEffect:t.sideEffect}:{},phase:t.phase}}function u(e,t){if(p())try{console.debug(`[SigningSessionPlanner][${e}]`,t)}catch{}}function d(e,t){if(p())try{console.info(`[SigningFlow][${e}]`,JSON.stringify(t))}catch{}}function f(e,t){try{console.warn(`[SigningFlow][${e}][failure]`,t)}catch{}}function p(){try{return globalThis.localStorage?.getItem(`seams:debug:signing-session`)===`1`}catch{return!1}}export{o as a,u as c,a as i,f as l,i as n,c as o,r,s,l as t,d as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{n as e}from"./chunk-dVx5-UGu.js";import{_ as t}from"./sdkSentEvents-_RGAEeld.js";var n=e({beginTransactionActivity:()=>i,failTransactionActivity:()=>f,observeTransactionActivity:()=>d,observeTransactionLifecycleReport:()=>h,retainTransactionActivity:()=>a,setTransactionActivityView:()=>l,transactionBroadcastStarted:()=>p});let r=null;function i(e,t){if(e.requestId)switch(e.type){case`PM_SIGN_TX_WITH_ACTIONS`:case`PM_SIGN_AND_SEND_TX`:case`PM_EXECUTE_ACTION`:case`PM_SIGN_DELEGATE_ACTION`:case`PM_SIGN_NEP413`:case`PM_SIGN_TEMPO`:r?.surface?.dispose(),r={requestId:e.requestId,post:t,surface:null,state:{kind:`signing`},view:`expanded`,retained:!1,signingHash:null};return;default:return}}function a(e,t){return!r||r.requestId!==e?!1:(r.surface=t,r.retained=!0,o(),!0)}function o(){if(!(!r?.retained||!r.surface)){if(!r.surface.element.isConnected){r=null;return}r.surface.showReceipt({state:r.state,view:r.view,onView:s,onDismiss:c}),r.post({type:`TRANSACTION_ACTIVITY`,requestId:r.requestId,payload:r.view})}}function s(e){r&&(r.view=e,o())}function c(){let e=r;r=null,e?.surface?.dispose(),e?.retained&&e.post({type:`TRANSACTION_ACTIVITY`,requestId:e.requestId,payload:`closed`})}function l(e,t){r?.requestId===e&&(t===`closed`?c():s(`toast`))}function u(e,t){if(!e||typeof e!=`object`)return null;let n=Reflect.get(e,t);return typeof n==`string`&&n.length>0?n:null}function d(e){if(!(!r||e.requestId!==r.requestId)){if(e.type===`PM_RESULT`){let t=e.payload?.result;r.signingHash=u(t,`rawTxHex`),r.state.kind===`signing`&&(r.state={kind:`signed`}),t&&typeof t==`object`&&Reflect.get(t,`success`)===!1&&(r.state={kind:`failed`,hash:null,message:u(t,`error`)??`The operation did not complete.`});let n=m(t);n&&(r.state=n)}else if(e.type===`PROGRESS`&&t(e.payload)&&e.payload.flow===`signing`){let t=e.payload,n=u(t.data,`txHash`)??u(t.data,`txId`);if(r.state.kind===`confirmed`||r.state.kind===`reverted`)return;switch(t.phase){case`signing.transaction.signed`:r.state={kind:`signed`};break;case`signing.broadcast.started`:r.state={kind:`broadcasting`};break;case`signing.broadcast.accepted`:r.state={kind:`submitted`,hash:n};break;case`signing.receipt.finalized`:r.state={kind:`confirmed`,hash:n};break;case`signing.receipt.reverted`:r.state={kind:`reverted`,hash:n,message:`The network reverted this transaction. Network fees may still apply.`};break;case`signing.failed`:case`signing.broadcast.rejected`:r.state={kind:`failed`,hash:n,message:t.message};break;default:return}}else return;o()}}function f(e,t){!r||r.requestId!==e||(r.state={kind:`failed`,hash:null,message:t instanceof Error?t.message:`The operation did not complete.`},o())}function p(e){!r||r.signingHash!==e||r.state.kind!==`signed`||(r.state={kind:`broadcasting`},o())}function m(e){if(!e||typeof e!=`object`)return null;let t=u(e,`transactionId`);if(!t)return null;let n=Reflect.get(e,`result`),r=n&&typeof n==`object`?Reflect.get(n,`status`):null;if(r&&typeof r==`object`){if(Object.hasOwn(r,`SuccessValue`))return{kind:`confirmed`,hash:t};if(Object.hasOwn(r,`Failure`))return{kind:`reverted`,hash:t,message:`The network could not execute this transaction. Network fees may still apply.`}}return{kind:`unknown`,hash:t,message:`Submitted to the network. The response did not include a final execution outcome.`}}function h(e){if(r?.signingHash)switch(e.type){case`PM_REPORT_TEMPO_BROADCAST_ACCEPTED`:case`PM_REPORT_TEMPO_BROADCAST_REJECTED`:case`PM_REPORT_TEMPO_FINALIZED`:case`PM_REPORT_TEMPO_DROPPED_OR_REPLACED`:{let t=e.payload;if(!t||t.signedResult.rawTxHex!==r.signingHash||r.state.kind===`confirmed`||r.state.kind===`reverted`)return;e.type===`PM_REPORT_TEMPO_BROADCAST_ACCEPTED`?r.state={kind:`submitted`,hash:e.payload?.txHash??null}:e.type===`PM_REPORT_TEMPO_FINALIZED`?r.state=e.payload?.receiptStatus===`reverted`?{kind:`reverted`,hash:e.payload.txHash??null,message:`The network reverted this transaction. Network fees may still apply.`}:e.payload?.receiptStatus===`success`?{kind:`confirmed`,hash:e.payload.txHash??null}:{kind:`unknown`,hash:e.payload?.txHash??null,message:`The network response did not include an execution status.`}:r.state={kind:`unknown`,hash:null,message:`The transaction did not complete as expected. Check its network status before retrying.`},o();return}default:return}}export{a,h as i,f as n,n as o,d as r,i as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{d as e}from"./validation-dC1-_uyG.js";var t=class extends Error{constructor(e,t,n){super(t,n),this.code=e,this.name=`TransactionReviewError`}};function n(e,t){for(let n of Object.keys(e))if(!t.includes(n))return!1;return!0}function r(r){if(e(r)){if(r.kind===`unbounded`&&n(r,[`kind`]))return Object.freeze({kind:`unbounded`});if(r.kind===`expires_at`&&n(r,[`kind`,`atMs`])&&typeof r.atMs==`number`&&Number.isSafeInteger(r.atMs)&&r.atMs>0)return Object.freeze({kind:`expires_at`,atMs:r.atMs})}throw new t(`review_invalid_input`,`Review requires explicit validity and a positive safe-integer expiry`)}function i(e){if(e.kind===`expires_at`&&Date.now()>=e.atMs)throw new t(`review_expired`,`This review has expired. Refresh the quote and try again.`)}function a(e){if(typeof e.connectionId!=`string`||!e.connectionId.trim()||typeof e.requestId!=`string`||!e.requestId.trim()||typeof e.surfaceId!=`string`||!e.surfaceId.trim()||typeof e.generation!=`number`||!Number.isSafeInteger(e.generation)||e.generation<=0)throw new t(`review_invalid_input`,`Invalid transaction review identity`);return Object.freeze({connectionId:e.connectionId,requestId:e.requestId,surfaceId:e.surfaceId,generation:e.generation})}function o(i){if(!e(i)||i.kind!==`transaction_review_v1`||!n(i,[`kind`,`connectionId`,`requestId`,`surfaceId`,`generation`,`validity`]))throw new t(`review_invalid_input`,`Invalid transaction review metadata`);let o=a(i);return Object.freeze({kind:`transaction_review_v1`,connectionId:o.connectionId,requestId:o.requestId,surfaceId:o.surfaceId,generation:o.generation,validity:r(i.validity)})}function s(t){if(!e(t)||!n(t,[`connectionId`,`requestId`,`surfaceId`,`generation`,`phase`]))return null;let r=t.phase;if(r!==`prepared`&&r!==`activated`&&r!==`reviewing`&&r!==`signing`&&r!==`cancelled`)return null;try{let e=a(t);return{connectionId:e.connectionId,requestId:e.requestId,surfaceId:e.surfaceId,generation:e.generation,phase:r}}catch{return null}}function c(e,t){return e.connectionId===t.connectionId&&e.requestId===t.requestId&&e.surfaceId===t.surfaceId&&e.generation===t.generation}function l(e,n){let r=n?.uiMode??e.uiMode,i=n?.behavior??e.behavior;if(r!==`modal`||i!==`requireClick`||n?.autoProceedDelay!==void 0)throw new t(`review_unsupported_mode`,`Transaction review requires modal presentation and requireClick approval`);return Object.freeze({uiMode:r,behavior:i})}function u(e){switch(e){case`review_expired`:case`review_prepare_timeout`:case`review_owner_disposed`:case`review_identity_changed`:return e;default:return`cancelled`}}export{l as a,o as i,i as n,c as o,s as r,u as s,t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{n as e,o as t,t as n}from"./transactionReview-CBE5oH4c.js";import{t as r}from"./events-BJyVcnsn.js";const i=new Map;var a=class{constructor(t,r,a,o){if(this.metadata=t,this.signatureBoundary=r,this.post=a,this.reject=o,this.abortController=new AbortController,this.state={kind:`preparing`},this.element=null,this.observer=null,this.timer=null,this.scheduleExpiry=()=>{if(this.metadata.validity.kind===`unbounded`||this.state.kind===`settled`||this.state.kind===`cancelled`||this.state.kind===`signing`)return;let e=this.metadata.validity.atMs-Date.now();if(e<=0){this.cancel(new n(`review_expired`,`This review has expired.`));return}this.timer=setTimeout(this.scheduleExpiry,Math.min(e,2147483647))},this.prepared=()=>{this.state.kind!==`preparing`||!this.element?.isConnected||this.element.dataset.seamsConfirmReady!==`true`||(this.observer?.disconnect(),this.state={kind:`prepared`},this.notify(`prepared`))},this.returnToReview=()=>{this.state.kind!==`active`||!this.allowInteraction()||(this.state={kind:`prepared`},this.element&&(this.element.inert=!0,this.element.setAttribute(`aria-hidden`,`true`)),this.notify(`reviewing`))},this.beforeCredential=()=>{this.signatureBoundary===`credential`?this.beforeSigning():this.assertActive()},this.beforeSigning=()=>{this.assertActive(),this.state={kind:`signing`},this.timer&&clearTimeout(this.timer),this.timer=null,this.notify(`signing`)},e(t.validity),i.has(t.requestId))throw new n(`review_invalid_input`,`Duplicate reviewed request`);i.set(t.requestId,this),this.scheduleExpiry()}notify(e){let t=this.metadata;this.post({connectionId:t.connectionId,requestId:t.requestId,surfaceId:t.surfaceId,generation:t.generation,phase:e})}attach(e){if(this.element!==e){if(this.observer?.disconnect(),this.element=e,this.observer=new MutationObserver(this.prepared),this.observer.observe(e,{subtree:!0,childList:!0,attributes:!0}),e.inert=this.state.kind!==`active`&&this.state.kind!==`signing`,e.setAttribute(`aria-hidden`,String(e.inert)),this.state.kind===`cancelled`||this.state.kind===`settled`){this.closeSurface();return}this.state.kind===`preparing`&&requestAnimationFrame(this.prepared)}}activate(n){if(!(n.phase!==`activated`||!t(this.metadata,n)||this.state.kind!==`prepared`)){try{e(this.metadata.validity)}catch(e){this.cancel(e instanceof Error?e:Error(String(e)));return}this.state={kind:`active`},this.element&&(this.element.inert=!1,this.element.removeAttribute(`aria-hidden`),this.element.querySelector(`button:not([disabled]), input:not([disabled]), [tabindex="0"]`)?.focus({preventScroll:!0})),this.notify(`activated`)}}assertPending(){if(this.state.kind===`cancelled`)throw this.state.error;if(this.state.kind===`settled`)throw new n(`cancelled`,`The reviewed request has already settled`)}assertActive(){if(this.state.kind===`cancelled`)throw this.state.error;if(this.state.kind!==`active`&&this.state.kind!==`signing`)throw new n(`cancelled`,`Wallet approval is not active`);e(this.metadata.validity)}allowInteraction(){if(this.state.kind!==`active`&&this.state.kind!==`signing`)return!1;try{return this.assertActive(),!0}catch(e){return this.cancel(e instanceof Error?e:Error(String(e))),!1}}afterCredential(){this.state.kind!==`signing`&&this.assertActive()}cancel(e){return this.state.kind===`signing`?(this.notify(`signing`),!1):this.state.kind===`settled`||this.state.kind===`cancelled`?!1:(this.state={kind:`cancelled`,error:e},this.timer&&clearTimeout(this.timer),this.timer=null,this.abortController.abort(e),this.closeSurface(),this.notify(`cancelled`),!0)}closeSurface(){this.element&&(this.element.inert=!0,this.element.dispatchEvent(new Event(`cancel`,{cancelable:!0})),this.element.dispatchEvent(new CustomEvent(r.TX_CONFIRMER_CANCEL,{bubbles:!0,composed:!0})))}get cancelled(){return this.state.kind===`cancelled`}finish(){this.state.kind===`cancelled`&&this.reject(this.state.error),this.observer?.disconnect(),this.observer=null,this.timer&&clearTimeout(this.timer),this.timer=null,this.state={kind:`settled`},this.element=null,i.get(this.metadata.requestId)===this&&i.delete(this.metadata.requestId)}};function o(e){return i.get(e)}function s(e){return e?.kind===`wallet_iframe`?e.transactionReview:void 0}function c(e){for(let t of i.values())t.cancel(e)}export{o as i,c as n,s as r,a as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{P as e,r as t}from"./domainIds-GDzjOs6i.js";import{it as n}from"./ecdsaPresignLifecycle-CQnCxSlq.js";import{c as r,o as i,s as a}from"./ecdsaChainTarget-CRcRR78w.js";import{t as o}from"./accountIds-C3Ihsd2c.js";import{f as s,x as c}from"./evmFamilyEcdsaIdentity-Br3iFdQx.js";import{i as l}from"./registrationIds-BIel5S0i.js";import{t as u}from"./signerSlot-BQ1g5JNV.js";import{c as d,s as f}from"./types-M7vxrYtJ.js";import{u as p}from"./exactSigningLaneIdentity-olheZx_n.js";import{S as m,a as h,x as ee,y as g}from"./nearEd25519YaoSigningPreparation-Bp_CvWRz.js";function _(t,n){return e(t,{fallback:n,min:1})}function v(e,t){let n=Error(`[SigningEngine] ${t}`);return n.code=e,n}function y(e,t){let n=e.get(t);if(n)return n;let r={running:!1,items:[]};return e.set(t,r),r}function b(e){e.timeoutHandle&&=(clearTimeout(e.timeoutHandle),null)}async function x(e,t){let n=e.get(t);if(!(!n||n.running)){n.running=!0;try{for(;n.items.length>0;){let e=n.items.shift();if(e&&!e.isSettled()){if(b(e),e.shouldAbort?.()){e.reject(e.makeCancelledError(`cancelled`));continue}if(Date.now()-e.enqueuedAtMs>e.timeoutMs){e.reject(e.makeTimeoutError(e.timeoutMs));continue}try{await e.run()}catch(t){e.reject(t)}}}}finally{n.running=!1,n.items.length===0&&e.get(t)===n?e.delete(t):n.items.length>0&&x(e,t)}}}function S(e){for(let t of e.values()){for(let e of t.items)b(e),e.reject(e.makeCancelledError(`queue_cleared`));t.items.length=0}e.clear()}function C(e){return[`material`,encodeURIComponent(String(e.materialActivation.materialOwner)),encodeURIComponent(String(e.materialActivation.capability)),encodeURIComponent(String(e.materialActivation.activationId))].join(`:`)}async function w(e){let{labels:t,owner:n}=e,r=String(e.queueKey||``).trim();if(!r)throw Error(`[SigningEngine] ${t.queue} requires non-empty queueKey`);if(!e.enabled)return await e.task();let i=_(e.maxQueueLength,8),a=_(e.queueTimeoutMs,45e3),o=y(e.queueByKey,r);if(o.items.length+(o.running?1:0)>=i)throw v(`commit_queue_overflow`,`${t.queue} overflow for ${n} (queueKey=${r}, max=${i})`);return await new Promise((i,s)=>{let c=null,l=!1,u=()=>{c&&=(clearTimeout(c),null)},d=e=>{l||(l=!0,u(),s(e))},f=e=>{l||(l=!0,u(),i(e))},p=e=>v(`cancelled`,`${t.queuedOperation} cancelled for ${n} (queueKey=${r}${e===`queue_cleared`?`, queue_cleared`:``})`),m=e=>v(`commit_queue_timeout`,`${t.queue} timeout for ${n} (queueKey=${r}, waited>${e}ms before start)`),h={enqueuedAtMs:Date.now(),timeoutMs:a,shouldAbort:e.shouldAbort,timeoutHandle:null,isSettled:()=>l,reject:d,makeCancelledError:p,makeTimeoutError:m,run:async()=>{if(e.shouldAbort?.())throw p(`cancelled`);f(await e.task())}};c=setTimeout(()=>{if(h.isSettled())return;let t=o.items.indexOf(h);t>=0&&o.items.splice(t,1),d(m(a)),!o.running&&o.items.length===0&&e.queueByKey.get(r)===o&&e.queueByKey.delete(r)},a),h.timeoutHandle=c,o.items.push(h),x(e.queueByKey,r)})}function T(e){let t={walletId:p(e.laneIdentity),authMethod:d(e.laneIdentity.auth),laneIdentity:e.laneIdentity};return e.kind===`ecdsa`?{...t,walletSessionId:e.authorization.operationCredential.walletSessionId,quotaId:e.authorization.session.quotaId}:{...t,walletSessionId:e.laneIdentity.walletSessionId,quotaId:e.laneIdentity.quotaId}}function E(e){return{kind:`invalid`,...T(e.source)}}function D(e){let t=Number(e);return!Number.isSafeInteger(t)||t<0?null:t}function O(e){let t=D(e.expiresAtMs),n=D(e.detectedAtMs);if(t===null||t===0)throw Error(`Authoritative expired Wallet Session expiresAtMs is invalid`);if(n===null||n===0)throw Error(`Authoritative expired Wallet Session detectedAtMs is invalid`);if(t>n)throw Error(`Authoritative expired Wallet Session timeline is invalid`);return{kind:`expired`,...T(e.source),expiresAtMs:t,detectedAtMs:n}}function k(e){let t=D(e.observation.expiresAtMs);if(t===null||t===0)return E({source:e.observation.source});let n=T(e.observation.source);return t<=e.nowMs?{kind:`expired`,...n,expiresAtMs:t,detectedAtMs:e.nowMs}:{kind:`active`,...n,expiresAtMs:t}}function te(e){let t=D(e.nowMs);if(t===null)return E({source:e.observation.source});switch(e.observation.kind){case`found`:return k({observation:e.observation,nowMs:t});case`missing`:return{kind:`missing`,...T(e.observation.source)};case`unavailable`:return{kind:`unavailable`,...T(e.observation.source)};case`invalid`:return E({source:e.observation.source});default:return e.observation}}function ne(e){let t=Math.floor(Number(e));return!Number.isFinite(t)||t<=0?null:t.toString(10).padStart(20,`0`)}function A(e,t){if(e.length===0)return{kind:`no_current_lane`,unusableFacts:[]};let n=ie(e,t),r=ae(n,t);if(r.length)return{kind:`conflicting_key_material`,conflicts:r};if(n.length!==1)return{kind:`ambiguous_material`,candidates:e};let i=n[0];return i?re(i,t.supersession):{kind:`no_current_lane`,unusableFacts:[]}}function re(e,t){let n=e.facts.filter(t.isOperationUsable);if(n.length===0)return{kind:`no_current_lane`,unusableFacts:e.facts};let r=oe(n,t);return r.kind===`ambiguous`?{kind:`ambiguous_material`,candidates:r.candidates}:{kind:`selected`,selectedFact:r.fact,supersededFacts:e.facts.filter(e=>e!==r.fact)}}function ie(e,t){let n=new Map;for(let r of e){let e=t.groupKey(r),i=t.groupKeyString(e),a=n.get(i);n.set(i,a?{groupKey:a.groupKey,facts:[...a.facts,r]}:{groupKey:e,facts:[r]})}return[...n.values()]}function ae(e,t){return e.flatMap(e=>t.groupConflicts(e.facts))}function oe(e,t){let n=e[0];if(n===void 0)return{kind:`ambiguous`,candidates:[]};let r=n;for(let n of e.slice(1)){let e=se(r,n,t);switch(e.kind){case`left`:break;case`right`:r=n;break;case`ambiguous`:return{kind:`ambiguous`,candidates:e.candidates};default:return e}}return{kind:`selected`,fact:r}}function se(e,t,n){let r=ce(e,t,n);if(r.kind!==`equal`)return r;let i=le(e,t,n);if(i.kind!==`equal`)return i;let a=n.tieBreak(e,t);switch(a){case 1:return{kind:`left`};case-1:return{kind:`right`};case 0:return{kind:`ambiguous`,candidates:[e,t]};default:return a}}function ce(e,t,n){let r=n.generation(e),i=n.generation(t);return!r||!i?{kind:`ambiguous`,candidates:[e,t]}:r>i?{kind:`left`}:i>r?{kind:`right`}:{kind:`equal`}}function le(e,t,n){let r=n.exactness(e);return r===n.exactness(t)?{kind:`equal`}:r===`exact_target`?{kind:`left`}:{kind:`right`}}function ue(e){return{kind:`ed25519_durable_material`,authMethod:e.authMethod,materialActivation:e.materialActivation}}function j(e){return[e.activationId,e.capability,e.materialOwner,e.keyBinding,e.lifecycleBinding,e.signingWorker].map(e=>encodeURIComponent(String(e))).join(`:`)}function de(e){let t={source:e.source,runtime:e.runtime,key:e.key,materialActivation:e.materialActivation,publicFacts:e.publicFacts,curve:`ecdsa`,chainTarget:e.chainTarget,state:e.state,authorizationState:e.authorizationState};if(e.auth.kind===`passkey`){if(!e.resolvedKey)throw Error(`active Wallet Authority passkey lane is missing its resolved ECDSA key`);return{...t,auth:e.auth,resolvedKey:e.resolvedKey}}return{...t,auth:e.auth}}function fe(e){let t=e.authorization;return t?e.remainingUses===t.runtime.remainingUses&&e.expiresAtMs===t.runtime.expiresAtMs:!0}function pe(e){return d(e.auth)}function M(e){return d(e.auth)}function me(e){let t=e.ed25519Restore;if(e.authMethod===`passkey`){if(!t.credentialIdB64u)return null;try{return{kind:`passkey`,rpId:c(t.rpId),credentialIdB64u:t.credentialIdB64u}}catch{return null}}return t.providerSubjectId?{kind:`email_otp`,providerSubjectId:t.providerSubjectId}:null}function N(e){let{authorization:t}=e;if(String(t.session.walletId)!==e.walletId||t.selectedAuthMethod.kind!==e.auth.kind||t.operationCredential.walletSessionId.length===0||t.session.quotaId.length===0||!h({session:t.session,materialActivation:e.materialActivation}))return!1;if(e.auth.kind===`passkey`){if(t.selectedAuthMethod.kind!==`passkey`||String(t.selectedAuthMethod.rpId)!==String(e.auth.rpId)||t.selectedAuthMethod.credentialIdB64u!==e.auth.credentialIdB64u)return!1}else if(t.selectedAuthMethod.kind!==`email_otp`||t.selectedFactorAuthority.factor.kind!==`email_otp`||t.selectedFactorAuthority.factor.providerUserId!==e.auth.providerSubjectId)return!1;return!!(e.ownerScope&&f(e.auth)===f(e.ownerScope.auth))}function he(e,t,n){if(e.curve!==`ed25519`)return null;let i=String(e.thresholdSessionIds.ed25519||``).trim(),a=String(e.walletId||``).trim(),s=e.ed25519Restore,c=u(s.signerSlot),d=me(e);if(!i||!a||c===null||!d)return null;let f=Math.floor(Number(e.expiresAtMs)||0),p=Math.max(0,Math.floor(Number(e.remainingUses)||0)),m=f>0&&f<=Date.now()?`expired`:p===0?`exhausted`:`restorable`,h=t&&N({authorization:t,auth:d,walletId:a,materialActivation:s.materialActivation,ownerScope:n})?t:null;try{let t={auth:d,curve:`ed25519`,chain:`near`,materialActivation:s.materialActivation,walletId:r(a),nearAccountId:o(s.nearAccountId),nearEd25519SigningKeyId:l(s.nearEd25519SigningKeyId),signerSlot:c,source:`durable_sealed_record`,thresholdSessionId:i,remainingUses:p,...f>0?{expiresAtMs:f}:{},updatedAtMs:Math.floor(Number(e.updatedAtMs)||0),...H(e)?{policyHint:H(e)}:{}};return h?{...t,state:m,authorizationState:`authorized`,authorization:h}:{...t,state:`deferred`,authorizationState:`authorization_required`}}catch{return null}}function ge(e){return e.auth.kind===`email_otp`}function _e(e,t,n){let i=String(e.walletId||``).trim(),a=String(e.nearAccountId||``).trim(),s=String(e.thresholdSessionId||``).trim();if(!i||!a||!s)return null;let c=t&&N({authorization:t,auth:e.auth,walletId:i,materialActivation:e.materialActivation,ownerScope:n})?t:null;try{let t={auth:e.auth,curve:`ed25519`,chain:`near`,materialActivation:e.materialActivation,walletId:r(i),nearAccountId:o(a),nearEd25519SigningKeyId:e.nearEd25519SigningKeyId,signerSlot:e.signerSlot,thresholdSessionId:s,source:`public_capability_reference`};if(!c)return{...t,state:`deferred`,authorizationState:`authorization_required`};let n=Math.floor(Number(c.status.expiresAtMs)||0),l=ge(e)?e:null,u=l?Math.min(l.expiresAtMs,n):n,d=u>0&&u<=Date.now()?`expired`:`ready`;return{...t,state:d,authorizationState:`authorized`,authorization:c,remainingUses:c.status.remainingUses,...u>0?{expiresAtMs:u}:{}}}catch{return null}}function P(e){if(e.state===`missing`)return!1;if(e.curve!==`ecdsa`){let t=String(e.thresholdSessionId||``).trim();return e.thresholdSessionId!==t||!t?!1:e.authorizationState===`authorization_required`?e.state===`deferred`:!e.authorization.operationCredential.walletSessionId||!e.authorization.session.quotaId||e.authorization.status.remainingUses<=0||e.authorization.status.expiresAtMs<=Date.now()?!1:e.auth.kind===`email_otp`||e.auth.kind===`passkey`}return e.auth.kind!==`email_otp`&&e.auth.kind!==`passkey`||e.source===`active_wallet_authority`&&(e.state!==`deferred`||e.authorizationState!==`authorization_required`||e.runtime.kind!==`active_wallet_authority_ecdsa_runtime_v1`||String(e.runtime.walletId)!==String(e.key.walletId)||!t(e.runtime.materialActivation,e.materialActivation)||e.runtime.publicFacts!==e.publicFacts)||!(e.key&&String(e.key.walletId||``).trim()&&String(e.key.ecdsaThresholdKeyId||``).trim()&&String(e.key.signingRootId||``).trim()&&String(e.key.signingRootVersion||``).trim()&&Array.isArray(e.key.participantIds)&&e.key.participantIds.length>0&&String(e.key.thresholdOwnerAddress||``).trim()&&`publicFacts`in e&&e.publicFacts&&e.publicFacts.keyHandle&&String(e.publicFacts.publicKeyB64u||``).trim()&&Array.isArray(e.publicFacts.participantIds)&&e.publicFacts.participantIds.length>0&&String(e.publicFacts.thresholdOwnerAddress||``).trim())||e.source===`canonical_capability`&&!fe(e)?!1:d(e.auth)===`passkey`?e.resolvedKey?.kind===`resolved_evm_family_ecdsa_key`&&e.resolvedKey.authBinding.kind===`passkey_ecdsa_auth_binding`&&String(e.resolvedKey.walletId)===String(e.key.walletId)&&e.resolvedKey.publicFacts===e.publicFacts:!(`resolvedKey`in e)}function F(e){return e===`missing`?null:e}function ve(e){return e||`unknown`}function I(e){let t=Math.floor(Number(e));return Number.isFinite(t)&&t>0?t:null}function ye(e){let t=Math.max(0,Math.floor(Number(e)));return Number.isFinite(t)?t:null}function L(e){if(!P(e.lane)||e.lane.curve!==`ed25519`)return null;let t=F(e.lane.state);if(!t)return null;let n={kind:`lane_candidate`,walletId:e.lane.walletId,nearAccountId:e.lane.nearAccountId,nearEd25519SigningKeyId:e.lane.nearEd25519SigningKeyId,signerSlot:e.lane.signerSlot,materialActivation:e.lane.materialActivation,auth:e.lane.auth,curve:`ed25519`,chain:`near`,thresholdSessionId:e.lane.thresholdSessionId,state:t,remainingUses:ye(e.lane.remainingUses),expiresAtMs:I(e.lane.expiresAtMs),updatedAtMs:I(e.lane.updatedAtMs),source:ve(e.lane.source)};return e.lane.authorizationState===`authorization_required`?{...n,authorizationState:`authorization_required`,state:`deferred`}:{...n,authorizationState:`authorized`,authorization:e.lane.authorization}}function be(e){if(!P(e.lane)||e.lane.curve!==`ecdsa`)return null;let t=F(e.lane.state);if(!t)return null;let n=d(e.lane.auth),i={kind:`lane_candidate`,walletId:r(e.walletId),auth:e.lane.auth,authMethod:n,curve:`ecdsa`,chain:e.lane.chainTarget.kind,key:e.lane.key,materialActivation:e.lane.materialActivation,...n===`passkey`?{resolvedKey:e.lane.resolvedKey}:{},keyHandle:e.lane.publicFacts.keyHandle,chainTarget:e.lane.chainTarget};switch(e.lane.source){case`active_wallet_authority`:return{...i,source:`active_wallet_authority`,runtime:e.lane.runtime,authorizationState:`authorization_required`,state:`deferred`};case`canonical_capability`:return e.lane.authorization?{...i,source:`canonical_capability`,authorizationState:`authorized`,authorization:e.lane.authorization,state:t}:{...i,source:`canonical_capability`,authorizationState:`authorization_required`,state:`deferred`};default:return e.lane}}function xe(e){if(!e||e.curve!==`ecdsa`||!e.chainTarget||!(`key`in e)||!e.key||!(`auth`in e)||!e.auth)return null;let t=d(e.auth);try{let n=f(e.auth);return[t,`ecdsa`,i(e.chainTarget),n,R(e),j(e.materialActivation)].join(`:`)}catch{return null}}function R(e){return s({walletId:e.key.walletId,publicFacts:e.publicFacts})}function z(e){if(!e||e.curve!==`ed25519`||e.chain!==`near`||e.state===`missing`||!e.auth)return null;let t=d(e.auth),n=String(e.walletId||``).trim(),r=String(e.nearAccountId||``).trim(),i=String(e.nearEd25519SigningKeyId||``).trim(),a=String(e.signerSlot||``).trim(),o=String(e.thresholdSessionId||``).trim(),s=e.materialActivation?j(e.materialActivation):``;return!t||!n||!r||!i||!a||!o||!s?null:[n,r,i,a,t,`ed25519`,`near`,o,s].join(`:`)}function B(e){return{curve:`ecdsa`,chainTarget:e.chainTarget,state:`missing`}}function Se(e,t){let n=i(t);return e.ecdsa.lanesByTarget[n]||B({chainTarget:t})}function V(e,t){let n=i(t);return e.ecdsa.candidatesByTarget[n]||[]}function Ce(){return{curve:`ed25519`,chain:`near`,state:`missing`}}function H(e){let t=Math.floor(Number(e.remainingUses)),n=Math.floor(Number(e.expiresAtMs)),r={};return Number.isFinite(t)&&t>=0&&(r.remainingUses=t),Number.isFinite(n)&&n>0&&(r.expiresAtMs=n),Object.keys(r).length?r:void 0}function U(e){return Math.floor(Number(`updatedAtMs`in e?e.updatedAtMs:0)||0)}function we(e){return ne(e.expiresAtMs??e.policyHint?.expiresAtMs)}function W(e){switch(e.state){case`ready`:return 5;case`restorable`:return 4;case`deferred`:return 3;case`expired`:case`exhausted`:return 2;case`missing`:return 1}}function G(e){return!P(e)||e.curve===`ecdsa`?0:e.source===`durable_sealed_record`?1:0}function Te(e,t){return W(e)-W(t)||G(e)-G(t)||U(e)-U(t)}function Ee(e,t){return Te(e,t)}function De(e,t){return W(e)-W(t)||G(e)-G(t)||U(e)-U(t)}function K(e){let t=f(e.auth),n=String(e.walletId||``).trim(),r=String(e.nearAccountId||``).trim(),i=String(e.nearEd25519SigningKeyId||``).trim(),a=String(e.signerSlot||``).trim(),o=j(e.materialActivation);return!t||!n||!r||!i||!a||!o?null:{walletId:n,authKey:t,nearAccountId:r,nearEd25519SigningKeyId:i,signerSlot:a,materialActivationKey:o}}function q(e){return[e.walletId,e.authKey,e.nearAccountId,e.nearEd25519SigningKeyId,e.signerSlot,e.materialActivationKey].map(e=>encodeURIComponent(e)).join(`|`)}function Oe(e){if(!P(e)||e.curve!==`ed25519`)return null;let t=K(e);return t?{groupKey:t,lane:e}:null}function ke(e,t){return Ee(t,e)}function J(e,t){return e>t?1:t>e?-1:0}function Ae(e,t){let n=e.localeCompare(t);return n>0?1:n<0?-1:0}function je(e){for(let t of e)if(t!==0)return t;return 0}function Me(e){return[]}function Ne(e){return!0}function Pe(e){return we(e.lane)}function Fe(){return`exact_target`}function Ie(e,t){return je([J(W(e.lane),W(t.lane)),J(G(e.lane),G(t.lane)),Ae(Le(e.lane),Le(t.lane))])}function Le(e){return[e.thresholdSessionId,e.authorizationState===`authorized`?e.authorization.operationCredential.walletSessionId:``,e.authorizationState===`authorized`?e.authorization.session.quotaId:``,e.source||`durable_sealed_record`].map(e=>String(e)).join(`|`)}const Re={groupKey:ze,groupKeyString:q,groupConflicts:Me,supersession:{isOperationUsable:Ne,generation:Pe,exactness:Fe,tieBreak:Ie}};function ze(e){return e.groupKey}function Be(e){let t=new Map;for(let n of e){let e=q(n.groupKey);t.set(e,[...t.get(e)||[],n])}return t}function Ve(e,t){let n=A(e,Re);switch(n.kind){case`selected`:return[n.selectedFact.lane];case`no_current_lane`:return[];case`conflicting_key_material`:return t.push({curve:`ed25519`,source:`canonical_lane_inventory`,reason:`conflicting_key_material`,message:`Ed25519 canonical lane inventory has conflicting material facts`}),[];case`ambiguous_material`:return t.push({curve:`ed25519`,source:`canonical_lane_inventory`,reason:`ambiguous_material`,message:`Ed25519 canonical lane inventory has incomparable usable records`}),[];default:return n}}function He(e,t){let n=e.map(Oe).filter(e=>e!==null),r=[];for(let e of Be(n).values())r.push(...Ve(e,t));return r.sort(ke)}function Ue(e){if(!P(e)||e.curve!==`ed25519`)return null;let t=String(e.thresholdSessionId||``).trim();return e.authorizationState!==`authorized`||!t?null:`${e.authorization.operationCredential.walletSessionId}:${e.authorization.session.quotaId}:${t}`}function We(e){if(!P(e.primaryLane)||e.primaryLane.curve!==`ed25519`||M(e.primaryLane)!==`passkey`)return e.primaryLane;let t=Ue(e.primaryLane);return t&&e.candidates.find(e=>P(e)&&e.curve===`ed25519`&&M(e)===`email_otp`&&Ue(e)===t)||e.primaryLane}function Ge(){try{return globalThis.localStorage?.getItem(`seams:debug:signing-session`)===`1`}catch{return!1}}function Y(e){return e?P(e)?{present:!0,authMethod:d(e.auth),curve:e.curve,keyHandle:e.publicFacts.keyHandle,walletId:e.key.walletId,chainTarget:e.chainTarget,targetKey:i(e.chainTarget),state:e.state,source:e.source,evmFamilyKeyFingerprint:R(e),ecdsaThresholdKeyId:e.key.ecdsaThresholdKeyId,participantIds:e.publicFacts.participantIds,thresholdOwnerAddress:e.publicFacts.thresholdOwnerAddress,remainingUses:e.remainingUses,expiresAtMs:e.expiresAtMs,updatedAtMs:e.updatedAtMs}:{present:!0,curve:e.curve,chainTarget:e.chainTarget,state:e.state}:{present:!1}}function Ke(e){switch(e.source){case`canonical_capability`:return`canonical_capability`;case`active_wallet_authority`:return`active_wallet_authority`;default:return e}}function qe(e){let t=f(e.auth);return{walletId:String(e.key.walletId),authKey:t,materialActivationKey:j(e.materialActivation),ecdsaThresholdKeyId:String(e.key.ecdsaThresholdKeyId),signingRootId:String(e.key.signingRootId),signingRootVersion:String(e.key.signingRootVersion||`default`)}}function Je(e){return[e.walletId,e.authKey,e.materialActivationKey,e.ecdsaThresholdKeyId,e.signingRootId,e.signingRootVersion].map(e=>encodeURIComponent(e)).join(`|`)}function Ye(e){let t=qe(e);return t?{source:Ke(e),groupKey:t,chainTargetKey:i(e.chainTarget),lane:e}:null}function Xe(e){let t=f(e.auth);return[String(e.key.walletId),t,j(e.materialActivation),String(e.key.signingRootId),String(e.key.signingRootVersion||`default`)].map(e=>encodeURIComponent(e)).join(`|`)}function X(e,t){return[...new Set(e.map(e=>t(e.lane)).filter(Boolean))].sort()}function Ze(e){return[{field:`ecdsaThresholdKeyId`,values:X(e.facts,e=>String(e.key.ecdsaThresholdKeyId||``))},{field:`thresholdOwnerAddress`,values:X(e.facts,e=>String(e.publicFacts.thresholdOwnerAddress||``).toLowerCase())},{field:`keyHandle`,values:X(e.facts,e=>String(e.publicFacts.keyHandle||``))},{field:`publicKeyB64u`,values:X(e.facts,e=>String(e.publicFacts.publicKeyB64u||``))},{field:`participantIds`,values:X(e.facts,e=>e.publicFacts.participantIds.map(e=>Number(e)).join(`,`))}].filter(e=>e.values.length>1).map(t=>({groupKey:e.key,field:t.field,values:t.values}))}function Qe(e){let t=new Map;for(let n of e){let e=Xe(n.lane);e&&t.set(e,[...t.get(e)||[],n])}let n=new Map;for(let[e,r]of t){let t=r[0];if(!t)continue;let i=Ze({key:t.groupKey,facts:r});i.length&&n.set(e,i)}return n}function $e(e){let t=Xe(e.fact.lane);return t&&e.conflictsByFamilyGroup.get(t)||[]}function et(e){return e.filter(e=>P(e)&&e.curve===`ecdsa`).map(Ye).filter(e=>e!==null)}function tt(e){return e.source===`active_wallet_authority`?2:1}function nt(e){return e.groupKey}function rt(e){let t=e[0];return t?Ze({key:t.groupKey,facts:e}):[]}function it(e){return e.lane.source===`active_wallet_authority`?!0:e.lane.state!==`deferred`||!e.lane.authorization}function at(e){return we(e.lane)}function ot(e){return`exact_target`}function Z(e){return[j(e.materialActivation),e.source,i(e.chainTarget)].map(e=>String(e)).join(`|`)}function st(e,t){return je([J(W(e.lane),W(t.lane)),J(tt(e.lane),tt(t.lane)),Ae(Z(e.lane),Z(t.lane))])}const ct={groupKey:nt,groupKeyString:Je,groupConflicts:rt,supersession:{isOperationUsable:it,generation:at,exactness:ot,tieBreak:st}};function lt(e){let t=new Map;for(let n of e)t.set(Je(n.groupKey),n.groupKey);return[...t.values()]}function ut(e){let t=A(e,ct);switch(t.kind){case`selected`:return{kind:`selected`,selectedFact:t.selectedFact,supersededFacts:t.supersededFacts};case`no_current_lane`:return{kind:`no_current_lane`,unusableFacts:t.unusableFacts};case`conflicting_key_material`:return{kind:`conflicting_key_material`,conflicts:t.conflicts};case`ambiguous_material`:return{kind:`ambiguous_material`,candidates:lt(t.candidates),candidateFacts:t.candidates};default:return t}}function dt(e){return P(e)?Z(e):null}function ft(e){let t={},n={},r=Object.fromEntries(Object.entries(e.candidatesByTarget).map(([e,t])=>[e,pt(t,dt)])),a=Qe(Object.values(r).flatMap(et));for(let o of e.targets){let s=i(o),c=et(r[s]||[]),l=c.flatMap(e=>$e({fact:e,conflictsByFamilyGroup:a}));if(l.length){e.invalidLanes.push({curve:`ecdsa`,source:`canonical_lane_inventory`,reason:`conflicting_key_material`,targetKey:s,groupKey:l[0]?.groupKey,conflicts:l}),t[s]=[],n[s]=B({chainTarget:o});continue}let u=ut(c);switch(u.kind){case`selected`:t[s]=[u.selectedFact.lane],n[s]=u.selectedFact.lane;break;case`no_current_lane`:t[s]=[],n[s]=B({chainTarget:o});break;case`conflicting_key_material`:e.invalidLanes.push({curve:`ecdsa`,source:`canonical_lane_inventory`,reason:`conflicting_key_material`,targetKey:s,groupKey:u.conflicts[0]?.groupKey,conflicts:u.conflicts}),t[s]=[],n[s]=B({chainTarget:o});break;case`ambiguous_material`:e.invalidLanes.push({curve:`ecdsa`,source:`canonical_lane_inventory`,reason:`ambiguous_material`,targetKey:s}),t[s]=[],n[s]=B({chainTarget:o});break}}return{lanesByTarget:n,candidatesByTarget:t}}function pt(e,t,n=Te){let r=new Map,i=[];for(let n of e){let e=t(n);if(!e){i.push(n);continue}r.set(e,[...r.get(e)||[],n])}return[...[...r.values()].map(e=>[...e].sort((e,t)=>n(t,e))[0]),...i]}function mt(e){let t=new Set(e.filter(e=>P(e)&&e.curve===`ed25519`&&e.source===`durable_sealed_record`&&(e.state===`ready`||e.state===`restorable`)).map(K).filter(e=>e!==null).map(q));return t.size?e.filter(e=>{if(!P(e)||e.curve!==`ed25519`||e.source!==`public_capability_reference`)return!0;let n=K(e);return!n||!t.has(q(n))}):[...e]}async function ht(e,t){return e.state===`missing`||f(e.auth)!==f(t.auth)||!await vt(e,t)?!1:t.auth.kind===`email_otp`?!0:`keyFamily`in t&&t.keyFamily===`ecdsa`?!1:e.signerSlot===t.signerSlot}function gt(e,t){return e.state===`missing`||f(e.auth)!==f(t.auth)?!1:_t(e,t)}function _t(e,t){let n=t.auth.kind===`email_otp`?t.ownerAuthority:void 0;if(!n)return!0;if(e.curve===`ecdsa`&&e.source===`active_wallet_authority`)return e.runtime.factorAuthorityRef.walletAuthMethodId===n.walletAuthMethodId&&String(e.runtime.factorAuthorityRef.authorityDigest)===String(n.authorityDigest);if(e.curve===`ecdsa`&&e.source===`canonical_capability`){let t=e.capability.manifest.signer.authority;return t.walletAuthMethodId===n.walletAuthMethodId&&String(t.authorityDigest)===String(n.authorityDigest)}return!1}async function vt(e,t){let r=t.auth.kind===`email_otp`?t.ownerAuthority:void 0;if(!r)return!0;if(e.state===`missing`||e.curve!==`ed25519`)return!1;if(e.authorizationState===`authorization_required`)return!0;try{let t=await n({authority:e.authorization.selectedFactorAuthority});return t.walletId===e.walletId&&t.walletAuthMethodId===r.walletAuthMethodId&&t.authorityDigest===r.authorityDigest}catch{return!1}}async function yt(e,t){let n=[];for(let r of e)await ht(r,t)&&n.push(r);return n}async function bt(e,t){let n=r(e.walletId),a=new Map;for(let t of e.ecdsaChainTargets)a.set(i(t),t);let o=[...a.values()],[s,c,l,u]=await Promise.all([t.listSealedRecordsForWallet({walletId:n,filter:{...e.authMethod?{authMethod:e.authMethod}:{},curve:`ed25519`}}),t.listPublicCapabilityReferences?.()??[],t.readActiveWalletSessionAuthorization?.(n)??{kind:`missing`},o.length>0&&t.listCanonicalEcdsaLanesForWallet?t.listCanonicalEcdsaLanesForWallet({walletId:n}):[]]),f=l.kind===`found`?l.authorization:null,p=[...o],m={},h={},ee={};for(let e of p){let t=i(e);m[t]=B({chainTarget:e}),h[t]=[],ee[t]=0}let g=[],_=0,v=Ge(),y=[],b=[];for(let t of s){let n=he(t,f,e.ownerScope);if(!n)continue;g.push(n);let r=U(n);_=Math.max(_,r)}for(let r of c){if(String(r.walletId)!==String(n))continue;let i=l.kind===`exhausted`||l.kind===`expired`;if(!t.isPublicCapabilityActive?.(r)&&!i)continue;let a=_e(r,f,e.ownerScope);a&&(e.authMethod&&d(a.auth)!==e.authMethod||g.push(a))}for(let t of u){let r=d(t.auth);if(e.authMethod&&r!==e.authMethod||String(t.key.walletId)!==String(n))continue;let o=i(t.chainTarget);if(!a.has(o))continue;h[o]||=[],h[o].push(t);let s=U(t);_=Math.max(_,s),y.push({result:`accepted`,targetKey:o,lane:Y(t)})}let x=o.length>0&&t.listActiveWalletAuthorityEcdsaLanesForWallet?await t.listActiveWalletAuthorityEcdsaLanesForWallet({walletId:n,chainTargets:o}):[];for(let t of x){let r=d(t.auth);if(e.authMethod&&r!==e.authMethod||String(t.key.walletId)!==String(n))continue;let o=i(t.chainTarget);a.has(o)&&(h[o]||=[],h[o].push(t),y.push({result:`accepted`,targetKey:o,lane:Y(t)}))}let S=e.ownerScope,C=S?await yt(g,S):g;if(S)for(let e of Object.keys(h))h[e]=(h[e]||[]).filter(e=>gt(e,S));let w=He(pt(mt(C),z,De).sort(ke),b),T=We({primaryLane:w[0]||Ce(),candidates:w}),E=ft({targets:p,candidatesByTarget:ft({targets:p,candidatesByTarget:h,invalidLanes:b}).candidatesByTarget,invalidLanes:b}),D={walletId:n,generation:_,ecdsa:{targets:p,lanesByTarget:E.lanesByTarget,candidatesByTarget:E.candidatesByTarget},lanes:{ed25519:{near:T}},candidates:{ed25519:{near:w}},diagnostics:{invalidLanes:b}},O=p.map(e=>{let t=i(e),n=D.ecdsa.candidatesByTarget[t]||[],r=D.ecdsa.lanesByTarget[t],a=r?.state||`missing`;return n.length>0&&a!==`missing`?null:{chainTarget:e,targetKey:t,candidateCount:n.length,selectedLane:Y(r)}}).filter(e=>!!e),k={walletId:n,authMethod:e.authMethod||`any`,requestedTargets:p.map(e=>({chainTarget:e,targetKey:i(e)})),sealedRecordCount:0,runtimeRecordCount:u.length,durableDiscovery:[],runtimeDiscovery:y,resultSelectedLanesByTarget:Object.fromEntries(Object.entries(D.ecdsa.lanesByTarget).map(([e,t])=>[e,Y(t)])),resultCandidatesByTarget:Object.fromEntries(Object.entries(D.ecdsa.candidatesByTarget).map(([e,t])=>[e,t.map(e=>Y(e))]))};if(v&&O.length>0)try{console.warn(`[SigningLanes][available][ecdsa][missing-candidates]`,JSON.stringify({...k,missingEcdsaTargets:O}))}catch{}if(v)try{console.info(`[SigningLanes][available][ecdsa]`,JSON.stringify(k))}catch{}return D}function xt(e){return{tag:`IntentReceived`,intent:e}}function St(e,t){return{tag:`AvailableLanesRead`,intent:e.intent,availableLanes:t.availableLanes}}function Ct(e){return!!e&&e.curve===`ed25519`&&e.chain===`near`&&P(e)}function wt(e){return!!e&&e.curve===`ecdsa`&&!!e.chainTarget&&P(e)}function Tt(e){return z(e)||null}function Et(e){return e.state===`ready`?`ready`:e.state===`restorable`?`restorable`:null}function Q(e){return e.state===`expired`?`expired`:e.state===`exhausted`?`exhausted`:null}function Dt(e,t){return{auth:e.auth,curve:`ed25519`,chain:`near`,materialActivation:e.materialActivation,walletId:e.walletId,nearAccountId:e.nearAccountId,nearEd25519SigningKeyId:e.nearEd25519SigningKeyId,signerSlot:e.signerSlot,authorizationState:`authorized`,authorization:e.authorization,state:t,thresholdSessionId:e.thresholdSessionId,...e.remainingUses==null?{}:{remainingUses:e.remainingUses},...e.expiresAtMs==null?{}:{expiresAtMs:e.expiresAtMs},...e.policyHint?{policyHint:e.policyHint}:{},...e.updatedAtMs==null?{}:{updatedAtMs:e.updatedAtMs}}}function Ot(e){let t=Et(e);if(!t)throw Error(`[SigningSessionSelectLane] Ed25519 lane is not transaction-ready`);return Dt(e,t)}function kt(e){let t=Q(e);if(!t)throw Error(`[SigningSessionSelectLane] Ed25519 lane is not transaction-reauthable`);return Dt(e,t)}function $(e){return m({walletId:e.walletId,nearAccountId:e.nearAccountId,nearEd25519SigningKeyId:e.nearEd25519SigningKeyId,signerSlot:e.signerSlot,auth:e.auth,walletSessionId:e.authorization.operationCredential.walletSessionId,quotaId:e.authorization.session.quotaId,thresholdSessionId:e.thresholdSessionId})}function At(e){return{kind:`near_ed25519_transaction_ready_lane`,candidate:e.candidate,availableLane:Ot(e.lane),selectedLane:$(e.candidate),authorityKey:e.authorityKey}}function jt(e){return{kind:`near_ed25519_transaction_reauth_lane`,candidate:e.candidate,availableLane:kt(e.lane),selectedLane:$(e.candidate),authorityKey:e.authorityKey}}function Mt(e){if(!Ct(e)||e.authorizationState!==`authorized`)return null;let t=Et(e),n=Q(e);if(!t&&!n)return null;let r=Tt(e);if(!r)return null;let i=L({lane:e});return!i||i.authorizationState!==`authorized`?null:t?At({lane:e,candidate:i,authorityKey:r}):jt({lane:e,candidate:i,authorityKey:r})}function Nt(e){if(e.curve===`ed25519`){if(e.authorizationState!==`authorized`||!e.authorization)throw Error(`[SigningSessionSelectLane] Ed25519 lane requires active authorization`);return m({walletId:e.walletId,nearAccountId:e.nearAccountId,nearEd25519SigningKeyId:e.nearEd25519SigningKeyId,signerSlot:e.signerSlot,auth:e.auth,walletSessionId:e.authorization.operationCredential.walletSessionId,quotaId:e.authorization.session.quotaId,thresholdSessionId:e.thresholdSessionId})}if(e.authorizationState!==`authorized`)throw Error(`[SigningSessionSelectLane] ECDSA lane requires active authorization`);return ee({key:e.key,materialActivation:e.materialActivation,keyHandle:e.keyHandle,walletId:e.walletId,auth:e.auth,authorization:e.authorization,chainTarget:e.chainTarget})}function Pt(e){return[...new Set(e.map(e=>g(e.candidate)))].sort()}function Ft(e){switch(e.length){case 0:return null;case 1:{let[t]=e;return t||null}default:return null}}function It(e){let t=e.intent;return t.curve===`ed25519`&&t.chain===`near`?Lt({...e,intent:t}):t.curve===`ecdsa`?Bt({...e,intent:t}):{ok:!1,failure:{kind:`unsupported_intent`,curve:t.curve||`unknown`,chain:t.chain||`unknown`}}}function Lt(e){let t=zt(e);if(!t.ok)return t;if(t.kind===`authorization_required`)return{ok:!1,failure:{kind:`no_candidate`,authMethod:g(t.candidate)}};let n=Mt(t.availableLane);if(!n)throw Error(`[SigningSessionSelectLane] authorized Ed25519 lane is not selectable`);return{ok:!0,lane:t.lane,candidate:t.candidate,availableLane:n.availableLane,selectionCandidate:n}}function Rt(e,t){if(e.candidate.walletId!==t.walletId||e.candidate.nearAccountId!==t.signerSelection.nearAccountId)return!1;switch(t.signerSelection.kind){case`near_account`:return!0;case`signer_slot`:return e.candidate.signerSlot===t.signerSelection.signerSlot}}function zt(e){let t=e.intent,n=Ut(t,(e.availableLanes?.candidates.ed25519.near||[]).filter(Ct).map(e=>({availableLane:e,candidate:L({lane:e})})).filter(e=>e.candidate!==null).filter(e=>Rt(e,t)));if(!n.length)return{ok:!1,failure:t.authSelectionPolicy.kind===`any`?{kind:`no_candidate`}:{kind:`no_candidate`,authMethod:t.authSelectionPolicy.authMethod}};let r=Ft(n);if(!r)return{ok:!1,failure:{kind:`ambiguous_material`,allowedAuthMethods:Pt(n)}};if(r.candidate.authorizationState===`authorization_required`){if(r.availableLane.authorizationState!==`authorization_required`)throw Error(`[SigningSessionSelectLane] Ed25519 material authorization mismatch`);return{ok:!0,kind:`authorization_required`,candidate:r.candidate,availableLane:r.availableLane}}if(r.availableLane.authorizationState!==`authorized`)throw Error(`[SigningSessionSelectLane] Ed25519 material authorization mismatch`);return{ok:!0,kind:`authorized`,lane:$(r.candidate),candidate:r.candidate,availableLane:r.availableLane}}function Bt(e){let t=Vt(e);return t.ok?t.kind===`authorization_required`?{ok:!1,failure:{kind:`no_candidate`,authMethod:g(t.candidate)}}:{ok:!0,lane:t.lane,candidate:t.candidate,availableLane:t.availableLane,selectionCandidate:{candidate:t.candidate,availableLane:t.availableLane}}:t}function Vt(e){let t=e.intent,n=Ut(t,e.availableLanes?V(e.availableLanes,t.chainTarget).filter(wt).map(e=>({availableLane:e,candidate:be({walletId:t.walletId,lane:e})})).filter(e=>e.candidate!==null):[]);if(!n.length)return{ok:!1,failure:t.authSelectionPolicy.kind===`any`?{kind:`no_candidate`}:{kind:`no_candidate`,authMethod:t.authSelectionPolicy.authMethod}};let r=Ft(n);return r?r.candidate.authorizationState===`authorization_required`?{ok:!0,kind:`authorization_required`,candidate:r.candidate,availableLane:r.availableLane}:{ok:!0,kind:`authorized`,lane:Ht({intent:t,candidate:r.candidate}),candidate:r.candidate,availableLane:r.availableLane}:{ok:!1,failure:{kind:`ambiguous_material`,allowedAuthMethods:Pt(n)}}}function Ht(e){if(!a(e.candidate.chainTarget,e.intent.chainTarget))throw Error(`[SigningSessionSelectLane] ECDSA available lane target mismatch`);return Nt(e.candidate)}function Ut(e,t){if(e.authSelectionPolicy.kind===`any`)return t;let n=e.authSelectionPolicy.authMethod;return t.filter(e=>g(e.candidate)===n)}function Wt(e){let t=It({intent:e.intent,availableLanes:e.availableLanes});return t.ok?{tag:`LaneSelected`,intent:e.intent,lane:t.lane,candidate:t.candidate,availableLane:t.availableLane,selectionCandidate:t.selectionCandidate}:{tag:`LaneSelectionFailed`,intent:e.intent,failure:t.failure}}async function Gt(e){let t=await e.lifecycleAdapter.prepare({...e.operation?{operation:e.operation}:{}});if(t.lane.curve!==t.readiness.readiness.curve)throw Error(`[SigningSession] prepared lane and readiness curves do not match`);let n={lane:t.lane,readiness:t.readiness.readiness,expiresAtMs:t.readiness.expiresAtMs,remainingUses:t.readiness.remainingUses,usesNeeded:t.readiness.usesNeeded,...t.readiness.trustedStatusAuth?{trustedStatusAuth:t.readiness.trustedStatusAuth}:{},forceFreshAuth:e.forceFreshAuth||t.forceFreshAuth,sensitiveOperationPolicy:e.sensitiveOperationPolicy,missingWhenExpiresAtMissing:e.missingWhenExpiresAtMissing},r=await e.coordinator.resolveAuthPlanFromReadiness(n,e.onPlannerTrace);return{...e.operation?{operation:e.operation}:{},lane:t.lane,authMethod:d(t.lane.auth),signingSessionPlan:r.signingSessionPlan,readiness:r.readiness,expiresAtMs:r.expiresAtMs,remainingUses:r.remainingUses,...t.readiness.trustedStatusAuth?{trustedStatusAuth:t.readiness.trustedStatusAuth}:{},availableLanesGeneration:Math.max(0,Math.floor(Number(t.availableLanesGeneration)||0)),metadata:t.metadata||{}}}function Kt(e,t){return{tag:`ReadinessClassified`,intent:e.intent,lane:e.lane,candidate:e.candidate,availableLane:e.availableLane,readiness:t}}function qt(e){return{intent:e.intent,lane:e.lane,readiness:e.readiness}}async function Jt(e){let t=null,n=null,r=null,i=await Gt({intent:Yt(e.intent),lifecycleAdapter:{prepare:async r=>{let i=await e.lifecycleAdapter.prepare({intent:e.intent,...r.operation?{operation:r.operation}:{}});return t=i.transactionLane,n=i.transactionIntent||e.intent,{lane:i.lane,readiness:i.readiness,availableLanesGeneration:i.availableLanesGeneration,forceFreshAuth:i.forceFreshAuth,metadata:{...i.metadata||{},transactionLane:i.transactionLane,transactionOperation:null}}}},coordinator:e.coordinator,...e.operation?{operation:e.operation}:{},forceFreshAuth:e.forceFreshAuth,sensitiveOperationPolicy:e.sensitiveOperationPolicy,missingWhenExpiresAtMissing:e.missingWhenExpiresAtMissing,onPlannerTrace:e.onPlannerTrace});if(!t)throw Error(`[SigningSession] transaction prepare did not return a transaction lane`);return r={intent:n||e.intent,lane:t,readiness:Xt(i)},i.metadata.transactionOperation=r,{thresholdOperation:i,transactionOperation:r}}function Yt(e){return{kind:`transaction_sign`,chain:e.chain,curve:e.curve,walletId:String(e.walletId),reason:`transaction`}}function Xt(e){let t=e.readiness.status;return t===`ready`?{status:`ready`,remainingUses:Math.max(0,Math.floor(Number(e.remainingUses)||0)),expiresAtMs:Math.max(0,Math.floor(Number(e.expiresAtMs)||0))}:t===`missing_session`?{status:`status_unavailable`,reason:`missing_session`}:t===`expired`?{status:`expired`}:t===`exhausted`?{status:`exhausted`}:t===`auth_unavailable`?{status:`auth_unavailable`,reason:`auth_unavailable`}:t===`status_unavailable`?{status:`status_unavailable`,reason:`status_unavailable`}:t===`status_unknown`?{status:`status_unknown`,reason:`status_unknown`}:{status:`policy_blocked`,reason:t}}export{w as C,C as S,ue as _,St as a,O as b,Wt as c,M as d,V as f,bt as g,P as h,xt as i,de as l,xe as m,qt as n,Vt as o,Se as p,Jt as r,zt as s,Kt as t,pe as u,j as v,S as x,te as y};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{S as e,o as t,x as n}from"./domainIds-GDzjOs6i.js";import{d as r,h as i}from"./capabilityKinds-XaXXiD2B.js";import{n as a}from"./signerDomain-BhUTzDmF.js";function o(e){switch(e.kind){case a.passkey:return a.passkey;case a.emailOtp:return a.emailOtp}throw Error(`[SigningSession] unsupported signing lane auth binding`)}function s(e,t){let n=String(e||``).trim();if(!n)throw Error(`[SigningSession] ${t} is required for signing lane authority`);return n}function c(e){switch(e.kind){case a.passkey:return[a.passkey,s(String(e.rpId),`passkey rpId`),s(e.credentialIdB64u,`passkey credential`)].join(`:`);case a.emailOtp:return[a.emailOtp,s(e.providerSubjectId,`Email OTP provider subject`)].join(`:`)}throw Error(`[SigningSession] unsupported signing lane auth binding`)}const l={TransactionSign:`transaction_sign`},u={Cached:`cached`,Reauth:`reauth`},d={WarmSession:`warm_session`,EmailOtpReauth:`email_otp_reauth`,PasskeyReauth:`passkey_reauth`,NotReady:`not_ready`,OperationStepUp:`operation_step_up`};function f(e,t){let n=String(e||``).trim();if(!n)throw Error(`[SigningSession] ${t} is required`);return n}function p(e,t){if(!e.ok)throw Error(`[SigningSession] ${e.error.message||`${t} is required`}`);return e.value}function m(e,t){if(!e.ok)throw Error(`[SigningSession] ${e.error.message||`${t} is required`}`);return e.value}const h={walletSession(e){return m(i(e),`walletSessionId`)},walletSessionQuota(e){return m(r(e),`quotaId`)},thresholdEd25519Session(t){return p(e(t),`thresholdEd25519SessionId`)},thresholdEcdsaSession(e){return p(n(e),`thresholdEcdsaSessionId`)},emailOtpChallenge(e){return p(t(e),`emailOtpChallengeId`)},signingOperation(e){return f(e,`signingOperationId`)},signingOperationFingerprint(e){return f(e,`signingOperationFingerprint`)}};function g(e){let t=e.identity.signer,n={authMethod:o(e.auth),curve:e.curve,keyKind:e.keyKind,chainFamily:e.chainFamily,sessionOrigin:e.sessionOrigin,storageSource:e.storageSource,retention:e.retention};switch(t.kind){case`evm_family_ecdsa_signer`:return{...n,curve:`ecdsa`,walletId:t.walletId};case`near_ed25519_signer`:return{...n,curve:`ed25519`,walletId:t.account.wallet.walletId,nearAccountId:t.account.nearAccountId,nearEd25519SigningKeyId:t.nearEd25519SigningKeyId}}}function _(e){return{kind:e.kind,lane:g(e.lane)}}export{g as a,o as c,d as i,l as n,_ as o,h as r,c as s,u as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{B as e,z as t}from"./domainIds-GDzjOs6i.js";function n(e,n,r=`is required`){let i=t(e);if(!i)throw Error(`${n} ${r}`);return i}function r(e){return t(e)||void 0}function i(e,t){return n(e,t,`must be a non-empty string`)}function a(e,t,n=`is invalid`){if(typeof e!=`string`||e.length===0||e.trim()!==e)throw Error(`${t} ${n}`);return e}function o(e,t){let n=String(e||``).trim();if(!n)throw Error(`${t} is required`);return n}function s(t,n){let r=e(t);if(!r)throw Error(`${n} is required`);return r}function c(e){return typeof e==`object`&&!!e}function l(e){return c(e)&&!Array.isArray(e)}function u(e){return typeof e==`string`}function d(e){return typeof e==`function`}function f(e){return typeof e==`boolean`}function p(e){return Array.isArray(e)}function m(e){return l(e)?e:null}function h(e){return c(e)?e:null}function g(e,t){if(!l(e))throw Error(`${t} must be an object`);return e}function _(e,t){return Object.fromEntries(Object.entries(g(e,t)))}function v(e,t){if(!Array.isArray(e))throw Error(`${t} must be an array`);return e}function y(e,t=`value`){if(typeof e!=`string`)throw Error(`Invalid ${t}: expected string`);return e}function b(e){if(!e||!c(e))return;let t={};for(let[n,r]of Object.entries(e))d(r)||(t[n]=r);return t}function x(e){if(!c(e))return!1;let t=`transaction`in e,n=`signature`in e,r=e,i=Array.isArray(r.borsh_bytes)||r.borshBytes instanceof Uint8Array,a=typeof e.base64Encode==`function`;return t&&n&&i&&!a}function S(e){let t=Array.isArray(e.borsh_bytes)?e.borsh_bytes:void 0;if(t)return t;let n=e.borshBytes instanceof Uint8Array?e.borshBytes:void 0;return Array.from(n||new Uint8Array)}export{g as _,s as a,b,f as c,l as d,x as f,i as g,a as h,o as i,d as l,v as m,h as n,S as o,u as p,y as r,p as s,m as t,c as u,_ as v,r as x,n as y};
|