@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.
Files changed (1287) hide show
  1. package/README.md +140 -254
  2. package/THIRD_PARTY_NOTICES.md +7 -1
  3. package/dist/.build-inputs.sha256 +1 -1
  4. package/dist/esm/SeamsWeb/SeamsWeb.js +98 -1825
  5. package/dist/esm/SeamsWeb/assembly/createWalletIframeRouter.js +4 -15
  6. package/dist/esm/SeamsWeb/index.js +2 -2
  7. package/dist/esm/SeamsWeb/operations/devices/scanDevice.js +3 -361
  8. package/dist/esm/SeamsWeb/operations/near/delegateAction.js +18 -106
  9. package/dist/esm/SeamsWeb/operations/recovery/walletRecovery.js +3 -3
  10. package/dist/esm/SeamsWeb/operations/recovery/walletRecoveryCommit.js +8 -209
  11. package/dist/esm/SeamsWeb/operations/recovery/walletRecoveryDurablePayload.js +5 -5
  12. package/dist/esm/SeamsWeb/operations/recovery/walletRecoveryJournal.js +2 -64
  13. package/dist/esm/SeamsWeb/operations/tempo/executeEvmFamilyTransaction.js +1 -1
  14. package/dist/esm/SeamsWeb/operations/tempo/index.js +1 -13
  15. package/dist/esm/SeamsWeb/publicApi/auth.js +3 -19
  16. package/dist/esm/SeamsWeb/publicApi/createPublicApi.js +59 -94
  17. package/dist/esm/SeamsWeb/publicApi/currentWallet.js +1 -1
  18. package/dist/esm/SeamsWeb/publicApi/devices.js +33 -64
  19. package/dist/esm/SeamsWeb/publicApi/evm.js +28 -93
  20. package/dist/esm/SeamsWeb/publicApi/keyExport.js +26 -52
  21. package/dist/esm/SeamsWeb/publicApi/near.js +140 -435
  22. package/dist/esm/SeamsWeb/publicApi/placement.js +206 -0
  23. package/dist/esm/SeamsWeb/publicApi/session.js +13 -0
  24. package/dist/esm/SeamsWeb/publicApi/tempo.js +64 -221
  25. package/dist/esm/SeamsWeb/publicApi/waitForNearAccount.js +72 -0
  26. package/dist/esm/SeamsWeb/walletIframe/client/deviceCommands.js +50 -0
  27. package/dist/esm/SeamsWeb/walletIframe/client/emailOtpCommands.js +25 -0
  28. package/dist/esm/SeamsWeb/walletIframe/client/evmFamilyCommands.js +118 -0
  29. package/dist/esm/SeamsWeb/walletIframe/client/inboundMessages.js +223 -0
  30. package/dist/esm/SeamsWeb/walletIframe/client/nearCommands.js +153 -0
  31. package/dist/esm/SeamsWeb/walletIframe/client/overlay/overlay-styles.js +2 -2
  32. package/dist/esm/SeamsWeb/walletIframe/client/placementCommands.js +65 -0
  33. package/dist/esm/SeamsWeb/walletIframe/client/preferenceState.js +93 -0
  34. package/dist/esm/SeamsWeb/walletIframe/client/preferences.js +117 -0
  35. package/dist/esm/SeamsWeb/walletIframe/client/registrationCommands.js +92 -0
  36. package/dist/esm/SeamsWeb/walletIframe/client/router.js +241 -583
  37. package/dist/esm/SeamsWeb/walletIframe/client/sessionCommands.js +61 -0
  38. package/dist/esm/SeamsWeb/walletIframe/coordinator.js +175 -134
  39. package/dist/esm/SeamsWeb/walletIframe/host/ui/auth-menu/AuthMenuSurface.js +13 -1
  40. package/dist/esm/SeamsWeb/walletIframe/host/ui/auth-menu/mountAuthMenuSurface.js +1 -1
  41. package/dist/esm/SeamsWeb/walletIframe/shared/configuration.js +37 -0
  42. package/dist/esm/SeamsWeb/walletIframe/shared/exactSessionState.js +31 -11
  43. package/dist/esm/SeamsWeb/walletIframe/shared/facadeBoundary.js +96 -0
  44. package/dist/esm/SeamsWeb/walletIframe/shared/messages.js +6 -32
  45. package/dist/esm/advanced.js +3 -3
  46. package/dist/esm/build-paths.js +0 -4
  47. package/dist/esm/core/accountData/near/accountProjection.js +3 -3
  48. package/dist/esm/core/accountData/near/keyMaterial.js +2 -2
  49. package/dist/esm/core/config/chains.js +1 -28
  50. package/dist/esm/core/config/configBuilder.js +3 -14
  51. package/dist/esm/core/config/defaultConfigs.js +4 -6
  52. package/dist/esm/core/config/presignatures.js +6 -0
  53. package/dist/esm/core/diagnostics/registration.js +8 -0
  54. package/dist/esm/core/indexedDB/accountKeyMaterial.js +1 -1
  55. package/dist/esm/core/indexedDB/linkedAuthoritySignerMaterial.js +4 -125
  56. package/dist/esm/core/indexedDB/normalization.js +7 -1
  57. package/dist/esm/core/indexedDB/pendingWalletRecoveryCommit.js +1 -1
  58. package/dist/esm/core/indexedDB/pendingWalletRegistrationCommit.js +3 -41
  59. package/dist/esm/core/indexedDB/seamsWalletDB/accountSignerRows.js +261 -0
  60. package/dist/esm/core/indexedDB/seamsWalletDB/ecdsaCapabilityManifestLookups.js +2 -201
  61. package/dist/esm/core/indexedDB/seamsWalletDB/ecdsaCapabilityManifestRecords.js +5 -736
  62. package/dist/esm/core/indexedDB/seamsWalletDB/ecdsaCapabilityManifestStore.js +6 -1084
  63. package/dist/esm/core/indexedDB/seamsWalletDB/ecdsaClientPresignatures.js +20 -138
  64. package/dist/esm/core/indexedDB/seamsWalletDB/manager.js +100 -4
  65. package/dist/esm/core/indexedDB/seamsWalletDB/nonceLeaseRows.js +156 -0
  66. package/dist/esm/core/indexedDB/seamsWalletDB/registrationSetup.js +4 -11
  67. package/dist/esm/core/indexedDB/seamsWalletDB/repositories.js +91 -547
  68. package/dist/esm/core/indexedDB/seamsWalletDB/signerOutboxRows.js +90 -0
  69. package/dist/esm/core/indexedDB/seamsWalletDB/walletCustodyEcdsaContinuity.js +7 -92
  70. package/dist/esm/core/indexedDB/seamsWalletDB/walletOwnershipGeneration.js +43 -0
  71. package/dist/esm/core/indexedDB/seamsWalletDB/walletSessionAuthorizationStore.js +103 -157
  72. package/dist/esm/core/indexedDB/unifiedIndexedDBManager.js +2 -1
  73. package/dist/esm/core/indexedDB/walletCustodyEd25519MaterialRecord.js +1 -1
  74. package/dist/esm/core/rpcClients/evm/nonceBackend.js +1 -176
  75. package/dist/esm/core/rpcClients/near/accountExists.js +34 -0
  76. package/dist/esm/core/rpcClients/relayer/ecdsaPrepareSession.js +42 -0
  77. package/dist/esm/core/rpcClients/relayer/relayerHttp.js +31 -1
  78. package/dist/esm/core/rpcClients/relayer/routerAbNormalSigning.js +47 -11
  79. package/dist/esm/core/rpcClients/relayer/walletRecoveryFinalize.js +2 -48
  80. package/dist/esm/core/rpcClients/relayer/walletRecoveryPrepare.js +9 -9
  81. package/dist/esm/core/rpcClients/relayer/walletRecoveryRotate.js +1 -223
  82. package/dist/esm/core/rpcClients/relayer/walletRegistration.js +36 -2197
  83. package/dist/esm/core/rpcClients/relayer/walletSessionAuthorizationStatus.js +145 -14
  84. package/dist/esm/core/signingEngine/chains/evm/bytes.js +1 -15
  85. package/dist/esm/core/signingEngine/chains/evm/evmAdapter.js +1 -1
  86. package/dist/esm/core/signingEngine/chains/near/display.js +1 -27
  87. package/dist/esm/core/signingEngine/chains/near/nearSignerWasm.js +2 -2
  88. package/dist/esm/core/signingEngine/flows/registration/accountLifecycle.js +6 -39
  89. package/dist/esm/core/signingEngine/flows/shared/signingConfirmation.js +2 -2
  90. package/dist/esm/core/signingEngine/flows/shared/signingStateMachine.js +1 -11
  91. package/dist/esm/core/signingEngine/flows/signEvmFamily/authPlanning.js +2 -2
  92. package/dist/esm/core/signingEngine/flows/signEvmFamily/ecdsaSelection.js +3 -3
  93. package/dist/esm/core/signingEngine/flows/signEvmFamily/emailOtpSigningSession.js +3 -136
  94. package/dist/esm/core/signingEngine/flows/signEvmFamily/freshWalletSessionRetry.js +1 -1
  95. package/dist/esm/core/signingEngine/flows/signEvmFamily/operationIds.js +1 -1
  96. package/dist/esm/core/signingEngine/flows/signEvmFamily/preparedSigning.js +2 -3
  97. package/dist/esm/core/signingEngine/flows/signEvmFamily/readySecp256k1Material.js +40 -5
  98. package/dist/esm/core/signingEngine/flows/signEvmFamily/signEvmFamily.js +4 -4
  99. package/dist/esm/core/signingEngine/flows/signEvmFamily/signers/ecdsaDerivationClientSigningMaterialSource.js +1 -1
  100. package/dist/esm/core/signingEngine/flows/signEvmFamily/signers/secp256k1.js +27 -53
  101. package/dist/esm/core/signingEngine/flows/signEvmFamily/signingFlow.js +5 -5
  102. package/dist/esm/core/signingEngine/flows/signEvmFamily/signingFlowRuntime.js +40 -33
  103. package/dist/esm/core/signingEngine/flows/signEvmFamily/thresholdAdmission.js +8 -2
  104. package/dist/esm/core/signingEngine/flows/signNear/implicitAccountFunding.js +1 -1
  105. package/dist/esm/core/signingEngine/flows/signNear/shared/ed25519YaoNormalSigning.js +94 -31
  106. package/dist/esm/core/signingEngine/flows/signNear/shared/implicitAccountFundingPort.js +1 -8
  107. package/dist/esm/core/signingEngine/flows/signNear/shared/operationStepUpPreparation.js +1 -38
  108. package/dist/esm/core/signingEngine/flows/signNear/shared/signatureOnlySigning.js +53 -8
  109. package/dist/esm/core/signingEngine/flows/signNear/signDelegate.js +5 -5
  110. package/dist/esm/core/signingEngine/flows/signNear/signNear.js +30 -44
  111. package/dist/esm/core/signingEngine/flows/signNear/signNep413.js +21 -12
  112. package/dist/esm/core/signingEngine/flows/signNear/signTransactions.js +10 -9
  113. package/dist/esm/core/signingEngine/interfaces/ecdsaChainTarget.js +1 -1
  114. package/dist/esm/core/signingEngine/nonce/nonceLaneKeys.js +1 -35
  115. package/dist/esm/core/signingEngine/nonce/nonceTypes.js +2 -26
  116. package/dist/esm/core/signingEngine/routerAb/ecdsaDerivation/httpRequest.js +4 -3
  117. package/dist/esm/core/signingEngine/routerAb/ecdsaDerivation/poolFillRoutes.js +5 -1
  118. package/dist/esm/core/signingEngine/routerAb/ecdsaDerivation/presignaturePool.js +112 -162
  119. package/dist/esm/core/signingEngine/routerAb/ecdsaDerivation/presignaturePoolPolicy.js +31 -0
  120. package/dist/esm/core/signingEngine/routerAb/ecdsaDerivation/signingMaterialRef.js +1 -1
  121. package/dist/esm/core/signingEngine/session/availability/availableSigningLanes.js +3 -913
  122. package/dist/esm/core/signingEngine/session/emailOtp/challengeDelivery.js +1 -45
  123. package/dist/esm/core/signingEngine/session/emailOtp/ecdsaSigningSessionAuthority.js +1 -81
  124. package/dist/esm/core/signingEngine/session/identity/clientSessionPersistenceState.js +1 -43
  125. package/dist/esm/core/signingEngine/session/identity/emailOtpEcdsaDerivationIdentity.js +1 -9
  126. package/dist/esm/core/signingEngine/session/identity/evmFamilyEcdsaIdentity.js +3 -125
  127. package/dist/esm/core/signingEngine/session/identity/exactSigningLaneIdentity.js +3 -19
  128. package/dist/esm/core/signingEngine/session/identity/laneIdentity.js +2 -106
  129. package/dist/esm/core/signingEngine/session/keyMaterialBrands.js +1 -1
  130. package/dist/esm/core/signingEngine/session/lifecycle/walletSessionFailure.js +1 -1
  131. package/dist/esm/core/signingEngine/session/material/activeEcdsaCapabilityRuntime.js +1 -114
  132. package/dist/esm/core/signingEngine/session/material/activeWalletAuthorityEcdsaRuntime.js +2 -2
  133. package/dist/esm/core/signingEngine/session/material/ecdsaCapabilityManifest.js +2 -187
  134. package/dist/esm/core/signingEngine/session/material/ecdsaRoleLocalMaterialResolver.js +2 -18
  135. package/dist/esm/core/signingEngine/session/material/ecdsaSigningCapability.js +2 -130
  136. package/dist/esm/core/signingEngine/session/material/linkedEcdsaHolderRuntime.js +1 -25
  137. package/dist/esm/core/signingEngine/session/material/nearEd25519YaoMaterialActivation.js +1 -73
  138. package/dist/esm/core/signingEngine/session/material/walletSigningStateFailure.js +1 -69
  139. package/dist/esm/core/signingEngine/session/operationState/preparedOperation.js +1 -5
  140. package/dist/esm/core/signingEngine/session/operationState/transactionState.js +0 -1
  141. package/dist/esm/core/signingEngine/session/passkey/prfCache.js +1 -5
  142. package/dist/esm/core/signingEngine/session/persistence/durableSealedSessionCommands.js +1 -9
  143. package/dist/esm/core/signingEngine/session/persistence/ecdsaRoleLocalRecords.js +3 -202
  144. package/dist/esm/core/signingEngine/session/persistence/sealedSessionRecords.js +4 -83
  145. package/dist/esm/core/signingEngine/session/persistence/sealedSessionStore.js +2 -2
  146. package/dist/esm/core/signingEngine/session/planning/planner.js +2 -13
  147. package/dist/esm/core/signingEngine/session/sealedRecovery/materialActivationKey.js +1 -8
  148. package/dist/esm/core/signingEngine/session/warmCapabilities/routerAbWalletSessionCredential.js +2 -1
  149. package/dist/esm/core/signingEngine/session/warmCapabilities/sealedRefreshParity.js +2 -41
  150. package/dist/esm/core/signingEngine/stepUpConfirmation/intentDigestPreparation.js +1 -14
  151. package/dist/esm/core/signingEngine/stepUpConfirmation/types.js +1 -7
  152. package/dist/esm/core/signingEngine/threshold/commitQueueShared.js +1 -127
  153. package/dist/esm/core/signingEngine/threshold/crypto/ecdsaDerivationClientWasm.js +3 -297
  154. package/dist/esm/core/signingEngine/threshold/ecdsa/operationStepUp.js +10 -24
  155. package/dist/esm/core/signingEngine/threshold/ed25519/walletSession.js +7 -209
  156. package/dist/esm/core/signingEngine/threshold/ed25519/yaoPublicCapabilityReferences.js +5 -208
  157. package/dist/esm/core/signingEngine/threshold/sessionPolicy.js +3 -9
  158. package/dist/esm/core/signingEngine/uiConfirm/nearFundingNotice.js +1 -17
  159. package/dist/esm/core/signingEngine/uiConfirm/ui/confirm-surface-resize.js +2 -173
  160. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ConfirmationContent.js +3 -3
  161. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ReviewDisclosure.js +2 -2
  162. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/TransactionReceipt.js +1 -1
  163. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/TransactionReview.js +5 -4
  164. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/mountConfirmationSurface.js +2 -2
  165. package/dist/esm/core/signingEngine/uiConfirm/ui/surface-resize-events.js +1 -6
  166. package/dist/esm/core/signingEngine/uiConfirm/ui/transaction-display/formatters.js +1 -10
  167. package/dist/esm/core/signingEngine/webauthnAuth/credentials/credentialExtensions.js +1 -19
  168. package/dist/esm/core/signingEngine/webauthnAuth/credentials/helpers.js +2 -170
  169. package/dist/esm/core/signingEngine/workerManager/ecdsaPresignPoolIdentity.js +27 -5
  170. package/dist/esm/core/signingEngine/workerManager/validation.js +1 -104
  171. package/dist/esm/core/signingEngine/workerManager/workerTypes.js +1 -33
  172. package/dist/esm/core/types/rpc.js +1 -4
  173. package/dist/esm/core/types/sdkSentEvents.js +1 -24
  174. package/dist/esm/core/walletRuntimePaths/base.js +1 -28
  175. package/dist/esm/externalEvm/controller.js +7 -7
  176. package/dist/esm/index.js +8 -7
  177. package/dist/esm/react/components/AccountMenuButton/AuthenticationMethodsModal.js +9 -9
  178. package/dist/esm/react/components/AccountMenuButton/LinkedDevicesModal.css +1 -2
  179. package/dist/esm/react/components/AccountMenuButton/LinkedDevicesModal.js +9 -185
  180. package/dist/esm/react/components/AccountMenuButton/WalletRegionSection.js +303 -0
  181. package/dist/esm/react/components/AccountMenuButton/WalletSettingsLayout.js +31 -5
  182. package/dist/esm/react/components/AccountMenuButton/index.js +21 -13
  183. package/dist/esm/react/components/AccountMenuButton/types.js +2 -1
  184. package/dist/esm/react/components/HostedSeamsAuthMenu/shell.js +5 -17
  185. package/dist/esm/react/components/QRCodeScanner.js +5 -5
  186. package/dist/esm/react/components/ShowQRCode.js +13 -13
  187. package/dist/esm/react/context/SeamsWebProvider.js +1 -2
  188. package/dist/esm/react/context/index.js +8 -10
  189. package/dist/esm/react/context/seamsManagerSingleton.js +1 -1
  190. package/dist/esm/react/context/useLoginStateRefresher.js +10 -13
  191. package/dist/esm/react/context/useNearProvisioningStateRefresh.js +3 -3
  192. package/dist/esm/react/context/useSeamsContextValue.js +33 -81
  193. package/dist/esm/react/context/useSeamsWithSdkFlow.js +22 -51
  194. package/dist/esm/react/context/useWalletIframeLifecycle.js +20 -110
  195. package/dist/esm/react/hooks/useAccountInput.js +10 -13
  196. package/dist/esm/react/hooks/useDeviceLinking.js +1 -1
  197. package/dist/esm/react/hooks/useNearClient.js +1 -1
  198. package/dist/esm/react/hooks/useQRCamera.js +2 -8
  199. package/dist/esm/react/hooks/useWallet.js +5 -6
  200. package/dist/esm/react/hooks/useWalletAuth.js +3 -4
  201. package/dist/esm/react/hooks/useWalletDevices.js +2 -2
  202. package/dist/esm/react/index.js +4 -4
  203. package/dist/esm/react/transactionReview/TransactionReviewHost.js +1 -1
  204. package/dist/esm/react/transactionReview/boundCalls.js +5 -39
  205. package/dist/esm/react/transactionReview/controller.js +3 -4
  206. package/dist/esm/react/transactionReview/snapshot.js +1 -1
  207. package/dist/esm/react/utils/walletIframe.js +11 -52
  208. package/dist/esm/sdk/ConfirmationDrawer-DY0_yeUV.js +1 -0
  209. package/dist/esm/sdk/NonceCoordinator-CFFq8-Q9.js +1 -0
  210. package/dist/esm/sdk/accountLifecycle-CAMVowDl.js +1 -0
  211. package/dist/esm/sdk/activeWalletSession-DiZcKjB_.js +1 -0
  212. package/dist/esm/sdk/adapters-DdDOQzl4.js +2 -0
  213. package/dist/esm/sdk/appearance-ZGVLwA4N.js +1 -0
  214. package/dist/esm/sdk/authenticatorOptions-DMLnDWT2.js +1 -0
  215. package/dist/esm/sdk/authorizationAdmission-Ckx6q6tp.js +1 -0
  216. package/dist/esm/sdk/bytes-BBYkulRB.js +1 -0
  217. package/dist/esm/sdk/canonicalPrimitives-CKPGgpxg.js +1 -0
  218. package/dist/esm/sdk/canonicalSignerErrorCode-DEHsPxNm.js +1 -0
  219. package/dist/esm/sdk/capabilityKinds-CKQ4Uqnv.js +1 -0
  220. package/dist/esm/sdk/chains-CiYQT1K4.js +1 -0
  221. package/dist/esm/sdk/challengeDelivery-DxXAkOfS.js +1 -0
  222. package/dist/esm/sdk/clientSessionPersistenceState-CImFWDj6.js +1 -0
  223. package/dist/esm/sdk/commitQueue-iBNUt9Bz.js +1 -0
  224. package/dist/esm/sdk/configBuilder-ZiZwFKt4.js +1 -0
  225. package/dist/esm/sdk/configHelpers-D8Ivi6p8.js +1 -0
  226. package/dist/esm/sdk/digestEncoding-Dzc1rzWV.js +1 -0
  227. package/dist/esm/sdk/display-ClqZq-Xt.js +1 -0
  228. package/dist/esm/sdk/ecdsaCapabilityManifest-BlzJAQF8.js +1 -0
  229. package/dist/esm/sdk/ecdsaChainTarget-C8ZtMZ8l.js +1 -0
  230. package/dist/esm/sdk/ecdsaDerivationClientWasm-CVeNEou2.js +1 -0
  231. package/dist/esm/sdk/ecdsaDerivationExport-BZFHSMCv.js +1 -0
  232. package/dist/esm/sdk/ecdsaWalletRecords-D4WeYc7H.js +1 -0
  233. package/dist/esm/sdk/emailOtpEcdsaDerivationIdentity-B8HzTh4T.js +1 -0
  234. package/dist/esm/sdk/enrichDisplayModelWithAbi-69bNckvi.js +1 -0
  235. package/dist/esm/sdk/evmCryptoWasm-BXsIyRon.js +1 -0
  236. package/dist/esm/sdk/export-viewer-host-CsFeiIhd.js +1 -0
  237. package/dist/esm/sdk/exportKeypairOperation-DGQIYML3.js +1 -0
  238. package/dist/esm/sdk/helpers-Ddy72ULN.js +1 -0
  239. package/dist/esm/sdk/host-B1CdRGoI.js +1 -0
  240. package/dist/esm/sdk/intentDigest-CE-tLw87.js +1 -0
  241. package/dist/esm/sdk/jsxRuntime.module-BcZNe_OA.js +2 -0
  242. package/dist/esm/sdk/lanes-DnBwWv4l.js +1 -0
  243. package/dist/esm/sdk/localOnly-ClCo6602.js +1 -0
  244. package/dist/esm/sdk/messages-vxz27Way.js +1 -0
  245. package/dist/esm/sdk/mountExportPrivateKeySurface-CBZ0wRYj.js +1 -0
  246. package/dist/esm/sdk/mountRecoveryCodeBackupSurface-B1qhFF6G.js +2 -0
  247. package/dist/esm/sdk/nearEd25519YaoMaterialActivation-fWQI3rYj.js +1 -0
  248. package/dist/esm/sdk/nearEd25519YaoSigningPreparation-B0d1AG3u.js +1 -0
  249. package/dist/esm/sdk/nonceLaneKeys-Fkvk2UPy.js +1 -0
  250. package/dist/esm/sdk/normalization-CpLZcL2f.js +1 -0
  251. package/dist/esm/sdk/normalization-DCvuCvh0.js +1 -0
  252. package/dist/esm/sdk/normalize-kUDm5zfS.js +1 -0
  253. package/dist/esm/sdk/operationFingerprint-CTR9G1NT.js +1 -0
  254. package/dist/esm/sdk/passkey-custody-BQj44jEM.js +1 -0
  255. package/dist/esm/sdk/pendingWalletRecoveryCodeBackup-yJN8VAHn.js +1 -0
  256. package/dist/esm/sdk/presignaturePool-DwlTReFO.js +1 -0
  257. package/dist/esm/sdk/presignatures-DB2IPD-A.js +1 -0
  258. package/dist/esm/sdk/prfCache-BMpqZZ-v.js +1 -0
  259. package/dist/esm/sdk/primitives-CAcl7ON7.js +1 -0
  260. package/dist/esm/sdk/promptText-D2f5Rg0h.js +1 -0
  261. package/dist/esm/sdk/recovery-entrypoint-Bl5GgbW9.js +1 -0
  262. package/dist/esm/sdk/registration-C4sALQZO.js +1 -0
  263. package/dist/esm/sdk/registration-CEqVAgNJ.js +1 -0
  264. package/dist/esm/sdk/registrationAccounts-D4RVetMz.js +1 -0
  265. package/dist/esm/sdk/registrationAuthMethodInput-6ccY2Vuh.js +1 -0
  266. package/dist/esm/sdk/registrationIds-CdPqm-Ya.js +1 -0
  267. package/dist/esm/sdk/registrationIntent-DOkZcKSP.js +1 -0
  268. package/dist/esm/sdk/registrationSignerPlan-B9GCvpTV.js +1 -0
  269. package/dist/esm/sdk/requireStepUpAuth-DCVqmeee.js +1 -0
  270. package/dist/esm/sdk/routerAbNormalSigning-BG75eyI2.js +1 -0
  271. package/dist/esm/sdk/router_ab_ed25519_yao_client_bg.wasm +0 -0
  272. package/dist/esm/sdk/runtime-auth-tgfe70hU.js +1 -0
  273. package/dist/esm/sdk/runtime-device-link-BUxuQupR.js +1 -0
  274. package/dist/esm/sdk/runtime-ecdsa-tempo-DOBk_EtI.js +1 -0
  275. package/dist/esm/sdk/runtime-email-otp-CsAJKvYC.js +1 -0
  276. package/dist/esm/sdk/runtime-export-7REbcnBl.js +1 -0
  277. package/dist/esm/sdk/runtime-near-BA0DQf6H.js +1 -0
  278. package/dist/esm/sdk/runtime-preferences-cRViPE8a.js +1 -0
  279. package/dist/esm/sdk/runtime-recovery-RRc8Yz1y.js +1 -0
  280. package/dist/esm/sdk/runtime-recovery-codes-BZMiAR_5.js +1 -0
  281. package/dist/esm/sdk/sdkSentEvents-D3q1h-Uo.js +1 -0
  282. package/dist/esm/sdk/secp256k1-DSLttQND.js +1 -0
  283. package/dist/esm/sdk/secureRandomId-BIekT8bE.js +1 -0
  284. package/dist/esm/sdk/sessionPolicy-J-RrlPZQ.js +1 -0
  285. package/dist/esm/sdk/shared-DdfxBUGY.js +6 -0
  286. package/dist/esm/sdk/signEvmFamily-KUNWKVeh.js +1 -0
  287. package/dist/esm/sdk/signEvmFamilyWithUiConfirmForTempo-Dc57bJ3V.js +1 -0
  288. package/dist/esm/sdk/signEvmWithUiConfirm-CqxL7UbT.js +1 -0
  289. package/dist/esm/sdk/signNear-CO5bx24Z.js +1 -0
  290. package/dist/esm/sdk/signatureUses-CjJ233KX.js +1 -0
  291. package/dist/esm/sdk/signerDomain-vQmlnsbF.js +1 -0
  292. package/dist/esm/sdk/signingFlow-vrXxrhlG.js +2 -0
  293. package/dist/esm/sdk/signingQueue-BrGJXBqe.js +1 -0
  294. package/dist/esm/sdk/signingSessionSeal-CDLUmAFY.js +1 -0
  295. package/dist/esm/sdk/singletons-8UH3gOnZ.js +1 -0
  296. package/dist/esm/sdk/theme-_AUTWLS_.js +1 -0
  297. package/dist/esm/sdk/thresholdEcdsa-CO7xo1So.js +1 -0
  298. package/dist/esm/sdk/trace-BvbCxdXF.js +1 -0
  299. package/dist/esm/sdk/transaction-activity-D40ih2j-.js +1 -0
  300. package/dist/esm/sdk/transactionReviewAdmission-C-a3ctCJ.js +1 -0
  301. package/dist/esm/sdk/transactionState-DVinJk4K.js +1 -0
  302. package/dist/esm/sdk/tx-confirm-ui.js +7 -11
  303. package/dist/esm/sdk/types-BNUuaUtl.js +1 -0
  304. package/dist/esm/sdk/types-D3GM-uHR.js +1 -0
  305. package/dist/esm/sdk/wallet-iframe-host-ecdsa.js +1 -1
  306. package/dist/esm/sdk/wallet-iframe-host-full.js +1 -1
  307. package/dist/esm/sdk/wallet-iframe-host-near.js +1 -1
  308. package/dist/esm/sdk/wallet-iframe-host-runtime.js +1 -1
  309. package/dist/esm/sdk/wallet-recovery-C1kesLCF.js +1 -0
  310. package/dist/esm/sdk/wallet-ui.css +1 -1
  311. package/dist/esm/sdk/walletAuthMethodRecord-CXedSgpV.js +1 -0
  312. package/dist/esm/sdk/walletAuthority-B5hXHWpK.js +1 -0
  313. package/dist/esm/sdk/walletCustodyEcdsaContinuity-abNZ_dvX.js +1 -0
  314. package/dist/esm/sdk/walletIframeIdentity-DJ0KOBHg.js +1 -0
  315. package/dist/esm/sdk/walletOwnershipGeneration-DoXVMDWe.js +1 -0
  316. package/dist/esm/sdk/walletRecoveryCommit-Cc9AqHr0.js +1 -0
  317. package/dist/esm/sdk/walletRecoveryRotate-DWTAFYiv.js +1 -0
  318. package/dist/esm/sdk/walletSessionAuthorizationProjection-DWBksIJR.js +1 -0
  319. package/dist/esm/sdk/walletSessionAuthorizationStatus-o1VgsLhA.js +1 -0
  320. package/dist/esm/sdk/walletSessionAuthorizationStore-gEYPmu-G.js +1 -0
  321. package/dist/esm/sdk/walletSessionFailure-Bu4VPKTz.js +1 -0
  322. package/dist/esm/sdk/warmSessionHydration-DgjuUacN.js +1 -0
  323. package/dist/esm/sdk/webauthnP256-BEz4DEAs.js +1 -0
  324. package/dist/esm/sdk/webauthnPromptCoordinator-BEudHQBr.js +1 -0
  325. package/dist/esm/shared-ts/src/authorization/capabilityKinds.js +1 -7
  326. package/dist/esm/shared-ts/src/authorization/delegatedAuthority.js +2 -20
  327. package/dist/esm/shared-ts/src/authorization/index.js +1 -2
  328. package/dist/esm/shared-ts/src/authorization/operationFingerprint.js +1 -20
  329. package/dist/esm/shared-ts/src/authorization/walletAuthority.js +4 -51
  330. package/dist/esm/shared-ts/src/authorization/walletSessionIssuance.js +1 -112
  331. package/dist/esm/shared-ts/src/device-linking/activeWalletSession.js +13 -3
  332. package/dist/esm/shared-ts/src/device-linking/authorityActivation.js +6 -116
  333. package/dist/esm/shared-ts/src/device-linking/committedSignerPackages.js +3 -270
  334. package/dist/esm/shared-ts/src/device-linking/delegatedActivationPlan.js +2 -2
  335. package/dist/esm/shared-ts/src/device-linking/deviceManagement.js +1 -12
  336. package/dist/esm/shared-ts/src/device-linking/digests.js +1 -109
  337. package/dist/esm/shared-ts/src/device-linking/index.js +0 -2
  338. package/dist/esm/shared-ts/src/device-linking/parsers.js +7 -921
  339. package/dist/esm/shared-ts/src/device-linking/requestProof.js +1 -19
  340. package/dist/esm/shared-ts/src/device-linking/sourceContribution.js +5 -358
  341. package/dist/esm/shared-ts/src/device-linking/walletSessionCredentialDelivery.js +1 -172
  342. package/dist/esm/shared-ts/src/device-linking/wireFields.js +4 -5
  343. package/dist/esm/shared-ts/src/near/actions.js +1 -13
  344. package/dist/esm/shared-ts/src/near/nearClient.js +1 -1
  345. package/dist/esm/shared-ts/src/passkey-custody/custodyEnvelope.js +3 -59
  346. package/dist/esm/shared-ts/src/passkey-custody/custodySecretBinding.js +4 -8
  347. package/dist/esm/shared-ts/src/passkey-custody/index.js +0 -1
  348. package/dist/esm/shared-ts/src/signing-lanes/index.js +0 -1
  349. package/dist/esm/shared-ts/src/signing-lanes/ownerContinuity.js +0 -59
  350. package/dist/esm/shared-ts/src/threshold/ed25519OperationFingerprint.js +1 -1
  351. package/dist/esm/shared-ts/src/threshold/keyMaterialBrands.js +1 -4
  352. package/dist/esm/shared-ts/src/threshold/participants.js +1 -2
  353. package/dist/esm/shared-ts/src/threshold/signingRootScope.js +1 -4
  354. package/dist/esm/shared-ts/src/utils/authenticatorOptions.js +1 -12
  355. package/dist/esm/shared-ts/src/utils/canonicalPrimitives.js +2 -5
  356. package/dist/esm/shared-ts/src/utils/domainIds.js +1 -7
  357. package/dist/esm/shared-ts/src/utils/ecdsaCapabilityActivation.js +1 -16
  358. package/dist/esm/shared-ts/src/utils/ecdsaServerTiming.js +6 -1
  359. package/dist/esm/shared-ts/src/utils/emailOtpDomain.js +1 -23
  360. package/dist/esm/shared-ts/src/utils/emailOtpRecoveryKey.js +1 -42
  361. package/dist/esm/shared-ts/src/utils/errors.js +1 -43
  362. package/dist/esm/shared-ts/src/utils/index.js +18 -22
  363. package/dist/esm/shared-ts/src/utils/near.js +2 -74
  364. package/dist/esm/shared-ts/src/utils/normalize.js +1 -22
  365. package/dist/esm/shared-ts/src/utils/registrationAuthMethodInput.js +1 -74
  366. package/dist/esm/shared-ts/src/utils/registrationEstablishedSession.js +6 -275
  367. package/dist/esm/shared-ts/src/utils/registrationIds.js +1 -203
  368. package/dist/esm/shared-ts/src/utils/registrationIntent.js +1 -389
  369. package/dist/esm/shared-ts/src/utils/registrationSignerPlan.js +2 -434
  370. package/dist/esm/shared-ts/src/utils/routerAbEcdsaDerivation.js +6 -414
  371. package/dist/esm/shared-ts/src/utils/routerAbEd25519Yao.js +1 -334
  372. package/dist/esm/shared-ts/src/utils/routerAbEd25519YaoDigests.js +2 -40
  373. package/dist/esm/shared-ts/src/utils/routerAbNormalSigningIdentity.js +1 -1
  374. package/dist/esm/shared-ts/src/utils/signingSessionSeal.js +1 -6
  375. package/dist/esm/shared-ts/src/utils/thresholdEcdsaKeyHandle.js +1 -6
  376. package/dist/esm/shared-ts/src/utils/validation.js +2 -17
  377. package/dist/esm/shared-ts/src/utils/walletAuthAuthority.js +1 -28
  378. package/dist/esm/shared-ts/src/utils/walletAuthMethodRecord.js +1 -11
  379. package/dist/esm/shared-ts/src/utils/walletCapabilityBindings.js +1 -7
  380. package/dist/esm/shared-ts/src/wallet-recovery/index.js +3 -5
  381. package/dist/esm/shared-ts/src/wallet-recovery/recoveryCodeIssuance.js +1 -35
  382. package/dist/esm/shared-ts/src/wallet-recovery/recoveryCodeLocator.js +0 -32
  383. package/dist/esm/shared-ts/src/wallet-recovery/recoveryCodeReservation.js +1 -15
  384. package/dist/esm/shared-ts/src/wallet-recovery/recoveryKeyId.js +0 -11
  385. package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryCommittedProjection.js +1 -1
  386. package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryEcdsaPossession.js +2 -42
  387. package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryEnvelopeSet.js +3 -53
  388. package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryRotation.js +2 -63
  389. package/dist/esm/threshold.js +1 -1
  390. package/dist/esm/utils/intentDigest.js +1 -62
  391. package/dist/esm/wasm/near_signer/pkg/wasm_signer_worker_bg.wasm +0 -0
  392. package/dist/esm/wasm/router_ab_ecdsa_client/pkg/router_ab_ecdsa_client_bg.wasm +0 -0
  393. package/dist/esm/wasm/router_ab_ed25519_yao_client/pkg/router_ab_ed25519_yao_client_bg.wasm +0 -0
  394. package/dist/public/headers.manifest.json +1 -1
  395. package/dist/public/sdk/ConfirmationDrawer-DY0_yeUV.js +1 -0
  396. package/dist/public/sdk/NonceCoordinator-CFFq8-Q9.js +1 -0
  397. package/dist/public/sdk/accountLifecycle-CAMVowDl.js +1 -0
  398. package/dist/public/sdk/activeWalletSession-DiZcKjB_.js +1 -0
  399. package/dist/public/sdk/adapters-DdDOQzl4.js +2 -0
  400. package/dist/public/sdk/appearance-ZGVLwA4N.js +1 -0
  401. package/dist/public/sdk/authenticatorOptions-DMLnDWT2.js +1 -0
  402. package/dist/public/sdk/authorizationAdmission-Ckx6q6tp.js +1 -0
  403. package/dist/public/sdk/bytes-BBYkulRB.js +1 -0
  404. package/dist/public/sdk/canonicalPrimitives-CKPGgpxg.js +1 -0
  405. package/dist/public/sdk/canonicalSignerErrorCode-DEHsPxNm.js +1 -0
  406. package/dist/public/sdk/capabilityKinds-CKQ4Uqnv.js +1 -0
  407. package/dist/public/sdk/chains-CiYQT1K4.js +1 -0
  408. package/dist/public/sdk/challengeDelivery-DxXAkOfS.js +1 -0
  409. package/dist/public/sdk/clientSessionPersistenceState-CImFWDj6.js +1 -0
  410. package/dist/public/sdk/commitQueue-iBNUt9Bz.js +1 -0
  411. package/dist/public/sdk/configBuilder-ZiZwFKt4.js +1 -0
  412. package/dist/public/sdk/configHelpers-D8Ivi6p8.js +1 -0
  413. package/dist/public/sdk/digestEncoding-Dzc1rzWV.js +1 -0
  414. package/dist/public/sdk/display-ClqZq-Xt.js +1 -0
  415. package/dist/public/sdk/ecdsaCapabilityManifest-BlzJAQF8.js +1 -0
  416. package/dist/public/sdk/ecdsaChainTarget-C8ZtMZ8l.js +1 -0
  417. package/dist/public/sdk/ecdsaDerivationClientWasm-CVeNEou2.js +1 -0
  418. package/dist/public/sdk/ecdsaDerivationExport-BZFHSMCv.js +1 -0
  419. package/dist/public/sdk/ecdsaWalletRecords-D4WeYc7H.js +1 -0
  420. package/dist/public/sdk/emailOtpEcdsaDerivationIdentity-B8HzTh4T.js +1 -0
  421. package/dist/public/sdk/enrichDisplayModelWithAbi-69bNckvi.js +1 -0
  422. package/dist/public/sdk/evmCryptoWasm-BXsIyRon.js +1 -0
  423. package/dist/public/sdk/export-viewer-host-CsFeiIhd.js +1 -0
  424. package/dist/public/sdk/exportKeypairOperation-DGQIYML3.js +1 -0
  425. package/dist/public/sdk/helpers-Ddy72ULN.js +1 -0
  426. package/dist/public/sdk/host-B1CdRGoI.js +1 -0
  427. package/dist/public/sdk/intentDigest-CE-tLw87.js +1 -0
  428. package/dist/public/sdk/jsxRuntime.module-BcZNe_OA.js +2 -0
  429. package/dist/public/sdk/lanes-DnBwWv4l.js +1 -0
  430. package/dist/public/sdk/localOnly-ClCo6602.js +1 -0
  431. package/dist/public/sdk/messages-vxz27Way.js +1 -0
  432. package/dist/public/sdk/mountExportPrivateKeySurface-CBZ0wRYj.js +1 -0
  433. package/dist/public/sdk/mountRecoveryCodeBackupSurface-B1qhFF6G.js +2 -0
  434. package/dist/public/sdk/nearEd25519YaoMaterialActivation-fWQI3rYj.js +1 -0
  435. package/dist/public/sdk/nearEd25519YaoSigningPreparation-B0d1AG3u.js +1 -0
  436. package/dist/public/sdk/nonceLaneKeys-Fkvk2UPy.js +1 -0
  437. package/dist/public/sdk/normalization-CpLZcL2f.js +1 -0
  438. package/dist/public/sdk/normalization-DCvuCvh0.js +1 -0
  439. package/dist/public/sdk/normalize-kUDm5zfS.js +1 -0
  440. package/dist/public/sdk/operationFingerprint-CTR9G1NT.js +1 -0
  441. package/dist/public/sdk/passkey-custody-BQj44jEM.js +1 -0
  442. package/dist/public/sdk/pendingWalletRecoveryCodeBackup-yJN8VAHn.js +1 -0
  443. package/dist/public/sdk/presignaturePool-DwlTReFO.js +1 -0
  444. package/dist/public/sdk/presignatures-DB2IPD-A.js +1 -0
  445. package/dist/public/sdk/prfCache-BMpqZZ-v.js +1 -0
  446. package/dist/public/sdk/primitives-CAcl7ON7.js +1 -0
  447. package/dist/public/sdk/promptText-D2f5Rg0h.js +1 -0
  448. package/dist/public/sdk/recovery-entrypoint-Bl5GgbW9.js +1 -0
  449. package/dist/public/sdk/registration-C4sALQZO.js +1 -0
  450. package/dist/public/sdk/registration-CEqVAgNJ.js +1 -0
  451. package/dist/public/sdk/registrationAccounts-D4RVetMz.js +1 -0
  452. package/dist/public/sdk/registrationAuthMethodInput-6ccY2Vuh.js +1 -0
  453. package/dist/public/sdk/registrationIds-CdPqm-Ya.js +1 -0
  454. package/dist/public/sdk/registrationIntent-DOkZcKSP.js +1 -0
  455. package/dist/public/sdk/registrationSignerPlan-B9GCvpTV.js +1 -0
  456. package/dist/public/sdk/requireStepUpAuth-DCVqmeee.js +1 -0
  457. package/dist/public/sdk/routerAbNormalSigning-BG75eyI2.js +1 -0
  458. package/dist/public/sdk/router_ab_ed25519_yao_client_bg.wasm +0 -0
  459. package/dist/public/sdk/runtime-auth-tgfe70hU.js +1 -0
  460. package/dist/public/sdk/runtime-device-link-BUxuQupR.js +1 -0
  461. package/dist/public/sdk/runtime-ecdsa-tempo-DOBk_EtI.js +1 -0
  462. package/dist/public/sdk/runtime-email-otp-CsAJKvYC.js +1 -0
  463. package/dist/public/sdk/runtime-export-7REbcnBl.js +1 -0
  464. package/dist/public/sdk/runtime-near-BA0DQf6H.js +1 -0
  465. package/dist/public/sdk/runtime-preferences-cRViPE8a.js +1 -0
  466. package/dist/public/sdk/runtime-recovery-RRc8Yz1y.js +1 -0
  467. package/dist/public/sdk/runtime-recovery-codes-BZMiAR_5.js +1 -0
  468. package/dist/public/sdk/sdkSentEvents-D3q1h-Uo.js +1 -0
  469. package/dist/public/sdk/secp256k1-DSLttQND.js +1 -0
  470. package/dist/public/sdk/secureRandomId-BIekT8bE.js +1 -0
  471. package/dist/public/sdk/sessionPolicy-J-RrlPZQ.js +1 -0
  472. package/dist/public/sdk/shared-DdfxBUGY.js +6 -0
  473. package/dist/public/sdk/signEvmFamily-KUNWKVeh.js +1 -0
  474. package/dist/public/sdk/signEvmFamilyWithUiConfirmForTempo-Dc57bJ3V.js +1 -0
  475. package/dist/public/sdk/signEvmWithUiConfirm-CqxL7UbT.js +1 -0
  476. package/dist/public/sdk/signNear-CO5bx24Z.js +1 -0
  477. package/dist/public/sdk/signatureUses-CjJ233KX.js +1 -0
  478. package/dist/public/sdk/signerDomain-vQmlnsbF.js +1 -0
  479. package/dist/public/sdk/signingFlow-vrXxrhlG.js +2 -0
  480. package/dist/public/sdk/signingQueue-BrGJXBqe.js +1 -0
  481. package/dist/public/sdk/signingSessionSeal-CDLUmAFY.js +1 -0
  482. package/dist/public/sdk/singletons-8UH3gOnZ.js +1 -0
  483. package/dist/public/sdk/theme-_AUTWLS_.js +1 -0
  484. package/dist/public/sdk/thresholdEcdsa-CO7xo1So.js +1 -0
  485. package/dist/public/sdk/trace-BvbCxdXF.js +1 -0
  486. package/dist/public/sdk/transaction-activity-D40ih2j-.js +1 -0
  487. package/dist/public/sdk/transactionReviewAdmission-C-a3ctCJ.js +1 -0
  488. package/dist/public/sdk/transactionState-DVinJk4K.js +1 -0
  489. package/dist/public/sdk/tx-confirm-ui.js +7 -11
  490. package/dist/public/sdk/types-BNUuaUtl.js +1 -0
  491. package/dist/public/sdk/types-D3GM-uHR.js +1 -0
  492. package/dist/public/sdk/wallet-iframe-host-ecdsa.js +1 -1
  493. package/dist/public/sdk/wallet-iframe-host-full.js +1 -1
  494. package/dist/public/sdk/wallet-iframe-host-near.js +1 -1
  495. package/dist/public/sdk/wallet-iframe-host-runtime.js +1 -1
  496. package/dist/public/sdk/wallet-recovery-C1kesLCF.js +1 -0
  497. package/dist/public/sdk/wallet-ui.css +1 -1
  498. package/dist/public/sdk/walletAuthMethodRecord-CXedSgpV.js +1 -0
  499. package/dist/public/sdk/walletAuthority-B5hXHWpK.js +1 -0
  500. package/dist/public/sdk/walletCustodyEcdsaContinuity-abNZ_dvX.js +1 -0
  501. package/dist/public/sdk/walletIframeIdentity-DJ0KOBHg.js +1 -0
  502. package/dist/public/sdk/walletOwnershipGeneration-DoXVMDWe.js +1 -0
  503. package/dist/public/sdk/walletRecoveryCommit-Cc9AqHr0.js +1 -0
  504. package/dist/public/sdk/walletRecoveryRotate-DWTAFYiv.js +1 -0
  505. package/dist/public/sdk/walletSessionAuthorizationProjection-DWBksIJR.js +1 -0
  506. package/dist/public/sdk/walletSessionAuthorizationStatus-o1VgsLhA.js +1 -0
  507. package/dist/public/sdk/walletSessionAuthorizationStore-gEYPmu-G.js +1 -0
  508. package/dist/public/sdk/walletSessionFailure-Bu4VPKTz.js +1 -0
  509. package/dist/public/sdk/warmSessionHydration-DgjuUacN.js +1 -0
  510. package/dist/public/sdk/webauthnP256-BEz4DEAs.js +1 -0
  511. package/dist/public/sdk/webauthnPromptCoordinator-BEudHQBr.js +1 -0
  512. package/dist/public/sdk/workers/device-linking-key.worker.js +18 -0
  513. package/dist/public/sdk/workers/ecdsa-derivation-client.worker.js +1490 -1268
  514. package/dist/public/sdk/workers/ecdsa-online-client.worker.js +96 -0
  515. package/dist/public/sdk/workers/ecdsa-presign-client.worker.js +101 -1
  516. package/dist/public/sdk/workers/email-otp.worker.js +267 -237
  517. package/dist/public/sdk/workers/evm-crypto.worker.js +12 -8
  518. package/dist/public/sdk/workers/passkey-mpc-export.worker.js +30 -1
  519. package/dist/public/sdk/workers/router_ab_ecdsa_client_bg.wasm +0 -0
  520. package/dist/public/sdk/workers/router_ab_ed25519_yao_client_bg.wasm +0 -0
  521. package/dist/public/sdk/workers/shamir3pass.worker.js +10 -8
  522. package/dist/public/sdk/workers/tempo-signer.worker.js +12 -8
  523. package/dist/public/sdk/workers/wallet-custody-ceremony.worker.js +3 -1
  524. package/dist/public/sdk/workers/wallet_custody_ceremony_bg.wasm +0 -0
  525. package/dist/public/sdk/workers/wasm_signer_worker_bg.wasm +0 -0
  526. package/dist/public/wallet-assets.manifest.json +391 -295
  527. package/dist/public/wallet-service/index.html +4 -4
  528. package/dist/types/shared-ts/src/device-linking/activeWalletSession.d.ts +2 -1
  529. package/dist/types/shared-ts/src/device-linking/contracts.d.ts +10 -0
  530. package/dist/types/shared-ts/src/threshold/ed25519OperationFingerprint.d.ts +2 -1
  531. package/dist/types/shared-ts/src/utils/emailOtpDomain.d.ts +3 -1
  532. package/dist/types/shared-ts/src/utils/routerAbPublicKeyset.d.ts +0 -9
  533. package/dist/types/shared-ts/src/utils/walletManagementProtocol.d.ts +1 -1
  534. package/dist/types/wallet/build-paths.d.ts +0 -4
  535. package/dist/types/wallet/src/SeamsWeb/SeamsWeb.d.ts +26 -146
  536. package/dist/types/wallet/src/SeamsWeb/assembly/browserSigningSurfaceAssembly.d.ts +7 -6
  537. package/dist/types/wallet/src/SeamsWeb/assembly/browserSigningSurfacePorts.d.ts +2 -4
  538. package/dist/types/wallet/src/SeamsWeb/assembly/createWalletIframeRouter.d.ts +2 -2
  539. package/dist/types/wallet/src/SeamsWeb/assembly/initializeBrowserSigningRuntime.d.ts +0 -2
  540. package/dist/types/wallet/src/SeamsWeb/index.d.ts +1 -1
  541. package/dist/types/wallet/src/SeamsWeb/operations/auth/login.d.ts +2 -8
  542. package/dist/types/wallet/src/SeamsWeb/operations/auth/unlockCompletion.d.ts +26 -0
  543. package/dist/types/wallet/src/SeamsWeb/operations/auth/unlockPendingRegistration.d.ts +14 -0
  544. package/dist/types/wallet/src/SeamsWeb/operations/auth/unlockSessionPolicy.d.ts +16 -0
  545. package/dist/types/wallet/src/SeamsWeb/operations/authMethods/emailOtp/challenge.d.ts +2 -2
  546. package/dist/types/wallet/src/SeamsWeb/operations/authMethods/emailOtp/googleEmailOtpWalletAuthFlow.d.ts +3 -2
  547. package/dist/types/wallet/src/SeamsWeb/operations/authMethods/revokeAuthMethod.d.ts +17 -1
  548. package/dist/types/wallet/src/SeamsWeb/operations/devices/linkDevice.d.ts +0 -7
  549. package/dist/types/wallet/src/SeamsWeb/operations/devices/walletHostComposition.d.ts +2 -0
  550. package/dist/types/wallet/src/SeamsWeb/operations/near/actions.d.ts +4 -21
  551. package/dist/types/wallet/src/SeamsWeb/operations/near/delegateAction.d.ts +4 -14
  552. package/dist/types/wallet/src/SeamsWeb/operations/near/signDelegateAction.d.ts +14 -0
  553. package/dist/types/wallet/src/SeamsWeb/operations/near/signNEP413.d.ts +2 -2
  554. package/dist/types/wallet/src/SeamsWeb/operations/registration/pendingEcdsaRegistrationRecovery.d.ts +11 -11
  555. package/dist/types/wallet/src/SeamsWeb/operations/registration/pendingEcdsaRegistrationRecoveryValidation.d.ts +18 -4
  556. package/dist/types/wallet/src/SeamsWeb/operations/registration/pendingRegistrationRecovery.d.ts +4 -20
  557. package/dist/types/wallet/src/SeamsWeb/operations/registration/registration.d.ts +10 -4
  558. package/dist/types/wallet/src/SeamsWeb/operations/registration/registrationEd25519Yao.d.ts +1 -1
  559. package/dist/types/wallet/src/SeamsWeb/operations/registration/registrationSignerSet.d.ts +1 -0
  560. package/dist/types/wallet/src/SeamsWeb/operations/registration/registrationTerminalCommit.d.ts +0 -4
  561. package/dist/types/wallet/src/SeamsWeb/operations/registration/registrationTiming.d.ts +2 -3
  562. package/dist/types/wallet/src/SeamsWeb/operations/tempo/index.d.ts +0 -3
  563. package/dist/types/wallet/src/SeamsWeb/publicApi/auth.d.ts +4 -13
  564. package/dist/types/wallet/src/SeamsWeb/publicApi/createPublicApi.d.ts +22 -43
  565. package/dist/types/wallet/src/SeamsWeb/publicApi/devices.d.ts +3 -21
  566. package/dist/types/wallet/src/SeamsWeb/publicApi/evm.d.ts +10 -16
  567. package/dist/types/wallet/src/SeamsWeb/publicApi/evmFamilyCommands.d.ts +6 -0
  568. package/dist/types/wallet/src/SeamsWeb/publicApi/index.d.ts +2 -2
  569. package/dist/types/wallet/src/SeamsWeb/publicApi/keyExport.d.ts +8 -16
  570. package/dist/types/wallet/src/SeamsWeb/publicApi/near.d.ts +10 -10
  571. package/dist/types/wallet/src/SeamsWeb/publicApi/nearCommands.d.ts +17 -0
  572. package/dist/types/wallet/src/SeamsWeb/publicApi/placement.d.ts +90 -0
  573. package/dist/types/wallet/src/SeamsWeb/publicApi/placement.typecheck.d.ts +2 -0
  574. package/dist/types/wallet/src/SeamsWeb/publicApi/session.d.ts +3 -0
  575. package/dist/types/wallet/src/SeamsWeb/publicApi/tempo.d.ts +11 -11
  576. package/dist/types/wallet/src/SeamsWeb/publicApi/types.d.ts +106 -243
  577. package/dist/types/wallet/src/SeamsWeb/publicApi/waitForNearAccount.d.ts +27 -0
  578. package/dist/types/wallet/src/SeamsWeb/signingSurface/BrowserSigningSurface.d.ts +33 -78
  579. package/dist/types/wallet/src/SeamsWeb/signingSurface/ports.d.ts +8 -31
  580. package/dist/types/wallet/src/SeamsWeb/walletIframe/client/deviceCommands.d.ts +4 -0
  581. package/dist/types/wallet/src/SeamsWeb/walletIframe/client/emailOtpCommands.d.ts +4 -0
  582. package/dist/types/wallet/src/SeamsWeb/walletIframe/client/evmFamilyCommands.d.ts +6 -0
  583. package/dist/types/wallet/src/SeamsWeb/walletIframe/client/inboundMessages.d.ts +62 -0
  584. package/dist/types/wallet/src/SeamsWeb/walletIframe/client/nearCommands.d.ts +6 -0
  585. package/dist/types/wallet/src/SeamsWeb/walletIframe/client/placementCommands.d.ts +31 -0
  586. package/dist/types/wallet/src/SeamsWeb/walletIframe/client/preferenceState.d.ts +35 -0
  587. package/dist/types/wallet/src/SeamsWeb/walletIframe/client/preferences.d.ts +10 -0
  588. package/dist/types/wallet/src/SeamsWeb/walletIframe/client/registrationCommands.d.ts +6 -0
  589. package/dist/types/wallet/src/SeamsWeb/walletIframe/client/router.d.ts +36 -121
  590. package/dist/types/wallet/src/SeamsWeb/walletIframe/client/sessionCommands.d.ts +6 -0
  591. package/dist/types/wallet/src/SeamsWeb/walletIframe/coordinator.d.ts +29 -35
  592. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/WalletHostRuntime.d.ts +98 -0
  593. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/auth-menu/controller.d.ts +2 -2
  594. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/context.d.ts +11 -9
  595. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/createDeviceDomain.d.ts +20 -0
  596. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/createEmailOtpCommands.d.ts +11 -0
  597. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/createEvmFamilyCommands.d.ts +8 -0
  598. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/createNearCommands.d.ts +4 -0
  599. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/createPlacementCommands.d.ts +11 -0
  600. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/createRegistrationCommands.d.ts +4 -0
  601. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/createSessionCommands.d.ts +16 -0
  602. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/handlers/placement.d.ts +3 -0
  603. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/handlers/walletIframeHandler.types.d.ts +7 -3
  604. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/hostedWalletSeamsSession.d.ts +2 -0
  605. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/reconcileWalletPlacement.d.ts +10 -0
  606. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/requestRouter.d.ts +4 -4
  607. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/requestWalletMove.d.ts +11 -0
  608. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/runtimeContext.d.ts +5 -3
  609. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/runtimeLoader.d.ts +0 -1
  610. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/sessionObserver.d.ts +39 -0
  611. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/walletMoveLocator.d.ts +5 -0
  612. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/walletMutationGuard.d.ts +3 -0
  613. package/dist/types/wallet/src/SeamsWeb/walletIframe/shared/configuration.d.ts +30 -0
  614. package/dist/types/wallet/src/SeamsWeb/walletIframe/shared/emailOtpLifecycle.d.ts +43 -0
  615. package/dist/types/wallet/src/SeamsWeb/walletIframe/shared/exactSessionState.d.ts +15 -0
  616. package/dist/types/wallet/src/SeamsWeb/walletIframe/shared/facadeBoundary.d.ts +14 -0
  617. package/dist/types/wallet/src/SeamsWeb/walletIframe/shared/messages.d.ts +35 -100
  618. package/dist/types/wallet/src/core/config/chains.d.ts +1 -3
  619. package/dist/types/wallet/src/core/config/configBuilder.d.ts +16 -6
  620. package/dist/types/wallet/src/core/config/defaultConfigs.d.ts +3 -4
  621. package/dist/types/wallet/src/core/config/defineConfig.d.ts +3 -6
  622. package/dist/types/wallet/src/core/config/presignatures.d.ts +3 -0
  623. package/dist/types/wallet/src/core/diagnostics/registration.d.ts +2 -0
  624. package/dist/types/wallet/src/core/indexedDB/normalization.d.ts +5 -0
  625. package/dist/types/wallet/src/core/indexedDB/passkeyClientDB.types.d.ts +2 -2
  626. package/dist/types/wallet/src/core/indexedDB/pendingWalletRegistrationCommit.d.ts +0 -10
  627. package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/accountSignerRows.d.ts +44 -0
  628. package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/ecdsaCapabilityManifestStore.d.ts +0 -2
  629. package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/ecdsaClientPresignatures.d.ts +0 -5
  630. package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/manager.d.ts +11 -0
  631. package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/nonceLeaseRows.d.ts +23 -0
  632. package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/repositories.d.ts +1 -0
  633. package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/signerOutboxRows.d.ts +15 -0
  634. package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/walletOwnershipGeneration.d.ts +6 -0
  635. package/dist/types/wallet/src/core/indexedDB/unifiedIndexedDBManager.d.ts +1 -1
  636. package/dist/types/wallet/src/core/rpcClients/near/accountExists.d.ts +3 -0
  637. package/dist/types/wallet/src/core/rpcClients/near/rpcCalls.d.ts +1 -14
  638. package/dist/types/wallet/src/core/rpcClients/relayer/ecdsaPrepareSession.d.ts +13 -0
  639. package/dist/types/wallet/src/core/rpcClients/relayer/ownerWalletExecutionLanePreflight.d.ts +3 -3
  640. package/dist/types/wallet/src/core/rpcClients/relayer/relayerHttp.d.ts +17 -0
  641. package/dist/types/wallet/src/core/rpcClients/relayer/routerAbNormalSigning.d.ts +19 -3
  642. package/dist/types/wallet/src/core/rpcClients/relayer/walletRegistration.d.ts +29 -40
  643. package/dist/types/wallet/src/core/rpcClients/relayer/walletSessionAuthorizationStatus.d.ts +34 -0
  644. package/dist/types/wallet/src/core/signingEngine/assembly/ports/shared.d.ts +1 -1
  645. package/dist/types/wallet/src/core/signingEngine/assembly/ports/warmSigning.d.ts +2 -1
  646. package/dist/types/wallet/src/core/signingEngine/assembly/warmup.d.ts +2 -14
  647. package/dist/types/wallet/src/core/signingEngine/chains/near/nearSignerWasm.d.ts +2 -6
  648. package/dist/types/wallet/src/core/signingEngine/flows/recovery/public.d.ts +1 -1
  649. package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/emailOtpPublic.d.ts +1 -32
  650. package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/emailOtpSigningSession.d.ts +3 -82
  651. package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/readySecp256k1Material.d.ts +62 -1
  652. package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/requireEvmFamilyStepUpAuth.d.ts +1 -1
  653. package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/signers/secp256k1.d.ts +4 -55
  654. package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/signingFlow.d.ts +1 -1
  655. package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/thresholdAdmission.d.ts +3 -2
  656. package/dist/types/wallet/src/core/signingEngine/flows/signNear/shared/ed25519YaoNormalSigning.d.ts +33 -1
  657. package/dist/types/wallet/src/core/signingEngine/flows/signNear/shared/signatureOnlySigning.d.ts +16 -2
  658. package/dist/types/wallet/src/core/signingEngine/flows/signNear/signNear.d.ts +1 -2
  659. package/dist/types/wallet/src/core/signingEngine/flows/signNear/signNep413.d.ts +1 -1
  660. package/dist/types/wallet/src/core/signingEngine/interfaces/ecdsaChainTarget.d.ts +1 -1
  661. package/dist/types/wallet/src/core/signingEngine/interfaces/near.d.ts +3 -0
  662. package/dist/types/wallet/src/core/signingEngine/routerAb/ecdsaDerivation/presignaturePool.d.ts +9 -5
  663. package/dist/types/wallet/src/core/signingEngine/routerAb/ecdsaDerivation/presignaturePoolPolicy.d.ts +5 -0
  664. package/dist/types/wallet/src/core/signingEngine/session/SigningSessionCoordinator.d.ts +1 -7
  665. package/dist/types/wallet/src/core/signingEngine/session/availability/persistedAvailableSigningLanes.d.ts +1 -1
  666. package/dist/types/wallet/src/core/signingEngine/session/availability/readiness.d.ts +0 -17
  667. package/dist/types/wallet/src/core/signingEngine/session/emailOtp/EmailOtpWalletSessionCoordinator.d.ts +2 -2
  668. package/dist/types/wallet/src/core/signingEngine/session/emailOtp/ecdsaSigningSessionAuthority.d.ts +2 -33
  669. package/dist/types/wallet/src/core/signingEngine/session/emailOtp/exportRecovery.d.ts +2 -2
  670. package/dist/types/wallet/src/core/signingEngine/session/emailOtp/exportRecoveryRuntime.d.ts +14 -3
  671. package/dist/types/wallet/src/core/signingEngine/session/emailOtp/publicTypes.d.ts +1 -2
  672. package/dist/types/wallet/src/core/signingEngine/session/emailOtp/workerEnrollment.d.ts +0 -12
  673. package/dist/types/wallet/src/core/signingEngine/session/lanes/walletExecutionLaneHydration.d.ts +11 -25
  674. package/dist/types/wallet/src/core/signingEngine/session/lifecycle/walletSessionStatus.d.ts +0 -8
  675. package/dist/types/wallet/src/core/signingEngine/session/material/ecdsaSigningCapability.d.ts +2 -2
  676. package/dist/types/wallet/src/core/signingEngine/session/operationState/preparedOperation.d.ts +0 -8
  677. package/dist/types/wallet/src/core/signingEngine/session/operationState/trace.d.ts +1 -1
  678. package/dist/types/wallet/src/core/signingEngine/session/operationState/transactionState.d.ts +0 -1
  679. package/dist/types/wallet/src/core/signingEngine/session/passkey/ed25519YaoRecoveryCapability.d.ts +2 -0
  680. package/dist/types/wallet/src/core/signingEngine/session/public.d.ts +1 -1
  681. package/dist/types/wallet/src/core/signingEngine/session/routerAbSigningWalletSession.d.ts +2 -0
  682. package/dist/types/wallet/src/core/signingEngine/session/userPreferences.d.ts +8 -11
  683. package/dist/types/wallet/src/core/signingEngine/session/warmCapabilities/capabilityReader.d.ts +2 -1
  684. package/dist/types/wallet/src/core/signingEngine/session/warmCapabilities/capabilityReaderCore.d.ts +2 -1
  685. package/dist/types/wallet/src/core/signingEngine/stepUpConfirmation/otpPrompt/authLane.d.ts +6 -12
  686. package/dist/types/wallet/src/core/signingEngine/threshold/ecdsa/operationStepUp.d.ts +6 -5
  687. package/dist/types/wallet/src/core/signingEngine/threshold/ed25519/yaoClient.d.ts +6 -17
  688. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/ReviewDisclosure.d.ts +1 -0
  689. package/dist/types/wallet/src/core/signingEngine/walletCustody/ceremonyDriver.d.ts +0 -1
  690. package/dist/types/wallet/src/core/signingEngine/walletCustody/walletRegistrationEd25519.d.ts +17 -0
  691. package/dist/types/wallet/src/core/signingEngine/workerManager/SignerWorkerManager.d.ts +0 -1
  692. package/dist/types/wallet/src/core/signingEngine/workerManager/ecdsaPresignLifecycle.d.ts +0 -2
  693. package/dist/types/wallet/src/core/signingEngine/workerManager/ecdsaPresignPoolIdentity.d.ts +9 -0
  694. package/dist/types/wallet/src/core/signingEngine/workerManager/workerTransport.d.ts +0 -5
  695. package/dist/types/wallet/src/core/signingEngine/workerManager/workerTypes.d.ts +15 -27
  696. package/dist/types/wallet/src/core/signingEngine/workerManager/workers/email-otp/enrollment.d.ts +1 -17
  697. package/dist/types/wallet/src/core/types/rpc.d.ts +0 -1
  698. package/dist/types/wallet/src/core/types/sdkPublicResults.d.ts +1 -0
  699. package/dist/types/wallet/src/core/types/sdkSentEvents.d.ts +2 -0
  700. package/dist/types/wallet/src/core/types/seams.d.ts +12 -9
  701. package/dist/types/wallet/src/core/types/signer-worker.d.ts +2 -1
  702. package/dist/types/wallet/src/externalEvm/controller.d.ts +5 -1
  703. package/dist/types/wallet/src/index.d.ts +5 -2
  704. package/dist/types/wallet/src/react/components/AccountMenuButton/WalletRegionSection.d.ts +54 -0
  705. package/dist/types/wallet/src/react/components/AccountMenuButton/WalletSettingsLayout.d.ts +7 -2
  706. package/dist/types/wallet/src/react/components/AccountMenuButton/index.d.ts +1 -1
  707. package/dist/types/wallet/src/react/components/AccountMenuButton/types.d.ts +1 -0
  708. package/dist/types/wallet/src/react/components/HostedSeamsAuthMenu/public.d.ts +1 -1
  709. package/dist/types/wallet/src/react/components/HostedSeamsAuthMenu/types.d.ts +2 -5
  710. package/dist/types/wallet/src/react/context/SeamsWebProvider.d.ts +0 -5
  711. package/dist/types/wallet/src/react/context/useLoginStateRefresher.d.ts +1 -1
  712. package/dist/types/wallet/src/react/context/useNearProvisioningStateRefresh.d.ts +1 -1
  713. package/dist/types/wallet/src/react/context/useSeamsContextValue.d.ts +2 -2
  714. package/dist/types/wallet/src/react/context/useWalletIframeLifecycle.d.ts +4 -2
  715. package/dist/types/wallet/src/react/hooks/useQRCamera.d.ts +1 -7
  716. package/dist/types/wallet/src/react/hooks/useWallet.d.ts +5 -6
  717. package/dist/types/wallet/src/react/hooks/useWalletAuth.d.ts +1 -1
  718. package/dist/types/wallet/src/react/hooks/useWalletDevices.d.ts +1 -1
  719. package/dist/types/wallet/src/react/index.d.ts +2 -2
  720. package/dist/types/wallet/src/react/transactionReview/boundCalls.d.ts +0 -26
  721. package/dist/types/wallet/src/react/types.d.ts +12 -20
  722. package/dist/types/wallet/src/react/utils/walletIframe.d.ts +2 -6
  723. package/dist/workers/device-linking-key.worker.js +18 -0
  724. package/dist/workers/ecdsa-derivation-client.worker.js +1490 -1268
  725. package/dist/workers/ecdsa-online-client.worker.js +96 -0
  726. package/dist/workers/ecdsa-presign-client.worker.js +101 -1
  727. package/dist/workers/email-otp.worker.js +267 -237
  728. package/dist/workers/evm-crypto.worker.js +12 -8
  729. package/dist/workers/passkey-mpc-export.worker.js +30 -1
  730. package/dist/workers/router_ab_ecdsa_client_bg.wasm +0 -0
  731. package/dist/workers/router_ab_ed25519_yao_client_bg.wasm +0 -0
  732. package/dist/workers/shamir3pass.worker.js +10 -8
  733. package/dist/workers/tempo-signer.worker.js +12 -8
  734. package/dist/workers/wallet-custody-ceremony.worker.js +3 -1
  735. package/dist/workers/wallet_custody_ceremony_bg.wasm +0 -0
  736. package/dist/workers/wasm_signer_worker_bg.wasm +0 -0
  737. package/package.json +1 -1
  738. package/dist/esm/SeamsWeb/assembly/browserSigningSurfaceAssembly.js +0 -817
  739. package/dist/esm/SeamsWeb/assembly/browserWorkerWarmupPolicy.js +0 -31
  740. package/dist/esm/SeamsWeb/assembly/configureBrowserIndexedDB.js +0 -10
  741. package/dist/esm/SeamsWeb/assembly/createBrowserRecoveryPublicDeps.js +0 -95
  742. package/dist/esm/SeamsWeb/assembly/createBrowserSigningRuntime.js +0 -34
  743. package/dist/esm/SeamsWeb/assembly/createBrowserSigningStores.js +0 -39
  744. package/dist/esm/SeamsWeb/assembly/createBrowserStepUpRuntime.js +0 -34
  745. package/dist/esm/SeamsWeb/assembly/createBrowserWarmSessionPublicDeps.js +0 -29
  746. package/dist/esm/SeamsWeb/assembly/initializeBrowserSigningRuntime.js +0 -19
  747. package/dist/esm/SeamsWeb/assembly/runtimeConfig.js +0 -12
  748. package/dist/esm/SeamsWeb/operations/auth/login.js +0 -4383
  749. package/dist/esm/SeamsWeb/operations/auth/scheduleEcdsaSessionPresignaturePrefill.js +0 -41
  750. package/dist/esm/SeamsWeb/operations/auth/scheduleLinkedDevicePresignaturePrefill.js +0 -64
  751. package/dist/esm/SeamsWeb/operations/auth/walletAuth.js +0 -142
  752. package/dist/esm/SeamsWeb/operations/auth/walletUnlockEcdsaSubject.js +0 -33
  753. package/dist/esm/SeamsWeb/operations/auth/walletUnlockSubject.js +0 -288
  754. package/dist/esm/SeamsWeb/operations/authMethods/addAuthMethodSourceClaim.js +0 -72
  755. package/dist/esm/SeamsWeb/operations/authMethods/emailOtp/addEmailOtp.js +0 -191
  756. package/dist/esm/SeamsWeb/operations/authMethods/emailOtp/challenge.js +0 -247
  757. package/dist/esm/SeamsWeb/operations/authMethods/emailOtp/googleEmailOtpWalletAuthFlow.js +0 -568
  758. package/dist/esm/SeamsWeb/operations/authMethods/emailOtp/localEmailOtpProjection.js +0 -69
  759. package/dist/esm/SeamsWeb/operations/authMethods/emailOtp/registrationAuthority.js +0 -62
  760. package/dist/esm/SeamsWeb/operations/authMethods/emailOtp/registrationOffer.js +0 -69
  761. package/dist/esm/SeamsWeb/operations/authMethods/emailOtp/walletActivation.js +0 -95
  762. package/dist/esm/SeamsWeb/operations/authMethods/passkey/addPasskey.js +0 -260
  763. package/dist/esm/SeamsWeb/operations/authMethods/passkey/ecdsaBootstrap.js +0 -17
  764. package/dist/esm/SeamsWeb/operations/authMethods/passkey/exactPasskeyAuthority.js +0 -34
  765. package/dist/esm/SeamsWeb/operations/authMethods/passkey/localUnlock.js +0 -16
  766. package/dist/esm/SeamsWeb/operations/authMethods/passkey/loginAssertion.js +0 -25
  767. package/dist/esm/SeamsWeb/operations/authMethods/passkey/registrationAuthority.js +0 -84
  768. package/dist/esm/SeamsWeb/operations/authMethods/revokeAuthMethod.js +0 -205
  769. package/dist/esm/SeamsWeb/operations/authMethods/sourcePasskeyProof.js +0 -12
  770. package/dist/esm/SeamsWeb/operations/devices/deviceLinkingAuthorityInstallation.js +0 -444
  771. package/dist/esm/SeamsWeb/operations/devices/deviceLinkingComposition.js +0 -106
  772. package/dist/esm/SeamsWeb/operations/devices/deviceLinkingEd25519ExportRoot.js +0 -194
  773. package/dist/esm/SeamsWeb/operations/devices/deviceLinkingHttpTransport.js +0 -524
  774. package/dist/esm/SeamsWeb/operations/devices/deviceLinkingOwnerTransport.js +0 -135
  775. package/dist/esm/SeamsWeb/operations/devices/deviceLinkingResume.js +0 -212
  776. package/dist/esm/SeamsWeb/operations/devices/deviceLinkingTargetCredential.js +0 -63
  777. package/dist/esm/SeamsWeb/operations/devices/deviceLinkingTargetEd25519ExportRoot.js +0 -61
  778. package/dist/esm/SeamsWeb/operations/devices/deviceLinkingWorkerChannels.js +0 -337
  779. package/dist/esm/SeamsWeb/operations/devices/linkDevice.js +0 -75
  780. package/dist/esm/SeamsWeb/operations/devices/linkDeviceFlow.js +0 -1383
  781. package/dist/esm/SeamsWeb/operations/devices/linkDeviceFlowSupport.js +0 -143
  782. package/dist/esm/SeamsWeb/operations/devices/linkDeviceTargetActivation.js +0 -119
  783. package/dist/esm/SeamsWeb/operations/devices/walletHostComposition.js +0 -130
  784. package/dist/esm/SeamsWeb/operations/devices/walletHostOwnerAuthority.js +0 -191
  785. package/dist/esm/SeamsWeb/operations/evm/index.js +0 -35
  786. package/dist/esm/SeamsWeb/operations/near/actions.js +0 -484
  787. package/dist/esm/SeamsWeb/operations/near/commandSubject.js +0 -14
  788. package/dist/esm/SeamsWeb/operations/near/index.js +0 -37
  789. package/dist/esm/SeamsWeb/operations/near/signNEP413.js +0 -116
  790. package/dist/esm/SeamsWeb/operations/recovery/accountSync.js +0 -21
  791. package/dist/esm/SeamsWeb/operations/recovery/recoveryWalletBinding.js +0 -43
  792. package/dist/esm/SeamsWeb/operations/recovery/syncAccount.js +0 -912
  793. package/dist/esm/SeamsWeb/operations/recovery/walletRecoveryCodeBackup.js +0 -100
  794. package/dist/esm/SeamsWeb/operations/recovery/walletRecoveryRotation.js +0 -213
  795. package/dist/esm/SeamsWeb/operations/registration/pendingEcdsaRegistrationRecovery.js +0 -184
  796. package/dist/esm/SeamsWeb/operations/registration/pendingEcdsaRegistrationRecoveryUnlock.js +0 -247
  797. package/dist/esm/SeamsWeb/operations/registration/pendingEcdsaRegistrationRecoveryValidation.js +0 -134
  798. package/dist/esm/SeamsWeb/operations/registration/pendingRegistrationRecovery.js +0 -354
  799. package/dist/esm/SeamsWeb/operations/registration/registration.js +0 -3818
  800. package/dist/esm/SeamsWeb/operations/registration/registrationEd25519Yao.js +0 -166
  801. package/dist/esm/SeamsWeb/operations/registration/registrationSignerSet.js +0 -60
  802. package/dist/esm/SeamsWeb/operations/registration/registrationStrictEcdsa.js +0 -343
  803. package/dist/esm/SeamsWeb/operations/registration/registrationTerminalCommit.js +0 -296
  804. package/dist/esm/SeamsWeb/operations/registration/registrationTiming.js +0 -682
  805. package/dist/esm/SeamsWeb/operations/session/thresholdEcdsaProvisioning.js +0 -36
  806. package/dist/esm/SeamsWeb/operations/session/thresholdWarmSessionBootstrap.js +0 -20
  807. package/dist/esm/SeamsWeb/publicApi/awaitNearReady.js +0 -72
  808. package/dist/esm/SeamsWeb/publicApi/preferences.js +0 -61
  809. package/dist/esm/SeamsWeb/publicApi/recovery.js +0 -19
  810. package/dist/esm/SeamsWeb/publicApi/types.js +0 -10
  811. package/dist/esm/SeamsWeb/signingSurface/BrowserSigningSurface.js +0 -3917
  812. package/dist/esm/SeamsWeb/walletIframe/host/restoredSessionPresignaturePrefill.js +0 -29
  813. package/dist/esm/core/browser/walletIframe/events.js +0 -6
  814. package/dist/esm/core/browser/walletIframe/host-mode.js +0 -9
  815. package/dist/esm/core/config/managedRuntimeScope.js +0 -16
  816. package/dist/esm/core/indexedDB/seamsWalletDB/pendingWalletRecoveryCodeBackup.js +0 -144
  817. package/dist/esm/core/platform/browser/createBrowserPlatformRuntime.js +0 -535
  818. package/dist/esm/core/platform/secretSources.js +0 -111
  819. package/dist/esm/core/platform/signerCoreCommandAdapters.js +0 -122
  820. package/dist/esm/core/rpcClients/near/rpcCalls.js +0 -376
  821. package/dist/esm/core/rpcClients/relayer/ownerWalletExecutionLanePreflight.js +0 -67
  822. package/dist/esm/core/rpcClients/relayer/passkeyCustodyEnvelope.js +0 -218
  823. package/dist/esm/core/rpcClients/relayer/sealedRefreshCapabilities.js +0 -148
  824. package/dist/esm/core/rpcClients/relayer/thresholdEcdsa.js +0 -235
  825. package/dist/esm/core/rpcClients/relayer/walletRecoveryGoogleEmailOtp.js +0 -161
  826. package/dist/esm/core/rpcClients/relayer/walletRegistrationTerminalResponse.js +0 -718
  827. package/dist/esm/core/signingEngine/assembly/createManagers.js +0 -80
  828. package/dist/esm/core/signingEngine/assembly/createPorts.js +0 -54
  829. package/dist/esm/core/signingEngine/assembly/ports/emailOtp.js +0 -30
  830. package/dist/esm/core/signingEngine/assembly/ports/evmFamily.js +0 -73
  831. package/dist/esm/core/signingEngine/assembly/ports/near.js +0 -21
  832. package/dist/esm/core/signingEngine/assembly/ports/recovery.js +0 -75
  833. package/dist/esm/core/signingEngine/assembly/ports/registration.js +0 -22
  834. package/dist/esm/core/signingEngine/assembly/ports/session.js +0 -25
  835. package/dist/esm/core/signingEngine/assembly/ports/shared.js +0 -39
  836. package/dist/esm/core/signingEngine/assembly/ports/stepUpRuntime.js +0 -67
  837. package/dist/esm/core/signingEngine/assembly/ports/warmSigning.js +0 -92
  838. package/dist/esm/core/signingEngine/assembly/warmup.js +0 -64
  839. package/dist/esm/core/signingEngine/flows/recovery/ecdsaDerivationExport.js +0 -427
  840. package/dist/esm/core/signingEngine/flows/recovery/ecdsaExportFlow.js +0 -660
  841. package/dist/esm/core/signingEngine/flows/recovery/ecdsaExportMaterial.js +0 -249
  842. package/dist/esm/core/signingEngine/flows/recovery/ed25519YaoExportFlow.js +0 -353
  843. package/dist/esm/core/signingEngine/flows/recovery/exportKeypairOperation.js +0 -213
  844. package/dist/esm/core/signingEngine/flows/recovery/exportLaneSelection.js +0 -283
  845. package/dist/esm/core/signingEngine/flows/recovery/keyExportConfirmation.js +0 -325
  846. package/dist/esm/core/signingEngine/flows/recovery/keyExportFlow.js +0 -81
  847. package/dist/esm/core/signingEngine/flows/recovery/passkeyEd25519YaoRecovery.js +0 -192
  848. package/dist/esm/core/signingEngine/flows/recovery/public.js +0 -26
  849. package/dist/esm/core/signingEngine/flows/recovery/stepUpAuthorization.js +0 -139
  850. package/dist/esm/core/signingEngine/flows/registration/nearProvisioningRegistry.js +0 -79
  851. package/dist/esm/core/signingEngine/flows/registration/public.js +0 -85
  852. package/dist/esm/core/signingEngine/flows/registration/services/ecdsaRegistrationSessions.js +0 -77
  853. package/dist/esm/core/signingEngine/flows/registration/services/passkeyEd25519YaoAddSigner.js +0 -82
  854. package/dist/esm/core/signingEngine/flows/registration/session.js +0 -24
  855. package/dist/esm/core/signingEngine/flows/signEvmFamily/emailOtpPublic.js +0 -123
  856. package/dist/esm/core/signingEngine/nonce/NonceCoordinator.js +0 -1026
  857. package/dist/esm/core/signingEngine/nonce/evmNonceLane.js +0 -182
  858. package/dist/esm/core/signingEngine/nonce/nearNonceLane.js +0 -669
  859. package/dist/esm/core/signingEngine/nonce/nonceDiagnostics.js +0 -232
  860. package/dist/esm/core/signingEngine/nonce/nonceLeaseState.js +0 -128
  861. package/dist/esm/core/signingEngine/nonce/nonceUtils.js +0 -33
  862. package/dist/esm/core/signingEngine/session/SigningSessionCoordinator.js +0 -344
  863. package/dist/esm/core/signingEngine/session/authority/authorityOperationResolver.js +0 -114
  864. package/dist/esm/core/signingEngine/session/availability/canonicalLaneInventory.js +0 -127
  865. package/dist/esm/core/signingEngine/session/availability/clientSessionExpiryInvalidator.js +0 -72
  866. package/dist/esm/core/signingEngine/session/availability/persistedAvailableSigningLanes.js +0 -214
  867. package/dist/esm/core/signingEngine/session/availability/readiness.js +0 -464
  868. package/dist/esm/core/signingEngine/session/emailOtp/EmailOtpWalletSessionCoordinator.js +0 -130
  869. package/dist/esm/core/signingEngine/session/emailOtp/ecdsaBootstrapCommit.js +0 -106
  870. package/dist/esm/core/signingEngine/session/emailOtp/ecdsaLifecycleRuntime.js +0 -47
  871. package/dist/esm/core/signingEngine/session/emailOtp/ecdsaLogin.js +0 -930
  872. package/dist/esm/core/signingEngine/session/emailOtp/ecdsaPublication.js +0 -414
  873. package/dist/esm/core/signingEngine/session/emailOtp/ecdsaRecovery.js +0 -264
  874. package/dist/esm/core/signingEngine/session/emailOtp/ed25519ExportContext.js +0 -373
  875. package/dist/esm/core/signingEngine/session/emailOtp/exportRecovery.js +0 -284
  876. package/dist/esm/core/signingEngine/session/emailOtp/exportRecoveryRuntime.js +0 -50
  877. package/dist/esm/core/signingEngine/session/emailOtp/persistedSnapshot.js +0 -22
  878. package/dist/esm/core/signingEngine/session/emailOtp/publicTypes.js +0 -38
  879. package/dist/esm/core/signingEngine/session/emailOtp/routePlan.js +0 -60
  880. package/dist/esm/core/signingEngine/session/emailOtp/runtimeConfig.js +0 -24
  881. package/dist/esm/core/signingEngine/session/emailOtp/sealedRefreshPolicy.js +0 -49
  882. package/dist/esm/core/signingEngine/session/emailOtp/sealedRestoreOrchestrator.js +0 -234
  883. package/dist/esm/core/signingEngine/session/emailOtp/sealedRuntimePurpose.js +0 -16
  884. package/dist/esm/core/signingEngine/session/emailOtp/sealedSessionRegistry.js +0 -40
  885. package/dist/esm/core/signingEngine/session/emailOtp/status.js +0 -72
  886. package/dist/esm/core/signingEngine/session/emailOtp/walletUnlock.js +0 -168
  887. package/dist/esm/core/signingEngine/session/emailOtp/warmSessionRuntime.js +0 -70
  888. package/dist/esm/core/signingEngine/session/emailOtp/workerEnrollment.js +0 -159
  889. package/dist/esm/core/signingEngine/session/emailOtp/workerRequests.js +0 -84
  890. package/dist/esm/core/signingEngine/session/emailOtp/zeroize.js +0 -9
  891. package/dist/esm/core/signingEngine/session/identity/exactWalletSessionCredential.js +0 -104
  892. package/dist/esm/core/signingEngine/session/identity/exactWalletSessionReader.js +0 -54
  893. package/dist/esm/core/signingEngine/session/identity/ownerLaneScope.js +0 -185
  894. package/dist/esm/core/signingEngine/session/lanes/walletExecutionLaneHydration.js +0 -194
  895. package/dist/esm/core/signingEngine/session/lifecycle/canonicalWalletSessionStatus.js +0 -32
  896. package/dist/esm/core/signingEngine/session/lifecycle/walletSessionStatus.js +0 -123
  897. package/dist/esm/core/signingEngine/session/material/ecdsaCapabilityHydration.js +0 -75
  898. package/dist/esm/core/signingEngine/session/material/ecdsaSealedRuntime.js +0 -197
  899. package/dist/esm/core/signingEngine/session/material/mpcCapabilityHydration.js +0 -79
  900. package/dist/esm/core/signingEngine/session/material/nearEd25519YaoSigningPreparation.js +0 -122
  901. package/dist/esm/core/signingEngine/session/material/restorableMpcMaterialRef.internal.js +0 -21
  902. package/dist/esm/core/signingEngine/session/passkey/ecdsaBootstrap.js +0 -184
  903. package/dist/esm/core/signingEngine/session/passkey/ecdsaKeyFactsInventory.js +0 -205
  904. package/dist/esm/core/signingEngine/session/passkey/ecdsaRecovery.js +0 -84
  905. package/dist/esm/core/signingEngine/session/passkey/ecdsaSessionProvision.js +0 -224
  906. package/dist/esm/core/signingEngine/session/passkey/ecdsaWarmCapabilityBootstrap.js +0 -147
  907. package/dist/esm/core/signingEngine/session/passkey/ed25519Provisioner.js +0 -55
  908. package/dist/esm/core/signingEngine/session/passkey/ed25519SessionProvision.js +0 -228
  909. package/dist/esm/core/signingEngine/session/passkey/ed25519YaoLocalMaterial.js +0 -536
  910. package/dist/esm/core/signingEngine/session/passkey/ed25519YaoRecoveryCapability.js +0 -94
  911. package/dist/esm/core/signingEngine/session/passkey/ed25519YaoSealedSession.js +0 -57
  912. package/dist/esm/core/signingEngine/session/passkey/ed25519YaoWarmRecovery.js +0 -281
  913. package/dist/esm/core/signingEngine/session/passkey/passkeyCustodySessionCache.js +0 -90
  914. package/dist/esm/core/signingEngine/session/passkey/public.js +0 -15
  915. package/dist/esm/core/signingEngine/session/passkey/unlockEcdsaWarmupPlanner.js +0 -247
  916. package/dist/esm/core/signingEngine/session/persistence/clientSessionPersistence.js +0 -135
  917. package/dist/esm/core/signingEngine/session/persistence/walletSessionAuthorizationProjection.js +0 -51
  918. package/dist/esm/core/signingEngine/session/planning/operationIdBinding.js +0 -36
  919. package/dist/esm/core/signingEngine/session/postconditions/runtimePostconditions.js +0 -163
  920. package/dist/esm/core/signingEngine/session/public.js +0 -44
  921. package/dist/esm/core/signingEngine/session/routerAbSigningWalletSession.js +0 -119
  922. package/dist/esm/core/signingEngine/session/sealedRecovery/exactRecordLookup.js +0 -148
  923. package/dist/esm/core/signingEngine/session/sealedRecovery/recoveryRecord.js +0 -248
  924. package/dist/esm/core/signingEngine/session/sealedRecovery/restoreCoordinator.js +0 -229
  925. package/dist/esm/core/signingEngine/session/userPreferences.js +0 -212
  926. package/dist/esm/core/signingEngine/session/warmCapabilities/capabilityReader.js +0 -62
  927. package/dist/esm/core/signingEngine/session/warmCapabilities/capabilityReaderCore.js +0 -293
  928. package/dist/esm/core/signingEngine/session/warmCapabilities/clearVolatileWarmSigningMaterial.js +0 -44
  929. package/dist/esm/core/signingEngine/session/warmCapabilities/ecdsaBootstrapPersistence.js +0 -107
  930. package/dist/esm/core/signingEngine/session/warmCapabilities/ecdsaBootstrapQueue.js +0 -22
  931. package/dist/esm/core/signingEngine/session/warmCapabilities/ecdsaLoginPrefill.js +0 -93
  932. package/dist/esm/core/signingEngine/session/warmCapabilities/ecdsaLoginPrefillSigningMaterialSource.js +0 -50
  933. package/dist/esm/core/signingEngine/session/warmCapabilities/ecdsaProvisionPlan.js +0 -9
  934. package/dist/esm/core/signingEngine/session/warmCapabilities/ed25519SealedSessionRuntime.js +0 -251
  935. package/dist/esm/core/signingEngine/session/warmCapabilities/nearEd25519CapabilityRehydration.js +0 -98
  936. package/dist/esm/core/signingEngine/session/warmCapabilities/public.js +0 -31
  937. package/dist/esm/core/signingEngine/session/warmCapabilities/readModel.js +0 -155
  938. package/dist/esm/core/signingEngine/session/warmCapabilities/routerAbEd25519WalletSessionState.js +0 -256
  939. package/dist/esm/core/signingEngine/session/warmCapabilities/statusReader.js +0 -100
  940. package/dist/esm/core/signingEngine/session/warmCapabilities/transitions.js +0 -47
  941. package/dist/esm/core/signingEngine/session/warmCapabilities/types.js +0 -122
  942. package/dist/esm/core/signingEngine/session/warmCapabilities/volatileWarmMaterialCommands.js +0 -45
  943. package/dist/esm/core/signingEngine/stepUpConfirmation/channel/confirmCommon.js +0 -89
  944. package/dist/esm/core/signingEngine/stepUpConfirmation/channel/confirmTypes.js +0 -12
  945. package/dist/esm/core/signingEngine/stepUpConfirmation/otpPrompt/authLane.js +0 -31
  946. package/dist/esm/core/signingEngine/stepUpConfirmation/otpPrompt/exportAuthorization.js +0 -108
  947. package/dist/esm/core/signingEngine/stepUpConfirmation/passkeyPrompt/touchIdPrompt.js +0 -271
  948. package/dist/esm/core/signingEngine/stepUpConfirmation/passkeyPrompt/webauthnPromptCoordinator.js +0 -167
  949. package/dist/esm/core/signingEngine/stepUpConfirmation/userConfirmationType.js +0 -15
  950. package/dist/esm/core/signingEngine/threshold/crypto/ed25519YaoLaneWasm.js +0 -67
  951. package/dist/esm/core/signingEngine/threshold/ecdsa/activation.js +0 -267
  952. package/dist/esm/core/signingEngine/threshold/ecdsa/bootstrapSession.js +0 -115
  953. package/dist/esm/core/signingEngine/threshold/ecdsa/postRegistrationSessionActivation.js +0 -132
  954. package/dist/esm/core/signingEngine/threshold/ecdsa/signingQueue.js +0 -16
  955. package/dist/esm/core/signingEngine/threshold/ed25519/commitQueue.js +0 -16
  956. package/dist/esm/core/signingEngine/threshold/ed25519/connectSession.js +0 -137
  957. package/dist/esm/core/signingEngine/threshold/ed25519/yaoActiveClientRegistry.js +0 -146
  958. package/dist/esm/core/signingEngine/threshold/ed25519/yaoClient.js +0 -563
  959. package/dist/esm/core/signingEngine/threshold/ed25519/yaoPageLifecycleOwner.js +0 -23
  960. package/dist/esm/core/signingEngine/uiConfirm/PasskeyMpcExportManager.js +0 -233
  961. package/dist/esm/core/signingEngine/uiConfirm/PasskeyMpcSessionDurableState.js +0 -493
  962. package/dist/esm/core/signingEngine/uiConfirm/PasskeyMpcSessionManager.js +0 -746
  963. package/dist/esm/core/signingEngine/uiConfirm/UiConfirmManager.js +0 -599
  964. package/dist/esm/core/signingEngine/uiConfirm/confirmationReadinessRegistry.js +0 -41
  965. package/dist/esm/core/signingEngine/uiConfirm/exportConfirmRequest.js +0 -149
  966. package/dist/esm/core/signingEngine/uiConfirm/handlers/determineConfirmationConfig.js +0 -82
  967. package/dist/esm/core/signingEngine/uiConfirm/handlers/flowOrchestrator.js +0 -363
  968. package/dist/esm/core/signingEngine/uiConfirm/handlers/flows/adapters/adapters.js +0 -337
  969. package/dist/esm/core/signingEngine/uiConfirm/handlers/flows/adapters/request.js +0 -120
  970. package/dist/esm/core/signingEngine/uiConfirm/handlers/flows/localOnly.js +0 -149
  971. package/dist/esm/core/signingEngine/uiConfirm/handlers/flows/registration.js +0 -235
  972. package/dist/esm/core/signingEngine/uiConfirm/handlers/flows/requestRegistrationCredentialConfirmation.js +0 -178
  973. package/dist/esm/core/signingEngine/uiConfirm/handlers/flows/signing.js +0 -684
  974. package/dist/esm/core/signingEngine/uiConfirm/handlers/handlePromptFromWorker.js +0 -90
  975. package/dist/esm/core/signingEngine/uiConfirm/ui/appearance.js +0 -27
  976. package/dist/esm/core/signingEngine/uiConfirm/ui/confirm-ui.js +0 -516
  977. package/dist/esm/core/signingEngine/uiConfirm/ui/export-private-key-reveal.js +0 -155
  978. package/dist/esm/core/signingEngine/uiConfirm/ui/export-viewer-host.js +0 -207
  979. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ExportPrivateKeySurface.js +0 -318
  980. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/RecoveryCodeBackupSurface.js +0 -518
  981. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/confirmation-controller.js +0 -80
  982. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/mountExportPrivateKeySurface.js +0 -86
  983. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/mountRecoveryCodeBackupSurface.js +0 -82
  984. package/dist/esm/core/signingEngine/uiConfirm/ui/surface-measurement-binding.js +0 -12
  985. package/dist/esm/core/signingEngine/uiConfirm/ui/transaction-activity.js +0 -46
  986. package/dist/esm/core/signingEngine/uiConfirm/ui/transaction-display/abi/abiDecode.js +0 -315
  987. package/dist/esm/core/signingEngine/uiConfirm/ui/transaction-display/abi/enrichDisplayModelWithAbi.js +0 -77
  988. package/dist/esm/core/signingEngine/uiConfirm/ui/transaction-display/confirmation-tree.js +0 -27
  989. package/dist/esm/core/signingEngine/uiConfirm/ui/transaction-display/renderers/fallback.js +0 -52
  990. package/dist/esm/core/signingEngine/uiConfirm/ui/transaction-display/renderers/types.js +0 -62
  991. package/dist/esm/core/signingEngine/uiConfirm/ui/transaction-display/tree.js +0 -249
  992. package/dist/esm/core/signingEngine/uiConfirm/warmSessionUiConfirm.js +0 -65
  993. package/dist/esm/core/signingEngine/walletCustody/activateEd25519Capability.js +0 -122
  994. package/dist/esm/core/signingEngine/walletCustody/ceremonyActiveClientMetadata.js +0 -94
  995. package/dist/esm/core/signingEngine/walletCustody/ceremonyDriver.js +0 -171
  996. package/dist/esm/core/signingEngine/walletCustody/ceremonyStepRunner.js +0 -20
  997. package/dist/esm/core/signingEngine/walletCustody/ed25519ActiveClient.js +0 -100
  998. package/dist/esm/core/signingEngine/walletCustody/ed25519Projection.js +0 -32
  999. package/dist/esm/core/signingEngine/walletCustody/ed25519SeedMaterial.js +0 -92
  1000. package/dist/esm/core/signingEngine/walletCustody/emailOtpLink.js +0 -132
  1001. package/dist/esm/core/signingEngine/walletCustody/joinCustodyWire.js +0 -64
  1002. package/dist/esm/core/signingEngine/walletCustody/openCustodyCache.js +0 -126
  1003. package/dist/esm/core/signingEngine/walletCustody/passkeyLink.js +0 -180
  1004. package/dist/esm/core/signingEngine/walletCustody/recoveryReplacementEnvelope.js +0 -60
  1005. package/dist/esm/core/signingEngine/walletCustody/registrationCeremony.js +0 -460
  1006. package/dist/esm/core/signingEngine/walletCustody/unlockedEd25519ExportRootCapability.js +0 -258
  1007. package/dist/esm/core/signingEngine/walletCustody/walletRecoveryCredential.js +0 -23
  1008. package/dist/esm/core/signingEngine/walletCustody/walletRecoveryEcdsa.js +0 -75
  1009. package/dist/esm/core/signingEngine/walletCustody/walletRecoveryEd25519.js +0 -129
  1010. package/dist/esm/core/signingEngine/walletCustody/walletRecoveryManifest.js +0 -178
  1011. package/dist/esm/core/signingEngine/walletCustody/walletRecoveryRotation.js +0 -102
  1012. package/dist/esm/core/signingEngine/webauthnAuth/credentials/collectAuthenticationCredentialForChallengeB64u.js +0 -154
  1013. package/dist/esm/core/signingEngine/webauthnAuth/device/signerSlot.js +0 -25
  1014. package/dist/esm/core/signingEngine/webauthnAuth/walletOriginWebAuthn.js +0 -109
  1015. package/dist/esm/core/signingEngine/workerManager/SignerWorkerManager.js +0 -68
  1016. package/dist/esm/core/signingEngine/workerManager/deviceLinkingPorts.js +0 -342
  1017. package/dist/esm/core/signingEngine/workerManager/deviceLinkingSourceContribution.js +0 -158
  1018. package/dist/esm/core/signingEngine/workerManager/ecdsaClientWorkerChannels.js +0 -13
  1019. package/dist/esm/core/signingEngine/workerManager/ecdsaPresignLifecycle.js +0 -6
  1020. package/dist/esm/core/signingEngine/workerManager/workerTransport.js +0 -734
  1021. package/dist/esm/core/types/confirmationConfig.js +0 -39
  1022. package/dist/esm/core/types/secure-confirm-worker.js +0 -22
  1023. package/dist/esm/core/walletRuntimePaths/emailOtpWorker.js +0 -12
  1024. package/dist/esm/core/walletRuntimePaths/multichainWorkers.js +0 -25
  1025. package/dist/esm/core/walletRuntimePaths/walletCustodyCeremonyWorker.js +0 -18
  1026. package/dist/esm/core/walletRuntimePaths/workers.js +0 -93
  1027. package/dist/esm/react/context/useEagerPrewarm.js +0 -38
  1028. package/dist/esm/sdk/ConfirmationDrawer-DrsREojk.js +0 -1
  1029. package/dist/esm/sdk/EvmClient-DoxytQaJ.js +0 -1
  1030. package/dist/esm/sdk/NearClient-vJ65Wjrq.js +0 -1
  1031. package/dist/esm/sdk/NonceCoordinator-BBeadCSq.js +0 -1
  1032. package/dist/esm/sdk/accountLifecycle-EyfYPnuT.js +0 -1
  1033. package/dist/esm/sdk/actions-DZLxCcrU.js +0 -1
  1034. package/dist/esm/sdk/adapters-DtAyuoiA.js +0 -2
  1035. package/dist/esm/sdk/base-Xtd32asf.js +0 -1
  1036. package/dist/esm/sdk/bytes-t5S5mkat.js +0 -1
  1037. package/dist/esm/sdk/canonicalPrimitives-MPGET2cl.js +0 -1
  1038. package/dist/esm/sdk/canonicalSignerErrorCode-C0hh_SVi.js +0 -1
  1039. package/dist/esm/sdk/capabilityKinds-XaXXiD2B.js +0 -1
  1040. package/dist/esm/sdk/chains-yAls2d9X.js +0 -1
  1041. package/dist/esm/sdk/challengeDelivery-cAsaUC6U.js +0 -1
  1042. package/dist/esm/sdk/configHelpers-CseiVoZD.js +0 -1
  1043. package/dist/esm/sdk/csp-stylesheet-B1fAhrGB.js +0 -2
  1044. package/dist/esm/sdk/defaultConfigs-CWpApkMq.js +0 -1
  1045. package/dist/esm/sdk/display-jK7_hYho.js +0 -1
  1046. package/dist/esm/sdk/domainIds-GDzjOs6i.js +0 -1
  1047. package/dist/esm/sdk/ecdsaCapabilityManifest-CHFu-QrV.js +0 -1
  1048. package/dist/esm/sdk/ecdsaChainTarget-CRcRR78w.js +0 -1
  1049. package/dist/esm/sdk/ecdsaPresignLifecycle-CQnCxSlq.js +0 -1
  1050. package/dist/esm/sdk/ecdsaPresignPoolIdentity-Ci-ovDlv.js +0 -1
  1051. package/dist/esm/sdk/ecdsaWalletRecords-Cm1DdexN.js +0 -1
  1052. package/dist/esm/sdk/enrichDisplayModelWithAbi-CR-4ebuU.js +0 -1
  1053. package/dist/esm/sdk/evmCryptoWasm-CwEXiLrC.js +0 -1
  1054. package/dist/esm/sdk/evmFamilyEcdsaIdentity-Br3iFdQx.js +0 -1
  1055. package/dist/esm/sdk/exactSessionState-CjD8gekO.js +0 -210
  1056. package/dist/esm/sdk/exactSigningLaneIdentity-olheZx_n.js +0 -1
  1057. package/dist/esm/sdk/export-viewer-host-jo7h_0wl.js +0 -1
  1058. package/dist/esm/sdk/helpers-D4QckQhq.js +0 -1
  1059. package/dist/esm/sdk/host-BAqOYnju.js +0 -1
  1060. package/dist/esm/sdk/intentDigest-CB6zy3lN.js +0 -1
  1061. package/dist/esm/sdk/jsxRuntime.module-CoHsKD_3.js +0 -1
  1062. package/dist/esm/sdk/keyMaterialBrands-uVZHfAh3.js +0 -1
  1063. package/dist/esm/sdk/localOnly-DBQRG6Qh.js +0 -1
  1064. package/dist/esm/sdk/messages-Cv2j4SKI.js +0 -1
  1065. package/dist/esm/sdk/mountExportPrivateKeySurface-G7Z_9JMQ.js +0 -1
  1066. package/dist/esm/sdk/mountRecoveryCodeBackupSurface-BBCTaQsu.js +0 -2
  1067. package/dist/esm/sdk/nearEd25519YaoMaterialActivation-DQIw8ho3.js +0 -1
  1068. package/dist/esm/sdk/nearEd25519YaoSigningPreparation-Bp_CvWRz.js +0 -1
  1069. package/dist/esm/sdk/nearRpcResults--cBcfmp4.js +0 -1
  1070. package/dist/esm/sdk/nonceLaneKeys-BBYi4g51.js +0 -1
  1071. package/dist/esm/sdk/normalization-BGPR6osg.js +0 -1
  1072. package/dist/esm/sdk/operationFingerprint-5-wH2Ht8.js +0 -1
  1073. package/dist/esm/sdk/operationFingerprint-DtQb0pdp.js +0 -1
  1074. package/dist/esm/sdk/passkey-custody-LP4UTFbn.js +0 -1
  1075. package/dist/esm/sdk/pendingWalletRecoveryCodeBackup-BNk4ebsY.js +0 -1
  1076. package/dist/esm/sdk/prfCache-Mbo7_USg.js +0 -1
  1077. package/dist/esm/sdk/promptText-s8TQ6ckX.js +0 -1
  1078. package/dist/esm/sdk/recovery-entrypoint-DkT8sFO5.js +0 -1
  1079. package/dist/esm/sdk/registration-Btozh7uh.js +0 -1
  1080. package/dist/esm/sdk/registration-CSAG_h4Y.js +0 -1
  1081. package/dist/esm/sdk/registrationAccounts-DIeEVy6W.js +0 -1
  1082. package/dist/esm/sdk/registrationIds-BIel5S0i.js +0 -1
  1083. package/dist/esm/sdk/registrationIntent-DV1GYZ3K.js +0 -1
  1084. package/dist/esm/sdk/registrationPreparationPreload-vOCqNuG4.js +0 -1
  1085. package/dist/esm/sdk/registrationSignerPlan-FzD3TwxB.js +0 -1
  1086. package/dist/esm/sdk/relayerHttp-DaPeS929.js +0 -1
  1087. package/dist/esm/sdk/routePlan-B_KJaPtm.js +0 -1
  1088. package/dist/esm/sdk/router-Dd3fFHk3.js +0 -1
  1089. package/dist/esm/sdk/routerAbNormalSigning-D_fHjq5l.js +0 -1
  1090. package/dist/esm/sdk/runtime-auth-B2M91rSx.js +0 -1
  1091. package/dist/esm/sdk/runtime-device-link-ojjPSRaG.js +0 -1
  1092. package/dist/esm/sdk/runtime-ecdsa-tempo-CE4JLgmn.js +0 -1
  1093. package/dist/esm/sdk/runtime-email-otp-DDwtKVAe.js +0 -1
  1094. package/dist/esm/sdk/runtime-export-JXYk8sQ-.js +0 -1
  1095. package/dist/esm/sdk/runtime-near-BB8AG6dV.js +0 -1
  1096. package/dist/esm/sdk/runtime-preferences-DKFZYccW.js +0 -1
  1097. package/dist/esm/sdk/runtime-recovery-C_XjsDBg.js +0 -1
  1098. package/dist/esm/sdk/runtime-recovery-codes-CWp839mH.js +0 -1
  1099. package/dist/esm/sdk/runtimeContext-BpObgzbj.js +0 -6
  1100. package/dist/esm/sdk/runtimeLoader-DjgBf_yF.js +0 -1
  1101. package/dist/esm/sdk/sdkSentEvents-_RGAEeld.js +0 -1
  1102. package/dist/esm/sdk/secp256k1-B_6W9QDJ.js +0 -1
  1103. package/dist/esm/sdk/secureRandomId-CTdlJ5Mx.js +0 -1
  1104. package/dist/esm/sdk/sessionPolicy-CNVK7nJ6.js +0 -1
  1105. package/dist/esm/sdk/shared-j_KsFbCT.js +0 -1
  1106. package/dist/esm/sdk/signEvmFamily-CcLVBm0f.js +0 -1
  1107. package/dist/esm/sdk/signEvmFamilyWithUiConfirmForTempo-DgTbh6jX.js +0 -1
  1108. package/dist/esm/sdk/signEvmWithUiConfirm-ChreN7aZ.js +0 -1
  1109. package/dist/esm/sdk/signNear-mWbTE2Dl.js +0 -1
  1110. package/dist/esm/sdk/signatureUses-CQkkUcwT.js +0 -1
  1111. package/dist/esm/sdk/signerDomain-BhUTzDmF.js +0 -1
  1112. package/dist/esm/sdk/signerLoader-By0IY24G.js +0 -1
  1113. package/dist/esm/sdk/signingFlow-LUWrZi2d.js +0 -2
  1114. package/dist/esm/sdk/signingSessionSeal-Mr2Xp44o.js +0 -1
  1115. package/dist/esm/sdk/trace-M34pNGuF.js +0 -1
  1116. package/dist/esm/sdk/transaction-activity-BbDod7ji.js +0 -1
  1117. package/dist/esm/sdk/transactionReview-CBE5oH4c.js +0 -1
  1118. package/dist/esm/sdk/transactionReviewAdmission-0ZgWs6q3.js +0 -1
  1119. package/dist/esm/sdk/transactionState-9d7f3xVj.js +0 -1
  1120. package/dist/esm/sdk/types-M7vxrYtJ.js +0 -1
  1121. package/dist/esm/sdk/validation-dC1-_uyG.js +0 -1
  1122. package/dist/esm/sdk/wallet-recovery-CcDZ1hMH.js +0 -1
  1123. package/dist/esm/sdk/walletAuthority-CoWSeqvQ.js +0 -1
  1124. package/dist/esm/sdk/walletCustodyEcdsaContinuity-B7xi7nwh.js +0 -1
  1125. package/dist/esm/sdk/walletIframeIdentity-C0b0XMQF.js +0 -1
  1126. package/dist/esm/sdk/walletRecoveryCommit-ljxVeo-d.js +0 -1
  1127. package/dist/esm/sdk/walletRecoveryRotate-HztDcDaY.js +0 -1
  1128. package/dist/esm/sdk/warmSessionHydration-BPGM0YRU.js +0 -1
  1129. package/dist/esm/sdk/webauthnP256-qu06GNFm.js +0 -1
  1130. package/dist/esm/sdk/webauthnPromptCoordinator-DO-qfECu.js +0 -1
  1131. package/dist/esm/shared-ts/src/authorization/walletCustodyOperation.js +0 -16
  1132. package/dist/esm/shared-ts/src/device-linking/contracts.js +0 -8
  1133. package/dist/esm/shared-ts/src/device-linking/ed25519ExportRoot.js +0 -167
  1134. package/dist/esm/shared-ts/src/passkey-custody/ceremonyCommitPayload.js +0 -43
  1135. package/dist/esm/shared-ts/src/signing-lanes/participants.js +0 -256
  1136. package/dist/esm/shared-ts/src/signing-lanes/recordParsers.js +0 -479
  1137. package/dist/esm/shared-ts/src/threshold/secp256k1.js +0 -6
  1138. package/dist/esm/shared-ts/src/utils/addAuthMethodRegistration.js +0 -103
  1139. package/dist/esm/shared-ts/src/utils/ecdsaKeyFactsInventory.js +0 -43
  1140. package/dist/esm/shared-ts/src/utils/exactKeys.js +0 -17
  1141. package/dist/esm/shared-ts/src/utils/routerAbTraceContext.js +0 -36
  1142. package/dist/esm/shared-ts/src/utils/walletAddSignerActivation.js +0 -32
  1143. package/dist/public/sdk/ConfirmationDrawer-DrsREojk.js +0 -1
  1144. package/dist/public/sdk/EvmClient-DoxytQaJ.js +0 -1
  1145. package/dist/public/sdk/NearClient-vJ65Wjrq.js +0 -1
  1146. package/dist/public/sdk/NonceCoordinator-BBeadCSq.js +0 -1
  1147. package/dist/public/sdk/accountLifecycle-EyfYPnuT.js +0 -1
  1148. package/dist/public/sdk/actions-DZLxCcrU.js +0 -1
  1149. package/dist/public/sdk/adapters-DtAyuoiA.js +0 -2
  1150. package/dist/public/sdk/base-Xtd32asf.js +0 -1
  1151. package/dist/public/sdk/bytes-t5S5mkat.js +0 -1
  1152. package/dist/public/sdk/canonicalPrimitives-MPGET2cl.js +0 -1
  1153. package/dist/public/sdk/canonicalSignerErrorCode-C0hh_SVi.js +0 -1
  1154. package/dist/public/sdk/capabilityKinds-XaXXiD2B.js +0 -1
  1155. package/dist/public/sdk/chains-yAls2d9X.js +0 -1
  1156. package/dist/public/sdk/challengeDelivery-cAsaUC6U.js +0 -1
  1157. package/dist/public/sdk/configHelpers-CseiVoZD.js +0 -1
  1158. package/dist/public/sdk/csp-stylesheet-B1fAhrGB.js +0 -2
  1159. package/dist/public/sdk/defaultConfigs-CWpApkMq.js +0 -1
  1160. package/dist/public/sdk/display-jK7_hYho.js +0 -1
  1161. package/dist/public/sdk/domainIds-GDzjOs6i.js +0 -1
  1162. package/dist/public/sdk/ecdsaCapabilityManifest-CHFu-QrV.js +0 -1
  1163. package/dist/public/sdk/ecdsaChainTarget-CRcRR78w.js +0 -1
  1164. package/dist/public/sdk/ecdsaPresignLifecycle-CQnCxSlq.js +0 -1
  1165. package/dist/public/sdk/ecdsaPresignPoolIdentity-Ci-ovDlv.js +0 -1
  1166. package/dist/public/sdk/ecdsaWalletRecords-Cm1DdexN.js +0 -1
  1167. package/dist/public/sdk/enrichDisplayModelWithAbi-CR-4ebuU.js +0 -1
  1168. package/dist/public/sdk/evmCryptoWasm-CwEXiLrC.js +0 -1
  1169. package/dist/public/sdk/evmFamilyEcdsaIdentity-Br3iFdQx.js +0 -1
  1170. package/dist/public/sdk/exactSessionState-CjD8gekO.js +0 -210
  1171. package/dist/public/sdk/exactSigningLaneIdentity-olheZx_n.js +0 -1
  1172. package/dist/public/sdk/export-viewer-host-jo7h_0wl.js +0 -1
  1173. package/dist/public/sdk/helpers-D4QckQhq.js +0 -1
  1174. package/dist/public/sdk/host-BAqOYnju.js +0 -1
  1175. package/dist/public/sdk/intentDigest-CB6zy3lN.js +0 -1
  1176. package/dist/public/sdk/jsxRuntime.module-CoHsKD_3.js +0 -1
  1177. package/dist/public/sdk/keyMaterialBrands-uVZHfAh3.js +0 -1
  1178. package/dist/public/sdk/localOnly-DBQRG6Qh.js +0 -1
  1179. package/dist/public/sdk/messages-Cv2j4SKI.js +0 -1
  1180. package/dist/public/sdk/mountExportPrivateKeySurface-G7Z_9JMQ.js +0 -1
  1181. package/dist/public/sdk/mountRecoveryCodeBackupSurface-BBCTaQsu.js +0 -2
  1182. package/dist/public/sdk/nearEd25519YaoMaterialActivation-DQIw8ho3.js +0 -1
  1183. package/dist/public/sdk/nearEd25519YaoSigningPreparation-Bp_CvWRz.js +0 -1
  1184. package/dist/public/sdk/nearRpcResults--cBcfmp4.js +0 -1
  1185. package/dist/public/sdk/nonceLaneKeys-BBYi4g51.js +0 -1
  1186. package/dist/public/sdk/normalization-BGPR6osg.js +0 -1
  1187. package/dist/public/sdk/operationFingerprint-5-wH2Ht8.js +0 -1
  1188. package/dist/public/sdk/operationFingerprint-DtQb0pdp.js +0 -1
  1189. package/dist/public/sdk/passkey-custody-LP4UTFbn.js +0 -1
  1190. package/dist/public/sdk/pendingWalletRecoveryCodeBackup-BNk4ebsY.js +0 -1
  1191. package/dist/public/sdk/prfCache-Mbo7_USg.js +0 -1
  1192. package/dist/public/sdk/promptText-s8TQ6ckX.js +0 -1
  1193. package/dist/public/sdk/recovery-entrypoint-DkT8sFO5.js +0 -1
  1194. package/dist/public/sdk/registration-Btozh7uh.js +0 -1
  1195. package/dist/public/sdk/registration-CSAG_h4Y.js +0 -1
  1196. package/dist/public/sdk/registrationAccounts-DIeEVy6W.js +0 -1
  1197. package/dist/public/sdk/registrationIds-BIel5S0i.js +0 -1
  1198. package/dist/public/sdk/registrationIntent-DV1GYZ3K.js +0 -1
  1199. package/dist/public/sdk/registrationPreparationPreload-vOCqNuG4.js +0 -1
  1200. package/dist/public/sdk/registrationSignerPlan-FzD3TwxB.js +0 -1
  1201. package/dist/public/sdk/relayerHttp-DaPeS929.js +0 -1
  1202. package/dist/public/sdk/routePlan-B_KJaPtm.js +0 -1
  1203. package/dist/public/sdk/router-Dd3fFHk3.js +0 -1
  1204. package/dist/public/sdk/routerAbNormalSigning-D_fHjq5l.js +0 -1
  1205. package/dist/public/sdk/runtime-auth-B2M91rSx.js +0 -1
  1206. package/dist/public/sdk/runtime-device-link-ojjPSRaG.js +0 -1
  1207. package/dist/public/sdk/runtime-ecdsa-tempo-CE4JLgmn.js +0 -1
  1208. package/dist/public/sdk/runtime-email-otp-DDwtKVAe.js +0 -1
  1209. package/dist/public/sdk/runtime-export-JXYk8sQ-.js +0 -1
  1210. package/dist/public/sdk/runtime-near-BB8AG6dV.js +0 -1
  1211. package/dist/public/sdk/runtime-preferences-DKFZYccW.js +0 -1
  1212. package/dist/public/sdk/runtime-recovery-C_XjsDBg.js +0 -1
  1213. package/dist/public/sdk/runtime-recovery-codes-CWp839mH.js +0 -1
  1214. package/dist/public/sdk/runtimeContext-BpObgzbj.js +0 -6
  1215. package/dist/public/sdk/runtimeLoader-DjgBf_yF.js +0 -1
  1216. package/dist/public/sdk/sdkSentEvents-_RGAEeld.js +0 -1
  1217. package/dist/public/sdk/secp256k1-B_6W9QDJ.js +0 -1
  1218. package/dist/public/sdk/secureRandomId-CTdlJ5Mx.js +0 -1
  1219. package/dist/public/sdk/sessionPolicy-CNVK7nJ6.js +0 -1
  1220. package/dist/public/sdk/shared-j_KsFbCT.js +0 -1
  1221. package/dist/public/sdk/signEvmFamily-CcLVBm0f.js +0 -1
  1222. package/dist/public/sdk/signEvmFamilyWithUiConfirmForTempo-DgTbh6jX.js +0 -1
  1223. package/dist/public/sdk/signEvmWithUiConfirm-ChreN7aZ.js +0 -1
  1224. package/dist/public/sdk/signNear-mWbTE2Dl.js +0 -1
  1225. package/dist/public/sdk/signatureUses-CQkkUcwT.js +0 -1
  1226. package/dist/public/sdk/signerDomain-BhUTzDmF.js +0 -1
  1227. package/dist/public/sdk/signerLoader-By0IY24G.js +0 -1
  1228. package/dist/public/sdk/signingFlow-LUWrZi2d.js +0 -2
  1229. package/dist/public/sdk/signingSessionSeal-Mr2Xp44o.js +0 -1
  1230. package/dist/public/sdk/trace-M34pNGuF.js +0 -1
  1231. package/dist/public/sdk/transaction-activity-BbDod7ji.js +0 -1
  1232. package/dist/public/sdk/transactionReview-CBE5oH4c.js +0 -1
  1233. package/dist/public/sdk/transactionReviewAdmission-0ZgWs6q3.js +0 -1
  1234. package/dist/public/sdk/transactionState-9d7f3xVj.js +0 -1
  1235. package/dist/public/sdk/types-M7vxrYtJ.js +0 -1
  1236. package/dist/public/sdk/validation-dC1-_uyG.js +0 -1
  1237. package/dist/public/sdk/wallet-recovery-CcDZ1hMH.js +0 -1
  1238. package/dist/public/sdk/walletAuthority-CoWSeqvQ.js +0 -1
  1239. package/dist/public/sdk/walletCustodyEcdsaContinuity-B7xi7nwh.js +0 -1
  1240. package/dist/public/sdk/walletIframeIdentity-C0b0XMQF.js +0 -1
  1241. package/dist/public/sdk/walletRecoveryCommit-ljxVeo-d.js +0 -1
  1242. package/dist/public/sdk/walletRecoveryRotate-HztDcDaY.js +0 -1
  1243. package/dist/public/sdk/warmSessionHydration-BPGM0YRU.js +0 -1
  1244. package/dist/public/sdk/webauthnP256-qu06GNFm.js +0 -1
  1245. package/dist/public/sdk/webauthnPromptCoordinator-DO-qfECu.js +0 -1
  1246. package/dist/public/sdk/workers/evm_crypto.wasm +0 -0
  1247. package/dist/public/sdk/workers/near_signer.wasm +0 -0
  1248. package/dist/public/sdk/workers/tempo_signer.wasm +0 -0
  1249. package/dist/types/wallet/src/SeamsWeb/assembly/browserWorkerWarmupPolicy.d.ts +0 -4
  1250. package/dist/types/wallet/src/SeamsWeb/assembly/configureBrowserIndexedDB.d.ts +0 -3
  1251. package/dist/types/wallet/src/SeamsWeb/operations/auth/walletAuth.d.ts +0 -56
  1252. package/dist/types/wallet/src/SeamsWeb/operations/evm/index.d.ts +0 -9
  1253. package/dist/types/wallet/src/SeamsWeb/operations/near/index.d.ts +0 -11
  1254. package/dist/types/wallet/src/SeamsWeb/operations/recovery/accountSync.d.ts +0 -19
  1255. package/dist/types/wallet/src/SeamsWeb/publicApi/awaitNearReady.d.ts +0 -27
  1256. package/dist/types/wallet/src/SeamsWeb/publicApi/devices.typecheck.d.ts +0 -2
  1257. package/dist/types/wallet/src/SeamsWeb/publicApi/preferences.d.ts +0 -8
  1258. package/dist/types/wallet/src/SeamsWeb/publicApi/recovery.d.ts +0 -14
  1259. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/config-guards.d.ts +0 -15
  1260. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/registrationPreparationPreload.d.ts +0 -2
  1261. package/dist/types/wallet/src/core/signingEngine/flows/registration/public.d.ts +0 -68
  1262. package/dist/types/wallet/src/react/context/useEagerPrewarm.d.ts +0 -3
  1263. package/dist/workers/evm_crypto.wasm +0 -0
  1264. package/dist/workers/near_signer.wasm +0 -0
  1265. package/dist/workers/tempo_signer.wasm +0 -0
  1266. /package/dist/esm/sdk/{accountIds-C3Ihsd2c.js → accountIds-BzZs7YoX.js} +0 -0
  1267. /package/dist/esm/sdk/{base64-ojm5DKcF.js → base64-CsEj-_bC.js} +0 -0
  1268. /package/dist/esm/sdk/{browser-CsOGMbMy.js → browser-D4wUl_77.js} +0 -0
  1269. /package/dist/esm/sdk/{errors-DfbnsXjO.js → errors-BZO3LF6G.js} +0 -0
  1270. /package/dist/esm/sdk/{events-BJyVcnsn.js → events-DsQJQ0Cl.js} +0 -0
  1271. /package/dist/esm/sdk/{executeWorkerOperation-CrFf3FkL.js → executeWorkerOperation-BInr8RYN.js} +0 -0
  1272. /package/dist/esm/sdk/{jsonRpc-C85RYR0A.js → jsonRpc-DrCYQIM9.js} +0 -0
  1273. /package/dist/esm/sdk/{keccak-zexutGfG.js → keccak-B02Fekdh.js} +0 -0
  1274. /package/dist/esm/sdk/{profileAccountProjection-DHCaMtOu.js → profileAccountProjection-DmmfMood.js} +0 -0
  1275. /package/dist/esm/sdk/{signerSlot-BQ1g5JNV.js → signerSlot-Dto7dObP.js} +0 -0
  1276. /package/dist/esm/sdk/{surface-measurement-reporter-OICExWKE.js → surface-measurement-reporter-IlPOI3QK.js} +0 -0
  1277. /package/dist/public/sdk/{accountIds-C3Ihsd2c.js → accountIds-BzZs7YoX.js} +0 -0
  1278. /package/dist/public/sdk/{base64-ojm5DKcF.js → base64-CsEj-_bC.js} +0 -0
  1279. /package/dist/public/sdk/{browser-CsOGMbMy.js → browser-D4wUl_77.js} +0 -0
  1280. /package/dist/public/sdk/{errors-DfbnsXjO.js → errors-BZO3LF6G.js} +0 -0
  1281. /package/dist/public/sdk/{events-BJyVcnsn.js → events-DsQJQ0Cl.js} +0 -0
  1282. /package/dist/public/sdk/{executeWorkerOperation-CrFf3FkL.js → executeWorkerOperation-BInr8RYN.js} +0 -0
  1283. /package/dist/public/sdk/{jsonRpc-C85RYR0A.js → jsonRpc-DrCYQIM9.js} +0 -0
  1284. /package/dist/public/sdk/{keccak-zexutGfG.js → keccak-B02Fekdh.js} +0 -0
  1285. /package/dist/public/sdk/{profileAccountProjection-DHCaMtOu.js → profileAccountProjection-DmmfMood.js} +0 -0
  1286. /package/dist/public/sdk/{signerSlot-BQ1g5JNV.js → signerSlot-Dto7dObP.js} +0 -0
  1287. /package/dist/public/sdk/{surface-measurement-reporter-OICExWKE.js → surface-measurement-reporter-IlPOI3QK.js} +0 -0
@@ -1 +0,0 @@
1
- const e={};let t=null,n=null,r=null;function i(n){return n.type===`PM_ACKNOWLEDGE_WALLET_RECOVERY_CODE_BACKUP`?(t??=import(`./runtime-recovery-codes-CWp839mH.js`),t):(e[n.kind]??=c(n.kind),e[n.kind])}async function a(){e.near??=c(`near`),await Promise.all([e.near,s()])}async function o(){t??=import(`./runtime-recovery-codes-CWp839mH.js`),r??=Promise.all([t,import(`./mountRecoveryCodeBackupSurface-BBCTaQsu.js`)]).then(()=>void 0),await r}async function s(){n??=import(`./registrationPreparationPreload-vOCqNuG4.js`),await(await n).preloadWalletHostRegistrationPreparation()}function c(e){switch(e){case`auth`:return import(`./runtime-auth-B2M91rSx.js`);case`near`:return import(`./runtime-near-BB8AG6dV.js`);case`ecdsa`:return import(`./runtime-ecdsa-tempo-CE4JLgmn.js`);case`email_otp`:return import(`./runtime-email-otp-DDwtKVAe.js`);case`recovery`:return import(`./runtime-recovery-C_XjsDBg.js`);case`export`:return import(`./runtime-export-JXYk8sQ-.js`);case`device_link`:return import(`./runtime-device-link-ojjPSRaG.js`);case`preferences`:return import(`./runtime-preferences-DKFZYccW.js`)}return l(e)}function l(e){throw Error(`Unhandled wallet host runtime route: ${String(e)}`)}export{o as n,a as r,i as t};
@@ -1 +0,0 @@
1
- import{O as e,u as t}from"./domainIds-GDzjOs6i.js";import{h as n}from"./capabilityKinds-XaXXiD2B.js";import{o as r}from"./signerDomain-BhUTzDmF.js";const i={restore:`restore`,visibility:`visibility`,focus:`focus`,operationPreflight:`operation_preflight`,serverRejection:`server_rejection`};function a(e){return{version:1,event:`registration.near_provisioning_changed`,walletId:e.walletId,state:e.state}}function o(e){return typeof e==`number`&&Number.isSafeInteger(e)&&e>0}function s(e){return typeof e==`string`&&e.trim().length>0}function c(e){switch(e){case`near_provisioning_interrupted`:case`near_finalize_failed`:case`near_capability_persist_failed`:case`near_seal_failed`:case`near_provisioning_failed`:return e;default:return null}}function l(e){if(typeof e!=`object`||!e||Array.isArray(e))return null;let t=Reflect.get(e,`updatedAtMs`);if(!o(t))return null;switch(Reflect.get(e,`status`)){case`near_pending`:return{status:`near_pending`,updatedAtMs:t};case`near_provisioning`:return{status:`near_provisioning`,updatedAtMs:t};case`near_ready`:{let n=Reflect.get(e,`nearAccountId`);return s(n)?{status:`near_ready`,updatedAtMs:t,nearAccountId:n}:null}case`near_failed_retryable`:{let n=Reflect.get(e,`error`);if(!s(n))return null;let r=c(Reflect.get(e,`errorCode`));return r?{status:`near_failed_retryable`,updatedAtMs:t,error:n,errorCode:r}:null}default:return null}}function u(e){switch(e){case i.restore:case i.visibility:case i.focus:case i.operationPreflight:case i.serverRejection:return e;default:return null}}function d(e){if(!o(e.expiresAtMs))throw Error(`signing_session.expired expiresAtMs must be a positive safe integer`);if(!o(e.detectedAtMs))throw Error(`signing_session.expired detectedAtMs must be a positive safe integer`);if(e.expiresAtMs>e.detectedAtMs)throw Error(`signing_session.expired timeline is invalid`);return{version:1,event:`signing_session.expired`,walletId:e.walletId,walletSessionId:e.walletSessionId,authMethod:e.authMethod,expiresAtMs:e.expiresAtMs,detectedAtMs:e.detectedAtMs,source:e.source}}function f(t){if(typeof t!=`object`||!t||Array.isArray(t)||Reflect.get(t,`version`)!==1)return null;switch(Reflect.get(t,`event`)){case`registration.near_provisioning_changed`:{let n=e(Reflect.get(t,`walletId`)),r=l(Reflect.get(t,`state`));return!n.ok||!r?null:{version:1,event:`registration.near_provisioning_changed`,walletId:n.value,state:r}}case`signing_session.expired`:break;default:return null}let i=e(Reflect.get(t,`walletId`));if(!i.ok)return null;let a=n(Reflect.get(t,`walletSessionId`));if(!a.ok)return null;let s=Reflect.get(t,`authMethod`);if(!r(s))return null;let c=Reflect.get(t,`expiresAtMs`);if(!o(c))return null;let d=Reflect.get(t,`detectedAtMs`);if(!o(d)||c>d)return null;let f=u(Reflect.get(t,`source`));return f?{version:1,event:`signing_session.expired`,walletId:i.value,walletSessionId:a.value,authMethod:s,expiresAtMs:c,detectedAtMs:d,source:f}:null}let p=function(e){return e.STEP_01_STARTED=`registration.started`,e.STEP_02_ACCOUNT_PREFLIGHT_STARTED=`registration.account.preflight.started`,e.STEP_02_ACCOUNT_PREFLIGHT_SUCCEEDED=`registration.account.preflight.succeeded`,e.STEP_03_SESSION_EXCHANGE_STARTED=`registration.session.exchange.started`,e.STEP_03_SESSION_EXCHANGE_SUCCEEDED=`registration.session.exchange.succeeded`,e.STEP_04_PASSKEY_CREATE_STARTED=`registration.auth.passkey.create.started`,e.STEP_04_PASSKEY_CREATE_SUCCEEDED=`registration.auth.passkey.create.succeeded`,e.STEP_04_OTP_CHALLENGE_STARTED=`registration.otp.challenge.started`,e.STEP_04_OTP_CHALLENGE_SENT=`registration.otp.challenge.sent`,e.STEP_04_OTP_INPUT_REQUIRED=`registration.otp.input.required`,e.STEP_04_OTP_VERIFY_STARTED=`registration.otp.verify.started`,e.STEP_04_OTP_VERIFY_SUCCEEDED=`registration.otp.verify.succeeded`,e.STEP_05_ED25519_SIGNER_PREPARE_STARTED=`registration.signer.ed25519.prepare.started`,e.STEP_05_ED25519_SIGNER_PREPARE_SUCCEEDED=`registration.signer.ed25519.prepare.succeeded`,e.STEP_05_ED25519_SIGNER_PROVISION_STARTED=`registration.signer.ed25519.provision.started`,e.STEP_05_ED25519_SIGNER_PROVISION_SUCCEEDED=`registration.signer.ed25519.provision.succeeded`,e.STEP_05_ED25519_SIGNER_PROVISION_SKIPPED=`registration.signer.ed25519.provision.skipped`,e.STEP_06_RELAY_BOOTSTRAP_STARTED=`registration.relay.bootstrap.started`,e.STEP_06_RELAY_BOOTSTRAP_SUCCEEDED=`registration.relay.bootstrap.succeeded`,e.STEP_07_ACCOUNT_VERIFY_STARTED=`registration.account.verify.started`,e.STEP_07_ACCOUNT_VERIFY_SUCCEEDED=`registration.account.verify.succeeded`,e.STEP_08_STORAGE_PERSIST_STARTED=`registration.storage.persist.started`,e.STEP_08_STORAGE_PERSIST_SUCCEEDED=`registration.storage.persist.succeeded`,e.STEP_09_EMAIL_OTP_SIGNER_ENROLL_STARTED=`registration.signer.email_otp.enroll.started`,e.STEP_09_EMAIL_OTP_SIGNER_ENROLL_SUCCEEDED=`registration.signer.email_otp.enroll.succeeded`,e.STEP_10_ECDSA_SIGNER_PROVISION_STARTED=`registration.signer.ecdsa.provision.started`,e.STEP_10_ECDSA_SIGNER_PROVISION_SUCCEEDED=`registration.signer.ecdsa.provision.succeeded`,e.STEP_10_ECDSA_SIGNER_PROVISION_SKIPPED=`registration.signer.ecdsa.provision.skipped`,e.STEP_10_ECDSA_SIGNER_BOOTSTRAP_STARTED=`registration.signer.ecdsa.bootstrap.started`,e.STEP_10_ECDSA_SIGNER_BOOTSTRAP_SUCCEEDED=`registration.signer.ecdsa.bootstrap.succeeded`,e.STEP_11_COMPLETED=`registration.completed`,e.FAILED=`registration.failed`,e.CANCELLED=`registration.cancelled`,e}({}),m=function(e){return e.STEP_01_STARTED=`unlock.started`,e.STEP_02_ACCOUNT_LOOKUP_STARTED=`unlock.account.lookup.started`,e.STEP_02_ACCOUNT_LOOKUP_SUCCEEDED=`unlock.account.lookup.succeeded`,e.STEP_03_PASSKEY_CHALLENGE_STARTED=`unlock.auth.passkey.challenge.started`,e.STEP_03_PASSKEY_PROMPT_STARTED=`unlock.auth.passkey.prompt.started`,e.STEP_03_PASSKEY_PROMPT_SUCCEEDED=`unlock.auth.passkey.prompt.succeeded`,e.STEP_03_EMAIL_OTP_CHALLENGE_STARTED=`unlock.auth.email_otp.challenge.started`,e.STEP_03_EMAIL_OTP_CHALLENGE_SENT=`unlock.auth.email_otp.challenge.sent`,e.STEP_03_EMAIL_OTP_INPUT_REQUIRED=`unlock.auth.email_otp.input.required`,e.STEP_03_EMAIL_OTP_VERIFY_STARTED=`unlock.auth.email_otp.verify.started`,e.STEP_03_EMAIL_OTP_VERIFY_SUCCEEDED=`unlock.auth.email_otp.verify.succeeded`,e.STEP_04_WALLET_UNLOCK_EXCHANGE_STARTED=`unlock.wallet.exchange.started`,e.STEP_04_WALLET_UNLOCK_EXCHANGE_SUCCEEDED=`unlock.wallet.exchange.succeeded`,e.STEP_04_WALLET_UNLOCK_EXCHANGE_SKIPPED=`unlock.wallet.exchange.skipped`,e.STEP_05_SIGNING_SESSION_WARMUP_STARTED=`unlock.signing_session.warmup.started`,e.STEP_05_ED25519_SIGNING_SESSION_READY=`unlock.signing_session.ed25519.ready`,e.STEP_05_ECDSA_SIGNING_SESSION_READY=`unlock.signing_session.ecdsa.ready`,e.STEP_06_SESSION_READY=`unlock.session.ready`,e.STEP_07_COMPLETED=`unlock.completed`,e.FAILED=`unlock.failed`,e.CANCELLED=`unlock.cancelled`,e}({}),h=function(e){return e.STEP_01_STARTED=`signing.started`,e.STEP_02_REQUEST_PREPARED=`signing.request.prepared`,e.STEP_03_NONCE_RESERVE_STARTED=`signing.nonce.reserve.started`,e.STEP_03_NONCE_RESERVE_SUCCEEDED=`signing.nonce.reserve.succeeded`,e.STEP_04_ACCOUNT_READINESS_STARTED=`signing.account.readiness.started`,e.STEP_04_ACCOUNT_READINESS_SUCCEEDED=`signing.account.readiness.succeeded`,e.STEP_04_ACCOUNT_READINESS_SKIPPED=`signing.account.readiness.skipped`,e.STEP_05_CONFIRMATION_DISPLAYED=`signing.confirmation.displayed`,e.STEP_05_CONFIRMATION_APPROVED=`signing.confirmation.approved`,e.STEP_05_CONFIRMATION_CANCELLED=`signing.confirmation.cancelled`,e.STEP_06_AUTH_WARM_SESSION_CLAIMED=`signing.auth.warm_session.claimed`,e.STEP_06_AUTH_PASSKEY_PROMPT_STARTED=`signing.auth.passkey.prompt.started`,e.STEP_06_AUTH_PASSKEY_PROMPT_SUCCEEDED=`signing.auth.passkey.prompt.succeeded`,e.STEP_06_AUTH_EMAIL_OTP_CHALLENGE_STARTED=`signing.auth.email_otp.challenge.started`,e.STEP_06_AUTH_EMAIL_OTP_CHALLENGE_SENT=`signing.auth.email_otp.challenge.sent`,e.STEP_06_AUTH_EMAIL_OTP_INPUT_REQUIRED=`signing.auth.email_otp.input.required`,e.STEP_06_AUTH_EMAIL_OTP_VERIFY_STARTED=`signing.auth.email_otp.verify.started`,e.STEP_06_AUTH_EMAIL_OTP_VERIFY_SUCCEEDED=`signing.auth.email_otp.verify.succeeded`,e.STEP_07_AUTHENTICATION_COMPLETE=`signing.authentication.complete`,e.STEP_08_SIGNER_PREPARE_STARTED=`signing.signer.prepare.started`,e.STEP_08_SIGNER_PREPARE_SUCCEEDED=`signing.signer.prepare.succeeded`,e.STEP_08_PRESIGN_REFILL_SCHEDULED=`signing.presign.refill.scheduled`,e.STEP_09_THRESHOLD_SESSION_RECONNECT_STARTED=`signing.threshold_session.reconnect.started`,e.STEP_09_THRESHOLD_SESSION_RECONNECT_SUCCEEDED=`signing.threshold_session.reconnect.succeeded`,e.STEP_10_COMMIT_QUEUED=`signing.commit.queued`,e.STEP_10_COMMIT_STARTED=`signing.commit.started`,e.STEP_10_COMMIT_SUCCEEDED=`signing.commit.succeeded`,e.STEP_11_TRANSACTION_SIGNED=`signing.transaction.signed`,e.STEP_11_REMAINING_SPEND_UPDATED=`signing.remaining_spend.updated`,e.STEP_12_BROADCAST_STARTED=`signing.broadcast.started`,e.STEP_12_BROADCAST_ACCEPTED=`signing.broadcast.accepted`,e.STEP_12_BROADCAST_REJECTED=`signing.broadcast.rejected`,e.STEP_13_NONCE_RECONCILE_STARTED=`signing.nonce.reconcile.started`,e.STEP_13_NONCE_RECONCILE_SUCCEEDED=`signing.nonce.reconcile.succeeded`,e.STEP_13_RECEIPT_FINALIZED=`signing.receipt.finalized`,e.STEP_13_RECEIPT_REVERTED=`signing.receipt.reverted`,e.STEP_13_TRANSACTION_DROPPED=`signing.transaction.dropped`,e.STEP_13_TRANSACTION_REPLACED=`signing.transaction.replaced`,e.STEP_13_BROADCAST_SKIPPED=`signing.broadcast.skipped`,e.STEP_14_APP_STATE_SYNC_STARTED=`signing.app_state.sync.started`,e.STEP_14_APP_STATE_SYNC_SUCCEEDED=`signing.app_state.sync.succeeded`,e.STEP_15_COMPLETED=`signing.completed`,e.FAILED=`signing.failed`,e.CANCELLED=`signing.cancelled`,e}({}),g=function(e){return e.STEP_01_QR_PREPARE_STARTED=`link_device.qr.prepare.started`,e.STEP_02_QR_SCAN_STARTED=`link_device.qr.scan.started`,e.FAILED=`link_device.failed`,e.CANCELLED=`link_device.cancelled`,e}({}),_=function(e){return e.STEP_01_STARTED=`account_sync.started`,e.STEP_02_PASSKEY_PROMPT_STARTED=`account_sync.auth.passkey.prompt.started`,e.STEP_02_PASSKEY_PROMPT_SUCCEEDED=`account_sync.auth.passkey.prompt.succeeded`,e.STEP_03_RELAY_VERIFY_STARTED=`account_sync.relay.verify.started`,e.STEP_03_RELAY_VERIFY_SUCCEEDED=`account_sync.relay.verify.succeeded`,e.STEP_04_AUTHENTICATOR_SAVED=`account_sync.authenticator.saved`,e.STEP_05_THRESHOLD_SESSION_READY=`account_sync.threshold_session.ready`,e.STEP_06_COMPLETED=`account_sync.completed`,e.FAILED=`account_sync.failed`,e.CANCELLED=`account_sync.cancelled`,e}({}),v=function(e){return e.STEP_01_STARTED=`key_export.started`,e.STEP_02_AUTH_PASSKEY_PROMPT_STARTED=`key_export.auth.passkey.prompt.started`,e.STEP_02_AUTH_PASSKEY_PROMPT_SUCCEEDED=`key_export.auth.passkey.prompt.succeeded`,e.STEP_02_AUTH_EMAIL_OTP_INPUT_REQUIRED=`key_export.auth.email_otp.input.required`,e.STEP_03_MATERIAL_PREPARE_STARTED=`key_export.material.prepare.started`,e.STEP_03_MATERIAL_PREPARE_SUCCEEDED=`key_export.material.prepare.succeeded`,e.STEP_04_VIEWER_OPENED=`key_export.viewer.opened`,e.STEP_05_VIEWER_CLOSED=`key_export.viewer.closed`,e.STEP_06_COMPLETED=`key_export.completed`,e.FAILED=`key_export.failed`,e.CANCELLED=`key_export.cancelled`,e}({});function y(n){if(n.phase===g.FAILED||n.status===`failed`)return{kind:`failed`};if(n.phase===g.CANCELLED||n.status===`cancelled`)return{kind:`cancelled`};if(n.phase!==g.STEP_02_QR_SCAN_STARTED||n.status!==`succeeded`)return{kind:`pending`};let r=e(String(n.walletId??``)),i=t(n.data?.enrollmentId);return r.ok&&i.ok?{kind:`active`,walletId:r.value}:{kind:`invalid_active`}}const b={[p.STEP_01_STARTED]:1,[p.STEP_02_ACCOUNT_PREFLIGHT_STARTED]:2,[p.STEP_02_ACCOUNT_PREFLIGHT_SUCCEEDED]:2,[p.STEP_03_SESSION_EXCHANGE_STARTED]:3,[p.STEP_03_SESSION_EXCHANGE_SUCCEEDED]:3,[p.STEP_04_PASSKEY_CREATE_STARTED]:4,[p.STEP_04_PASSKEY_CREATE_SUCCEEDED]:4,[p.STEP_04_OTP_CHALLENGE_STARTED]:4,[p.STEP_04_OTP_CHALLENGE_SENT]:4,[p.STEP_04_OTP_INPUT_REQUIRED]:4,[p.STEP_04_OTP_VERIFY_STARTED]:4,[p.STEP_04_OTP_VERIFY_SUCCEEDED]:4,[p.STEP_05_ED25519_SIGNER_PREPARE_STARTED]:5,[p.STEP_05_ED25519_SIGNER_PREPARE_SUCCEEDED]:5,[p.STEP_05_ED25519_SIGNER_PROVISION_STARTED]:5,[p.STEP_05_ED25519_SIGNER_PROVISION_SUCCEEDED]:5,[p.STEP_05_ED25519_SIGNER_PROVISION_SKIPPED]:5,[p.STEP_06_RELAY_BOOTSTRAP_STARTED]:6,[p.STEP_06_RELAY_BOOTSTRAP_SUCCEEDED]:6,[p.STEP_07_ACCOUNT_VERIFY_STARTED]:7,[p.STEP_07_ACCOUNT_VERIFY_SUCCEEDED]:7,[p.STEP_08_STORAGE_PERSIST_STARTED]:8,[p.STEP_08_STORAGE_PERSIST_SUCCEEDED]:8,[p.STEP_09_EMAIL_OTP_SIGNER_ENROLL_STARTED]:9,[p.STEP_09_EMAIL_OTP_SIGNER_ENROLL_SUCCEEDED]:9,[p.STEP_10_ECDSA_SIGNER_PROVISION_STARTED]:10,[p.STEP_10_ECDSA_SIGNER_PROVISION_SUCCEEDED]:10,[p.STEP_10_ECDSA_SIGNER_PROVISION_SKIPPED]:10,[p.STEP_10_ECDSA_SIGNER_BOOTSTRAP_STARTED]:10,[p.STEP_10_ECDSA_SIGNER_BOOTSTRAP_SUCCEEDED]:10,[p.STEP_11_COMPLETED]:11,[p.FAILED]:0,[p.CANCELLED]:0,[m.STEP_01_STARTED]:1,[m.STEP_02_ACCOUNT_LOOKUP_STARTED]:2,[m.STEP_02_ACCOUNT_LOOKUP_SUCCEEDED]:2,[m.STEP_03_PASSKEY_CHALLENGE_STARTED]:3,[m.STEP_03_PASSKEY_PROMPT_STARTED]:3,[m.STEP_03_PASSKEY_PROMPT_SUCCEEDED]:3,[m.STEP_03_EMAIL_OTP_CHALLENGE_STARTED]:3,[m.STEP_03_EMAIL_OTP_CHALLENGE_SENT]:3,[m.STEP_03_EMAIL_OTP_INPUT_REQUIRED]:3,[m.STEP_03_EMAIL_OTP_VERIFY_STARTED]:3,[m.STEP_03_EMAIL_OTP_VERIFY_SUCCEEDED]:3,[m.STEP_04_WALLET_UNLOCK_EXCHANGE_STARTED]:4,[m.STEP_04_WALLET_UNLOCK_EXCHANGE_SUCCEEDED]:4,[m.STEP_04_WALLET_UNLOCK_EXCHANGE_SKIPPED]:4,[m.STEP_05_SIGNING_SESSION_WARMUP_STARTED]:5,[m.STEP_05_ED25519_SIGNING_SESSION_READY]:5,[m.STEP_05_ECDSA_SIGNING_SESSION_READY]:5,[m.STEP_06_SESSION_READY]:6,[m.STEP_07_COMPLETED]:7,[m.FAILED]:0,[m.CANCELLED]:0,[h.STEP_01_STARTED]:1,[h.STEP_02_REQUEST_PREPARED]:2,[h.STEP_03_NONCE_RESERVE_STARTED]:3,[h.STEP_03_NONCE_RESERVE_SUCCEEDED]:3,[h.STEP_04_ACCOUNT_READINESS_STARTED]:4,[h.STEP_04_ACCOUNT_READINESS_SUCCEEDED]:4,[h.STEP_04_ACCOUNT_READINESS_SKIPPED]:4,[h.STEP_05_CONFIRMATION_DISPLAYED]:5,[h.STEP_05_CONFIRMATION_APPROVED]:5,[h.STEP_05_CONFIRMATION_CANCELLED]:5,[h.STEP_06_AUTH_WARM_SESSION_CLAIMED]:6,[h.STEP_06_AUTH_PASSKEY_PROMPT_STARTED]:6,[h.STEP_06_AUTH_PASSKEY_PROMPT_SUCCEEDED]:6,[h.STEP_06_AUTH_EMAIL_OTP_CHALLENGE_STARTED]:6,[h.STEP_06_AUTH_EMAIL_OTP_CHALLENGE_SENT]:6,[h.STEP_06_AUTH_EMAIL_OTP_INPUT_REQUIRED]:6,[h.STEP_06_AUTH_EMAIL_OTP_VERIFY_STARTED]:6,[h.STEP_06_AUTH_EMAIL_OTP_VERIFY_SUCCEEDED]:6,[h.STEP_07_AUTHENTICATION_COMPLETE]:7,[h.STEP_08_SIGNER_PREPARE_STARTED]:8,[h.STEP_08_SIGNER_PREPARE_SUCCEEDED]:8,[h.STEP_08_PRESIGN_REFILL_SCHEDULED]:8,[h.STEP_09_THRESHOLD_SESSION_RECONNECT_STARTED]:9,[h.STEP_09_THRESHOLD_SESSION_RECONNECT_SUCCEEDED]:9,[h.STEP_10_COMMIT_QUEUED]:10,[h.STEP_10_COMMIT_STARTED]:10,[h.STEP_10_COMMIT_SUCCEEDED]:10,[h.STEP_11_TRANSACTION_SIGNED]:11,[h.STEP_11_REMAINING_SPEND_UPDATED]:11,[h.STEP_12_BROADCAST_STARTED]:12,[h.STEP_12_BROADCAST_ACCEPTED]:12,[h.STEP_12_BROADCAST_REJECTED]:12,[h.STEP_13_NONCE_RECONCILE_STARTED]:13,[h.STEP_13_NONCE_RECONCILE_SUCCEEDED]:13,[h.STEP_13_RECEIPT_FINALIZED]:13,[h.STEP_13_RECEIPT_REVERTED]:13,[h.STEP_13_TRANSACTION_DROPPED]:13,[h.STEP_13_TRANSACTION_REPLACED]:13,[h.STEP_13_BROADCAST_SKIPPED]:13,[h.STEP_14_APP_STATE_SYNC_STARTED]:14,[h.STEP_14_APP_STATE_SYNC_SUCCEEDED]:14,[h.STEP_15_COMPLETED]:15,[h.FAILED]:0,[h.CANCELLED]:0,[g.STEP_01_QR_PREPARE_STARTED]:1,[g.STEP_02_QR_SCAN_STARTED]:2,[g.FAILED]:0,[g.CANCELLED]:0,[_.STEP_01_STARTED]:1,[_.STEP_02_PASSKEY_PROMPT_STARTED]:2,[_.STEP_02_PASSKEY_PROMPT_SUCCEEDED]:2,[_.STEP_03_RELAY_VERIFY_STARTED]:3,[_.STEP_03_RELAY_VERIFY_SUCCEEDED]:3,[_.STEP_04_AUTHENTICATOR_SAVED]:4,[_.STEP_05_THRESHOLD_SESSION_READY]:5,[_.STEP_06_COMPLETED]:6,[_.FAILED]:0,[_.CANCELLED]:0,[v.STEP_01_STARTED]:1,[v.STEP_02_AUTH_PASSKEY_PROMPT_STARTED]:2,[v.STEP_02_AUTH_PASSKEY_PROMPT_SUCCEEDED]:2,[v.STEP_02_AUTH_EMAIL_OTP_INPUT_REQUIRED]:2,[v.STEP_03_MATERIAL_PREPARE_STARTED]:3,[v.STEP_03_MATERIAL_PREPARE_SUCCEEDED]:3,[v.STEP_04_VIEWER_OPENED]:4,[v.STEP_05_VIEWER_CLOSED]:5,[v.STEP_06_COMPLETED]:6,[v.FAILED]:0,[v.CANCELLED]:0},x={[p.STEP_01_STARTED]:`Starting registration`,[p.STEP_02_ACCOUNT_PREFLIGHT_STARTED]:`Checking account details`,[p.STEP_02_ACCOUNT_PREFLIGHT_SUCCEEDED]:`Account details ready`,[p.STEP_03_SESSION_EXCHANGE_STARTED]:`Checking registration session`,[p.STEP_03_SESSION_EXCHANGE_SUCCEEDED]:`Registration session ready`,[p.STEP_04_PASSKEY_CREATE_STARTED]:`Create your passkey`,[p.STEP_04_PASSKEY_CREATE_SUCCEEDED]:`Passkey created`,[p.STEP_04_OTP_CHALLENGE_STARTED]:`Sending registration email code`,[p.STEP_04_OTP_CHALLENGE_SENT]:`Registration email code sent`,[p.STEP_04_OTP_INPUT_REQUIRED]:`Enter the registration code`,[p.STEP_04_OTP_VERIFY_STARTED]:`Verifying registration code`,[p.STEP_04_OTP_VERIFY_SUCCEEDED]:`Registration email verified`,[p.STEP_05_ED25519_SIGNER_PREPARE_STARTED]:`Preparing NEAR signer`,[p.STEP_05_ED25519_SIGNER_PREPARE_SUCCEEDED]:`NEAR signer ready`,[p.STEP_05_ED25519_SIGNER_PROVISION_STARTED]:`Preparing NEAR signer`,[p.STEP_05_ED25519_SIGNER_PROVISION_SUCCEEDED]:`NEAR signer ready`,[p.STEP_05_ED25519_SIGNER_PROVISION_SKIPPED]:`NEAR signer setup skipped`,[p.STEP_06_RELAY_BOOTSTRAP_STARTED]:`Creating wallet account`,[p.STEP_06_RELAY_BOOTSTRAP_SUCCEEDED]:`Wallet account created`,[p.STEP_07_ACCOUNT_VERIFY_STARTED]:`Verifying wallet account`,[p.STEP_07_ACCOUNT_VERIFY_SUCCEEDED]:`Wallet account verified`,[p.STEP_08_STORAGE_PERSIST_STARTED]:`Saving wallet metadata`,[p.STEP_08_STORAGE_PERSIST_SUCCEEDED]:`Wallet metadata saved`,[p.STEP_09_EMAIL_OTP_SIGNER_ENROLL_STARTED]:`Securing Email OTP registration`,[p.STEP_09_EMAIL_OTP_SIGNER_ENROLL_SUCCEEDED]:`Email OTP registration secured`,[p.STEP_10_ECDSA_SIGNER_PROVISION_STARTED]:`Preparing EVM signing session`,[p.STEP_10_ECDSA_SIGNER_PROVISION_SUCCEEDED]:`EVM signing session ready`,[p.STEP_10_ECDSA_SIGNER_PROVISION_SKIPPED]:`EVM signer setup skipped`,[p.STEP_10_ECDSA_SIGNER_BOOTSTRAP_STARTED]:`Preparing EVM signer`,[p.STEP_10_ECDSA_SIGNER_BOOTSTRAP_SUCCEEDED]:`EVM signer ready`,[p.STEP_11_COMPLETED]:`Registration complete`,[p.FAILED]:`Registration failed`,[p.CANCELLED]:`Registration cancelled`,[m.STEP_01_STARTED]:`Unlocking wallet`,[m.STEP_02_ACCOUNT_LOOKUP_STARTED]:`Finding wallet account`,[m.STEP_02_ACCOUNT_LOOKUP_SUCCEEDED]:`Wallet account found`,[m.STEP_03_PASSKEY_CHALLENGE_STARTED]:`Preparing passkey check`,[m.STEP_03_PASSKEY_PROMPT_STARTED]:`Confirm with passkey`,[m.STEP_03_PASSKEY_PROMPT_SUCCEEDED]:`Passkey confirmed`,[m.STEP_03_EMAIL_OTP_CHALLENGE_STARTED]:`Sending email code`,[m.STEP_03_EMAIL_OTP_CHALLENGE_SENT]:`Email code sent`,[m.STEP_03_EMAIL_OTP_INPUT_REQUIRED]:`Enter the email code`,[m.STEP_03_EMAIL_OTP_VERIFY_STARTED]:`Verifying email code`,[m.STEP_03_EMAIL_OTP_VERIFY_SUCCEEDED]:`Email verified`,[m.STEP_04_WALLET_UNLOCK_EXCHANGE_STARTED]:`Creating wallet session`,[m.STEP_04_WALLET_UNLOCK_EXCHANGE_SUCCEEDED]:`Wallet session ready`,[m.STEP_04_WALLET_UNLOCK_EXCHANGE_SKIPPED]:`Wallet session skipped`,[m.STEP_05_SIGNING_SESSION_WARMUP_STARTED]:`Preparing transaction signing`,[m.STEP_05_ED25519_SIGNING_SESSION_READY]:`NEAR signing authorization ready`,[m.STEP_05_ECDSA_SIGNING_SESSION_READY]:`EVM signing session ready`,[m.STEP_06_SESSION_READY]:`Wallet session ready`,[m.STEP_07_COMPLETED]:`Wallet unlocked`,[m.FAILED]:`Wallet unlock failed`,[m.CANCELLED]:`Wallet unlock cancelled`,[h.STEP_01_STARTED]:`Preparing transaction`,[h.STEP_02_REQUEST_PREPARED]:`Transaction ready for review`,[h.STEP_03_NONCE_RESERVE_STARTED]:`Reserving nonce`,[h.STEP_03_NONCE_RESERVE_SUCCEEDED]:`Nonce reserved`,[h.STEP_04_ACCOUNT_READINESS_STARTED]:`Checking account setup`,[h.STEP_04_ACCOUNT_READINESS_SUCCEEDED]:`Account setup verified`,[h.STEP_04_ACCOUNT_READINESS_SKIPPED]:`Account setup check skipped`,[h.STEP_05_CONFIRMATION_DISPLAYED]:`Review transaction`,[h.STEP_05_CONFIRMATION_APPROVED]:`Transaction approved`,[h.STEP_05_CONFIRMATION_CANCELLED]:`Transaction rejected`,[h.STEP_06_AUTH_WARM_SESSION_CLAIMED]:`Signing session authorized`,[h.STEP_06_AUTH_PASSKEY_PROMPT_STARTED]:`Confirm with passkey`,[h.STEP_06_AUTH_PASSKEY_PROMPT_SUCCEEDED]:`Passkey confirmed`,[h.STEP_06_AUTH_EMAIL_OTP_CHALLENGE_STARTED]:`Sending email code`,[h.STEP_06_AUTH_EMAIL_OTP_CHALLENGE_SENT]:`Email code sent`,[h.STEP_06_AUTH_EMAIL_OTP_INPUT_REQUIRED]:`Enter the email code`,[h.STEP_06_AUTH_EMAIL_OTP_VERIFY_STARTED]:`Verifying email code`,[h.STEP_06_AUTH_EMAIL_OTP_VERIFY_SUCCEEDED]:`Email verified`,[h.STEP_07_AUTHENTICATION_COMPLETE]:`Authentication complete`,[h.STEP_08_SIGNER_PREPARE_STARTED]:`Preparing secure signer`,[h.STEP_08_SIGNER_PREPARE_SUCCEEDED]:`Secure signer ready`,[h.STEP_08_PRESIGN_REFILL_SCHEDULED]:`Preparing future signatures`,[h.STEP_09_THRESHOLD_SESSION_RECONNECT_STARTED]:`Preparing signing session`,[h.STEP_09_THRESHOLD_SESSION_RECONNECT_SUCCEEDED]:`Secure signer loaded`,[h.STEP_10_COMMIT_QUEUED]:`Waiting to sign`,[h.STEP_10_COMMIT_STARTED]:`Signing transaction`,[h.STEP_10_COMMIT_SUCCEEDED]:`Transaction signature ready`,[h.STEP_11_TRANSACTION_SIGNED]:`Transaction signed`,[h.STEP_11_REMAINING_SPEND_UPDATED]:`Signing spend updated`,[h.STEP_12_BROADCAST_STARTED]:`Broadcasting transaction`,[h.STEP_12_BROADCAST_ACCEPTED]:`Transaction submitted`,[h.STEP_12_BROADCAST_REJECTED]:`Transaction broadcast failed`,[h.STEP_13_NONCE_RECONCILE_STARTED]:`Checking nonce state`,[h.STEP_13_NONCE_RECONCILE_SUCCEEDED]:`Nonce state updated`,[h.STEP_13_RECEIPT_FINALIZED]:`Transaction finalized`,[h.STEP_13_RECEIPT_REVERTED]:`Transaction reverted`,[h.STEP_13_TRANSACTION_DROPPED]:`Transaction dropped`,[h.STEP_13_TRANSACTION_REPLACED]:`Transaction replaced`,[h.STEP_13_BROADCAST_SKIPPED]:`Broadcast skipped`,[h.STEP_14_APP_STATE_SYNC_STARTED]:`Refreshing app state`,[h.STEP_14_APP_STATE_SYNC_SUCCEEDED]:`App state refreshed`,[h.STEP_15_COMPLETED]:`Transaction complete`,[h.FAILED]:`Transaction signing failed`,[h.CANCELLED]:`Transaction signing cancelled`,[g.STEP_01_QR_PREPARE_STARTED]:`Preparing device link`,[g.STEP_02_QR_SCAN_STARTED]:`Scanning QR code`,[g.FAILED]:`Device link failed`,[g.CANCELLED]:`Device link cancelled`,[_.STEP_01_STARTED]:`Starting account sync`,[_.STEP_02_PASSKEY_PROMPT_STARTED]:`Confirm with passkey`,[_.STEP_02_PASSKEY_PROMPT_SUCCEEDED]:`Passkey confirmed`,[_.STEP_03_RELAY_VERIFY_STARTED]:`Verifying account access`,[_.STEP_03_RELAY_VERIFY_SUCCEEDED]:`Account access verified`,[_.STEP_04_AUTHENTICATOR_SAVED]:`Passkey saved locally`,[_.STEP_05_THRESHOLD_SESSION_READY]:`Signing session ready`,[_.STEP_06_COMPLETED]:`Account synced`,[_.FAILED]:`Account sync failed`,[_.CANCELLED]:`Account sync cancelled`,[v.STEP_01_STARTED]:`Preparing key export`,[v.STEP_02_AUTH_PASSKEY_PROMPT_STARTED]:`Confirm with passkey`,[v.STEP_02_AUTH_PASSKEY_PROMPT_SUCCEEDED]:`Passkey confirmed`,[v.STEP_02_AUTH_EMAIL_OTP_INPUT_REQUIRED]:`Enter the email code`,[v.STEP_03_MATERIAL_PREPARE_STARTED]:`Preparing key material`,[v.STEP_03_MATERIAL_PREPARE_SUCCEEDED]:`Key material ready`,[v.STEP_04_VIEWER_OPENED]:`Review private key`,[v.STEP_05_VIEWER_CLOSED]:`Key export closed`,[v.STEP_06_COMPLETED]:`Key export complete`,[v.FAILED]:`Key export failed`,[v.CANCELLED]:`Key export cancelled`};function S(e){let t=e.interaction??(e.status===`failed`||e.status===`cancelled`?{kind:`none`,overlay:`hide`}:void 0);return{...e,...t?{interaction:t}:{},version:2,step:b[e.phase],message:e.message??x[e.phase]}}function C(e){return S({...e,flow:`registration`})}function w(e){return S({...e,flow:`unlock`})}function T(e){return S({...e,flow:`link_device`})}function E(e){return S({...e,flow:`account_sync`})}function D(e){return S({...e,flow:`key_export`})}function O(e){return S({...e,flow:`signing`})}function k(e){if(!e||typeof e!=`object`)return!1;let t=e;return t.version===2&&typeof t.flow==`string`}export{k as _,i as a,y as c,T as d,a as f,w as g,d as h,p as i,E as l,O as m,v as n,h as o,C as p,g as r,m as s,_ as t,D as u,l as v,f as y};
@@ -1 +0,0 @@
1
- import{n as e}from"./chunk-dVx5-UGu.js";import{B as t,V as n,h as r,r as i}from"./domainIds-GDzjOs6i.js";import{i as a,r as o}from"./base64-ojm5DKcF.js";import{r as s}from"./secureRandomId-CTdlJ5Mx.js";import{Et as c,F as l,I as u,St as d,d as f,g as p,l as m,nt as h,o as g,s as _,t as v,u as y}from"./ecdsaPresignLifecycle-CQnCxSlq.js";import{a as ee,c as te,l as ne,o as re,s as ie,u as ae}from"./keyMaterialBrands-uVZHfAh3.js";import{n as b,t as oe}from"./ecdsaPresignPoolIdentity-Ci-ovDlv.js";import{i as x,n as S,r as se,u as C}from"./trace-M34pNGuF.js";import{t as w}from"./defaultConfigs-CWpApkMq.js";import{t as T}from"./executeWorkerOperation-CrFf3FkL.js";import{c as ce,o as le,t as E}from"./routerAbNormalSigning-D_fHjq5l.js";import{o as D,s as ue,t as O}from"./evmCryptoWasm-CwEXiLrC.js";const de={WORKER_READY:`WORKER_READY`},k={PrepareThresholdEcdsaDerivationRoleLocalClientBootstrap:7e4,FinalizeThresholdEcdsaDerivationRoleLocalClientBootstrap:70001,CreateRouterAbEcdsaRegistrationCeremony:70005,VerifyRouterAbEcdsaRegistrationClientProofs:70006,CloseRouterAbEcdsaRegistrationCeremony:70007,FinalizeRouterAbEcdsaRegistrationActivation:70008,CreateRouterAbEcdsaPostRegistrationCeremony:70009,FinalizeRouterAbEcdsaExplicitExport:70010,CloseRouterAbEcdsaPostRegistrationCeremony:70011,StoreThresholdEcdsaRoleLocalSigningMaterial:70004,RehydrateEcdsaRoleLocalSigningMaterial:70015,PersistInitialCanonicalEcdsaActivation:70016,ReconcileCanonicalEcdsaActivation:70017,PrewarmEcdsaRegistrationCrypto:70018,VerifyRouterAbEcdsaPostRegistrationProofs:70019,SignWalletRecoveryEcdsaMaterialPossessionProof:70020,PrepareLinkedDeviceEcdsaSourceContribution:70022,StoreLinkedDeviceEcdsaHolderMaterial:70023,DisposeLinkedDeviceEcdsaHolderMaterials:70024,CreateEcdsaHolderOrdinaryExportRequest:70027,FinalizeEcdsaHolderOrdinaryExport:70028},A={PrepareThresholdEcdsaDerivationRoleLocalClientBootstrapSuccess:70100,FinalizeThresholdEcdsaDerivationRoleLocalClientBootstrapSuccess:70101,CreateRouterAbEcdsaRegistrationCeremonySuccess:70105,VerifyRouterAbEcdsaRegistrationClientProofsSuccess:70106,CloseRouterAbEcdsaRegistrationCeremonySuccess:70107,FinalizeRouterAbEcdsaRegistrationActivationSuccess:70108,CreateRouterAbEcdsaPostRegistrationCeremonySuccess:70109,FinalizeRouterAbEcdsaExplicitExportSuccess:70110,CloseRouterAbEcdsaPostRegistrationCeremonySuccess:70111,StoreThresholdEcdsaRoleLocalSigningMaterialSuccess:70104,RehydrateEcdsaRoleLocalSigningMaterialSuccess:70115,PersistInitialCanonicalEcdsaActivationSuccess:70116,ReconcileCanonicalEcdsaActivationSuccess:70117,PrewarmEcdsaRegistrationCryptoSuccess:70118,VerifyRouterAbEcdsaPostRegistrationProofsSuccess:70119,SignWalletRecoveryEcdsaMaterialPossessionProofSuccess:70120,PrepareLinkedDeviceEcdsaSourceContributionSuccess:70122,StoreLinkedDeviceEcdsaHolderMaterialSuccess:70123,DisposeLinkedDeviceEcdsaHolderMaterialsSuccess:70124,CreateEcdsaHolderOrdinaryExportRequestSuccess:70127,FinalizeEcdsaHolderOrdinaryExportSuccess:70128},j={SessionInit:71e3,SessionStep:71001,SessionAbort:71002,Admit:71003,Destroy:71004,Reserve:71005,Commit:71006,ListAvailable:71007,ClearWallet:71008},M={SessionInitSuccess:71100,SessionStepSuccess:71101,SessionAbortSuccess:71102,AdmitSuccess:71103,DestroySuccess:71104,ReserveSuccess:71105,CommitSuccess:71106,ListAvailableSuccess:71107,ClearWalletSuccess:71108},fe={ComputeSignatureShare:72e3},N={ComputeSignatureShareSuccess:72100};var pe=class extends Error{constructor(e){super(e.message),this.name=`SignerWorkerOperationError`,this.code=(e.code||`SIGNER_INTERNAL`).trim(),this.coreCode=e.coreCode?.trim()||void 0,this.workerKind=e.workerKind}};function me(e){if(!e||typeof e!=`object`)return;let t=e.code;if(typeof t!=`string`)return;let n=t.trim();return n.length?n:void 0}function he(e){if(!e||typeof e!=`object`)return;let t=e.coreCode;if(typeof t!=`string`)return;let n=t.trim();return n.length?n:void 0}const P=2e4;function ge(e){return{presignatureId:e.presignatureId,materialHandle:e.materialHandle,bigR33:new Uint8Array(e.bigR33),createdAtMs:e.createdAtMs,expiresAtMs:e.expiresAtMs}}async function F(e){return await T({ctx:e.workerCtx,kind:`ecdsaDerivationClient`,request:e.request})}async function _e(e){return await T({ctx:e.workerCtx,kind:`ecdsaDerivationClient`,request:e.request})}async function I(e){return await T({ctx:e.workerCtx,kind:`ecdsaPresignClient`,request:e.request})}async function ve(e){return await T({ctx:e.workerCtx,kind:`ecdsaOnlineClient`,request:e.request})}async function ye(e){let t=await F({workerCtx:e.workerCtx,request:{type:k.PrepareThresholdEcdsaDerivationRoleLocalClientBootstrap,timeoutMs:P,payload:e.command}});if(t.type!==A.PrepareThresholdEcdsaDerivationRoleLocalClientBootstrapSuccess)throw Error(`PrepareThresholdEcdsaDerivationRoleLocalClientBootstrap failed`);return t.payload}async function be(e){let t=await F({workerCtx:e.workerCtx,request:{type:k.FinalizeThresholdEcdsaDerivationRoleLocalClientBootstrap,timeoutMs:P,payload:e.command}});if(t.type!==A.FinalizeThresholdEcdsaDerivationRoleLocalClientBootstrapSuccess)throw Error(`FinalizeThresholdEcdsaDerivationRoleLocalClientBootstrap failed`);return t.payload}async function xe(e){let t=await F({workerCtx:e.workerCtx,request:{type:k.CreateRouterAbEcdsaRegistrationCeremony,timeoutMs:P,payload:e.command}});if(t.type!==A.CreateRouterAbEcdsaRegistrationCeremonySuccess)throw Error(`Router A/B ECDSA registration ceremony creation failed`);return t.payload}async function Se(e){let t=await F({workerCtx:e.workerCtx,request:{type:k.VerifyRouterAbEcdsaRegistrationClientProofs,timeoutMs:P,payload:e.command}});if(t.type!==A.VerifyRouterAbEcdsaRegistrationClientProofsSuccess)throw Error(`Router A/B ECDSA registration client proof verification failed`);return t.payload}async function Ce(e){let t=await F({workerCtx:e.workerCtx,request:{type:k.FinalizeRouterAbEcdsaRegistrationActivation,timeoutMs:P,payload:e.command}});if(t.type!==A.FinalizeRouterAbEcdsaRegistrationActivationSuccess)throw Error(`Router A/B ECDSA registration activation finalization failed`);return t.payload}async function we(e){let t=await F({workerCtx:e.workerCtx,request:{type:k.PersistInitialCanonicalEcdsaActivation,timeoutMs:P,payload:e.command}});if(t.type!==A.PersistInitialCanonicalEcdsaActivationSuccess)throw Error(`Initial canonical ECDSA activation persistence failed`);return t.payload}async function Te(e){let t=await F({workerCtx:e.workerCtx,request:{type:k.ReconcileCanonicalEcdsaActivation,timeoutMs:P,payload:e.command}});if(t.type!==A.ReconcileCanonicalEcdsaActivationSuccess)throw Error(`Canonical ECDSA activation reconciliation failed`);let n=t.payload;return n.kind===`canonical_ecdsa_activation_committed_finalization_required_v1`?{kind:`canonical_ecdsa_activation_reconciliation_pending_v1`,journalId:n.journalId,reason:`wallet_custody_rejoin_required`,activationCommand:null}:n}async function Ee(e){let t=await F({workerCtx:e.workerCtx,request:{type:k.CloseRouterAbEcdsaRegistrationCeremony,timeoutMs:P,payload:e.command}});if(t.type!==A.CloseRouterAbEcdsaRegistrationCeremonySuccess)throw Error(`Router A/B ECDSA registration ceremony close failed`);return t.payload}async function De(e){let t=await F({workerCtx:e.workerCtx,request:{type:k.CreateRouterAbEcdsaPostRegistrationCeremony,timeoutMs:P,payload:e.command}});if(t.type!==A.CreateRouterAbEcdsaPostRegistrationCeremonySuccess)throw Error(`Router A/B ECDSA post-registration ceremony creation failed`);return t.payload}async function Oe(e){let t=await F({workerCtx:e.workerCtx,request:{type:k.FinalizeRouterAbEcdsaExplicitExport,timeoutMs:P,payload:e.command}});if(t.type!==A.FinalizeRouterAbEcdsaExplicitExportSuccess)throw Error(`Router A/B ECDSA post-registration client proof finalization failed`);return t.payload}async function ke(e){let t=await F({workerCtx:e.workerCtx,request:{type:k.CloseRouterAbEcdsaPostRegistrationCeremony,timeoutMs:P,payload:e.command}});if(t.type!==A.CloseRouterAbEcdsaPostRegistrationCeremonySuccess)throw Error(`Router A/B ECDSA post-registration ceremony close failed`);return t.payload}async function Ae(e){let t=await F({workerCtx:e.workerCtx,request:{type:k.StoreThresholdEcdsaRoleLocalSigningMaterial,timeoutMs:P,payload:{materialHandle:e.materialHandle,bindingDigest:e.bindingDigest,stateBlob:e.stateBlob}}});if(t.type!==A.StoreThresholdEcdsaRoleLocalSigningMaterialSuccess)throw Error(`StoreThresholdEcdsaRoleLocalSigningMaterial failed`);return t.payload}function je(e,t){return t.durableMaterialRef===e.durableMaterialRef&&t.bindingDigest===e.bindingDigest}async function Me(e){let t=h(e.authority);if(!t)throw Error(`ECDSA role-local signing material authority is invalid`);let n=r(e.materialActivation);if(!n.ok)throw Error(n.error.message);let a=n.value,o=await F({workerCtx:e.workerCtx,request:{type:k.RehydrateEcdsaRoleLocalSigningMaterial,timeoutMs:P,payload:{kind:`open_ecdsa_role_local_signing_material_v1`,authority:t,materialActivation:a}}});if(o.type!==A.RehydrateEcdsaRoleLocalSigningMaterialSuccess)throw Error(`OpenEcdsaRoleLocalSigningMaterial failed`);let s=o.payload;switch(s.kind){case`ecdsa_role_local_signing_material_unavailable_v1`:return{ok:!1,reason:s.reason};case`ecdsa_role_local_signing_material_opened_v1`:{let e=ee(s.materialRef);if(!i(a,e.materialActivation))throw Error(`ECDSA role-local signing material open changed its activation identity`);let t=re(s.liveHandle);if(!je(e,t))throw Error(`ECDSA role-local signing material hydration changed its identity`);return{ok:!0,liveHandle:t,materialRef:e}}default:{let e=s;throw Error(`ECDSA role-local signing material hydration response kind is invalid: ${String(e)}`)}}}async function Ne(e){let t=await F({workerCtx:e.workerCtx,request:{type:k.SignWalletRecoveryEcdsaMaterialPossessionProof,timeoutMs:P,payload:{kind:`sign_wallet_recovery_ecdsa_material_possession_proof_v1`,challenge:e.challenge,stateBlob:e.stateBlob}}});if(t.type!==A.SignWalletRecoveryEcdsaMaterialPossessionProofSuccess)throw Error(`Wallet recovery ECDSA possession proof signing failed`);return t.payload}async function Pe(e){let t=await F({workerCtx:e.workerCtx,request:{type:k.PrepareLinkedDeviceEcdsaSourceContribution,timeoutMs:P,payload:{kind:`prepare_linked_device_ecdsa_source_contribution_v1`,preparation:e.preparation,...e.linkedHolderHandleId===void 0?{}:{linkedHolderHandleId:e.linkedHolderHandleId}}}});if(t.type!==A.PrepareLinkedDeviceEcdsaSourceContributionSuccess)throw Error(`Linked-device ECDSA source contribution preparation failed`);return t.payload}function Fe(e){let t=Array.isArray(e.outgoingMessages)?e.outgoingMessages.map(e=>new Uint8Array(e)):[];switch(e.event){case`final_batch_ready`:return{stage:`presign`,event:e.event,outgoingMessages:t,candidateBigR33:new Uint8Array(e.candidateBigR33)};case`presign_done`:return{stage:`done`,event:e.event,outgoingMessages:t,presignatureHandle:e.presignatureHandle,presignatureBigR33:new Uint8Array(e.presignatureBigR33)};case`none`:case`triples_done`:return{stage:e.stage,event:e.event,outgoingMessages:t}}}async function Ie(e){let t=e.groupPublicKey33.slice(),n=await I({workerCtx:e.workerCtx,request:{type:j.SessionInit,timeoutMs:P,payload:{authority:{kind:`role_local_derivation_handle`,materialHandle:e.materialHandle,material:e.material},sessionId:e.sessionId,groupPublicKey33:t.buffer,ceremonyExpiresAtMs:e.ceremonyExpiresAtMs,materialExpiresAtMs:e.materialExpiresAtMs,poolIdentity:e.poolIdentity},transfer:[t.buffer]}});if(n.type!==M.SessionInitSuccess)throw Error(`ThresholdEcdsaRoleLocalPresignSessionInitFromMaterialHandle failed`);if(n.payload.authority.kind!==`role_local_derivation_handle`)throw Error(`ECDSA role-local presign returned a different authority`);return Fe(n.payload.progress)}async function Le(e){let t=e.groupPublicKey33.slice(),n=await I({workerCtx:e.workerCtx,request:{type:j.SessionInit,timeoutMs:P,payload:{authority:{kind:`linked_holder_signing_material`,holderHandleId:e.holderHandleId},sessionId:e.sessionId,groupPublicKey33:t.buffer,ceremonyExpiresAtMs:e.ceremonyExpiresAtMs,materialExpiresAtMs:e.materialExpiresAtMs,poolIdentity:e.poolIdentity},transfer:[t.buffer]}});if(n.type!==M.SessionInitSuccess)throw Error(`Linked holder ECDSA presign initialization failed`);if(n.payload.authority.kind!==`linked_holder_signing_material`)throw Error(`Linked holder ECDSA presign returned a different authority`);return Fe(n.payload.progress)}async function Re(e){if(e.holderHandleId.trim().length===0)throw Error(`ECDSA holder handle must be non-empty`);let t=await _e({workerCtx:e.workerCtx,request:{type:k.CreateEcdsaHolderOrdinaryExportRequest,timeoutMs:P,payload:{kind:`create_ecdsa_holder_ordinary_export_request_v1`,holderHandleId:e.holderHandleId,request:e.request},transfer:[]}});if(t.type!==A.CreateEcdsaHolderOrdinaryExportRequestSuccess)throw Error(`ECDSA holder ordinary-export request preparation failed`);if(t.payload.holderHandleId!==e.holderHandleId)throw Error(`ECDSA holder ordinary-export request returned a different holder`);if(t.payload.requestDigestB64u.trim().length===0)throw Error(`ECDSA holder ordinary-export request digest is empty`);return t.payload}async function ze(e){if(e.holderHandleId.trim().length===0)throw Error(`ECDSA holder handle must be non-empty`);if(e.requestDigestB64u!==e.expectedBinding.export_request_digest_b64u)throw Error(`ECDSA holder ordinary-export request digest differs from its binding`);let t=await _e({workerCtx:e.workerCtx,request:{type:k.FinalizeEcdsaHolderOrdinaryExport,timeoutMs:P,payload:{kind:`finalize_ecdsa_holder_ordinary_export_v1`,holderHandleId:e.holderHandleId,requestDigestB64u:e.requestDigestB64u,expectedBinding:e.expectedBinding,forwardedResponse:e.forwardedResponse},transfer:[]}});if(t.type!==A.FinalizeEcdsaHolderOrdinaryExportSuccess)throw Error(`ECDSA holder ordinary-export finalization failed`);if(t.payload.holderHandleId!==e.holderHandleId)throw Error(`ECDSA holder ordinary-export finalization returned a different holder`);return t.payload}async function Be(e){if(e.holderHandleId.trim().length===0)throw Error(`Linked holder ECDSA handle must be non-empty`);if(e.ownedSigningShare32.byteLength!==32)throw Error(`Linked holder ECDSA signing share must contain 32 bytes`);if(e.activationReceiptJson.trim().length===0)throw Error(`Linked holder ECDSA activation receipt must be non-empty`);let t=e.ownedSigningShare32.slice();try{let n=await T({kind:`ecdsaDerivationClient`,ctx:e.workerCtx,request:{type:k.StoreLinkedDeviceEcdsaHolderMaterial,timeoutMs:P,payload:{holderHandleId:e.holderHandleId,ownedSigningShare32:t.buffer,activationReceiptJson:e.activationReceiptJson},transfer:[t.buffer]}});if(n.type!==A.StoreLinkedDeviceEcdsaHolderMaterialSuccess)throw Error(`Linked holder ECDSA material import failed`);if(n.payload.holderHandleId!==e.holderHandleId)throw Error(`Linked holder ECDSA material import returned a different handle`);return n.payload}finally{t.byteLength>0&&t.fill(0)}}async function Ve(e){let t=await T({kind:`ecdsaDerivationClient`,ctx:e.workerCtx,request:{type:k.DisposeLinkedDeviceEcdsaHolderMaterials,timeoutMs:P,payload:e.disposal,transfer:[]}});if(t.type!==A.DisposeLinkedDeviceEcdsaHolderMaterialsSuccess)throw Error(`Linked holder ECDSA material disposal failed`);if(t.payload.kind!==e.disposal.kind)throw Error(`Linked holder ECDSA material disposal returned a different scope`);if(e.disposal.kind===`one`&&t.payload.kind===`one`&&t.payload.holderHandleId!==e.disposal.holderHandleId)throw Error(`Linked holder ECDSA material disposal returned a different handle`)}async function He(e){if(e.holderHandleId.trim().length===0)throw Error(`Linked holder ECDSA handle must be non-empty`);await Ve({disposal:{kind:`one`,holderHandleId:e.holderHandleId},workerCtx:e.workerCtx})}async function Ue(e){let t=!1,n;for(let r of e.holderHandleIds)try{await He({holderHandleId:r,workerCtx:e.workerCtx})}catch(e){t||(t=!0,n=e)}if(t)throw n}async function We(e){await Ve({disposal:{kind:`all`},workerCtx:e.workerCtx})}async function Ge(e){let t=e.incomingMessages.map(e=>e.slice()),n=t.map(e=>e.buffer),r=await I({workerCtx:e.workerCtx,request:{type:j.SessionStep,timeoutMs:P,payload:{sessionId:e.sessionId,stage:e.stage,incomingMessages:t.map(e=>e.buffer)},transfer:n}});if(r.type!==M.SessionStepSuccess)throw Error(`ThresholdEcdsaRoleLocalPresignSessionStep failed`);return Fe(r.payload)}async function Ke(e){let t=await I({workerCtx:e.workerCtx,request:{type:j.SessionAbort,timeoutMs:P,payload:{sessionId:e.sessionId}}});if(t.type!==M.SessionAbortSuccess)throw Error(`ThresholdEcdsaRoleLocalPresignSessionAbort failed`);let n=t.payload;if(n.kind!==`threshold_ecdsa_presign_session_aborted`||n.sessionId!==e.sessionId)throw Error(`ThresholdEcdsaRoleLocalPresignSessionAbort returned invalid result`)}async function qe(e){let t=await I({workerCtx:e.workerCtx,request:{type:j.Admit,timeoutMs:P,payload:{materialHandle:e.materialHandle,expectedPresignatureId:e.expectedPresignatureId,poolIdentity:e.poolIdentity,admissionMode:e.admissionMode}}});if(t.type!==M.AdmitSuccess)throw Error(`ThresholdEcdsaRoleLocalAdmitPresignature failed`);if(t.payload.kind!==`ecdsa_client_presignature_admitted_v1`||t.payload.materialHandle!==e.materialHandle||t.payload.presignatureId!==e.expectedPresignatureId)throw Error(`ThresholdEcdsaRoleLocalAdmitPresignature returned invalid binding`);return t.payload.storage}async function Je(e){let t=await I({workerCtx:e.workerCtx,request:{type:j.Destroy,timeoutMs:P,payload:{materialHandle:e.materialHandle,poolIdentity:e.poolIdentity}}});if(t.type!==M.DestroySuccess)throw Error(`ThresholdEcdsaRoleLocalDestroyPresignature failed`);if(t.payload.kind!==`ecdsa_client_presignature_destroyed_v1`||t.payload.materialHandle!==e.materialHandle)throw Error(`ThresholdEcdsaRoleLocalDestroyPresignature returned invalid handle`)}async function Ye(e){let t=await I({workerCtx:e.workerCtx,request:{type:j.Reserve,timeoutMs:P,payload:{materialHandle:e.materialHandle,expectedPresignatureId:e.expectedPresignatureId,poolIdentity:e.poolIdentity,requestBinding:e.requestBinding,reservationId:e.reservationId,leaseExpiresAtMs:e.leaseExpiresAtMs}}});if(t.type!==M.ReserveSuccess)throw Error(`ThresholdEcdsaRoleLocalReservePresignature failed`);return t.payload}async function Xe(e){if((await I({workerCtx:e.workerCtx,request:{type:j.Commit,timeoutMs:P,payload:{materialHandle:e.materialHandle,poolIdentity:e.poolIdentity,requestBinding:e.requestBinding,reservationId:e.reservationId}}})).type!==M.CommitSuccess)throw Error(`ThresholdEcdsaRoleLocalCommitPresignature failed`)}async function Ze(e,t){let n=await I({workerCtx:t.workerCtx,request:{type:j.ListAvailable,timeoutMs:P,payload:{authority:{kind:e},poolIdentity:t.poolIdentity}}});if(n.type!==M.ListAvailableSuccess)throw Error(`ThresholdEcdsaListAvailablePresignatures failed`);return n.payload.map(ge)}async function Qe(e){let t=e.groupPublicKey33.slice(),n=e.expectedPresignBigR33.slice(),r=e.digest32.slice(),i=e.clientRerandomizationContribution32.slice(),a=e.signingWorkerRerandomizationContribution32.slice(),o=await ve({workerCtx:e.workerCtx,request:{type:fe.ComputeSignatureShare,timeoutMs:P,payload:{materialHandle:e.materialHandle,poolIdentity:e.poolIdentity,requestBinding:e.requestBinding,reservationId:e.reservationId,groupPublicKey33:t.buffer,expectedPresignBigR33:n.buffer,digest32:r.buffer,clientRerandomizationContribution32:i.buffer,signingWorkerRerandomizationContribution32:a.buffer},transfer:[t.buffer,n.buffer,r.buffer,i.buffer,a.buffer]}});if(o.type!==N.ComputeSignatureShareSuccess)throw Error(`ThresholdEcdsaRoleLocalComputeSignatureShareFromPresignatureHandle failed`);return new Uint8Array(o.payload)}function $e(e){let t=Math.floor(Number(e));return Number.isFinite(t)&&t>0?t:2e4}function et(e){return String(e&&typeof e==`object`&&`message`in e?e.message:e||``)}function tt(e){return Error(`[router-ab-ecdsa-derivation] ${e.operation} request timed out after ${e.timeoutMs}ms`)}async function nt(e){let t=$e(e.timeoutMs),n=typeof AbortController==`function`?new AbortController:null,r={...e.init},i=null,a=null,o=!1;try{let s;if(n){let c=e.init.signal;if(c){if(c.aborted)n.abort();else if(typeof c.addEventListener==`function`){let e=()=>n.abort();c.addEventListener(`abort`,e,{once:!0}),a=()=>c.removeEventListener(`abort`,e)}}i=setTimeout(()=>{o=!0,n.abort()},t),s=await fetch(e.url,{...r,signal:n.signal})}else s=await Promise.race([fetch(e.url,r),new Promise((n,r)=>{i=setTimeout(()=>{o=!0,r(tt({operation:e.operation,timeoutMs:t}))},t)})]);let c=await s.json().catch(()=>({}));if(o)throw tt({operation:e.operation,timeoutMs:t});return{response:s,data:c}}catch(n){if(o)throw tt({operation:e.operation,timeoutMs:t});let r=et(n);throw Error(r||`[router-ab-ecdsa-derivation] ${e.operation} request failed`)}finally{i&&clearTimeout(i),a?.()}}const rt=5e3;function it(e,t){let n=Math.min(e-Date.now(),t??rt,rt);return Number.isFinite(n)&&n>0?n:null}function at(e){return n(t(e))||null}function ot(e){let t={"Content-Type":`application/json`};switch(e.credential.kind){case`operation_step_up`:return{ok:!0,headers:t,credentials:`omit`};case`wallet_session_opaque`:{let n=String(e.credential.walletSessionToken||``).trim();return n?(t.Authorization=`Bearer ${n}`,{ok:!0,headers:t,credentials:`omit`}):{ok:!1,code:`invalid_args`,message:`Missing opaque Wallet Session token for Router A/B ECDSA derivation presign pool fill`}}}}function st(e){switch(e.authorization.kind){case`reusable_wallet_session`:return{authorization:e.authorization};case`operation_step_up`:{let t=e.operation;if(!t)throw Error(`Operation step-up pool fill requires exact operation preparation`);return{authorization:e.authorization,operation:t}}}}function ct(e){let t=String(e.keyHandle||``).trim();return t?{ok:!0,value:{keyHandle:t}}:{ok:!1,code:`invalid_args`,message:`Missing keyHandle for Router A/B ECDSA derivation pool-fill init`}}async function lt(e){let t=at(e.relayerUrl);if(!t)return{ok:!1,code:`invalid_args`,message:`Missing relayerUrl for Router A/B ECDSA derivation pool-fill init`};if(typeof fetch!=`function`)return{ok:!1,code:`unsupported`,message:`fetch is not available for Router A/B ECDSA derivation pool-fill init`};let n=ct(e);if(!n.ok)return n;let r=String(e.requestTag||``).trim(),i=ot(e);if(!i.ok)return i;let a=it(e.poolFill.ceremonyExpiresAtMs,e.requestTimeoutMs);if(a===null)return{ok:!1,code:`presign_timeout`,message:`Presign ceremony deadline has elapsed`};try{let{response:o,data:s}=await nt({url:`${t}${e.path}`,operation:`presign/init`,timeoutMs:a,init:{method:`POST`,headers:i.headers,credentials:i.credentials,body:JSON.stringify({...n.value,count:Number.isFinite(e.count)?Math.max(1,Math.floor(Number(e.count))):1,...r?{requestTag:r}:{},poolFill:e.poolFill,presignSessionId:e.presignSessionId,firstMessageB64u:e.firstMessageB64u,...st(e)})}});return typeof s.presignSessionId==`string`&&S(s.presignSessionId,`init`,o.headers.get(`Server-Timing`)),o.ok?{ok:s.ok===!0,presignSessionId:s.presignSessionId,...Number.isSafeInteger(s.ceremonyExpiresAtMs)?{ceremonyExpiresAtMs:s.ceremonyExpiresAtMs}:{},...Number.isSafeInteger(s.materialExpiresAtMs)?{materialExpiresAtMs:s.materialExpiresAtMs}:{},stage:s.stage,outgoingMessagesB64u:Array.isArray(s.outgoingMessagesB64u)?s.outgoingMessagesB64u:[],...s.code?{code:s.code}:{},...s.message?{message:s.message}:{}}:{ok:!1,code:s.code||`http_error`,message:s.message||`HTTP ${o.status}`}}catch(e){return{ok:!1,code:`network_error`,message:String(e&&typeof e==`object`&&`message`in e?e.message:e||`Failed Router A/B ECDSA derivation pool-fill init`)}}}async function ut(e){return lt({...e,path:g})}async function dt(e){let t=at(e.relayerUrl);if(!t)return{ok:!1,code:`invalid_args`,message:`Missing relayerUrl for Router A/B ECDSA derivation pool-fill step`};if(typeof fetch!=`function`)return{ok:!1,code:`unsupported`,message:`fetch is not available for Router A/B ECDSA derivation pool-fill step`};let n=String(e.presignSessionId||``).trim();if(!n)return{ok:!1,code:`invalid_args`,message:`Missing presignSessionId for Router A/B ECDSA derivation pool-fill step`};let r=String(e.requestTag||``).trim(),i=ot(e);if(!i.ok)return i;let a=it(e.ceremonyExpiresAtMs,e.requestTimeoutMs);if(a===null)return{ok:!1,code:`presign_timeout`,message:`Presign ceremony deadline has elapsed`};try{let{response:o,data:s}=await nt({url:`${t}${e.path}`,operation:`presign/step`,timeoutMs:a,init:{method:`POST`,headers:i.headers,credentials:i.credentials,body:JSON.stringify({presignSessionId:n,ceremonyExpiresAtMs:e.ceremonyExpiresAtMs,materialExpiresAtMs:e.materialExpiresAtMs,stage:e.stage,outgoingMessagesB64u:Array.isArray(e.outgoingMessagesB64u)?e.outgoingMessagesB64u:[],...r?{requestTag:r}:{},...st(e)})}});return S(n,`step`,o.headers.get(`Server-Timing`)),o.ok?{ok:s.ok===!0,stage:s.stage,event:s.event,outgoingMessagesB64u:Array.isArray(s.outgoingMessagesB64u)?s.outgoingMessagesB64u:[],...s.presignatureId?{presignatureId:s.presignatureId}:{},...s.bigRB64u?{bigRB64u:s.bigRB64u}:{},...s.code?{code:s.code}:{},...s.message?{message:s.message}:{}}:{ok:!1,code:s.code||`http_error`,message:s.message||`HTTP ${o.status}`}}catch(e){return{ok:!1,code:`network_error`,message:String(e&&typeof e==`object`&&`message`in e?e.message:e||`Failed Router A/B ECDSA derivation pool-fill step`)}}}async function ft(e){return dt({...e,path:_})}var pt=class{constructor(){this.state={kind:`refilling`,revision:0},this.waiters=new Map}snapshot(){return this.state}hasForegroundWaiters(){for(let e of this.waiters.values())if(e===`foreground`)return!0;return!1}publishAvailable(){this.state.kind!==`settled`&&(this.state={kind:`refilling`,revision:this.state.revision+1},this.flushWaiters())}settle(){this.state.kind!==`settled`&&(this.state={kind:`settled`,revision:this.state.revision},this.flushWaiters())}waitForChange(e,t){return this.state.kind===`settled`||this.state.revision!==e.revision?Promise.resolve(this.state):new Promise(n=>{this.waiters.set(n,t),(this.state.kind===`settled`||this.state.revision!==e.revision)&&(this.waiters.delete(n),n(this.state))})}flushWaiters(){let e=this.state,t=[...this.waiters.keys()];this.waiters.clear();for(let n of t)n(e)}};function mt(){let e=globalThis.crypto;if(!e||typeof e.getRandomValues!=`function`)throw Error(`WebCrypto getRandomValues is required for ECDSA rerandomization`);return e.getRandomValues(new Uint8Array(32))}function L(e){switch(e.authorization.kind){case`reusable_wallet_session`:return{authorization:e.authorization};case`operation_step_up`:{let t=e.operation;if(!t)throw Error(`Operation step-up pool fill requires exact operation preparation`);return{authorization:e.authorization,operation:t}}}}function ht(e){return String(e&&typeof e==`object`&&`message`in e?e.message:e||`signature recovery failed`)}function R(e){e instanceof Uint8Array&&e.fill(0)}function gt(e){if(e?.kind!==`router_ab_ecdsa_derivation_client_signing_material_source_v1`)throw Error(`Router A/B ECDSA derivation client signing material source is required`)}const _t=6e4,z=new Map,B=new Map,V=new Map,H=new Map,U=new Map,W=new Map;function vt(e){return e===`triples_done`||e===`presign`||e===`done`}function yt(e){return vt(e.clientStage)&&vt(e.serverStage)?`presign`:`triples`}function bt(e,t,n,r){let i=Math.floor(Number(e));return Number.isFinite(i)?i<n?n:i>r?r:i:t}function xt(e,t){return bt(e,t,1,5)}function St(e,t,n){return bt(e,t,0,n)}function Ct(e){let t=e||w,n=xt(t.targetDepth,w.targetDepth),r=St(t.lowWatermark,w.lowWatermark,n);return{enabled:typeof t.enabled==`boolean`?t.enabled:w.enabled,targetDepth:n,lowWatermark:r,maxRefillInFlight:bt(t.maxRefillInFlight,w.maxRefillInFlight,1,8),refillAttemptTimeoutMs:bt(t.refillAttemptTimeoutMs,w.refillAttemptTimeoutMs,5e3,12e4)}}function G(e){let t=p(e.scope),n=e.materialActivation;return{relayerUrl:String(e.relayerUrl||``).trim().replace(/\/+$/g,``),materialActivationB64u:a(d(n)),materialActivationId:n.activation_id,capability:n.capability,keyBinding:n.key_binding,walletId:t.wallet_id,signingScopeB64u:a(l(t)),pairRole:`client`,keyEpoch:t.signing_worker.key_epoch,activationEpoch:t.activation_epoch,protocolId:oe}}function wt(e){let t=z.get(e);if(!t?.length)return null;let n=t.shift()??null;return t.length?z.set(e,t):z.delete(e),n}async function Tt(e){return await kt(e),wt(e.poolKey)}function Et(e,t,n){if(!Mt(n))return`invalid`;let r=z.get(e)||[];for(let e of r)if(e.materialHandle===n.materialHandle)return`duplicate`;return r.filter(e=>Mt(e)).length>=5?`capacity_full`:(r.push(n),z.set(e,r),B.set(e,t),`stored`)}function Dt(e,t=Date.now()){let n=z.get(e);if(!n?.length)return[];let r=[],i=[];for(let e of n)Mt(e,t)?r.push(e):i.push(e);return r.length>0?z.set(e,r):z.delete(e),i}async function Ot(e){for(let t of e.refs)await e.clientSigningMaterial.destroyClientPresignature({materialHandle:t.materialHandle,poolIdentity:e.poolIdentity,workerCtx:e.workerCtx}).catch(()=>{})}async function kt(e){await Ot({refs:Dt(e.poolKey),poolIdentity:e.poolIdentity,clientSigningMaterial:e.clientSigningMaterial,workerCtx:e.workerCtx})}async function At(e){let t=H.get(e.poolKey);if(t){await t;return}let n=jt(e);H.set(e.poolKey,n);try{await n}finally{H.get(e.poolKey)===n&&H.delete(e.poolKey)}}async function jt(e){await kt(e);let t;if(t=await e.clientSigningMaterial.listAvailableClientPresignatures({poolIdentity:e.poolIdentity,workerCtx:e.workerCtx}),q(e.poolKey)!==e.generation){for(let n of t)R(n.bigR33),await e.clientSigningMaterial.destroyClientPresignature({materialHandle:n.materialHandle,poolIdentity:e.poolIdentity,workerCtx:e.workerCtx}).catch(()=>{});return}for(let n of t){let t=Et(e.poolKey,e.poolIdentity,{presignatureId:n.presignatureId,materialHandle:n.materialHandle,bigRB64u:a(n.bigR33),createdAtMs:n.createdAtMs,expiresAtMs:n.expiresAtMs});R(n.bigR33),(t===`invalid`||t===`capacity_full`)&&await e.clientSigningMaterial.destroyClientPresignature({materialHandle:n.materialHandle,poolIdentity:e.poolIdentity,workerCtx:e.workerCtx}).catch(()=>{})}}function K(e){let t=z.get(e);return t?t.reduce((e,t)=>e+(Mt(t)?1:0),0):0}function Mt(e,t=Date.now()){let n=Math.floor(Number(e.expiresAtMs));return!!(e.presignatureId&&e.bigRB64u&&e.materialHandle)&&Number.isSafeInteger(n)&&n>t+2e3}function q(e){let t=W.get(e);return t===void 0?(W.set(e,0),0):t}function Nt(e){Z(e);let t=q(e)+1;return W.set(e,t),t}async function Pt(e){let t=z.get(e.poolKey)??[];z.delete(e.poolKey),B.delete(e.poolKey),Nt(e.poolKey),await Ot({...e,refs:t})}function J(e){return U.get(e)||0}function Ft(e){let t=J(e);U.set(e,t+1)}function It(e){let t=J(e);if(t<=1){U.delete(e),Q(e,0);return}U.set(e,t-1)}async function Lt(e,t){let n=V.get(e);if(!n)return;let r=n.snapshot();for(;K(e)===0&&r.kind===`refilling`;)r=await n.waitForChange(r,t)}async function Rt(e){let t=b(G({relayerUrl:e.relayerUrl,scope:e.scope,materialActivation:e.materialActivation}));return K(t)>0?!0:(await Lt(t,`background`),K(t)>0)}function Y(e,t,n){return{scheduled:!1,reason:e,depth:t,targetDepth:n}}function zt(){let e=new Set([...X.keys(),...z.keys(),...V.keys(),...U.keys(),...W.keys()]);for(let t of e)Nt(t);z.clear(),B.clear();for(let e of V.values())e.settle();V.clear(),U.clear()}function Bt(e){let t=String(e).trim();if(!t)throw Error(`ECDSA presignature wallet id is required`);for(let[e,n]of[...B])n.walletId===t&&(z.delete(e),B.delete(e),Nt(e),V.get(e)?.settle(),V.delete(e),U.delete(e))}const X=new Map;function Z(e){let t=X.get(e);t&&t.timer!==null&&clearTimeout(t.timer),X.delete(e),X.size===0&&typeof window<`u`&&(window.removeEventListener(`online`,$),document.removeEventListener(`visibilitychange`,$))}function Q(e,t){let n=X.get(e);if(!n)return;n.timer!==null&&clearTimeout(n.timer);let r=n.input.routerAbEcdsaDerivationPoolFill.ceremonyExpiresAtMs-Date.now();if(r<=0||q(e)!==n.generation){Z(e);return}n.timer=setTimeout(Vt,Math.min(t,r),e)}function $(){if(!(typeof document<`u`&&document.visibilityState===`hidden`))for(let e of X.keys())Q(e,0)}function Vt(e){let t=X.get(e);if(!t)return;if(t.timer=null,Date.now()>=t.input.routerAbEcdsaDerivationPoolFill.ceremonyExpiresAtMs){Z(e);return}if(typeof navigator<`u`&&navigator.onLine===!1){Q(e,3e4);return}let n=Gt(t.input);n.scheduled||Q(e,n.depth>=n.targetDepth?3e4:5e3)}function Ht(e,t){t.authorization.kind===`reusable_wallet_session`&&X.get(e)?.input!==t&&(Z(e),X.size===0&&typeof window<`u`&&(window.addEventListener(`online`,$),document.addEventListener(`visibilitychange`,$)),X.set(e,{input:t,generation:q(e),failures:0,timer:null}),Q(e,3e4))}function Ut(e,t,n){let r=X.get(e);if(!(!r||r!==t)){switch(n){case`network_error`:case`internal`:case`presign_timeout`:case`temporarily_unavailable`:case`service_unavailable`:case`wallet_session_unavailable`:if(r.failures+=1,r.failures<=3)return}Z(e)}}async function Wt(e){let{args:t,refillInput:n,poolKey:r,poolIdentity:i,scheduledGeneration:a,targetDepth:o,refillAttemptTimeoutMs:s,progress:c}=e,l=X.get(r)??null;try{if(await At({poolKey:r,poolIdentity:i,clientSigningMaterial:t.clientSigningMaterial,workerCtx:t.workerCtx,generation:a}),K(r)>0&&(c.publishAvailable(),J(r)>0))return;for(;Date.now()<t.routerAbEcdsaDerivationPoolFill.ceremonyExpiresAtMs;){if(q(r)!==a||(X.get(r)??null)!==l||K(r)>=o||typeof navigator<`u`&&navigator.onLine===!1)return;let e=Math.min(Date.now()+s,t.routerAbEcdsaDerivationPoolFill.ceremonyExpiresAtMs),i=await rn({...n,routerAbEcdsaDerivationPoolFill:{kind:`router_ab_ecdsa_derivation_signing_worker_pool`,scope:n.routerAbEcdsaDerivationPoolFill.scope,ceremonyExpiresAtMs:e,materialExpiresAtMs:n.routerAbEcdsaDerivationPoolFill.materialExpiresAtMs},trafficClass:`background`});if(C(`evm-family`,{event:`ecdsa_background_refill_result`,authorization:t.authorization.kind,outcome:i.ok?`available`:`failed`,code:i.ok?null:i.code,depth:K(r),targetDepth:o}),!i.ok){Ut(r,l,i.code);return}let u=X.get(r);if(u&&u===l&&(u.failures=0),c.publishAvailable(),J(r)>0)return}}catch{Ut(r,l,`internal`)}finally{c.settle(),V.get(r)===c&&V.delete(r);let e=X.get(r);if(e){let t=e.failures>0?2e3*2**e.failures:1e3;K(r)>=o&&(t=3e4),e!==l&&(t=0),Q(r,t)}}}function Gt(e){try{let t=Ct(e.poolPolicy),n=G({relayerUrl:e.relayerUrl,scope:e.routerAbEcdsaDerivationPoolFill.scope,materialActivation:e.materialActivation}),r=b(n);B.set(r,n);let i=xt(e.targetDepth,t.targetDepth),a=St(e.triggerIfDepthAtOrBelow,t.lowWatermark,i),o=K(r),s=q(r);if(!t.enabled)return Y(`disabled`,o,i);if(e.routerAbEcdsaDerivationPoolFill.ceremonyExpiresAtMs<=Date.now())return Z(r),Y(`invalid_args`,o,i);if(Ht(r,e),o>a)return Y(`depth_above_trigger`,o,i);if(o>=i)return Y(`depth_at_or_above_target`,o,i);if(V.has(r)||J(r)>0)return Y(`in_flight_for_pool_key`,o,i);if(V.size>=t.maxRefillInFlight)return Y(`global_in_flight_limit`,o,i);let c={relayerUrl:e.relayerUrl,keyHandle:e.keyHandle,ecdsaThresholdKeyId:e.ecdsaThresholdKeyId,clientVerifyingShareB64u:e.clientVerifyingShareB64u,clientSigningMaterial:e.clientSigningMaterial,thresholdEcdsaPublicKeyB64u:e.thresholdEcdsaPublicKeyB64u,relayerVerifyingShareB64u:e.relayerVerifyingShareB64u,credential:e.credential,materialActivation:e.materialActivation,routerAbEcdsaDerivationPoolFill:e.routerAbEcdsaDerivationPoolFill,workerCtx:e.workerCtx,...L(e)},l=new pt;return V.set(r,l),Wt({args:e,refillInput:c,poolKey:r,poolIdentity:n,scheduledGeneration:s,targetDepth:i,refillAttemptTimeoutMs:t.refillAttemptTimeoutMs,progress:l}),{scheduled:!0,reason:`scheduled`,depth:o,targetDepth:i}}catch{return Y(`invalid_args`,0,0)}}function Kt(e){return e.map(e=>a(e))}function qt(e){return Array.isArray(e)?e.map(e=>String(e||``).trim()).filter(e=>!!e).map(e=>o(e)):[]}async function Jt(e){let t=String(e.thresholdEcdsaPublicKeyB64u||``).trim();if(t){let n=o(t);if(n.length!==33)throw Error(`thresholdEcdsaPublicKeyB64u must decode to 33 bytes`);return await D({publicKey33:n,workerCtx:e.workerCtx})}let n=String(e.clientVerifyingShareB64u||``).trim(),r=String(e.relayerVerifyingShareB64u||``).trim();if(!n||!r)throw Error(`Missing thresholdEcdsaPublicKeyB64u (or relayerVerifyingShareB64u fallback) for Router A/B ECDSA derivation signing`);let i=o(n),a=o(r);if(i.length!==33)throw Error(`clientVerifyingShareB64u must decode to 33 bytes`);if(a.length!==33)throw Error(`relayerVerifyingShareB64u must decode to 33 bytes`);return await O({left33:await D({publicKey33:i,workerCtx:e.workerCtx}),right33:await D({publicKey33:a,workerCtx:e.workerCtx}),workerCtx:e.workerCtx})}function Yt(e){return e.trafficClass===`foreground`||V.get(e.poolKey)?.hasForegroundWaiters()?`foreground_presign_pool_refill`:`background_presign_pool_refill`}async function Xt(e){for(let t=0;t<2;t+=1){let n=await Zt(e);if(n.ok||!Qt(n)||t===1)return n}return{ok:!1,code:`stale_session_state`,message:`Router A/B ECDSA derivation pool-fill session stayed stale after retry`}}async function Zt(e){gt(e.clientSigningMaterial);let t=performance.now(),n=e.routerAbEcdsaDerivationPoolFill.ceremonyExpiresAtMs,r=e.routerAbEcdsaDerivationPoolFill.materialExpiresAtMs,i=`ecdsa-presign-v2:${n}:${a(crypto.getRandomValues(new Uint8Array(32)))}`,o=i,s=G({relayerUrl:e.relayerUrl,scope:e.routerAbEcdsaDerivationPoolFill.scope,materialActivation:e.materialActivation}),c=null,l=null,u=null,d=null,f=!1,p=`triples`,m=[],h=!0,g=!1;try{let t=await e.clientSigningMaterial.initClientPresignSession({sessionId:o,groupPublicKey33:e.groupPublicKey33,ceremonyExpiresAtMs:n,materialExpiresAtMs:r,poolIdentity:s,workerCtx:e.workerCtx});if(t.stage!==`triples`||t.outgoingMessages.length!==1)return{ok:!1,code:`presign_init_failed`,message:`Client presign init must emit exactly one first message`};p=t.stage;let _=await ut({relayerUrl:e.relayerUrl,...e.poolFillInitKeySelector,count:1,presignSessionId:i,firstMessageB64u:a(t.outgoingMessages[0]),credential:e.credential,requestTag:Yt(e),poolFill:e.routerAbEcdsaDerivationPoolFill,...L(e)});if(!_.ok)return{ok:!1,code:_.code||`presign_init_failed`,message:_.message||`Presign initialization failed`};if(_.presignSessionId!==i||_.ceremonyExpiresAtMs!==n||_.materialExpiresAtMs!==r||n<=Date.now())return{ok:!1,code:`invalid_pool_fill_expiry`,message:`Presign initialization changed the bound identity or deadlines`};let v=_.stage||`triples`,y=qt(_.outgoingMessagesB64u);for(let t=0;t<64;t++){if(y.length>0&&!c){let t=await e.clientSigningMaterial.stepClientPresignSession({sessionId:o,stage:yt({clientStage:p,serverStage:v}),incomingMessages:y,workerCtx:e.workerCtx});p=t.stage,y=[],m.push(...t.outgoingMessages),t.presignatureHandle&&t.presignatureBigR33&&(c=t.presignatureHandle,l=t.presignatureBigR33)}if(!f){let a=performance.now(),o=Yt(e),s={relayerUrl:e.relayerUrl,presignSessionId:i,ceremonyExpiresAtMs:n,materialExpiresAtMs:r,stage:yt({clientStage:p,serverStage:v}),outgoingMessagesB64u:Kt(m),credential:e.credential,requestTag:o,...L(e)},c=await ft(s);if(C(`evm-family`,{event:`ecdsa_presignature_round`,requestTag:o,presignSessionId:i,authorization:e.authorization.kind,round:t,stage:s.stage,durationMs:performance.now()-a,outcome:c.ok?`succeeded`:`failed`}),m=[],!c.ok)return{ok:!1,code:c.code||`presign_step_failed`,message:c.message||`Router A/B ECDSA derivation pool-fill step failed`};y=qt(c.outgoingMessagesB64u),v=c.stage||v,c.event===`presign_done`&&(u=String(c.presignatureId||``).trim()||null,d=String(c.bigRB64u||``).trim()||null,f=!0)}if(c&&l&&u&&d)break}if(!c||!l)return{ok:!1,code:`presign_timeout`,message:`Client presign session did not reach done state`};if(!u||!d)return{ok:!1,code:`presign_timeout`,message:`Server presign session did not reach done state`};if(l.length!==33)return{ok:!1,code:`internal`,message:`Invalid local presignature bigR bytes (expected 33, got ${l.length})`};try{let t=Date.now(),n=a(l);if(n!==d)return{ok:!1,code:`presign_mismatch`,message:`Client/server presignature mismatch (bigR mismatch)`};let i=await e.clientSigningMaterial.admitClientPresignature({materialHandle:c,expectedPresignatureId:u,poolIdentity:s,admissionMode:e.authorization.kind===`operation_step_up`?`resident`:`durable`,workerCtx:e.workerCtx});return i.kind===`discarded_capacity`?{ok:!1,code:`pool_full`,message:`Router A/B ECDSA derivation client presignature pool is full`}:i.kind===`discarded_ambiguous`?{ok:!1,code:`presign_failed`,message:`Router A/B ECDSA derivation client presignature admission was ambiguous`}:(g=!0,h=!1,{ok:!0,kind:`available`,presignature:{presignatureId:u,bigRB64u:n,materialHandle:c,createdAtMs:t,expiresAtMs:r}})}finally{R(l)}}catch(e){return{ok:!1,code:`presign_failed`,message:String(e&&typeof e==`object`&&`message`in e?e.message:e||`Router A/B ECDSA derivation pool-fill handshake failed`)}}finally{C(`evm-family`,{event:`ecdsa_presignature_generation`,requestTag:Yt(e),presignSessionId:i,authorization:e.authorization.kind,durationMs:performance.now()-t,outcome:g?`available`:`failed`}),R(l),!g&&c&&await e.clientSigningMaterial.destroyClientPresignature({materialHandle:c,poolIdentity:s,workerCtx:e.workerCtx}).catch(()=>{}),h&&await e.clientSigningMaterial.abortClientPresignSession({sessionId:o,workerCtx:e.workerCtx}).catch(()=>{})}}function Qt(e){return e.code===`stale_session_state`||e.code===`stale_pool_fill_session`}function $t(e){let t=p(e);return{ecdsaThresholdKeyId:ie(t.ecdsa_threshold_key_id),clientVerifyingShareB64u:ne(t.public_identity.derivation_client_share_public_key33_b64u),thresholdEcdsaPublicKeyB64u:t.public_identity.threshold_public_key33_b64u}}function en(e){let t=Math.floor(Number(e.materialExpiresAtMs)),n=Number.isSafeInteger(e.authorizationExpiresAtMs)?Math.floor(Number(e.authorizationExpiresAtMs)):e.nowMs+_t,r=Math.min(t,n,e.nowMs+_t);return Number.isSafeInteger(r)&&r>e.nowMs?r:null}async function tn(e,t,n){let r=null,i=null,c=!1,l=null,d=null,p=null,m={kind:`unclaimed`},h=null,g={kind:`before_prepare`};try{let _=String(e.relayerUrl||``).trim().replace(/\/+$/g,``);if(!_)return{ok:!1,code:`invalid_args`,message:`Missing relayerUrl for Router A/B ECDSA derivation signing`};let v=$t(e.scope);if(!v.ecdsaThresholdKeyId)return{ok:!1,code:`invalid_args`,message:`Missing ecdsaThresholdKeyId for Router A/B ECDSA derivation signing`};let ee=v.clientVerifyingShareB64u;if(!ee)return{ok:!1,code:`invalid_args`,message:`Missing clientVerifyingShareB64u for Router A/B ECDSA derivation signing`};if(!(e.signingDigest32 instanceof Uint8Array)||e.signingDigest32.length!==32)return{ok:!1,code:`invalid_args`,message:`signingDigest32 must be 32 bytes for Router A/B ECDSA derivation signing`};let te=performance.now(),ne=await Jt({clientVerifyingShareB64u:ee,thresholdEcdsaPublicKeyB64u:v.thresholdEcdsaPublicKeyB64u,workerCtx:e.workerCtx});x(e.operationId,`public_key_validation`,te),i=G({relayerUrl:_,scope:e.scope,materialActivation:e.materialActivation}),r=b(i),B.set(r,i),Ft(r),c=!0,h=q(r);let re=performance.now();if(l=await Tt({poolKey:r,poolIdentity:i,clientSigningMaterial:e.clientSigningMaterial,workerCtx:e.workerCtx}),x(e.operationId,`pool_lookup`,re),!l){let t=performance.now();await At({poolKey:r,poolIdentity:i,clientSigningMaterial:e.clientSigningMaterial,workerCtx:e.workerCtx,generation:h}),x(e.operationId,`pool_restore`,t),h=q(r),l=await Tt({poolKey:r,poolIdentity:i,clientSigningMaterial:e.clientSigningMaterial,workerCtx:e.workerCtx})}if(!l){let t=performance.now();await Lt(r,`foreground`),x(e.operationId,`refill_wait`,t),h=q(r),l=await Tt({poolKey:r,poolIdentity:i,clientSigningMaterial:e.clientSigningMaterial,workerCtx:e.workerCtx})}if(!l&&n.kind===`on_demand`){let t=performance.now(),a=await rn({...n.refill,trafficClass:`foreground`});if(!a.ok&&a.code===`invalidated`&&(a=await rn({...n.refill,trafficClass:`foreground`})),!a.ok&&a.code!==`pool_full`)return a;!a.ok&&a.code===`pool_full`&&await At({poolKey:r,poolIdentity:i,clientSigningMaterial:e.clientSigningMaterial,workerCtx:e.workerCtx,generation:q(r)}),h=q(r),l=await Tt({poolKey:r,poolIdentity:i,clientSigningMaterial:e.clientSigningMaterial,workerCtx:e.workerCtx}),x(e.operationId,`foreground_refill`,t)}if(C(`evm-family`,{event:`ecdsa_presignature_selection`,operationId:e.operationId,authorization:e.authorization.kind,outcome:l?`available`:`empty`,remainingDepth:K(r),attempt:t}),!l)return{ok:!1,code:`pool_empty`,message:`Router A/B ECDSA derivation client presignature pool is empty`};let ie=Date.now(),ae=en({authorizationExpiresAtMs:e.expiresAtMs,materialExpiresAtMs:l.expiresAtMs,nowMs:ie});if(!ae)return{ok:!1,code:`pool_entry_expired`,message:`Router A/B ECDSA derivation client presignature is expired`};if(h!==q(r))return{ok:!1,code:`pool_entry_unavailable`,message:`Router A/B ECDSA derivation client presignature pool was invalidated before prepare`};p=mt();let oe=await u(p),S=f({scope:e.scope,requestId:s(`router-ab-ecdsa-sign`,32,`Router A/B ECDSA derivation sign request`),operationId:e.operationId,operationDigests:e.operationDigests,authorization:e.authorization,materialActivation:e.materialActivation,clientPresignatureId:l.presignatureId,expiresAtMs:ae,signingDigest32:e.signingDigest32,clientRerandomizationCommitment32:oe});R(oe);let w=s(`router-ab-ecdsa-reservation`,32,`Router A/B ECDSA Client presignature reservation`);m={kind:`destroy`};let T=performance.now(),E=await e.clientSigningMaterial.reserveClientPresignature({materialHandle:l.materialHandle,expectedPresignatureId:l.presignatureId,poolIdentity:i,requestBinding:S.request_id,reservationId:w,leaseExpiresAtMs:S.expires_at_ms,workerCtx:e.workerCtx});if(x(e.operationId,`presignature_reserve`,T),E.kind===`unavailable`)return E.reason===`claimed_elsewhere`&&(m={kind:`owned_elsewhere`}),t<4?await tn(e,t+1,n):{ok:!1,code:E.reason===`expired`?`pool_entry_expired`:`pool_entry_unavailable`,message:`Router A/B ECDSA derivation client presignature is unavailable: ${E.reason}`};if(h!==q(r))return{ok:!1,code:`pool_entry_unavailable`,message:`Router A/B ECDSA derivation client presignature pool was invalidated before prepare`};g={kind:`prepare_submitted`};let D=performance.now(),O=await ce({relayServerUrl:_,credential:e.credential,request:S,onServerTiming:se.bind(void 0,e.operationId,`prepare`)});if(x(e.operationId,`prepare`,D),O.server_big_r33_b64u!==l.bigRB64u)return{ok:!1,code:`presign_mismatch`,message:`Router A/B ECDSA derivation SigningWorker returned a different presignature bigR`};let de=performance.now();await e.clientSigningMaterial.commitClientPresignature({materialHandle:l.materialHandle,poolIdentity:i,requestBinding:S.request_id,reservationId:w,workerCtx:e.workerCtx}),x(e.operationId,`presignature_commit`,de);let k=o(l.bigRB64u),A=o(O.signing_worker_rerandomization_contribution32_b64u);try{if(k.length!==33)return{ok:!1,code:`internal`,message:`Router A/B ECDSA derivation presign bigR must decode to 33 bytes`};if(A.length!==32)return{ok:!1,code:`internal`,message:`Router A/B ECDSA derivation SigningWorker rerandomization contribution must decode to 32 bytes`};let t=performance.now();d=await e.clientSigningMaterial.computeSignatureShareFromPresignatureHandle({materialHandle:l.materialHandle,poolIdentity:i,requestBinding:S.request_id,reservationId:w,groupPublicKey33:ne,expectedPresignBigR33:k,digest32:e.signingDigest32,clientRerandomizationContribution32:p,signingWorkerRerandomizationContribution32:A,workerCtx:e.workerCtx}),x(e.operationId,`client_share`,t),m={kind:`consumed`}}finally{R(k),R(A)}if(d.length!==32)return{ok:!1,code:`internal`,message:`Invalid Router A/B ECDSA derivation client signature share length (expected 32, got ${d.length})`};let j=y({scope:e.scope,requestId:S.request_id,operationId:S.operation_id,operationDigests:S.operation_digests,authorization:e.authorization,materialActivation:e.materialActivation,expiresAtMs:S.expires_at_ms,signingDigest32:e.signingDigest32,serverPresignatureId:O.server_presignature_id,clientSignatureShare32:d,clientRerandomizationContribution32:p}),M=performance.now(),fe=await le({relayServerUrl:_,credential:e.credential,request:j,onServerTiming:se.bind(void 0,e.operationId,`finalize`)});x(e.operationId,`finalize`,M);let N=o(fe.signature65_b64u);if(N.length!==65)return{ok:!1,code:`internal`,message:`Router A/B ECDSA derivation returned invalid signature length (expected 65, got ${N.length})`};try{let t=performance.now();await ue({digest32:e.signingDigest32,signature65:N,publicKey33:ne,workerCtx:e.workerCtx}),x(e.operationId,`signature_verify`,t)}catch(e){return{ok:!1,code:`internal`,message:`Router A/B ECDSA derivation returned a signature that does not recover to the threshold group public key: ${ht(e)}`}}return{ok:!0,signature65:N,signature65B64u:fe.signature65_b64u,rB64u:a(N.slice(0,32)),sB64u:a(N.slice(32,64)),recId:N[64]}}catch(t){let n=String(t&&typeof t==`object`&&`message`in t?t.message:t||`Router A/B ECDSA derivation signing failed`);return t instanceof E&&t.code===`expired_local_request`?{ok:!1,code:`pool_entry_expired`,message:n}:r&&i&&h!==null&&g.kind===`before_prepare`&&q(r)!==h?(await Pt({poolKey:r,poolIdentity:i,clientSigningMaterial:e.clientSigningMaterial,workerCtx:e.workerCtx}),{ok:!1,code:`pool_entry_unavailable`,message:`Router A/B ECDSA derivation client presignature pool was invalidated before prepare`}):{ok:!1,code:`router_ab_sign_failed`,message:n}}finally{if(R(d),R(p),l&&i&&m.kind!==`consumed`&&m.kind!==`owned_elsewhere`){let t=!1;if(m.kind===`unclaimed`&&r&&h!==null&&h===q(r)){let e=Et(r,i,l);t=e===`stored`||e===`duplicate`}t||await e.clientSigningMaterial.destroyClientPresignature({materialHandle:l.materialHandle,poolIdentity:i,workerCtx:e.workerCtx}).catch(()=>{})}r&&c&&It(r)}}async function nn(e){let t=$t(e.scope),n=Math.floor(Number(e.expiresAtMs));if(!Number.isSafeInteger(n)||n<=Date.now())return{ok:!1,code:`invalid_pool_fill_expiry`,message:`Router A/B ECDSA derivation pool fill expiry is unavailable or expired`};let r=b(G({relayerUrl:e.relayerUrl,scope:e.scope,materialActivation:e.materialActivation}));Ft(r);try{let r={kind:`on_demand`,refill:{relayerUrl:e.relayerUrl,keyHandle:e.keyHandle,ecdsaThresholdKeyId:t.ecdsaThresholdKeyId,clientVerifyingShareB64u:t.clientVerifyingShareB64u,clientSigningMaterial:e.clientSigningMaterial,thresholdEcdsaPublicKeyB64u:t.thresholdEcdsaPublicKeyB64u,credential:e.credential,materialActivation:e.materialActivation,routerAbEcdsaDerivationPoolFill:{kind:`router_ab_ecdsa_derivation_signing_worker_pool`,scope:e.scope,ceremonyExpiresAtMs:Math.min(n,Date.now()+m-3e4),materialExpiresAtMs:e.authorization.kind===`operation_step_up`?n:Date.now()+v},workerCtx:e.workerCtx,...L(e)}},i=await tn(e,0,r);return!i.ok&&(i.code===`pool_entry_expired`||i.code===`pool_entry_unavailable`)?await tn(e,0,r):i}finally{It(r)}}async function rn(e){try{let t=G({relayerUrl:e.relayerUrl,scope:e.routerAbEcdsaDerivationPoolFill.scope,materialActivation:e.materialActivation}),n=b(t);await kt({poolKey:n,poolIdentity:t,clientSigningMaterial:e.clientSigningMaterial,workerCtx:e.workerCtx});let r=q(n),i=await Jt({clientVerifyingShareB64u:e.clientVerifyingShareB64u,thresholdEcdsaPublicKeyB64u:e.thresholdEcdsaPublicKeyB64u,relayerVerifyingShareB64u:e.relayerVerifyingShareB64u,workerCtx:e.workerCtx}),a=await Xt({relayerUrl:e.relayerUrl,poolFillInitKeySelector:{keyHandle:te(e.keyHandle)},clientSigningMaterial:e.clientSigningMaterial,groupPublicKey33:i,materialActivation:e.materialActivation,credential:e.credential,poolKey:n,trafficClass:e.trafficClass,routerAbEcdsaDerivationPoolFill:e.routerAbEcdsaDerivationPoolFill,workerCtx:e.workerCtx,...L(e)});if(!a.ok)return a;if(q(n)!==r)return await e.clientSigningMaterial.destroyClientPresignature({materialHandle:a.presignature.materialHandle,poolIdentity:t,workerCtx:e.workerCtx}).catch(()=>{}),{ok:!1,code:`invalidated`,message:`Router A/B ECDSA derivation presignature pool invalidated`};let o=Et(n,t,a.presignature);return(o===`capacity_full`||o===`invalid`)&&await e.clientSigningMaterial.destroyClientPresignature({materialHandle:a.presignature.materialHandle,poolIdentity:t,workerCtx:e.workerCtx}).catch(()=>{}),{ok:!0,presignatureId:a.presignature.presignatureId}}catch(e){return{ok:!1,code:`internal`,message:String(e&&typeof e==`object`&&`message`in e?e.message:e||`Router A/B ECDSA derivation presignature refill failed`)}}}async function an(e){let t=e.clientShare.material;if(t.kind===`worker_loaded`)return;let n=await Ae({materialHandle:e.clientShare.handle.materialHandle,bindingDigest:e.clientShare.handle.bindingDigest,stateBlob:t.stateBlob,workerCtx:e.workerCtx});if(n.materialHandle!==e.clientShare.handle.materialHandle||n.bindingDigest!==e.clientShare.handle.bindingDigest)throw Error(`[multichain] ECDSA role-local worker material handle mismatch`)}async function on(e){let t=e.signerSession,n=t.clientShare;if(n.kind===`linked_holder_worker_share`){let e=n.holderHandleId;return{signerSession:t,clientSigningMaterial:cn(e),cleanupAfterSign:async()=>void 0}}let r=n;return{signerSession:t,clientSigningMaterial:{kind:`router_ab_ecdsa_derivation_client_signing_material_source_v1`,initClientPresignSession:async t=>(await an({workerCtx:e.workerCtx,clientShare:r}),await Ie({materialHandle:r.handle.materialHandle,material:r.material.kind===`worker_loaded`?{kind:`persisted`,materialRef:r.material.materialRef}:{kind:`runtime_loaded`,expectedBindingDigest:r.handle.bindingDigest},...t})),stepClientPresignSession:Ge,abortClientPresignSession:Ke,admitClientPresignature:qe,destroyClientPresignature:Je,reserveClientPresignature:Ye,commitClientPresignature:Xe,listAvailableClientPresignatures:Ze.bind(void 0,`role_local_derivation_handle`),computeSignatureShareFromPresignatureHandle:Qe},cleanupAfterSign:async()=>void 0}}async function sn(e,t){return await Le({holderHandleId:e,...t})}function cn(e){return{kind:`router_ab_ecdsa_derivation_client_signing_material_source_v1`,initClientPresignSession:sn.bind(void 0,e),stepClientPresignSession:Ge,abortClientPresignSession:Ke,admitClientPresignature:qe,destroyClientPresignature:Je,reserveClientPresignature:Ye,commitClientPresignature:Xe,listAvailableClientPresignatures:Ze.bind(void 0,`linked_holder_signing_material`),computeSignatureShareFromPresignatureHandle:Qe}}var ln=e({Secp256k1Engine:()=>hn,buildReadySecp256k1SigningMaterial:()=>un});function un(e){let t=String(e.walletId||``).trim();if(!t)throw Error(`[multichain] Missing wallet id for ready secp256k1 signing material`);let n=e.signerSession;if(t!==String(n.walletId))throw Error(`[multichain] ready secp256k1 material wallet identity mismatch`);let r=Math.floor(Number(e.expiresAtMs));if(!Number.isSafeInteger(r)||r<=Date.now())throw Error(`[multichain] ready secp256k1 authorization expiry is invalid`);let i={kind:`ready_secp256k1_signing_material`,walletId:t,signerSession:n,expiresAtMs:r,singleUseEmailOtpSession:e.singleUseEmailOtpSession};switch(e.authorization.kind){case`reusable_wallet_session`:if(e.credential.kind!==`reusable_wallet_session`)throw Error(`[multichain] exact Wallet Session authorization requires its operation credential`);return{...i,authorization:e.authorization,credential:e.credential};case`operation_step_up`:if(!e.operationStepUpPreparation)throw Error(`[multichain] operation step-up preparation is required`);return{...i,authorization:e.authorization,credential:e.credential,operationStepUpPreparation:e.operationStepUpPreparation}}}function dn(e){return e.kind===`digest`&&e.algorithm===`secp256k1`}function fn(e){let t=String(e.intent.operationId||``).trim();if(!t)throw Error(`[multichain] exact EVM signing operation id is required`);return t}function pn(e){switch(e.kind){case`reusable_wallet_session`:return{kind:`wallet_session_opaque`,walletSessionToken:e.walletSessionToken};case`operation_step_up`:return{kind:`wallet_session_opaque`,walletSessionToken:e.walletSessionToken}}throw Error(`[multichain] unsupported ECDSA signing credential`)}function mn(e){let t=e.loadedMaterial.signerSession,n=t.publicFacts,r=t.transport.signingMaterial,i=Gt({relayerUrl:t.transport.relayerUrl,keyHandle:ae(n.keyHandle),ecdsaThresholdKeyId:r.ecdsaThresholdKeyId,clientVerifyingShareB64u:r.clientVerifier33B64u,clientSigningMaterial:e.loadedMaterial.clientSigningMaterial,thresholdEcdsaPublicKeyB64u:n.publicKeyB64u,relayerVerifyingShareB64u:t.transport.relayerVerifyingShareB64u,credential:e.credential,materialActivation:c(t.materialActivation),routerAbEcdsaDerivationPoolFill:{kind:`router_ab_ecdsa_derivation_signing_worker_pool`,scope:t.routerAbEcdsaDerivationNormalSigning.state.scope,ceremonyExpiresAtMs:e.expiresAtMs,materialExpiresAtMs:Date.now()+v},workerCtx:e.workerCtx,authorization:e.authorization});C(`evm-family`,{event:`ecdsa_post_sign_refill`,operationId:e.operationId,scheduled:i.scheduled,reason:i.reason,depth:i.depth,targetDepth:i.targetDepth})}var hn=class{constructor(e){this.algorithm=`secp256k1`,this.beforeSigning=e.beforeSigning,this.shouldAbort=e.shouldAbort,this.workerCtx=e.workerCtx}async signReadySecp256k1Digest(e,t,n,r){let i=fn(n),a=performance.now(),o=await on({signerSession:t.signerSession,workerCtx:this.workerCtx});x(i,`material_load`,a);let s=o.signerSession,l=s.publicFacts,u=s.transport,d=pn(t.credential),f=!1;try{let n={relayerUrl:u.relayerUrl,scope:s.routerAbEcdsaDerivationNormalSigning.state.scope,operationId:i,operationDigests:{lane_digest_b64u:r.laneDigest,intent_digest_b64u:r.intentDigest,display_digest_b64u:r.displayDigest},materialActivation:c(s.materialActivation),credential:d,keyHandle:ae(l.keyHandle),signingDigest32:e.digest32,clientSigningMaterial:o.clientSigningMaterial,expiresAtMs:t.expiresAtMs,workerCtx:this.workerCtx};this.beforeSigning?.();let a;if(t.authorization.kind===`reusable_wallet_session`)a=await nn({...n,authorization:t.authorization});else{let e=t.operationStepUpPreparation;if(!e)throw Error(`[multichain] operation step-up preparation is required for signing`);a=await nn({...n,authorization:t.authorization,operation:e})}if(!a.ok)throw Error(a.message||a.code||`[multichain] Router A/B ECDSA derivation signing failed`);return t.authorization.kind===`reusable_wallet_session`?mn({operationId:i,loadedMaterial:o,workerCtx:this.workerCtx,credential:d,expiresAtMs:t.expiresAtMs,authorization:t.authorization}):C(`evm-family`,{event:`ecdsa_post_sign_refill`,operationId:i,scheduled:!1,reason:`operation_step_up`}),f=!0,a.signature65}finally{await o.cleanupAfterSign({singleUseEmailOtpSession:t.singleUseEmailOtpSession}),x(i,`sign_total`,a,f?`succeeded`:`failed`)}}async signReady(e,t,n,r){if(!dn(e))throw Error(`[Secp256k1Engine] unsupported sign request`);if(e.digest32.length!==32)throw Error(`[Secp256k1Engine] digest32 must be 32 bytes`);if(this.shouldAbort?.()){let e=Error(`Request cancelled`);throw e.code=`cancelled`,e}return await this.signReadySecp256k1Digest(e,t,n,r)}};export{qe as A,j as B,ye as C,Ae as D,Ne as E,Ie as F,de as H,Ge as I,Ye as L,Qe as M,Je as N,Be as O,Ke as P,Se as R,we as S,Te as T,he as U,pe as V,me as W,be as _,Bt as a,Ce as b,Rt as c,Ee as d,Re as f,Ue as g,He as h,zt as i,Xe as j,Ze as k,We as l,xe as m,ln as n,Ct as o,De as p,cn as r,Gt as s,un as t,ke as u,ze as v,Pe as w,Me as x,Oe as y,k as z};
@@ -1 +0,0 @@
1
- import{i as e}from"./base64-ojm5DKcF.js";function t(e=32,t=`secure random bytes`){let n=Math.max(1,Math.floor(Number(e)||0)),r=globalThis.crypto;if(typeof r?.getRandomValues!=`function`)throw Error(`WebCrypto getRandomValues is required for ${t}`);return r.getRandomValues(new Uint8Array(n))}function n(n=32,r=`secure random id`){return e(t(n,r))}function r(e,t=32,r=`${e} id`){return`${String(e||``).trim()||`id`}-${n(t,r)}`}function i(e,n=`bounded random integer`){let r=Math.floor(Number(e)||0);if(r<=0||r>256)throw Error(`Invalid upper bound for ${n}`);let i=Math.floor(256/r)*r;for(;;){let e=t(1,n)[0]??0;if(e<i)return e%r}}function a(e,t=`base36 random id`){let n=Math.max(1,Math.floor(Number(e)||0)),r=``;for(let e=0;e<n;e++)r+=`0123456789abcdefghijklmnopqrstuvwxyz`[i(36,t)]||`0`;return r}export{n,r,a as t};
@@ -1 +0,0 @@
1
- import{k as e,z as t}from"./domainIds-GDzjOs6i.js";import{_ as n}from"./validation-dC1-_uyG.js";import{i as r,r as i}from"./base64-ojm5DKcF.js";import{r as a}from"./secureRandomId-CTdlJ5Mx.js";import{f as o,m as s}from"./chains-yAls2d9X.js";import{r as c}from"./canonicalPrimitives-MPGET2cl.js";const l=[`prf`,`kek`,`seed`,`scalar`,`secretkey`,`privatekey`,`plaintext`,`recoverycode`,`clientroot`,`holdershare`];function u(e,t,n,r=[]){let i=new Set(t),a=new Set(r);for(let t of Object.keys(e)){if(i.has(t))continue;if(a.has(t))throw Error(`${n}.${t} is not part of ${n}`);let e=t.toLowerCase().replace(/_/g,``);throw!e.includes(`publickey`)&&l.some(t=>e.includes(t))?Error(`${n}.${t} must never carry plaintext custody material`):Error(`${n}.${t} is not part of ${n}`)}}function d(e,t,r){let i=n(e,r);u(i,t,r);for(let e of t)if(!Object.prototype.hasOwnProperty.call(i,e)||i[e]===void 0)throw Error(`${r}.${e} is required`);return i}const f=Object.freeze([`export_keys`,`link_devices`,`revoke_devices`,`sign`]);Object.freeze([`sign`]);const p=new Set([`export_keys`,`link_devices`,`revoke_devices`,`sign`]),ee=Symbol(`canonicalPermissionSetBrand`);var te=class e extends Array{constructor(e){super(...e),this[ee]=!0,Object.freeze(this)}static create(t){return new e(t)}static get[Symbol.species](){return Array}};function m(e){return typeof e==`string`&&p.has(e)}function h(e){if(!Array.isArray(e))return S(e==null?`delegated wallet permissions are required`:`delegated wallet permissions must be an array`);if(e.length===0)return S(`delegated wallet permissions must be non-empty`);let t=[],n=new Set;for(let r of e){if(!m(r))return S(`delegated wallet permission is unsupported`);if(n.has(r))return S(`delegated wallet permission ${r} is duplicated`);n.add(r),t.push(r)}return t.sort(ie),{ok:!0,value:te.create(ae(t))}}function g(e){return{kind:`delegated_wallet_authority_v1`,permissions:e.permissions}}function _(e){if(!oe(e))return C(`delegated wallet authority must contain exactly kind and permissions`);if(e.kind!==`delegated_wallet_authority_v1`)return C(`delegated wallet authority kind is unsupported`);let t=h(e.permissions);return t.ok?{ok:!0,value:g({permissions:t.value})}:t}function v(){return re(f)}function y(){return g({permissions:v()})}function b(e,t){return e.permissions.includes(t)}function x(e){return Object.freeze([...e.permissions])}function ne(e,t){if(e.kind!==t.kind||e.permissions.length!==t.permissions.length)return!1;for(let n=0;n<e.permissions.length;n+=1)if(e.permissions[n]!==t.permissions[n])return!1;return!0}function re(e){let t=h(e);if(!t.ok)throw Error(t.error.message);return t.value}function ie(e,t){return e<t?-1:e>t?1:0}function ae(e){let[t,...n]=e;if(!t)throw Error(`delegated wallet permissions must be non-empty`);return[t,...n]}function oe(e){if(typeof e!=`object`||!e||Array.isArray(e))return!1;let t=Object.keys(e);return t.length===2&&t.includes(`kind`)&&t.includes(`permissions`)}function S(e){return{ok:!1,error:{code:`invalid`,message:e}}}function C(e){return{ok:!1,error:{code:`invalid`,message:e}}}const w=/^[A-Za-z0-9_-]+$/;function T(e,t){if(typeof e!=`string`||!w.test(e))throw Error(`${t} must be unpadded base64url`);let n;try{n=i(e)}catch{throw Error(`${t} must be valid base64url`)}if(r(n)!==e)throw Error(`${t} must be canonical base64url`);return n}function E(e,t){if(e.ok)return e.value;throw Error(`${t} ${e.error.message}`)}function D(e,t){try{return c(e)}catch(e){throw Error(`${t} ${e instanceof Error?e.message:`is not a digest`}`)}}function O(e,t=`nonceB64u`){if(T(e,t).length!==12)throw Error(`${t} must decode to a 12-byte ChaCha20Poly1305 nonce`);return e}function k(e,t=`ciphertextB64u`){if(T(e,t).length<17)throw Error(`${t} must decode to sealed ciphertext with an authentication tag`);return e}function A(e,t=`registeredPublicKeyB64u`){if(T(e,t).length!==32)throw Error(`${t} must decode to a 32-byte Ed25519 public key`);return e}function j(e,t=`publicKey33B64u`){let n=T(e,t);if(n.length!==33)throw Error(`${t} must decode to a 33-byte compressed secp256k1 point`);if(n[0]!==2&&n[0]!==3)throw Error(`${t} must be a compressed secp256k1 public key`);return e}function M(e,t=`keyCreationSignerSlot`){if(typeof e!=`number`||!Number.isSafeInteger(e)||e<=0||e>4294967295)throw Error(`${t} must be a positive u32`);return e}function N(e,t=`envelopeRevision`){if(typeof e!=`number`||!Number.isSafeInteger(e)||e<=0)throw Error(`${t} must be a positive integer revision`);return e}function P(e,t){if(typeof e!=`number`||!Number.isSafeInteger(e)||e<=0)throw Error(`${t} must be a positive unix-millisecond timestamp`);return e}function F(e,t){if(typeof e!=`string`)throw Error(`EVM-family signing key slot id requires ${t}`);let n=e.trim();if(!n)throw Error(`EVM-family signing key slot id requires ${t}`);return n}function I(e){return encodeURIComponent(F(e,`non-empty components`))}function L(e){let t=e.split(`:`);return t.length===5&&t[0]===`wallet-key`&&t[1]===`evm-family`&&t.slice(2).every(e=>e.length>0)}function R(t){let n=e(t);return n.ok?L(String(n.value))?{ok:!0,value:String(n.value)}:{ok:!1,error:{code:`invalid`,message:`EVM-family signing key slot id must be wallet-key:evm-family:<walletId>:<signingRootId>:<signingRootVersion>`}}:n}function z(e,t=`evmFamilySigningKeySlotId`){let n=R(e);if(n.ok)return n.value;throw n.error.code===`missing`?Error(`${t} is required`):Error(`${t} must be an EVM-family signing key slot id`)}function B(e){return z([`wallet-key`,`evm-family`,I(e.walletId),I(e.signingRootId),I(e.signingRootVersion)].join(`:`))}function V(e,n){let r=t(n);if(!r)throw Error(`${e} is required`);return r}function H(e){return`${V(`projectId`,e.projectId)}:${V(`envId`,e.envId)}`}function U(e){let t=W(e);return{...t,signingRootVersion:V(`signingRootVersion`,t.signingRootVersion)}}function W(e){if(!e||typeof e!=`object`||Array.isArray(e))throw Error(`runtimePolicyScope must be an object`);let n=e;if(Object.prototype.hasOwnProperty.call(n,`environmentId`))throw Error(`runtimePolicyScope.environmentId is stale; use envId`);if(Object.prototype.hasOwnProperty.call(n,`runtimeSnapshotScope`))throw Error(`runtimePolicyScope.runtimeSnapshotScope is stale; use runtimePolicyScope`);return{orgId:V(`orgId`,n.orgId),projectId:V(`projectId`,n.projectId),envId:V(`envId`,n.envId),...t(n.signingRootVersion)?{signingRootVersion:t(n.signingRootVersion)}:{}}}function G(e,t){return e.orgId===t.orgId&&e.projectId===t.projectId&&e.envId===t.envId&&e.signingRootVersion===t.signingRootVersion}function K(e){return{signingRootId:H(e),signingRootVersion:V(`signingRootVersion`,e.signingRootVersion)}}function q(e){return e===`light`||e===`dark`?e:void 0}const se=[1,2];function J(e){let t=Number(e);return!Number.isSafeInteger(t)||t<1||t>65535?null:t}function Y(e){if(!Array.isArray(e)||e.length===0)return null;let t=[],n=new Set;for(let r of e){let e=J(r);if(!e)return null;n.has(e)||(n.add(e),t.push(e))}return t.sort((e,t)=>e-t),t.length?t:null}function ce(e){if(!Array.isArray(e)||e.length===0)return null;let n=[];for(let r of e){if(!r||typeof r!=`object`||Array.isArray(r))return null;let e=r,i=J(e.id),a=t(e.role);if(!i||a!==`client`&&a!==`relayer`)return null;let o={id:i,role:a},s=t(e.relayerUrl);s&&(o.relayerUrl=s);let c=t(e.relayerKeyId);c&&(o.relayerKeyId=c);let l=t(e.shareDerivation);(l===`prf_first_v1`||l===`derived_master_secret_v1`||l===`kv_random_v1`||l===`unknown`)&&(o.shareDerivation=l),n.push(o)}return n.length?n:null}function le(e){let n=t(e.relayerKeyId),r=t(e.relayerUrl),i=J(e.clientParticipantId)??1,a=J(e.relayerParticipantId)??2;return[{id:i,role:`client`,shareDerivation:e.clientShareDerivation||`prf_first_v1`},{id:a,role:`relayer`,...r?{relayerUrl:r}:{},...n?{relayerKeyId:n}:{},...e.relayerShareDerivation?{shareDerivation:e.relayerShareDerivation}:{}}]}function X(e){try{return U(e)}catch{return}}const Z=864e5,Q={ttlMs:Z,remainingUses:3},ue=3;function de(e,t){let n=Math.floor(Number(e)||0);if(!Number.isFinite(n)||n<=0)throw Error(`[ThresholdSessionPolicy] ${t} must be a positive integer`);return n}function fe(e){let t=Math.floor(Number(e.requestedRemainingUses)||0);return!Number.isFinite(t)||t<=0?null:Math.min(t,3)}function $(e){let t=Math.max(0,Math.floor(Number(e.ttlMs)||0)),n=Math.max(0,Math.floor(Number(e.remainingUses)||0));return{ttlMs:Math.min(t,2592e6),remainingUses:Math.min(n,1e6)}}function pe(){return a(`tsess`,32,`threshold session IDs`)}async function me(e){return r(await s(o(e)))}async function he(e){return ge({nearAccountId:e.nearAccountId,nearEd25519SigningKeyId:e.nearEd25519SigningKeyId,authority:e.authority.authority,relayerKeyId:e.relayerKeyId,runtimePolicyScope:e.runtimePolicyScope,routerAbNormalSigning:e.routerAbNormalSigning,participantIds:e.participantIds,thresholdSessionId:e.thresholdSessionId,ttlMs:e.ttlMs,remainingUses:e.remainingUses})}async function ge(e){let t=e.thresholdSessionId||pe(),{ttlMs:n,remainingUses:r}=$({ttlMs:e.ttlMs??Q.ttlMs,remainingUses:e.remainingUses??Q.remainingUses}),i=Y(e.participantIds),a=X(e.runtimePolicyScope),o={version:`threshold_session_v1`,nearAccountId:e.nearAccountId,nearEd25519SigningKeyId:e.nearEd25519SigningKeyId,authority:e.authority,relayerKeyId:e.relayerKeyId,thresholdSessionId:t,...a?{runtimePolicyScope:a}:{},routerAbNormalSigning:e.routerAbNormalSigning,...i?{participantIds:i}:{},ttlMs:n,remainingUses:r},s=await me(o);return{policy:o,policyJson:JSON.stringify(o),sessionPolicyDigest32:s}}export{x as A,O as C,P as D,j as E,d as F,u as I,_ as M,h as N,E as O,ne as P,k as S,M as T,K as _,$ as a,D as b,fe as c,Y as d,ce as f,G as g,U as h,he as i,b as j,y as k,se as l,H as m,Z as n,X as o,q as p,ue as r,de as s,Q as t,le as u,B as v,N as w,A as x,z as y};
@@ -1 +0,0 @@
1
- function e(e,t){e.post({type:`PM_RESULT`,requestId:t,payload:{ok:!0}})}function t(e,t,n){e.post({type:`PM_RESULT`,requestId:t,payload:{ok:!0,result:n}})}function n(e,t,n){return{...n||{},onEvent:n=>e.postProgress(t,n)}}function r(e,t,n){return{...n||{},onEvent:n=>e.postProgress(t,n),onTimingSpan:n=>e.postProgress(t,n)}}export{r as i,t as n,n as r,e as t};
@@ -1 +0,0 @@
1
- import{n as e}from"./chunk-dVx5-UGu.js";import{h as t,r as n}from"./domainIds-GDzjOs6i.js";import{r}from"./transactionReviewAdmission-0ZgWs6q3.js";import{r as i}from"./base64-ojm5DKcF.js";import{n as a}from"./secureRandomId-CTdlJ5Mx.js";import{h as o}from"./sessionPolicy-CNVK7nJ6.js";import{$ as s,Et as c,M as l,Mt as u,Q as d,Tt as f,Z as p,_t as m,a as h,b as g,f as _,g as v,it as y,j as b,nt as ee,rt as x,x as te,z as S}from"./ecdsaPresignLifecycle-CQnCxSlq.js";import{t as ne}from"./chains-yAls2d9X.js";import{c as C,o as w,s as T}from"./ecdsaChainTarget-CRcRR78w.js";import{f as re,n as E}from"./signerDomain-BhUTzDmF.js";import{a as ie}from"./normalization-BGPR6osg.js";import{C as ae,It as oe,Lt as D,c as se,f as ce,l as le,n as ue,o as O,s as de,u as k,x as A,y as fe}from"./evmFamilyEcdsaIdentity-Br3iFdQx.js";import{a as pe,l as me,s as he}from"./walletAuthority-CoWSeqvQ.js";import{a as ge,l as _e,s as ve}from"./keyMaterialBrands-uVZHfAh3.js";import{a as ye,m as be,o as j}from"./sdkSentEvents-_RGAEeld.js";import{t as xe}from"./signerSlot-BQ1g5JNV.js";import{c as Se,i as Ce,n as we,r as Te,s as Ee}from"./types-M7vxrYtJ.js";import{t as De}from"./challengeDelivery-cAsaUC6U.js";import{O as Oe,y as ke}from"./ecdsaCapabilityManifest-CHFu-QrV.js";import{c as Ae,l as je,s as Me}from"./nonceLaneKeys-BBYi4g51.js";import{c as M,g as N,n as Ne,r as P,s as Pe,t as Fe}from"./exactSigningLaneIdentity-olheZx_n.js";import{c as Ie,o as Le,x as Re,y as F}from"./nearEd25519YaoSigningPreparation-Bp_CvWRz.js";import{a as ze,o as Be}from"./routePlan-B_KJaPtm.js";import{r as Ve}from"./operationFingerprint-DtQb0pdp.js";import{c as He,l as Ue,o as We,s as Ge,t as Ke,u as I}from"./trace-M34pNGuF.js";import{i as qe,n as Je,r as Ye,t as Xe}from"./signerLoader-By0IY24G.js";import{t as Ze,x as Qe}from"./secp256k1-B_6W9QDJ.js";import{a as $e,i as et,n as L}from"./promptText-s8TQ6ckX.js";import{t as tt,u as nt}from"./operationFingerprint-5-wH2Ht8.js";import{_ as rt,b as it,g as at,h as ot,p as st,v as ct,x as lt}from"./routerAbNormalSigning-D_fHjq5l.js";import{C as ut,S as dt,b as ft,f as pt,h as mt,o as ht,r as gt,u as _t}from"./transactionState-9d7f3xVj.js";import{t as vt}from"./bytes-t5S5mkat.js";import{d as yt,l as bt,n as xt,u as St}from"./signingFlow-LUWrZi2d.js";import{t as Ct}from"./display-jK7_hYho.js";const R=new Map;function wt(e){return`${String(e.walletId)}\0${e.materialActivation.activationId}`}function Tt(e){let t=wt(e),r=R.get(t);if(r&&(r.authorityId!==e.authorityId||r.walletAuthMethodId!==e.walletAuthMethodId||r.factorAuthority.walletId!==e.factorAuthority.walletId||r.factorAuthority.bindingId!==e.factorAuthority.bindingId||r.holderHandleId!==e.holderHandleId||!n(r.materialActivation,e.materialActivation)))throw Error(`linked ECDSA holder runtime conflicts with the active authority`);R.set(t,e)}function Et(e){return R.get(wt(e))??null}function Dt(e){return[...R.values()].filter(t=>e===void 0||t.walletId===e)}function Ot(e){let t=wt(e),n=R.get(t);if(n){if(n.holderHandleId!==e.holderHandleId)throw Error(`linked ECDSA holder runtime changed before removal`);R.delete(t)}}function kt(e){if(!e){R.clear();return}for(let[t,n]of R)n.walletId===e&&R.delete(t)}function z(e){let t=e&&typeof e==`object`&&`code`in e?String(e.code||``).trim():``;if(t===`sealed_refresh_parity_fetch_failed`||t===`sealed_refresh_parity_http_error`||t===`sealed_refresh_parity_aborted`)return!0;let n=String(e instanceof Error?e.message:e||``);return n.includes(`Failed to fetch relayer well-known capabilities`)||/Well-known endpoint returned HTTP 5\d\d/.test(n)}function B(e){return e instanceof Error?e.message:String(e||`unknown error`)}async function At(e,t){try{await e()}catch(e){if(t.kind===`key_enrollment_bootstrap_parity`){console.warn(`[threshold-ecdsa] key enrollment bootstrap skipped sealed-refresh startup parity enforcement`,{walletId:String(t.walletId||``).trim(),chainTarget:w(t.chainTarget),error:B(e)});return}if(t.kind===`transaction_bootstrap_parity`&&z(e)){console.warn(`[threshold-ecdsa] transaction bootstrap skipped retryable sealed-refresh capability fetch failure`,{walletId:String(t.walletId||``).trim(),chainTarget:w(t.chainTarget),error:B(e)});return}if(t.kind===`email_otp_bootstrap_parity`&&t.authMethod===E.emailOtp&&z(e)){console.warn(`[threshold-ecdsa] Email OTP bootstrap skipped retryable sealed-refresh capability fetch failure`,{walletId:String(t.walletId||``).trim(),chainTarget:w(t.chainTarget),error:B(e)});return}if(t.kind===`default_bootstrap_parity`&&z(e)){console.warn(`[threshold-ecdsa] default bootstrap skipped retryable sealed-refresh capability fetch failure`,{walletId:String(t.walletId||``).trim(),chainTarget:w(t.chainTarget),error:B(e)});return}throw e}}async function jt(e,t){try{await e()}catch(e){if(!z(e))throw e;console.warn(`[threshold-ecdsa] transaction signing skipped retryable sealed-refresh capability fetch failure`,{walletId:String(t.walletId||``).trim(),chainTarget:w(t.chainTarget),error:B(e)})}}function Mt(e){if(e.kind===`tempoTransaction`)return`tempo`;if(e.kind===`eip1559`)return`evm_compatible`;let t=String(e.chain||``).trim();if(t===`tempo`||t===`evm`)return t;throw Error(`[SigningEngine][ecdsa] transaction request requires a concrete chain family`)}function Nt(e){let t=Number(e.request.tx.chainId);if(!Number.isSafeInteger(t)||t<=0)throw Error(`[SigningEngine][ecdsa] transaction request requires a concrete chainId`);if(t!==e.chainTarget.chainId)throw Error(`[SigningEngine][ecdsa] transaction request chainId does not match chainTarget`);let n=Mt(e.request);if(n!==`evm_compatible`&&n!==e.chainTarget.kind)throw Error(`[SigningEngine][ecdsa] transaction request chain does not match chainTarget`);return e.chainTarget}function Pt(){let e=Error(`Request cancelled`);return e.code=`cancelled`,e}function Ft(e){if(typeof e==`function`&&e())throw Pt()}function It(e){return String(e||``).trim().toLowerCase().replace(/[\s-]+/g,`_`)}function V(e){return!e||typeof e!=`object`||!(`code`in e)?``:It(e.code)}function Lt(e){return e?typeof e==`string`?e.trim():e instanceof Error||typeof e==`object`&&`message`in e?String(e.message||``).trim():String(e).trim():``}function Rt(e){let t=`${e.code} ${e.message}`.toLowerCase();return t.trim()?t.includes(`nonce_too_low`)||t.includes(`nonce too low`)?`nonce_too_low`:t.includes(`nonce_too_high`)||t.includes(`nonce too high`)?`nonce_too_high`:t.includes(`already_known`)||t.includes(`already known`)?`already_known`:t.includes(`replacement_transaction_underpriced`)||t.includes(`replacement transaction underpriced`)?`replacement_underpriced`:t.includes(`nonce_conflict`)||t.includes(`nonce`)&&t.includes(`conflict`)||t.includes(`invalid nonce`)||t.includes(`nonce has already been used`)?`nonce_conflict`:null:null}function zt(e){let t=e.chain===`tempo`?`Tempo`:`EVM`,n=Error(`[SigningEngine] ${t} nonce conflict (${e.reason}) on ${e.networkKey}. Refresh nonce context and retry.`);if(n.code=`nonce_conflict_retryable`,n.retryable=!0,n.details={chain:e.chain,reason:e.reason,networkKey:e.networkKey,chainId:e.chainId},e.cause!==void 0)try{n.cause=e.cause}catch{}return n}function Bt(e){let t=e.chain===`tempo`?`Tempo`:`EVM`,n=Error(`[SigningEngine] ${t} nonce lane blocked on ${e.networkKey} (nonce=${e.blockedNonce}). Reconcile lane and retry.`);if(n.code=`nonce_lane_blocked`,n.retryable=!0,n.details={chain:e.chain,networkKey:e.networkKey,chainId:e.chainId,blockedNonce:e.blockedNonce,...typeof e.ageMs==`number`?{ageMs:e.ageMs}:{}},e.cause!==void 0)try{n.cause=e.cause}catch{}return n}function Vt(e){if(!e.error||typeof e.error!=`object`)return e.error;let t=V(e.error);if(t===`nonce_conflict_retryable`)return e.error;let n=Rt({code:t,message:Lt(e.error)});return n?zt({chain:e.chain,networkKey:e.networkKey,chainId:e.chainId,reason:n,cause:e.error}):e.error}function Ht(e){if(!e.error||typeof e.error!=`object`)return e.error;if(V(e.error)===`nonce_lane_blocked`){let t=typeof e.error.details==`object`&&e.error.details||{},n=String(t?.blockedNonce||``).trim(),r=Number(t?.ageMs);return Bt({chain:e.chain,networkKey:e.networkKey,chainId:e.chainId,blockedNonce:n||`unknown`,...Number.isFinite(r)?{ageMs:r}:{},cause:e.error})}let t=Lt(e.error).toLowerCase();return t.includes(`nonce lane blocked`)||t.includes(`nonce`)&&t.includes(`blocked`)?Bt({chain:e.chain,networkKey:e.networkKey,chainId:e.chainId,blockedNonce:`unknown`,cause:e.error}):e.error}function Ut(e){let t=Vt(e);return Ht({...e,error:t})}function Wt(e){return!e||typeof e!=`object`?!1:V(e)===`nonce_conflict_retryable`}function Gt(e){return!e||typeof e!=`object`?!1:V(e)===`nonce_lane_blocked`}function H(e){if(!e)return{present:!1};let t=N(e.identity,`ECDSA lane summary`);return{present:!0,walletId:t.walletId,authMethod:Se(e.auth),curve:e.curve,chain:e.chain,chainFamily:`chainFamily`in e?e.chainFamily:e.chain,keyKind:`keyKind`in e?e.keyKind:`threshold_ecdsa_secp256k1`,sessionOrigin:`sessionOrigin`in e?e.sessionOrigin:void 0,storageSource:`storageSource`in e?e.storageSource:void 0,retention:`retention`in e?e.retention:void 0,walletSessionId:e.authorization.operationCredential.walletSessionId,materialActivationId:e.materialActivation.activationId,chainTarget:t.chainTarget,evmFamilyKeyPresent:!!t.key}}function U(e,t){try{console.warn(`[SigningEngine][ecdsa] ${e}`,JSON.stringify(t,null,2))}catch{}}function Kt(e){let t=e.lane;if(!t)throw U(`missing selected signing lane`,{context:e.context,chain:e.chain,...e.diagnostics}),Error(`[SigningEngine][ecdsa] missing selected signing lane for ${e.context}`);if(t.curve!==`ecdsa`||t.keyKind!==`threshold_ecdsa_secp256k1`)throw U(`selected signing lane is not ECDSA`,{context:e.context,expectedChain:e.chain,lane:H(t),...e.diagnostics}),Error(`[SigningEngine][ecdsa] ${e.context} requires an ECDSA signing lane`);let n=t.identity,r=N(n,`${e.context} resolved ECDSA lane`),i=r.chainTarget;if(i.kind!==e.chain)throw U(`selected signing lane chain mismatch`,{context:e.context,expectedChain:e.chain,lane:H(t),...e.diagnostics}),Error(`[SigningEngine][ecdsa] ${e.context} chain does not match selected lane`);let a=r.key;if(!a?.ecdsaThresholdKeyId||!a.signingRootId||!a.signingRootVersion)throw U(`selected signing lane missing full ECDSA identity`,{context:e.context,expectedChain:e.chain,lane:H(t),...e.diagnostics}),Error(`[SigningEngine][ecdsa] incomplete ECDSA lane identity for ${e.context}`);if(!a||String(a.walletId)!==String(r.walletId)||String(r.keyHandle||``).trim()===``)throw U(`selected signing lane missing matching shared key identity`,{context:e.context,expectedChain:e.chain,lane:H(t),...e.diagnostics}),Error(`[SigningEngine][ecdsa] missing shared key identity for ${e.context}`);let o=Re({key:a,materialActivation:r.materialActivation,keyHandle:r.keyHandle,walletId:r.walletId,auth:n.auth,authorization:t.authorization,chainTarget:i});return{...t,...o,key:a,keyHandle:r.keyHandle,chainTarget:i,keyKind:`threshold_ecdsa_secp256k1`,chainFamily:r.chainTarget.kind}}function qt(e){let t=e.authMethod;return{primaryAuthMethod:t,linkedAuthMethods:[t],...e.email?{email:e.email}:{},...e.passkeyCredentialIds?.length?{passkeyCredentialIds:e.passkeyCredentialIds}:{}}}async function Jt(e){if(e.senderSignatureAlgorithm===`webauthnP256`)return qt({authMethod:E.passkey});if(e.signerAuthMethod!==void 0)return qt({authMethod:e.signerAuthMethod});throw Error(`[SigningEngine][ecdsa] signer auth method is unavailable`)}function Yt(e){return e.session.capabilitySubjects.filter(t=>t.kind===`sign`&&t.keyFamily===`ecdsa_secp256k1`&&n(t.materialActivation,e.materialActivation)).length===1}function Xt(e){return e.capability.manifest.signer.scope.targetMemberships.some(t=>T(t,e.chainTarget))}function Zt(e,t){return e.length===t.length&&e.every((e,n)=>e===t[n])}function Qt(e){let{selectedAuthority:t,selectedAuthMethod:n}=e;return n.walletId===e.walletId&&n.status===`active`&&n.walletAuthorityId===t.authorityId&&t.walletId===e.walletId&&t.state===`active`}function $t(e){let t=e.capability.authority,n=e.runtime.authBinding;switch(n.kind){case`email_otp`:return p(t)&&x(t,n.emailOtpAuthority);case`passkey`:return d(t)&&t.verifier.rpId===n.rpId&&t.factor.credentialIdB64u===n.credentialIdB64u;default:return n}}function en(e){switch(e.runtime.authBinding.kind){case`email_otp`:return e.selectedAuthMethod.kind===`email_otp`&&e.selectedAuthMethod.emailHashHex===e.runtime.authBinding.emailHashHex;case`passkey`:return e.selectedAuthMethod.kind===`passkey`&&String(e.selectedAuthMethod.rpId)===String(e.runtime.authBinding.rpId)&&e.selectedAuthMethod.credentialIdB64u===e.runtime.authBinding.credentialIdB64u;default:return e.runtime.authBinding}}function tn(e){if(!Number.isSafeInteger(e.nowMs)||e.nowMs<0)return!1;let{capability:t,authorization:r}=e,i=r.session,a=r.operationCredential,o=r.runtime,s=t.manifest.signer,c=r.selectedAuthority.signerActivations.ecdsa;if(!c||!Qt({selectedAuthority:r.selectedAuthority,selectedAuthMethod:r.selectedAuthMethod,walletId:i.walletId})||i.walletId!==s.walletId||i.authorityId!==r.selectedAuthority.authorityId||i.authMethodId!==r.selectedAuthMethod.walletAuthMethodId||i.authorityDigestB64u!==r.selectedAuthority.authorityDigestB64u||i.authorityRevocationEpoch!==r.selectedAuthority.revocationEpoch||s.authority.walletId!==r.selectedAuthority.walletId||s.authority.walletAuthMethodId!==r.selectedAuthMethod.walletAuthMethodId||i.authorizationId.trim().length===0||i.quotaId.trim().length===0||a.walletSessionId.trim().length===0||a.token.trim().length===0||o.walletId!==i.walletId||!en({selectedAuthMethod:r.selectedAuthMethod,runtime:o})||!n(o.materialActivation,t.manifest.activation.materialActivation)||!n(o.roleLocalMaterialRef.materialActivation,o.materialActivation)||!Xt({capability:t,chainTarget:o.chainTarget})||!$t({capability:t,runtime:o})||!Yt({session:i,materialActivation:t.manifest.activation.materialActivation})||!n(c.materialActivation,t.manifest.activation.materialActivation)||c.signer.walletId!==i.walletId||o.expiresAtMs<=0||!Number.isSafeInteger(o.remainingUses)||o.remainingUses<0)return!1;switch(o.kind){case`exact_ecdsa_direct_capability_runtime_v1`:break;case`exact_ecdsa_sealed_runtime_v1`:if(o.sealedRecord.authMethod!==r.selectedAuthMethod.kind||o.sealedRecord.storeKey.trim().length===0||o.sealedRecord.thresholdSessionId.trim().length===0)return!1;break;default:return o}return!(i.expiresAtMs<=e.nowMs||o.expiresAtMs<=e.nowMs||o.keyHandle!==String(t.material.publicFacts.keyHandle)||o.ecdsaThresholdKeyId!==String(t.material.publicFacts.ecdsaThresholdKeyId)||o.thresholdEcdsaPublicKeyB64u!==String(t.material.publicFacts.groupPublicKey33B64u)||!Zt(o.participantIds,t.material.publicFacts.participantIds))}function nn(e){return e.authBinding.kind===`passkey`}function rn(e){return e.authBinding.kind===`email_otp`}function an(e){if(nn(e.runtime)&&e.selected.authMethod.kind===`passkey`||rn(e.runtime)&&e.selected.authMethod.kind===`email_otp`)return{kind:`ecdsa_preprocessing_session`,selectedAuthority:e.selected.authority,selectedAuthMethod:e.selected.authMethod,session:e.session,operationCredential:e.operationCredential,runtime:e.runtime};throw Error(`ECDSA preprocessing session auth method is inconsistent`)}function on(e){return d(e)?{kind:`passkey`,rpId:String(e.verifier.rpId),credentialIdB64u:String(e.factor.credentialIdB64u)}:p(e)?{kind:`email_otp`,providerSubjectId:String(e.factor.providerUserId),emailHashHex:String(e.verifier.emailHashHex),emailOtpAuthority:e}:e}function sn(e){if(!Number.isSafeInteger(e.status.expiresAtMs)||e.status.expiresAtMs<=0||!Number.isSafeInteger(e.status.remainingUses)||e.status.remainingUses<0)throw Error(`Exact ECDSA direct capability requires valid session facts`);return{kind:`exact_ecdsa_direct_capability_runtime_v1`,walletId:e.runtime.walletId,chainTarget:e.runtime.chainTarget,materialActivation:e.runtime.materialActivation,normalSigning:e.runtime.normalSigning,relayerUrl:e.runtime.relayerUrl,relayerKeyId:e.runtime.relayerKeyId,clientVerifyingPublicKey33B64u:e.runtime.clientVerifyingPublicKey33B64u,participantIds:e.runtime.participantIds,ecdsaThresholdKeyId:e.runtime.ecdsaThresholdKeyId,thresholdEcdsaPublicKeyB64u:e.runtime.thresholdEcdsaPublicKeyB64u,keyHandle:e.runtime.keyHandle,runtimePolicyScope:e.runtime.runtimePolicyScope,roleLocalMaterialRef:e.runtime.roleLocalMaterialRef,authBinding:on(e.authority),expiresAtMs:e.status.expiresAtMs,remainingUses:e.status.remainingUses}}function cn(e,t){if(e.kind!==t.kind)return!1;switch(e.kind){case`email_otp`:return t.kind===`email_otp`&&e.providerSubjectId===t.providerSubjectId&&e.emailHashHex===t.emailHashHex&&x(e.emailOtpAuthority,t.emailOtpAuthority);case`passkey`:return t.kind===`passkey`&&e.rpId===t.rpId&&e.credentialIdB64u===t.credentialIdB64u;default:return e}}function ln(e,t){if(e.kind!==t.kind||e.walletId!==t.walletId||!T(e.chainTarget,t.chainTarget)||!n(e.materialActivation,t.materialActivation)||e.keyHandle!==t.keyHandle||e.ecdsaThresholdKeyId!==t.ecdsaThresholdKeyId||!cn(e.authBinding,t.authBinding))return!1;switch(e.kind){case`exact_ecdsa_direct_capability_runtime_v1`:return t.kind===`exact_ecdsa_direct_capability_runtime_v1`;case`exact_ecdsa_sealed_runtime_v1`:return t.kind===`exact_ecdsa_sealed_runtime_v1`&&e.sealedRecord.authMethod===t.sealedRecord.authMethod&&e.sealedRecord.storeKey===t.sealedRecord.storeKey&&e.sealedRecord.thresholdSessionId===t.sealedRecord.thresholdSessionId;default:return e}}function un(e){let t=e.session.walletId;if(!Number.isSafeInteger(e.nowMs)||e.nowMs<0)throw Error(`Exact EVM-family Wallet Session authorization requires a valid timestamp`);if(!Qt({selectedAuthority:e.selected.authority,selectedAuthMethod:e.selected.authMethod,walletId:t})||e.selected.selection.walletId!==t||e.selected.selection.walletAuthMethodId!==e.selected.authMethod.walletAuthMethodId||e.selected.selection.lockState!==`unlocked`)throw Error(`Exact EVM-family Wallet Session authorization selected authority is invalid`);let n=an(e);if(!tn({capability:e.capability,authorization:n,nowMs:e.nowMs}))throw Error(`Exact EVM-family Wallet Session authorization identity is inconsistent`);return n}function dn(e){let t=pn(fn(e),e.nowMs);if(!t)throw Error(`Exact ECDSA signing authorization requires remaining signing uses`);return t}function fn(e){return{kind:`authorized_ecdsa_preprocessing_capability`,capability:e.capability,authorization:un(e)}}function pn(e,t){let n=e.authorization,r=n.runtime;return r.remainingUses<=0||!tn({capability:e.capability,authorization:n,nowMs:t})?null:nn(r)&&n.selectedAuthMethod.kind===`passkey`||rn(r)&&n.selectedAuthMethod.kind===`email_otp`?{kind:`exact_evm_family_wallet_session_authorization_v1`,selectedAuthority:n.selectedAuthority,selectedAuthMethod:n.selectedAuthMethod,session:n.session,operationCredential:n.operationCredential,runtime:r}:null}function mn(e){if(e.authorization.runtime.remainingUses<=0||!tn({capability:e.capability,authorization:e.authorization,nowMs:e.nowMs}))throw Error(`Exact Wallet Session authorization does not bind the ECDSA signing capability`);return{kind:`authorized_evm_family_ecdsa_signing_capability`,capability:e.capability,authorization:e.authorization}}async function hn(e){let t=e.manifest.signer,r=t.registeredPublicFacts,i=e.material.publicFacts,a=await y({authority:e.authority});if(a.authorityDigest!==t.authority.authorityDigest||a.walletId!==t.walletId||e.material.authority.walletId!==t.walletId||e.material.authority.authorityDigest!==t.authority.authorityDigest||!n(e.material.materialActivation,e.manifest.activation.materialActivation)||i.walletId!==t.walletId||i.keyHandle!==r.keyHandle||String(i.groupPublicKey33B64u)!==String(r.publicKeyB64u)||i.ethereumAddress!==r.thresholdOwnerAddress||i.participantIds.length!==r.participantIds.length||i.participantIds.some((e,t)=>e!==r.participantIds[t]))throw Error(`Canonical EVM-family ECDSA signing capability identity is inconsistent`);return{kind:`canonical_evm_family_ecdsa_signing_capability`,authority:e.authority,manifest:e.manifest,material:e.material}}const gn=Symbol(`persisted-ecdsa-role-local-material`);function _n(e,t){return e.bindingDigest===t.contextBinding32B64u}function vn(e,t){return e.durableMaterialRef===t.durableMaterialRef&&e.bindingDigest===t.bindingDigest}function yn(e){return e instanceof Error?e.message:String(e)}function W(e){return{kind:`corrupt`,reason:e.reason,message:e.message}}function bn(e){switch(e.failure.reason){case`missing`:return{kind:`device_link_required`,reason:`missing_local_material`};case`expired`:return W({reason:`expired`,message:`ECDSA role-local persisted material has expired`});case`binding_mismatch`:return W({reason:`binding_mismatch`,message:`ECDSA role-local persisted material binding does not match its public facts`});case`corrupt`:return W({reason:`corrupt_persistence`,message:`ECDSA role-local persisted material is corrupt`});default:{let t=e.failure.reason;throw Error(`Unsupported ECDSA role-local restoration failure: ${String(t)}`)}}}function xn(e){let n=ee(e.authority);if(!n)throw Error(`ECDSA role-local persisted material authority is invalid`);let r=t(e.materialActivation);if(!r.ok)throw Error(r.error.message);if(n.walletId!==e.publicFacts.walletId)throw Error(`ECDSA role-local persisted material authority does not match its wallet`);return{[gn]:!0,kind:`persisted_ecdsa_role_local_material_v1`,authority:n,materialActivation:r.value,publicFacts:e.publicFacts}}function Sn(e){return{kind:`persisted`,authority:e.authority,materialActivation:e.materialActivation,publicFacts:e.publicFacts}}async function Cn(e){switch(e.source.kind){case`unavailable`:return{kind:`device_link_required`,reason:e.source.reason};case`persisted`:try{let t=await Qe({authority:e.source.authority,materialActivation:e.source.materialActivation,workerCtx:e.workerCtx});return t.ok?!n(t.materialRef.materialActivation,e.source.materialActivation)||!_n(t.materialRef,e.source.publicFacts)?W({reason:`worker_identity_mismatch`,message:`ECDSA role-local worker restored a different material identity`}):vn(t.liveHandle,t.materialRef)?{kind:`rehydrated`,liveHandle:t.liveHandle,materialRef:t.materialRef}:W({reason:`worker_identity_mismatch`,message:`ECDSA role-local worker restored a different durable material`}):bn({failure:t})}catch(e){return W({reason:`persistence_unavailable`,message:yn(e)})}default:{let t=e.source;throw Error(`Unsupported ECDSA role-local material source: ${String(t)}`)}}}var G=class extends Error{constructor(e){super(`[OwnerLaneScope] ${e}`),this.name=`OwnerLaneScopeIntegrityError`}},wn=class extends Error{constructor(e){super(`[OwnerLaneScope] relink_required: no active canonical wallet auth method (${e})`),this.code=`relink_required`,this.reason=`missing_canonical_owner_binding`,this.name=`OwnerRelinkRequiredError`}};function Tn(e){return e instanceof wn&&e.name===`OwnerRelinkRequiredError`&&e.code===`relink_required`}function En(e){return{walletId:e.walletId,factor:{kind:`passkey`,credentialIdB64u:e.credentialIdB64u},verifier:{kind:`webauthn`,rpId:e.rpId},bindingId:e.walletAuthMethodId}}function Dn(e){let t=String(e.providerSubjectId||``).trim();if(!t)throw new G(`active Email OTP method has no exact local factor`);let n=s({walletId:e.authMethod.walletId,factor:{kind:`email_otp`,provider:t.startsWith(`google:`)?`google`:`email`,providerUserId:t},verifier:{kind:`email_otp_wallet_auth_method`,emailHashHex:e.authMethod.emailHashHex},bindingId:e.authMethod.walletAuthMethodId});if(!n)throw new G(`active Email OTP method has no exact local factor`);return n}function On(e){let t=e.localMethods.filter(t=>t.kind===`email_otp`&&t.status===`active`&&t.walletId===e.authMethod.walletId&&t.emailHashHex===e.authMethod.emailHashHex),n=t[0],r=n?s(n.authority):null;if(t.length!==1||!r||r.walletId!==e.authMethod.walletId||r.bindingId!==e.authMethod.walletAuthMethodId||r.verifier.emailHashHex!==e.authMethod.emailHashHex)throw new G(`active Email OTP method has no exact local factor`);return r}async function kn(e){let t=String(e.authMethod.walletId);try{return On({authMethod:e.authMethod,localMethods:await e.stores.listWalletAuthMethodsForWallet(t)})}catch(n){if(!e.stores.readEmailOtpProviderSubjectForWallet)throw n;let r=await e.stores.readEmailOtpProviderSubjectForWallet(t);if(!r)throw n;return Dn({authMethod:e.authMethod,providerSubjectId:r})}}function An(e){if(e.authority.walletId!==e.authMethod.walletId||e.authority.bindingId!==e.authMethod.walletAuthMethodId)throw new G(`active wallet auth method does not have an exact factor authority binding`);return e.authority}async function jn(e){return e.authMethod.kind===`passkey`?An({authMethod:e.authMethod,authority:En(e.authMethod)}):An({authMethod:e.authMethod,authority:await kn({authMethod:e.authMethod,stores:e.stores})})}function Mn(e){return{auth:{kind:`passkey`,rpId:A(e.authMethod.rpId),credentialIdB64u:e.authMethod.credentialIdB64u},signerSlot:e.signerSlot}}function Nn(e){return{auth:{kind:`passkey`,rpId:A(e.authMethod.rpId),credentialIdB64u:e.authMethod.credentialIdB64u},keyFamily:`ecdsa`}}function Pn(e){if(e.factorAuthority.walletId!==e.authMethod.walletId||e.factorAuthority.bindingId!==e.authMethod.walletAuthMethodId||e.factorAuthority.verifier.emailHashHex!==e.authMethod.emailHashHex||e.authorityRef.walletId!==e.authMethod.walletId||e.authorityRef.walletAuthMethodId!==e.authMethod.walletAuthMethodId)throw new G(`linked Email OTP authority does not match the selected V2 method`);return{auth:{kind:`email_otp`,providerSubjectId:String(e.factorAuthority.factor.providerUserId)},ownerAuthority:{walletAuthMethodId:e.authorityRef.walletAuthMethodId,authorityDigest:e.authorityRef.authorityDigest}}}async function Fn(e){let t=await e.stores.getWalletPasskeyAuthenticator({walletId:String(e.authMethod.walletId),credentialId:e.authMethod.credentialIdB64u});if(!t||t.credentialId!==e.authMethod.credentialIdB64u)throw new G(`active Passkey auth method has no exact local authenticator`);let n=xe(t.signerSlot,{min:1});if(n===null)throw new G(`local authenticator signer slot is invalid`);return Mn({authMethod:e.authMethod,signerSlot:n})}async function In(e){if(e.authMethod.kind===`passkey`)return await Fn({authMethod:e.authMethod,stores:e.stores});let t=await kn({authMethod:e.authMethod,stores:e.stores}),n=await y({authority:t});return{auth:{kind:`email_otp`,providerSubjectId:String(t.factor.providerUserId)},ownerAuthority:{walletAuthMethodId:n.walletAuthMethodId,authorityDigest:n.authorityDigest}}}function Ln(e){return e.kind===`resolved`&&e.authMethod.status===`active`&&e.authority.state===`active`}function Rn(e){if(e.selectedAuthMethod.kind!==`email_otp`||e.runtime.kind!==`exact_ecdsa_sealed_runtime_v1`||e.runtime.authBinding.kind!==`email_otp`||e.operationCredential.token.trim().length===0||e.runtime.sealedRecord.thresholdSessionId.trim().length===0)throw Error(`Exact Email OTP ECDSA signing-session authorization is incomplete`);return{kind:`signing_session`,operationCredential:e.operationCredential,thresholdSessionId:e.runtime.sealedRecord.thresholdSessionId,curve:`ecdsa`,chainTarget:e.runtime.chainTarget}}async function zn(e,t){if(t.runtime.kind!==`exact_ecdsa_sealed_runtime_v1`||t.runtime.walletId!==t.walletId||!T(t.runtime.chainTarget,t.chainTarget)||!n(t.runtime.materialActivation,t.manifest.activation.materialActivation)||t.manifest.signer.walletId!==t.walletId||t.runtime.authBinding.kind!==`email_otp`)return null;let r;try{r=await y({authority:t.runtime.authBinding.emailOtpAuthority})}catch{return null}let i=t.manifest.signer.authority;if(r.walletId!==t.walletId||r.walletAuthMethodId!==i.walletAuthMethodId||r.authorityDigest!==i.authorityDigest||i.walletId!==t.walletId)return null;let a;try{a=await e.resolveSelectedWalletAuthority(String(t.walletId))}catch{return null}if(!Ln(a))return null;let{selection:o,authMethod:s,authority:c}=a,l=c.signerActivations.ecdsa;if(o.lockState!==`unlocked`||o.walletId!==t.walletId||s.kind!==`email_otp`||s.status!==`active`||s.walletId!==t.walletId||c.state!==`active`||c.walletId!==t.walletId||o.walletAuthMethodId!==s.walletAuthMethodId||s.walletAuthorityId!==c.authorityId||s.walletAuthMethodId!==r.walletAuthMethodId||!l||l.signer.walletId!==t.walletId||!n(l.materialActivation,t.runtime.materialActivation))return null;let u;try{u=await jn({authMethod:s,stores:e.factorStores})}catch{return null}if(!x(u,t.runtime.authBinding.emailOtpAuthority))return null;let d;try{d=await e.readExactWalletSessionAuthorization({walletId:t.walletId,authorityId:c.authorityId,authMethodId:s.walletAuthMethodId})}catch{return null}if(d.kind!==`found`)return null;let{record:f,operationCredential:p}=d;if(f.walletId!==t.walletId||f.authorityId!==c.authorityId||f.authMethodId!==s.walletAuthMethodId||f.authorityDigestB64u!==c.authorityDigestB64u||f.authorityRevocationEpoch!==c.revocationEpoch||f.expiresAtMs<=Date.now()||p.walletSessionId.trim().length===0||p.token.trim().length===0||f.capabilitySubjects.filter(e=>e.kind===`sign`&&e.keyFamily===`ecdsa_secp256k1`&&n(e.materialActivation,t.runtime.materialActivation)).length!==1)return null;try{return dn({capability:await hn({authority:t.runtime.authBinding.emailOtpAuthority,manifest:t.manifest,material:xn({authority:t.manifest.signer.authority,materialActivation:t.manifest.activation.materialActivation,publicFacts:t.manifest.durableMaterial.roleLocalPublicFacts})}),selected:a,session:f,operationCredential:p,runtime:t.runtime,nowMs:Date.now()})}catch{return null}}function K(e,t){try{e?.(be({...t,flowId:t.flowId??Bn(t)}))}catch{}}function Bn(e){let t=e.data||{};return[`signing`,String(t.chain||`evm_family`),String(t.networkKey||`unknown_network`),String(t.nonce||``)||String(e.phase)].join(`:`)}function Vn(e,t){K(e,t)}function Hn(e){if(Un())try{console.debug(`[SigningOperationMachine][evm-family]`,e)}catch{}}function Un(){try{return globalThis.localStorage?.getItem(`seams:debug:signing-operation`)===`1`}catch{return!1}}async function Wn(e){return await ut({...e,labels:{queue:`threshold ECDSA signing queue`,queuedOperation:`threshold ECDSA queued signing operation`},owner:String(e.walletId).trim()})}function Gn(e){let t=e.capability.authority;if(!p(t))throw Error(`[SigningEngine] Email OTP operation step-up requires an Email OTP capability authority`);if(e.claimedAuthority&&!x(t,e.claimedAuthority))throw Error(`[SigningEngine] Email OTP step-up authority does not match the selected capability`);if(!n(e.capability.manifest.activation.materialActivation,e.materialActivation))throw Error(`[SigningEngine] Email OTP step-up material activation does not match the selected capability`);let r=String(e.operationFingerprint||``).trim();if(!r)throw Error(`[SigningEngine] Email OTP operation step-up requires an operation fingerprint`);return{kind:`capability_step_up`,capabilityAuthority:t,materialActivation:e.materialActivation,operationFingerprint:r}}function Kn(e){switch(e.kind){case`live_session`:if(e.committedLane.authority.factor.kind!==`email_otp`)throw Error(`[SigningEngine][ecdsa] Email OTP challenge requires Email OTP authority`);return{kind:`live_session`,authLane:e.committedLane.authLane};case`capability_step_up`:return{kind:`capability_step_up`,capabilityAuthority:e.capabilityAuthority,materialActivation:e.materialActivation,operationFingerprint:e.operationFingerprint}}}function qn(e){let t=null;return{challenge:async()=>{if(typeof e.requestEmailOtpTransactionSigningChallenge!=`function`)throw Error(`[SigningEngine] Email OTP ECDSA signing step-up is not configured`);if(e.authority.kind===`capability_step_up`){if(t!==null&&t!==e.authority.operationFingerprint)throw Error(`[SigningEngine] Email OTP step-up challenge is bound to a different operation`);t=e.authority.operationFingerprint}Vn(e.onEvent,{phase:j.STEP_06_AUTH_EMAIL_OTP_CHALLENGE_STARTED,status:`running`,walletId:e.walletId,interaction:{kind:`none`,overlay:`none`}}),We(`evm-family`,Ke({event:`auth_side_effect_started`,lane:e.selectedLane,sideEffect:`email_otp_challenge`,phase:`confirmed`}));let n=await e.requestEmailOtpTransactionSigningChallenge({walletSession:e.walletSession,chain:e.chain,authority:Kn(e.authority),operationFingerprintDigest:e.operationFingerprintDigest}),r=String(n.challengeId||``).trim();if(!r)throw Error(`[SigningEngine] Email OTP challenge response did not include challengeId`);return Vn(e.onEvent,{phase:j.STEP_06_AUTH_EMAIL_OTP_INPUT_REQUIRED,status:`waiting_for_user`,walletId:e.walletId,interaction:{kind:`otp_input`,overlay:`show`},data:{emailHint:n.emailHint,demoOtpCode:De(n.delivery)}}),{challengeId:r,email:String(n.emailHint||``).trim()}}}}async function Jn(e,t){let n=await t.resolveActiveEcdsaCapabilityRuntime({walletId:e.walletId,chainTarget:e.chainTarget});n.kind!==`resolved`&&ze({kind:`auth_lane_missing`,source:`evm_signing_refresh`,expectedCurve:`ecdsa`});let r=await zn(t,{walletId:e.walletId,chainTarget:e.chainTarget,manifest:n.manifest,runtime:n.runtime});return r||ze({kind:`auth_lane_missing`,source:`evm_signing_refresh`,expectedCurve:`ecdsa`}),{manifest:n.manifest,runtime:n.runtime,authority:r}}async function Yn(e,t){let{authority:n}=await e.resolveSigningSessionAuth({walletId:t.walletSession.walletId,chainTarget:t.chainTarget});return await e.emailOtpSessions.requestTransactionSigningChallenge({kind:`wallet_session_challenge`,walletSession:t.walletSession,chain:t.chainTarget.kind,authLane:Rn(n)})}async function Xn(e){let t;try{t=await e.deps.resolveSigningSessionAuth({walletId:e.args.walletSession.walletId,chainTarget:e.args.chainTarget})}catch{throw Error(`[SigningEngine][ecdsa] Email OTP signing-session refresh material was superseded ${e.phase}`)}if(!n(t.runtime.materialActivation,e.activationBeforeRefresh))throw Error(`[SigningEngine][ecdsa] Email OTP signing-session refresh material was superseded ${e.phase}`);return t}async function Zn(e){let{manifest:t,runtime:n,authority:r}=await Xn({deps:e.deps,args:e.args,activationBeforeRefresh:e.activationBeforeRefresh,phase:`before use`}),i=Be({routeFamily:`signing_session`,authLane:Rn(r),operation:re}),a=le({keyHandle:fe(String(t.durableMaterial.roleLocalPublicFacts.keyHandle)),publicKeyB64u:n.thresholdEcdsaPublicKeyB64u,participantIds:[...n.participantIds],thresholdOwnerAddress:t.durableMaterial.roleLocalPublicFacts.ethereumAddress}),o=n.authBinding;if(o.kind!==`email_otp`)throw Error(`Email OTP signing-session refresh requires an Email OTP sealed runtime`);let s=await e.deps.emailOtpSessions.loginWithEcdsaCapabilityInternal({walletSession:e.args.walletSession,authoritySelector:{kind:`wallet_auth_method`,walletAuthMethodId:String((await y({authority:o.emailOtpAuthority})).walletAuthMethodId)},chainTarget:e.args.chainTarget,emailOtpAuthPolicy:`session`,emailOtpAuthReason:`sign`,challengeId:e.args.challengeId,otpCode:e.args.otpCode,operation:re,routePlan:i,publicFacts:a,ecdsaBootstrapAuthorization:{kind:`route_plan_auth`},providerIdentity:{kind:`explicit_provider_user`,provider:o.emailOtpAuthority.factor.provider,providerUserId:o.providerSubjectId},emailHashHex:o.emailHashHex,...typeof e.args.ttlMs==`number`?{ttlMs:e.args.ttlMs}:{},...typeof e.args.remainingUses==`number`?{remainingUses:e.args.remainingUses}:{},...n.runtimePolicyScope?{runtimePolicyScope:n.runtimePolicyScope}:{}});return await Xn({deps:e.deps,args:e.args,activationBeforeRefresh:e.activationBeforeRefresh,phase:`during refresh`}),s}async function Qn(e,t){let n=(await e.resolveSigningSessionAuth({walletId:t.walletSession.walletId,chainTarget:t.chainTarget})).runtime.materialActivation;return await e.withThresholdEcdsaSigningQueue({queueKey:dt({materialActivation:n}),walletId:t.walletSession.walletId,enabled:!0,task:Zn.bind(void 0,{deps:e,args:t,activationBeforeRefresh:n})})}function $n(e){return p(e.authority)}function er(e){let t=e.selection.committedLane;if(!$n(t))throw Error(`[SigningEngine][ecdsa] Email OTP step-up requires Email OTP authority`);return t.authLane?{kind:`live_session`,committedLane:t}:{kind:`capability_step_up`,capabilityAuthority:t.authority,materialActivation:t.authorization.runtime.materialActivation,operationFingerprint:`sha256:${String(e.operationFingerprintDigest)}`}}function tr(e){if(e.selection)return p(e.selection.committedLane.authority)?er({selection:e.selection,operationFingerprintDigest:e.operationFingerprintDigest}):void 0}async function nr(e){let t=C(e.walletSession.walletId),n=e.senderSignatureAlgorithm===`secp256k1`&&e.ecdsaAuthorization===`reusable_wallet_session`?e.preparedOperation:null,r=n?n.metadata:null,i=n?.lane,a=r?.selection,o=e.confirmedDeps,s=(e.ecdsaAuthorization===`operation_step_up`&&p(e.capability.authority)?Gn({capability:e.capability,materialActivation:e.materialActivation,operationFingerprint:e.operationFingerprint}):void 0)??(i&&Se(i.auth)===E.emailOtp?tr({selection:a,operationFingerprintDigest:e.operationFingerprintDigest}):void 0),c=s?qn({walletId:t,walletSession:e.walletSession,chain:e.chain,...i?{selectedLane:i}:{},authority:s,operationFingerprintDigest:e.operationFingerprintDigest,onEvent:e.onEvent,requestEmailOtpTransactionSigningChallenge:o.requestEmailOtpTransactionSigningChallenge}):null,l=we.TransactionSign,u=null,f;if(n){let e=n,r=e.signingSessionPlan;if(f=r,r.kind===Ce.NotReady)throw Error(`[SigningEngine] ECDSA signing session is not ready: ${r.reason}`);u=nt({plan:r,accountId:String(t),intent:l,curve:`ecdsa`,expiresAtMs:e.expiresAtMs,remainingUses:e.remainingUses})}let m=u?null:await v(),h=u||m.signingAuthPlan,g=m?.emailOtpAuthBridge||c;if(h.kind!==L.EmailOtpReauth||!g)return{signingAuthPlan:h,...f?{signingSessionPlan:f}:{}};let _=async()=>{let e=await g.challenge();return{challengeId:e.challengeId,...e.email?{emailHint:e.email}:{}}};return{signingAuthPlan:h,...f?{signingSessionPlan:f}:{},emailOtpSigning:{prepare:_,resend:async()=>await _()}};async function v(){if(e.ecdsaAuthorization===`operation_step_up`){if(d(e.capability.authority))return{signingAuthPlan:{kind:L.PasskeyReauth,method:`passkey`}};if(p(e.capability.authority)){if(!c)throw Error(`[SigningEngine] Email OTP step-up authority is unavailable for the selected capability`);return{signingAuthPlan:{kind:L.EmailOtpReauth,method:`email_otp`},emailOtpAuthBridge:c}}e.capability.authority}if(!(Array.isArray(e.accountAuth.linkedAuthMethods)?e.accountAuth.linkedAuthMethods:[]).includes(e.accountAuth.primaryAuthMethod))throw Error(`[SigningEngine] primary auth method is not linked: ${String(e.accountAuth.primaryAuthMethod||``)}`);if(e.accountAuth.primaryAuthMethod===E.passkey)return{signingAuthPlan:{kind:L.PasskeyReauth,method:`passkey`}};if(e.accountAuth.primaryAuthMethod===E.emailOtp){if(!c)throw Error(`[SigningEngine] Email OTP transaction signing requires ECDSA lane state`);return{signingAuthPlan:{kind:L.EmailOtpReauth,method:`email_otp`},emailOtpAuthBridge:c}}throw Error(`[SigningEngine] unsupported primary auth method: ${String(e.accountAuth.primaryAuthMethod||``)}`)}}function rr(e){switch(F(e)){case E.emailOtp:return E.emailOtp;case E.passkey:return E.passkey}throw Error(`[SigningEngine][ecdsa] unsupported ECDSA lane auth method`)}function ir(e,t){return{...e,primaryAuthMethod:t,linkedAuthMethods:Array.from(new Set([...e.linkedAuthMethods,t]))}}function ar(e){let t=e.chainTarget.kind===`tempo`?Ie:Le,n={key:e.key,materialActivation:e.materialActivation,keyHandle:e.keyHandle,walletId:e.walletId,chainTarget:e.chainTarget,authorization:e.authorization};return Kt({lane:t(e.auth.kind===`email_otp`?{...n,auth:e.auth,retention:`session`,sessionOrigin:`per_operation`}:{...n,auth:e.auth,storageSource:`manual-bootstrap`}),chain:e.chain,context:`build exact ECDSA candidate signing lane`})}function or(e){return{authMethod:rr(e),chain:e.chain,chainTarget:e.chainTarget,state:e.state,walletSessionId:e.authorization.operationCredential.walletSessionId,materialActivationId:e.materialActivation.activationId,remainingUses:e.authorization.runtime.remainingUses,expiresAtMs:e.authorization.runtime.expiresAtMs}}function q(e){return{...or(e),source:`canonical_capability`}}function sr(e){return e.selectedAuthMethod.kind===`email_otp`&&e.runtime.authBinding.kind===`email_otp`}function cr(e){return e.runtime.kind===`exact_ecdsa_direct_capability_runtime_v1`}function lr(e){return e.runtime.kind===`exact_ecdsa_sealed_runtime_v1`}function ur(e){if(e.auth.kind!==`passkey`)throw Error(`[SigningEngine][ecdsa] passkey committed lane requires passkey candidate`);return{...e,auth:e.auth}}function dr(e){let t=String(e.authority.walletId);if(!(String(e.lane.key.walletId)===t&&String(e.candidate.walletId)===t))throw Error(`[SigningEngine][ecdsa] ${e.context} committed lane authority wallet mismatch`)}function fr(e){return{selectedLaneCandidate:q(e.candidate)}}async function pr(e){let t=ur(e.candidate),n=(await e.deps.resolveCanonicalEcdsaSigningCapability({walletId:t.walletId,chainTarget:t.chainTarget,materialActivation:t.materialActivation})).authority;if(!d(n)||String(n.verifier.rpId)!==String(t.auth.rpId)||n.factor.credentialIdB64u!==t.auth.credentialIdB64u)throw Error(`[SigningEngine][ecdsa] exact Passkey capability authority changed`);return dr({authority:n,lane:e.lane,candidate:t,context:`Passkey`}),{lane:e.lane,authority:n,authorization:e.lane.authorization}}async function mr(e){let t=P(e.lane),n=await e.deps.resolveDurableEmailOtpEcdsaSigningSessionAuthority({lane:t,chain:e.lane.chainTarget.kind});return n?sr(n)?{kind:`durable_authority_backed`,authorization:n}:null:(U(`Email OTP exact ECDSA authority not found`,{lane:H(e.lane),candidate:q(e.candidate)}),null)}function hr(e){if(e.authority)return e.authority;throw U(`Email OTP exact ECDSA signing-session authority missing`,{lane:H(e.lane),candidate:q(e.candidate)}),Error(`Email OTP ECDSA committed lane is missing wallet-session authority; unlock wallet again`)}function gr(e){let t=Rn(e.authority.authorization);if(t.kind===`signing_session`&&t.curve===`ecdsa`&&T(t.chainTarget,e.lane.chainTarget))return t;throw U(`Email OTP ECDSA committed lane rejected for authority shape`,{authorityKind:t.kind,authorityCurve:t.kind===`signing_session`?t.curve:null,lane:H(e.lane),candidate:q(e.candidate)}),Error(`Email OTP ECDSA committed lane authority is not an ECDSA signing session; unlock wallet again`)}function _r(e){if(e.committedLane&&e.committedLane.authority.factor.kind===e.expectedFactor)return e.committedLane;throw U(`ECDSA committed lane missing for ready signing`,{expectedFactor:e.expectedFactor,lane:H(e.lane),candidate:q(e.candidate)}),Error(`[SigningEngine][ecdsa] committed lane is unavailable for ready signing`)}function vr(e){let t=e.authority.authorization;if(t.runtime.authBinding.kind!==`email_otp`)throw Error(`[SigningEngine][ecdsa] Email OTP authority runtime binding is invalid`);let n=t.runtime.authBinding.emailOtpAuthority;if(dr({authority:n,lane:e.lane,candidate:e.candidate,context:`Email OTP`}),cr(t))return{lane:e.lane,authority:n,authorization:t};if(lr(t))return{lane:e.lane,authority:n,authorization:t,authLane:gr({authority:e.authority,lane:e.lane,candidate:e.candidate})};throw Error(`[SigningEngine][ecdsa] Email OTP authorization runtime is unsupported`)}async function yr(e){let t=ar(e.laneCandidate),n=t,r=rr(e.laneCandidate),i=r===E.emailOtp?await mr({deps:e.deps,lane:n,candidate:e.laneCandidate}):null,a=r===E.emailOtp?hr({authority:i,lane:n,candidate:e.laneCandidate}):null,o=r===E.emailOtp&&a?vr({authority:a,lane:n,candidate:e.laneCandidate}):null,s=r===E.passkey?await pr({deps:e.deps,lane:t,candidate:e.laneCandidate}):null,c=o??s,l=c?.authority.factor.kind,u=ir(await Jt({senderSignatureAlgorithm:e.senderSignatureAlgorithm,signerAuthMethod:l??r}),r),d=fr({candidate:e.laneCandidate});return{kind:`ready`,accountAuth:u,lane:t,committedLane:_r({committedLane:c,expectedFactor:r,lane:t,candidate:e.laneCandidate}),diagnostics:d}}function br(e){let t={walletId:e.walletId,curve:`ecdsa`,authSelectionPolicy:e.authSelectionPolicy,operationUsesNeeded:e.operationUsesNeeded,...e.operationId?{operationId:e.operationId}:{}};return e.signingTarget.kind===`tempo`?{...t,chain:`tempo`,chainTarget:e.signingTarget}:{...t,chain:`evm`,chainTarget:e.signingTarget}}function xr(e){return{kind:`account_class`,authMethod:e.candidateAuthMethod}}function Sr(e){let t=new Set;for(let n of pt(e.availableLanes,e.signingTarget))mt(n)&&T(n.chainTarget,e.signingTarget)&&t.add(_t(n));if(t.size!==1)throw Error(`[SigningEngine][ecdsa] exact capability authority is unavailable or ambiguous`);return Array.from(t)[0]}function Cr(e){if(!e)return{present:!1};if(!mt(e))return{present:!0,curve:e.curve,chain:e.chainTarget.kind,chainTarget:e.chainTarget,state:e.state};let t=ce({walletId:e.key.walletId,publicFacts:e.publicFacts});return{present:!0,authMethod:_t(e),curve:e.curve,chain:e.chainTarget?.kind,chainTarget:e.chainTarget,...t?{evmFamilyKeyFingerprint:t}:{},state:e.state,source:e.source,walletSessionId:e.authorization?.operationCredential.walletSessionId,materialActivationId:e.materialActivation.activationId,remainingUses:e.remainingUses,expiresAtMs:e.expiresAtMs}}function wr(e){return Object.fromEntries(Object.entries(e.ecdsa.candidatesByTarget).map(([e,t])=>[e,t.map(e=>Cr(e))]))}function Tr(e,t){try{console.warn(e,JSON.stringify(t,null,2))}catch{try{console.warn(e,t)}catch{}}}function Er(e){return Object.fromEntries(Object.entries(e.ecdsa.lanesByTarget).map(([e,t])=>[e,Cr(t)]))}function Dr(e){return e?{present:!0,authMethod:F(e),curve:e.curve,chain:e.chainTarget.kind,chainTarget:e.chainTarget,state:e.state,source:e.source,materialActivationId:e.materialActivation.activationId,authorizationState:e.authorizationState,...e.authorizationState===`authorized`?{walletSessionId:e.authorization.operationCredential.walletSessionId,remainingUses:e.authorization.runtime.remainingUses,expiresAtMs:e.authorization.runtime.expiresAtMs}:{}}:{present:!1}}function Or(e,t){let n=e.session,r=t.session;return e.selectedAuthority.authorityId===t.selectedAuthority.authorityId&&e.selectedAuthMethod.kind===t.selectedAuthMethod.kind&&e.selectedAuthMethod.walletAuthMethodId===t.selectedAuthMethod.walletAuthMethodId&&n.walletId===r.walletId&&n.authorityId===r.authorityId&&n.authMethodId===r.authMethodId&&n.authorizationId===r.authorizationId&&n.quotaId===r.quotaId&&n.authorityDigestB64u===r.authorityDigestB64u&&n.authorityRevocationEpoch===r.authorityRevocationEpoch&&e.operationCredential.walletSessionId===t.operationCredential.walletSessionId&&e.operationCredential.token===t.operationCredential.token&&ln(e.runtime,t.runtime)}function kr(e){let t=e.candidate,n=F(t),r=e.selection.committedLane.authority.factor.kind;if(n!==r)throw Error(`[SigningEngine][ecdsa] prepared auth method ${n} did not match committed lane auth method ${r}`);let i=Se(e.selection.lane.auth);if(i!==r)throw Error(`[SigningEngine][ecdsa] selected lane auth method ${i} did not match committed lane auth method ${r}`);if(!Or(t.authorization,e.selection.lane.authorization))throw Error(`[SigningEngine][ecdsa] prepared authorization did not match lane`);if(M(P(e.selection.committedLane.lane))!==M(P(e.selection.lane)))throw Error(`[SigningEngine][ecdsa] committed lane did not match selected lane`)}function Ar(e){let t=e.diagnostics.selectedLaneCandidate.state,{expiresAtMs:n,remainingUses:r}=e.lane.authorization.runtime;return t===`expired`?{readiness:{status:`expired`,curve:`ecdsa`,materialActivation:e.lane.materialActivation,authorization:e.lane.authorization,expiresAtMs:n},expiresAtMs:n,remainingUses:r}:t===`exhausted`?{readiness:{status:`exhausted`,curve:`ecdsa`,materialActivation:e.lane.materialActivation,authorization:e.lane.authorization,expiresAtMs:n,remainingUses:r},expiresAtMs:n,remainingUses:r}:{readiness:{status:`ready`,curve:`ecdsa`,materialActivation:e.lane.materialActivation,authorization:e.lane.authorization,expiresAtMs:n,remainingUses:r},expiresAtMs:n,remainingUses:r}}function jr(e){let t=e.preparedOperation.operation;if(!t)throw Error(`[SigningEngine][ecdsa] prepared material requires an operation identity`);if(e.metadata.materialBinding.operationId!==t.operationId)throw Error(`[SigningEngine][ecdsa] prepared material operation identity mismatch`);if(e.metadata.materialBinding.operationFingerprint&&t.operationFingerprint&&e.metadata.materialBinding.operationFingerprint!==t.operationFingerprint)throw Error(`[SigningEngine][ecdsa] prepared material fingerprint mismatch`);let n=M(Pe(e.preparedOperation.lane));if(e.metadata.materialBinding.laneIdentityKey!==n)throw Error(`[SigningEngine][ecdsa] prepared material lane identity mismatch`)}async function Mr(e){let t=e.signingTarget,n=t.kind,r=C(e.walletSession.walletId),i=await e.deps.resolveOwnerLaneScope(r),a=await e.deps.readAvailableSigningLanesForSigning({walletId:r,curve:`ecdsa`,ecdsaChainTargets:[t],ownerScope:i}),o={walletId:r,chain:n,chainTarget:t,targetKey:w(t),candidateCount:pt(a,t).length,selectedLanesByTarget:Er(a),candidatesByTarget:wr(a)};o.candidateCount===0&&Tr(`[ECDSA_LANE_READ_DIAGNOSTIC][no-candidates]`,o),I(`evm-family`,{stage:`ecdsa_prepare.available_lanes_read`,...o});let s=Sr({availableLanes:a,signingTarget:e.signingTarget}),c=br({walletId:r,authSelectionPolicy:xr({candidateAuthMethod:s}),operationUsesNeeded:1,signingTarget:e.signingTarget,...e.signingOperation.operationId?{operationId:e.signingOperation.operationId}:{}}),l=ht({intent:c,availableLanes:a});if(I(`evm-family`,{stage:`ecdsa_prepare.material_candidate_selected`,walletId:r,chain:n,chainTarget:t,primaryAuthMethod:l.ok?F(l.candidate):s,selectionOk:l.ok,...l.ok?{authorizationState:l.kind,selectedAvailableLane:Cr(l.availableLane),selectedLaneCandidate:Dr(l.candidate),...l.kind===`authorized`?{transactionLane:l.lane}:{}}:{failure:l.failure}}),!l.ok){let e={stage:`ecdsa_prepare.exact_material_candidate_missing`,walletId:r,chain:n,chainTarget:t,targetKey:w(t),primaryAuthMethod:s,candidateCount:o.candidateCount,ecdsaTargets:a.ecdsa.targets,selectedLanesByTarget:o.selectedLanesByTarget,candidatesByTarget:o.candidatesByTarget,selectionFailure:l.failure};throw Tr(`[ECDSA_NO_LANE_DIAGNOSTIC]`,e),Ue(`evm-family`,e),Error(`[SigningEngine][ecdsa] transaction signing requires exact ECDSA material for ${n}`)}if(l.kind===`authorization_required`){let t=l.candidate;return e.diagnostics.selection={kind:`authorization_required`,authMethod:_t(l.availableLane),candidate:Dr(t)},{kind:`authorization_required`,authMethod:_t(l.availableLane),availableLanesGeneration:a.generation,identity:Ne({signer:Fe({walletId:t.walletId,chainTarget:t.chainTarget,keyHandle:t.keyHandle,key:t.key,materialActivation:t.materialActivation}),auth:t.auth}),candidate:t,intent:c}}let u=l.candidate,d=l.lane,f=await gt({intent:c,coordinator:e.signingSessionCoordinator,operation:e.signingOperation,forceFreshAuth:e.forceFreshAuth===!0,missingWhenExpiresAtMissing:!0,onPlannerTrace:e=>He(`evm-family`,e),lifecycleAdapter:{prepare:async()=>{let i=await yr({deps:e.deps,walletId:r,chainTarget:t,senderSignatureAlgorithm:`secp256k1`,laneCandidate:u});I(`evm-family`,{stage:`ecdsa_prepare.material_selected`,walletId:r,chain:n,chainTarget:t,selectionKind:i.kind,authMethod:i.committedLane.authority.factor.kind,lane:H(i.lane),diagnostics:i.diagnostics});let o=i.committedLane.authority.factor.kind;Ge(`evm-family`,i.lane,{reason:`evm_family_ecdsa_selection`}),e.diagnostics.selection={kind:i.kind,authMethod:o,lane:H(i.lane),diagnostics:i.diagnostics};let s=Kt({lane:i.lane,chain:n,context:`EVM-family signing preparation`,diagnostics:e.diagnostics});kr({candidate:u,selection:i});let l=Ar(i);return I(`evm-family`,{stage:`ecdsa_prepare.readiness`,walletId:r,chain:n,chainTarget:t,authMethod:o,lane:H(s),readinessStatus:l.readiness.status}),We(`evm-family`,Ke({event:`pre_confirm_readiness_checked`,lane:s,readinessStatus:l.readiness.status,phase:`pre_confirm`})),{lane:s,transactionLane:d,transactionIntent:c,readiness:{readiness:l.readiness,expiresAtMs:l.expiresAtMs,remainingUses:l.remainingUses},availableLanesGeneration:a.generation,metadata:{accountAuth:i.accountAuth,authMethod:o,source:i.diagnostics.selectedLaneCandidate.source,selection:i,materialBinding:{operationId:e.signingOperation.operationId,...e.signingOperation.operationFingerprint?{operationFingerprint:e.signingOperation.operationFingerprint}:{},laneIdentityKey:M(Pe(s))},availableLanesGeneration:a.generation}}}}}),p=f.thresholdOperation,m=p.metadata;return jr({metadata:m,preparedOperation:p}),{kind:`authorized`,accountAuth:m.accountAuth,authMethod:m.authMethod,source:m.source,selection:m.selection,availableLanesGeneration:m.availableLanesGeneration,signingLane:p.lane,preparedOperation:p,transactionOperation:f.transactionOperation}}function J(e){let t=e.signedResult.managedNonce;if(!t||typeof t!=`object`)throw Error(`[SigningEngine][evm-family] managedNonce is required for nonce lifecycle`);try{let n=bt(t);return e.walletId,n}catch(e){throw Error(`[SigningEngine][evm-family] invalid managedNonce: ${e instanceof Error?e.message:String(e||`unknown error`)}`)}}async function Nr(e,t){let n=Y(t);await e.nonceCoordinator.release({...n,reason:`signing_failed`})}function Pr(e){return{chainNextNonce:e.chainNextNonce.toString(),unresolvedInFlightNonces:e.unresolvedInFlightNonces.map(e=>e.toString()),blocked:e.blocked,...e.blockedNonce==null?{}:{blockedNonce:e.blockedNonce.toString()}}}async function Fr(e,t){let n=J({signedResult:t.signedResult,walletId:t.walletId});K(t.onEvent,{walletId:t.walletId,phase:j.STEP_12_BROADCAST_ACCEPTED,status:`running`,message:`Marking managed nonce lane as in-flight`,data:{chain:n.chainTarget.kind,networkKey:n.chainTarget.networkSlug,chainId:n.chainTarget.chainId.toString(),nonce:n.nonce.toString()}});let r=Ir(t.txHash||(t.signedResult.chain===`evm`?t.signedResult.txHashHex:void 0));await e.nonceCoordinator.markBroadcastAccepted({...Y(n),txHash:r}),K(t.onEvent,{walletId:t.walletId,phase:j.STEP_12_BROADCAST_ACCEPTED,status:`succeeded`,message:`Managed nonce lane marked in-flight`,data:{chain:n.chainTarget.kind,networkKey:n.chainTarget.networkSlug,chainId:n.chainTarget.chainId.toString(),nonce:n.nonce.toString(),txHash:r}})}function Ir(e){let t=String(e||``).trim().toLowerCase();if(!/^0x[0-9a-f]{64}$/.test(t))throw Error(`[SigningEngine][evm-family] broadcast acceptance requires txHash`);return t}async function Lr(e,t){let n=J({signedResult:t.signedResult,walletId:t.walletId});K(t.onEvent,{walletId:t.walletId,phase:j.STEP_12_BROADCAST_REJECTED,status:`running`,message:`Marking managed nonce reservation rejected`,data:{chain:n.chainTarget.kind,networkKey:n.chainTarget.networkSlug,chainId:n.chainTarget.chainId.toString(),nonce:n.nonce.toString()}}),await e.nonceCoordinator.markBroadcastRejected({...Y(n),error:t.error});let r=Ut({error:t.error,chain:n.chainTarget.kind,networkKey:n.chainTarget.networkSlug,chainId:n.chainTarget.chainId});if(K(t.onEvent,{walletId:t.walletId,phase:j.STEP_12_BROADCAST_REJECTED,status:`failed`,message:`Managed nonce reservation marked rejected`,data:{chain:n.chainTarget.kind,networkKey:n.chainTarget.networkSlug,chainId:n.chainTarget.chainId.toString(),nonce:n.nonce.toString()}}),!Wt(r)&&!Gt(r))return;K(t.onEvent,{walletId:t.walletId,phase:j.STEP_13_NONCE_RECONCILE_STARTED,status:`running`,message:`Reconciling managed nonce lane after broadcast error`,data:{chain:n.chainTarget.kind,networkKey:n.chainTarget.networkSlug,chainId:n.chainTarget.chainId.toString(),nonce:n.nonce.toString(),errorCode:V(r)}});let i=await e.nonceCoordinator.reconcile({lane:Me(n)}).catch(()=>null);throw K(t.onEvent,{walletId:t.walletId,phase:j.STEP_13_NONCE_RECONCILE_SUCCEEDED,status:`succeeded`,message:`Managed nonce lane reconciled`,data:{chain:n.chainTarget.kind,networkKey:n.chainTarget.networkSlug,chainId:n.chainTarget.chainId.toString(),...i?{laneStatus:Pr(i)}:{}}}),r}async function Rr(e,t){t.receiptStatus;let n=J({signedResult:t.signedResult,walletId:t.walletId}),r=t.txHash||(t.signedResult.chain===`evm`?t.signedResult.txHashHex:void 0);await e.nonceCoordinator.markFinalized({...Y(n),...r?{txHash:r}:{}})}async function zr(e,t){let n=J({signedResult:t.signedResult,walletId:t.walletId});K(t.onEvent,{walletId:t.walletId,phase:t.reason===`replaced`?j.STEP_13_TRANSACTION_REPLACED:j.STEP_13_TRANSACTION_DROPPED,status:`running`,message:t.reason===`replaced`?`Marking managed nonce lane replaced`:`Marking managed nonce lane dropped`,data:{chain:n.chainTarget.kind,networkKey:n.chainTarget.networkSlug,chainId:n.chainTarget.chainId.toString(),nonce:n.nonce.toString(),reason:t.reason,...t.txHash?{txHash:t.txHash}:{}}}),await e.nonceCoordinator.markDroppedOrReplaced({...Y(n),reason:t.reason,...t.txHash?{txHash:t.txHash}:{}}),K(t.onEvent,{walletId:t.walletId,phase:t.reason===`replaced`?j.STEP_13_TRANSACTION_REPLACED:j.STEP_13_TRANSACTION_DROPPED,status:t.reason===`replaced`?`succeeded`:`failed`,message:t.reason===`replaced`?`Managed nonce lane marked replaced`:`Managed nonce lane marked dropped`,data:{chain:n.chainTarget.kind,networkKey:n.chainTarget.networkSlug,chainId:n.chainTarget.chainId.toString(),nonce:n.nonce.toString(),reason:t.reason,...t.txHash?{txHash:t.txHash}:{}}})}async function Br(e,t){let n=J({signedResult:t.signedResult,walletId:t.walletId});K(t.onEvent,{walletId:t.walletId,phase:j.STEP_13_NONCE_RECONCILE_STARTED,status:`running`,message:`Reconciling managed nonce lane`,data:{chain:n.chainTarget.kind,networkKey:n.chainTarget.networkSlug,chainId:n.chainTarget.chainId.toString()}});let r=await e.nonceCoordinator.reconcile({lane:Me(n)}),i=Pr(r);if(K(t.onEvent,{walletId:t.walletId,phase:j.STEP_13_NONCE_RECONCILE_SUCCEEDED,status:`succeeded`,message:`Managed nonce lane reconciled`,data:{chain:n.chainTarget.kind,networkKey:n.chainTarget.networkSlug,chainId:n.chainTarget.chainId.toString(),laneStatus:i}}),r.blocked)throw Bt({chain:n.chainTarget.kind,networkKey:n.chainTarget.networkSlug,chainId:n.chainTarget.chainId,blockedNonce:String(i.blockedNonce||`unknown`)});return i}function Y(e){let t=String(e.leaseId||``).trim(),n=String(e.operationId||``).trim(),r=String(e.operationFingerprint||``).trim();if(!t||!n||!r)throw Error(`[SigningEngine][evm-family] managedNonce lease metadata is required`);return{leaseId:t,operationId:n,operationFingerprint:r}}function Vr(e){let t=String(e||``).trim().toLowerCase();if(/^0x[0-9a-f]{40}$/.test(t))return t}function Hr(e){if(`chainId`in e)return typeof e.chainId==`number`?e.chainId:void 0}function Ur(e){return String(ne(e.network))===`evm`}function Wr(e){return String(ne(e.network))===`tempo`}function Gr(e){let t=qr(e);if(t)return t;let n=e.request.tx.chainId;throw Error(`[SigningEngine] unable to resolve nonce network for ${e.request.chain} chainId=${String(n)} from configured chains`)}function Kr(e){return qr(e)||`${e.request.chain}:${String(e.request.tx.chainId)}`}function qr(e){let t=e.request.tx.chainId,n=e.configs.network.chains.filter(e=>{let n=Hr(e);return typeof n==`number`&&n===t});if(!n.length)return null;if(e.request.chain===`tempo`){let t=n.filter(e=>Wr(e));if(t.length===1)return t[0].network;if(t.length>1){let n=t.map(e=>e.network).join(`, `);throw Error(`[SigningEngine] ambiguous nonce network for tempo chainId=${String(e.request.tx.chainId)} across [${n}]`)}return null}let r=n.filter(e=>Ur(e));if(r.length===1)return r[0].network;if(r.length>1){let t=r.map(e=>e.network).join(`, `);throw Error(`[SigningEngine] ambiguous nonce network for evm chainId=${String(e.request.tx.chainId)} across [${t}]`)}let i=n.filter(e=>Wr(e));if(i.length===1)return i[0].network;if(i.length>1){let t=i.map(e=>e.network).join(`, `);throw Error(`[SigningEngine] ambiguous nonce network for evm->tempo chainId=${String(e.request.tx.chainId)} across [${t}]`)}return null}function Jr(e){return{kind:`threshold_owner`,thresholdOwnerAddress:e}}function Yr(e){return{kind:`chain_account`,chainAccountAddress:e}}function Xr(e){switch(e.kind){case`threshold_owner`:return e.thresholdOwnerAddress;case`chain_account`:return e.chainAccountAddress;default:return e}}async function Zr(e){let t=(await e.deps.walletSignerStore.getActiveWalletSignerForChainTarget({walletId:e.walletId,chainTarget:e.chainTarget}))?.metadata||{},n=Vr(t.thresholdOwnerAddress);if(n)return Jr(n);let r=Vr(t.accountAddress);if(r)return Yr(r);let i=ie(e.chainTarget);throw Error(`[SigningEngine] unable to resolve managed nonce wallet signer for ${e.walletId} (${i})`)}async function Qr(e){return Xr(e.senderIdentity)}async function $r(e){let t=await Qr({senderIdentity:e.senderIdentity});return St({chain:`evm`,networkKey:Gr({configs:e.deps.seamsWebConfigs,request:e.request}),chainId:e.request.tx.chainId,sender:t,walletId:e.walletId})}async function ei(e){let t=e.reservationInput,n;try{n=Ae(await e.deps.nonceCoordinator.reserve({lane:je(t),operation:e.operation}))}catch(e){throw Ut({error:e,chain:`evm`,networkKey:t.chainTarget.networkSlug,chainId:t.chainTarget.chainId})}return{request:{...e.request,tx:{...e.request.tx,nonce:n.nonce}},reservation:n}}async function ti(e){let t=await Qr({senderIdentity:e.senderIdentity}),n=St({chain:`tempo`,networkKey:Gr({configs:e.deps.seamsWebConfigs,request:e.request}),chainId:e.request.tx.chainId,sender:t,nonceKey:e.request.tx.nonceKey,walletId:e.walletId}),r;try{r=Ae(await e.deps.nonceCoordinator.reserve({lane:je(n),operation:e.operation}))}catch(e){throw Ut({error:e,chain:`tempo`,networkKey:n.chainTarget.networkSlug,chainId:n.chainTarget.chainId})}return{request:{...e.request,tx:{...e.request.tx,nonce:r.nonce}},reservation:r}}function ni(e){if(e.state.kind!==`not_required`)return Jr(e.state.thresholdOwnerAddress)}function ri(e){if(e.state.kind===`not_required`)throw Error(`[SigningEngine][evm-family] raw EIP-1559 signing requires prepared threshold ECDSA owner address for ${e.walletId}`);return Jr(e.state.thresholdOwnerAddress)}function ii(e){return Zr({deps:e.deps,walletId:e.walletId,chainTarget:e.chainTarget})}async function ai(e,t){let n=e.deps.nonceCoordinator.recoverDurableLeases({walletId:e.walletId});n.catch(()=>{});let r=await t.loadSigner();try{return await r({...e.flowArgs,authorization:e.flowArgs.authorization??{kind:`owner`},request:e.request,onConfirmationDisplayed:e.onConfirmationDisplayed,thresholdEcdsaStepUp:e.thresholdEcdsaStepUp,prepareRequestWithManagedNonce:async()=>(await n,await t.prepareRequestWithManagedNonce({deps:e.deps,walletId:e.walletId,request:e.request,nonceOperation:e.nonceOperation})),releaseNonceReservation:async t=>{await Nr(e.deps,t)}})}catch(n){let r=await e.retryWithFreshEmailOtpAuth(n);if(r)return r;throw Ut({error:n,chain:t.targetKind,networkKey:Kr({configs:e.deps.seamsWebConfigs,request:e.request}),chainId:e.chainTarget.chainId})}}async function oi(e){if(e.chainTarget.kind===`evm`||e.request.kind===`eip1559`){let t=null,n=null,r=e.request.kind===`eip1559`?ri({state:e.thresholdEcdsaState,walletId:e.walletId}):void 0,i=ni({state:e.thresholdEcdsaState}),a=t=>{let a=r||i;return a?Promise.resolve(a):(n||=ii({deps:t.deps,walletId:t.walletId,chainTarget:e.chainTarget}),n)},o=e=>(t||=a(e).then(t=>$r({deps:e.deps,walletId:e.walletId,request:e.request,senderIdentity:t})),t),s=e.chainTarget.kind;return await ai({...e,request:e.request},{targetKind:s,loadSigner:s===`tempo`?Je:Ye,prepareRequestWithManagedNonce:async e=>{let t=await o(e);return await ei({deps:e.deps,request:e.request,reservationInput:t,operation:e.nonceOperation})}})}let t=null,n=ni({state:e.thresholdEcdsaState}),r=r=>n?Promise.resolve(n):(t||=ii({deps:r.deps,walletId:r.walletId,chainTarget:e.chainTarget}),t);return await ai({...e,request:e.request},{targetKind:`tempo`,loadSigner:Je,prepareRequestWithManagedNonce:async e=>{let t=await r(e);return await ti({deps:e.deps,walletId:e.walletId,request:e.request,operation:e.nonceOperation,senderIdentity:t})}})}function si(e){let t=b(e.routerAbState);return{kind:`router_ab_ecdsa_derivation_signing_material_ref_v1`,activeStateId:l(t),ecdsaThresholdKeyId:ve(t.scope.ecdsa_threshold_key_id),clientVerifier33B64u:_e(t.scope.public_identity.derivation_client_share_public_key33_b64u),serverVerifier33B64u:t.scope.public_identity.server_public_key33_b64u,thresholdVerifier33B64u:t.scope.public_identity.threshold_public_key33_b64u}}async function ci(e){return Cn({purpose:`transaction_signing`,source:Sn(e.persistedMaterial),workerCtx:e.workerCtx})}async function li(e){let t=e.capability,r=t.manifest,i=t.material,a=e.runtime,o=i.publicFacts;if(!n(e.materialActivation,r.activation.materialActivation))return{kind:`unavailable`,reason:`material_activation_mismatch`};if(!n(a.materialActivation,r.activation.materialActivation))return{kind:`unavailable`,reason:`runtime_correlation_mismatch`};let s=r.signer.scope.targetMemberships.some(e=>T(e,o.chainTarget)),c=r.signer.scope.targetMemberships.find(t=>T(t,e.chainTarget));if(!s||!c||!T(a.chainTarget,c))return{kind:`unavailable`,reason:`chain_mismatch`};let u=Oe({publicFacts:o,chainTarget:c});if(!a.runtimePolicyScope)return{kind:`unavailable`,reason:`runtime_policy_scope_missing`};let d=await ci({persistedMaterial:i,workerCtx:e.workerCtx}),f;switch(d.kind){case`rehydrated`:f=d;break;case`device_link_required`:return{kind:`unavailable`,reason:`device_link_required`};case`corrupt`:return{kind:`unavailable`,reason:`material_corrupt`};default:return d}let p=a.normalSigning,m=si({routerAbState:p});return{kind:`ready`,material:O({walletId:r.signer.walletId,materialActivation:r.activation.materialActivation,publicFacts:r.signer.registeredPublicFacts,transport:{kind:`threshold_ecdsa_signer_transport`,relayerUrl:a.relayerUrl,relayerKeyId:r.durableMaterial.roleLocalBinding.relayerKeyId,signingMaterial:m,relayerVerifyingShareB64u:u.relayerPublicKey33B64u},clientShare:{kind:`role_local_worker_share`,handle:f.liveHandle,material:{kind:`worker_loaded`,materialRef:f.materialRef}},routerAbEcdsaDerivationNormalSigning:{kind:`router_ab_ecdsa_derivation_normal_signing_hydrated_v1`,state:p,activeStateId:l(p)}})}}function ui(e){let t=mn({capability:e.capability,authorization:e.authorization,nowMs:e.nowMs}),r=t.authorization.session,i=t.authorization.operationCredential;if(r.walletId!==e.material.walletId||!n(e.material.materialActivation,e.capability.manifest.activation.materialActivation))throw Error(`Exact Wallet Session authorization wallet does not match hydrated material`);if(i.token.trim().length===0)throw Error(`Exact Wallet Session authorization is unavailable`);return Ze({walletId:e.material.walletId,signerSession:e.material,authorization:{kind:`reusable_wallet_session`,wallet_session_id:i.walletSessionId},credential:{kind:`reusable_wallet_session`,walletSessionToken:i.token},expiresAtMs:r.expiresAtMs,singleUseEmailOtpSession:!1})}function di(e){return e.session.capabilitySubjects.some(t=>t.kind===`sign`&&t.keyFamily===`ecdsa_secp256k1`&&n(t.materialActivation,e.materialActivation))}function fi(e){let t=e.authorityRuntime,r=t.holderRuntime,i=t.session,a=t.operationCredential,o=r.activationReceipt.normalSigning,s=o.scope;if(i.walletId!==r.walletId||i.authorityId!==r.authorityId||i.authMethodId!==r.walletAuthMethodId||a.walletSessionId!==t.walletSessionId||i.expiresAtMs<=Date.now()||!di({session:i,materialActivation:r.materialActivation})||s.wallet_id!==r.walletId||s.ecdsa_threshold_key_id!==r.ecdsaThresholdKeyId||!n(f(s.material_activation),r.materialActivation))throw Error(`[SigningEngine] active Wallet Authority session does not bind the ECDSA holder runtime`);let c=String(e.relayerUrl||``).trim();if(!c)throw Error(`[SigningEngine] active Wallet Authority ECDSA signing requires relayerUrl`);let u=O({walletId:C(r.walletId),materialActivation:r.materialActivation,publicFacts:t.publicFacts,transport:{kind:`threshold_ecdsa_signer_transport`,relayerUrl:c,relayerKeyId:t.relayerKeyId,signingMaterial:si({routerAbState:o}),relayerVerifyingShareB64u:s.public_identity.server_public_key33_b64u},clientShare:{kind:`linked_holder_worker_share`,holderHandleId:r.holderHandleId},routerAbEcdsaDerivationNormalSigning:{kind:`router_ab_ecdsa_derivation_normal_signing_hydrated_v1`,state:o,activeStateId:l(o)}});return Ze({walletId:r.walletId,signerSession:u,authorization:{kind:`reusable_wallet_session`,wallet_session_id:a.walletSessionId},credential:{kind:`reusable_wallet_session`,walletSessionToken:a.token},expiresAtMs:i.expiresAtMs,singleUseEmailOtpSession:!1})}function pi(e){return{kind:`blocked`,reason:e}}function mi(e){switch(e){case`email_otp`:return`email_otp`;case`login`:case`registration`:case`manual-bootstrap`:return`passkey`;default:throw Error(`[SigningEngine] unsupported sealed ECDSA source`)}}function X(e){return String(e??``).trim()}function hi(e){let t=e.record.ecdsaRestore,r=e.manifest.durableMaterial;return X(e.record.walletId)!==String(e.walletId)||!T(t.chainTarget,e.chainTarget)||!n(t.roleLocalMaterialRef.materialActivation,r.materialActivation)||!n(r.materialActivation,e.manifest.activation.materialActivation)?!1:X(t.roleLocalMaterialRef.durableMaterialRef)===X(r.durableMaterialRef)}function gi(e,t){return e.length===t.length&&e.every((e,n)=>e===t[n])}function _i(e,t){return e.kind===t.kind&&String(e.walletId)===String(t.walletId)&&String(e.authorityDigest)===String(t.authorityDigest)}function vi(e){return e.manifest.signer.scope.targetMemberships.some(t=>T(t,e.chainTarget))}function yi(e){let t=e.record.ecdsaRestore,n=e.manifest.durableMaterial,r=n.roleLocalBinding,i=n.roleLocalPublicFacts,a=t.routerAbEcdsaDerivationNormalSigning.scope,o=mi(t.source),s=X(t.ecdsaThresholdKeyId)||X(a.ecdsa_threshold_key_id),l=`recordKind`in e.record?X(r.clientVerifyingPublicKey33B64u):X(t.clientVerifyingShareB64u)||X(a.public_identity.derivation_client_share_public_key33_b64u),u=X(t.thresholdEcdsaPublicKeyB64u)||X(a.public_identity.threshold_public_key33_b64u);return String(e.manifest.signer.walletId)===String(e.walletId)&&String(i.walletId)===String(e.walletId)&&vi(e)&&e.record.authMethod===o&&_i(t.authority,e.manifest.signer.authority)&&X(t.roleLocalMaterialRef.bindingDigest)===X(n.bindingDigest)&&X(t.keyHandle)===X(r.keyHandle)&&X(t.keyHandle)===X(i.keyHandle)&&s===X(r.ecdsaThresholdKeyId)&&s===X(i.ecdsaThresholdKeyId)&&l===X(r.clientVerifyingPublicKey33B64u)&&l===X(i.derivationClientSharePublicKey33B64u)&&u===X(i.groupPublicKey33B64u)&&X(t.relayerKeyId)===X(r.relayerKeyId)&&gi(t.participantIds,r.participantIds)&&gi(t.participantIds,i.participantIds)&&X(t.signingRootId)===X(e.manifest.signer.signingRootId)&&X(t.signingRootId)===X(i.signingRootId)&&X(t.signingRootVersion)===X(e.manifest.signer.signingRootVersion)&&X(t.signingRootVersion)===X(i.signingRootVersion)&&X(t.ethereumAddress).toLowerCase()===X(i.ethereumAddress).toLowerCase()&&ke(t.publicCapability,i.publicCapability)&&S(a,{wallet_id:String(e.walletId),ecdsa_threshold_key_id:String(i.ecdsaThresholdKeyId),signing_root_id:String(i.signingRootId),signing_root_version:String(i.signingRootVersion),context:i.publicCapability.context,public_identity:i.publicCapability.public_identity,signing_worker:i.publicCapability.signer_set.selected_server,activation_epoch:i.publicCapability.activation_epoch,material_activation:c(n.materialActivation)})}function bi(e){let t=e.restore;if(t.source===`email_otp`){let n=X(t.providerSubjectId),r=X(t.emailHashHex),i=t.emailOtpAuthority,a=e.manifest.signer.authority;return!n||!r||!i||String(i.walletId)!==String(a.walletId)||String(i.factor.providerUserId)!==n||String(i.verifier.emailHashHex)!==r?null:{kind:`email_otp`,providerSubjectId:n,emailHashHex:r,emailOtpAuthority:{walletId:i.walletId,factor:i.factor,verifier:i.verifier,bindingId:a.walletAuthMethodId}}}let n=X(t.rpId),r=X(t.credentialIdB64u);return n&&r?{kind:`passkey`,rpId:n,credentialIdB64u:r}:null}function xi(e){if(e.length!==2)return null;let t=e[0],n=e[1];return!Number.isSafeInteger(t)||!Number.isSafeInteger(n)||t<=0||n<=0||t===n?null:[t,n]}function Si(e){let t=e.record.ecdsaRestore,n=bi({manifest:e.manifest,restore:t}),r=X(e.record.relayerUrl).replace(/\/+$/g,``),i=X(t.relayerKeyId),a=e.manifest.durableMaterial.roleLocalBinding.clientVerifyingPublicKey33B64u,s=X(t.ecdsaThresholdKeyId)||X(t.routerAbEcdsaDerivationNormalSigning.scope.ecdsa_threshold_key_id),c=X(t.thresholdEcdsaPublicKeyB64u)||X(t.routerAbEcdsaDerivationNormalSigning.scope.public_identity.threshold_public_key33_b64u),l=X(t.keyHandle),u=Array.isArray(t.participantIds)?xi(t.participantIds):null,d;try{d=ge(t.roleLocalMaterialRef)}catch{return null}let f=null;try{f=o(t.runtimePolicyScope)}catch{f=null}return!n||!r||!i||!a||!s||!c||!l||!u?null:{walletId:e.walletId,chainTarget:e.chainTarget,materialActivation:t.roleLocalMaterialRef.materialActivation,normalSigning:t.routerAbEcdsaDerivationNormalSigning,relayerUrl:r,relayerKeyId:i,clientVerifyingPublicKey33B64u:a,participantIds:u,ecdsaThresholdKeyId:s,thresholdEcdsaPublicKeyB64u:c,keyHandle:l,runtimePolicyScope:f,roleLocalMaterialRef:d,authBinding:n}}function Ci(e){let t=Si(e),n=Number(e.record.expiresAtMs),r=Number(e.record.remainingUses),i=X(e.record.thresholdSessionIds.ecdsa),a=X(e.record.storeKey);return!t||!a||!i||!Number.isSafeInteger(n)||n<=0||!Number.isSafeInteger(r)||r<0?null:{...t,kind:`exact_ecdsa_sealed_runtime_v1`,expiresAtMs:n,remainingUses:r,sealedRecord:{storeKey:a,thresholdSessionId:i,authMethod:e.record.authMethod}}}function wi(e){let t=e.sealedRecords.filter(t=>hi({manifest:e.manifest,walletId:e.walletId,chainTarget:e.chainTarget,record:t}));if(t.length===0)return pi(`missing_material`);if(t.length>1)return pi(`exact_record_conflict`);let n=Ci({manifest:e.manifest,walletId:e.walletId,chainTarget:e.chainTarget,record:t[0]});return n?yi({manifest:e.manifest,walletId:e.walletId,chainTarget:e.chainTarget,record:t[0]})?{kind:`resolved`,runtime:n}:pi(`binding_mismatch`):pi(`corrupt`)}function Ti(e){return e.manifest.signer.scope.targetMemberships.some(t=>T(t,e.chainTarget))}async function Ei(e){return(await e.ports.listActiveEcdsaCapabilityManifestsForWallet(e.walletId)).filter(t=>Ti({manifest:t,chainTarget:e.chainTarget}))}async function Di(e){let t=[],n=e.authMethod?[e.authMethod]:[`passkey`,`email_otp`];for(let r of n){let n=await e.ports.listExactSealedSessionsForWallet({walletId:String(e.walletId),filter:{authMethod:r,curve:`ecdsa`,chainTarget:e.chainTarget}}).catch(()=>[]);for(let e of n)e.curve===`ecdsa`&&t.push(e)}return t}async function Oi(e){if(!Ti({manifest:e.manifest,chainTarget:e.chainTarget}))return{kind:`blocked`,reason:`chain_mismatch`};let t=e.manifest.durableMaterial,n=t.roleLocalPublicFacts,r=ki(n.participantIds),i=String(e.relayerUrl).trim().replace(/\/+$/g,``);return!r||!i?{kind:`blocked`,reason:`corrupt`}:{kind:`resolved`,manifest:e.manifest,runtime:{kind:`exact_ecdsa_capability_runtime_v1`,walletId:e.manifest.signer.walletId,chainTarget:e.chainTarget,materialActivation:t.materialActivation,normalSigning:t.routerAbEcdsaDerivationNormalSigning,relayerUrl:i,relayerKeyId:String(t.roleLocalBinding.relayerKeyId),clientVerifyingPublicKey33B64u:t.roleLocalBinding.clientVerifyingPublicKey33B64u,participantIds:r,ecdsaThresholdKeyId:String(n.ecdsaThresholdKeyId),thresholdEcdsaPublicKeyB64u:n.groupPublicKey33B64u,keyHandle:String(n.keyHandle),runtimePolicyScope:t.runtimePolicyScope,roleLocalMaterialRef:{kind:`ecdsa_role_local_persisted_material_ref_v1`,durableMaterialRef:t.durableMaterialRef,bindingDigest:t.bindingDigest,materialActivation:t.materialActivation}}}}function ki(e){if(e.length!==2)return null;let t=e[0],n=e[1];return!Number.isSafeInteger(t)||!Number.isSafeInteger(n)||t<=0||n<=0||t===n?null:[t,n]}async function Ai(e,t,n){let r=await e.resolveSelectedWalletAuthority(String(t));if(r.kind!==`resolved`)return n;let i=String(r.authMethod.walletAuthMethodId),a=n.filter(e=>String(e.signer.authority.walletAuthMethodId)===i);return a.length>0?a:n}async function ji(e,t){let n=await Ei({ports:e,...t});if(n.length===0)return{kind:`blocked`,reason:`missing_capability`};let r=n.length>1?await Ai(e,t.walletId,n):n;if(r.length!==1)return{kind:`blocked`,reason:`exact_record_conflict`};let i=r[0],a=await Di({ports:e,...t}),o=wi({manifest:i,walletId:t.walletId,chainTarget:t.chainTarget,sealedRecords:a});return o.kind===`resolved`?{kind:`resolved`,manifest:i,runtime:o.runtime}:{kind:`blocked`,reason:o.reason}}function Mi(e){return ji.bind(null,e)}async function Ni(e,t){let n=await e.listActiveEcdsaCapabilityManifestsForWallet(t.walletId),r=[];for(let e of n)for(let n of e.signer.scope.targetMemberships)n.kind===t.chain&&r.push({manifest:e,chainTarget:n});if(r.length===0)return{kind:`blocked`,reason:`missing_capability`};if(r.length>1)return{kind:`blocked`,reason:`exact_record_conflict`};let i=r[0],a=await Di({ports:e,walletId:t.walletId,chainTarget:i.chainTarget}),o=wi({manifest:i.manifest,walletId:t.walletId,chainTarget:i.chainTarget,sealedRecords:a});return o.kind===`resolved`?{kind:`resolved`,manifest:i.manifest,runtime:o.runtime}:{kind:`blocked`,reason:o.reason}}function Pi(e){return Ni.bind(null,e)}function Fi(e){if(!e||typeof e!=`object`||Array.isArray(e))throw Error(`ECDSA operation step-up response must be an object`);return e}function Ii(e){try{return te(e)}catch(e){throw Error(e instanceof Error?e.message:`ECDSA operation step-up response is invalid`)}}function Li(e){let t=String(e||``).trim().replace(/\/+$/g,``);if(!t)throw Error(`ECDSA operation step-up relayerUrl is required`);return`${t}${h}`}function Ri(e){let t=String(e.walletId||``).trim(),n=String(e.operationId||``).trim(),r=Math.floor(Number(e.expiresAtMs));if(!t||!n)throw Error(`ECDSA operation step-up identity is required`);if(!Number.isSafeInteger(r)||r<=Date.now())throw Error(`ECDSA operation step-up expiry is invalid`);let i=c(e.materialActivation),a=v(e.normalSigningScope),o=String(e.keyHandle||``).trim(),s=String(e.relayerKeyId||``).trim(),l=e.participantIds;if(a.wallet_id!==t||a.signing_worker.server_id!==i.signing_worker||!o||!s||l.length!==2||l.some(e=>!Number.isSafeInteger(e)||e<=0))throw Error(`ECDSA operation step-up signing identity is inconsistent`);return{wallet_id:t,operation_kind:e.operationKind,operation_id:n,operation_digests:{lane_digest_b64u:e.operationDigests.laneDigest,intent_digest_b64u:e.operationDigests.intentDigest,display_digest_b64u:e.operationDigests.displayDigest},material_activation:i,normal_signing_scope:a,signing_worker_id:i.signing_worker,key_handle:o,relayer_key_id:s,participant_ids:[l[0],l[1]],expires_at_ms:r}}async function zi(e){let t=Ri(e);return{operation:t,challengeB64u:await _(t)}}function Bi(e,t){switch(e){case at.expired:case at.missing:return`Signing session expired. Sign in again to continue.`;case at.budgetExhausted:return`Signing session budget is used up. Sign in again to continue.`;default:return`ECDSA operation step-up failed: ${t}`}}async function Vi(e){let t=g(e.request),n=e.fetchImpl??globalThis.fetch;if(typeof n!=`function`)throw Error(`fetch is unavailable for ECDSA operation step-up`);if(e.transport?.kind===`wallet_session_bearer`&&e.transport.token.trim().length===0)throw Error(`Wallet Session operation credential is required for ECDSA operation step-up`);let r=await(e.transport?.kind===`wallet_session_bearer`?Hi(n,e.transport.token):n)(Li(e.relayerUrl),{method:`POST`,headers:{"Content-Type":`application/json`},credentials:`omit`,body:JSON.stringify(t)}),i=await r.json().catch(()=>null);if(!r.ok){let e=Fi(i),t=String(e.message||`HTTP ${r.status}`);throw st({code:e.code,message:Bi(e.code,t)})||Error(`ECDSA operation step-up failed: ${t}`)}return Ii(i)}function Hi(e,t){return async(n,r)=>{let i=new Headers(r?.headers);return i.set(`Authorization`,`Bearer ${t}`),await e(n,{...r,headers:i})}}async function Ui(e){let t=e.material,n=t.publicFacts.participantIds;if(n.length!==2)throw Error(`[chains] ECDSA operation step-up requires exactly two participants`);let r=String(e.operation.intent.operationId||``).trim(),i=Math.min(Date.now()+5*6e4,e.sessionExpiresAtMs);return await zi({walletId:t.walletId,operationKind:`evm.sign_transaction`,operationId:r,operationDigests:e.operationDigests,materialActivation:t.materialActivation,normalSigningScope:t.routerAbEcdsaDerivationNormalSigning.state.scope,keyHandle:t.publicFacts.keyHandle,relayerKeyId:t.transport.relayerKeyId,participantIds:[Number(n[0]),Number(n[1])],expiresAtMs:i})}async function Wi(e){let t=Gi({authority:e.authority,authorization:e.authorization}),n=await Vi({relayerUrl:e.relayerUrl,request:{kind:`router_ab_ecdsa_operation_step_up_v1`,operation:e.prepared.operation,proof:t}}),r={kind:`operation_step_up`,walletSessionToken:e.walletSessionToken};return Ze({walletId:e.material.walletId,signerSession:e.material,authorization:{kind:`operation_step_up`},credential:r,expiresAtMs:n.expires_at_ms,singleUseEmailOtpSession:!1,operationStepUpPreparation:e.prepared.operation})}function Gi(e){switch(e.authorization.kind){case`passkey`:{if(!d(e.authority))throw Error(`[chains] passkey step-up requires the exact passkey authority`);let t=e.authorization.credential;return{kind:`passkey`,authority:e.authority,webauthn_authentication:{id:t.id,rawId:t.rawId,type:t.type,authenticatorAttachment:t.authenticatorAttachment??null,response:{clientDataJSON:t.response.clientDataJSON,authenticatorData:t.response.authenticatorData,signature:t.response.signature,userHandle:t.response.userHandle??null},clientExtensionResults:t.clientExtensionResults??null}}}case`email_otp`:if(!p(e.authority))throw Error(`[chains] Email OTP step-up requires the exact Email OTP authority`);return{kind:`email_otp`,authority:e.authority,challenge_id:e.authorization.challengeId,otp_code:e.authorization.otpCode}}}function Z(e,t){return t?{kind:`blocked`,reason:e,message:t}:{kind:`blocked`,reason:e}}function Ki(e){return pe(e)||he(e.signerActivations)?e.signerActivations:null}function qi(e){if(e.kind!==`resolved`)switch(e.kind){case`missing_selection`:return Z(`missing_selected_authority`);case`missing_auth_method`:case`missing_authority`:case`integrity_error`:return Z(`invalid_selected_authority`);default:return e}return e.selection.walletId!==e.authMethod.walletId||e.selection.walletAuthMethodId!==e.authMethod.walletAuthMethodId||e.authMethod.walletAuthorityId!==e.authority.authorityId||e.authority.walletId!==e.selection.walletId?Z(`authority_identity_mismatch`):e.selection.lockState===`unlocked`?e.authMethod.status===`active`?e.authority.state===`active`?{authMethod:e.authMethod,authority:e.authority,signerMaterials:e.signerMaterials}:Z(`authority_inactive`):Z(`auth_method_inactive`):Z(`wallet_locked`)}function Ji(e){let t=e.materials.filter(t=>t.kind===`wallet_authority_linked_signer_material_v1`&&t.keyFamily===`ecdsa_secp256k1`&&t.authorityId===e.authority.authorityId&&t.walletAuthMethodId===e.authMethod.walletAuthMethodId&&t.activationId===e.materialActivation.activationId&&n(t.materialActivation,e.materialActivation)),[r]=t;return t.length===1&&r?r:null}function Yi(e){let t=e.material.targetFactor;return t.walletAuthMethodId===e.authMethod.walletAuthMethodId?e.authMethod.kind===`passkey`?t.kind===`passkey`&&t.rpId===e.authMethod.rpId&&t.credentialIdB64u===e.authMethod.credentialIdB64u:t.kind===`email_otp`&&t.emailHashHex===e.authMethod.emailHashHex&&t.registrationAuthorityId===e.authMethod.registrationAuthorityId:!1}function Xi(e){return e.session.capabilitySubjects.filter(t=>t.kind===e.capability&&t.keyFamily===`ecdsa_secp256k1`&&n(t.materialActivation,e.materialActivation)).length===1}function Zi(e){try{return f(e.scope.material_activation)}catch{return null}}function Qi(e){try{return vt(i(e.scope.public_identity.ethereum_address20_b64u))}catch{return null}}function $i(e,t){return e.linkSessionId===t.linkSessionId&&e.enrollmentId===t.enrollmentId&&e.sourceAuthorityId===t.sourceAuthorityId&&oe(e.source,t.source)&&D(e.target,t.target)&&e.targetClientPublicKey33B64u===t.targetClientPublicKey33B64u}function ea(e,t){return e.kind===t.kind&&S(e.scope,t.scope)}function ta(e,t){return e.applicationBindingDigestB64u===t.applicationBindingDigestB64u&&e.clientShareRetryCounter===t.clientShareRetryCounter&&e.ecdsaThresholdKeyId===t.ecdsaThresholdKeyId&&ea(e.sourceNormalSigning,t.sourceNormalSigning)}function na(e,t){return e.state===t.state&&$i(e.binding,t.binding)&&ta(e.sourceDerivation,t.sourceDerivation)&&e.targetRelayerPublicKey33B64u===t.targetRelayerPublicKey33B64u&&e.thresholdPublicKey33B64u===t.thresholdPublicKey33B64u&&e.thresholdEthereumAddress20B64u===t.thresholdEthereumAddress20B64u&&ea(e.normalSigning,t.normalSigning)}function ra(e){let t=Et({walletId:e.walletId,materialActivation:e.materialActivation});return!t||t.walletId!==e.walletId||t.authorityId!==e.authority.authorityId||t.walletAuthMethodId!==e.authMethod.walletAuthMethodId||t.factorAuthority.walletId!==e.walletId||t.factorAuthority.bindingId!==e.authMethod.walletAuthMethodId||t.ecdsaThresholdKeyId!==e.ecdsaThresholdKeyId||!n(t.materialActivation,e.materialActivation)||!Yi({material:e.material,authMethod:e.authMethod})||!na(t.activationReceipt,e.material.publicFacts.activationReceipt)?null:t}async function ia(e){let t=e.holderRuntime.activationReceipt.normalSigning,r=t.scope,i=Zi(t),a=Qi(t);if(!i||!a||!n(i,e.materialActivation)||e.signer.walletId!==e.selected.authority.walletId||r.wallet_id!==String(e.selected.authority.walletId)||r.ecdsa_threshold_key_id!==String(e.holderRuntime.ecdsaThresholdKeyId)||r.public_identity.threshold_public_key33_b64u!==String(e.signer.thresholdPublicKey33B64u)||a.toLowerCase()!==String(e.signer.evmAddress).trim().toLowerCase()||String(e.holderRuntime.activationReceipt.thresholdPublicKey33B64u)!==String(r.public_identity.threshold_public_key33_b64u)||String(e.holderRuntime.activationReceipt.thresholdEthereumAddress20B64u)!==String(r.public_identity.ethereum_address20_b64u))return Z(`normal_signing_identity_mismatch`);let o,s,c,l;try{l=await k({ecdsaThresholdKeyId:r.ecdsa_threshold_key_id,signingRootId:r.signing_root_id,signingRootVersion:r.signing_root_version});let t=ae(e.signer.evmAddress);o=ue({walletId:e.selected.authority.walletId,ecdsaThresholdKeyId:r.ecdsa_threshold_key_id,signingRootId:r.signing_root_id,signingRootVersion:r.signing_root_version,participantIds:[1,2],thresholdOwnerAddress:t}),s=le({keyHandle:l,publicKeyB64u:r.public_identity.threshold_public_key33_b64u,participantIds:[1,2],thresholdOwnerAddress:t}),c=await m({walletId:String(o.walletId),signingRootId:String(o.signingRootId),signingRootVersion:String(o.signingRootVersion)})}catch(e){return Z(`invalid_public_facts`,e instanceof Error?e.message:String(e))}if(o.ecdsaThresholdKeyId!==e.holderRuntime.ecdsaThresholdKeyId)return Z(`normal_signing_identity_mismatch`);let u;try{u=await y({authority:e.factorAuthority})}catch(e){return Z(`authority_identity_mismatch`,e instanceof Error?e.message:String(e))}let f={kind:`active_wallet_authority_ecdsa_runtime_v1`,walletId:e.selected.authority.walletId,authorityId:e.selected.authority.authorityId,walletAuthMethodId:e.selected.authMethod.walletAuthMethodId,authorityDigestB64u:e.selected.authority.authorityDigestB64u,factorAuthorityRef:u,authorityRevocationEpoch:e.selected.authority.revocationEpoch,walletSessionId:e.operationCredential.walletSessionId,operationCredential:e.operationCredential,session:e.session,requiredCapability:e.requiredCapability,materialActivation:e.materialActivation,ecdsaThresholdKeyId:o.ecdsaThresholdKeyId,relayerKeyId:c,authority:e.selected.authority,authMethod:e.selected.authMethod,holderRuntime:e.holderRuntime,normalSigning:t,key:o,publicFacts:s};if(e.selected.authMethod.kind===`passkey`){let t={kind:`passkey`,rpId:A(e.selected.authMethod.rpId),credentialIdB64u:e.selected.authMethod.credentialIdB64u};if(!d(e.factorAuthority)||e.factorAuthority.walletId!==o.walletId||e.factorAuthority.bindingId!==e.selected.authMethod.walletAuthMethodId||e.factorAuthority.factor.credentialIdB64u!==t.credentialIdB64u||String(e.factorAuthority.verifier.rpId)!==String(t.rpId))return Z(`authority_identity_mismatch`);let n=se({walletId:o.walletId,publicFacts:s,authBinding:de({rpId:t.rpId,credentialIdB64u:t.credentialIdB64u})});return{...f,auth:t,factorAuthority:e.factorAuthority,resolvedKey:n}}if(!p(e.factorAuthority)||e.factorAuthority.walletId!==o.walletId||e.factorAuthority.bindingId!==e.selected.authMethod.walletAuthMethodId||e.factorAuthority.verifier.emailHashHex!==e.selected.authMethod.emailHashHex)return Z(`authority_identity_mismatch`);let h={kind:`email_otp`,providerSubjectId:String(e.factorAuthority.factor.providerUserId)};return{...f,auth:h,factorAuthority:e.factorAuthority}}function aa(e){if(!e.chainTarget)return null;let t={kind:`active_wallet_authority_ecdsa_lane_projection_v1`,source:`active_wallet_authority`,chainTarget:e.chainTarget,runtime:e.runtime,key:e.runtime.key,materialActivation:e.runtime.materialActivation,publicFacts:e.runtime.publicFacts,state:`deferred`,authorizationState:`authorization_required`};return e.runtime.auth.kind===`passkey`?e.runtime.resolvedKey?{...t,auth:e.runtime.auth,resolvedKey:e.runtime.resolvedKey}:null:{...t,auth:e.runtime.auth}}async function oa(e){let{input:t,ports:r}=e,i=t.requiredCapability||`sign`,a=Math.floor(Number(t.nowMs)||Date.now()),o;try{o=C(t.walletId)}catch(e){return Z(`invalid_selected_authority`,e instanceof Error?e.message:String(e))}let s;try{s=await r.resolveSelectedWalletAuthority(String(o))}catch(e){return Z(`persistence_unavailable`,e instanceof Error?e.message:String(e))}let c=qi(s);if(`kind`in c)return c;let l=Ki(c.authority);if(!l)return Z(`missing_ecdsa_signer`);let u=l.ecdsa.signer,d=l.ecdsa.materialActivation;if(t.materialActivation&&!n(t.materialActivation,d))return Z(`authority_identity_mismatch`);let f=Ji({materials:c.signerMaterials,authority:c.authority,authMethod:c.authMethod,materialActivation:d});if(!f||!Yi({material:f,authMethod:c.authMethod}))return Z(`missing_holder_runtime`);if(String(f.publicFacts.ecdsaThresholdKeyId)!==String(f.ecdsaThresholdKeyId))return Z(`holder_runtime_identity_mismatch`);let p=ra({walletId:o,authority:c.authority,authMethod:c.authMethod,materialActivation:d,ecdsaThresholdKeyId:String(f.ecdsaThresholdKeyId),material:f});if(!p)return Z(`holder_runtime_identity_mismatch`);let m;try{m=await r.readExactWithOperationCredential({walletId:o,authorityId:c.authority.authorityId,authMethodId:c.authMethod.walletAuthMethodId})}catch(e){return Z(`persistence_unavailable`,e instanceof Error?e.message:String(e))}switch(m.kind){case`found`:break;case`missing`:return Z(`missing_wallet_session`);case`upgrade_required`:return Z(`upgrade_required`,`Wallet Session authorization requires a newer client`)}let h=m.record,g=m.operationCredential;if(h.expiresAtMs<=a)return Z(`wallet_session_expired`);if(h.walletId!==o||h.authorityId!==c.authority.authorityId||h.authMethodId!==c.authMethod.walletAuthMethodId||h.authorityDigestB64u!==c.authority.authorityDigestB64u||h.authorityRevocationEpoch!==c.authority.revocationEpoch||g.walletSessionId.length===0||g.token.trim().length===0)return Z(`wallet_session_identity_mismatch`);if(!Xi({session:h,capability:i,materialActivation:d}))return Z(`wallet_session_capability_mismatch`);let _=p.factorAuthority,v=await ia({selected:c,session:h,operationCredential:g,requiredCapability:i,signer:u,materialActivation:d,holderRuntime:p,factorAuthority:_});return v.kind===`active_wallet_authority_ecdsa_runtime_v1`?{kind:`resolved`,runtime:v,lane:aa({runtime:v,chainTarget:t.chainTarget})}:v}function sa(e){return{kind:`active_wallet_authority`,method:e.auth.kind,accountId:String(e.walletId),intent:`transaction_sign`,curve:`ecdsa`,walletSessionId:e.operationCredential.walletSessionId,authorityId:e.authorityId,authMethodId:e.walletAuthMethodId,expiresAtMs:e.session.expiresAtMs}}function ca(e){switch(e.factor.kind){case`passkey`:return`passkey`;case`email_otp`:return`email_otp`;default:throw e.factor,Error(`[SigningEngine] unsupported wallet authorization factor`)}}function la(e){let t=e.capability.manifest;return t.signer.walletId===e.scope.walletId&&n(t.activation.materialActivation,e.scope.materialActivation)&&t.signer.scope.targetMemberships.some(t=>T(t,e.scope.chainTarget))}function ua(e){let t=e.capability.manifest.activation.materialActivation;return e.session.capabilitySubjects.filter(e=>e.kind===`sign`&&e.keyFamily===`ecdsa_secp256k1`&&n(e.materialActivation,t)).length===1}async function da(e){if(!la(e))throw Error(`[SigningEngine] exact ECDSA Wallet Session material changed`);let t=e.ports,r=await t.resolveSelectedWalletAuthority(String(e.scope.walletId)),i=pa(r,e.scope.walletId);if(i||r.kind!==`resolved`)throw fa(i??`selected_authority_invalid`);let a=await y({authority:e.capability.authority}),o=e.capability.manifest.signer.authority,s=r.authority.signerActivations.ecdsa;if(a.walletId!==o.walletId||a.walletAuthMethodId!==o.walletAuthMethodId||a.authorityDigest!==o.authorityDigest||o.walletId!==r.authority.walletId||o.walletAuthMethodId!==r.authMethod.walletAuthMethodId||!s||!n(s.materialActivation,e.scope.materialActivation))throw Error(`[SigningEngine] exact ECDSA Wallet Session material changed`);let c=await t.readExactWithOperationCredential({walletId:e.scope.walletId,authorityId:r.authority.authorityId,authMethodId:r.authMethod.walletAuthMethodId});if(c.kind!==`found`)throw fa(c.kind===`missing`?`wallet_session_missing`:`wallet_session_upgrade_required`);let l=c.record,u=ma({session:l,operationCredential:c.operationCredential,walletId:e.scope.walletId,authority:r.authority,authMethod:r.authMethod,capability:e.capability});if(u)throw fa(u);return{credential:c.operationCredential,expiresAtMs:l.expiresAtMs}}function fa(e){return Error(`[SigningEngine] exact ECDSA Wallet Session is unavailable: ${e}`)}function pa(e,t){return e.kind===`resolved`?e.selection.walletId!==t||e.authMethod.walletId!==t||e.authority.walletId!==t||e.selection.walletAuthMethodId!==e.authMethod.walletAuthMethodId||e.authMethod.walletAuthorityId!==e.authority.authorityId?`authority_identity_mismatch`:e.selection.lockState===`unlocked`?e.authMethod.status===`active`?e.authority.state===`active`?null:`authority_inactive`:`auth_method_inactive`:`wallet_locked`:e.kind===`missing_selection`?`selected_authority_missing`:`selected_authority_invalid`}function ma(e){let{session:t}=e;return t.walletId!==e.walletId||t.authorityId!==e.authority.authorityId||t.authMethodId!==e.authMethod.walletAuthMethodId?`wallet_session_identity_mismatch (authority or method)`:t.authorityDigestB64u===e.authority.authorityDigestB64u?t.authorityRevocationEpoch===e.authority.revocationEpoch?e.operationCredential.token.trim()?t.expiresAtMs<=Date.now()?`wallet_session_expired`:ua({session:t,capability:e.capability})?null:`wallet_session_capability_mismatch`:`wallet_session_identity_mismatch (operation credential)`:`wallet_session_identity_mismatch (authority revocation epoch)`:`wallet_session_identity_mismatch (authority digest)`}async function ha(e,t){let n=await da(e);return await Ui({operation:t.operation,operationDigests:t.operationDigests,material:t.material,sessionExpiresAtMs:n.expiresAtMs})}async function ga(e,t){return await e.deps.withThresholdEcdsaSigningQueue({queueKey:dt({materialActivation:e.materialActivation}),walletId:e.walletId,enabled:!0,...e.shouldAbort?{shouldAbort:e.shouldAbort}:{},task:t})}function _a(e){let t=String(e.seamsWebConfigs.network.relayer?.url||``).trim();if(!t)throw Error(`[SigningEngine] EVM-family signing requires relayerUrl`);return t}async function va(e){let t=await oa({ports:e.deps.activeWalletAuthorityEcdsaRuntimeReadPorts,input:{walletId:e.signer.walletId,chainTarget:e.signer.chainTarget,requiredCapability:`sign`,materialActivation:e.signer.materialActivation,nowMs:Date.now()}});if(t.kind!==`resolved`)throw Error(`[SigningEngine] active Wallet Authority ECDSA runtime is ${t.reason}`);let n=t.runtime;if(n.authorityId!==e.prepared.authorityId||n.walletAuthMethodId!==e.prepared.walletAuthMethodId||n.authorityDigestB64u!==e.prepared.authorityDigestB64u||n.authorityRevocationEpoch!==e.prepared.authorityRevocationEpoch||n.walletSessionId!==e.prepared.walletSessionId||n.publicFacts.keyHandle!==e.signer.keyHandle)throw Error(`[SigningEngine] active Wallet Authority ECDSA runtime was replaced`);return n}function ya(e){return n(e.currentMaterialActivation,e.preparedMaterialActivation)?null:{kind:`superseded`,supersessionKind:`material_activation_replaced`,preparedMaterialActivation:e.preparedMaterialActivation,currentMaterialActivation:e.currentMaterialActivation}}function ba(e){let t=e.preparedCapability.manifest,n=t.activation.materialActivation,r=e.currentManifest.activation.materialActivation,i=ya({preparedMaterialActivation:n,currentMaterialActivation:r});if(i)return i;let a=t.signer,o=e.currentManifest.signer;return String(t.identity.manifestId)===String(e.currentManifest.identity.manifestId)&&Number(t.identity.manifestRevision)===Number(e.currentManifest.identity.manifestRevision)&&String(a.capability)===String(o.capability)&&String(a.authority.walletId)===String(o.authority.walletId)&&String(a.authority.authorityDigest)===String(o.authority.authorityDigest)?null:{kind:`superseded`,supersessionKind:`capability_authority_replaced`,preparedMaterialActivation:n,currentMaterialActivation:r}}function xa(e){let t=e.preparedAuthorization,r=e.currentAuthorization;return r&&t.selectedAuthority.authorityId===r.selectedAuthority.authorityId&&t.selectedAuthMethod.kind===r.selectedAuthMethod.kind&&t.selectedAuthMethod.walletAuthMethodId===r.selectedAuthMethod.walletAuthMethodId&&t.session.walletId===r.session.walletId&&t.session.authorityId===r.session.authorityId&&t.session.authMethodId===r.session.authMethodId&&t.session.authorizationId===r.session.authorizationId&&t.session.quotaId===r.session.quotaId&&(t.session.authorityDigestB64u===r.session.authorityDigestB64u||me(t.selectedAuthority,r.selectedAuthority)&&u(t.session,r.session))&&t.session.issuedAtMs===r.session.issuedAtMs&&t.session.expiresAtMs===r.session.expiresAtMs&&t.session.authorityRevocationEpoch===r.session.authorityRevocationEpoch&&t.operationCredential.walletSessionId===r.operationCredential.walletSessionId&&t.operationCredential.token===r.operationCredential.token&&ln(t.runtime,r.runtime)&&n(r.runtime.materialActivation,e.materialActivation)?null:{kind:`superseded`,supersessionKind:`reusable_authorization_replaced`,preparedMaterialActivation:e.materialActivation,currentMaterialActivation:e.materialActivation}}async function Sa(e){let t=await Oi({manifest:e.capability.manifest,chainTarget:e.chainTarget,relayerUrl:e.relayerUrl});if(t.kind!==`resolved`)return{kind:`failed`,failure:{kind:`unavailable`,reason:`runtime_correlation_mismatch`}};let n=ba({preparedCapability:e.capability,currentManifest:t.manifest});if(n)return{kind:`superseded`,replacement:n};if(e.preparedAuthorization){let t=xa({preparedAuthorization:e.preparedAuthorization,currentAuthorization:e.currentAuthorization,materialActivation:e.materialActivation});if(t)return{kind:`superseded`,replacement:t}}let r=await li({capability:e.capability,runtime:t.runtime,chainTarget:e.chainTarget,materialActivation:e.materialActivation,workerCtx:e.workerCtx});return r.kind===`unavailable`?{kind:`failed`,failure:r}:e.preparedAuthorization?e.currentAuthorization?{kind:`ready`,value:{kind:`material_from_canonical_capability`,material:ui({material:r.material,capability:e.capability,authorization:e.currentAuthorization,nowMs:Date.now()})}}:{kind:`superseded`,replacement:{kind:`superseded`,supersessionKind:`reusable_authorization_replaced`,preparedMaterialActivation:e.materialActivation,currentMaterialActivation:e.materialActivation}}:{kind:`authorization_required`,requirement:{kind:`material_for_step_up`,material:r.material}}}async function Ca(e){let[t,n]=await Promise.all([Xe(),qe()]),r=e.deps.getSignerWorkerContext(),i=e.deps.touchConfirm.getContext(),a=C(e.walletSession.walletId),o=_a(e.deps),s=e.senderSignatureAlgorithm===`secp256k1`?N(e.preparedSession.kind===`authorized`?e.preparedSession.signingLane.identity:e.preparedSession.identity,`ECDSA signing material hydration`):void 0;if(e.activeWalletAuthority&&!s)throw Error(`[SigningEngine] active Wallet Authority runtime requires a threshold ECDSA signer`);let c=s&&!e.activeWalletAuthority?await e.deps.resolveCanonicalEcdsaSigningCapability({walletId:s.walletId,chainTarget:s.chainTarget,materialActivation:s.materialActivation}):void 0,l=e.preparedSession?.kind===`authorized`?e.preparedSession.selection.lane.authorization:null,u=c&&l&&l.runtime.remainingUses>0&&tn({capability:c,authorization:l,nowMs:Date.now()})?l:null,d=s&&c&&!e.activeWalletAuthority?{walletId:s.walletId,chainTarget:s.chainTarget,materialActivation:s.materialActivation}:void 0,f=!e.activeWalletAuthority&&c&&d?{...e.emailOtpSigningForFlow?{emailOtpSigning:e.emailOtpSigningForFlow}:{},reusableAuthorization:u?{kind:`active`}:{kind:`absent`,requiredFactor:ca(c.authority)},operationStepUp:{prepare:ha.bind(void 0,{ports:e.deps.activeWalletAuthorityEcdsaRuntimeReadPorts,scope:d,capability:c}),authorize:async({authorization:t,prepared:n,material:r})=>{e.onAuthSideEffectStarted?.(t.kind===`passkey`?`passkey_reauth`:`email_otp_challenge`);let i=await da({ports:e.deps.activeWalletAuthorityEcdsaRuntimeReadPorts,scope:d,capability:c});return await Wi({relayerUrl:o,authority:c.authority,authorization:t,prepared:n,material:r,walletSessionToken:i.credential.token})}},...e.onAuthSideEffectStarted?{onAuthSideEffectStarted:e.onAuthSideEffectStarted}:{}}:void 0,p=new t({beforeSigning:e.deps.beforeSigning,getRpId:()=>i.touchIdPrompt.getRpId(),workerCtx:r,shouldAbort:e.shouldAbort}),m=e.activeWalletAuthority,h=m&&s?{kind:`active_wallet_authority`,confirmationAuthPlan:m.confirmationAuthPlan,sign:async t=>{if(String(m.intent.operationId)!==t.operationId)throw Error(`[SigningEngine] active Wallet Authority signing operation identity changed`);return await ga({deps:e.deps,walletId:s.walletId,materialActivation:s.materialActivation,...e.shouldAbort?{shouldAbort:e.shouldAbort}:{}},async()=>{let n=fi({authorityRuntime:await va({deps:e.deps,prepared:m.runtime,signer:s}),chainTarget:s.chainTarget,relayerUrl:o});return await p.signReady({kind:`digest`,algorithm:`secp256k1`,digest32:t.signingDigest32},n,{intent:m.intent,authPlan:m.confirmationAuthPlan},t.operationDigests)})}}:void 0;return{flowArgs:{ctx:i,touchConfirm:e.deps.touchConfirm,workerCtx:r,walletId:a,onEvent:e.onEvent,engines:{secp256k1:p,webauthnP256:new n(r,e.deps.beforeSigning)},...s&&c?{runEcdsaMaterialUse:ga.bind(null,{deps:e.deps,walletId:s.walletId,materialActivation:s.materialActivation,...e.shouldAbort?{shouldAbort:e.shouldAbort}:{}}),resolveEcdsaSigningMaterialPlan:async()=>await Sa({capability:c,preparedAuthorization:u,currentAuthorization:u?await e.deps.resolveActiveEcdsaWalletSessionAuthorization({walletId:s.walletId,chainTarget:s.chainTarget,materialActivation:s.materialActivation}):null,walletId:s.walletId,chainTarget:s.chainTarget,materialActivation:s.materialActivation,relayerUrl:o,workerCtx:r})}:{},...h?{authorization:h}:{},...e.signingSessionPlan?{signingSessionPlan:e.signingSessionPlan}:{},...e.signingOperation?{signingOperation:e.signingOperation}:{},onSigningOperationTransition:e.onSigningOperationTransition||Hn,...f?{thresholdEcdsaStepUpRuntime:f}:{},confirmationConfigOverride:e.confirmationConfigOverride}}}function wa(e){return e instanceof rt?e.authorizationDecision:void 0}async function Ta(e){switch(e.decision.retryMode){case`await_admission_owner_completion`:return await e.signingSessionCoordinator.runWalletSessionQuotaAdmissionRetry({queueKey:e.queueKey,refresh:e.rereadAuthoritativeReadiness,retryAfterRefresh:e.rereadAuthoritativeReadiness});case`email_otp_single_operation_step_up`:case`fresh_auth`:return await e.signingSessionCoordinator.runWalletSessionQuotaAdmissionRetry({queueKey:e.queueKey,refresh:e.performFreshAuth,retryAfterRefresh:e.rereadAuthoritativeReadiness});default:return Ea(e.decision)}}function Ea(e){throw Error(`[SigningEngine][ecdsa] unsupported fresh-auth retry mode: ${String(e)}`)}function Da(e){return{kind:`do_not_retry`,trigger:e.trigger,sideEffectState:e.sideEffectState,blockedReason:e.blockedReason}}function Q(e,t){return Da({trigger:e.trigger,sideEffectState:e.sideEffectState,blockedReason:t})}function Oa(e){if(e.current===`threshold_reconnect_started`)return e.current;switch(e.sideEffect){case`auth_prompt_shown`:case`email_otp_challenge`:case`passkey_reauth`:return e.current===`no_auth_side_effect_started`?`auth_prompt_shown`:e.current;case`auth_confirmed`:return`auth_confirmed`;case`threshold_reconnect`:return`threshold_reconnect_started`}}function ka(e){if(e.alreadyRetryingFreshAuth)return Q(e,`already_retrying`);if(e.senderSignatureAlgorithm!==`secp256k1`)return Q(e,`non_secp256k1_sender`);let t=wa(e.error),n=it(e.error),r=e.trigger===`wallet_signing_budget_exhausted`?t?.kind===`step_up_required`?lt(n??{kind:`exhausted`,source:`server_prepare`,detail:`Server requires owner operation step-up`}):n?.kind===`in_flight`?lt(n):null:null,i=r?.kind===`request_fresh_step_up`||r?.kind===`wait_and_retry_admission`;if(e.sideEffectState!==`no_auth_side_effect_started`&&!i)return Q(e,`auth_side_effect_started`);if(e.trigger===`wallet_session_reauthorization_required`){if(e.hasEmailOtpSigningPlan||e.hasStepUpAuthPlan)return Q(e,`signing_auth_plan_already_selected`);if(t?.kind!==`step_up_required`)return Q(e,`error_not_retryable`);if(e.accountAuth.primaryAuthMethod!==E.emailOtp&&e.accountAuth.primaryAuthMethod!==E.passkey)return Q(e,`unsupported_primary_auth`)}else{if(!r)return Q(e,`error_not_retryable`);if(e.hasStepUpAuthPlan&&r.kind!==`request_fresh_step_up`&&r.kind!==`wait_and_retry_admission`)return Q(e,`step_up_auth_plan_already_selected`);if(r.kind===`wait_and_retry_admission`)return e.admissionRetryState.kind===`authoritative_readiness_reread`?Q(e,`authoritative_readiness_still_in_flight`):{kind:`retry`,trigger:e.trigger,sideEffectState:e.sideEffectState,retryMode:`await_admission_owner_completion`,admissionDecision:r};if(e.activeSigningAuthMethod===E.emailOtp)return{kind:`retry`,trigger:e.trigger,sideEffectState:e.sideEffectState,retryMode:`email_otp_single_operation_step_up`,admissionDecision:r}}return{kind:`retry`,trigger:e.trigger,sideEffectState:e.sideEffectState,retryMode:`fresh_auth`}}function Aa(e){return ot(e.error)?.kind===`expired`?e.candidate.kind===`unavailable`?{kind:`expired_without_exact_lane`}:{kind:`authoritative_expiry`,state:ft({source:{kind:`ecdsa`,laneIdentity:e.candidate.identity,authorization:e.candidate.authorization},expiresAtMs:e.candidate.expiresAtMs,detectedAtMs:e.detectedAtMs})}:{kind:`not_expired`}}async function ja(e){switch(e.context.kind){case`not_expired`:case`expired_without_exact_lane`:return;case`authoritative_expiry`:if((await e.coordinator.invalidateExpiredWalletSession({state:e.context.state,source:ye.serverRejection})).kind===`unavailable`)throw Error(`[SigningEngine][ecdsa] expired Wallet Session cleanup failed`);return;default:return Ma(e.context)}}function Ma(e){throw Error(`[SigningEngine][ecdsa] unsupported Wallet Session expiry context: ${String(e)}`)}async function Na(e){let t=ka({trigger:`wallet_session_reauthorization_required`,error:e.error,senderSignatureAlgorithm:e.senderSignatureAlgorithm,accountAuth:e.accountAuth,alreadyRetryingFreshAuth:e.alreadyRetryingFreshEmailOtpAuth,hasEmailOtpSigningPlan:e.hasEmailOtpSigningPlan,sideEffectState:e.sideEffectState});if(e.onDecision?.(t),t.kind!==`retry`)return null;await ja({context:e.expiryContext,coordinator:e.signingSessionCoordinator});let n=e.accountAuth.primaryAuthMethod===E.emailOtp;return Vn(e.onEvent,{phase:n?j.STEP_06_AUTH_EMAIL_OTP_CHALLENGE_STARTED:j.STEP_09_THRESHOLD_SESSION_RECONNECT_STARTED,status:`running`,walletId:e.walletId,message:n?`Signing session expired; requesting Email OTP reauthorization`:`Signing session expired; requesting passkey reauthorization`,interaction:{kind:`none`,overlay:`none`},data:{chain:e.chain,reason:`threshold_session_expired`}}),await e.retry()}function Pa(){let e=a(32,`EVM family signing operation IDs`);return Te.signingOperation(`evm-family-sign:${e}`)}function Fa(e){return e?{planningOperationId:e,confirmationOperationId:e,callerProvided:!0}:{planningOperationId:Pa(),callerProvided:!1}}function Ia(e){return e.confirmationOperationId=e.confirmationOperationId||Pa(),e.confirmationOperationId}function La(e,t,n){e.callerProvided&&n.bindCallerProvidedOperationIdToFingerprint({operationId:e.planningOperationId,operationFingerprint:t})}function Ra(e){switch(e.publicIdentityContinuity.kind){case`lane_identity_only`:return e.laneThresholdOwnerAddress;case`verified_material_identity`:if(e.publicIdentityContinuity.verifiedMaterialThresholdOwnerAddress!==e.laneThresholdOwnerAddress)throw Error(`[SigningEngine][ecdsa] prepared material owner address does not match the exact signing lane`);return e.laneThresholdOwnerAddress;default:throw e.publicIdentityContinuity,Error(`[SigningEngine][ecdsa] unsupported prepared public identity state`)}}function za(e){return{kind:`prepared`,thresholdOwnerAddress:Ra(e)}}var Ba=e({reconcileEvmFamilyNonceLane:()=>Br,reconcileTempoNonceLane:()=>Qa,reportEvmFamilyBroadcastAccepted:()=>Fr,reportEvmFamilyBroadcastRejected:()=>Lr,reportEvmFamilyDroppedOrReplaced:()=>zr,reportEvmFamilyFinalized:()=>Rr,reportTempoBroadcastAccepted:()=>Ja,reportTempoBroadcastRejected:()=>Ya,reportTempoDroppedOrReplaced:()=>Za,reportTempoFinalized:()=>Xa,signEvmFamily:()=>qa});function Va(e){return!e.prepared||e.prepared.kind!==`authorized`?{kind:`unavailable`}:{kind:`exact_ecdsa_lane`,identity:P(e.prepared.signingLane),authorization:e.prepared.signingLane.authorization,expiresAtMs:e.prepared.signingLane.authorization.session.expiresAtMs}}function Ha(e){let t=e.prepared.signingLane.authorization.session.authorizationId;return ct({walletId:e.walletId,materialActivationId:e.prepared.signingLane.materialActivation.activationId,authorizationId:t,authorityKey:Ee(e.prepared.signingLane.auth),targetKey:w(e.prepared.signingLane.chainTarget)})}function Ua(e){if(e.kind!==`authorization_required`||e.candidate.source!==`active_wallet_authority`)return null;let t=sa(e.candidate.runtime);return{runtime:e.candidate.runtime,intent:e.intent,confirmationAuthPlan:t}}function Wa(e){let t=e.chainTarget.kind===`tempo`?`Sign Tempo Transaction`:`Sign EVM Transaction`,n={request:e.request,signerAccount:String(e.walletSession.walletId),title:t,subtitle:``};return e.request.kind===`eip1559`?yt({...n,request:e.request}):Ct({...n,request:e.request})}async function Ga(e){let t=$.bind(null,e.deps,e.signingArgs,{admissionRetryState:{kind:`authoritative_readiness_reread`},forceFreshAuth:!1,operationIds:e.operationIds,retryingFreshAuth:e.retryingFreshAuth,signingSessionCoordinator:e.signingSessionCoordinator}),n=$.bind(null,e.deps,e.signingArgs,{admissionRetryState:{kind:`initial_admission`},forceFreshAuth:!0,operationIds:e.operationIds,retryingFreshAuth:!0,signingSessionCoordinator:e.signingSessionCoordinator});return await Ta({decision:e.decision,queueKey:e.queueKey,signingSessionCoordinator:e.signingSessionCoordinator,rereadAuthoritativeReadiness:t,performFreshAuth:n})}function Ka(e){let t=e.accountAuth.primaryAuthMethod===E.emailOtp;Vn(e.onEvent,{phase:t?j.STEP_06_AUTH_EMAIL_OTP_CHALLENGE_STARTED:j.STEP_09_THRESHOLD_SESSION_RECONNECT_STARTED,status:`running`,walletId:e.walletId,message:t?`Signing session needs reauthorization; requesting Email OTP`:`Signing session needs reauthorization; requesting passkey`,interaction:{kind:`none`,overlay:`none`},data:{chain:e.chain,reason:`wallet_signing_budget_reserved`}})}async function qa(e,t){let n=r(e.touchConfirm.getContext().surfaceMeasurementBinding);n&&(n.assertPending(),e={...e,beforeSigning:n.beforeSigning});let i={admissionRetryState:{kind:`initial_admission`},operationIds:Fa(t.signingOperationId)};await e.touchConfirm.openTransactionPreparationModal({chain:`evm_family`,walletLabel:String(t.walletSession.walletId),model:Wa(t),confirmationConfigOverride:t.confirmationConfigOverride});try{return await $(e,t,i)}finally{e.touchConfirm.closeTransactionPreparationModal()}}async function $(e,t,n){Ft(t.shouldAbort);let r=C(t.walletSession.walletId),i=Nt({request:t.request,chainTarget:t.chainTarget});await jt(e.ensureSealedRefreshStartupParity,{walletId:r,chainTarget:i});let a=i.kind,o=i,s,c,l,u,d,f={walletId:r,chain:a,chainTarget:o,senderSignatureAlgorithm:t.request.senderSignatureAlgorithm},p=n.signingSessionCoordinator||e.signingSessionCoordinator;if(!p)throw Error(`[SigningEngine][ecdsa] production signing session coordinator is required`);let m=n.operationIds||Fa(t.signingOperationId),h=await tt({kind:`evm-family:${a}`,payload:{walletId:r,chainTarget:o,request:t.request}}),g=Ve(h);La(m,h,p);let _=()=>Ia(m),v=()=>({operationId:_(),operationFingerprint:h,intent:we.TransactionSign}),y=e=>void 0,b=`no_auth_side_effect_started`,ee=e=>{b=Oa({current:b,sideEffect:e})},x=(e,t)=>{let n=t instanceof Error?t.message:String(t||`unknown error`);f.freshAuthRetry={decision:e,sideEffectState:b,errorMessage:n},I(`evm-family`,{stage:`fresh_auth_retry.decision`,walletId:r,chain:a,chainTarget:o,decision:e,sideEffectState:b,errorMessage:n})},te=()=>(ee(`auth_prompt_shown`),_());t.request.senderSignatureAlgorithm===`secp256k1`?(u=await Mr({deps:e,walletSession:t.walletSession,signingTarget:i,signingOperation:v(),diagnostics:f,signingSessionCoordinator:p,forceFreshAuth:n.forceFreshAuth===!0}),d=Ua(u)??void 0,c=u.kind===`authorized`?u.signingLane:void 0,l=u.authMethod,s=u.kind===`authorized`?u.accountAuth:await Jt({senderSignatureAlgorithm:`secp256k1`,signerAuthMethod:u.authMethod}),I(`evm-family`,{stage:`ecdsa_attempt.prepared`,walletId:r,chain:a,chainTarget:o,...y(u)?{evmFamilyKeyFingerprint:y(u)}:{},authorizationState:u.kind,authMethod:l,lane:H(c)})):s=await Jt({senderSignatureAlgorithm:t.request.senderSignatureAlgorithm});let S=s;Ft(t.shouldAbort);let ne=e.requestEmailOtpTransactionSigningChallenge,w={confirmedDeps:{...e,requestEmailOtpTransactionSigningChallenge:ne},walletSession:t.walletSession,chain:a,accountAuth:S,operationFingerprintDigest:g,onEvent:t.onEvent},T=()=>{if(u)return u;throw Error(`[SigningEngine][ecdsa] prepared signing session is required`)},re=()=>t.request.senderSignatureAlgorithm===`secp256k1`?T():void 0,E=async i=>!xt(i)||n.reResolvedAfterSupersession?null:(I(`evm-family`,{stage:`ecdsa_attempt.material_superseded`,walletId:r,chain:a,chainTarget:o,supersessionKind:i.superseded.supersessionKind,preparedMaterialActivationId:String(i.superseded.preparedMaterialActivation.activationId),currentMaterialActivationId:String(i.superseded.currentMaterialActivation.activationId)}),await $(e,t,{admissionRetryState:{kind:`initial_admission`},operationIds:m,signingSessionCoordinator:p,reResolvedAfterSupersession:!0,...n.retryingFreshAuth?{retryingFreshAuth:!0}:{}})),ie=async()=>t.request.senderSignatureAlgorithm===`secp256k1`?await(async()=>{let t=T();return d?{signingAuthPlan:d.confirmationAuthPlan}:t.kind===`authorized`?await nr({...w,chainTarget:i,senderSignatureAlgorithm:`secp256k1`,ecdsaAuthorization:`reusable_wallet_session`,preparedOperation:t.preparedOperation}):await(async()=>{let n=N(t.identity,`auth-neutral ECDSA step-up planning`),r=await e.resolveCanonicalEcdsaSigningCapability({walletId:n.walletId,chainTarget:n.chainTarget,materialActivation:n.materialActivation});return await nr({...w,chainTarget:i,senderSignatureAlgorithm:`secp256k1`,ecdsaAuthorization:`operation_step_up`,capability:r,materialActivation:n.materialActivation,operationFingerprint:h})})()})():await nr({...w,chainTarget:i,senderSignatureAlgorithm:t.request.senderSignatureAlgorithm}),ae=async()=>{let{signingAuthPlan:n,signingSessionPlan:r,emailOtpSigning:i}=await ie(),a=i?{prepare:i.prepare,...i.resend?{resend:i.resend}:{}}:void 0,{flowArgs:s}=await Ca({deps:e,walletSession:t.walletSession,request:t.request,chainTarget:o,...t.request.senderSignatureAlgorithm===`secp256k1`?{senderSignatureAlgorithm:t.request.senderSignatureAlgorithm,preparedSession:T(),...d?{activeWalletAuthority:d}:{}}:{senderSignatureAlgorithm:t.request.senderSignatureAlgorithm},...r?{signingSessionPlan:r}:{},signingOperation:v(),onSigningOperationTransition:Hn,...a?{emailOtpSigningForFlow:a}:{},confirmationConfigOverride:t.confirmationConfigOverride,shouldAbort:t.shouldAbort,onEvent:t.onEvent,onAuthSideEffectStarted:ee});return{signingAuthPlan:n,signingSessionPlan:r,emailOtpSigning:i,flowArgs:s}},oe;try{oe=await ae()}catch(e){let t=await E(e);if(t)return t;throw e}let{signingAuthPlan:D,emailOtpSigning:se,flowArgs:ce}=oe,le=async i=>await Na({error:i,walletId:r,chain:t.request.chain,senderSignatureAlgorithm:t.request.senderSignatureAlgorithm,accountAuth:S,alreadyRetryingFreshEmailOtpAuth:n.retryingFreshAuth,hasEmailOtpSigningPlan:!!se,sideEffectState:b,signingSessionCoordinator:p,expiryContext:Aa({error:i,candidate:Va({prepared:u}),detectedAtMs:Date.now()}),onDecision:e=>x(e,i),onEvent:t.onEvent,retry:async()=>await $(e,t,{admissionRetryState:{kind:`initial_admission`},forceFreshAuth:!0,operationIds:m,retryingFreshAuth:!0,signingSessionCoordinator:p})}),ue=async i=>{if(xt(i))return await E(i)||null;let a=await le(i);if(a)return a;let o=ka({trigger:`wallet_signing_budget_exhausted`,error:i,senderSignatureAlgorithm:t.request.senderSignatureAlgorithm,accountAuth:S,activeSigningAuthMethod:T().authMethod,admissionRetryState:n.admissionRetryState,alreadyRetryingFreshAuth:n.retryingFreshAuth,hasStepUpAuthPlan:et(D)||$e(D),sideEffectState:b});if(x(o,i),o.kind!==`retry`)return null;let s=T();return s.kind===`authorized`?(o.retryMode!==`await_admission_owner_completion`&&Ka({walletId:r,chain:t.request.chain,accountAuth:S,onEvent:t.onEvent}),await Ga({deps:e,signingArgs:t,decision:o,queueKey:Ha({walletId:r,prepared:s}),operationIds:m,retryingFreshAuth:n.retryingFreshAuth===!0,signingSessionCoordinator:p})):null},O=re(),de={...v(),accountId:String(r)};if(O){let e=y(O);I(`evm-family`,{stage:`ecdsa_attempt.nonce_operation_prepared`,walletId:r,chain:a,chainTarget:o,...e?{evmFamilyKeyFingerprint:e}:{},...O.kind===`authorized`?{walletSessionId:O.signingLane.authorization.operationCredential.walletSessionId}:{},materialActivationId:O.kind===`authorized`?O.signingLane.materialActivation.activationId:O.candidate.materialActivation.activationId})}let k=re(),A=k&&!d?{kind:`required`,authPlan:{kind:`planned`,signingAuthPlan:D},operation:{intent:k.kind===`authorized`?k.transactionOperation.intent:k.intent,authPlan:D},runtime:(()=>{let e=ce.thresholdEcdsaStepUpRuntime;if(!e)throw Error(`[SigningEngine][ecdsa] prepared executor requires threshold step-up runtime`);return e})()}:{kind:`not_required`},fe;return fe=k?za({laneThresholdOwnerAddress:k.kind===`authorized`?k.signingLane.key.thresholdOwnerAddress:k.candidate.key.thresholdOwnerAddress,publicIdentityContinuity:{kind:`lane_identity_only`}}):{kind:`not_required`},await oi({deps:e,walletId:r,request:t.request,chainTarget:o,flowArgs:ce,nonceOperation:de,thresholdEcdsaState:fe,onConfirmationDisplayed:te,thresholdEcdsaStepUp:A,retryWithFreshEmailOtpAuth:ue})}async function Ja(e,t){await Fr(e,t)}async function Ya(e,t){await Lr(e,t)}async function Xa(e,t){await Rr(e,t)}async function Za(e,t){await zr(e,t)}async function Qa(e,t){return await Br(e,t)}export{hn as A,Ot as B,Tn as C,Sn as D,xn as E,At as F,z as I,kt as L,sn as M,dn as N,Cn as O,pn as P,Tt as R,Mn as S,jn as T,Et as V,Yn as _,Xa as a,Nn as b,oa as c,Pi as d,Mi as f,Qn as g,si as h,Za as i,fn as j,mn as k,Vi as l,wi as m,Ja as n,qa as o,Oi as p,Ya as r,Ba as s,Qa as t,zi as u,Jn as v,In as w,Pn as x,Wn as y,Dt as z};
@@ -1 +0,0 @@
1
- import"./errors-DfbnsXjO.js";import{r as e}from"./base64-ojm5DKcF.js";import"./capabilityKinds-XaXXiD2B.js";import{c as t}from"./ecdsaChainTarget-CRcRR78w.js";import"./signerDomain-BhUTzDmF.js";import"./signingSessionSeal-Mr2Xp44o.js";import{t as n}from"./executeWorkerOperation-CrFf3FkL.js";import{t as r}from"./bytes-t5S5mkat.js";import{d as i,r as a}from"./signingFlow-LUWrZi2d.js";import{t as o}from"./display-jK7_hYho.js";import{i as s}from"./evmCryptoWasm-CwEXiLrC.js";import{n as c,t as l}from"./signatureUses-CQkkUcwT.js";function u(e){if(e<0n)throw Error(`[tempoSignerWasm] negative bigint not supported`);return e.toString(10)}function d(e){if(typeof e==`bigint`){if(e<0n)throw Error(`[tempoSignerWasm] chainId must be a non-negative integer`);let t=Number(e);if(!Number.isSafeInteger(t))throw Error(`[tempoSignerWasm] chainId must be a non-negative safe integer`);return t}if(!Number.isSafeInteger(e)||e<0)throw Error(`[tempoSignerWasm] chainId must be a non-negative safe integer`);return e}function f(e){if(e===null)return null;if(e!==void 0)return u(e)}function p(e){if(typeof e==`bigint`)return e;throw Error(`[tempoSignerWasm] missing tx nonce`)}function m(e){if(e!==void 0)return e instanceof Uint8Array?Array.from(e):e.map(e=>m(e))}function h(e){return{chainId:d(e.chainId),maxPriorityFeePerGas:u(e.maxPriorityFeePerGas),maxFeePerGas:u(e.maxFeePerGas),gasLimit:u(e.gasLimit),calls:e.calls.map(e=>({to:e.to,value:u(e.value),input:e.input??`0x`})),accessList:(e.accessList??[]).map(e=>({address:e.address,storageKeys:e.storageKeys})),nonceKey:u(e.nonceKey),nonce:u(p(e.nonce)),validBefore:f(e.validBefore),validAfter:f(e.validAfter),feeToken:e.feeToken??null,feePayerSignature:e.feePayerSignature??{kind:`none`},aaAuthorizationList:m(e.aaAuthorizationList),keyAuthorization:m(e.keyAuthorization)}}const g=`tempoSigner`,_=2e4;async function v(e,t){let r=await n({ctx:t,kind:g,request:{type:`computeTempoSenderHash`,payload:{tx:h(e)},timeoutMs:_}});return new Uint8Array(r)}async function y(e){let t=e.senderSignature.slice().buffer,r=await n({ctx:e.workerCtx,kind:g,request:{type:`encodeTempoSignedTx`,payload:{tx:h(e.tx),senderSignature:t},timeoutMs:_,transfer:[t]}});return new Uint8Array(r)}var b=class{constructor(e){this.chain=`tempo`,this.workerCtx=e}async buildIntent(e){if(e.chain!==`tempo`)throw Error(`[TempoAdapter] invalid chain`);if(e.kind!==`tempoTransaction`)throw Error(`[TempoAdapter] unsupported request kind`);let t=await v(e.tx,this.workerCtx),n=r(t);return{chain:`tempo`,uiModel:{kind:`tempoTransaction`,tx:e.tx},signRequests:[e.senderSignatureAlgorithm===`webauthnP256`?{kind:`webauthn`,algorithm:`webauthnP256`,challenge32:t,label:`tempo:0x76:sender`}:{kind:`digest`,algorithm:`secp256k1`,digest32:t,label:`tempo:0x76:sender`}],finalize:async t=>({chain:`tempo`,kind:`tempoTransaction`,senderHashHex:n,rawTxHex:r(await y({tx:e.tx,senderSignature:t[0],workerCtx:this.workerCtx}))})}}};async function x(n){let r=t(n.walletId),i=await n.passkeyAuthenticatorStore.listWalletPasskeyAuthenticators(r);if(!i.length)throw Error(`[multichain] no passkeys found for wallet ${r}`);let{authenticatorsForPrompt:a}=await n.passkeyAuthenticatorStore.selectProfileAuthenticatorsForPrompt({profileId:r,authenticators:i,accountLabel:r}),o=a[0];if(!o)throw Error(`[multichain] missing authenticator for wallet ${r}`);let{pubKeyX32:c,pubKeyY32:l}=await s({cosePublicKey:o.credentialPublicKey,workerCtx:n.workerCtx}),u=e(o.credentialId);if(u.length===0)throw Error(`[multichain] invalid credentialId for authenticator`);return{type:`webauthnP256`,credentialId:u,pubKeyX:c,pubKeyY:l,rpId:n.rpId}}async function S(e){return e.request.kind===`eip1559`?await a({config:{targetKind:`tempo`,flowName:`tempo`,explicitAuthErrorLabel:`Tempo`,nonceErrorLabel:`Tempo`,title:`Sign Tempo Transaction`,body:``,buildIntent:async({workerCtx:e,request:t})=>await new c(e).buildIntent(t),buildDisplayModel:i,requiredSignatureUsesForRequest:l,webauthn:{kind:`not_supported`}},input:e}):await a({config:{targetKind:`tempo`,flowName:`tempo`,explicitAuthErrorLabel:`Tempo`,nonceErrorLabel:`Tempo`,title:`Sign Tempo Transaction`,body:``,buildIntent:async({workerCtx:e,request:t})=>await new b(e).buildIntent(t),buildDisplayModel:o,requiredSignatureUsesForRequest:l,webauthn:{kind:`supported`,requestNeedsWebAuthn:e=>e.senderSignatureAlgorithm===`webauthnP256`,validateIntent:e=>{if(e.signRequests.filter(e=>e.kind===`webauthn`).length>1)throw Error(`[chains] multiple WebAuthn sign requests are not supported yet`)},resolveKeyRef:async({ctx:e,walletId:t,workerCtx:n,signReq:r,credential:i})=>{let a=await x({passkeyAuthenticatorStore:e.passkeyAuthenticatorStore,walletId:t,workerCtx:n,rpId:r.rpId});return{signReq:{...r,credential:i},keyRef:a}}}},input:e})}export{S as signEvmFamilyWithUiConfirmForTempo};
@@ -1 +0,0 @@
1
- import"./errors-DfbnsXjO.js";import"./capabilityKinds-XaXXiD2B.js";import"./signerDomain-BhUTzDmF.js";import"./signingSessionSeal-Mr2Xp44o.js";import{d as e,r as t}from"./signingFlow-LUWrZi2d.js";import{n,t as r}from"./signatureUses-CQkkUcwT.js";async function i(i){return await t({config:{targetKind:`evm`,flowName:`evm`,explicitAuthErrorLabel:`EVM`,nonceErrorLabel:`EVM`,title:`Sign EVM Transaction`,body:``,buildIntent:async({workerCtx:e,request:t})=>await new n(e).buildIntent(t),buildDisplayModel:e,requiredSignatureUsesForRequest:r,webauthn:{kind:`not_supported`}},input:i})}export{i as signEvmWithUiConfirm};