@seams/wallet 0.8.0 → 0.9.1

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 (1243) 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/{awaitNearReady.js → waitForNearAccount.js} +12 -12
  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/{signingEngine/workerManager/ecdsaPresignLifecycle.js → config/presignatures.js} +2 -2
  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/evmAdapter.js +1 -1
  85. package/dist/esm/core/signingEngine/chains/near/display.js +1 -27
  86. package/dist/esm/core/signingEngine/chains/near/nearSignerWasm.js +2 -2
  87. package/dist/esm/core/signingEngine/flows/registration/accountLifecycle.js +6 -39
  88. package/dist/esm/core/signingEngine/flows/shared/signingConfirmation.js +2 -2
  89. package/dist/esm/core/signingEngine/flows/shared/signingStateMachine.js +1 -11
  90. package/dist/esm/core/signingEngine/flows/signEvmFamily/authPlanning.js +2 -2
  91. package/dist/esm/core/signingEngine/flows/signEvmFamily/ecdsaSelection.js +3 -3
  92. package/dist/esm/core/signingEngine/flows/signEvmFamily/emailOtpSigningSession.js +3 -136
  93. package/dist/esm/core/signingEngine/flows/signEvmFamily/freshWalletSessionRetry.js +1 -1
  94. package/dist/esm/core/signingEngine/flows/signEvmFamily/operationIds.js +1 -1
  95. package/dist/esm/core/signingEngine/flows/signEvmFamily/preparedSigning.js +2 -3
  96. package/dist/esm/core/signingEngine/flows/signEvmFamily/readySecp256k1Material.js +40 -5
  97. package/dist/esm/core/signingEngine/flows/signEvmFamily/signEvmFamily.js +4 -4
  98. package/dist/esm/core/signingEngine/flows/signEvmFamily/signers/ecdsaDerivationClientSigningMaterialSource.js +1 -1
  99. package/dist/esm/core/signingEngine/flows/signEvmFamily/signers/secp256k1.js +27 -53
  100. package/dist/esm/core/signingEngine/flows/signEvmFamily/signingFlow.js +5 -5
  101. package/dist/esm/core/signingEngine/flows/signEvmFamily/signingFlowRuntime.js +40 -33
  102. package/dist/esm/core/signingEngine/flows/signEvmFamily/thresholdAdmission.js +8 -2
  103. package/dist/esm/core/signingEngine/flows/signNear/implicitAccountFunding.js +1 -1
  104. package/dist/esm/core/signingEngine/flows/signNear/shared/ed25519YaoNormalSigning.js +177 -68
  105. package/dist/esm/core/signingEngine/flows/signNear/shared/implicitAccountFundingPort.js +1 -8
  106. package/dist/esm/core/signingEngine/flows/signNear/shared/operationStepUpPreparation.js +1 -38
  107. package/dist/esm/core/signingEngine/flows/signNear/shared/signatureOnlySigning.js +53 -8
  108. package/dist/esm/core/signingEngine/flows/signNear/signDelegate.js +5 -5
  109. package/dist/esm/core/signingEngine/flows/signNear/signNear.js +30 -44
  110. package/dist/esm/core/signingEngine/flows/signNear/signNep413.js +21 -12
  111. package/dist/esm/core/signingEngine/flows/signNear/signTransactions.js +59 -11
  112. package/dist/esm/core/signingEngine/interfaces/ecdsaChainTarget.js +1 -1
  113. package/dist/esm/core/signingEngine/nonce/nonceLaneKeys.js +1 -35
  114. package/dist/esm/core/signingEngine/nonce/nonceTypes.js +2 -26
  115. package/dist/esm/core/signingEngine/routerAb/ecdsaDerivation/httpRequest.js +4 -3
  116. package/dist/esm/core/signingEngine/routerAb/ecdsaDerivation/poolFillRoutes.js +5 -1
  117. package/dist/esm/core/signingEngine/routerAb/ecdsaDerivation/presignaturePool.js +112 -162
  118. package/dist/esm/core/signingEngine/routerAb/ecdsaDerivation/presignaturePoolPolicy.js +31 -0
  119. package/dist/esm/core/signingEngine/routerAb/ecdsaDerivation/signingMaterialRef.js +1 -1
  120. package/dist/esm/core/signingEngine/session/availability/availableSigningLanes.js +3 -913
  121. package/dist/esm/core/signingEngine/session/emailOtp/challengeDelivery.js +1 -45
  122. package/dist/esm/core/signingEngine/session/emailOtp/ecdsaSigningSessionAuthority.js +1 -81
  123. package/dist/esm/core/signingEngine/session/identity/clientSessionPersistenceState.js +1 -43
  124. package/dist/esm/core/signingEngine/session/identity/emailOtpEcdsaDerivationIdentity.js +1 -9
  125. package/dist/esm/core/signingEngine/session/identity/evmFamilyEcdsaIdentity.js +3 -125
  126. package/dist/esm/core/signingEngine/session/identity/exactSigningLaneIdentity.js +3 -19
  127. package/dist/esm/core/signingEngine/session/identity/laneIdentity.js +2 -106
  128. package/dist/esm/core/signingEngine/session/keyMaterialBrands.js +1 -1
  129. package/dist/esm/core/signingEngine/session/lifecycle/walletSessionFailure.js +1 -1
  130. package/dist/esm/core/signingEngine/session/material/activeEcdsaCapabilityRuntime.js +1 -114
  131. package/dist/esm/core/signingEngine/session/material/activeWalletAuthorityEcdsaRuntime.js +2 -2
  132. package/dist/esm/core/signingEngine/session/material/ecdsaCapabilityManifest.js +2 -187
  133. package/dist/esm/core/signingEngine/session/material/ecdsaRoleLocalMaterialResolver.js +2 -18
  134. package/dist/esm/core/signingEngine/session/material/ecdsaSigningCapability.js +2 -130
  135. package/dist/esm/core/signingEngine/session/material/linkedEcdsaHolderRuntime.js +1 -25
  136. package/dist/esm/core/signingEngine/session/material/nearEd25519YaoMaterialActivation.js +1 -73
  137. package/dist/esm/core/signingEngine/session/material/walletSigningStateFailure.js +1 -69
  138. package/dist/esm/core/signingEngine/session/operationState/preparedOperation.js +1 -5
  139. package/dist/esm/core/signingEngine/session/operationState/transactionState.js +0 -1
  140. package/dist/esm/core/signingEngine/session/passkey/prfCache.js +1 -5
  141. package/dist/esm/core/signingEngine/session/persistence/durableSealedSessionCommands.js +1 -9
  142. package/dist/esm/core/signingEngine/session/persistence/ecdsaRoleLocalRecords.js +3 -202
  143. package/dist/esm/core/signingEngine/session/persistence/sealedSessionRecords.js +4 -83
  144. package/dist/esm/core/signingEngine/session/persistence/sealedSessionStore.js +2 -2
  145. package/dist/esm/core/signingEngine/session/planning/planner.js +2 -13
  146. package/dist/esm/core/signingEngine/session/sealedRecovery/materialActivationKey.js +1 -8
  147. package/dist/esm/core/signingEngine/session/warmCapabilities/routerAbWalletSessionCredential.js +2 -1
  148. package/dist/esm/core/signingEngine/session/warmCapabilities/sealedRefreshParity.js +2 -41
  149. package/dist/esm/core/signingEngine/stepUpConfirmation/intentDigestPreparation.js +1 -14
  150. package/dist/esm/core/signingEngine/stepUpConfirmation/types.js +1 -7
  151. package/dist/esm/core/signingEngine/threshold/commitQueueShared.js +1 -127
  152. package/dist/esm/core/signingEngine/threshold/crypto/ecdsaDerivationClientWasm.js +3 -297
  153. package/dist/esm/core/signingEngine/threshold/ecdsa/operationStepUp.js +10 -24
  154. package/dist/esm/core/signingEngine/threshold/ed25519/walletSession.js +7 -209
  155. package/dist/esm/core/signingEngine/threshold/ed25519/yaoPublicCapabilityReferences.js +5 -208
  156. package/dist/esm/core/signingEngine/threshold/sessionPolicy.js +3 -9
  157. package/dist/esm/core/signingEngine/uiConfirm/nearFundingNotice.js +1 -17
  158. package/dist/esm/core/signingEngine/uiConfirm/ui/confirm-surface-resize.js +2 -173
  159. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ConfirmationContent.js +3 -3
  160. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ReviewDisclosure.js +2 -2
  161. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/TransactionReceipt.js +1 -1
  162. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/TransactionReview.js +5 -4
  163. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/mountConfirmationSurface.js +2 -2
  164. package/dist/esm/core/signingEngine/uiConfirm/ui/surface-resize-events.js +1 -6
  165. package/dist/esm/core/signingEngine/uiConfirm/ui/transaction-display/abi/abiDecode.js +1 -1
  166. package/dist/esm/core/signingEngine/webauthnAuth/credentials/credentialExtensions.js +1 -19
  167. package/dist/esm/core/signingEngine/webauthnAuth/credentials/helpers.js +2 -170
  168. package/dist/esm/core/signingEngine/workerManager/ecdsaPresignPoolIdentity.js +27 -5
  169. package/dist/esm/core/signingEngine/workerManager/validation.js +1 -104
  170. package/dist/esm/core/signingEngine/workerManager/workerTypes.js +1 -33
  171. package/dist/esm/core/types/rpc.js +1 -4
  172. package/dist/esm/core/types/sdkSentEvents.js +1 -24
  173. package/dist/esm/core/walletRuntimePaths/base.js +1 -28
  174. package/dist/esm/externalEvm/controller.js +7 -7
  175. package/dist/esm/index.js +8 -7
  176. package/dist/esm/react/components/AccountMenuButton/AuthenticationMethodsModal.js +9 -9
  177. package/dist/esm/react/components/AccountMenuButton/LinkedDevicesModal.css +1 -2
  178. package/dist/esm/react/components/AccountMenuButton/LinkedDevicesModal.js +9 -185
  179. package/dist/esm/react/components/AccountMenuButton/WalletRegionSection.js +303 -0
  180. package/dist/esm/react/components/AccountMenuButton/WalletSettingsLayout.js +31 -5
  181. package/dist/esm/react/components/AccountMenuButton/index.js +21 -13
  182. package/dist/esm/react/components/AccountMenuButton/types.js +2 -1
  183. package/dist/esm/react/components/HostedSeamsAuthMenu/shell.js +5 -17
  184. package/dist/esm/react/components/QRCodeScanner.js +5 -5
  185. package/dist/esm/react/components/ShowQRCode.js +13 -13
  186. package/dist/esm/react/context/SeamsWebProvider.js +1 -2
  187. package/dist/esm/react/context/index.js +8 -10
  188. package/dist/esm/react/context/seamsManagerSingleton.js +1 -1
  189. package/dist/esm/react/context/useLoginStateRefresher.js +10 -13
  190. package/dist/esm/react/context/useNearProvisioningStateRefresh.js +3 -3
  191. package/dist/esm/react/context/useSeamsContextValue.js +33 -81
  192. package/dist/esm/react/context/useSeamsWithSdkFlow.js +22 -51
  193. package/dist/esm/react/context/useWalletIframeLifecycle.js +20 -110
  194. package/dist/esm/react/hooks/useAccountInput.js +10 -13
  195. package/dist/esm/react/hooks/useDeviceLinking.js +1 -1
  196. package/dist/esm/react/hooks/useNearClient.js +1 -1
  197. package/dist/esm/react/hooks/useQRCamera.js +2 -8
  198. package/dist/esm/react/hooks/useWallet.js +5 -6
  199. package/dist/esm/react/hooks/useWalletAuth.js +3 -4
  200. package/dist/esm/react/hooks/useWalletDevices.js +2 -2
  201. package/dist/esm/react/index.js +4 -4
  202. package/dist/esm/react/transactionReview/TransactionReviewHost.js +1 -1
  203. package/dist/esm/react/transactionReview/boundCalls.js +5 -39
  204. package/dist/esm/react/transactionReview/controller.js +3 -4
  205. package/dist/esm/react/transactionReview/snapshot.js +1 -1
  206. package/dist/esm/react/utils/walletIframe.js +11 -52
  207. package/dist/esm/sdk/{ConfirmationDrawer-DrsREojk.js → ConfirmationDrawer-DY0_yeUV.js} +1 -1
  208. package/dist/esm/sdk/NonceCoordinator-CFFq8-Q9.js +1 -0
  209. package/dist/esm/sdk/accountLifecycle-CAMVowDl.js +1 -0
  210. package/dist/esm/sdk/activeWalletSession-DiZcKjB_.js +1 -0
  211. package/dist/esm/sdk/adapters-DdDOQzl4.js +2 -0
  212. package/dist/esm/sdk/appearance-ZGVLwA4N.js +1 -0
  213. package/dist/esm/sdk/authenticatorOptions-DMLnDWT2.js +1 -0
  214. package/dist/esm/sdk/authorizationAdmission-Ckx6q6tp.js +1 -0
  215. package/dist/esm/sdk/bytes-BBYkulRB.js +1 -0
  216. package/dist/esm/sdk/canonicalPrimitives-CKPGgpxg.js +1 -0
  217. package/dist/esm/sdk/canonicalSignerErrorCode-DEHsPxNm.js +1 -0
  218. package/dist/esm/sdk/{capabilityKinds-XaXXiD2B.js → capabilityKinds-CKQ4Uqnv.js} +1 -1
  219. package/dist/esm/sdk/chains-CiYQT1K4.js +1 -0
  220. package/dist/esm/sdk/challengeDelivery-DxXAkOfS.js +1 -0
  221. package/dist/esm/sdk/clientSessionPersistenceState-CImFWDj6.js +1 -0
  222. package/dist/esm/sdk/commitQueue-iBNUt9Bz.js +1 -0
  223. package/dist/esm/sdk/configBuilder-ZiZwFKt4.js +1 -0
  224. package/dist/esm/sdk/configHelpers-D8Ivi6p8.js +1 -0
  225. package/dist/esm/sdk/digestEncoding-Dzc1rzWV.js +1 -0
  226. package/dist/esm/sdk/display-ClqZq-Xt.js +1 -0
  227. package/dist/esm/sdk/ecdsaCapabilityManifest-BlzJAQF8.js +1 -0
  228. package/dist/{public/sdk/ecdsaChainTarget-CRcRR78w.js → esm/sdk/ecdsaChainTarget-C8ZtMZ8l.js} +1 -1
  229. package/dist/esm/sdk/ecdsaDerivationClientWasm-CVeNEou2.js +1 -0
  230. package/dist/esm/sdk/ecdsaDerivationExport-BZFHSMCv.js +1 -0
  231. package/dist/esm/sdk/{ecdsaWalletRecords-Cm1DdexN.js → ecdsaWalletRecords-D4WeYc7H.js} +1 -1
  232. package/dist/esm/sdk/emailOtpEcdsaDerivationIdentity-B8HzTh4T.js +1 -0
  233. package/dist/esm/sdk/enrichDisplayModelWithAbi-69bNckvi.js +1 -0
  234. package/dist/esm/sdk/{evmCryptoWasm-CwEXiLrC.js → evmCryptoWasm-BXsIyRon.js} +1 -1
  235. package/dist/esm/sdk/export-viewer-host-CsFeiIhd.js +1 -0
  236. package/dist/esm/sdk/exportKeypairOperation-DGQIYML3.js +1 -0
  237. package/dist/esm/sdk/helpers-Ddy72ULN.js +1 -0
  238. package/dist/esm/sdk/host-c1__wJwz.js +1 -0
  239. package/dist/esm/sdk/intentDigest-CE-tLw87.js +1 -0
  240. package/dist/esm/sdk/jsxRuntime.module-BcZNe_OA.js +2 -0
  241. package/dist/esm/sdk/lanes-DnBwWv4l.js +1 -0
  242. package/dist/esm/sdk/localOnly-ClCo6602.js +1 -0
  243. package/dist/esm/sdk/messages-vxz27Way.js +1 -0
  244. package/dist/esm/sdk/mountExportPrivateKeySurface-CBZ0wRYj.js +1 -0
  245. package/dist/{public/sdk/mountRecoveryCodeBackupSurface-BBCTaQsu.js → esm/sdk/mountRecoveryCodeBackupSurface-B1qhFF6G.js} +2 -2
  246. package/dist/esm/sdk/nearEd25519YaoMaterialActivation-fWQI3rYj.js +1 -0
  247. package/dist/esm/sdk/nearEd25519YaoSigningPreparation-B0d1AG3u.js +1 -0
  248. package/dist/{public/sdk/nonceLaneKeys-BBYi4g51.js → esm/sdk/nonceLaneKeys-Fkvk2UPy.js} +1 -1
  249. package/dist/esm/sdk/normalization-CpLZcL2f.js +1 -0
  250. package/dist/esm/sdk/normalization-DCvuCvh0.js +1 -0
  251. package/dist/esm/sdk/normalize-kUDm5zfS.js +1 -0
  252. package/dist/esm/sdk/{operationFingerprint-DtQb0pdp.js → operationFingerprint-CTR9G1NT.js} +1 -1
  253. package/dist/esm/sdk/passkey-custody-BQj44jEM.js +1 -0
  254. package/dist/esm/sdk/pendingWalletRecoveryCodeBackup-yJN8VAHn.js +1 -0
  255. package/dist/esm/sdk/presignaturePool-DwlTReFO.js +1 -0
  256. package/dist/esm/sdk/presignatures-DB2IPD-A.js +1 -0
  257. package/dist/esm/sdk/{prfCache-Mbo7_USg.js → prfCache-BMpqZZ-v.js} +1 -1
  258. package/dist/esm/sdk/primitives-CAcl7ON7.js +1 -0
  259. package/dist/esm/sdk/promptText-D2f5Rg0h.js +1 -0
  260. package/dist/esm/sdk/recovery-entrypoint-Bl5GgbW9.js +1 -0
  261. package/dist/esm/sdk/registration-C4sALQZO.js +1 -0
  262. package/dist/esm/sdk/registration-CEqVAgNJ.js +1 -0
  263. package/dist/esm/sdk/{registrationAccounts-DIeEVy6W.js → registrationAccounts-D4RVetMz.js} +1 -1
  264. package/dist/esm/sdk/registrationAuthMethodInput-6ccY2Vuh.js +1 -0
  265. package/dist/esm/sdk/registrationIds-CdPqm-Ya.js +1 -0
  266. package/dist/esm/sdk/registrationIntent-DOkZcKSP.js +1 -0
  267. package/dist/esm/sdk/registrationSignerPlan-B9GCvpTV.js +1 -0
  268. package/dist/esm/sdk/requireStepUpAuth-DCVqmeee.js +1 -0
  269. package/dist/esm/sdk/routerAbNormalSigning-BG75eyI2.js +1 -0
  270. package/dist/esm/sdk/router_ab_ed25519_yao_client_bg.wasm +0 -0
  271. package/dist/esm/sdk/runtime-auth-BKFyLISf.js +1 -0
  272. package/dist/esm/sdk/runtime-device-link-ENxdEXQW.js +1 -0
  273. package/dist/esm/sdk/runtime-ecdsa-tempo-DhGEb9U7.js +1 -0
  274. package/dist/esm/sdk/runtime-email-otp-dgsP7XZi.js +1 -0
  275. package/dist/esm/sdk/runtime-export-D2RCm5Gk.js +1 -0
  276. package/dist/esm/sdk/runtime-near-Bf-9MFBQ.js +1 -0
  277. package/dist/esm/sdk/runtime-preferences-LQ8SPE7o.js +1 -0
  278. package/dist/esm/sdk/runtime-recovery-BuEzJzuZ.js +1 -0
  279. package/dist/esm/sdk/runtime-recovery-codes-BZMiAR_5.js +1 -0
  280. package/dist/esm/sdk/sdkSentEvents-D3q1h-Uo.js +1 -0
  281. package/dist/esm/sdk/secp256k1-DSLttQND.js +1 -0
  282. package/dist/esm/sdk/{secureRandomId-CTdlJ5Mx.js → secureRandomId-BIekT8bE.js} +1 -1
  283. package/dist/esm/sdk/sessionPolicy-J-RrlPZQ.js +1 -0
  284. package/dist/esm/sdk/shared-8ffIBYw2.js +6 -0
  285. package/dist/esm/sdk/signEvmFamily-KUNWKVeh.js +1 -0
  286. package/dist/esm/sdk/{signEvmFamilyWithUiConfirmForTempo-DgTbh6jX.js → signEvmFamilyWithUiConfirmForTempo-Dc57bJ3V.js} +1 -1
  287. package/dist/esm/sdk/{signEvmWithUiConfirm-ChreN7aZ.js → signEvmWithUiConfirm-CqxL7UbT.js} +1 -1
  288. package/dist/esm/sdk/signNear-BhTkDm2-.js +1 -0
  289. package/dist/esm/sdk/{signatureUses-CQkkUcwT.js → signatureUses-CjJ233KX.js} +1 -1
  290. package/dist/esm/sdk/signerDomain-vQmlnsbF.js +1 -0
  291. package/dist/esm/sdk/signingFlow-vrXxrhlG.js +2 -0
  292. package/dist/esm/sdk/signingQueue-BrGJXBqe.js +1 -0
  293. package/dist/esm/sdk/{signingSessionSeal-Mr2Xp44o.js → signingSessionSeal-CDLUmAFY.js} +1 -1
  294. package/dist/esm/sdk/singletons-8UH3gOnZ.js +1 -0
  295. package/dist/esm/sdk/theme-_AUTWLS_.js +1 -0
  296. package/dist/esm/sdk/thresholdEcdsa-CO7xo1So.js +1 -0
  297. package/dist/esm/sdk/trace-BvbCxdXF.js +1 -0
  298. package/dist/esm/sdk/transaction-activity-D40ih2j-.js +1 -0
  299. package/dist/esm/sdk/transactionReviewAdmission-C-a3ctCJ.js +1 -0
  300. package/dist/esm/sdk/transactionState-DVinJk4K.js +1 -0
  301. package/dist/esm/sdk/tx-confirm-ui.js +7 -11
  302. package/dist/esm/sdk/{promptText-s8TQ6ckX.js → types-BNUuaUtl.js} +1 -1
  303. package/dist/esm/sdk/{types-M7vxrYtJ.js → types-D3GM-uHR.js} +1 -1
  304. package/dist/esm/sdk/wallet-iframe-host-ecdsa.js +1 -1
  305. package/dist/esm/sdk/wallet-iframe-host-full.js +1 -1
  306. package/dist/esm/sdk/wallet-iframe-host-near.js +1 -1
  307. package/dist/esm/sdk/wallet-iframe-host-runtime.js +1 -1
  308. package/dist/esm/sdk/wallet-recovery-C1kesLCF.js +1 -0
  309. package/dist/esm/sdk/wallet-ui.css +1 -1
  310. package/dist/esm/sdk/walletAuthMethodRecord-CXedSgpV.js +1 -0
  311. package/dist/esm/sdk/walletAuthority-B5hXHWpK.js +1 -0
  312. package/dist/esm/sdk/walletCustodyEcdsaContinuity-abNZ_dvX.js +1 -0
  313. package/dist/esm/sdk/{walletIframeIdentity-C0b0XMQF.js → walletIframeIdentity-DJ0KOBHg.js} +1 -1
  314. package/dist/esm/sdk/walletOwnershipGeneration-DoXVMDWe.js +1 -0
  315. package/dist/esm/sdk/walletRecoveryCommit-Cc9AqHr0.js +1 -0
  316. package/dist/esm/sdk/walletRecoveryRotate-DWTAFYiv.js +1 -0
  317. package/dist/esm/sdk/walletSessionAuthorizationProjection-DWBksIJR.js +1 -0
  318. package/dist/esm/sdk/walletSessionAuthorizationStatus-o1VgsLhA.js +1 -0
  319. package/dist/esm/sdk/walletSessionAuthorizationStore-gEYPmu-G.js +1 -0
  320. package/dist/esm/sdk/walletSessionFailure-Bu4VPKTz.js +1 -0
  321. package/dist/esm/sdk/warmSessionHydration-DgjuUacN.js +1 -0
  322. package/dist/esm/sdk/{webauthnP256-qu06GNFm.js → webauthnP256-BEz4DEAs.js} +1 -1
  323. package/dist/esm/sdk/{webauthnPromptCoordinator-DO-qfECu.js → webauthnPromptCoordinator-BEudHQBr.js} +1 -1
  324. package/dist/esm/shared-ts/src/authorization/capabilityKinds.js +1 -7
  325. package/dist/esm/shared-ts/src/authorization/delegatedAuthority.js +2 -20
  326. package/dist/esm/shared-ts/src/authorization/index.js +1 -2
  327. package/dist/esm/shared-ts/src/authorization/operationFingerprint.js +1 -20
  328. package/dist/esm/shared-ts/src/authorization/walletAuthority.js +4 -51
  329. package/dist/esm/shared-ts/src/authorization/walletSessionIssuance.js +1 -112
  330. package/dist/esm/shared-ts/src/device-linking/activeWalletSession.js +13 -3
  331. package/dist/esm/shared-ts/src/device-linking/authorityActivation.js +6 -116
  332. package/dist/esm/shared-ts/src/device-linking/committedSignerPackages.js +3 -270
  333. package/dist/esm/shared-ts/src/device-linking/delegatedActivationPlan.js +2 -2
  334. package/dist/esm/shared-ts/src/device-linking/deviceManagement.js +1 -12
  335. package/dist/esm/shared-ts/src/device-linking/digests.js +1 -109
  336. package/dist/esm/shared-ts/src/device-linking/index.js +0 -2
  337. package/dist/esm/shared-ts/src/device-linking/parsers.js +7 -921
  338. package/dist/esm/shared-ts/src/device-linking/requestProof.js +1 -19
  339. package/dist/esm/shared-ts/src/device-linking/sourceContribution.js +5 -358
  340. package/dist/esm/shared-ts/src/device-linking/walletSessionCredentialDelivery.js +1 -172
  341. package/dist/esm/shared-ts/src/device-linking/wireFields.js +4 -5
  342. package/dist/esm/shared-ts/src/near/actions.js +1 -13
  343. package/dist/esm/shared-ts/src/near/nearClient.js +1 -1
  344. package/dist/esm/shared-ts/src/passkey-custody/custodyEnvelope.js +3 -59
  345. package/dist/esm/shared-ts/src/passkey-custody/custodySecretBinding.js +4 -8
  346. package/dist/esm/shared-ts/src/passkey-custody/index.js +0 -1
  347. package/dist/esm/shared-ts/src/signing-lanes/index.js +0 -1
  348. package/dist/esm/shared-ts/src/signing-lanes/ownerContinuity.js +0 -59
  349. package/dist/esm/shared-ts/src/threshold/ed25519OperationFingerprint.js +1 -1
  350. package/dist/esm/shared-ts/src/threshold/keyMaterialBrands.js +1 -4
  351. package/dist/esm/shared-ts/src/threshold/participants.js +1 -2
  352. package/dist/esm/shared-ts/src/threshold/signingRootScope.js +1 -4
  353. package/dist/esm/shared-ts/src/utils/authenticatorOptions.js +1 -12
  354. package/dist/esm/shared-ts/src/utils/canonicalPrimitives.js +2 -5
  355. package/dist/esm/shared-ts/src/utils/domainIds.js +1 -7
  356. package/dist/esm/shared-ts/src/utils/ecdsaCapabilityActivation.js +1 -16
  357. package/dist/esm/shared-ts/src/utils/ecdsaServerTiming.js +6 -1
  358. package/dist/esm/shared-ts/src/utils/emailOtpDomain.js +1 -23
  359. package/dist/esm/shared-ts/src/utils/emailOtpRecoveryKey.js +1 -42
  360. package/dist/esm/shared-ts/src/utils/errors.js +1 -43
  361. package/dist/esm/shared-ts/src/utils/index.js +18 -22
  362. package/dist/esm/shared-ts/src/utils/near.js +2 -74
  363. package/dist/esm/shared-ts/src/utils/normalize.js +1 -22
  364. package/dist/esm/shared-ts/src/utils/registrationAuthMethodInput.js +1 -74
  365. package/dist/esm/shared-ts/src/utils/registrationEstablishedSession.js +6 -275
  366. package/dist/esm/shared-ts/src/utils/registrationIds.js +1 -203
  367. package/dist/esm/shared-ts/src/utils/registrationIntent.js +1 -389
  368. package/dist/esm/shared-ts/src/utils/registrationSignerPlan.js +2 -434
  369. package/dist/esm/shared-ts/src/utils/routerAbEcdsaDerivation.js +6 -414
  370. package/dist/esm/shared-ts/src/utils/routerAbEd25519Yao.js +1 -334
  371. package/dist/esm/shared-ts/src/utils/routerAbEd25519YaoDigests.js +2 -40
  372. package/dist/esm/shared-ts/src/utils/routerAbNormalSigningIdentity.js +1 -1
  373. package/dist/esm/shared-ts/src/utils/signingSessionSeal.js +1 -6
  374. package/dist/esm/shared-ts/src/utils/thresholdEcdsaKeyHandle.js +1 -6
  375. package/dist/esm/shared-ts/src/utils/validation.js +2 -17
  376. package/dist/esm/shared-ts/src/utils/walletAuthAuthority.js +1 -28
  377. package/dist/esm/shared-ts/src/utils/walletAuthMethodRecord.js +1 -11
  378. package/dist/esm/shared-ts/src/utils/walletCapabilityBindings.js +1 -7
  379. package/dist/esm/shared-ts/src/wallet-recovery/index.js +3 -5
  380. package/dist/esm/shared-ts/src/wallet-recovery/recoveryCodeIssuance.js +1 -35
  381. package/dist/esm/shared-ts/src/wallet-recovery/recoveryCodeLocator.js +0 -32
  382. package/dist/esm/shared-ts/src/wallet-recovery/recoveryCodeReservation.js +1 -15
  383. package/dist/esm/shared-ts/src/wallet-recovery/recoveryKeyId.js +0 -11
  384. package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryCommittedProjection.js +1 -1
  385. package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryEcdsaPossession.js +2 -42
  386. package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryEnvelopeSet.js +3 -53
  387. package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryRotation.js +2 -63
  388. package/dist/esm/threshold.js +1 -1
  389. package/dist/esm/utils/intentDigest.js +1 -4
  390. package/dist/esm/wasm/near_signer/pkg/wasm_signer_worker_bg.wasm +0 -0
  391. package/dist/esm/wasm/router_ab_ecdsa_client/pkg/router_ab_ecdsa_client_bg.wasm +0 -0
  392. package/dist/esm/wasm/router_ab_ed25519_yao_client/pkg/router_ab_ed25519_yao_client_bg.wasm +0 -0
  393. package/dist/public/headers.manifest.json +1 -1
  394. package/dist/public/sdk/{ConfirmationDrawer-DrsREojk.js → ConfirmationDrawer-DY0_yeUV.js} +1 -1
  395. package/dist/public/sdk/NonceCoordinator-CFFq8-Q9.js +1 -0
  396. package/dist/public/sdk/accountLifecycle-CAMVowDl.js +1 -0
  397. package/dist/public/sdk/activeWalletSession-DiZcKjB_.js +1 -0
  398. package/dist/public/sdk/adapters-DdDOQzl4.js +2 -0
  399. package/dist/public/sdk/appearance-ZGVLwA4N.js +1 -0
  400. package/dist/public/sdk/authenticatorOptions-DMLnDWT2.js +1 -0
  401. package/dist/public/sdk/authorizationAdmission-Ckx6q6tp.js +1 -0
  402. package/dist/public/sdk/bytes-BBYkulRB.js +1 -0
  403. package/dist/public/sdk/canonicalPrimitives-CKPGgpxg.js +1 -0
  404. package/dist/public/sdk/canonicalSignerErrorCode-DEHsPxNm.js +1 -0
  405. package/dist/public/sdk/{capabilityKinds-XaXXiD2B.js → capabilityKinds-CKQ4Uqnv.js} +1 -1
  406. package/dist/public/sdk/chains-CiYQT1K4.js +1 -0
  407. package/dist/public/sdk/challengeDelivery-DxXAkOfS.js +1 -0
  408. package/dist/public/sdk/clientSessionPersistenceState-CImFWDj6.js +1 -0
  409. package/dist/public/sdk/commitQueue-iBNUt9Bz.js +1 -0
  410. package/dist/public/sdk/configBuilder-ZiZwFKt4.js +1 -0
  411. package/dist/public/sdk/configHelpers-D8Ivi6p8.js +1 -0
  412. package/dist/public/sdk/digestEncoding-Dzc1rzWV.js +1 -0
  413. package/dist/public/sdk/display-ClqZq-Xt.js +1 -0
  414. package/dist/public/sdk/ecdsaCapabilityManifest-BlzJAQF8.js +1 -0
  415. package/dist/{esm/sdk/ecdsaChainTarget-CRcRR78w.js → public/sdk/ecdsaChainTarget-C8ZtMZ8l.js} +1 -1
  416. package/dist/public/sdk/ecdsaDerivationClientWasm-CVeNEou2.js +1 -0
  417. package/dist/public/sdk/ecdsaDerivationExport-BZFHSMCv.js +1 -0
  418. package/dist/public/sdk/{ecdsaWalletRecords-Cm1DdexN.js → ecdsaWalletRecords-D4WeYc7H.js} +1 -1
  419. package/dist/public/sdk/emailOtpEcdsaDerivationIdentity-B8HzTh4T.js +1 -0
  420. package/dist/public/sdk/enrichDisplayModelWithAbi-69bNckvi.js +1 -0
  421. package/dist/public/sdk/{evmCryptoWasm-CwEXiLrC.js → evmCryptoWasm-BXsIyRon.js} +1 -1
  422. package/dist/public/sdk/export-viewer-host-CsFeiIhd.js +1 -0
  423. package/dist/public/sdk/exportKeypairOperation-DGQIYML3.js +1 -0
  424. package/dist/public/sdk/helpers-Ddy72ULN.js +1 -0
  425. package/dist/public/sdk/host-c1__wJwz.js +1 -0
  426. package/dist/public/sdk/intentDigest-CE-tLw87.js +1 -0
  427. package/dist/public/sdk/jsxRuntime.module-BcZNe_OA.js +2 -0
  428. package/dist/public/sdk/lanes-DnBwWv4l.js +1 -0
  429. package/dist/public/sdk/localOnly-ClCo6602.js +1 -0
  430. package/dist/public/sdk/messages-vxz27Way.js +1 -0
  431. package/dist/public/sdk/mountExportPrivateKeySurface-CBZ0wRYj.js +1 -0
  432. package/dist/{esm/sdk/mountRecoveryCodeBackupSurface-BBCTaQsu.js → public/sdk/mountRecoveryCodeBackupSurface-B1qhFF6G.js} +2 -2
  433. package/dist/public/sdk/nearEd25519YaoMaterialActivation-fWQI3rYj.js +1 -0
  434. package/dist/public/sdk/nearEd25519YaoSigningPreparation-B0d1AG3u.js +1 -0
  435. package/dist/{esm/sdk/nonceLaneKeys-BBYi4g51.js → public/sdk/nonceLaneKeys-Fkvk2UPy.js} +1 -1
  436. package/dist/public/sdk/normalization-CpLZcL2f.js +1 -0
  437. package/dist/public/sdk/normalization-DCvuCvh0.js +1 -0
  438. package/dist/public/sdk/normalize-kUDm5zfS.js +1 -0
  439. package/dist/public/sdk/{operationFingerprint-DtQb0pdp.js → operationFingerprint-CTR9G1NT.js} +1 -1
  440. package/dist/public/sdk/passkey-custody-BQj44jEM.js +1 -0
  441. package/dist/public/sdk/pendingWalletRecoveryCodeBackup-yJN8VAHn.js +1 -0
  442. package/dist/public/sdk/presignaturePool-DwlTReFO.js +1 -0
  443. package/dist/public/sdk/presignatures-DB2IPD-A.js +1 -0
  444. package/dist/public/sdk/{prfCache-Mbo7_USg.js → prfCache-BMpqZZ-v.js} +1 -1
  445. package/dist/public/sdk/primitives-CAcl7ON7.js +1 -0
  446. package/dist/public/sdk/promptText-D2f5Rg0h.js +1 -0
  447. package/dist/public/sdk/recovery-entrypoint-Bl5GgbW9.js +1 -0
  448. package/dist/public/sdk/registration-C4sALQZO.js +1 -0
  449. package/dist/public/sdk/registration-CEqVAgNJ.js +1 -0
  450. package/dist/public/sdk/{registrationAccounts-DIeEVy6W.js → registrationAccounts-D4RVetMz.js} +1 -1
  451. package/dist/public/sdk/registrationAuthMethodInput-6ccY2Vuh.js +1 -0
  452. package/dist/public/sdk/registrationIds-CdPqm-Ya.js +1 -0
  453. package/dist/public/sdk/registrationIntent-DOkZcKSP.js +1 -0
  454. package/dist/public/sdk/registrationSignerPlan-B9GCvpTV.js +1 -0
  455. package/dist/public/sdk/requireStepUpAuth-DCVqmeee.js +1 -0
  456. package/dist/public/sdk/routerAbNormalSigning-BG75eyI2.js +1 -0
  457. package/dist/public/sdk/router_ab_ed25519_yao_client_bg.wasm +0 -0
  458. package/dist/public/sdk/runtime-auth-BKFyLISf.js +1 -0
  459. package/dist/public/sdk/runtime-device-link-ENxdEXQW.js +1 -0
  460. package/dist/public/sdk/runtime-ecdsa-tempo-DhGEb9U7.js +1 -0
  461. package/dist/public/sdk/runtime-email-otp-dgsP7XZi.js +1 -0
  462. package/dist/public/sdk/runtime-export-D2RCm5Gk.js +1 -0
  463. package/dist/public/sdk/runtime-near-Bf-9MFBQ.js +1 -0
  464. package/dist/public/sdk/runtime-preferences-LQ8SPE7o.js +1 -0
  465. package/dist/public/sdk/runtime-recovery-BuEzJzuZ.js +1 -0
  466. package/dist/public/sdk/runtime-recovery-codes-BZMiAR_5.js +1 -0
  467. package/dist/public/sdk/sdkSentEvents-D3q1h-Uo.js +1 -0
  468. package/dist/public/sdk/secp256k1-DSLttQND.js +1 -0
  469. package/dist/public/sdk/{secureRandomId-CTdlJ5Mx.js → secureRandomId-BIekT8bE.js} +1 -1
  470. package/dist/public/sdk/sessionPolicy-J-RrlPZQ.js +1 -0
  471. package/dist/public/sdk/shared-8ffIBYw2.js +6 -0
  472. package/dist/public/sdk/signEvmFamily-KUNWKVeh.js +1 -0
  473. package/dist/public/sdk/{signEvmFamilyWithUiConfirmForTempo-DgTbh6jX.js → signEvmFamilyWithUiConfirmForTempo-Dc57bJ3V.js} +1 -1
  474. package/dist/public/sdk/{signEvmWithUiConfirm-ChreN7aZ.js → signEvmWithUiConfirm-CqxL7UbT.js} +1 -1
  475. package/dist/public/sdk/signNear-BhTkDm2-.js +1 -0
  476. package/dist/public/sdk/{signatureUses-CQkkUcwT.js → signatureUses-CjJ233KX.js} +1 -1
  477. package/dist/public/sdk/signerDomain-vQmlnsbF.js +1 -0
  478. package/dist/public/sdk/signingFlow-vrXxrhlG.js +2 -0
  479. package/dist/public/sdk/signingQueue-BrGJXBqe.js +1 -0
  480. package/dist/public/sdk/{signingSessionSeal-Mr2Xp44o.js → signingSessionSeal-CDLUmAFY.js} +1 -1
  481. package/dist/public/sdk/singletons-8UH3gOnZ.js +1 -0
  482. package/dist/public/sdk/theme-_AUTWLS_.js +1 -0
  483. package/dist/public/sdk/thresholdEcdsa-CO7xo1So.js +1 -0
  484. package/dist/public/sdk/trace-BvbCxdXF.js +1 -0
  485. package/dist/public/sdk/transaction-activity-D40ih2j-.js +1 -0
  486. package/dist/public/sdk/transactionReviewAdmission-C-a3ctCJ.js +1 -0
  487. package/dist/public/sdk/transactionState-DVinJk4K.js +1 -0
  488. package/dist/public/sdk/tx-confirm-ui.js +7 -11
  489. package/dist/public/sdk/{promptText-s8TQ6ckX.js → types-BNUuaUtl.js} +1 -1
  490. package/dist/public/sdk/{types-M7vxrYtJ.js → types-D3GM-uHR.js} +1 -1
  491. package/dist/public/sdk/wallet-iframe-host-ecdsa.js +1 -1
  492. package/dist/public/sdk/wallet-iframe-host-full.js +1 -1
  493. package/dist/public/sdk/wallet-iframe-host-near.js +1 -1
  494. package/dist/public/sdk/wallet-iframe-host-runtime.js +1 -1
  495. package/dist/public/sdk/wallet-recovery-C1kesLCF.js +1 -0
  496. package/dist/public/sdk/wallet-ui.css +1 -1
  497. package/dist/public/sdk/walletAuthMethodRecord-CXedSgpV.js +1 -0
  498. package/dist/public/sdk/walletAuthority-B5hXHWpK.js +1 -0
  499. package/dist/public/sdk/walletCustodyEcdsaContinuity-abNZ_dvX.js +1 -0
  500. package/dist/public/sdk/{walletIframeIdentity-C0b0XMQF.js → walletIframeIdentity-DJ0KOBHg.js} +1 -1
  501. package/dist/public/sdk/walletOwnershipGeneration-DoXVMDWe.js +1 -0
  502. package/dist/public/sdk/walletRecoveryCommit-Cc9AqHr0.js +1 -0
  503. package/dist/public/sdk/walletRecoveryRotate-DWTAFYiv.js +1 -0
  504. package/dist/public/sdk/walletSessionAuthorizationProjection-DWBksIJR.js +1 -0
  505. package/dist/public/sdk/walletSessionAuthorizationStatus-o1VgsLhA.js +1 -0
  506. package/dist/public/sdk/walletSessionAuthorizationStore-gEYPmu-G.js +1 -0
  507. package/dist/public/sdk/walletSessionFailure-Bu4VPKTz.js +1 -0
  508. package/dist/public/sdk/warmSessionHydration-DgjuUacN.js +1 -0
  509. package/dist/public/sdk/{webauthnP256-qu06GNFm.js → webauthnP256-BEz4DEAs.js} +1 -1
  510. package/dist/public/sdk/{webauthnPromptCoordinator-DO-qfECu.js → webauthnPromptCoordinator-BEudHQBr.js} +1 -1
  511. package/dist/public/sdk/workers/device-linking-key.worker.js +18 -0
  512. package/dist/public/sdk/workers/ecdsa-derivation-client.worker.js +1490 -1268
  513. package/dist/public/sdk/workers/ecdsa-online-client.worker.js +96 -0
  514. package/dist/public/sdk/workers/ecdsa-presign-client.worker.js +101 -1
  515. package/dist/public/sdk/workers/email-otp.worker.js +267 -237
  516. package/dist/public/sdk/workers/evm-crypto.worker.js +12 -8
  517. package/dist/public/sdk/workers/passkey-mpc-export.worker.js +30 -1
  518. package/dist/public/sdk/workers/router_ab_ecdsa_client_bg.wasm +0 -0
  519. package/dist/public/sdk/workers/router_ab_ed25519_yao_client_bg.wasm +0 -0
  520. package/dist/public/sdk/workers/shamir3pass.worker.js +10 -8
  521. package/dist/public/sdk/workers/tempo-signer.worker.js +12 -8
  522. package/dist/public/sdk/workers/wallet-custody-ceremony.worker.js +3 -1
  523. package/dist/public/sdk/workers/wallet_custody_ceremony_bg.wasm +0 -0
  524. package/dist/public/sdk/workers/wasm_signer_worker_bg.wasm +0 -0
  525. package/dist/public/wallet-assets.manifest.json +391 -295
  526. package/dist/public/wallet-service/index.html +4 -4
  527. package/dist/types/shared-ts/src/device-linking/activeWalletSession.d.ts +2 -1
  528. package/dist/types/shared-ts/src/device-linking/contracts.d.ts +10 -0
  529. package/dist/types/shared-ts/src/threshold/ed25519OperationFingerprint.d.ts +2 -1
  530. package/dist/types/shared-ts/src/utils/emailOtpDomain.d.ts +3 -1
  531. package/dist/types/shared-ts/src/utils/routerAbPublicKeyset.d.ts +0 -9
  532. package/dist/types/shared-ts/src/utils/walletManagementProtocol.d.ts +1 -1
  533. package/dist/types/wallet/build-paths.d.ts +0 -4
  534. package/dist/types/wallet/src/SeamsWeb/SeamsWeb.d.ts +26 -146
  535. package/dist/types/wallet/src/SeamsWeb/assembly/browserSigningSurfaceAssembly.d.ts +7 -6
  536. package/dist/types/wallet/src/SeamsWeb/assembly/browserSigningSurfacePorts.d.ts +2 -4
  537. package/dist/types/wallet/src/SeamsWeb/assembly/createWalletIframeRouter.d.ts +2 -2
  538. package/dist/types/wallet/src/SeamsWeb/assembly/initializeBrowserSigningRuntime.d.ts +0 -2
  539. package/dist/types/wallet/src/SeamsWeb/index.d.ts +1 -1
  540. package/dist/types/wallet/src/SeamsWeb/operations/auth/login.d.ts +2 -8
  541. package/dist/types/wallet/src/SeamsWeb/operations/auth/unlockCompletion.d.ts +26 -0
  542. package/dist/types/wallet/src/SeamsWeb/operations/auth/unlockPendingRegistration.d.ts +14 -0
  543. package/dist/types/wallet/src/SeamsWeb/operations/auth/unlockSessionPolicy.d.ts +16 -0
  544. package/dist/types/wallet/src/SeamsWeb/operations/authMethods/emailOtp/challenge.d.ts +2 -2
  545. package/dist/types/wallet/src/SeamsWeb/operations/authMethods/emailOtp/googleEmailOtpWalletAuthFlow.d.ts +3 -2
  546. package/dist/types/wallet/src/SeamsWeb/operations/authMethods/revokeAuthMethod.d.ts +17 -1
  547. package/dist/types/wallet/src/SeamsWeb/operations/devices/linkDevice.d.ts +0 -7
  548. package/dist/types/wallet/src/SeamsWeb/operations/devices/walletHostComposition.d.ts +2 -0
  549. package/dist/types/wallet/src/SeamsWeb/operations/near/actions.d.ts +4 -21
  550. package/dist/types/wallet/src/SeamsWeb/operations/near/delegateAction.d.ts +4 -14
  551. package/dist/types/wallet/src/SeamsWeb/operations/near/signDelegateAction.d.ts +14 -0
  552. package/dist/types/wallet/src/SeamsWeb/operations/near/signNEP413.d.ts +2 -2
  553. package/dist/types/wallet/src/SeamsWeb/operations/registration/pendingEcdsaRegistrationRecovery.d.ts +11 -11
  554. package/dist/types/wallet/src/SeamsWeb/operations/registration/pendingEcdsaRegistrationRecoveryValidation.d.ts +18 -4
  555. package/dist/types/wallet/src/SeamsWeb/operations/registration/pendingRegistrationRecovery.d.ts +4 -20
  556. package/dist/types/wallet/src/SeamsWeb/operations/registration/registration.d.ts +10 -4
  557. package/dist/types/wallet/src/SeamsWeb/operations/registration/registrationEd25519Yao.d.ts +1 -1
  558. package/dist/types/wallet/src/SeamsWeb/operations/registration/registrationSignerSet.d.ts +1 -0
  559. package/dist/types/wallet/src/SeamsWeb/operations/registration/registrationTerminalCommit.d.ts +0 -4
  560. package/dist/types/wallet/src/SeamsWeb/operations/registration/registrationTiming.d.ts +2 -3
  561. package/dist/types/wallet/src/SeamsWeb/operations/tempo/index.d.ts +0 -3
  562. package/dist/types/wallet/src/SeamsWeb/publicApi/auth.d.ts +4 -13
  563. package/dist/types/wallet/src/SeamsWeb/publicApi/createPublicApi.d.ts +22 -43
  564. package/dist/types/wallet/src/SeamsWeb/publicApi/devices.d.ts +3 -21
  565. package/dist/types/wallet/src/SeamsWeb/publicApi/evm.d.ts +10 -16
  566. package/dist/types/wallet/src/SeamsWeb/publicApi/evmFamilyCommands.d.ts +6 -0
  567. package/dist/types/wallet/src/SeamsWeb/publicApi/index.d.ts +2 -2
  568. package/dist/types/wallet/src/SeamsWeb/publicApi/keyExport.d.ts +8 -16
  569. package/dist/types/wallet/src/SeamsWeb/publicApi/near.d.ts +10 -10
  570. package/dist/types/wallet/src/SeamsWeb/publicApi/nearCommands.d.ts +17 -0
  571. package/dist/types/wallet/src/SeamsWeb/publicApi/placement.d.ts +90 -0
  572. package/dist/types/wallet/src/SeamsWeb/publicApi/placement.typecheck.d.ts +2 -0
  573. package/dist/types/wallet/src/SeamsWeb/publicApi/session.d.ts +3 -0
  574. package/dist/types/wallet/src/SeamsWeb/publicApi/tempo.d.ts +11 -11
  575. package/dist/types/wallet/src/SeamsWeb/publicApi/types.d.ts +106 -243
  576. package/dist/types/wallet/src/SeamsWeb/publicApi/{awaitNearReady.d.ts → waitForNearAccount.d.ts} +7 -7
  577. package/dist/types/wallet/src/SeamsWeb/signingSurface/BrowserSigningSurface.d.ts +33 -78
  578. package/dist/types/wallet/src/SeamsWeb/signingSurface/ports.d.ts +8 -31
  579. package/dist/types/wallet/src/SeamsWeb/walletIframe/client/deviceCommands.d.ts +4 -0
  580. package/dist/types/wallet/src/SeamsWeb/walletIframe/client/emailOtpCommands.d.ts +4 -0
  581. package/dist/types/wallet/src/SeamsWeb/walletIframe/client/evmFamilyCommands.d.ts +6 -0
  582. package/dist/types/wallet/src/SeamsWeb/walletIframe/client/inboundMessages.d.ts +62 -0
  583. package/dist/types/wallet/src/SeamsWeb/walletIframe/client/nearCommands.d.ts +6 -0
  584. package/dist/types/wallet/src/SeamsWeb/walletIframe/client/placementCommands.d.ts +31 -0
  585. package/dist/types/wallet/src/SeamsWeb/walletIframe/client/preferenceState.d.ts +35 -0
  586. package/dist/types/wallet/src/SeamsWeb/walletIframe/client/preferences.d.ts +10 -0
  587. package/dist/types/wallet/src/SeamsWeb/walletIframe/client/registrationCommands.d.ts +6 -0
  588. package/dist/types/wallet/src/SeamsWeb/walletIframe/client/router.d.ts +36 -121
  589. package/dist/types/wallet/src/SeamsWeb/walletIframe/client/sessionCommands.d.ts +6 -0
  590. package/dist/types/wallet/src/SeamsWeb/walletIframe/coordinator.d.ts +29 -35
  591. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/WalletHostRuntime.d.ts +98 -0
  592. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/auth-menu/controller.d.ts +2 -2
  593. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/context.d.ts +11 -9
  594. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/createDeviceDomain.d.ts +20 -0
  595. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/createEmailOtpCommands.d.ts +11 -0
  596. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/createEvmFamilyCommands.d.ts +8 -0
  597. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/createNearCommands.d.ts +4 -0
  598. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/createPlacementCommands.d.ts +11 -0
  599. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/createRegistrationCommands.d.ts +4 -0
  600. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/createSessionCommands.d.ts +16 -0
  601. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/handlers/placement.d.ts +3 -0
  602. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/handlers/walletIframeHandler.types.d.ts +7 -3
  603. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/hostedWalletSeamsSession.d.ts +2 -0
  604. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/reconcileWalletPlacement.d.ts +10 -0
  605. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/requestRouter.d.ts +4 -4
  606. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/requestWalletMove.d.ts +11 -0
  607. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/runtimeContext.d.ts +5 -3
  608. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/runtimeLoader.d.ts +0 -1
  609. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/sessionObserver.d.ts +39 -0
  610. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/walletMoveLocator.d.ts +5 -0
  611. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/walletMutationGuard.d.ts +3 -0
  612. package/dist/types/wallet/src/SeamsWeb/walletIframe/shared/configuration.d.ts +30 -0
  613. package/dist/types/wallet/src/SeamsWeb/walletIframe/shared/emailOtpLifecycle.d.ts +43 -0
  614. package/dist/types/wallet/src/SeamsWeb/walletIframe/shared/exactSessionState.d.ts +15 -0
  615. package/dist/types/wallet/src/SeamsWeb/walletIframe/shared/facadeBoundary.d.ts +14 -0
  616. package/dist/types/wallet/src/SeamsWeb/walletIframe/shared/messages.d.ts +35 -100
  617. package/dist/types/wallet/src/core/config/chains.d.ts +1 -3
  618. package/dist/types/wallet/src/core/config/configBuilder.d.ts +16 -6
  619. package/dist/types/wallet/src/core/config/defaultConfigs.d.ts +3 -4
  620. package/dist/types/wallet/src/core/config/defineConfig.d.ts +3 -6
  621. package/dist/types/wallet/src/core/config/presignatures.d.ts +3 -0
  622. package/dist/types/wallet/src/core/diagnostics/registration.d.ts +2 -0
  623. package/dist/types/wallet/src/core/indexedDB/normalization.d.ts +5 -0
  624. package/dist/types/wallet/src/core/indexedDB/passkeyClientDB.types.d.ts +2 -2
  625. package/dist/types/wallet/src/core/indexedDB/pendingWalletRegistrationCommit.d.ts +0 -10
  626. package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/accountSignerRows.d.ts +44 -0
  627. package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/ecdsaCapabilityManifestStore.d.ts +0 -2
  628. package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/ecdsaClientPresignatures.d.ts +0 -5
  629. package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/manager.d.ts +11 -0
  630. package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/nonceLeaseRows.d.ts +23 -0
  631. package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/repositories.d.ts +1 -0
  632. package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/signerOutboxRows.d.ts +15 -0
  633. package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/walletOwnershipGeneration.d.ts +6 -0
  634. package/dist/types/wallet/src/core/indexedDB/unifiedIndexedDBManager.d.ts +1 -1
  635. package/dist/types/wallet/src/core/rpcClients/near/accountExists.d.ts +3 -0
  636. package/dist/types/wallet/src/core/rpcClients/near/rpcCalls.d.ts +1 -14
  637. package/dist/types/wallet/src/core/rpcClients/relayer/ecdsaPrepareSession.d.ts +13 -0
  638. package/dist/types/wallet/src/core/rpcClients/relayer/ownerWalletExecutionLanePreflight.d.ts +3 -3
  639. package/dist/types/wallet/src/core/rpcClients/relayer/relayerHttp.d.ts +17 -0
  640. package/dist/types/wallet/src/core/rpcClients/relayer/routerAbNormalSigning.d.ts +19 -3
  641. package/dist/types/wallet/src/core/rpcClients/relayer/walletRegistration.d.ts +29 -40
  642. package/dist/types/wallet/src/core/rpcClients/relayer/walletSessionAuthorizationStatus.d.ts +34 -0
  643. package/dist/types/wallet/src/core/signingEngine/assembly/ports/shared.d.ts +1 -1
  644. package/dist/types/wallet/src/core/signingEngine/assembly/ports/warmSigning.d.ts +2 -1
  645. package/dist/types/wallet/src/core/signingEngine/assembly/warmup.d.ts +2 -14
  646. package/dist/types/wallet/src/core/signingEngine/chains/near/nearSignerWasm.d.ts +2 -6
  647. package/dist/types/wallet/src/core/signingEngine/flows/recovery/public.d.ts +1 -1
  648. package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/emailOtpPublic.d.ts +1 -32
  649. package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/emailOtpSigningSession.d.ts +3 -82
  650. package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/readySecp256k1Material.d.ts +62 -1
  651. package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/requireEvmFamilyStepUpAuth.d.ts +1 -1
  652. package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/signers/secp256k1.d.ts +4 -55
  653. package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/signingFlow.d.ts +1 -1
  654. package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/thresholdAdmission.d.ts +3 -2
  655. package/dist/types/wallet/src/core/signingEngine/flows/signNear/shared/ed25519YaoNormalSigning.d.ts +45 -1
  656. package/dist/types/wallet/src/core/signingEngine/flows/signNear/shared/signatureOnlySigning.d.ts +16 -2
  657. package/dist/types/wallet/src/core/signingEngine/flows/signNear/signNear.d.ts +1 -2
  658. package/dist/types/wallet/src/core/signingEngine/flows/signNear/signNep413.d.ts +1 -1
  659. package/dist/types/wallet/src/core/signingEngine/interfaces/ecdsaChainTarget.d.ts +1 -1
  660. package/dist/types/wallet/src/core/signingEngine/interfaces/near.d.ts +3 -0
  661. package/dist/types/wallet/src/core/signingEngine/nonce/nearTransactionReadiness.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/confirmOperation.d.ts +3 -1
  686. package/dist/types/wallet/src/core/signingEngine/stepUpConfirmation/otpPrompt/authLane.d.ts +6 -12
  687. package/dist/types/wallet/src/core/signingEngine/threshold/ecdsa/operationStepUp.d.ts +6 -5
  688. package/dist/types/wallet/src/core/signingEngine/threshold/ed25519/yaoClient.d.ts +6 -17
  689. package/dist/types/wallet/src/core/signingEngine/uiConfirm/handlers/flows/signing.d.ts +2 -0
  690. package/dist/types/wallet/src/core/signingEngine/uiConfirm/handlers/handlePromptFromWorker.d.ts +2 -0
  691. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/ReviewDisclosure.d.ts +1 -0
  692. package/dist/types/wallet/src/core/signingEngine/uiConfirm/uiConfirm.types.d.ts +3 -0
  693. package/dist/types/wallet/src/core/signingEngine/walletCustody/ceremonyDriver.d.ts +0 -1
  694. package/dist/types/wallet/src/core/signingEngine/walletCustody/walletRegistrationEd25519.d.ts +17 -0
  695. package/dist/types/wallet/src/core/signingEngine/workerManager/SignerWorkerManager.d.ts +0 -1
  696. package/dist/types/wallet/src/core/signingEngine/workerManager/ecdsaPresignLifecycle.d.ts +0 -2
  697. package/dist/types/wallet/src/core/signingEngine/workerManager/ecdsaPresignPoolIdentity.d.ts +9 -0
  698. package/dist/types/wallet/src/core/signingEngine/workerManager/workerTransport.d.ts +0 -5
  699. package/dist/types/wallet/src/core/signingEngine/workerManager/workerTypes.d.ts +15 -27
  700. package/dist/types/wallet/src/core/signingEngine/workerManager/workers/email-otp/enrollment.d.ts +1 -17
  701. package/dist/types/wallet/src/core/types/rpc.d.ts +0 -1
  702. package/dist/types/wallet/src/core/types/sdkPublicResults.d.ts +1 -0
  703. package/dist/types/wallet/src/core/types/sdkSentEvents.d.ts +2 -0
  704. package/dist/types/wallet/src/core/types/seams.d.ts +12 -9
  705. package/dist/types/wallet/src/core/types/signer-worker.d.ts +2 -1
  706. package/dist/types/wallet/src/externalEvm/controller.d.ts +5 -1
  707. package/dist/types/wallet/src/index.d.ts +5 -2
  708. package/dist/types/wallet/src/react/components/AccountMenuButton/WalletRegionSection.d.ts +54 -0
  709. package/dist/types/wallet/src/react/components/AccountMenuButton/WalletSettingsLayout.d.ts +7 -2
  710. package/dist/types/wallet/src/react/components/AccountMenuButton/index.d.ts +1 -1
  711. package/dist/types/wallet/src/react/components/AccountMenuButton/types.d.ts +1 -0
  712. package/dist/types/wallet/src/react/components/HostedSeamsAuthMenu/public.d.ts +1 -1
  713. package/dist/types/wallet/src/react/components/HostedSeamsAuthMenu/types.d.ts +2 -5
  714. package/dist/types/wallet/src/react/context/SeamsWebProvider.d.ts +0 -5
  715. package/dist/types/wallet/src/react/context/useLoginStateRefresher.d.ts +1 -1
  716. package/dist/types/wallet/src/react/context/useNearProvisioningStateRefresh.d.ts +1 -1
  717. package/dist/types/wallet/src/react/context/useSeamsContextValue.d.ts +2 -2
  718. package/dist/types/wallet/src/react/context/useWalletIframeLifecycle.d.ts +4 -2
  719. package/dist/types/wallet/src/react/hooks/useQRCamera.d.ts +1 -7
  720. package/dist/types/wallet/src/react/hooks/useWallet.d.ts +5 -6
  721. package/dist/types/wallet/src/react/hooks/useWalletAuth.d.ts +1 -1
  722. package/dist/types/wallet/src/react/hooks/useWalletDevices.d.ts +1 -1
  723. package/dist/types/wallet/src/react/index.d.ts +2 -2
  724. package/dist/types/wallet/src/react/transactionReview/boundCalls.d.ts +0 -26
  725. package/dist/types/wallet/src/react/types.d.ts +12 -20
  726. package/dist/types/wallet/src/react/utils/walletIframe.d.ts +2 -6
  727. package/dist/workers/device-linking-key.worker.js +18 -0
  728. package/dist/workers/ecdsa-derivation-client.worker.js +1490 -1268
  729. package/dist/workers/ecdsa-online-client.worker.js +96 -0
  730. package/dist/workers/ecdsa-presign-client.worker.js +101 -1
  731. package/dist/workers/email-otp.worker.js +267 -237
  732. package/dist/workers/evm-crypto.worker.js +12 -8
  733. package/dist/workers/passkey-mpc-export.worker.js +30 -1
  734. package/dist/workers/router_ab_ecdsa_client_bg.wasm +0 -0
  735. package/dist/workers/router_ab_ed25519_yao_client_bg.wasm +0 -0
  736. package/dist/workers/shamir3pass.worker.js +10 -8
  737. package/dist/workers/tempo-signer.worker.js +12 -8
  738. package/dist/workers/wallet-custody-ceremony.worker.js +3 -1
  739. package/dist/workers/wallet_custody_ceremony_bg.wasm +0 -0
  740. package/dist/workers/wasm_signer_worker_bg.wasm +0 -0
  741. package/package.json +1 -1
  742. package/dist/esm/SeamsWeb/assembly/browserSigningSurfaceAssembly.js +0 -817
  743. package/dist/esm/SeamsWeb/assembly/browserWorkerWarmupPolicy.js +0 -31
  744. package/dist/esm/SeamsWeb/assembly/configureBrowserIndexedDB.js +0 -10
  745. package/dist/esm/SeamsWeb/assembly/createBrowserRecoveryPublicDeps.js +0 -95
  746. package/dist/esm/SeamsWeb/assembly/createBrowserSigningRuntime.js +0 -34
  747. package/dist/esm/SeamsWeb/assembly/createBrowserSigningStores.js +0 -39
  748. package/dist/esm/SeamsWeb/assembly/createBrowserStepUpRuntime.js +0 -34
  749. package/dist/esm/SeamsWeb/assembly/createBrowserWarmSessionPublicDeps.js +0 -29
  750. package/dist/esm/SeamsWeb/assembly/initializeBrowserSigningRuntime.js +0 -19
  751. package/dist/esm/SeamsWeb/assembly/runtimeConfig.js +0 -12
  752. package/dist/esm/SeamsWeb/operations/auth/login.js +0 -4383
  753. package/dist/esm/SeamsWeb/operations/auth/scheduleEcdsaSessionPresignaturePrefill.js +0 -41
  754. package/dist/esm/SeamsWeb/operations/auth/scheduleLinkedDevicePresignaturePrefill.js +0 -64
  755. package/dist/esm/SeamsWeb/operations/auth/walletAuth.js +0 -142
  756. package/dist/esm/SeamsWeb/operations/auth/walletUnlockEcdsaSubject.js +0 -33
  757. package/dist/esm/SeamsWeb/operations/auth/walletUnlockSubject.js +0 -288
  758. package/dist/esm/SeamsWeb/operations/authMethods/addAuthMethodSourceClaim.js +0 -72
  759. package/dist/esm/SeamsWeb/operations/authMethods/emailOtp/addEmailOtp.js +0 -191
  760. package/dist/esm/SeamsWeb/operations/authMethods/emailOtp/challenge.js +0 -247
  761. package/dist/esm/SeamsWeb/operations/authMethods/emailOtp/googleEmailOtpWalletAuthFlow.js +0 -568
  762. package/dist/esm/SeamsWeb/operations/authMethods/emailOtp/localEmailOtpProjection.js +0 -69
  763. package/dist/esm/SeamsWeb/operations/authMethods/emailOtp/registrationAuthority.js +0 -62
  764. package/dist/esm/SeamsWeb/operations/authMethods/emailOtp/registrationOffer.js +0 -69
  765. package/dist/esm/SeamsWeb/operations/authMethods/emailOtp/walletActivation.js +0 -95
  766. package/dist/esm/SeamsWeb/operations/authMethods/passkey/addPasskey.js +0 -260
  767. package/dist/esm/SeamsWeb/operations/authMethods/passkey/ecdsaBootstrap.js +0 -17
  768. package/dist/esm/SeamsWeb/operations/authMethods/passkey/exactPasskeyAuthority.js +0 -34
  769. package/dist/esm/SeamsWeb/operations/authMethods/passkey/localUnlock.js +0 -16
  770. package/dist/esm/SeamsWeb/operations/authMethods/passkey/loginAssertion.js +0 -25
  771. package/dist/esm/SeamsWeb/operations/authMethods/passkey/registrationAuthority.js +0 -84
  772. package/dist/esm/SeamsWeb/operations/authMethods/revokeAuthMethod.js +0 -205
  773. package/dist/esm/SeamsWeb/operations/authMethods/sourcePasskeyProof.js +0 -12
  774. package/dist/esm/SeamsWeb/operations/devices/deviceLinkingAuthorityInstallation.js +0 -444
  775. package/dist/esm/SeamsWeb/operations/devices/deviceLinkingComposition.js +0 -106
  776. package/dist/esm/SeamsWeb/operations/devices/deviceLinkingEd25519ExportRoot.js +0 -194
  777. package/dist/esm/SeamsWeb/operations/devices/deviceLinkingHttpTransport.js +0 -524
  778. package/dist/esm/SeamsWeb/operations/devices/deviceLinkingOwnerTransport.js +0 -135
  779. package/dist/esm/SeamsWeb/operations/devices/deviceLinkingResume.js +0 -212
  780. package/dist/esm/SeamsWeb/operations/devices/deviceLinkingTargetCredential.js +0 -63
  781. package/dist/esm/SeamsWeb/operations/devices/deviceLinkingTargetEd25519ExportRoot.js +0 -61
  782. package/dist/esm/SeamsWeb/operations/devices/deviceLinkingWorkerChannels.js +0 -337
  783. package/dist/esm/SeamsWeb/operations/devices/linkDevice.js +0 -75
  784. package/dist/esm/SeamsWeb/operations/devices/linkDeviceFlow.js +0 -1383
  785. package/dist/esm/SeamsWeb/operations/devices/linkDeviceFlowSupport.js +0 -143
  786. package/dist/esm/SeamsWeb/operations/devices/linkDeviceTargetActivation.js +0 -119
  787. package/dist/esm/SeamsWeb/operations/devices/walletHostComposition.js +0 -130
  788. package/dist/esm/SeamsWeb/operations/devices/walletHostOwnerAuthority.js +0 -191
  789. package/dist/esm/SeamsWeb/operations/evm/index.js +0 -35
  790. package/dist/esm/SeamsWeb/operations/near/actions.js +0 -484
  791. package/dist/esm/SeamsWeb/operations/near/commandSubject.js +0 -14
  792. package/dist/esm/SeamsWeb/operations/near/index.js +0 -37
  793. package/dist/esm/SeamsWeb/operations/near/signNEP413.js +0 -116
  794. package/dist/esm/SeamsWeb/operations/recovery/accountSync.js +0 -21
  795. package/dist/esm/SeamsWeb/operations/recovery/recoveryWalletBinding.js +0 -43
  796. package/dist/esm/SeamsWeb/operations/recovery/syncAccount.js +0 -912
  797. package/dist/esm/SeamsWeb/operations/recovery/walletRecoveryCodeBackup.js +0 -100
  798. package/dist/esm/SeamsWeb/operations/recovery/walletRecoveryRotation.js +0 -213
  799. package/dist/esm/SeamsWeb/operations/registration/pendingEcdsaRegistrationRecovery.js +0 -184
  800. package/dist/esm/SeamsWeb/operations/registration/pendingEcdsaRegistrationRecoveryUnlock.js +0 -247
  801. package/dist/esm/SeamsWeb/operations/registration/pendingEcdsaRegistrationRecoveryValidation.js +0 -134
  802. package/dist/esm/SeamsWeb/operations/registration/pendingRegistrationRecovery.js +0 -354
  803. package/dist/esm/SeamsWeb/operations/registration/registration.js +0 -3818
  804. package/dist/esm/SeamsWeb/operations/registration/registrationEd25519Yao.js +0 -166
  805. package/dist/esm/SeamsWeb/operations/registration/registrationSignerSet.js +0 -60
  806. package/dist/esm/SeamsWeb/operations/registration/registrationStrictEcdsa.js +0 -343
  807. package/dist/esm/SeamsWeb/operations/registration/registrationTerminalCommit.js +0 -296
  808. package/dist/esm/SeamsWeb/operations/registration/registrationTiming.js +0 -682
  809. package/dist/esm/SeamsWeb/operations/session/thresholdEcdsaProvisioning.js +0 -36
  810. package/dist/esm/SeamsWeb/operations/session/thresholdWarmSessionBootstrap.js +0 -20
  811. package/dist/esm/SeamsWeb/publicApi/preferences.js +0 -61
  812. package/dist/esm/SeamsWeb/publicApi/recovery.js +0 -19
  813. package/dist/esm/SeamsWeb/publicApi/types.js +0 -10
  814. package/dist/esm/SeamsWeb/signingSurface/BrowserSigningSurface.js +0 -3917
  815. package/dist/esm/SeamsWeb/walletIframe/host/restoredSessionPresignaturePrefill.js +0 -29
  816. package/dist/esm/core/browser/walletIframe/events.js +0 -6
  817. package/dist/esm/core/browser/walletIframe/host-mode.js +0 -9
  818. package/dist/esm/core/config/managedRuntimeScope.js +0 -16
  819. package/dist/esm/core/indexedDB/seamsWalletDB/pendingWalletRecoveryCodeBackup.js +0 -144
  820. package/dist/esm/core/platform/browser/createBrowserPlatformRuntime.js +0 -535
  821. package/dist/esm/core/platform/secretSources.js +0 -111
  822. package/dist/esm/core/platform/signerCoreCommandAdapters.js +0 -122
  823. package/dist/esm/core/rpcClients/near/rpcCalls.js +0 -376
  824. package/dist/esm/core/rpcClients/relayer/ownerWalletExecutionLanePreflight.js +0 -67
  825. package/dist/esm/core/rpcClients/relayer/passkeyCustodyEnvelope.js +0 -218
  826. package/dist/esm/core/rpcClients/relayer/sealedRefreshCapabilities.js +0 -148
  827. package/dist/esm/core/rpcClients/relayer/thresholdEcdsa.js +0 -235
  828. package/dist/esm/core/rpcClients/relayer/walletRecoveryGoogleEmailOtp.js +0 -161
  829. package/dist/esm/core/rpcClients/relayer/walletRegistrationTerminalResponse.js +0 -718
  830. package/dist/esm/core/signingEngine/assembly/createManagers.js +0 -80
  831. package/dist/esm/core/signingEngine/assembly/createPorts.js +0 -54
  832. package/dist/esm/core/signingEngine/assembly/ports/emailOtp.js +0 -30
  833. package/dist/esm/core/signingEngine/assembly/ports/evmFamily.js +0 -73
  834. package/dist/esm/core/signingEngine/assembly/ports/near.js +0 -21
  835. package/dist/esm/core/signingEngine/assembly/ports/recovery.js +0 -75
  836. package/dist/esm/core/signingEngine/assembly/ports/registration.js +0 -22
  837. package/dist/esm/core/signingEngine/assembly/ports/session.js +0 -25
  838. package/dist/esm/core/signingEngine/assembly/ports/shared.js +0 -39
  839. package/dist/esm/core/signingEngine/assembly/ports/stepUpRuntime.js +0 -67
  840. package/dist/esm/core/signingEngine/assembly/ports/warmSigning.js +0 -92
  841. package/dist/esm/core/signingEngine/assembly/warmup.js +0 -64
  842. package/dist/esm/core/signingEngine/flows/recovery/ecdsaDerivationExport.js +0 -427
  843. package/dist/esm/core/signingEngine/flows/recovery/ecdsaExportFlow.js +0 -660
  844. package/dist/esm/core/signingEngine/flows/recovery/ecdsaExportMaterial.js +0 -249
  845. package/dist/esm/core/signingEngine/flows/recovery/ed25519YaoExportFlow.js +0 -353
  846. package/dist/esm/core/signingEngine/flows/recovery/exportKeypairOperation.js +0 -213
  847. package/dist/esm/core/signingEngine/flows/recovery/exportLaneSelection.js +0 -283
  848. package/dist/esm/core/signingEngine/flows/recovery/keyExportConfirmation.js +0 -325
  849. package/dist/esm/core/signingEngine/flows/recovery/keyExportFlow.js +0 -81
  850. package/dist/esm/core/signingEngine/flows/recovery/passkeyEd25519YaoRecovery.js +0 -192
  851. package/dist/esm/core/signingEngine/flows/recovery/public.js +0 -26
  852. package/dist/esm/core/signingEngine/flows/recovery/stepUpAuthorization.js +0 -139
  853. package/dist/esm/core/signingEngine/flows/registration/nearProvisioningRegistry.js +0 -79
  854. package/dist/esm/core/signingEngine/flows/registration/public.js +0 -85
  855. package/dist/esm/core/signingEngine/flows/registration/services/ecdsaRegistrationSessions.js +0 -77
  856. package/dist/esm/core/signingEngine/flows/registration/services/passkeyEd25519YaoAddSigner.js +0 -82
  857. package/dist/esm/core/signingEngine/flows/registration/session.js +0 -24
  858. package/dist/esm/core/signingEngine/flows/signEvmFamily/emailOtpPublic.js +0 -123
  859. package/dist/esm/core/signingEngine/nonce/NonceCoordinator.js +0 -1026
  860. package/dist/esm/core/signingEngine/nonce/evmNonceLane.js +0 -182
  861. package/dist/esm/core/signingEngine/nonce/nearNonceLane.js +0 -669
  862. package/dist/esm/core/signingEngine/nonce/nonceDiagnostics.js +0 -232
  863. package/dist/esm/core/signingEngine/nonce/nonceLeaseState.js +0 -128
  864. package/dist/esm/core/signingEngine/nonce/nonceUtils.js +0 -33
  865. package/dist/esm/core/signingEngine/session/SigningSessionCoordinator.js +0 -344
  866. package/dist/esm/core/signingEngine/session/authority/authorityOperationResolver.js +0 -114
  867. package/dist/esm/core/signingEngine/session/availability/canonicalLaneInventory.js +0 -127
  868. package/dist/esm/core/signingEngine/session/availability/clientSessionExpiryInvalidator.js +0 -72
  869. package/dist/esm/core/signingEngine/session/availability/persistedAvailableSigningLanes.js +0 -214
  870. package/dist/esm/core/signingEngine/session/availability/readiness.js +0 -464
  871. package/dist/esm/core/signingEngine/session/emailOtp/EmailOtpWalletSessionCoordinator.js +0 -130
  872. package/dist/esm/core/signingEngine/session/emailOtp/ecdsaBootstrapCommit.js +0 -106
  873. package/dist/esm/core/signingEngine/session/emailOtp/ecdsaLifecycleRuntime.js +0 -47
  874. package/dist/esm/core/signingEngine/session/emailOtp/ecdsaLogin.js +0 -930
  875. package/dist/esm/core/signingEngine/session/emailOtp/ecdsaPublication.js +0 -414
  876. package/dist/esm/core/signingEngine/session/emailOtp/ecdsaRecovery.js +0 -264
  877. package/dist/esm/core/signingEngine/session/emailOtp/ed25519ExportContext.js +0 -373
  878. package/dist/esm/core/signingEngine/session/emailOtp/exportRecovery.js +0 -284
  879. package/dist/esm/core/signingEngine/session/emailOtp/exportRecoveryRuntime.js +0 -50
  880. package/dist/esm/core/signingEngine/session/emailOtp/persistedSnapshot.js +0 -22
  881. package/dist/esm/core/signingEngine/session/emailOtp/publicTypes.js +0 -38
  882. package/dist/esm/core/signingEngine/session/emailOtp/routePlan.js +0 -60
  883. package/dist/esm/core/signingEngine/session/emailOtp/runtimeConfig.js +0 -24
  884. package/dist/esm/core/signingEngine/session/emailOtp/sealedRefreshPolicy.js +0 -49
  885. package/dist/esm/core/signingEngine/session/emailOtp/sealedRestoreOrchestrator.js +0 -234
  886. package/dist/esm/core/signingEngine/session/emailOtp/sealedRuntimePurpose.js +0 -16
  887. package/dist/esm/core/signingEngine/session/emailOtp/sealedSessionRegistry.js +0 -40
  888. package/dist/esm/core/signingEngine/session/emailOtp/status.js +0 -72
  889. package/dist/esm/core/signingEngine/session/emailOtp/walletUnlock.js +0 -168
  890. package/dist/esm/core/signingEngine/session/emailOtp/warmSessionRuntime.js +0 -70
  891. package/dist/esm/core/signingEngine/session/emailOtp/workerEnrollment.js +0 -159
  892. package/dist/esm/core/signingEngine/session/emailOtp/workerRequests.js +0 -84
  893. package/dist/esm/core/signingEngine/session/emailOtp/zeroize.js +0 -9
  894. package/dist/esm/core/signingEngine/session/identity/exactWalletSessionCredential.js +0 -104
  895. package/dist/esm/core/signingEngine/session/identity/exactWalletSessionReader.js +0 -54
  896. package/dist/esm/core/signingEngine/session/identity/ownerLaneScope.js +0 -185
  897. package/dist/esm/core/signingEngine/session/lanes/walletExecutionLaneHydration.js +0 -194
  898. package/dist/esm/core/signingEngine/session/lifecycle/canonicalWalletSessionStatus.js +0 -32
  899. package/dist/esm/core/signingEngine/session/lifecycle/walletSessionStatus.js +0 -123
  900. package/dist/esm/core/signingEngine/session/material/ecdsaCapabilityHydration.js +0 -75
  901. package/dist/esm/core/signingEngine/session/material/ecdsaSealedRuntime.js +0 -197
  902. package/dist/esm/core/signingEngine/session/material/mpcCapabilityHydration.js +0 -79
  903. package/dist/esm/core/signingEngine/session/material/nearEd25519YaoSigningPreparation.js +0 -122
  904. package/dist/esm/core/signingEngine/session/material/restorableMpcMaterialRef.internal.js +0 -21
  905. package/dist/esm/core/signingEngine/session/passkey/ecdsaBootstrap.js +0 -184
  906. package/dist/esm/core/signingEngine/session/passkey/ecdsaKeyFactsInventory.js +0 -205
  907. package/dist/esm/core/signingEngine/session/passkey/ecdsaRecovery.js +0 -84
  908. package/dist/esm/core/signingEngine/session/passkey/ecdsaSessionProvision.js +0 -224
  909. package/dist/esm/core/signingEngine/session/passkey/ecdsaWarmCapabilityBootstrap.js +0 -147
  910. package/dist/esm/core/signingEngine/session/passkey/ed25519Provisioner.js +0 -55
  911. package/dist/esm/core/signingEngine/session/passkey/ed25519SessionProvision.js +0 -228
  912. package/dist/esm/core/signingEngine/session/passkey/ed25519YaoLocalMaterial.js +0 -536
  913. package/dist/esm/core/signingEngine/session/passkey/ed25519YaoRecoveryCapability.js +0 -94
  914. package/dist/esm/core/signingEngine/session/passkey/ed25519YaoSealedSession.js +0 -57
  915. package/dist/esm/core/signingEngine/session/passkey/ed25519YaoWarmRecovery.js +0 -281
  916. package/dist/esm/core/signingEngine/session/passkey/passkeyCustodySessionCache.js +0 -90
  917. package/dist/esm/core/signingEngine/session/passkey/public.js +0 -15
  918. package/dist/esm/core/signingEngine/session/passkey/unlockEcdsaWarmupPlanner.js +0 -247
  919. package/dist/esm/core/signingEngine/session/persistence/clientSessionPersistence.js +0 -135
  920. package/dist/esm/core/signingEngine/session/persistence/walletSessionAuthorizationProjection.js +0 -51
  921. package/dist/esm/core/signingEngine/session/planning/operationIdBinding.js +0 -36
  922. package/dist/esm/core/signingEngine/session/postconditions/runtimePostconditions.js +0 -163
  923. package/dist/esm/core/signingEngine/session/public.js +0 -44
  924. package/dist/esm/core/signingEngine/session/routerAbSigningWalletSession.js +0 -119
  925. package/dist/esm/core/signingEngine/session/sealedRecovery/exactRecordLookup.js +0 -148
  926. package/dist/esm/core/signingEngine/session/sealedRecovery/recoveryRecord.js +0 -248
  927. package/dist/esm/core/signingEngine/session/sealedRecovery/restoreCoordinator.js +0 -229
  928. package/dist/esm/core/signingEngine/session/userPreferences.js +0 -212
  929. package/dist/esm/core/signingEngine/session/warmCapabilities/capabilityReader.js +0 -62
  930. package/dist/esm/core/signingEngine/session/warmCapabilities/capabilityReaderCore.js +0 -293
  931. package/dist/esm/core/signingEngine/session/warmCapabilities/clearVolatileWarmSigningMaterial.js +0 -44
  932. package/dist/esm/core/signingEngine/session/warmCapabilities/ecdsaBootstrapPersistence.js +0 -107
  933. package/dist/esm/core/signingEngine/session/warmCapabilities/ecdsaBootstrapQueue.js +0 -22
  934. package/dist/esm/core/signingEngine/session/warmCapabilities/ecdsaLoginPrefill.js +0 -93
  935. package/dist/esm/core/signingEngine/session/warmCapabilities/ecdsaLoginPrefillSigningMaterialSource.js +0 -50
  936. package/dist/esm/core/signingEngine/session/warmCapabilities/ecdsaProvisionPlan.js +0 -9
  937. package/dist/esm/core/signingEngine/session/warmCapabilities/ed25519SealedSessionRuntime.js +0 -251
  938. package/dist/esm/core/signingEngine/session/warmCapabilities/nearEd25519CapabilityRehydration.js +0 -98
  939. package/dist/esm/core/signingEngine/session/warmCapabilities/public.js +0 -31
  940. package/dist/esm/core/signingEngine/session/warmCapabilities/readModel.js +0 -155
  941. package/dist/esm/core/signingEngine/session/warmCapabilities/routerAbEd25519WalletSessionState.js +0 -256
  942. package/dist/esm/core/signingEngine/session/warmCapabilities/statusReader.js +0 -100
  943. package/dist/esm/core/signingEngine/session/warmCapabilities/transitions.js +0 -47
  944. package/dist/esm/core/signingEngine/session/warmCapabilities/types.js +0 -122
  945. package/dist/esm/core/signingEngine/session/warmCapabilities/volatileWarmMaterialCommands.js +0 -45
  946. package/dist/esm/core/signingEngine/stepUpConfirmation/channel/confirmCommon.js +0 -89
  947. package/dist/esm/core/signingEngine/stepUpConfirmation/channel/confirmTypes.js +0 -12
  948. package/dist/esm/core/signingEngine/stepUpConfirmation/otpPrompt/authLane.js +0 -31
  949. package/dist/esm/core/signingEngine/stepUpConfirmation/otpPrompt/exportAuthorization.js +0 -108
  950. package/dist/esm/core/signingEngine/stepUpConfirmation/passkeyPrompt/touchIdPrompt.js +0 -271
  951. package/dist/esm/core/signingEngine/stepUpConfirmation/passkeyPrompt/webauthnPromptCoordinator.js +0 -167
  952. package/dist/esm/core/signingEngine/stepUpConfirmation/userConfirmationType.js +0 -15
  953. package/dist/esm/core/signingEngine/threshold/crypto/ed25519YaoLaneWasm.js +0 -67
  954. package/dist/esm/core/signingEngine/threshold/ecdsa/activation.js +0 -267
  955. package/dist/esm/core/signingEngine/threshold/ecdsa/bootstrapSession.js +0 -115
  956. package/dist/esm/core/signingEngine/threshold/ecdsa/postRegistrationSessionActivation.js +0 -132
  957. package/dist/esm/core/signingEngine/threshold/ecdsa/signingQueue.js +0 -16
  958. package/dist/esm/core/signingEngine/threshold/ed25519/commitQueue.js +0 -16
  959. package/dist/esm/core/signingEngine/threshold/ed25519/connectSession.js +0 -137
  960. package/dist/esm/core/signingEngine/threshold/ed25519/yaoActiveClientRegistry.js +0 -146
  961. package/dist/esm/core/signingEngine/threshold/ed25519/yaoClient.js +0 -563
  962. package/dist/esm/core/signingEngine/threshold/ed25519/yaoPageLifecycleOwner.js +0 -23
  963. package/dist/esm/core/signingEngine/uiConfirm/PasskeyMpcExportManager.js +0 -233
  964. package/dist/esm/core/signingEngine/uiConfirm/PasskeyMpcSessionDurableState.js +0 -493
  965. package/dist/esm/core/signingEngine/uiConfirm/PasskeyMpcSessionManager.js +0 -746
  966. package/dist/esm/core/signingEngine/uiConfirm/UiConfirmManager.js +0 -599
  967. package/dist/esm/core/signingEngine/uiConfirm/confirmationReadinessRegistry.js +0 -41
  968. package/dist/esm/core/signingEngine/uiConfirm/exportConfirmRequest.js +0 -149
  969. package/dist/esm/core/signingEngine/uiConfirm/handlers/determineConfirmationConfig.js +0 -82
  970. package/dist/esm/core/signingEngine/uiConfirm/handlers/flowOrchestrator.js +0 -363
  971. package/dist/esm/core/signingEngine/uiConfirm/handlers/flows/adapters/adapters.js +0 -337
  972. package/dist/esm/core/signingEngine/uiConfirm/handlers/flows/adapters/request.js +0 -120
  973. package/dist/esm/core/signingEngine/uiConfirm/handlers/flows/localOnly.js +0 -149
  974. package/dist/esm/core/signingEngine/uiConfirm/handlers/flows/registration.js +0 -235
  975. package/dist/esm/core/signingEngine/uiConfirm/handlers/flows/requestRegistrationCredentialConfirmation.js +0 -178
  976. package/dist/esm/core/signingEngine/uiConfirm/handlers/flows/signing.js +0 -684
  977. package/dist/esm/core/signingEngine/uiConfirm/handlers/handlePromptFromWorker.js +0 -90
  978. package/dist/esm/core/signingEngine/uiConfirm/ui/appearance.js +0 -27
  979. package/dist/esm/core/signingEngine/uiConfirm/ui/confirm-ui.js +0 -516
  980. package/dist/esm/core/signingEngine/uiConfirm/ui/export-private-key-reveal.js +0 -155
  981. package/dist/esm/core/signingEngine/uiConfirm/ui/export-viewer-host.js +0 -207
  982. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ExportPrivateKeySurface.js +0 -318
  983. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/RecoveryCodeBackupSurface.js +0 -518
  984. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/confirmation-controller.js +0 -80
  985. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/mountExportPrivateKeySurface.js +0 -86
  986. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/mountRecoveryCodeBackupSurface.js +0 -82
  987. package/dist/esm/core/signingEngine/uiConfirm/ui/surface-measurement-binding.js +0 -12
  988. package/dist/esm/core/signingEngine/uiConfirm/ui/transaction-activity.js +0 -46
  989. package/dist/esm/core/signingEngine/uiConfirm/ui/transaction-display/confirmation-tree.js +0 -27
  990. package/dist/esm/core/signingEngine/uiConfirm/warmSessionUiConfirm.js +0 -65
  991. package/dist/esm/core/signingEngine/walletCustody/activateEd25519Capability.js +0 -122
  992. package/dist/esm/core/signingEngine/walletCustody/ceremonyActiveClientMetadata.js +0 -94
  993. package/dist/esm/core/signingEngine/walletCustody/ceremonyDriver.js +0 -171
  994. package/dist/esm/core/signingEngine/walletCustody/ceremonyStepRunner.js +0 -20
  995. package/dist/esm/core/signingEngine/walletCustody/ed25519ActiveClient.js +0 -100
  996. package/dist/esm/core/signingEngine/walletCustody/ed25519Projection.js +0 -32
  997. package/dist/esm/core/signingEngine/walletCustody/ed25519SeedMaterial.js +0 -92
  998. package/dist/esm/core/signingEngine/walletCustody/emailOtpLink.js +0 -132
  999. package/dist/esm/core/signingEngine/walletCustody/joinCustodyWire.js +0 -64
  1000. package/dist/esm/core/signingEngine/walletCustody/openCustodyCache.js +0 -126
  1001. package/dist/esm/core/signingEngine/walletCustody/passkeyLink.js +0 -180
  1002. package/dist/esm/core/signingEngine/walletCustody/recoveryReplacementEnvelope.js +0 -60
  1003. package/dist/esm/core/signingEngine/walletCustody/registrationCeremony.js +0 -460
  1004. package/dist/esm/core/signingEngine/walletCustody/unlockedEd25519ExportRootCapability.js +0 -258
  1005. package/dist/esm/core/signingEngine/walletCustody/walletRecoveryCredential.js +0 -23
  1006. package/dist/esm/core/signingEngine/walletCustody/walletRecoveryEcdsa.js +0 -75
  1007. package/dist/esm/core/signingEngine/walletCustody/walletRecoveryEd25519.js +0 -129
  1008. package/dist/esm/core/signingEngine/walletCustody/walletRecoveryManifest.js +0 -178
  1009. package/dist/esm/core/signingEngine/walletCustody/walletRecoveryRotation.js +0 -102
  1010. package/dist/esm/core/signingEngine/webauthnAuth/credentials/collectAuthenticationCredentialForChallengeB64u.js +0 -154
  1011. package/dist/esm/core/signingEngine/webauthnAuth/device/signerSlot.js +0 -25
  1012. package/dist/esm/core/signingEngine/webauthnAuth/walletOriginWebAuthn.js +0 -109
  1013. package/dist/esm/core/signingEngine/workerManager/SignerWorkerManager.js +0 -68
  1014. package/dist/esm/core/signingEngine/workerManager/deviceLinkingPorts.js +0 -342
  1015. package/dist/esm/core/signingEngine/workerManager/deviceLinkingSourceContribution.js +0 -158
  1016. package/dist/esm/core/signingEngine/workerManager/ecdsaClientWorkerChannels.js +0 -13
  1017. package/dist/esm/core/signingEngine/workerManager/workerTransport.js +0 -734
  1018. package/dist/esm/core/types/confirmationConfig.js +0 -39
  1019. package/dist/esm/core/types/secure-confirm-worker.js +0 -22
  1020. package/dist/esm/core/walletRuntimePaths/emailOtpWorker.js +0 -12
  1021. package/dist/esm/core/walletRuntimePaths/multichainWorkers.js +0 -25
  1022. package/dist/esm/core/walletRuntimePaths/walletCustodyCeremonyWorker.js +0 -18
  1023. package/dist/esm/core/walletRuntimePaths/workers.js +0 -93
  1024. package/dist/esm/react/context/useEagerPrewarm.js +0 -38
  1025. package/dist/esm/sdk/EvmClient-DoxytQaJ.js +0 -1
  1026. package/dist/esm/sdk/NearClient-vJ65Wjrq.js +0 -1
  1027. package/dist/esm/sdk/NonceCoordinator-BBeadCSq.js +0 -1
  1028. package/dist/esm/sdk/accountLifecycle-EyfYPnuT.js +0 -1
  1029. package/dist/esm/sdk/actions-DZLxCcrU.js +0 -1
  1030. package/dist/esm/sdk/adapters-DtAyuoiA.js +0 -2
  1031. package/dist/esm/sdk/base-Xtd32asf.js +0 -1
  1032. package/dist/esm/sdk/bytes-t5S5mkat.js +0 -1
  1033. package/dist/esm/sdk/canonicalPrimitives-MPGET2cl.js +0 -1
  1034. package/dist/esm/sdk/canonicalSignerErrorCode-C0hh_SVi.js +0 -1
  1035. package/dist/esm/sdk/chains-yAls2d9X.js +0 -1
  1036. package/dist/esm/sdk/challengeDelivery-cAsaUC6U.js +0 -1
  1037. package/dist/esm/sdk/configHelpers-CseiVoZD.js +0 -1
  1038. package/dist/esm/sdk/csp-stylesheet-B1fAhrGB.js +0 -2
  1039. package/dist/esm/sdk/defaultConfigs-CWpApkMq.js +0 -1
  1040. package/dist/esm/sdk/display-jK7_hYho.js +0 -1
  1041. package/dist/esm/sdk/domainIds-GDzjOs6i.js +0 -1
  1042. package/dist/esm/sdk/ecdsaCapabilityManifest-CHFu-QrV.js +0 -1
  1043. package/dist/esm/sdk/ecdsaPresignLifecycle-CQnCxSlq.js +0 -1
  1044. package/dist/esm/sdk/ecdsaPresignPoolIdentity-Ci-ovDlv.js +0 -1
  1045. package/dist/esm/sdk/enrichDisplayModelWithAbi-CR-4ebuU.js +0 -1
  1046. package/dist/esm/sdk/evmFamilyEcdsaIdentity-Br3iFdQx.js +0 -1
  1047. package/dist/esm/sdk/exactSessionState-CjD8gekO.js +0 -210
  1048. package/dist/esm/sdk/exactSigningLaneIdentity-olheZx_n.js +0 -1
  1049. package/dist/esm/sdk/export-viewer-host-jo7h_0wl.js +0 -1
  1050. package/dist/esm/sdk/helpers-D4QckQhq.js +0 -1
  1051. package/dist/esm/sdk/host-BAqOYnju.js +0 -1
  1052. package/dist/esm/sdk/intentDigest-CB6zy3lN.js +0 -1
  1053. package/dist/esm/sdk/jsxRuntime.module-CoHsKD_3.js +0 -1
  1054. package/dist/esm/sdk/keyMaterialBrands-uVZHfAh3.js +0 -1
  1055. package/dist/esm/sdk/localOnly-DBQRG6Qh.js +0 -1
  1056. package/dist/esm/sdk/messages-Cv2j4SKI.js +0 -1
  1057. package/dist/esm/sdk/mountExportPrivateKeySurface-G7Z_9JMQ.js +0 -1
  1058. package/dist/esm/sdk/nearEd25519YaoMaterialActivation-DQIw8ho3.js +0 -1
  1059. package/dist/esm/sdk/nearEd25519YaoSigningPreparation-Bp_CvWRz.js +0 -1
  1060. package/dist/esm/sdk/nearRpcResults--cBcfmp4.js +0 -1
  1061. package/dist/esm/sdk/normalization-BGPR6osg.js +0 -1
  1062. package/dist/esm/sdk/operationFingerprint-5-wH2Ht8.js +0 -1
  1063. package/dist/esm/sdk/passkey-custody-LP4UTFbn.js +0 -1
  1064. package/dist/esm/sdk/pendingWalletRecoveryCodeBackup-BNk4ebsY.js +0 -1
  1065. package/dist/esm/sdk/recovery-entrypoint-DkT8sFO5.js +0 -1
  1066. package/dist/esm/sdk/registration-Btozh7uh.js +0 -1
  1067. package/dist/esm/sdk/registration-CSAG_h4Y.js +0 -1
  1068. package/dist/esm/sdk/registrationIds-BIel5S0i.js +0 -1
  1069. package/dist/esm/sdk/registrationIntent-DV1GYZ3K.js +0 -1
  1070. package/dist/esm/sdk/registrationPreparationPreload-vOCqNuG4.js +0 -1
  1071. package/dist/esm/sdk/registrationSignerPlan-FzD3TwxB.js +0 -1
  1072. package/dist/esm/sdk/relayerHttp-DaPeS929.js +0 -1
  1073. package/dist/esm/sdk/routePlan-B_KJaPtm.js +0 -1
  1074. package/dist/esm/sdk/router-Dd3fFHk3.js +0 -1
  1075. package/dist/esm/sdk/routerAbNormalSigning-D_fHjq5l.js +0 -1
  1076. package/dist/esm/sdk/runtime-auth-B2M91rSx.js +0 -1
  1077. package/dist/esm/sdk/runtime-device-link-ojjPSRaG.js +0 -1
  1078. package/dist/esm/sdk/runtime-ecdsa-tempo-CE4JLgmn.js +0 -1
  1079. package/dist/esm/sdk/runtime-email-otp-DDwtKVAe.js +0 -1
  1080. package/dist/esm/sdk/runtime-export-JXYk8sQ-.js +0 -1
  1081. package/dist/esm/sdk/runtime-near-BB8AG6dV.js +0 -1
  1082. package/dist/esm/sdk/runtime-preferences-DKFZYccW.js +0 -1
  1083. package/dist/esm/sdk/runtime-recovery-C_XjsDBg.js +0 -1
  1084. package/dist/esm/sdk/runtime-recovery-codes-CWp839mH.js +0 -1
  1085. package/dist/esm/sdk/runtimeContext-BpObgzbj.js +0 -6
  1086. package/dist/esm/sdk/runtimeLoader-DjgBf_yF.js +0 -1
  1087. package/dist/esm/sdk/sdkSentEvents-_RGAEeld.js +0 -1
  1088. package/dist/esm/sdk/secp256k1-B_6W9QDJ.js +0 -1
  1089. package/dist/esm/sdk/sessionPolicy-CNVK7nJ6.js +0 -1
  1090. package/dist/esm/sdk/shared-j_KsFbCT.js +0 -1
  1091. package/dist/esm/sdk/signEvmFamily-CcLVBm0f.js +0 -1
  1092. package/dist/esm/sdk/signNear-mWbTE2Dl.js +0 -1
  1093. package/dist/esm/sdk/signerDomain-BhUTzDmF.js +0 -1
  1094. package/dist/esm/sdk/signerLoader-By0IY24G.js +0 -1
  1095. package/dist/esm/sdk/signingFlow-LUWrZi2d.js +0 -2
  1096. package/dist/esm/sdk/trace-M34pNGuF.js +0 -1
  1097. package/dist/esm/sdk/transaction-activity-BbDod7ji.js +0 -1
  1098. package/dist/esm/sdk/transactionReview-CBE5oH4c.js +0 -1
  1099. package/dist/esm/sdk/transactionReviewAdmission-0ZgWs6q3.js +0 -1
  1100. package/dist/esm/sdk/transactionState-9d7f3xVj.js +0 -1
  1101. package/dist/esm/sdk/validation-dC1-_uyG.js +0 -1
  1102. package/dist/esm/sdk/wallet-recovery-CcDZ1hMH.js +0 -1
  1103. package/dist/esm/sdk/walletAuthority-CoWSeqvQ.js +0 -1
  1104. package/dist/esm/sdk/walletCustodyEcdsaContinuity-B7xi7nwh.js +0 -1
  1105. package/dist/esm/sdk/walletRecoveryCommit-ljxVeo-d.js +0 -1
  1106. package/dist/esm/sdk/walletRecoveryRotate-HztDcDaY.js +0 -1
  1107. package/dist/esm/sdk/warmSessionHydration-BPGM0YRU.js +0 -1
  1108. package/dist/esm/shared-ts/src/authorization/walletCustodyOperation.js +0 -16
  1109. package/dist/esm/shared-ts/src/device-linking/contracts.js +0 -8
  1110. package/dist/esm/shared-ts/src/device-linking/ed25519ExportRoot.js +0 -167
  1111. package/dist/esm/shared-ts/src/passkey-custody/ceremonyCommitPayload.js +0 -43
  1112. package/dist/esm/shared-ts/src/signing-lanes/participants.js +0 -256
  1113. package/dist/esm/shared-ts/src/signing-lanes/recordParsers.js +0 -479
  1114. package/dist/esm/shared-ts/src/threshold/secp256k1.js +0 -6
  1115. package/dist/esm/shared-ts/src/utils/addAuthMethodRegistration.js +0 -103
  1116. package/dist/esm/shared-ts/src/utils/ecdsaKeyFactsInventory.js +0 -43
  1117. package/dist/esm/shared-ts/src/utils/exactKeys.js +0 -17
  1118. package/dist/esm/shared-ts/src/utils/routerAbTraceContext.js +0 -36
  1119. package/dist/esm/shared-ts/src/utils/walletAddSignerActivation.js +0 -32
  1120. package/dist/public/sdk/EvmClient-DoxytQaJ.js +0 -1
  1121. package/dist/public/sdk/NearClient-vJ65Wjrq.js +0 -1
  1122. package/dist/public/sdk/NonceCoordinator-BBeadCSq.js +0 -1
  1123. package/dist/public/sdk/accountLifecycle-EyfYPnuT.js +0 -1
  1124. package/dist/public/sdk/actions-DZLxCcrU.js +0 -1
  1125. package/dist/public/sdk/adapters-DtAyuoiA.js +0 -2
  1126. package/dist/public/sdk/base-Xtd32asf.js +0 -1
  1127. package/dist/public/sdk/bytes-t5S5mkat.js +0 -1
  1128. package/dist/public/sdk/canonicalPrimitives-MPGET2cl.js +0 -1
  1129. package/dist/public/sdk/canonicalSignerErrorCode-C0hh_SVi.js +0 -1
  1130. package/dist/public/sdk/chains-yAls2d9X.js +0 -1
  1131. package/dist/public/sdk/challengeDelivery-cAsaUC6U.js +0 -1
  1132. package/dist/public/sdk/configHelpers-CseiVoZD.js +0 -1
  1133. package/dist/public/sdk/csp-stylesheet-B1fAhrGB.js +0 -2
  1134. package/dist/public/sdk/defaultConfigs-CWpApkMq.js +0 -1
  1135. package/dist/public/sdk/display-jK7_hYho.js +0 -1
  1136. package/dist/public/sdk/domainIds-GDzjOs6i.js +0 -1
  1137. package/dist/public/sdk/ecdsaCapabilityManifest-CHFu-QrV.js +0 -1
  1138. package/dist/public/sdk/ecdsaPresignLifecycle-CQnCxSlq.js +0 -1
  1139. package/dist/public/sdk/ecdsaPresignPoolIdentity-Ci-ovDlv.js +0 -1
  1140. package/dist/public/sdk/enrichDisplayModelWithAbi-CR-4ebuU.js +0 -1
  1141. package/dist/public/sdk/evmFamilyEcdsaIdentity-Br3iFdQx.js +0 -1
  1142. package/dist/public/sdk/exactSessionState-CjD8gekO.js +0 -210
  1143. package/dist/public/sdk/exactSigningLaneIdentity-olheZx_n.js +0 -1
  1144. package/dist/public/sdk/export-viewer-host-jo7h_0wl.js +0 -1
  1145. package/dist/public/sdk/helpers-D4QckQhq.js +0 -1
  1146. package/dist/public/sdk/host-BAqOYnju.js +0 -1
  1147. package/dist/public/sdk/intentDigest-CB6zy3lN.js +0 -1
  1148. package/dist/public/sdk/jsxRuntime.module-CoHsKD_3.js +0 -1
  1149. package/dist/public/sdk/keyMaterialBrands-uVZHfAh3.js +0 -1
  1150. package/dist/public/sdk/localOnly-DBQRG6Qh.js +0 -1
  1151. package/dist/public/sdk/messages-Cv2j4SKI.js +0 -1
  1152. package/dist/public/sdk/mountExportPrivateKeySurface-G7Z_9JMQ.js +0 -1
  1153. package/dist/public/sdk/nearEd25519YaoMaterialActivation-DQIw8ho3.js +0 -1
  1154. package/dist/public/sdk/nearEd25519YaoSigningPreparation-Bp_CvWRz.js +0 -1
  1155. package/dist/public/sdk/nearRpcResults--cBcfmp4.js +0 -1
  1156. package/dist/public/sdk/normalization-BGPR6osg.js +0 -1
  1157. package/dist/public/sdk/operationFingerprint-5-wH2Ht8.js +0 -1
  1158. package/dist/public/sdk/passkey-custody-LP4UTFbn.js +0 -1
  1159. package/dist/public/sdk/pendingWalletRecoveryCodeBackup-BNk4ebsY.js +0 -1
  1160. package/dist/public/sdk/recovery-entrypoint-DkT8sFO5.js +0 -1
  1161. package/dist/public/sdk/registration-Btozh7uh.js +0 -1
  1162. package/dist/public/sdk/registration-CSAG_h4Y.js +0 -1
  1163. package/dist/public/sdk/registrationIds-BIel5S0i.js +0 -1
  1164. package/dist/public/sdk/registrationIntent-DV1GYZ3K.js +0 -1
  1165. package/dist/public/sdk/registrationPreparationPreload-vOCqNuG4.js +0 -1
  1166. package/dist/public/sdk/registrationSignerPlan-FzD3TwxB.js +0 -1
  1167. package/dist/public/sdk/relayerHttp-DaPeS929.js +0 -1
  1168. package/dist/public/sdk/routePlan-B_KJaPtm.js +0 -1
  1169. package/dist/public/sdk/router-Dd3fFHk3.js +0 -1
  1170. package/dist/public/sdk/routerAbNormalSigning-D_fHjq5l.js +0 -1
  1171. package/dist/public/sdk/runtime-auth-B2M91rSx.js +0 -1
  1172. package/dist/public/sdk/runtime-device-link-ojjPSRaG.js +0 -1
  1173. package/dist/public/sdk/runtime-ecdsa-tempo-CE4JLgmn.js +0 -1
  1174. package/dist/public/sdk/runtime-email-otp-DDwtKVAe.js +0 -1
  1175. package/dist/public/sdk/runtime-export-JXYk8sQ-.js +0 -1
  1176. package/dist/public/sdk/runtime-near-BB8AG6dV.js +0 -1
  1177. package/dist/public/sdk/runtime-preferences-DKFZYccW.js +0 -1
  1178. package/dist/public/sdk/runtime-recovery-C_XjsDBg.js +0 -1
  1179. package/dist/public/sdk/runtime-recovery-codes-CWp839mH.js +0 -1
  1180. package/dist/public/sdk/runtimeContext-BpObgzbj.js +0 -6
  1181. package/dist/public/sdk/runtimeLoader-DjgBf_yF.js +0 -1
  1182. package/dist/public/sdk/sdkSentEvents-_RGAEeld.js +0 -1
  1183. package/dist/public/sdk/secp256k1-B_6W9QDJ.js +0 -1
  1184. package/dist/public/sdk/sessionPolicy-CNVK7nJ6.js +0 -1
  1185. package/dist/public/sdk/shared-j_KsFbCT.js +0 -1
  1186. package/dist/public/sdk/signEvmFamily-CcLVBm0f.js +0 -1
  1187. package/dist/public/sdk/signNear-mWbTE2Dl.js +0 -1
  1188. package/dist/public/sdk/signerDomain-BhUTzDmF.js +0 -1
  1189. package/dist/public/sdk/signerLoader-By0IY24G.js +0 -1
  1190. package/dist/public/sdk/signingFlow-LUWrZi2d.js +0 -2
  1191. package/dist/public/sdk/trace-M34pNGuF.js +0 -1
  1192. package/dist/public/sdk/transaction-activity-BbDod7ji.js +0 -1
  1193. package/dist/public/sdk/transactionReview-CBE5oH4c.js +0 -1
  1194. package/dist/public/sdk/transactionReviewAdmission-0ZgWs6q3.js +0 -1
  1195. package/dist/public/sdk/transactionState-9d7f3xVj.js +0 -1
  1196. package/dist/public/sdk/validation-dC1-_uyG.js +0 -1
  1197. package/dist/public/sdk/wallet-recovery-CcDZ1hMH.js +0 -1
  1198. package/dist/public/sdk/walletAuthority-CoWSeqvQ.js +0 -1
  1199. package/dist/public/sdk/walletCustodyEcdsaContinuity-B7xi7nwh.js +0 -1
  1200. package/dist/public/sdk/walletRecoveryCommit-ljxVeo-d.js +0 -1
  1201. package/dist/public/sdk/walletRecoveryRotate-HztDcDaY.js +0 -1
  1202. package/dist/public/sdk/warmSessionHydration-BPGM0YRU.js +0 -1
  1203. package/dist/public/sdk/workers/evm_crypto.wasm +0 -0
  1204. package/dist/public/sdk/workers/near_signer.wasm +0 -0
  1205. package/dist/public/sdk/workers/tempo_signer.wasm +0 -0
  1206. package/dist/types/wallet/src/SeamsWeb/assembly/browserWorkerWarmupPolicy.d.ts +0 -4
  1207. package/dist/types/wallet/src/SeamsWeb/assembly/configureBrowserIndexedDB.d.ts +0 -3
  1208. package/dist/types/wallet/src/SeamsWeb/operations/auth/walletAuth.d.ts +0 -56
  1209. package/dist/types/wallet/src/SeamsWeb/operations/evm/index.d.ts +0 -9
  1210. package/dist/types/wallet/src/SeamsWeb/operations/near/index.d.ts +0 -11
  1211. package/dist/types/wallet/src/SeamsWeb/operations/recovery/accountSync.d.ts +0 -19
  1212. package/dist/types/wallet/src/SeamsWeb/publicApi/devices.typecheck.d.ts +0 -2
  1213. package/dist/types/wallet/src/SeamsWeb/publicApi/preferences.d.ts +0 -8
  1214. package/dist/types/wallet/src/SeamsWeb/publicApi/recovery.d.ts +0 -14
  1215. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/config-guards.d.ts +0 -15
  1216. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/registrationPreparationPreload.d.ts +0 -2
  1217. package/dist/types/wallet/src/core/signingEngine/flows/registration/public.d.ts +0 -68
  1218. package/dist/types/wallet/src/react/context/useEagerPrewarm.d.ts +0 -3
  1219. package/dist/workers/evm_crypto.wasm +0 -0
  1220. package/dist/workers/near_signer.wasm +0 -0
  1221. package/dist/workers/tempo_signer.wasm +0 -0
  1222. /package/dist/esm/sdk/{accountIds-C3Ihsd2c.js → accountIds-BzZs7YoX.js} +0 -0
  1223. /package/dist/esm/sdk/{base64-ojm5DKcF.js → base64-CsEj-_bC.js} +0 -0
  1224. /package/dist/esm/sdk/{browser-CsOGMbMy.js → browser-D4wUl_77.js} +0 -0
  1225. /package/dist/esm/sdk/{errors-DfbnsXjO.js → errors-BZO3LF6G.js} +0 -0
  1226. /package/dist/esm/sdk/{events-BJyVcnsn.js → events-DsQJQ0Cl.js} +0 -0
  1227. /package/dist/esm/sdk/{executeWorkerOperation-CrFf3FkL.js → executeWorkerOperation-BInr8RYN.js} +0 -0
  1228. /package/dist/esm/sdk/{jsonRpc-C85RYR0A.js → jsonRpc-DrCYQIM9.js} +0 -0
  1229. /package/dist/esm/sdk/{keccak-zexutGfG.js → keccak-B02Fekdh.js} +0 -0
  1230. /package/dist/esm/sdk/{profileAccountProjection-DHCaMtOu.js → profileAccountProjection-DmmfMood.js} +0 -0
  1231. /package/dist/esm/sdk/{signerSlot-BQ1g5JNV.js → signerSlot-Dto7dObP.js} +0 -0
  1232. /package/dist/esm/sdk/{surface-measurement-reporter-OICExWKE.js → surface-measurement-reporter-IlPOI3QK.js} +0 -0
  1233. /package/dist/public/sdk/{accountIds-C3Ihsd2c.js → accountIds-BzZs7YoX.js} +0 -0
  1234. /package/dist/public/sdk/{base64-ojm5DKcF.js → base64-CsEj-_bC.js} +0 -0
  1235. /package/dist/public/sdk/{browser-CsOGMbMy.js → browser-D4wUl_77.js} +0 -0
  1236. /package/dist/public/sdk/{errors-DfbnsXjO.js → errors-BZO3LF6G.js} +0 -0
  1237. /package/dist/public/sdk/{events-BJyVcnsn.js → events-DsQJQ0Cl.js} +0 -0
  1238. /package/dist/public/sdk/{executeWorkerOperation-CrFf3FkL.js → executeWorkerOperation-BInr8RYN.js} +0 -0
  1239. /package/dist/public/sdk/{jsonRpc-C85RYR0A.js → jsonRpc-DrCYQIM9.js} +0 -0
  1240. /package/dist/public/sdk/{keccak-zexutGfG.js → keccak-B02Fekdh.js} +0 -0
  1241. /package/dist/public/sdk/{profileAccountProjection-DHCaMtOu.js → profileAccountProjection-DmmfMood.js} +0 -0
  1242. /package/dist/public/sdk/{signerSlot-BQ1g5JNV.js → signerSlot-Dto7dObP.js} +0 -0
  1243. /package/dist/public/sdk/{surface-measurement-reporter-OICExWKE.js → surface-measurement-reporter-IlPOI3QK.js} +0 -0
@@ -1 +0,0 @@
1
- import{B as e}from"./domainIds-GDzjOs6i.js";import{p as t,s as n}from"./sessionPolicy-CNVK7nJ6.js";import{a as r,i,o as a,s as o}from"./chains-yAls2d9X.js";function s(e){let t=e.value??e.fallback;if(typeof t!=`number`||!Number.isFinite(t)||!Number.isInteger(t))throw Error(`[configPresets] Invalid config: ${e.path} must be an integer`);if(t<e.range.min||t>e.range.max)throw Error(`[configPresets] Invalid config: ${e.path} must be in [${e.range.min}, ${e.range.max}]`);return t}function c(e){let t=e.value??e.fallback;if(t!=null){if(typeof t!=`number`||!Number.isFinite(t)||!Number.isInteger(t))throw Error(`[configPresets] Invalid config: ${e.path} must be an integer`);if(t<=0)throw Error(`[configPresets] Invalid config: ${e.path} must be > 0`);return t}}function l(t){let n=e(t.value)||e(t.fallback);if(!n)throw Error(`[configPresets] Missing required config: ${t.path}`);return n}function u(e){if(e.value==null)return e.fallback;if(typeof e.value!=`boolean`)throw Error(`[configPresets] Invalid config: ${e.path} must be boolean`);return e.value}function d(e){if(!e||typeof e!=`object`)return{};let t={};for(let[n,r]of Object.entries(e))typeof r==`string`&&(t[n]=r);return t}function f(t){let n=e(t.value)||t.fallback;if(!n)throw Error(`[configPresets] Invalid config: appearance.theme.id must be non-empty`);return n}function p(e,t){if(!e||typeof e!=`object`)return{};let n=e[t];return!n||typeof n!=`object`?{}:d(n.colors)}function m(e){let n=e.fallback.mode,r=e.fallback.shape,i=t(e.value);if(i)return{id:e.fallback.id,mode:i,colors:{...e.fallback.colors,...p(e.legacyTokens,i)},...r?{shape:r}:{}};if(e.value==null)return{...e.fallback,colors:{...e.fallback.colors,...p(e.legacyTokens,n)}};if(typeof e.value!=`object`||Array.isArray(e.value))throw Error(`[configPresets] Invalid config: appearance.theme must be an object with id, mode, and optional colors`);let a=e.value,o=a.mode,s=o==null?n:t(o);if(!s)throw Error(`[configPresets] Invalid config: appearance.theme.mode must be 'light' or 'dark'`);let c=f({value:a.id,fallback:e.fallback.id}),l=c!==e.fallback.id,u={...l?{}:r||{},...d(a.shape)};return{id:c,mode:s,colors:{...l?{}:e.fallback.colors,...p(e.legacyTokens,s),...d(a.colors)},...Object.keys(u).length>0?{shape:u}:{}}}function h(e){if(e.value==null)return e.fallback;if(e.value!==`default`)throw Error(`[configPresets] Invalid config: appearance.palette must be 'default'`);return`default`}function g(e){let t=n(e.tempo.signingSession.remainingUses,`tempo.signingSession.remainingUses`),r=n(e.evm.signingSession.remainingUses,`evm.signingSession.remainingUses`);return{tempo:{...e.tempo,signingSession:{...e.tempo.signingSession,remainingUses:t}},evm:{...e.evm,signingSession:{...e.evm.signingSession,remainingUses:r}}}}function _(e){if(!a(e))throw Error(`[configPresets] Invalid chain network: ${String(e||``)}`);return e}function v(e){let t=_(e.input.network),n=l({value:e.input.rpcUrl,fallback:e.fallback?.rpcUrl,path:`chains.${t}.rpcUrl`}),a=l({value:e.input.explorerUrl,fallback:e.fallback?.explorerUrl,path:`chains.${t}.explorerUrl`});if(r(t))return{network:t,rpcUrl:n,explorerUrl:a};let s=c({value:e.input.chainId,fallback:e.fallback?.chainId,path:`chains.${t}.chainId`});if(typeof s!=`number`)throw Error(`[configPresets] Missing required config: chains.${t}.chainId`);if(o(t)||i(t))return{network:t,rpcUrl:n,explorerUrl:a,chainId:s};throw Error(`[configPresets] Unsupported chain network: ${t}`)}function y(e,t){if(Array.isArray(t)){let n=new Map(e.map(e=>[e.network,{...e}])),i=new Map,a=[];for(let e of t){let t=_(e.network),r=v({input:e,fallback:n.get(t)});i.set(t,r),a.includes(t)||a.push(t)}let o=a.map(e=>i.get(e)).filter(e=>!!e);if(!o.some(e=>r(e.network)))throw Error(`[configPresets] Missing required config: chains (at least one near-* network)`);return o}let n=e.map(e=>({...e}));if(!n.some(e=>r(e.network)))throw Error(`[configPresets] Missing required config: chains (at least one near-* network)`);return n}export{s as a,y as i,m as n,h as o,u as r,g as t};
@@ -1,2 +0,0 @@
1
- function e(e){let t=e.trim();if(t)return/^[A-Za-z][A-Za-z0-9_-]*$/.test(t)?t:void 0}function t(e){let t=e.trim();if(!(!t||t.length>1024)&&!/[{};\n\r]/.test(t))return t}function n(n){let r={};for(let i of[`colors`,`shape`])for(let[a,o]of Object.entries(n?.theme[i]??{})){if(typeof o!=`string`)continue;let n=e(a);if(!n)continue;let s=t(o);s&&(r[`--seams-${i}-${n}`]=`${s} !important`)}return r}function r(e,t){return`:where(#${e}){${Object.entries(n(t)).map(([e,t])=>`${e}:${t};`).join(``)}}`}function i(e,t){return`${e}{${Object.entries(t).map(([e,t])=>`${e}:${t};`).join(``)}}`}function a(){if(typeof window>`u`)return;let e=window;return e.seamsNonce||e.litNonce||void 0}function o(e){let{doc:t,baseCss:n,baseStyleDataAttr:r,dynamicStyleDataAttr:a,nonce:o}=e,s={baseSheet:null,dynamicSheet:null,declarationSheet:null,baseStyleEl:null,dynamicStyleEl:null,rules:new Map,declarationRules:new Map,supportConstructable:null},c=()=>{if(o)return typeof o==`function`?o():o},l=()=>(s.supportConstructable??=typeof CSSStyleSheet<`u`&&`adoptedStyleSheets`in t,s.supportConstructable),u=e=>{let n=t.adoptedStyleSheets||[],r=[...n];for(let t of e)n.includes(t)||r.push(t);t.adoptedStyleSheets=r},d=e=>{(t.head||t.documentElement||t.body)?.appendChild(e)},f=(e,n)=>{let r=t.createElement(`style`),i=c();if(i)try{r.setAttribute(`nonce`,i)}catch{}if(e)try{r.setAttribute(e,``)}catch{}return n!=null&&(r.textContent=n),r},p=()=>{if(s.baseSheet||s.baseStyleEl)return;if(l())try{s.baseSheet=new CSSStyleSheet,s.baseSheet.replaceSync(n),u([s.baseSheet]);return}catch{s.baseSheet=null,s.supportConstructable=!1}let e=f(r,n);d(e),s.baseStyleEl=e},m=()=>Array.from(s.rules.values()).join(`
2
- `),h=()=>{if(l()){s.dynamicSheet||(s.dynamicSheet=new CSSStyleSheet,u([s.dynamicSheet]));return}if(!s.dynamicStyleEl){let e=f(a);d(e),s.dynamicStyleEl=e}},g=()=>{let e=m();if(l())try{h(),s.dynamicSheet?.replaceSync(e);return}catch{s.supportConstructable=!1,s.dynamicSheet=null}h(),s.dynamicStyleEl&&(s.dynamicStyleEl.textContent=e)},_=(e,t)=>{let n=s.declarationRules.get(e);if(n&&n.selector===t)return n.rule;if(!l())return null;try{s.declarationSheet||(s.declarationSheet=new CSSStyleSheet,u([s.declarationSheet]));let r=s.declarationSheet;if(n){let t=Array.prototype.indexOf.call(r.cssRules,n.rule);t>=0&&r.deleteRule(t),s.declarationRules.delete(e)}let i=r.insertRule(`${t}{}`,r.cssRules.length),a=r.cssRules[i];return a instanceof CSSStyleRule?(s.declarationRules.set(e,{selector:t,rule:a,applied:{}}),a):(r.deleteRule(i),null)}catch{return s.declarationSheet=null,s.declarationRules.clear(),null}},v=e=>{let t=s.declarationRules.get(e);if(!t)return!1;s.declarationRules.delete(e);let n=s.declarationSheet;if(!n)return!0;try{let e=Array.prototype.indexOf.call(n.cssRules,t.rule);e>=0&&n.deleteRule(e)}catch{}return!0};return{ensureBase:()=>{p()},setDynamicDeclarations:(e,t,n)=>{p();let r=_(e,t);if(!r){let r=i(t,n);if(s.rules.get(e)===r)return;s.rules.set(e,r),g();return}let a=s.declarationRules.get(e),o=a?a.applied:{};for(let[e,t]of Object.entries(n))o[e]!==t&&r.style.setProperty(e,t);for(let e of Object.keys(o))e in n||r.style.removeProperty(e);a&&(a.applied={...n})},setDynamicRule:(e,t)=>{p(),s.rules.get(e)!==t&&(s.rules.set(e,t),g())},deleteDynamicRule:e=>{v(e),s.rules.delete(e)&&g()},clearDynamicRules:()=>{for(let e of Array.from(s.declarationRules.keys()))v(e);s.rules.size!==0&&(s.rules.clear(),g())},hasDynamicRule:e=>s.rules.has(e)||s.declarationRules.has(e)}}export{a as n,r,o as t};
@@ -1 +0,0 @@
1
- import{B as e}from"./domainIds-GDzjOs6i.js";import{n as t}from"./sessionPolicy-CNVK7nJ6.js";import{n}from"./ecdsaPresignLifecycle-CQnCxSlq.js";import{a as r,o as i}from"./signingSessionSeal-Mr2Xp44o.js";import{a,i as o,n as s,o as c,r as l,t as u}from"./configHelpers-CseiVoZD.js";function d(e){let t=String(e||``).trim().toLowerCase();switch(t){case``:case`runtime`:return`runtime`;case`full`:return`full`;case`near`:return`near`;case`ecdsa`:return`ecdsa`;default:throw Error(`Unsupported wallet host variant: ${t}`)}}const f={targetDepth:{min:1,max:64},maxRefillInFlight:{min:1,max:8},refillAttemptTimeoutMs:{min:5e3,max:12e4}};var p=class extends Error{constructor(){super(`[SEAMS_HOSTED_WALLET_ORIGIN_REQUIRED] Missing required config: iframeWallet.walletOrigin. Browser wallet capabilities require a hosted wallet iframe origin.`),this.code=`SEAMS_HOSTED_WALLET_ORIGIN_REQUIRED`,this.name=`HostedWalletOriginRequiredError`}};function m(e){let t=String(e.value||``).trim().toLowerCase();if(!t)return e.fallback;if(t===`none`)return`none`;if(t===`sealed_refresh_v1`)return`sealed_refresh_v1`;throw Error(`[configPresets] Invalid config: signingSessionPersistenceMode (${t}); expected "none" or "sealed_refresh_v1"`)}function h(e){let t=String(e.value||``).trim().toLowerCase();if(!t)return e.fallback;if(t===`session`)return`session`;if(t===`per_operation`)return`per_operation`;throw Error(`[configPresets] Invalid config: emailOtpAuthPolicy (${t}); expected "session" or "per_operation"`)}function g(e){if(!e||typeof e!=`object`)return{kind:`implicit_account`};let t=String(e.kind||``).trim();switch(t){case``:case`implicit_account`:return{kind:`implicit_account`};case`relayer_named_subaccount`:return{kind:`relayer_named_subaccount`};default:throw Error(`[configPresets] Invalid config: registration.nearAccountProvisioning.kind (${t})`)}}function _(t){let n=t.overrides.registration,r=t.defaults.registration,i=e(n?.projectEnvironmentId)||e(r.projectEnvironmentId),a=e(n?.publishableKey)||e(r.publishableKey);if(n!==void 0&&!a)throw Error(`[configPresets] Missing required config: registration.publishableKey`);return{mode:`managed`,projectEnvironmentId:i,publishableKey:a,paymentMode:n?.paymentMode??r.paymentMode??`disabled`,nearAccountProvisioning:g(n?.nearAccountProvisioning??r.nearAccountProvisioning)}}function v(e){return e.mode===`sealed_refresh_v1`?{mode:`sealed_refresh_v1`,protocol:{algorithm:r,groupId:i}}:{mode:`none`}}function y(t){let n=t.overrides.routerAb?.normalSigning,r=t.defaults.signing.routerAb.normalSigning,i=n?.mode??r.mode,a=n&&`signingWorkerId`in n?n.signingWorkerId:void 0;if(a!==void 0&&i!==`enabled`)throw Error(`[configPresets] Invalid config: routerAb.normalSigning.signingWorkerId requires routerAb.normalSigning.mode="enabled"`);if(i===`disabled`)return{mode:`disabled`};if(i!==`enabled`)throw Error(`[configPresets] Invalid config: routerAb.normalSigning.mode must be "disabled" or "enabled"`);let o=e(a)||(r.mode===`enabled`?e(r.signingWorkerId):``);if(!o)throw Error(`[configPresets] Missing required config: routerAb.normalSigning.signingWorkerId when routerAb.normalSigning.mode="enabled"`);return{mode:`enabled`,signingWorkerId:o}}function b(t){let n=t.defaults,r=t.overrides??{},i=t.options?.allowDirectWalletMode===`wallet_host`,g=o(n.network.chains,r.chains),b=e(r.relayer?.url??n.network.relayer.url),x=e(r.relayerAccount)||e(n.network.relayer.accountId),S=r.relayer?.delegateActionRoute??n.network.relayer.routes.delegateAction,C=m({value:r.signingSessionPersistenceMode,fallback:n.signing.sessionPersistenceMode}),w=h({value:r.emailOtpAuthPolicy,fallback:n.signing.emailOtp.authPolicy}),T=v({mode:C}),E=y({overrides:r,defaults:n}),D=u(r.provisioningDefaults??n.signing.thresholdEcdsa.provisioningDefaults),O=n.signing.routerAbEcdsaDerivation.presignaturePool??t.fallbackRouterAbEcdsaDerivationPresignaturePoolPolicy,k=a({value:r.routerAbEcdsaDerivationPresignaturePool?.targetDepth,fallback:O.targetDepth,range:f.targetDepth,path:`routerAbEcdsaDerivationPresignaturePool.targetDepth`}),A=a({value:r.routerAbEcdsaDerivationPresignaturePool?.lowWatermark,fallback:O.lowWatermark,range:{min:0,max:k},path:`routerAbEcdsaDerivationPresignaturePool.lowWatermark`}),j=r.appearance,M=s({value:j?.theme,fallback:n.ui.appearance.theme,legacyTokens:j?.tokens}),N=c({value:r.appearance?.palette,fallback:n.ui.appearance.palette}),P=r.iframeWallet?.walletOrigin,F=e(P),I=F?`iframe`:i?`direct`:`iframe`,L=r.iframeWallet?.rpIdOverride??n.wallet.iframe.rpIdOverride,R=e(r.iframeWallet?.walletServicePath)||e(n.wallet.iframe.servicePath)||`/wallet-service`,z=e(r.iframeWallet?.sdkBasePath)||e(n.wallet.iframe.sdkBasePath)||`/sdk`,B=d(r.iframeWallet?.walletHostVariant||n.wallet.iframe.walletHostVariant);if(!b)throw Error(`[configPresets] Missing required config: relayer.url`);if(I===`iframe`&&!F)throw new p;let V=_({overrides:r,defaults:n});return{network:{chains:g,relayer:{accountId:x,url:b,routes:{delegateAction:S}}},registration:V,signing:{sessionDefaults:{ttlMs:r.signingSessionDefaults?.ttlMs??n.signing.sessionDefaults.ttlMs,remainingUses:r.signingSessionDefaults?.remainingUses??n.signing.sessionDefaults.remainingUses},emailOtp:{authPolicy:w},sessionPersistenceMode:C,sessionSeal:T,routerAb:{normalSigning:E},routerAbEcdsaDerivation:{presignaturePool:{enabled:l({value:r.routerAbEcdsaDerivationPresignaturePool?.enabled,fallback:O.enabled,path:`routerAbEcdsaDerivationPresignaturePool.enabled`}),targetDepth:k,lowWatermark:A,maxRefillInFlight:a({value:r.routerAbEcdsaDerivationPresignaturePool?.maxRefillInFlight,fallback:O.maxRefillInFlight,range:f.maxRefillInFlight,path:`routerAbEcdsaDerivationPresignaturePool.maxRefillInFlight`}),refillAttemptTimeoutMs:a({value:r.routerAbEcdsaDerivationPresignaturePool?.refillAttemptTimeoutMs,fallback:O.refillAttemptTimeoutMs,range:f.refillAttemptTimeoutMs,path:`routerAbEcdsaDerivationPresignaturePool.refillAttemptTimeoutMs`})}},thresholdEcdsa:{provisioningDefaults:D}},webauthn:{authenticatorOptions:r.authenticatorOptions??n.webauthn.authenticatorOptions},wallet:I===`iframe`?{mode:`iframe`,iframe:{origin:F,servicePath:R,sdkBasePath:z,walletHostVariant:B,rpIdOverride:L}}:{mode:`direct`,iframe:{...F?{origin:F}:{},servicePath:R,sdkBasePath:z,walletHostVariant:B,rpIdOverride:L}},ui:{appearance:{theme:M,palette:N}}}}const x={enabled:!0,targetDepth:5,lowWatermark:4,maxRefillInFlight:1,refillAttemptTimeoutMs:3e4},S={network:{chains:[{network:`near-testnet`,rpcUrl:`https://rpc.testnet.fastnear.com`,explorerUrl:`https://testnet.nearblocks.io`},{network:`tempo-testnet`,rpcUrl:`https://rpc.moderato.tempo.xyz`,explorerUrl:`https://explore.tempo.xyz`,chainId:42431},{network:`arc-testnet`,rpcUrl:`https://rpc.testnet.arc.network`,explorerUrl:`https://testnet.arcscan.app`,chainId:5042002},{network:`ethereum-sepolia`,rpcUrl:`https://ethereum-sepolia-rpc.publicnode.com`,explorerUrl:`https://sepolia.etherscan.io`,chainId:11155111}],relayer:{accountId:``,url:``,routes:{delegateAction:`/signed-delegate`}}},registration:{mode:`managed`,projectEnvironmentId:``,publishableKey:``,paymentMode:`disabled`,nearAccountProvisioning:{kind:`implicit_account`}},signing:{sessionDefaults:{ttlMs:t,remainingUses:3},emailOtp:{authPolicy:`session`},sessionPersistenceMode:`none`,sessionSeal:{mode:`none`},routerAb:{normalSigning:{mode:`disabled`}},routerAbEcdsaDerivation:{presignaturePool:x},thresholdEcdsa:{provisioningDefaults:{tempo:{enabled:!0,signingSession:{kind:`jwt`,ttlMs:t,remainingUses:3}},evm:{enabled:!0,signingSession:{kind:`jwt`,ttlMs:t,remainingUses:3}}}}},wallet:{mode:`direct`,iframe:{origin:`https://wallet.example.localhost`,servicePath:`/wallet-service`,sdkBasePath:`/sdk`,walletHostVariant:`runtime`,rpIdOverride:`example.localhost`}},webauthn:{authenticatorOptions:{userVerification:n.Preferred,originPolicy:{single:void 0,all_subdomains:!0,multiple:void 0}}},ui:{appearance:{theme:{id:`default`,mode:`dark`,colors:{}},palette:`default`}}};function C(e={},t){return b({defaults:S,overrides:e,fallbackRouterAbEcdsaDerivationPresignaturePoolPolicy:x,options:t})}export{S as n,C as r,x as t};
@@ -1 +0,0 @@
1
- import{i as e}from"./bytes-t5S5mkat.js";import{f as t,h as n,m as r,p as i}from"./signingFlow-LUWrZi2d.js";function a(e){try{return JSON.stringify(e,(e,t)=>typeof t==`bigint`?t.toString():t,2)}catch{return String(e)}}function o(e,t,n){let r=String(t??``).trim();if(r)return{label:e,value:r,...typeof n==`string`&&n.trim()?{copyValue:n}:{}}}function s(t){let n=e(t.input);if(n!==`0x`&&!(!Array.isArray(t.abi)||t.abi.length===0))return{dataHex:n,abi:t.abi}}function c(a){let{rootId:c,call:l,tx:u}=a,d=String(l.to||``).trim(),f=e(String(l.input||`0x`));if(f===`0x`)return;let p=n(f),m=r(p,d)||`contract function`,h=t(u.gasLimit),g=o(`Data`,i(f),f);g&&(g.renderAs=`file-content`,g.hideLabel=!0,g.hideChevron=!0);let _=[g,o(`Value (wei)`,l.value.toString()),o(`Valid Before`,u.validBefore==null?void 0:u.validBefore.toString()),o(`Valid After`,u.validAfter==null?void 0:u.validAfter.toString())].filter(Boolean),v={id:`${c}.call`,kind:`generic.contractCall`,label:`Calling ${m} using ${h} gas`,to:d,value:l.value.toString(),selector:p,fields:_},y=s({input:f,abi:l.abi});return y&&(v.abiDecodeHint=y),v}function l(t){let{call:r,callIndex:i,callCount:a,tx:o}=t,s=`tempo.tx.${i}`,l=String(r.to||``).trim(),u=a>1?`Transaction ${i+1} to contract`:`Transaction to contract`,d=c({rootId:s,call:r,tx:o});return{id:s,kind:`tempo.eip2718`,label:u,txTypeHex:`0x76`,txTypeName:`TempoTransaction`,to:l,selector:n(e(String(r.input||`0x`))),...d?{children:[d]}:{}}}function u(e){if(e.kind!==`tempoTransaction`)return[{id:`tempo.raw`,kind:`raw.fallback`,label:`Unsupported Tempo Payload`,raw:a(e)}];let t=Array.isArray(e.tx.calls)?e.tx.calls:[];return t.length?t.map((n,r)=>l({call:n,callIndex:r,callCount:t.length,tx:e.tx})):[{id:`tempo.raw`,kind:`raw.fallback`,label:`Tempo Payload Missing Calls`,raw:a(e)}]}function d(e){let t=u(e.request),n=BigInt(0);if(e.request.kind===`tempoTransaction`)for(let t of e.request.tx.calls||[])n+=BigInt(t.value||0);return{chain:`tempo`,chainId:e.request.kind===`tempoTransaction`?e.request.tx.chainId:void 0,intentDigest:e.intentDigest,signerAccount:e.signerAccount,title:e.title||`Tempo Transaction`,subtitle:e.subtitle,operations:t,...n>0n?{totals:{nativeValue:n.toString(),nativeSymbol:`wei`}}:{}}}export{d as t};
@@ -1 +0,0 @@
1
- function e(e){return typeof e==`string`?e:``}function t(t){return e(t).trim()}function n(e){return String(e??``).trim()}function r(e){return n(e).toLowerCase()}function i(e){return n(e)||void 0}function a(e){let t=typeof e==`number`?e:Number(e);return Number.isFinite(t)?t:null}function o(e){let t=a(e);return t==null?null:Math.trunc(t)}function s(e){let t=o(e);return t==null||t<=0?null:t}function c(e,t){let n=s(t.min)??1,r=s(t.fallback)??n,i=Math.max(n,r),a=s(t.max),c=o(e);return c==null||c<n?i:a==null?c:Math.min(c,a)}function l(e){return String(e??``).replace(/\/+$/,``)}function u(e){let t=n(e);return t?t.startsWith(`/`)?t:`/${t}`:``}function d(e,t){let r=l(n(e)),i=u(n(t));if(!r)throw Error(`Missing base URL`);return`${r}${i}`}function f(e,t=`/sdk`){let n=u(typeof e==`string`?e:t)||u(t)||`/`;return n===`/`?`/`:n.replace(/\/+$/,``)}var p=class{retainProof(){return!0}constructor(e){this.retainProof(),this.kind=`mpc_material_activation_ref`,this.activationId=e.activationId,this.capability=e.capability,this.materialOwner=e.materialOwner,this.keyBinding=e.keyBinding,this.lifecycleBinding=e.lifecycleBinding,this.signingWorker=e.signingWorker}};function m(e,t){if(e==null)return{ok:!1,error:{code:`missing`,message:`${t} is required`}};if(typeof e!=`string`)return{ok:!1,error:{code:`invalid`,message:`${t} must be a string`}};let n=e.trim();return n?{ok:!0,value:n}:{ok:!1,error:{code:`missing`,message:`${t} is required`}}}function h(e){for(let t of e){let e=t.charCodeAt(0);if(e<=31||e===127)return!0}return!1}function g(e){for(let t of e)if(/\s/.test(t))return!0;return h(e)}function _(e){let t=m(e,`walletId`);return t.ok&&g(t.value)?{ok:!1,error:{code:`invalid`,message:`walletId must not contain whitespace or control characters`}}:t}function v(e){let t=m(e,`verifiedEmailAddress`);if(!t.ok)return t;let n=t.value.toLowerCase();return/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(n)?{ok:!0,value:n}:{ok:!1,error:{code:`invalid`,message:`verifiedEmailAddress must be an email address`}}}function y(e){return m(e,`emailOtpProviderUserId`)}function b(e){return m(e,`emailOtpChallengeId`)}function x(e){let t=m(e,`rpId`);return t.ok&&g(t.value)?{ok:!1,error:{code:`invalid`,message:`rpId contains whitespace or control characters`}}:t}function S(e){return m(e,`credentialIdB64u`)}function C(e){return m(e,`passkeyEnvelopeId`)}function w(e){return m(e,`walletAuthMethodId`)}function T(e){return m(e,`walletAuthorityId`)}function E(e){return m(e,`walletAuthorityBindingDigest`)}function D(e){return m(e,`capabilityInstanceRef`)}function O(e){return m(e,`mpcMaterialOwnerRef`)}function k(e){return m(e,`mpcCapabilityRuntimeRef`)}function A(e){return m(e,`mpcMaterialActivationId`)}function j(e){return m(e,`mpcSigningWorkerRef`)}function M(e){return m(e,`mpcKeyBindingRef`)}function N(e){return m(e,`mpcLifecycleBindingRef`)}function P(e){return new p(e)}function F(e,t){return e.activationId===t.activationId&&e.capability===t.capability&&e.materialOwner===t.materialOwner&&e.keyBinding===t.keyBinding&&e.lifecycleBinding===t.lifecycleBinding&&e.signingWorker===t.signingWorker}function I(e){switch(e){case`kind`:case`activationId`:case`capability`:case`materialOwner`:case`keyBinding`:case`lifecycleBinding`:case`signingWorker`:return!0;default:return!1}}function L(e){if(e==null)return{ok:!1,error:{code:`missing`,message:`mpcMaterialActivationRef is required`}};if(typeof e!=`object`||Array.isArray(e))return{ok:!1,error:{code:`invalid`,message:`mpcMaterialActivationRef must be an object`}};let t=e,n=Object.keys(t);if(n.length!==7)return{ok:!1,error:{code:`invalid`,message:`mpcMaterialActivationRef has invalid fields`}};for(let e of n)if(!I(e))return{ok:!1,error:{code:`invalid`,message:`mpcMaterialActivationRef has invalid fields`}};if(t.kind!==`mpc_material_activation_ref`)return{ok:!1,error:{code:`invalid`,message:`mpcMaterialActivationRef.kind is invalid`}};let r=A(t.activationId);if(!r.ok)return r;let i=D(t.capability);if(!i.ok)return i;let a=O(t.materialOwner);if(!a.ok)return a;let o=M(t.keyBinding);if(!o.ok)return o;let s=N(t.lifecycleBinding);if(!s.ok)return s;let c=j(t.signingWorker);return c.ok?{ok:!0,value:P({activationId:r.value,capability:i.value,materialOwner:a.value,keyBinding:o.value,lifecycleBinding:s.value,signingWorker:c.value})}:c}function R(e){return m(e,`thresholdEd25519SessionId`)}function z(e){return m(e,`thresholdEcdsaSessionId`)}function B(e){return m(e,`ecdsaActiveStateId`)}function V(e){return m(e,`thresholdSessionId`)}function H(e){return m(e,`rootShareEpoch`)}function U(e){return m(e,`walletKeyId`)}function W(e){return m(e,`signingLaneId`)}function G(e){return m(e,`laneShareEpoch`)}function K(e){return m(e,`linkedDeviceId`)}function q(e){return m(e,`linkedDeviceEnrollmentId`)}function J(e){return m(e,`walletRecoveryOperationId`)}function Y(e){return m(e,`linkDeviceSessionId`)}export{J as A,n as B,V as C,T as D,E,a as F,f as H,o as I,r as L,x as M,d as N,_ as O,c as P,i as R,R as S,w as T,l as V,j as _,B as a,W as b,G as c,K as d,k as f,O as g,L as h,D as i,S as j,U as k,Y as l,A as m,g as n,b as o,N as p,F as r,y as s,P as t,q as u,C as v,v as w,z as x,H as y,t as z};
@@ -1 +0,0 @@
1
- import{r as e}from"./domainIds-GDzjOs6i.js";import{i as t,r as n}from"./base64-ojm5DKcF.js";import{h as r,m as i}from"./sessionPolicy-CNVK7nJ6.js";import{Dt as a,E as o,Et as ee,G as s,H as c,L as te,R as ne,Tt as re,ft as ie,ot as ae,v as l}from"./ecdsaPresignLifecycle-CQnCxSlq.js";import{t as u}from"./canonicalPrimitives-MPGET2cl.js";import{a as d,c as f,o as p,s as oe}from"./ecdsaChainTarget-CRcRR78w.js";import{x as m}from"./evmFamilyEcdsaIdentity-Br3iFdQx.js";import{a as se,i as ce,o as h,r as le}from"./challengeDelivery-cAsaUC6U.js";function g(e){throw Error(`Unhandled ECDSA role-local branch: ${String(e)}`)}function _(e,t){if(typeof e!=`string`||!e.trim())throw Error(`[platform][ecdsa-role-local] ${t} is required`);return e.trim()}function v(e,t,r){let i=_(e,t);if(n(i).length!==r)throw Error(`[platform][ecdsa-role-local] ${t} must decode to ${r} bytes`);return i}function y(e,t){let r=_(e,t),i=n(r);if(i.length!==33)throw Error(`[platform][ecdsa-role-local] ${t} must decode to 33 bytes`);if(i[0]!==2&&i[0]!==3)throw Error(`[platform][ecdsa-role-local] ${t} must be a compressed SEC1 key`);return r}function b(e){return y(e,`derivationClientSharePublicKey33B64u`)}function x(e){return y(e,`relayerPublicKey33B64u`)}function S(e){return y(e,`groupPublicKey33B64u`)}function C(e){let t=_(e,`ethereumAddress`).toLowerCase();if(!/^0x[0-9a-f]{40}$/.test(t))throw Error(`[platform][ecdsa-role-local] ethereumAddress must be an EVM address`);return t}function w(e){if(!Array.isArray(e)||e.length!==2||e[0]!==1||e[1]!==2)throw Error(`[platform][ecdsa-role-local] participantIds must be [1, 2]`);return[1,2]}function T(e){if(typeof e!=`object`||!e||Array.isArray(e))throw Error(`[platform][ecdsa-role-local] stateBlob must be an object`);if(Object.keys(e).sort().join(`,`)!==`curve,encoding,kind,producer,stateBlobB64u`)throw Error(`[platform][ecdsa-role-local] stateBlob envelope is invalid`);let t=_(Reflect.get(e,`kind`),`stateBlob.kind`),r=_(Reflect.get(e,`curve`),`stateBlob.curve`),i=_(Reflect.get(e,`encoding`),`stateBlob.encoding`),a=_(Reflect.get(e,`producer`),`stateBlob.producer`),o=_(Reflect.get(e,`stateBlobB64u`),`stateBlob.stateBlobB64u`);if(t!==`ecdsa_role_local_state_blob_v1`||r!==`secp256k1`||i!==`base64url`||a!==`signer_core`)throw Error(`[platform][ecdsa-role-local] stateBlob envelope is invalid`);try{n(o)}catch(e){throw Error(`[platform][ecdsa-role-local] stateBlob payload is not base64url`,{cause:e})}return{kind:`ecdsa_role_local_state_blob_v1`,curve:`secp256k1`,encoding:`base64url`,producer:`signer_core`,stateBlobB64u:o}}function E(e,t=`credentialIdB64u`){return _(e,t)}function D(e){if(typeof e!=`object`||!e||Array.isArray(e))throw Error(`[platform][ecdsa-role-local] authMethod must be an object`);switch(_(Reflect.get(e,`kind`),`authMethod.kind`)){case`passkey`:if(Object.keys(e).sort().join(`,`)!==`credentialIdB64u,kind,rpId`)throw Error(`[platform][ecdsa-role-local] passkey authMethod fields are invalid`);return{kind:`passkey`,credentialIdB64u:E(Reflect.get(e,`credentialIdB64u`)),rpId:m(Reflect.get(e,`rpId`))};case`email_otp`:if(Object.keys(e).sort().join(`,`)!==`authSubjectId,kind`)throw Error(`[platform][ecdsa-role-local] email OTP authMethod fields are invalid`);return{kind:`email_otp`,authSubjectId:h(Reflect.get(e,`authSubjectId`))};default:throw Error(`[platform][ecdsa-role-local] authMethod kind is invalid`)}}function O(e){return{kind:`passkey`,credentialIdB64u:E(e.credentialIdB64u),rpId:m(e.rpId)}}function k(e){return{kind:`email_otp`,authSubjectId:h(e.authSubjectId)}}function A(e,t){if(e.kind!==t.kind)return!1;switch(e.kind){case`passkey`:return t.kind===`passkey`?String(e.rpId)===String(t.rpId)&&String(e.credentialIdB64u)===String(t.credentialIdB64u):!1;case`email_otp`:return t.kind===`email_otp`?String(e.authSubjectId)===String(t.authSubjectId):!1;default:return g(e)}}function j(e){switch(e.authMethod.kind){case`passkey`:return{kind:`ecdsa_role_local_ready_passkey_v1`,stateBlob:e.stateBlob,publicFacts:e.publicFacts,authMethod:e.authMethod};case`email_otp`:return{kind:`ecdsa_role_local_ready_email_otp_v1`,stateBlob:e.stateBlob,publicFacts:e.publicFacts,authMethod:e.authMethod};default:return g(e.authMethod)}}function M(e){if(typeof e!=`object`||!e||Array.isArray(e))throw Error(`[platform][ecdsa-role-local] chainTarget must be an object`);switch(_(Reflect.get(e,`kind`),`chainTarget.kind`).toLowerCase()){case`evm`:if(Object.keys(e).sort().join(`,`)!==`chainId,kind,namespace,networkSlug`)throw Error(`[platform][ecdsa-role-local] EVM chainTarget fields are invalid`);return d({kind:Reflect.get(e,`kind`),namespace:Reflect.get(e,`namespace`),chainId:Reflect.get(e,`chainId`),networkSlug:Reflect.get(e,`networkSlug`)});case`tempo`:if(Object.keys(e).sort().join(`,`)!==`chainId,kind,networkSlug`)throw Error(`[platform][ecdsa-role-local] Tempo chainTarget fields are invalid`);return d({kind:Reflect.get(e,`kind`),chainId:Reflect.get(e,`chainId`),networkSlug:Reflect.get(e,`networkSlug`)});default:throw Error(`[platform][ecdsa-role-local] chainTarget kind is invalid`)}}function N(e){if(typeof e!=`object`||!e||Array.isArray(e))throw Error(`[platform][ecdsa-role-local] publicFacts must be an object`);if(Object.keys(e).sort().join(`,`)!==`applicationBindingDigestB64u,chainTarget,clientParticipantId,contextBinding32B64u,derivationClientSharePublicKey33B64u,ecdsaThresholdKeyId,ethereumAddress,groupPublicKey33B64u,keyHandle,participantIds,publicCapability,relayerParticipantId,relayerPublicKey33B64u,signingRootId,signingRootVersion,walletId`)throw Error(`[platform][ecdsa-role-local] publicFacts fields are invalid`);if(Reflect.get(e,`clientParticipantId`)!==1)throw Error(`[platform][ecdsa-role-local] clientParticipantId must be 1`);if(Reflect.get(e,`relayerParticipantId`)!==2)throw Error(`[platform][ecdsa-role-local] relayerParticipantId must be 2`);let t=b(Reflect.get(e,`derivationClientSharePublicKey33B64u`)),n=x(Reflect.get(e,`relayerPublicKey33B64u`));if(String(t)===String(n))throw Error(`[platform][ecdsa-role-local] relayerPublicKey33B64u must differ from derivationClientSharePublicKey33B64u`);return{walletId:f(Reflect.get(e,`walletId`)),chainTarget:M(Reflect.get(e,`chainTarget`)),keyHandle:_(Reflect.get(e,`keyHandle`),`keyHandle`),ecdsaThresholdKeyId:se(Reflect.get(e,`ecdsaThresholdKeyId`)),signingRootId:le(Reflect.get(e,`signingRootId`)),signingRootVersion:ce(Reflect.get(e,`signingRootVersion`)),applicationBindingDigestB64u:v(Reflect.get(e,`applicationBindingDigestB64u`),`applicationBindingDigestB64u`,32),clientParticipantId:1,relayerParticipantId:2,participantIds:w(Reflect.get(e,`participantIds`)),contextBinding32B64u:v(Reflect.get(e,`contextBinding32B64u`),`contextBinding32B64u`,32),derivationClientSharePublicKey33B64u:t,relayerPublicKey33B64u:n,groupPublicKey33B64u:S(Reflect.get(e,`groupPublicKey33B64u`)),ethereumAddress:C(Reflect.get(e,`ethereumAddress`)),publicCapability:l(Reflect.get(e,`publicCapability`))}}function P(e){return N(e)}function F(e){let t=e.publicFacts;return P({walletId:t.walletId,chainTarget:e.chainTarget,keyHandle:t.keyHandle,ecdsaThresholdKeyId:t.ecdsaThresholdKeyId,signingRootId:t.signingRootId,signingRootVersion:t.signingRootVersion,applicationBindingDigestB64u:t.applicationBindingDigestB64u,clientParticipantId:t.clientParticipantId,relayerParticipantId:t.relayerParticipantId,participantIds:t.participantIds,contextBinding32B64u:t.contextBinding32B64u,derivationClientSharePublicKey33B64u:t.derivationClientSharePublicKey33B64u,relayerPublicKey33B64u:t.relayerPublicKey33B64u,groupPublicKey33B64u:t.groupPublicKey33B64u,ethereumAddress:t.ethereumAddress,publicCapability:t.publicCapability})}function I(e){if(typeof e!=`object`||!e||Array.isArray(e))throw Error(`[platform][ecdsa-role-local] ready record must be an object`);if(Object.keys(e).sort().join(`,`)!==`authMethod,kind,publicFacts,stateBlob`)throw Error(`[platform][ecdsa-role-local] ready record fields are invalid`);let t=_(Reflect.get(e,`kind`),`readyRecord.kind`);if(t!==`ecdsa_role_local_ready_passkey_v1`&&t!==`ecdsa_role_local_ready_email_otp_v1`)throw Error(`[platform][ecdsa-role-local] ready record kind is invalid`);let n=N(Reflect.get(e,`publicFacts`)),r=j({stateBlob:T(Reflect.get(e,`stateBlob`)),publicFacts:n,authMethod:D(Reflect.get(e,`authMethod`))});if(t===`ecdsa_role_local_ready_passkey_v1`&&r.kind!==t||t===`ecdsa_role_local_ready_email_otp_v1`&&r.kind!==t)throw Error(`[platform][ecdsa-role-local] ready record authMethod branch mismatch`);return r}function L(e){switch(e.kind){case`passkey`:return{kind:`passkey`,credentialIdB64u:e.credentialIdB64u,rpId:e.rpId};case`email_otp`:return{kind:`email_otp`,authSubjectId:e.authSubjectId};default:return g(e)}}function R(e){return{walletId:e.walletId,chainTarget:e.chainTarget,keyHandle:e.keyHandle,ecdsaThresholdKeyId:e.ecdsaThresholdKeyId,signingRootId:e.signingRootId,signingRootVersion:e.signingRootVersion,applicationBindingDigestB64u:e.applicationBindingDigestB64u,clientParticipantId:1,relayerParticipantId:2,participantIds:[1,2],contextBinding32B64u:e.contextBinding32B64u,derivationClientSharePublicKey33B64u:e.derivationClientSharePublicKey33B64u,relayerPublicKey33B64u:e.relayerPublicKey33B64u,groupPublicKey33B64u:e.groupPublicKey33B64u,ethereumAddress:e.ethereumAddress,publicCapability:e.publicCapability}}function z(e){let t=I(e);return{kind:t.kind,stateBlob:{kind:t.stateBlob.kind,curve:t.stateBlob.curve,encoding:t.stateBlob.encoding,producer:t.stateBlob.producer,stateBlobB64u:t.stateBlob.stateBlobB64u},publicFacts:R(t.publicFacts),authMethod:L(t.authMethod)}}function B(e){return encodeURIComponent(_(e,`storage key part`))}function V(e){return[`ecdsa_role_local_ready_v1`,B(e.walletId),B(p(e.chainTarget)),B(e.keyHandle),B(e.ecdsaThresholdKeyId),B(e.signingRootId),B(e.signingRootVersion),B(e.participantIds.join(`,`)),B(U(e.authMethod))].join(`:`)}function H(e){let t=I(e),n=t.publicFacts;return{walletId:n.walletId,chainTarget:n.chainTarget,keyHandle:n.keyHandle,ecdsaThresholdKeyId:n.ecdsaThresholdKeyId,signingRootId:n.signingRootId,signingRootVersion:n.signingRootVersion,participantIds:n.participantIds,authMethod:t.authMethod}}function U(e){switch(e.kind){case`passkey`:return[`passkey`,e.rpId,e.credentialIdB64u].join(`:`);case`email_otp`:return[`email_otp`,e.authSubjectId].join(`:`);default:return g(e)}}function W(e){let t=e.record.publicFacts,n=e.input;return String(t.walletId)===String(n.walletId)&&oe(t.chainTarget,n.chainTarget)&&String(t.keyHandle)===String(n.keyHandle)&&String(t.ecdsaThresholdKeyId)===String(n.ecdsaThresholdKeyId)&&String(t.signingRootId)===String(n.signingRootId)&&String(t.signingRootVersion)===String(n.signingRootVersion)&&t.participantIds[0]===n.participantIds[0]&&t.participantIds[1]===n.participantIds[1]&&A(e.record.authMethod,n.authMethod)}var G=class{retainProof(){return!0}constructor(){this.retainProof()}},ue=class extends G{constructor(e){super(),this.kind=`evm_family`,this.targetMemberships=e}},de=class extends G{constructor(e){super(),this.manifestId=e.manifestId,this.manifestRevision=e.manifestRevision}},fe=class extends G{constructor(...e){super(...e),this.kind=`no_current_manifest`}},pe=class extends G{constructor(e){super(),this.kind=`exact_manifest`,this.manifestId=e.manifestId,this.manifestRevision=e.manifestRevision}},me=class extends G{constructor(...e){super(...e),this.kind=`no_current_generation`}},he=class extends G{constructor(e){super(),this.kind=`exact_generation`,this.serverGeneration=e}},ge=class extends G{constructor(e){super(),this.kind=`ecdsa_role_local_material_binding`,this.keyHandle=e.keyHandle,this.ecdsaThresholdKeyId=e.ecdsaThresholdKeyId,this.clientVerifyingPublicKey33B64u=e.clientVerifyingPublicKey33B64u,this.participantIds=e.participantIds,this.relayerKeyId=e.relayerKeyId}},_e=class extends G{constructor(e){super(),this.kind=`prepared_evm_family_signer`,this.capability=e.capability,this.signerId=e.signerId,this.walletId=e.authority.walletId,this.authority=e.authority,this.scope=e.scope,this.materialOwner=e.materialOwner,this.signingRootId=e.signingRootId,this.signingRootVersion=e.signingRootVersion}},ve=class extends G{constructor(e){super(),this.kind=`registered_evm_family_signer`,this.capability=e.preparedSigner.capability,this.signerId=e.preparedSigner.signerId,this.walletId=e.preparedSigner.walletId,this.authority=e.preparedSigner.authority,this.scope=e.preparedSigner.scope,this.materialOwner=e.preparedSigner.materialOwner,this.signingRootId=e.preparedSigner.signingRootId,this.signingRootVersion=e.preparedSigner.signingRootVersion,this.registeredPublicFacts=e.registeredPublicFacts}},ye=class extends G{constructor(e){super(),this.kind=`encrypted_ecdsa_pending_candidate`,this.sealingKeyId=e.sealingKeyId,this.iv12B64u=e.iv12B64u,this.ciphertextB64u=e.ciphertextB64u,this.ciphertextDigest=e.ciphertextDigest}},be=class extends G{constructor(e){super(),this.kind=`ecdsa_activation_binding`,this.targetManifest=e.targetManifest,this.signer=e.signer,this.roleLocalBinding=e.roleLocalBinding,this.bindingDigest=e.bindingDigest,this.durableMaterialRef=e.durableMaterialRef}},xe=class extends G{constructor(e){super(),this.kind=`prepared_ecdsa_activation_candidate`,this.activationBinding=e.activationBinding,this.encryptedPending=e.encryptedPending}},Se=class extends G{constructor(e){super(),this.kind=`ecdsa_server_activation_command`,this.correlationId=e.correlationId,this.expectedGeneration=e.expectedGeneration,this.requestDigest=e.requestDigest,this.canonicalRequest=e.canonicalRequest}},Ce=class extends G{constructor(e){super(),this.kind=`ecdsa_server_activation_receipt`,this.lifecycleId=e.lifecycleId,this.activationDigest=e.activationDigest,this.activatedAt=e.activatedAt,this.protocolReceipt=e.protocolReceipt}},we=class extends G{constructor(e){super(),this.kind=`ecdsa_server_activation_commit`,this.correlationId=e.correlationId,this.activationRequestDigest=e.activationRequestDigest,this.serverGeneration=e.serverGeneration,this.serverActivationReceipt=e.serverActivationReceipt}},Te=class extends G{constructor(e){super(),this.kind=`activation_prepared`,this.journalId=e.journalId,this.expectedManifest=e.expectedManifest,this.activationCommand=e.activationCommand,this.candidate=e.candidate,this.createdAt=e.createdAt}},Ee=class extends G{constructor(e){super(),this.kind=`server_activation_committed`,this.journalId=e.journalId,this.expectedManifest=e.expectedManifest,this.activationCommand=e.activationCommand,this.candidate=e.candidate,this.createdAt=e.createdAt,this.serverActivation=e.serverActivation}},De=class extends G{constructor(e){super(),this.kind=`durable_ecdsa_material`,this.materialActivation=e.materialActivation,this.routerAbEcdsaDerivationNormalSigning=e.routerAbEcdsaDerivationNormalSigning,this.roleLocalPublicFacts=e.roleLocalPublicFacts,this.roleLocalBinding=e.roleLocalBinding,this.durableMaterialRef=e.durableMaterialRef,this.bindingDigest=e.bindingDigest,this.lifecycleId=e.lifecycleId,this.ciphertextDigest=e.ciphertextDigest,this.activationDigest=e.activationDigest,this.activatedAt=e.activatedAt,this.runtimePolicyScope=e.runtimePolicyScope}},Oe=class extends G{constructor(e){super(),this.kind=`encrypted_ecdsa_ready_material`,this.binding=e.binding,this.sealingKeyId=e.sealingKeyId,this.iv12B64u=e.iv12B64u,this.ciphertextB64u=e.ciphertextB64u}},ke=class extends G{constructor(e){super(),this.kind=`active_ecdsa_capability_manifest`,this.identity=e.identity,this.signer=e.signer,this.activation=e.activation,this.durableMaterial=e.durableMaterial,this.committedAt=e.committedAt}},Ae=class extends G{constructor(e){super(),this.kind=`replaced_ecdsa_capability_manifest`,this.identity=e.identity,this.signer=e.signer,this.retirement=e.retirement}};function je(e){if(!e.ok)throw Error(e.error.message);return e.value}function Me(e){return Ye(e.targetMemberships),new ue([...e.targetMemberships])}function Ne(e){return new de(e)}function Pe(){return new fe}function Fe(e){return new pe(e)}function Ie(){return new me}function Le(e){return new he(e)}function Re(e){return Xe(e.participantIds),new ge({keyHandle:e.keyHandle,ecdsaThresholdKeyId:e.ecdsaThresholdKeyId,clientVerifyingPublicKey33B64u:e.clientVerifyingPublicKey33B64u,participantIds:[...e.participantIds],relayerKeyId:e.relayerKeyId})}function ze(e){return new _e(e)}function Be(e){return new ye(e)}function Ve(e){return new be(e)}function He(e){return new xe(e)}function Ue(e){Ze(e.expectedManifest,e.candidate.activationBinding.targetManifest),Qe(e.expectedManifest,e.expectedGeneration);let t=new Se({correlationId:e.journalId,expectedGeneration:e.expectedGeneration,requestDigest:e.requestDigest,canonicalRequest:e.canonicalRequest});return new Te({journalId:e.journalId,expectedManifest:e.expectedManifest,activationCommand:t,candidate:e.candidate,createdAt:e.createdAt})}function K(e){let t=o(e.serverCommit.protocolReceipt);et(t,e.serverCommit),J(t,e.activationBinding);let n=new Ce({lifecycleId:tt(t),activationDigest:Y(t),activatedAt:u(t.ecdsa_activation.activated_at_ms),protocolReceipt:t});return new we({correlationId:e.serverCommit.correlationId,activationRequestDigest:e.serverCommit.activationRequestDigest,serverGeneration:e.serverCommit.serverGeneration,serverActivationReceipt:n})}function We(e){$e(e.serverCommit,e.preparedJournal);let t=K({activationBinding:e.preparedJournal.candidate.activationBinding,serverCommit:e.serverCommit});return new Ee({journalId:e.preparedJournal.journalId,expectedManifest:e.preparedJournal.expectedManifest,activationCommand:e.preparedJournal.activationCommand,candidate:e.preparedJournal.candidate,createdAt:e.preparedJournal.createdAt,serverActivation:t})}function Ge(e){rt(e.serverActivation,e.activationBinding);let t=e.roleLocalPublicFacts,n=e.activationBinding,a=r(e.runtimePolicyScope);if(t.walletId!==n.signer.walletId||t.keyHandle!==n.roleLocalBinding.keyHandle||t.ecdsaThresholdKeyId!==n.roleLocalBinding.ecdsaThresholdKeyId||t.signingRootId!==n.signer.signingRootId||t.signingRootVersion!==n.signer.signingRootVersion||i(a)!==n.signer.signingRootId||a.signingRootVersion!==n.signer.signingRootVersion||t.contextBinding32B64u!==n.bindingDigest||!Z(t.participantIds,n.roleLocalBinding.participantIds)||!n.signer.scope.targetMemberships.some(e=>q(e)===q(t.chainTarget)))throw Error(`ECDSA role-local public facts do not match their activation`);let o=e.serverActivation.serverActivationReceipt;return Q({normalSigning:e.routerAbEcdsaDerivationNormalSigning,activationBinding:n,roleLocalPublicFacts:t,receipt:o.protocolReceipt}),new De({materialActivation:X(o.protocolReceipt),routerAbEcdsaDerivationNormalSigning:e.routerAbEcdsaDerivationNormalSigning,roleLocalPublicFacts:e.roleLocalPublicFacts,roleLocalBinding:e.activationBinding.roleLocalBinding,durableMaterialRef:e.activationBinding.durableMaterialRef,bindingDigest:e.activationBinding.bindingDigest,lifecycleId:o.lifecycleId,ciphertextDigest:e.ciphertextDigest,activationDigest:o.activationDigest,activatedAt:o.activatedAt,runtimePolicyScope:a})}function Ke(e){return new Oe({binding:e.binding,sealingKeyId:e.sealingKeyId,iv12B64u:e.iv12B64u,ciphertextB64u:e.ciphertextB64u})}function qe(e){nt(e.registeredPublicFacts,e.activationBinding.roleLocalBinding,e.serverActivation),it(e.durableMaterial,e.activationBinding,e.serverActivation);let t=new ve({preparedSigner:e.activationBinding.signer,registeredPublicFacts:e.registeredPublicFacts}),n={kind:`active_ecdsa_material_activation`,materialActivation:e.durableMaterial.materialActivation,serverActivation:e.serverActivation,retention:`retained`};return new ke({identity:e.activationBinding.targetManifest,signer:t,activation:n,durableMaterial:e.durableMaterial,committedAt:e.committedAt})}function Je(e){return ot(e.activeManifest,e.replacementManifest),new Ae({identity:e.activeManifest.identity,signer:e.activeManifest.signer,retirement:{kind:`replaced`,replacementManifest:e.replacementManifest.identity,replacementActivation:e.replacementManifest.activation.serverActivation}})}function Ye(e){let t=e.map(q);if(new Set(t).size!==t.length)throw Error(`ECDSA capability target memberships must be unique`)}function q(e){switch(e.kind){case`evm`:return`evm:${e.namespace}:${e.chainId}:${e.networkSlug}`;case`tempo`:return`tempo:${e.chainId}:${e.networkSlug}`;default:return $(e)}}function Xe(e){let t=e.map(Number);if(t.some(e=>!Number.isSafeInteger(e)||e<1)||new Set(t).size!==t.length)throw Error(`ECDSA participant ids must be unique positive integers`)}function Ze(e,t){switch(e.kind){case`no_current_manifest`:if(Number(t.manifestRevision)!==1)throw Error(`Initial ECDSA manifest revision must be 1`);return;case`exact_manifest`:if(t.manifestId===e.manifestId||Number(t.manifestRevision)!==Number(e.manifestRevision)+1)throw Error(`Replacement ECDSA manifest must use a fresh id and next revision`);return;default:return $(e)}}function Qe(e,t){switch(e.kind){case`no_current_manifest`:if(t.kind!==`no_current_generation`)throw Error(`Initial ECDSA activation cannot expect a server generation`);return;case`exact_manifest`:if(t.kind!==`exact_generation`)throw Error(`Replacement ECDSA activation requires an exact server generation`);return;default:return $(e)}}function $e(e,t){let n=JSON.parse(t.activationCommand.canonicalRequest).operation===`wallet_registration_activate_v2`;if(e.correlationId!==t.activationCommand.correlationId||!n&&e.activationRequestDigest!==t.activationCommand.requestDigest)throw Error(`ECDSA server activation commit does not match the prepared command`)}function J(e,t){let n=e.ecdsa_activation.public_identity,r=e.ecdsa_activation.material_activation;if(X(e),n.context_binding_b64u!==String(t.bindingDigest)||n.derivation_client_share_public_key33_b64u!==String(t.roleLocalBinding.clientVerifyingPublicKey33B64u)||r.material_owner!==String(t.signer.materialOwner)||r.key_binding!==String(t.bindingDigest)||r.lifecycle_binding!==e.lifecycle_id||r.signing_worker!==e.ecdsa_activation.signing_worker.server_id)throw Error(`ECDSA activation receipt does not match the prepared material binding`)}function et(e,n){let r=t(Uint8Array.from(e.activation_request_digest.bytes));if(e.activation_correlation_id!==n.correlationId||r!==n.activationRequestDigest||e.server_generation!==n.serverGeneration)throw Error(`ECDSA activation receipt does not match the server activation commit`)}function tt(e){return ie(e.lifecycle_id)}function Y(e){return ae(e.ecdsa_activation.activation_digest_b64u)}function X(e){return re(e.ecdsa_activation.material_activation)}function nt(e,t,n){let r=n.serverActivationReceipt.protocolReceipt.ecdsa_activation.public_identity;if(String(e.keyHandle)!==String(t.keyHandle)||String(e.publicKeyB64u)!==r.threshold_public_key33_b64u||String(t.clientVerifyingPublicKey33B64u)!==r.derivation_client_share_public_key33_b64u||!Z(e.participantIds,t.participantIds))throw Error(`Registered ECDSA public facts do not match role-local material`)}function Z(e,t){return e.length===t.length?e.every((e,n)=>Number(e)===Number(t[n])):!1}function rt(e,t){J(e.serverActivationReceipt.protocolReceipt,t)}function it(t,n,r){let i=r.serverActivationReceipt,a=X(i.protocolReceipt);if(!e(t.materialActivation,a)||t.roleLocalBinding!==n.roleLocalBinding||t.durableMaterialRef!==n.durableMaterialRef||t.bindingDigest!==n.bindingDigest||t.lifecycleId!==i.lifecycleId||t.activationDigest!==i.activationDigest||t.activatedAt!==i.activatedAt)throw Error(`Durable ECDSA material does not match its activation`);Q({normalSigning:t.routerAbEcdsaDerivationNormalSigning,activationBinding:n,roleLocalPublicFacts:t.roleLocalPublicFacts,receipt:i.protocolReceipt})}function at(e,t){return e.kind===t.kind&&e.context.application_binding_digest_b64u===t.context.application_binding_digest_b64u&&c(e.public_identity,t.public_identity)&&a(e.material_activation,t.material_activation)&&ne(e.signer_set,t.signer_set)&&te(e.deriver_recipient_keys,t.deriver_recipient_keys)&&e.router_id===t.router_id&&e.client_id===t.client_id&&e.activation_epoch===t.activation_epoch&&e.registration_request_digest_b64u===t.registration_request_digest_b64u&&e.proof_transcript_digest_b64u===t.proof_transcript_digest_b64u}function Q(e){let t=e.normalSigning.scope,n=e.roleLocalPublicFacts,r=X(e.receipt),i=ee({kind:r.kind,activationId:r.activationId,capability:r.capability,materialOwner:r.materialOwner,keyBinding:r.keyBinding,lifecycleBinding:r.lifecycleBinding,signingWorker:r.signingWorker});if(t.wallet_id!==String(e.activationBinding.signer.walletId)||t.ecdsa_threshold_key_id!==String(e.activationBinding.roleLocalBinding.ecdsaThresholdKeyId)||t.signing_root_id!==String(e.activationBinding.signer.signingRootId)||t.signing_root_version!==String(e.activationBinding.signer.signingRootVersion)||t.context.application_binding_digest_b64u!==e.receipt.ecdsa_activation.context.application_binding_digest_b64u||!c(t.public_identity,e.receipt.ecdsa_activation.public_identity)||!s(t.signing_worker,e.receipt.ecdsa_activation.signing_worker)||t.activation_epoch!==e.receipt.ecdsa_activation.activation_epoch||t.public_identity.context_binding_b64u!==n.contextBinding32B64u||t.public_identity.derivation_client_share_public_key33_b64u!==n.derivationClientSharePublicKey33B64u||t.public_identity.server_public_key33_b64u!==n.relayerPublicKey33B64u||t.public_identity.threshold_public_key33_b64u!==n.groupPublicKey33B64u||!a(t.material_activation,i))throw Error(`ECDSA normal-signing runtime does not match its activation`)}function ot(e,t){if(e.identity.manifestId===t.identity.manifestId||Number(t.identity.manifestRevision)!==Number(e.identity.manifestRevision)+1||e.signer.capability!==t.signer.capability||e.signer.signerId!==t.signer.signerId||e.signer.walletId!==t.signer.walletId||e.signer.authority.authorityDigest!==t.signer.authority.authorityDigest||e.signer.materialOwner!==t.signer.materialOwner||e.durableMaterial.durableMaterialRef===t.durableMaterial.durableMaterialRef||e.activation.serverActivation.serverGeneration===t.activation.serverActivation.serverGeneration)throw Error(`ECDSA replacement manifest does not exactly replace the active manifest`)}function $(e){throw Error(`Unexpected ECDSA capability branch: ${String(e)}`)}export{P as C,I as D,H as E,F as O,O as S,V as T,We as _,Ne as a,je as b,Be as c,Pe as d,Ie as f,Je as g,ze as h,Me as i,z as k,Fe as l,Ue as m,Ge as n,Re as o,He as p,Ve as r,K as s,qe as t,Le as u,Ke as v,W as w,k as x,at as y};
@@ -1 +0,0 @@
1
- import{D as e,E as t,M as n,O as r,T as i,a,d as o,h as s,j as c,k as l,l as u,r as ee,s as te,u as ne,w as re,x as ie,y as ae}from"./domainIds-GDzjOs6i.js";import{_ as d,i as oe}from"./validation-dC1-_uyG.js";import{i as f,r as p}from"./base64-ojm5DKcF.js";import{D as se,F as ce,I as le,M as ue,h as de,v as fe}from"./sessionPolicy-CNVK7nJ6.js";import{d as pe,g as me,h as he,l as ge,m as _e,n as ve,u as ye}from"./capabilityKinds-XaXXiD2B.js";import{f as m,m as be}from"./chains-yAls2d9X.js";import{n as xe,r as Se}from"./canonicalPrimitives-MPGET2cl.js";function h(...e){return Object.assign((t,n)=>{if(!e.includes(t))throw Error(`${n} is invalid`);return t},{literals:e})}function Ce(e,t){let n=Object.keys(e),r=[...n.filter(t=>`literals`in e[t]),...n.filter(t=>!(`literals`in e[t]))];return Object.assign((i,a)=>{let o=ce(i,n,a),s=new Map;for(let t of r)s.set(t,e[t](o[t],`${a}.${t}`));let c=Object.fromEntries(n.map(e=>[e,s.get(e)]));return t?.(c,a),c},{shape:e})}function we(e,t){let n=new Map;for(let r of t)for(let t of r.shape[e].literals)n.set(t,r);return(t,r)=>{let i=d(t,r),a=n.get(i[e]);if(!a)throw Error(`${r}.${e} is invalid`);return a(i,r)}}function Te(e){return(t,n)=>t===null?null:e(t,n)}function g(e){return(t,n)=>{let r=e(t);if(r.ok)return r.value;throw Error(`${n} ${r.error.message}`)}}function Ee(e){return(t,n)=>{try{return e(t)}catch(e){throw Error(`${n} ${e instanceof Error?e.message:`is invalid`}`)}}}const De=g(u),Oe=g(r),ke=g(ne),Ae=g(o),je=g(ge),Me=g(l),Ne=g(he),Pe=g(_e),Fe=g(i),Ie=g(e),Le=g(c),Re=g(n),ze=g(pe),Be=g(s),Ve=Ee(Se),He=Te(Ue);function _(e){return(t,n)=>e(t,n.slice(n.lastIndexOf(`.`)+1))}function v(e,t){try{return se(e,t)}catch(e){throw Error(e instanceof Error?e.message:`${t} is invalid`)}}function Ue(e,t){if(typeof e!=`string`||e.length===0||e.trim()!==e)throw Error(`${t} must be a non-empty canonical string`);for(let n of e){let e=n.charCodeAt(0);if(/\s/.test(n)||e<=31||e===127)throw Error(`${t} must not contain whitespace or control characters`)}return e}function We(e,t){if(!Number.isSafeInteger(e)||Number(e)<0)throw Error(`${t} must be a non-negative safe integer`);return Number(e)}function Ge(e,t){let n=ue(e);if(!n.ok)throw Error(`${t}: ${n.error.message}`);return n.value}function Ke(e,t){let n=re(e);if(!n.ok)throw Error(`${t} ${n.error.message}`);return n.value}function qe(e,t){if(e.kind!==t.kind||e.walletId!==t.walletId||e.authorityId!==t.authorityId||e.authMethodId!==t.authMethodId||e.authorizationId!==t.authorizationId||e.quotaId!==t.quotaId||e.authorityDigestB64u!==t.authorityDigestB64u||e.authorityRevocationEpoch!==t.authorityRevocationEpoch||e.issuedAtMs!==t.issuedAtMs||e.expiresAtMs!==t.expiresAtMs||e.capabilitySubjects.length!==t.capabilitySubjects.length)return!1;for(let n=0;n<e.capabilitySubjects.length;n+=1){let r=e.capabilitySubjects[n],i=t.capabilitySubjects[n];if(!r||!i||!Je(r,i))return!1}return!0}function Je(e,t){switch(e.kind){case`link_devices`:case`revoke_devices`:return t.kind===e.kind;case`sign`:case`export_keys`:return t.kind===e.kind&&t.keyFamily===e.keyFamily&&ee(e.materialActivation,t.materialActivation);default:return!1}}function Ye(e,t){for(let n of e.capabilitySubjects){let e=!1;for(let r of t.capabilitySubjects)if(Je(n,r)){e=!0;break}if(!e)return!1}return!0}function Xe(){return Ce({kind:h(`opaque_wallet_session_operation_credential_v1`),token:(e,t)=>{if(typeof e!=`string`||e.length>8192)throw Error(`${t} is invalid`);return e},walletSessionId:_(Ne)},(e,t)=>{if(!/^wst_[A-Za-z0-9_-]{43}$/.test(e.token))throw Error(`${t} opaque token is invalid`)})}function Ze(e){return Xe()(e,`WalletSessionOperationCredentialV1`)}function Qe(e){return e.kind===`sign`||e.kind===`export_keys`?`${e.kind}:${e.keyFamily}:${e.materialActivation.activationId}`:e.kind}function $e(){return Ce({kind:h(`active_wallet_session_v1`),walletId:_(Oe),authorityId:_(Ie),authMethodId:_(Fe),authorizationId:_(Pe),quotaId:_(ze),authorityDigestB64u:_(Ve),authorityRevocationEpoch:_(We),capabilitySubjects:(e,t)=>{if(!Array.isArray(e)||e.length===0)throw Error(`${t} must be non-empty`);let n=[];for(let[t,r]of e.entries())n.push(tt(r,`capabilitySubjects[${t}]`));let r=n[0];if(!r)throw Error(`${t} must be non-empty`);return[r,...n.slice(1)]},issuedAtMs:_(v),expiresAtMs:_(v)},(e,t)=>{let n=e.capabilitySubjects.map(Qe);if(new Set(n).size!==n.length)throw Error(`${t} capability subjects repeat`)})}function et(e){return $e()(e,`ActiveWalletSessionV1`)}function tt(e,t){let n=d(e,t);if(n.kind===`link_devices`||n.kind===`revoke_devices`)return le(n,[`kind`],t),{kind:n.kind};if(n.kind!==`sign`&&n.kind!==`export_keys`)throw Error(`${t}.kind is invalid`);if(le(n,[`kind`,`keyFamily`,`materialActivation`],t),n.keyFamily!==`ed25519`&&n.keyFamily!==`ecdsa_secp256k1`)throw Error(`${t}.keyFamily is invalid`);return{kind:n.kind,keyFamily:n.keyFamily,materialActivation:Be(n.materialActivation,`${t}.materialActivation`)}}function nt(e,t){let n=oe(e,t);if(!/^x25519:[0-9a-f]{64}$/.test(n))throw Error(`${t} must use x25519:<64 lowercase hex chars> encoding`);return n}function rt(e,t,n){let r=Object.keys(e).sort(),i=[...t].sort();if(r.length!==i.length||r.some((e,t)=>e!==i[t]))throw Error(`${n} has invalid fields`)}function y(e,t){if(typeof e!=`string`||e.trim()!==e||!e)throw Error(`${t} is required`);if(!/^[\x20-\x7e]+$/.test(e))throw Error(`${t} must be printable ASCII`);return e}function b(e){let t=d(e,`authorization`);switch(t.kind){case`reusable_wallet_session`:return rt(t,[`kind`,`wallet_session_id`],`authorization`),{kind:`reusable_wallet_session`,wallet_session_id:y(t.wallet_session_id,`authorization.wallet_session_id`)};case`operation_step_up`:return rt(t,[`kind`],`authorization`),{kind:`operation_step_up`};default:throw Error(`authorization.kind is not supported`)}}function x(e){let t=d(e,`material_activation`);if(rt(t,[`kind`,`activation_id`,`capability`,`material_owner`,`key_binding`,`lifecycle_binding`,`signing_worker`],`material_activation`),t.kind!==`mpc_material_activation_ref`)throw Error(`material_activation.kind is not supported`);return{kind:`mpc_material_activation_ref`,activation_id:y(t.activation_id,`material_activation.activation_id`),capability:y(t.capability,`material_activation.capability`),material_owner:y(t.material_owner,`material_activation.material_owner`),key_binding:y(t.key_binding,`material_activation.key_binding`),lifecycle_binding:y(t.lifecycle_binding,`material_activation.lifecycle_binding`),signing_worker:y(t.signing_worker,`material_activation.signing_worker`)}}function it(e){return x({kind:e.kind,activation_id:e.activationId,capability:e.capability,material_owner:e.materialOwner,key_binding:e.keyBinding,lifecycle_binding:e.lifecycleBinding,signing_worker:e.signingWorker})}function at(e){let t=x(e),n=s({kind:t.kind,activationId:t.activation_id,capability:t.capability,materialOwner:t.material_owner,keyBinding:t.key_binding,lifecycleBinding:t.lifecycle_binding,signingWorker:t.signing_worker});if(!n.ok)throw Error(`material_activation is invalid: ${n.error.message}`);return n.value}function ot(e){return new TextEncoder().encode(e)}function S(e,t){let n=ot(t),r=n.length>>>0;e.push(r>>>24&255,r>>>16&255,r>>>8&255,r&255),e.push(...n)}function st(e){let t=b(e),n=[];switch(S(n,t.kind),t.kind){case`reusable_wallet_session`:S(n,t.wallet_session_id);break;case`operation_step_up`:break}return new Uint8Array(n)}function C(e){let t=x(e),n=[];return S(n,t.kind),S(n,t.activation_id),S(n,t.capability),S(n,t.material_owner),S(n,t.key_binding),S(n,t.lifecycle_binding),S(n,t.signing_worker),new Uint8Array(n)}function w(e,t){return e.kind===t.kind&&e.activation_id===t.activation_id&&e.capability===t.capability&&e.material_owner===t.material_owner&&e.key_binding===t.key_binding&&e.lifecycle_binding===t.lifecycle_binding&&e.signing_worker===t.signing_worker}function ct(e){let t=e.trim(),n=p(t);if(n.length!==33||f(n)!==t)throw Error(`ECDSA client root public key must be canonical base64url for 33 bytes`);return t}function lt(e,t){let n=String(e??``).trim();if(!n)throw Error(`${t} is required`);return n}function ut(e){return lt(e,`ecdsaThresholdKeyId`)}function dt(e){return lt(e,`signingRootId`)}function ft(e){return lt(e,`signingRootVersion`)}async function pt(e){let t=fe(e);return`ederivation-relayer-${f(await be(m({version:`threshold_ecdsa_derivation_relayer_key_id_v1`,schemeId:`threshold-secp256k1-ecdsa-2p-v1`,walletId:e.walletId,evmFamilySigningKeySlotId:t})))}`}function T(e,t){if(typeof e!=`string`||e.trim()!==e||e.length===0)throw Error(`${t} must be a non-empty canonical string`);return e}function E(e,t,n){if(typeof e!=`string`||!/^[A-Za-z0-9_-]+$/.test(e))throw Error(`${t} must be unpadded base64url`);let r;try{r=p(e)}catch{throw Error(`${t} must be valid base64url`)}if(r.length===0||n!==null&&r.length!==n||f(r)!==e)throw Error(`${t} has an invalid canonical byte length`);return e}function mt(e){return T(e,`ECDSA signer id`)}function ht(e){return T(e,`ECDSA server generation`)}function gt(e){return T(e,`ECDSA manifest id`)}function _t(e){if(!Number.isSafeInteger(e)||Number(e)<1)throw Error(`ECDSA manifest revision must be a positive safe integer`);return e}function vt(e){return E(e,`ECDSA ciphertext digest`,32)}function yt(e){return E(e,`ECDSA pending ciphertext digest`,32)}function bt(e){return E(e,`ECDSA activation digest`,32)}function xt(e){return T(e,`ECDSA lifecycle id`)}function St(e){return T(e,`ECDSA material sealing key id`)}function Ct(e){return E(e,`ECDSA AES-GCM IV`,12)}function wt(e){return E(e,`ECDSA ciphertext`,null)}function Tt(e){if(typeof e!=`string`||e.trim()!==e)throw Error(`ECDSA server activation request must be canonical JSON`);let t;try{t=JSON.parse(e)}catch{throw Error(`ECDSA server activation request must be canonical JSON`)}if(typeof t!=`object`||!t||Array.isArray(t)||m(t)!==e)throw Error(`ECDSA server activation request must be a canonical JSON object`);return e}function D(e){return e.factor.kind===`passkey`}function O(e){return e.factor.kind===`email_otp`}function Et(e,t){return e.walletId!==t.walletId||e.bindingId!==t.bindingId?!1:D(e)?D(t)?e.factor.credentialIdB64u===t.factor.credentialIdB64u&&e.verifier.rpId===t.verifier.rpId:!1:O(e)&&O(t)?e.factor.provider===t.factor.provider&&e.factor.providerUserId===t.factor.providerUserId&&e.verifier.emailHashHex===t.verifier.emailHashHex:!1}function Dt(e){if(!e||typeof e!=`object`||Array.isArray(e))return null;let n=e,a=Object.keys(n);if(a.length!==4||!a.every(e=>[`kind`,`walletId`,`authorityDigest`,`walletAuthMethodId`].includes(e))||n.kind!==`wallet_auth_authority_ref`)return null;let o=r(n.walletId),s=t(n.authorityDigest),c=i(n.walletAuthMethodId);return!o.ok||!s.ok||!c.ok?null:{kind:`wallet_auth_authority_ref`,walletId:o.value,authorityDigest:s.value,walletAuthMethodId:c.value}}function Ot(e){let t=String(e||``).trim().toLowerCase();return t===`google`||t===`email`?t:null}function k(e,t){if(e.ok)return e.value;throw Error(t)}function kt(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function At(e,t){for(let n of t)if(kt(e,n))return!0;return!1}function jt(e){let t=k(r(e.walletId),`Passkey wallet auth authority requires walletId`),a=k(n(e.rpId),`Passkey wallet auth authority requires rpId`),o=k(c(e.credentialIdB64u),`Passkey wallet auth authority requires credentialIdB64u`),s=k(i(`passkey:${a}:${o}`),`Passkey wallet auth authority requires bindingId`);return{walletId:t,factor:{kind:`passkey`,credentialIdB64u:o},verifier:{kind:`webauthn`,rpId:a},bindingId:s}}function Mt(e){let t=Ot(e.provider);if(!t)throw Error(`Email OTP factor identity requires provider`);return{kind:`email_otp`,provider:t,providerUserId:k(te(e.providerUserId),`Email OTP factor identity requires providerUserId`)}}function Nt(e){let t=k(r(e.walletId),`Email OTP wallet auth authority requires walletId`),n=Mt(e),a=String(e.emailHashHex||``).trim();if(!a)throw Error(`Email OTP wallet auth authority requires emailHashHex`);let o=k(i(`email_otp:${t}:${a}`),`Email OTP wallet auth authority requires bindingId`);return{walletId:t,factor:n,verifier:{kind:`email_otp_wallet_auth_method`,emailHashHex:a},bindingId:o}}function Pt(e){return e.factor.provider}function Ft(e){return e.factor.providerUserId}function It(e){return e.verifier.emailHashHex}function Lt(e){let t=e.factor;if(!t||typeof t!=`object`||Array.isArray(t))return null;let a=e.verifier;if(!a||typeof a!=`object`||Array.isArray(a))return null;let o=t,s=a,l=String(o.kind||``).trim().toLowerCase(),u=String(s.kind||``).trim().toLowerCase();if(l!==`passkey`||u!==`webauthn`)return null;try{if(At(e,[`kind`,`rpId`,`credentialIdB64u`,`provider`,`providerUserId`]))return null;let t=r(e.walletId),a=n(s.rpId),l=c(o.credentialIdB64u),u=i(e.bindingId);return!t.ok||!a.ok||!l.ok||!u.ok?null:{walletId:t.value,factor:{kind:`passkey`,credentialIdB64u:l.value},verifier:{kind:`webauthn`,rpId:a.value},bindingId:u.value}}catch{return null}}function Rt(e){let t=e.factor;if(!t||typeof t!=`object`||Array.isArray(t))return null;let n=e.verifier;if(!n||typeof n!=`object`||Array.isArray(n))return null;let a=t,o=n,s=String(a.kind||``).trim().toLowerCase(),c=String(o.kind||``).trim().toLowerCase();if(s!==`email_otp`||c!==`email_otp_wallet_auth_method`)return null;try{if(At(e,[`kind`,`rpId`,`credentialIdB64u`,`provider`,`providerUserId`]))return null;let t=r(e.walletId),n=Ot(a.provider),s=te(a.providerUserId),c=String(o.emailHashHex||``).trim(),l=i(e.bindingId);return!t.ok||!n||!s.ok||!c||!l.ok?null:{walletId:t.value,factor:{kind:`email_otp`,provider:n,providerUserId:s.value},verifier:{kind:`email_otp_wallet_auth_method`,emailHashHex:c},bindingId:l.value}}catch{return null}}function zt(e){if(!e||typeof e!=`object`||Array.isArray(e))return null;let t=e;return Lt(t)||Rt(t)}function Bt(e){return!e||typeof e!=`object`||Array.isArray(e)?null:Rt(e)}function Vt(e){return!e||typeof e!=`object`||Array.isArray(e)?null:Lt(e)}function Ht(e){return`seams:wallet-authority-binding:v1|${m(e.authority)}`}async function Ut(e){return k(t(f(await be(Ht(e)))),`Wallet authority binding digest must be non-empty`)}async function Wt(e){return{kind:`wallet_auth_authority_ref`,walletId:e.authority.walletId,authorityDigest:await Ut({authority:e.authority}),walletAuthMethodId:e.authority.bindingId}}const Gt=5*6e4,Kt=`/router-ab/ecdsa-derivation/export`,qt=`/router-ab/ecdsa-derivation/presignature-pool/fill/init`,Jt=`/router-ab/ecdsa-derivation/presignature-pool/fill/step`,Yt=`/router-ab/ecdsa-derivation/session/activate`,Xt=`/router-ab/ecdsa-derivation/operation-step-up`,Zt=[1,2];function Qt(e,t){if(e===`reusable_wallet_session`||e===`verified_step_up`)return e;throw Error(`${t} must be reusable_wallet_session or verified_step_up`)}function $t(e){let t=d(e,`operationStepUpAuthorizationResponse.export_topology`);A(t,`operationStepUpAuthorizationResponse.export_topology`,[`signer_set`,`deriver_recipient_keys`,`router_id`]);let n=hn(t.signer_set,`operationStepUpAuthorizationResponse.export_topology.signer_set`),r=vn(t.deriver_recipient_keys,`operationStepUpAuthorizationResponse.export_topology.deriver_recipient_keys`);if(r.deriver_a.key_epoch!==n.signer_a.key_epoch||r.deriver_b.key_epoch!==n.signer_b.key_epoch)throw Error(`operationStepUpAuthorizationResponse.export_topology recipient key epochs do not match signer_set`);return{signer_set:n,deriver_recipient_keys:r,router_id:j(t.router_id,`operationStepUpAuthorizationResponse.export_topology.router_id`)}}function en(e){let t=d(e,`operationStepUpAuthorizationResponse`),n=Sr(t.operation_kind);if(A(t,`operationStepUpAuthorizationResponse`,[`ok`,`kind`,`authorization`,`expires_at_ms`,`operation_kind`,...n===`evm.export_key`?[`export_topology`]:[]]),t.ok!==!0||t.kind!==`verified_step_up`)throw Error(`operationStepUpAuthorizationResponse is invalid`);let r=d(t.authorization,`operationStepUpAuthorizationResponse.authorization`);if(A(r,`operationStepUpAuthorizationResponse.authorization`,[`kind`,`evidence_set_digest`,`unseal`]),r.kind!==`operation_step_up`)throw Error(`operationStepUpAuthorizationResponse.authorization.kind is invalid`);let i=N(t.expires_at_ms,`operationStepUpAuthorizationResponse.expires_at_ms`);if(i<=Date.now())throw Error(`operationStepUpAuthorizationResponse.expires_at_ms is expired`);let a=d(r.unseal,`operationStepUpAuthorizationResponse.authorization.unseal`),o=j(a.kind,`operationStepUpAuthorizationResponse.authorization.unseal.kind`),s;switch(o){case`not_requested`:A(a,`operationStepUpAuthorizationResponse.authorization.unseal`,[`kind`]),s={kind:`not_requested`};break;case`email_otp_grant`:A(a,`operationStepUpAuthorizationResponse.authorization.unseal`,[`kind`,`grant`,`challenge_id`]),s={kind:`email_otp_grant`,grant:j(a.grant,`operationStepUpAuthorizationResponse.authorization.unseal.grant`),challenge_id:j(a.challenge_id,`operationStepUpAuthorizationResponse.authorization.unseal.challenge_id`)};break;default:throw Error(`operationStepUpAuthorizationResponse.authorization.unseal.kind is invalid`)}let c={ok:!0,kind:`verified_step_up`,authorization:{kind:`operation_step_up`,evidence_set_digest:Se(r.evidence_set_digest),unseal:s},expires_at_ms:i};return n===`evm.sign_transaction`?{...c,operation_kind:`evm.sign_transaction`}:{...c,operation_kind:`evm.export_key`,export_topology:$t(t.export_topology)}}async function tn(e){return f(await be(m({domain:`router-ab-ecdsa-operation-step-up/challenge/v1`,operation:xr(e)})))}function A(e,t,n){let r=new Set(n);for(let n of Object.keys(e))if(!r.has(n))throw Error(`${t}.${n} is not a supported field`)}function j(e,t){if(typeof e!=`string`)throw Error(`${t} must be a string`);let n=e.trim();if(!n)throw Error(`${t} is required`);if(!/^[\x20-\x7e]+$/.test(n))throw Error(`${t} must be printable ASCII`);return n}function M(e,t){let n=ae(j(e,t));if(!n.ok)throw Error(`${t} is invalid`);return n.value}function nn(e,t){let n=ie(j(e,t));if(!n.ok)throw Error(`${t} is invalid`);return n.value}function rn(e,t){let n=ye(e);if(!n.ok)throw Error(`${t} is invalid`);return n.value}function an(e,t){let n=_e(e);if(!n.ok)throw Error(`${t} is invalid`);return n.value}function on(e,t){let n=he(e);if(!n.ok)throw Error(`${t} is invalid`);return n.value}function sn(e,t){let n=pe(e);if(!n.ok)throw Error(`${t} is invalid`);return n.value}function N(e,t){if(typeof e!=`number`||!Number.isSafeInteger(e)||e<=0)throw Error(`${t} must be a positive safe integer`);return e}function P(e,t){if(typeof e!=`number`||!Number.isSafeInteger(e)||e<=0)throw Error(`${t} must be a positive safe-integer counter`);return e}function F(e,t){if(typeof e!=`number`||!Number.isFinite(e))throw Error(`${t} must be a finite number`);let n=Math.floor(e);if(n!==e||n<0||n>4294967295)throw Error(`${t} must be a u32 integer`);return n}function cn(e,t){if(typeof e!=`number`||!Number.isFinite(e))throw Error(`${t} must be a finite number`);let n=Math.floor(e);if(n!==e||n<0||n>255)throw Error(`${t} must be a byte`);return n}function I(e,t,n){let r=j(e,t);if(!/^[A-Za-z0-9_-]+$/.test(r))throw Error(`${t} must be unpadded base64url`);let i;try{i=p(r)}catch{throw Error(`${t} must be valid base64url`)}if(i.length!==n)throw Error(`${t} must decode to ${n} bytes`);return r}function L(e,t){let n=I(e,t,33),r=p(n);if(r[0]!==2&&r[0]!==3)throw Error(`${t} must be a compressed secp256k1 public key`);return n}function ln(e,t){let n=j(e,t);if(!/^[A-Za-z0-9_-]+$/.test(n))throw Error(`${t} must be unpadded base64url`);let r;try{r=p(n)}catch{throw Error(`${t} must be valid base64url`)}if(r.length===0)throw Error(`${t} must decode to non-empty bytes`);return n}function un(e,t){let n=j(e,t);if(!/^x25519:[0-9a-f]{64}$/.test(n))throw Error(`${t} must use x25519:<64 lowercase hex chars> encoding`);return n}function R(e,t,n){if(!(e instanceof Uint8Array))throw Error(`${t} must be a Uint8Array`);if(e.length!==n)throw Error(`${t} must contain ${n} bytes`);return e}function dn(e,t){let n=j(e,t);if(n!==`ecdsa_secp256k1_recoverable_v1`)throw Error(`${t} must be ecdsa_secp256k1_recoverable_v1`);return n}function z(e,t){let n=d(e,t);if(A(n,t,[`bytes`]),!Array.isArray(n.bytes))throw Error(`${t}.bytes must be an array`);if(n.bytes.length!==32)throw Error(`${t}.bytes must contain 32 bytes`);return{bytes:n.bytes.map((e,n)=>cn(e,`${t}.bytes[${n}]`))}}function B(e){let t=d(e,`scope.context`);A(t,`scope.context`,[`application_binding_digest_b64u`]);let n=p(j(t.application_binding_digest_b64u,`scope.context.application_binding_digest_b64u`));if(n.length!==32)throw Error(`scope.context.application_binding_digest_b64u must decode to 32 bytes`);return{application_binding_digest_b64u:f(n)}}function V(e){let t=d(e,`scope.public_identity`);return A(t,`scope.public_identity`,[`context_binding_b64u`,`derivation_client_share_public_key33_b64u`,`server_public_key33_b64u`,`threshold_public_key33_b64u`,`ethereum_address20_b64u`,`client_share_retry_counter`,`server_share_retry_counter`]),{context_binding_b64u:I(t.context_binding_b64u,`scope.public_identity.context_binding_b64u`,32),derivation_client_share_public_key33_b64u:L(t.derivation_client_share_public_key33_b64u,`scope.public_identity.derivation_client_share_public_key33_b64u`),server_public_key33_b64u:L(t.server_public_key33_b64u,`scope.public_identity.server_public_key33_b64u`),threshold_public_key33_b64u:L(t.threshold_public_key33_b64u,`scope.public_identity.threshold_public_key33_b64u`),ethereum_address20_b64u:I(t.ethereum_address20_b64u,`scope.public_identity.ethereum_address20_b64u`,20),client_share_retry_counter:F(t.client_share_retry_counter,`scope.public_identity.client_share_retry_counter`),server_share_retry_counter:F(t.server_share_retry_counter,`scope.public_identity.server_share_retry_counter`)}}function fn(e){return pn(e,`scope.signing_worker`)}function pn(e,t){let n=d(e,t);return A(n,t,[`server_id`,`key_epoch`,`recipient_encryption_key`]),{server_id:j(n.server_id,`${t}.server_id`),key_epoch:j(n.key_epoch,`${t}.key_epoch`),recipient_encryption_key:nt(n.recipient_encryption_key,`${t}.recipient_encryption_key`)}}function mn(e,t,n){let r=d(e,t);if(A(r,t,[`role`,`signer_id`,`key_epoch`]),j(r.role,`${t}.role`)!==n)throw Error(`${t}.role must be ${n}`);return{role:n,signer_id:j(r.signer_id,`${t}.signer_id`),key_epoch:j(r.key_epoch,`${t}.key_epoch`)}}function hn(e,t){let n=d(e,t);A(n,t,[`signer_set_id`,`policy`,`signer_a`,`signer_b`,`selected_server`]);let r=j(n.policy,`${t}.policy`);if(r!==`all_2`)throw Error(`${t}.policy must be all_2`);let i=mn(n.signer_a,`${t}.signer_a`,`signer_a`),a=mn(n.signer_b,`${t}.signer_b`,`signer_b`);if(i.signer_id===a.signer_id)throw Error(`${t} requires distinct signer ids`);return{signer_set_id:j(n.signer_set_id,`${t}.signer_set_id`),policy:r,signer_a:i,signer_b:a,selected_server:pn(n.selected_server,`${t}.selected_server`)}}function gn(e){let t=`registration.lifecycle`,n=d(e,t);if(A(n,t,[`lifecycle_id`,`work_kind`,`primitive_request_kind`,`root_share_epoch`,`account_id`,`session_id`,`signer_set_id`,`selected_server_id`]),n.work_kind!==`registration_prepare`)throw Error(`${t}.work_kind must be registration_prepare`);if(n.primitive_request_kind!==`registration`)throw Error(`${t}.primitive_request_kind must be registration`);return{lifecycle_id:j(n.lifecycle_id,`${t}.lifecycle_id`),work_kind:`registration_prepare`,primitive_request_kind:`registration`,root_share_epoch:M(n.root_share_epoch,`${t}.root_share_epoch`),account_id:j(n.account_id,`${t}.account_id`),session_id:j(n.session_id,`${t}.session_id`),signer_set_id:j(n.signer_set_id,`${t}.signer_set_id`),selected_server_id:j(n.selected_server_id,`${t}.selected_server_id`)}}function _n(e,t,n){let r=d(e,t);if(A(r,t,[`role`,`key_epoch`,`public_key`]),r.role!==n)throw Error(`${t}.role must be ${n}`);return{role:n,key_epoch:j(r.key_epoch,`${t}.key_epoch`),public_key:nt(r.public_key,`${t}.public_key`)}}function vn(e,t=`registration.deriver_recipient_keys`){let n=d(e,t);return A(n,t,[`deriver_a`,`deriver_b`]),{deriver_a:_n(n.deriver_a,`${t}.deriver_a`,`signer_a`),deriver_b:_n(n.deriver_b,`${t}.deriver_b`,`signer_b`)}}function yn(e){let t=`registration`,n=d(e,t);if(A(n,t,[`registration_purpose`,`context`,`lifecycle`,`signer_set`,`router_id`,`client_id`,`replay_nonce`,`expires_at_ms`,`deriver_recipient_keys`]),n.registration_purpose!==`wallet_registration`&&n.registration_purpose!==`wallet_add_signer`)throw Error(`${t}.registration_purpose is invalid`);let r=gn(n.lifecycle),i=hn(n.signer_set,`${t}.signer_set`);if(r.signer_set_id!==i.signer_set_id)throw Error(`${t}.lifecycle signer set does not match signer_set`);if(r.selected_server_id!==i.selected_server.server_id)throw Error(`${t}.lifecycle selected server does not match signer_set`);let a=vn(n.deriver_recipient_keys);if(a.deriver_a.key_epoch!==i.signer_a.key_epoch)throw Error(`${t}.deriver_a recipient key epoch does not match signer_set`);if(a.deriver_b.key_epoch!==i.signer_b.key_epoch)throw Error(`${t}.deriver_b recipient key epoch does not match signer_set`);return{registration_purpose:n.registration_purpose,context:B(n.context),lifecycle:r,signer_set:i,router_id:j(n.router_id,`${t}.router_id`),client_id:j(n.client_id,`${t}.client_id`),replay_nonce:j(n.replay_nonce,`${t}.replay_nonce`),expires_at_ms:N(n.expires_at_ms,`${t}.expires_at_ms`),deriver_recipient_keys:a}}function bn(e,t){let n=d(e,t);if(A(n,t,[`kind`,`transcriptDigestB64u`,`payloadB64u`]),n.kind!==`recipient_proof_bundle`)throw Error(`${t}.kind must be recipient_proof_bundle`);return{kind:`recipient_proof_bundle`,transcriptDigestB64u:I(n.transcriptDigestB64u,`${t}.transcriptDigestB64u`,32),payloadB64u:ln(n.payloadB64u,`${t}.payloadB64u`)}}function xn(e){let t=`registrationForwarded`,n=d(e,t);if(A(n,t,[`result`,`response`]),n.result!==`forwarded`)throw Error(`${t}.result must be forwarded`);return{result:`forwarded`,response:Dn(n.response,`${t}.response`)}}function Sn(e){return Cn(e,wn)}function Cn(e,t){let n=`explicitExportForwarded`,r=d(e,n);if(A(r,n,[`result`,`response`,`signing_worker_export`]),r.result!==`forwarded`)throw Error(`${n}.result must be forwarded`);return{result:`forwarded`,response:Dn(r.response,`${n}.response`),signing_worker_export:t(r.signing_worker_export)}}function wn(e){return En(e,x)}function Tn(e,t,n){let r=d(e,n);A(r,n,[`wallet_id`,`key_handle`,`ecdsa_threshold_key_id`,`signing_root_id`,`signing_root_version`,`activation_epoch`,`signing_worker_id`,`context_binding_b64u`,`threshold_public_key33_b64u`,`export_request_digest_b64u`,`export_authorization_digest_b64u`,`export_nonce`,`authorization_kind`,`authorization_id`,`material_activation`,`lifecycle_id`,`recipient_identity`,`recipient_public_key`,`expires_at_ms`]);let i=t(r.material_activation);if(i.material_owner!==r.wallet_id||i.signing_worker!==r.signing_worker_id)throw Error(`${n}.material_activation is not bound to wallet and worker`);return{wallet_id:j(r.wallet_id,`${n}.wallet_id`),key_handle:j(r.key_handle,`${n}.key_handle`),ecdsa_threshold_key_id:j(r.ecdsa_threshold_key_id,`${n}.ecdsa_threshold_key_id`),signing_root_id:j(r.signing_root_id,`${n}.signing_root_id`),signing_root_version:j(r.signing_root_version,`${n}.signing_root_version`),activation_epoch:M(r.activation_epoch,`${n}.activation_epoch`),signing_worker_id:j(r.signing_worker_id,`${n}.signing_worker_id`),context_binding_b64u:I(r.context_binding_b64u,`${n}.context_binding_b64u`,32),threshold_public_key33_b64u:L(r.threshold_public_key33_b64u,`${n}.threshold_public_key33_b64u`),export_request_digest_b64u:I(r.export_request_digest_b64u,`${n}.export_request_digest_b64u`,32),export_authorization_digest_b64u:I(r.export_authorization_digest_b64u,`${n}.export_authorization_digest_b64u`,32),export_nonce:j(r.export_nonce,`${n}.export_nonce`),authorization_kind:Qt(r.authorization_kind,`${n}.authorization_kind`),authorization_id:j(r.authorization_id,`${n}.authorization_id`),material_activation:i,lifecycle_id:j(r.lifecycle_id,`${n}.lifecycle_id`),recipient_identity:j(r.recipient_identity,`${n}.recipient_identity`),recipient_public_key:un(r.recipient_public_key,`${n}.recipient_public_key`),expires_at_ms:N(r.expires_at_ms,`${n}.expires_at_ms`)}}function En(e,t){let n=`signingWorkerExportShare`,r=d(e,n);if(A(r,n,[`version`,`algorithm`,`binding`,`ciphertext_and_tag`]),r.version!==`router-ab-ecdsa-derivation/signing-worker-export-share-envelope/v1`)throw Error(`${n}.version is invalid`);if(r.algorithm!==`hpke_x25519_hkdf_sha256_aes256gcm_v1`)throw Error(`${n}.algorithm is invalid`);if(!Array.isArray(r.ciphertext_and_tag)||r.ciphertext_and_tag.length<=48)throw Error(`${n}.ciphertext_and_tag is invalid`);return{version:`router-ab-ecdsa-derivation/signing-worker-export-share-envelope/v1`,algorithm:`hpke_x25519_hkdf_sha256_aes256gcm_v1`,binding:Tn(r.binding,t,`${n}.binding`),ciphertext_and_tag:r.ciphertext_and_tag.map((e,t)=>cn(e,`${n}.ciphertext_and_tag[${t}]`))}}function Dn(e,t){let n=d(e,t);A(n,t,[`bundles`]);let r=`${t}.bundles`,i=d(n.bundles,r);return A(i,r,[`signerA`,`signerB`]),{bundles:{signerA:bn(i.signerA,`${r}.signerA`),signerB:bn(i.signerB,`${r}.signerB`)}}}function On(e){let t=`registrationActivation.publicFacts`,n=d(e,t);if(A(n,t,[`registrationRequestDigestB64u`,`proofTranscriptDigestB64u`,`contextBinding32B64u`,`derivationClientSharePublicKey33B64u`,`clientShareRetryCounter`,`participantId`]),n.participantId!==1)throw Error(`${t}.participantId must be 1`);return{registrationRequestDigestB64u:I(n.registrationRequestDigestB64u,`${t}.registrationRequestDigestB64u`,32),proofTranscriptDigestB64u:I(n.proofTranscriptDigestB64u,`${t}.proofTranscriptDigestB64u`,32),contextBinding32B64u:I(n.contextBinding32B64u,`${t}.contextBinding32B64u`,32),derivationClientSharePublicKey33B64u:L(n.derivationClientSharePublicKey33B64u,`${t}.derivationClientSharePublicKey33B64u`),clientShareRetryCounter:F(n.clientShareRetryCounter,`${t}.clientShareRetryCounter`),participantId:1}}function kn(e){let t=`registrationActivationReceipt`,n=d(e,t);A(n,t,[`activation_correlation_id`,`activation_request_digest`,`server_generation`,`ecdsa_activation`,`lifecycle_id`,`transcript_digest`]);let r=`${t}.ecdsa_activation`,i=d(n.ecdsa_activation,r);A(i,r,[`context`,`public_identity`,`signing_worker`,`material_activation`,`activation_epoch`,`activation_digest_b64u`,`activated_at_ms`]);let a=pn(i.signing_worker,`${r}.signing_worker`),o=x(i.material_activation);if(o.signing_worker!==a.server_id)throw Error(`${r}.material_activation.signing_worker does not match signing_worker`);let s=I(i.activation_digest_b64u,`${r}.activation_digest_b64u`,32),c=z(n.transcript_digest,`${t}.transcript_digest`);return{activation_correlation_id:xe(n.activation_correlation_id),activation_request_digest:z(n.activation_request_digest,`${t}.activation_request_digest`),server_generation:ht(n.server_generation),ecdsa_activation:{context:B(i.context),public_identity:V(i.public_identity),signing_worker:a,material_activation:o,activation_epoch:M(i.activation_epoch,`${r}.activation_epoch`),activation_digest_b64u:s,activated_at_ms:N(i.activated_at_ms,`${r}.activated_at_ms`)},lifecycle_id:j(n.lifecycle_id,`${t}.lifecycle_id`),transcript_digest:c}}function An(e){return kn(e)}function H(e,t){return e.server_id===t.server_id&&e.key_epoch===t.key_epoch&&e.recipient_encryption_key===t.recipient_encryption_key}function jn(e,t){return e.registrationRequestDigestB64u===t.registrationRequestDigestB64u&&e.proofTranscriptDigestB64u===t.proofTranscriptDigestB64u&&e.contextBinding32B64u===t.contextBinding32B64u&&e.derivationClientSharePublicKey33B64u===t.derivationClientSharePublicKey33B64u&&e.clientShareRetryCounter===t.clientShareRetryCounter&&e.participantId===t.participantId}function Mn(e,t){return e.signer_set_id===t.signer_set_id&&e.policy===t.policy&&e.signer_a.role===t.signer_a.role&&e.signer_a.signer_id===t.signer_a.signer_id&&e.signer_a.key_epoch===t.signer_a.key_epoch&&e.signer_b.role===t.signer_b.role&&e.signer_b.signer_id===t.signer_b.signer_id&&e.signer_b.key_epoch===t.signer_b.key_epoch&&H(e.selected_server,t.selected_server)}function U(e){let t=`ecdsaPublicCapability`,n=d(e,t);if(A(n,t,[`kind`,`context`,`public_identity`,`material_activation`,`signer_set`,`deriver_recipient_keys`,`router_id`,`client_id`,`activation_epoch`,`registration_request_digest_b64u`,`proof_transcript_digest_b64u`]),n.kind!==`router_ab_ecdsa_derivation_public_capability_v1`)throw Error(`${t}.kind is invalid`);let r=hn(n.signer_set,`${t}.signer_set`),i=vn(n.deriver_recipient_keys,`${t}.deriver_recipient_keys`);if(i.deriver_a.key_epoch!==r.signer_a.key_epoch||i.deriver_b.key_epoch!==r.signer_b.key_epoch)throw Error(`${t} Deriver recipient key epochs do not match signer_set`);return{kind:`router_ab_ecdsa_derivation_public_capability_v1`,context:B(n.context),public_identity:V(n.public_identity),material_activation:x(n.material_activation),signer_set:r,deriver_recipient_keys:i,router_id:j(n.router_id,`${t}.router_id`),client_id:j(n.client_id,`${t}.client_id`),activation_epoch:M(n.activation_epoch,`${t}.activation_epoch`),registration_request_digest_b64u:I(n.registration_request_digest_b64u,`${t}.registration_request_digest_b64u`,32),proof_transcript_digest_b64u:I(n.proof_transcript_digest_b64u,`${t}.proof_transcript_digest_b64u`,32)}}function Nn(e){let t=`postRegistrationSessionActivation.session_policy`,n=d(e,t);return A(n,t,[`threshold_session_id`,`wallet_session_mint_id`,`ttl_ms`,`remaining_uses`,`runtime_policy_scope`]),{threshold_session_id:nn(n.threshold_session_id,`${t}.threshold_session_id`),wallet_session_mint_id:Fn(n.wallet_session_mint_id,`${t}.wallet_session_mint_id`),ttl_ms:P(n.ttl_ms,`${t}.ttl_ms`),remaining_uses:P(n.remaining_uses,`${t}.remaining_uses`),runtime_policy_scope:de(n.runtime_policy_scope)}}function Pn(e){let t=`postRegistrationSessionActivationPolicy`,n=d(e,t);if(A(n,t,[`kind`,`key_handle`,`session_policy`]),n.kind!==`router_ab_ecdsa_post_registration_session_activation_policy_v1`)throw Error(`${t}.kind is invalid`);return{kind:`router_ab_ecdsa_post_registration_session_activation_policy_v1`,key_handle:j(n.key_handle,`${t}.key_handle`),session_policy:Nn(n.session_policy)}}function Fn(e,t){let n=me(e);if(!n.ok)throw Error(`${t} is invalid`);return n.value}function W(e,t){return e.context_binding_b64u===t.context_binding_b64u&&e.derivation_client_share_public_key33_b64u===t.derivation_client_share_public_key33_b64u&&e.server_public_key33_b64u===t.server_public_key33_b64u&&e.threshold_public_key33_b64u===t.threshold_public_key33_b64u&&e.ethereum_address20_b64u===t.ethereum_address20_b64u&&e.client_share_retry_counter===t.client_share_retry_counter&&e.server_share_retry_counter===t.server_share_retry_counter}function In(e,t){for(let n of e.capabilitySubjects)if(!(n.kind!==`sign`||n.keyFamily!==`ecdsa_secp256k1`))return w(t.material_activation,it(n.materialActivation));return!1}function Ln(e){let t=`postRegistrationSessionActivation`,n=d(e,t);if(A(n,t,[`kind`,`public_capability`,`session_policy`]),n.kind!==`router_ab_ecdsa_post_registration_session_activation_v1`)throw Error(`${t}.kind is invalid`);return{kind:`router_ab_ecdsa_post_registration_session_activation_v1`,public_capability:U(n.public_capability),session_policy:Nn(n.session_policy)}}function Rn(e){let t=`postRegistrationSessionActivated`,n=d(e,t);if(A(n,t,[`kind`,`public_capability`,`session`,`normal_signing`]),n.kind!==`router_ab_ecdsa_post_registration_session_activated_v1`)throw Error(`${t}.kind is invalid`);let r=U(n.public_capability),i=d(n.session,`${t}.session`);A(i,`${t}.session`,[`authorization_session_id`,`authorization_id`,`threshold_session_id`,`wallet_session_id`,`quota_id`,`expires_at_ms`,`remaining_uses`,`wallet_session`,`operation_credential`]);let a=mr(n.normal_signing),o=an(i.authorization_id,`${t}.session.authorization_id`),s=on(i.wallet_session_id,`${t}.session.wallet_session_id`),c=N(i.expires_at_ms,`${t}.session.expires_at_ms`),l=et(i.wallet_session),u=Ze(i.operation_credential);if(!W(r.public_identity,a.scope.public_identity)||r.context.application_binding_digest_b64u!==a.scope.context.application_binding_digest_b64u||a.scope.activation_epoch!==r.activation_epoch||!H(a.scope.signing_worker,r.signer_set.selected_server)||l.authorizationId!==o||l.walletId!==r.client_id||l.expiresAtMs!==c||!In(l,r)||u.walletSessionId!==s)throw Error(`${t} exact Wallet Session does not match the activated capability`);return{kind:`router_ab_ecdsa_post_registration_session_activated_v1`,public_capability:r,session:{authorization_session_id:rn(i.authorization_session_id,`${t}.session.authorization_session_id`),authorization_id:o,threshold_session_id:nn(i.threshold_session_id,`${t}.session.threshold_session_id`),wallet_session_id:s,quota_id:sn(i.quota_id,`${t}.session.quota_id`),expires_at_ms:c,remaining_uses:P(i.remaining_uses,`${t}.session.remaining_uses`),wallet_session:l,operation_credential:u},normal_signing:a}}function zn(e){let t=`credentialFreeSessionActivated`,n=d(e,t);if(A(n,t,[`kind`,`public_capability`,`session`,`normal_signing`]),n.kind!==`router_ab_ecdsa_credential_free_session_activated_v1`)throw Error(`${t}.kind is invalid`);let r=U(n.public_capability),i=d(n.session,`${t}.session`);A(i,`${t}.session`,[`authorization_session_id`,`authorization_id`,`threshold_session_id`,`wallet_session_id`,`quota_id`,`expires_at_ms`,`remaining_uses`]);let a=mr(n.normal_signing);if(!W(r.public_identity,a.scope.public_identity)||r.context.application_binding_digest_b64u!==a.scope.context.application_binding_digest_b64u||a.scope.activation_epoch!==r.activation_epoch||!H(a.scope.signing_worker,r.signer_set.selected_server))throw Error(`${t} normal-signing state does not match public capability`);return{kind:`router_ab_ecdsa_credential_free_session_activated_v1`,public_capability:r,session:{authorization_session_id:rn(i.authorization_session_id,`${t}.session.authorization_session_id`),authorization_id:an(i.authorization_id,`${t}.session.authorization_id`),threshold_session_id:nn(i.threshold_session_id,`${t}.session.threshold_session_id`),wallet_session_id:on(i.wallet_session_id,`${t}.session.wallet_session_id`),quota_id:sn(i.quota_id,`${t}.session.quota_id`),expires_at_ms:N(i.expires_at_ms,`${t}.session.expires_at_ms`),remaining_uses:P(i.remaining_uses,`${t}.session.remaining_uses`)},normal_signing:a}}function G(e,t=`signing_digest_b64u`){return{bytes:Array.from(p(I(e,t,32)))}}function K(e,t){return e.bytes.length===32&&t.bytes.length===32&&e.bytes.every((e,n)=>e===t.bytes[n])}function Bn(e,t){return e.bytes.length===t.bytes.length&&e.bytes.every((e,n)=>e===t.bytes[n])}function Vn(e,t){return e.deriver_a.role===t.deriver_a.role&&e.deriver_a.key_epoch===t.deriver_a.key_epoch&&e.deriver_a.public_key===t.deriver_a.public_key&&e.deriver_b.role===t.deriver_b.role&&e.deriver_b.key_epoch===t.deriver_b.key_epoch&&e.deriver_b.public_key===t.deriver_b.public_key}function Hn(e,t){let n=e.ecdsa_activation,r=t.ecdsa_activation;return e.activation_correlation_id===t.activation_correlation_id&&Bn(e.activation_request_digest,t.activation_request_digest)&&e.server_generation===t.server_generation&&e.lifecycle_id===t.lifecycle_id&&Bn(e.transcript_digest,t.transcript_digest)&&n.context.application_binding_digest_b64u===r.context.application_binding_digest_b64u&&W(n.public_identity,r.public_identity)&&H(n.signing_worker,r.signing_worker)&&w(n.material_activation,r.material_activation)&&n.activation_epoch===r.activation_epoch&&n.activation_digest_b64u===r.activation_digest_b64u&&n.activated_at_ms===r.activated_at_ms}function Un(e,t){let n=e.scope,r=t.scope;return e.kind===t.kind&&n.wallet_id===r.wallet_id&&n.ecdsa_threshold_key_id===r.ecdsa_threshold_key_id&&n.signing_root_id===r.signing_root_id&&n.signing_root_version===r.signing_root_version&&n.context.application_binding_digest_b64u===r.context.application_binding_digest_b64u&&W(n.public_identity,r.public_identity)&&w(n.material_activation,r.material_activation)&&H(n.signing_worker,r.signing_worker)&&n.activation_epoch===r.activation_epoch}function Wn(e,t){return e.kind===t.kind&&e.context.application_binding_digest_b64u===t.context.application_binding_digest_b64u&&W(e.public_identity,t.public_identity)&&w(e.material_activation,t.material_activation)&&Mn(e.signer_set,t.signer_set)&&Vn(e.deriver_recipient_keys,t.deriver_recipient_keys)&&e.router_id===t.router_id&&e.client_id===t.client_id&&e.activation_epoch===t.activation_epoch&&e.registration_request_digest_b64u===t.registration_request_digest_b64u&&e.proof_transcript_digest_b64u===t.proof_transcript_digest_b64u}function q(e){return new TextEncoder().encode(j(e,`canonical string`))}function Gn(e){let t=e.reduce((e,t)=>e+t.length,0),n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}function J(e,t){for(let n of t)e.push(n)}function Kn(e,t){J(e,p(t.lane_digest_b64u)),J(e,p(t.intent_digest_b64u)),J(e,p(t.display_digest_b64u))}function qn(e,t){if(!Number.isInteger(t)||t<0||t>65535)throw Error(`canonical u16 must be an integer between 0 and 65535`);e.push(t>>>8&255,t&255)}function Jn(e,t){if(!Number.isInteger(t)||t<0||t>4294967295)throw Error(`canonical u32 must be an integer between 0 and 4294967295`);e.push(t>>>24&255,t>>>16&255,t>>>8&255,t&255)}function Yn(e,t){if(!Number.isSafeInteger(t)||t<0)throw Error(`canonical u64 must be a non-negative safe integer`);let n=BigInt(t);for(let t=56;t>=0;t-=8)e.push(Number(n>>BigInt(t)&255n))}function Y(e,t){Jn(e,t.length),J(e,t)}function Xn(e,t){let n=q(t);qn(e,n.length),J(e,n)}function Zn(e,t){Y(e,q(t.server_id)),Y(e,q(t.key_epoch)),Y(e,q(t.recipient_encryption_key))}async function Qn(e){let t=globalThis.crypto?.subtle;if(!t)throw Error(`crypto.subtle is required for Router A/B ECDSA derivation request digest binding`);let n=new ArrayBuffer(e.byteLength);return new Uint8Array(n).set(e),new Uint8Array(await t.digest(`SHA-256`,n))}async function $n(e){let t=R(e,`clientRerandomizationContribution32`,32);return await Qn(Gn([q(`router-ab-ecdsa-derivation/client-rerandomization-commitment/v1`),t]))}function er(e){let t=B(e),n=[];J(n,q(`router-ab-ecdsa-derivation/context/v1`)),Xn(n,`router-ab-ecdsa-derivation-v1`),Xn(n,`secp256k1`),J(n,p(t.application_binding_digest_b64u)),n.push(Zt.length);for(let e of Zt)qn(n,e);return new Uint8Array(n)}function tr(e){let t=[];return J(t,q(`router-ab-ecdsa-derivation/role-local/context-binding/v1`)),t.push(1),t.push(1),qn(t,e.length),J(t,e),new Uint8Array(t)}async function nr(e){return sr(tr(er(e)))}function rr(e){let t=V(e),n=[];return Y(n,q(`router-ab-ecdsa-derivation/public-identity/v1`)),Y(n,q(t.context_binding_b64u)),Y(n,q(t.derivation_client_share_public_key33_b64u)),Y(n,q(t.server_public_key33_b64u)),Y(n,q(t.threshold_public_key33_b64u)),Y(n,q(t.ethereum_address20_b64u)),Jn(n,t.client_share_retry_counter),Jn(n,t.server_share_retry_counter),new Uint8Array(n)}function ir(e){let t=Z(e),n=[];return Y(n,q(`router-ab-ecdsa-derivation/normal-signing-scope/v1`)),Y(n,q(t.wallet_id)),Y(n,q(t.ecdsa_threshold_key_id)),Y(n,q(t.signing_root_id)),Y(n,q(t.signing_root_version)),Y(n,er(t.context)),Y(n,rr(t.public_identity)),n.push(...C(t.material_activation)),Zn(n,t.signing_worker),Y(n,q(t.activation_epoch)),new Uint8Array(n)}function X(e){return ir(e)}function ar(e,t){return e.length===t.length&&e.every((e,n)=>e===t[n])}function or(e,t){try{return ar(X(e),X(t))}catch{return!1}}async function sr(e){return{bytes:Array.from(await Qn(e))}}async function cr(e){let t=Z(e),n=await nr(t.context);if(!K(G(t.public_identity.context_binding_b64u,`scope.public_identity.context_binding_b64u`),n))throw Error(`scope.public_identity.context_binding_b64u does not match scope.context`);return t}function lr(e){let t=Q(e),n=[];return Y(n,q(`router-ab-ecdsa-derivation/normal-signing-request/v1`)),Y(n,ir(t.scope)),Y(n,q(t.request_id)),Y(n,q(t.operation_id)),Kn(n,t.operation_digests),n.push(...st(t.authorization)),n.push(...C(t.material_activation)),Y(n,q(t.client_presignature_id)),Yn(n,t.expires_at_ms),J(n,p(t.signing_digest_b64u)),Y(n,p(t.client_rerandomization_commitment32_b64u)),new Uint8Array(n)}async function ur(e){let t=Q(e);return await cr(t.scope),sr(lr(t))}function dr(e){let t=$(e),n=[];return Y(n,q(`router-ab-ecdsa-derivation/normal-signing-finalize-request/v1`)),Y(n,ir(t.scope)),Y(n,q(t.request_id)),Y(n,q(t.operation_id)),Kn(n,t.operation_digests),n.push(...st(t.authorization)),n.push(...C(t.material_activation)),Yn(n,t.expires_at_ms),J(n,p(t.signing_digest_b64u)),Y(n,q(t.server_presignature_id)),Y(n,p(t.client_signature_share32_b64u)),Y(n,p(t.client_rerandomization_contribution32_b64u)),new Uint8Array(n)}async function fr(e){let t=$(e);return await cr(t.scope),sr(dr(t))}function Z(e){let t=d(e,`scope`);return A(t,`scope`,[`wallet_id`,`ecdsa_threshold_key_id`,`signing_root_id`,`signing_root_version`,`context`,`public_identity`,`material_activation`,`signing_worker`,`activation_epoch`]),{wallet_id:j(t.wallet_id,`scope.wallet_id`),ecdsa_threshold_key_id:j(t.ecdsa_threshold_key_id,`scope.ecdsa_threshold_key_id`),signing_root_id:j(t.signing_root_id,`scope.signing_root_id`),signing_root_version:j(t.signing_root_version,`scope.signing_root_version`),context:B(t.context),public_identity:V(t.public_identity),material_activation:x(t.material_activation),signing_worker:fn(t.signing_worker),activation_epoch:M(t.activation_epoch,`scope.activation_epoch`)}}function pr(e){if(e==null)return null;let t=d(e,`routerAbEcdsaDerivationNormalSigning`);if(A(t,`routerAbEcdsaDerivationNormalSigning`,[`kind`,`scope`]),j(t.kind,`routerAbEcdsaDerivationNormalSigning.kind`)!==`router_ab_ecdsa_derivation_normal_signing_v1`)throw Error(`routerAbEcdsaDerivationNormalSigning.kind is not supported`);return{kind:`router_ab_ecdsa_derivation_normal_signing_v1`,scope:Z(t.scope)}}function mr(e){let t=pr(e);if(!t)throw Error(`Router A/B ECDSA derivation normal-signing state is required`);return t}function hr(e){let t=a([j(e.ecdsaThresholdKeyId,`ecdsaThresholdKeyId`),j(e.signingRootId,`signingRootId`),j(e.signingRootVersion,`signingRootVersion`),M(e.activationEpoch,`activationEpoch`)].join(`:`));if(!t.ok)throw Error(`activeStateId ${t.error.message}`);return t.value}function gr(e){return hr({ecdsaThresholdKeyId:e.scope.ecdsa_threshold_key_id,signingRootId:e.scope.signing_root_id,signingRootVersion:e.scope.signing_root_version,activationEpoch:e.scope.activation_epoch})}function _r(e,t){let n=d(e,t);return A(n,t,[`lane_digest_b64u`,`intent_digest_b64u`,`display_digest_b64u`]),{lane_digest_b64u:I(n.lane_digest_b64u,`${t}.lane_digest_b64u`,32),intent_digest_b64u:I(n.intent_digest_b64u,`${t}.intent_digest_b64u`,32),display_digest_b64u:I(n.display_digest_b64u,`${t}.display_digest_b64u`,32)}}function vr(e){return Q({scope:e.scope,request_id:e.requestId,operation_id:e.operationId,operation_digests:e.operationDigests,authorization:e.authorization,material_activation:e.materialActivation,client_presignature_id:e.clientPresignatureId,expires_at_ms:e.expiresAtMs,signing_digest_b64u:f(R(e.signingDigest32,`signingDigest32`,32)),client_rerandomization_commitment32_b64u:f(R(e.clientRerandomizationCommitment32,`clientRerandomizationCommitment32`,32))})}function Q(e){let t=d(e,`ecdsaSigningRequest`);A(t,`ecdsaSigningRequest`,[`scope`,`request_id`,`operation_id`,`operation_digests`,`authorization`,`material_activation`,`client_presignature_id`,`expires_at_ms`,`signing_digest_b64u`,`client_rerandomization_commitment32_b64u`]);let n={scope:Z(t.scope),request_id:j(t.request_id,`ecdsaSigningRequest.request_id`),operation_id:j(t.operation_id,`ecdsaSigningRequest.operation_id`),operation_digests:_r(t.operation_digests,`ecdsaSigningRequest.operation_digests`),authorization:b(t.authorization),material_activation:x(t.material_activation),client_presignature_id:j(t.client_presignature_id,`ecdsaSigningRequest.client_presignature_id`),expires_at_ms:N(t.expires_at_ms,`ecdsaSigningRequest.expires_at_ms`),signing_digest_b64u:I(t.signing_digest_b64u,`ecdsaSigningRequest.signing_digest_b64u`,32),client_rerandomization_commitment32_b64u:I(t.client_rerandomization_commitment32_b64u,`ecdsaSigningRequest.client_rerandomization_commitment32_b64u`,32)};if(n.operation_digests.intent_digest_b64u!==n.signing_digest_b64u)throw Error(`ecdsaSigningRequest intent digest must equal the admitted signing digest`);return n}function yr(e){let t=d(e,`webauthn_authentication`);A(t,`webauthn_authentication`,[`id`,`rawId`,`type`,`authenticatorAttachment`,`response`,`clientExtensionResults`]);let n=d(t.response,`webauthn_authentication.response`);A(n,`webauthn_authentication.response`,[`clientDataJSON`,`authenticatorData`,`signature`,`userHandle`]);let r=t.authenticatorAttachment===null?null:j(t.authenticatorAttachment,`webauthn_authentication.authenticatorAttachment`),i=n.userHandle===null?null:j(n.userHandle,`webauthn_authentication.response.userHandle`);return{id:j(t.id,`webauthn_authentication.id`),rawId:j(t.rawId,`webauthn_authentication.rawId`),type:j(t.type,`webauthn_authentication.type`),authenticatorAttachment:r,response:{clientDataJSON:j(n.clientDataJSON,`webauthn_authentication.response.clientDataJSON`),authenticatorData:j(n.authenticatorData,`webauthn_authentication.response.authenticatorData`),signature:j(n.signature,`webauthn_authentication.response.signature`),userHandle:i},clientExtensionResults:t.clientExtensionResults}}function br(e){let t=d(e,`operationStepUpAuthorizationRequest`);if(A(t,`operationStepUpAuthorizationRequest`,[`kind`,`operation`,`proof`]),t.kind!==`router_ab_ecdsa_operation_step_up_v1`)throw Error(`operationStepUpAuthorizationRequest.kind must be router_ab_ecdsa_operation_step_up_v1`);let n=xr(t.operation),r=d(t.proof,`operationStepUpAuthorizationRequest.proof`),i=zt(r.authority),a;switch(r.kind){case`passkey`:if(A(r,`operationStepUpAuthorizationRequest.proof`,[`kind`,`authority`,`webauthn_authentication`]),!i||!D(i))throw Error(`operationStepUpAuthorizationRequest.proof requires an exact passkey authority`);a={kind:`passkey`,authority:i,webauthn_authentication:yr(r.webauthn_authentication)};break;case`email_otp`:if(A(r,`operationStepUpAuthorizationRequest.proof`,[`kind`,`authority`,`challenge_id`,`otp_code`]),!i||!O(i))throw Error(`operationStepUpAuthorizationRequest.proof requires an exact Email OTP authority`);a={kind:`email_otp`,authority:i,challenge_id:j(r.challenge_id,`operationStepUpAuthorizationRequest.proof.challenge_id`),otp_code:j(r.otp_code,`operationStepUpAuthorizationRequest.proof.otp_code`)};break;default:throw Error(`operationStepUpAuthorizationRequest.proof.kind is invalid`)}return{kind:`router_ab_ecdsa_operation_step_up_v1`,operation:n,proof:a}}function xr(e){let t=d(e,`ecdsaOperationStepUpPreparation`);if(A(t,`operationStepUpGrantRequest.operation`,[`wallet_id`,`operation_kind`,`operation_id`,`operation_digests`,`material_activation`,`normal_signing_scope`,`signing_worker_id`,`key_handle`,`relayer_key_id`,`participant_ids`,`expires_at_ms`]),!Array.isArray(t.participant_ids)||t.participant_ids.length!==2||!t.participant_ids.every(e=>Number.isSafeInteger(e)&&e>0))throw Error(`operationStepUpGrantRequest.operation.participant_ids must contain two positive integers`);return{wallet_id:j(t.wallet_id,`operationStepUpGrantRequest.operation.wallet_id`),operation_kind:Sr(t.operation_kind),operation_id:j(t.operation_id,`operationStepUpGrantRequest.operation.operation_id`),operation_digests:_r(t.operation_digests,`operationStepUpGrantRequest.operation.operation_digests`),material_activation:x(t.material_activation),normal_signing_scope:Z(t.normal_signing_scope),signing_worker_id:j(t.signing_worker_id,`operationStepUpGrantRequest.operation.signing_worker_id`),key_handle:j(t.key_handle,`operationStepUpGrantRequest.operation.key_handle`),relayer_key_id:j(t.relayer_key_id,`operationStepUpGrantRequest.operation.relayer_key_id`),participant_ids:[Number(t.participant_ids[0]),Number(t.participant_ids[1])],expires_at_ms:N(t.expires_at_ms,`operationStepUpGrantRequest.operation.expires_at_ms`)}}function Sr(e){switch(e){case ve.signTransaction:case ve.exportKey:return e;default:throw Error(`operationStepUpGrantRequest.operation.operation_kind must be evm.sign_transaction or evm.export_key`)}}function Cr(e){return $({scope:e.scope,request_id:e.requestId,operation_id:e.operationId,operation_digests:e.operationDigests,authorization:e.authorization,material_activation:e.materialActivation,expires_at_ms:e.expiresAtMs,signing_digest_b64u:f(R(e.signingDigest32,`signingDigest32`,32)),server_presignature_id:e.serverPresignatureId,client_signature_share32_b64u:f(R(e.clientSignatureShare32,`clientSignatureShare32`,32)),client_rerandomization_contribution32_b64u:f(R(e.clientRerandomizationContribution32,`clientRerandomizationContribution32`,32))})}function $(e){let t=d(e,`ecdsaFinalizeCoreRequest`);return A(t,`ecdsaFinalizeCoreRequest`,[`scope`,`request_id`,`operation_id`,`operation_digests`,`authorization`,`material_activation`,`expires_at_ms`,`signing_digest_b64u`,`server_presignature_id`,`client_signature_share32_b64u`,`client_rerandomization_contribution32_b64u`]),wr(t)}function wr(e){let t={scope:Z(e.scope),request_id:j(e.request_id,`ecdsaFinalizeRequest.request_id`),operation_id:j(e.operation_id,`ecdsaFinalizeRequest.operation_id`),operation_digests:_r(e.operation_digests,`ecdsaFinalizeRequest.operation_digests`),authorization:b(e.authorization),material_activation:x(e.material_activation),expires_at_ms:N(e.expires_at_ms,`ecdsaFinalizeRequest.expires_at_ms`),signing_digest_b64u:I(e.signing_digest_b64u,`ecdsaFinalizeRequest.signing_digest_b64u`,32),server_presignature_id:j(e.server_presignature_id,`ecdsaFinalizeRequest.server_presignature_id`),client_signature_share32_b64u:I(e.client_signature_share32_b64u,`ecdsaFinalizeRequest.client_signature_share32_b64u`,32),client_rerandomization_contribution32_b64u:I(e.client_rerandomization_contribution32_b64u,`ecdsaFinalizeRequest.client_rerandomization_contribution32_b64u`,32)};if(t.operation_digests.intent_digest_b64u!==t.signing_digest_b64u)throw Error(`ecdsaFinalizeRequest intent digest must equal the admitted signing digest`);return t}function Tr(e){let t=d(e,`ecdsaPrepareResponse`);return A(t,`ecdsaPrepareResponse`,[`scope`,`request_id`,`request_digest`,`signing_digest`,`server_presignature_id`,`server_big_r33_b64u`,`signing_worker_rerandomization_contribution32_b64u`,`signature_scheme`,`prepared_at_ms`,`expires_at_ms`]),{scope:Z(t.scope),request_id:j(t.request_id,`ecdsaPrepareResponse.request_id`),request_digest:z(t.request_digest,`ecdsaPrepareResponse.request_digest`),signing_digest:z(t.signing_digest,`ecdsaPrepareResponse.signing_digest`),server_presignature_id:j(t.server_presignature_id,`ecdsaPrepareResponse.server_presignature_id`),server_big_r33_b64u:I(t.server_big_r33_b64u,`ecdsaPrepareResponse.server_big_r33_b64u`,33),signing_worker_rerandomization_contribution32_b64u:I(t.signing_worker_rerandomization_contribution32_b64u,`ecdsaPrepareResponse.signing_worker_rerandomization_contribution32_b64u`,32),signature_scheme:dn(t.signature_scheme,`ecdsaPrepareResponse.signature_scheme`),prepared_at_ms:N(t.prepared_at_ms,`ecdsaPrepareResponse.prepared_at_ms`),expires_at_ms:N(t.expires_at_ms,`ecdsaPrepareResponse.expires_at_ms`)}}async function Er(e,t){let n=Q(e),r=Tr(t);if(!or(r.scope,n.scope))throw Error(`ecdsaPrepareResponse.scope does not match request`);if(r.request_id!==n.request_id)throw Error(`ecdsaPrepareResponse.request_id does not match request`);if(r.server_presignature_id!==n.client_presignature_id)throw Error(`ecdsaPrepareResponse.server_presignature_id does not match request`);if(!K(r.signing_digest,G(n.signing_digest_b64u)))throw Error(`ecdsaPrepareResponse.signing_digest does not match request`);if(r.expires_at_ms!==n.expires_at_ms)throw Error(`ecdsaPrepareResponse.expires_at_ms does not match request`);if(!K(r.request_digest,await ur(n)))throw Error(`ecdsaPrepareResponse.request_digest does not match request`);return r}function Dr(e){let t=d(e,`ecdsaSigningResponse`);return A(t,`ecdsaSigningResponse`,[`scope`,`request_id`,`request_digest`,`signing_digest`,`signature_scheme`,`signature65_b64u`]),{scope:Z(t.scope),request_id:j(t.request_id,`ecdsaSigningResponse.request_id`),request_digest:z(t.request_digest,`ecdsaSigningResponse.request_digest`),signing_digest:z(t.signing_digest,`ecdsaSigningResponse.signing_digest`),signature_scheme:dn(t.signature_scheme,`ecdsaSigningResponse.signature_scheme`),signature65_b64u:I(t.signature65_b64u,`ecdsaSigningResponse.signature65_b64u`,65)}}async function Or(e,t){let n=$(e),r=Dr(t);if(!or(r.scope,n.scope))throw Error(`ecdsaSigningResponse.scope does not match request`);if(r.request_id!==n.request_id)throw Error(`ecdsaSigningResponse.request_id does not match request`);if(!K(r.signing_digest,G(n.signing_digest_b64u)))throw Error(`ecdsaSigningResponse.signing_digest does not match request`);if(!K(r.request_digest,await fr(n)))throw Error(`ecdsaSigningResponse.request_digest does not match request`);return r}let kr=function(e){return e.Required=`required`,e.Preferred=`preferred`,e.Discouraged=`discouraged`,e}({});function Ar(e){let t=e.originPolicy?.multiple;return{userVerification:e.userVerification,originPolicy:{single:e.originPolicy?.single,all_subdomains:e.originPolicy?.all_subdomains,multiple:Array.isArray(t)?[...t]:void 0}}}const jr=2160*60*6e4;export{Bt as $,h as $t,On as A,et as At,Un as B,Ge as Bt,Pn as C,x as Ct,An as D,w as Dt,kn as E,it as Et,X as F,Ve as Ft,H as G,Re as Gt,W as H,We as Ht,$n as I,ke as It,It as J,Ie as Jt,Nt as K,De as Kt,Vn as L,_ as Lt,gr as M,Ye as Mt,fr as N,je as Nt,yn as O,nt as Ot,ur as P,Le as Pt,D as Q,Ne as Qt,Mn as R,Ae as Rt,xr as S,C as St,Rn as T,at as Tt,Hn as U,Ke as Ut,Wn as V,Ue as Vt,jn as W,v as Wt,Ft as X,Me as Xt,Pt as Y,Oe as Yt,O as Z,Pe as Zt,pr as _,pt as _t,Xt as a,Tt as at,br as b,ft as bt,Yt as c,_t as ct,vr as d,Ct as dt,Te as en,Vt as et,tn as f,xt as ft,Z as g,mt as gt,Or as h,ht,Kt as i,Wt as it,mr as j,Ze as jt,xn as k,qe as kt,Gt as l,wt as lt,Er as m,yt as mt,kr as n,g as nn,Dt as nt,qt as o,bt as ot,zn as p,St as pt,jt as q,Fe as qt,Ar as r,we as rn,Et as rt,Jt as s,gt as st,jr as t,Ce as tn,zt as tt,Cr as u,vt as ut,U as v,ct as vt,Ln as w,b as wt,en as x,ut as xt,Sn as y,dt as yt,or as z,He as zt};
@@ -1 +0,0 @@
1
- import{y as e}from"./domainIds-GDzjOs6i.js";const t=`seams/router-ab-ecdsa-presign/fixed-2of2/v1`;function n(e,t){if(typeof e!=`string`||!e)throw Error(`${t} is required`);if(e.trim()!==e)throw Error(`${t} must be canonical`);return e}function r(e){if(typeof e!=`object`||!e)throw Error(`poolIdentity is required`);let r=e;if(r.pairRole!==`client`)throw Error(`poolIdentity.pairRole must be client`);if(r.protocolId!==`seams/router-ab-ecdsa-presign/fixed-2of2/v1`)throw Error(`poolIdentity.protocolId is unsupported`);let a=n(r.relayerUrl,`poolIdentity.relayerUrl`);if(a.replace(/\/+$/g,``)!==a)throw Error(`poolIdentity.relayerUrl must be canonical`);return{relayerUrl:a,materialActivationB64u:n(r.materialActivationB64u,`poolIdentity.materialActivationB64u`),materialActivationId:n(r.materialActivationId,`poolIdentity.materialActivationId`),capability:n(r.capability,`poolIdentity.capability`),keyBinding:n(r.keyBinding,`poolIdentity.keyBinding`),walletId:n(r.walletId,`poolIdentity.walletId`),signingScopeB64u:n(r.signingScopeB64u,`poolIdentity.signingScopeB64u`),pairRole:`client`,keyEpoch:n(r.keyEpoch,`poolIdentity.keyEpoch`),activationEpoch:i(r.activationEpoch),protocolId:t}}function i(t){let n=e(t);if(!n.ok)throw Error(`poolIdentity.activationEpoch is invalid`);return n.value}function a(e,t){return e.relayerUrl===t.relayerUrl&&e.materialActivationB64u===t.materialActivationB64u&&e.materialActivationId===t.materialActivationId&&e.capability===t.capability&&e.keyBinding===t.keyBinding&&e.walletId===t.walletId&&e.signingScopeB64u===t.signingScopeB64u&&e.pairRole===t.pairRole&&e.keyEpoch===t.keyEpoch&&e.activationEpoch===t.activationEpoch&&e.protocolId===t.protocolId}function o(e){return[e.protocolId,e.relayerUrl,e.signingScopeB64u,e.materialActivationB64u].join(`|`)}export{r as i,o as n,a as r,t};
@@ -1 +0,0 @@
1
- import{t as e}from"./keccak-zexutGfG.js";import{a as t,i as n,n as r,r as i,t as a}from"./bytes-t5S5mkat.js";const o=new WeakMap;function s(e){return i(e)||null}function c(e){let t=[];for(let n of e){if(!n||typeof n!=`object`)continue;let e=String(n.type||`function`).trim();if(e!==``&&e!==`function`)continue;let r=String(n.name||``).trim();if(!r)continue;let i=n.inputs,a=Array.isArray(i)?i:[],o=u(`${r}(${a.map(e=>d(e)).join(`,`)})`);if(!o)continue;let s=f(a);t.push({name:r,selector:o,inputs:s})}return t}function l(e){if(!Array.isArray(e)||e.length===0)return;let t=o.get(e);if(t)return t;let n=c(e);if(!n.length)return;let r=new Map;for(let e of n)r.has(e.selector)||r.set(e.selector,e);let i={bySelector:r};return o.set(e,i),i}function u(n){let r=String(n||``).trim();return r&&t(a(e(new TextEncoder().encode(r)).slice(0,4)))||null}function d(e){let t=String(e?.type||``).trim().toLowerCase();if(!t)return``;let n=Array.isArray(e?.components)?e.components:[];if(t.startsWith(`tuple`)){let e=t.slice(5);return`${`(${n.map(e=>d(e)).join(`,`)})`}${e}`}return t}function f(e){let t=[];for(let n=0;n<e.length;n+=1){let r=e[n],i=String(r?.type||``).trim().toLowerCase();if(!i)continue;let a=p({type:i,components:r?.components});if(!a)continue;let o=String(r?.name||``).trim();t.push({name:o||`arg${n}`,typeName:i,typeNode:a})}return t}function p(e){let t=String(e.type||``).trim().toLowerCase();if(!t)return null;let n=t,r=[];for(;n.endsWith(`]`);){let e=n.lastIndexOf(`[`);if(e<0)return null;let t=n.slice(e+1,-1).trim();if(!/^\d*$/.test(t))return null;let i=t===``?null:Number.parseInt(t,10);if(i!=null&&(!Number.isFinite(i)||i<0))return null;r.push(i),n=n.slice(0,e)}let i=null;if(n===`tuple`){let t=f(Array.isArray(e.components)?e.components:[]);i={kind:`tuple`,canonicalType:`(${t.map(e=>e.typeNode.canonicalType).join(`,`)})`,dynamic:t.some(e=>e.typeNode.dynamic),components:t}}else i={kind:`scalar`,typeName:n,canonicalType:n,dynamic:n===`bytes`||n===`string`};for(let e=r.length-1;e>=0;--e){let t=r[e];i={kind:`array`,canonicalType:`${i.canonicalType}[${t==null?``:String(t)}]`,dynamic:t==null||i.dynamic,item:i,length:t}}return i}function m(e,t){return!Number.isInteger(t)||t<0||t+32>e.length?null:e.slice(t,t+32)}function h(e,t){let n=m(e,t);if(!n)return null;let r=0n;for(let e of n)r=(r<<8n)+BigInt(e);return r}function g(e,t){let n=h(e,t);return n==null||n>BigInt(2**53-1)||n<0n?null:Number(n)}function _(e){return e.dynamic||e.kind===`scalar`?1:e.kind===`tuple`?e.components.reduce((e,t)=>e+_(t.typeNode),0):e.length==null?1:e.length*_(e.item)}function v(e,t,n){let r=String(e||``).trim().toLowerCase();if(!r)return null;if(r===`bytes`){let e=g(t,n);if(e==null)return null;let r=n+32,i=r+e;return i>t.length?null:a(t.slice(r,i)).toLowerCase()}if(r===`string`){let e=g(t,n);if(e==null)return null;let r=n+32,i=r+e;if(i>t.length)return null;let o=t.slice(r,i);try{return new TextDecoder().decode(o)}catch{return a(o).toLowerCase()}}let i=m(t,n);if(!i)return null;let o=h(t,n);if(o==null)return null;if(r===`bool`)return o!==0n;if(r===`address`)return a(i.slice(12)).toLowerCase();if(r===`function`)return a(i.slice(0,24)).toLowerCase();let s=r.match(/^bytes(\d{1,2})$/);if(s){let e=Number.parseInt(s[1],10);return!Number.isFinite(e)||e<=0||e>32?null:a(i.slice(0,e)).toLowerCase()}if(r.match(/^uint(\d{0,3})$/))return o.toString(10);let c=r.match(/^int(\d{0,3})$/);if(c){let e=c[1],t=e?Number.parseInt(e,10):256;if(!Number.isFinite(t)||t<=0||t>256||t%8!=0)return o.toString(10);let n=BigInt(t),r=1n<<n;return(o>=1n<<n-1n?o-r:o).toString(10)}return a(i).toLowerCase()}function y(e,t,n){if(e.kind===`scalar`)return v(e.typeName,t,n);if(e.kind===`tuple`){let r=b(e.components,t,n);if(!r)return null;let i={};for(let t=0;t<e.components.length;t+=1){let n=e.components[t],a=String(n.name||``).trim()||`item${t}`,o=a,s=1;for(;Object.prototype.hasOwnProperty.call(i,o);)s+=1,o=`${a}_${s}`;i[o]=r[t]}return i}let r=e.length,i=r==null,a=i?g(t,n):r;if(a==null||a<0||a>256)return null;let o=i?n+32:n,s=[];if(e.item.dynamic){for(let n=0;n<a;n+=1){let r=g(t,o+n*32);if(r==null)return null;let i=y(e.item,t,o+r);if(i==null)return null;s.push(i)}return s}let c=_(e.item);for(let n=0;n<a;n+=1){let r=o+n*c*32,i=y(e.item,t,r);if(i==null)return null;s.push(i)}return s}function b(e,t,n){let r=0,i=[];for(let t of e)i.push(r*32),r+=t.typeNode.dynamic?1:_(t.typeNode);let a=[];for(let r=0;r<e.length;r+=1){let o=e[r],s=n+i[r];if(o.typeNode.dynamic){let e=g(t,s);if(e==null)return null;let r=y(o.typeNode,t,n+e);if(r==null)return null;a.push(r);continue}let c=y(o.typeNode,t,s);if(c==null)return null;a.push(c)}return a}function x(e){if(!e.length)return;let t={};for(let n=0;n<e.length;n+=1){let r=e[n],i=String(r.key||``).trim()||`arg${n}`,a=i,o=2;for(;Object.prototype.hasOwnProperty.call(t,a);)a=`${i}_${o}`,o+=1;t[a]=r.value}try{return JSON.stringify(t,null,2)}catch{return}}function S(e){let t=s(e.dataHex);if(!t)return;let i=l(e.abi);if(!i)return;let a=i.bySelector.get(t);if(!a)return;let o=n(e.dataHex,{lowercase:!0}),c;try{let e=r(o);if(e.length<4)return{functionLabel:`${a.name}()`};c=e.slice(4)}catch{return{functionLabel:`${a.name}()`}}let u=b(a.inputs,c,0);if(!u)return{functionLabel:`${a.name}()`};let d=a.inputs.map((e,t)=>({key:String(e.name||``).trim()||`arg${t}`,value:u[t]}));return{functionLabel:`${a.name}()`,decodedArgumentsJsonText:x(d)}}function C(e){return e.kind===`generic.contractCall`}function w(e,t){let n=String(e||``).trim(),r=n.match(/^Calling\s+.+?\s+using\s+(.+)$/i);return r?`Calling ${t} using ${r[1]}`:n}function T(e){return String(e.label||``).trim().toLowerCase()===`data`}function E(e){let t=Array.isArray(e.fields)?[...e.fields]:[],n=t.findIndex(e=>T(e)),r=n>=0?t[n]:void 0,i=String(r?.value||``).trim()||String(e.fallbackRawDataHex||``).trim(),a={...r||{label:`Data`},value:e.decodedArgsJsonText,renderAs:`file-content`,hideChevron:typeof r?.hideChevron==`boolean`?r.hideChevron:!0,contentVariants:{decoded:e.decodedArgsJsonText,raw:i,defaultMode:`decoded`}};return n>=0?(t[n]=a,t):(t.push(a),t)}function D(e){let t=e.abiDecodeHint;if(!t||!Array.isArray(t.abi)||t.abi.length===0)return e;let n=S({dataHex:t.dataHex,abi:t.abi});if(!n)return e;let r=n.decodedArgumentsJsonText?E({fields:e.fields,decodedArgsJsonText:n.decodedArgumentsJsonText,fallbackRawDataHex:t.dataHex}):e.fields;return{...e,label:w(e.label,n.functionLabel),fields:r}}function O(e){let t=Array.isArray(e.children)?e.children.map(e=>O(e)):e.children,n=t===e.children?e:{...e,children:t};return C(n)?D(n):n}function k(e){if(!Array.isArray(e.operations)||e.operations.length===0)return e;let t=e.operations.map(e=>O(e));return{...e,operations:t}}export{k as enrichDisplayModelWithAbi};
@@ -1 +0,0 @@
1
- import{D as e,M as t,O as n,T as r,_ as i,d as a,h as o,k as s,l as c,n as l,r as u,u as ee}from"./domainIds-GDzjOs6i.js";import{_ as d,m as te,v as f}from"./validation-dC1-_uyG.js";import{i as p,r as m}from"./base64-ojm5DKcF.js";import{A as ne,C as re,E as h,F as g,I as _,O as v,S as ie,_ as ae,b as y,d as oe,v as se,x as ce}from"./sessionPolicy-CNVK7nJ6.js";import{$t as b,At as le,Bt as ue,Ct as de,Dt as fe,Ft as x,Gt as pe,Ht as me,It as S,Jt as C,Kt as w,Lt as T,Nt as he,Ot as ge,Pt as _e,Qt as ve,Rt as E,Tt as ye,Ut as D,Vt as O,Wt as k,Xt as be,Yt as A,Zt as xe,en as Se,j as Ce,qt as j,rn as we,tn as M,xt as Te,zt as Ee}from"./ecdsaPresignLifecycle-CQnCxSlq.js";import{d as De,f as Oe,h as ke,l as Ae,m as je,p as Me}from"./capabilityKinds-XaXXiD2B.js";import{f as N,m as Ne}from"./chains-yAls2d9X.js";import{a as Pe,o as Fe,r as P}from"./canonicalPrimitives-MPGET2cl.js";import{c as Ie,l as Le}from"./ecdsaChainTarget-CRcRR78w.js";import{n as Re}from"./signerDomain-BhUTzDmF.js";import{c as ze,s as Be}from"./accountIds-C3Ihsd2c.js";import{_ as Ve,b as He,d as Ue,g as F,h as We,u as Ge,v as Ke,w as qe,x as Je,y as I}from"./walletAuthority-CoWSeqvQ.js";import{i as Ye}from"./registrationIds-BIel5S0i.js";import{r as Xe}from"./types-M7vxrYtJ.js";function Ze(e){throw Error(`[LinkSessionStateV1] unsupported state: ${String(e)}`)}const Qe=`x25519-hkdf-sha256-chacha20poly1305-v1`,$e=/^[A-Za-z0-9_-]+$/,et=[`kind`,`linkSessionId`,`walletId`,`walletKeyId`,`enrollmentId`,`deviceId`,`transferAlg`,`applicationBindingDigestB64u`,`registeredPublicKeyB64u`,`targetFactor`,`revocationEpoch`,`recipientPublicKeyB64u`,`registeredAtMs`],tt=[`kind`,`linkSessionId`,`walletId`,`walletKeyId`,`enrollmentId`,`deviceId`,`transferAlg`,`applicationBindingDigestB64u`,`registeredPublicKeyB64u`,`targetFactor`,`revocationEpoch`,`recipientPublicKeyB64u`,`ephemeralPublicKeyB64u`,`nonceB64u`,`sealedExportRootB64u`,`bindingDigestB64u`,`ciphertextDigestB64u`,`sealedAtMs`];function nt(e,t=`recipientPublicKeyB64u`){if(typeof e!=`string`||!$e.test(e))throw Error(`${t} must be unpadded base64url`);let n;try{n=m(e)}catch{throw Error(`${t} must be valid base64url`)}if(p(n)!==e)throw Error(`${t} must be canonical base64url`);if(n.length!==32)throw Error(`${t} must decode to a 32-byte X25519 public key`);return e}function rt(e){return{linkSessionId:e.linkSessionId,walletId:e.walletId,walletKeyId:e.walletKeyId,targetFactor:e.targetFactor,enrollmentId:e.enrollmentId,deviceId:e.deviceId,revocationEpoch:e.revocationEpoch,applicationBindingDigestB64u:e.applicationBindingDigestB64u,registeredPublicKeyB64u:e.registeredPublicKeyB64u,recipientPublicKeyB64u:e.recipientPublicKeyB64u}}function it(e){return JSON.stringify({linkSessionId:String(e.linkSessionId),walletId:String(e.walletId),walletKeyId:String(e.walletKeyId),targetFactor:e.targetFactor,enrollmentId:String(e.enrollmentId),deviceId:String(e.deviceId),revocationEpoch:e.revocationEpoch,applicationBindingDigestB64u:String(e.applicationBindingDigestB64u),registeredPublicKeyB64u:String(e.registeredPublicKeyB64u),recipientPublicKeyB64u:String(e.recipientPublicKeyB64u)})}function at(e){let t=ct(e,et,`LinkedDeviceEd25519ExportRootRecipientV1`);if(t.kind!==`linked_device_ed25519_export_root_recipient_v1`)throw Error(`LinkedDeviceEd25519ExportRootRecipientV1.kind is invalid`);return lt(t.transferAlg,`LinkedDeviceEd25519ExportRootRecipientV1.transferAlg`),{kind:`linked_device_ed25519_export_root_recipient_v1`,linkSessionId:v(c(t.linkSessionId),`LinkedDeviceEd25519ExportRootRecipientV1.linkSessionId`),walletId:v(n(t.walletId),`walletId`),walletKeyId:v(s(t.walletKeyId),`walletKeyId`),enrollmentId:v(ee(t.enrollmentId),`enrollmentId`),deviceId:v(a(t.deviceId),`deviceId`),transferAlg:Qe,applicationBindingDigestB64u:y(t.applicationBindingDigestB64u,`applicationBindingDigestB64u`),registeredPublicKeyB64u:ce(t.registeredPublicKeyB64u,`registeredPublicKeyB64u`),targetFactor:st(t.targetFactor),revocationEpoch:ut(t.revocationEpoch,`revocationEpoch`),recipientPublicKeyB64u:nt(t.recipientPublicKeyB64u,`recipientPublicKeyB64u`),registeredAtMs:dt(t.registeredAtMs,`registeredAtMs`)}}function ot(e){let t=ct(e,tt,`LinkedDeviceEd25519ExportRootPackageV1`);if(t.kind!==`linked_device_ed25519_export_root_package_v1`)throw Error(`LinkedDeviceEd25519ExportRootPackageV1.kind is invalid`);lt(t.transferAlg,`LinkedDeviceEd25519ExportRootPackageV1.transferAlg`);let r=nt(t.recipientPublicKeyB64u,`recipientPublicKeyB64u`),i=nt(t.ephemeralPublicKeyB64u,`ephemeralPublicKeyB64u`);if(r===i)throw Error(`ephemeralPublicKeyB64u repeats the recipient key`);return{kind:`linked_device_ed25519_export_root_package_v1`,linkSessionId:v(c(t.linkSessionId),`linkSessionId`),walletId:v(n(t.walletId),`walletId`),walletKeyId:v(s(t.walletKeyId),`walletKeyId`),enrollmentId:v(ee(t.enrollmentId),`enrollmentId`),deviceId:v(a(t.deviceId),`deviceId`),transferAlg:Qe,applicationBindingDigestB64u:y(t.applicationBindingDigestB64u,`applicationBindingDigestB64u`),registeredPublicKeyB64u:ce(t.registeredPublicKeyB64u,`registeredPublicKeyB64u`),targetFactor:st(t.targetFactor),revocationEpoch:ut(t.revocationEpoch,`revocationEpoch`),recipientPublicKeyB64u:r,ephemeralPublicKeyB64u:i,nonceB64u:re(t.nonceB64u,`nonceB64u`),sealedExportRootB64u:ie(t.sealedExportRootB64u,`sealedExportRootB64u`),bindingDigestB64u:y(t.bindingDigestB64u,`bindingDigestB64u`),ciphertextDigestB64u:y(t.ciphertextDigestB64u,`ciphertextDigestB64u`),sealedAtMs:dt(t.sealedAtMs,`sealedAtMs`)}}function st(e){switch(ct(e,[`kind`],`targetFactor`).kind){case`passkey_prf`:return{kind:`passkey_prf`};case`email_otp`:return{kind:`email_otp`};default:throw Error(`targetFactor.kind is unsupported`)}}function ct(e,t,n){let r=d(e,n);_(r,t,n);for(let e of t)if(r[e]===void 0)throw Error(`${n}.${e} is required`);return r}function lt(e,t){if(e!==`x25519-hkdf-sha256-chacha20poly1305-v1`)throw Error(`${t} must be ${Qe}`)}function ut(e,t){if(typeof e!=`number`||!Number.isSafeInteger(e)||e<0)throw Error(`${t} must be a non-negative safe integer`);return e}function dt(e,t){if(typeof e!=`number`||!Number.isSafeInteger(e)||e<=0)throw Error(`${t} must be a positive unix-millisecond timestamp`);return e}function L(e,t){if(typeof e!=`object`||!e||Array.isArray(e))throw Error(`${t} must be an object`);return e}function R(e,t){if(typeof e!=`string`)throw Error(`${t} must be a string`);let n=e.trim();if(!n)throw Error(`${t} must not be empty`);if(n!==e)throw Error(`${t} must not be padded with whitespace`);return n}function ft(e,n){let r=t(R(e,n));if(!r.ok)throw Error(`${n} is invalid: ${r.error.message}`);return r.value}function z(e,t,n){if(e!==t)throw Error(`${n} must be ${String(t)}`);return t}function pt(e){let t=`WalletAddAuthMethodRegistrationOptions`,n=L(e,t);z(n.kind,`webauthn_add_auth_method_registration_v1`,`${t}.kind`);let r=L(n.user,`${t}.user`),i=L(n.authenticatorSelection,`${t}.authenticatorSelection`),a=L(L(L(n.extensions,`${t}.extensions`).prf,`${t}.extensions.prf`).eval,`${t}.extensions.prf.eval`);if(!Array.isArray(n.pubKeyCredParams)||n.pubKeyCredParams.length!==2)throw Error(`${t}.pubKeyCredParams must list exactly two algorithms`);let[o,s]=n.pubKeyCredParams;if(z(L(o,`${t}.pubKeyCredParams[0]`).type,`public-key`,`${t}.pubKeyCredParams[0].type`),z(L(o,`${t}.pubKeyCredParams[0]`).alg,-7,`${t}.pubKeyCredParams[0].alg`),z(L(s,`${t}.pubKeyCredParams[1]`).type,`public-key`,`${t}.pubKeyCredParams[1].type`),z(L(s,`${t}.pubKeyCredParams[1]`).alg,-257,`${t}.pubKeyCredParams[1].alg`),!Array.isArray(n.excludeCredentials))throw Error(`${t}.excludeCredentials must be an array`);let c=n.excludeCredentials.map((e,n)=>{let r=L(e,`${t}.excludeCredentials[${n}]`);return{type:z(r.type,`public-key`,`${t}.excludeCredentials[${n}].type`),id:R(r.id,`${t}.excludeCredentials[${n}].id`)}}),l=n.timeoutMs;if(typeof l!=`number`||!Number.isSafeInteger(l)||l<=0)throw Error(`${t}.timeoutMs must be a positive safe integer`);return{kind:`webauthn_add_auth_method_registration_v1`,challengeId:R(n.challengeId,`${t}.challengeId`),challengeB64u:R(n.challengeB64u,`${t}.challengeB64u`),rpId:ft(n.rpId,`${t}.rpId`),user:{idB64u:R(r.idB64u,`${t}.user.idB64u`),name:R(r.name,`${t}.user.name`),displayName:R(r.displayName,`${t}.user.displayName`)},pubKeyCredParams:[{type:`public-key`,alg:-7},{type:`public-key`,alg:-257}],authenticatorSelection:{residentKey:z(i.residentKey,`required`,`${t}.authenticatorSelection.residentKey`),userVerification:z(i.userVerification,`preferred`,`${t}.authenticatorSelection.userVerification`)},timeoutMs:l,attestation:z(n.attestation,`none`,`${t}.attestation`),extensions:{prf:{eval:{firstB64u:R(a.firstB64u,`${t}.extensions.prf.eval.firstB64u`),secondB64u:R(a.secondB64u,`${t}.extensions.prf.eval.secondB64u`)}}},excludeCredentials:c}}const mt=new TextEncoder;function B(e,t){if(typeof e!=`string`||e.length===0)throw Error(`${t} must be a non-empty visible ASCII string`);for(let n=0;n<e.length;n+=1){let r=e.charCodeAt(n);if(r<33||r>126)throw Error(`${t} must contain visible ASCII bytes`)}return e}function ht(e,t){if(typeof e!=`number`||!Number.isInteger(e)||e<0||e>255)throw Error(`${t} must be a byte`);return e}function gt(e,t,n,r){if(!Array.isArray(e))throw Error(`${t} must be a byte array`);if(e.length<n||e.length>r)throw Error(`${t} has an invalid length`);let i=[];for(let n=0;n<e.length;n+=1)i.push(ht(e[n],`${t}[${n}]`));return i}function V(e,t,n){let r=gt(e,t,32,32);if(n&&_t(r))throw Error(`${t} must be nonzero`);return r}function _t(e){for(let t of e)if(t!==0)return!1;return!0}function H(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n+=1)if(e[n]!==t[n])return!1;return!0}function vt(e){let t=new Uint8Array(4);return new DataView(t.buffer).setUint32(0,e,!1),t}function yt(e){let t=0;for(let n of e)t+=n.length;let n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}function bt(e){return yt([vt(e.length),e])}function xt(e,t){return yt([bt(mt.encode(e)),bt(t)])}async function St(e){let t=await globalThis.crypto.subtle.digest(`SHA-256`,e);return new Uint8Array(t)}async function Ct(e){let t=yt([bt(mt.encode(`seams/router-ab/ed25519-yao/application-binding/v1`)),xt(`walletId`,mt.encode(e.wallet_id)),xt(`nearEd25519SigningKeyId`,mt.encode(e.near_ed25519_signing_key_id)),xt(`signingRootId`,mt.encode(e.signing_root_id)),xt(`keyCreationSignerSlot`,vt(e.key_creation_signer_slot))]);return Array.from(await St(t))}const wt=`/router-ab/ed25519/yao/registration/admit`,Tt=`/router-ab/ed25519/yao/registration/execute`,Et=`/router-ab/ed25519/yao/recovery/admit`,Dt=`/router-ab/ed25519/yao/recovery/execute`,Ot=`/router-ab/ed25519/yao/recovery/activate`,kt=`x-seams-wallet-recovery-challenge-id`,At=`/router-ab/ed25519/yao/recovery/bootstrap`,jt=`router_ab_ed25519_yao_email_otp_recovery_v1`,Mt=`/router-ab/ed25519/yao/export/admit`,Nt=`/router-ab/ed25519/yao/export/execute`,Pt=64*1024;function Ft(e,t){return e.operation===t.operation&&U(e.session_id,t.session_id)&&U(e.stable_key_context_binding,t.stable_key_context_binding)&&fe(e.material_activation,t.material_activation)&&e.lifecycle.lifecycle_id===t.lifecycle.lifecycle_id&&e.lifecycle.work_kind===t.lifecycle.work_kind&&e.lifecycle.primitive_request_kind===t.lifecycle.primitive_request_kind&&e.lifecycle.root_share_epoch===t.lifecycle.root_share_epoch&&e.lifecycle.account_id===t.lifecycle.account_id&&e.lifecycle.session_id===t.lifecycle.session_id&&e.lifecycle.signer_set_id===t.lifecycle.signer_set_id&&e.lifecycle.selected_server_id===t.lifecycle.selected_server_id}function U(e,t){return e.length===t.length&&e.every((e,n)=>e===t[n])}function It(e,t){return e[0]===t[0]&&e[1]===t[1]}function Lt(e,t){return e.lifecycle_id===t.lifecycle_id&&e.root_share_epoch===t.root_share_epoch&&e.account_id===t.account_id&&e.threshold_session_id===t.threshold_session_id&&e.signer_set_id===t.signer_set_id&&e.signing_worker_id===t.signing_worker_id&&fe(e.material_activation,t.material_activation)}function Rt(e,t){return e.wallet_id===t.wallet_id&&e.near_ed25519_signing_key_id===t.near_ed25519_signing_key_id&&e.signing_root_id===t.signing_root_id&&e.key_creation_signer_slot===t.key_creation_signer_slot}function zt(e,t){return Lt(e.scope,t.scope)&&Rt(e.application_binding,t.application_binding)&&It(e.participant_ids,t.participant_ids)}const Bt=`registration_prepare`,Vt=`registration`,Ht=`recovery`,Ut=`recovery`,Wt=`key_export`,Gt=`export`;function W(e,t,n){let r=new Set(n);for(let n of Object.keys(e))if(!r.has(n))throw Error(`${t}.${n} is not a supported field`);for(let r of n)if(!Object.hasOwn(e,r))throw Error(`${t}.${r} is required`)}function Kt(e,t){if(!Number.isInteger(e)||typeof e!=`number`||e<=0||e>4294967295)throw Error(`${t} must be a positive u32`);return e}function qt(e,t){if(typeof e!=`number`||!Number.isSafeInteger(e)||e<=0)throw Error(`${t} must be a positive safe integer`);return e}function Jt(e,t){switch(e){case`registration`:case`recovery`:case`refresh`:case`export`:case`lane_provisioning`:case`lane_refresh`:return e;default:throw Error(`${t} is invalid`)}}function Yt(e,t){switch(e){case`deriver_a`:case`deriver_b`:return e;default:throw Error(`${t} is invalid`)}}function Xt(e,t){switch(e){case`activation`:case`export`:return e;default:throw Error(`${t} is invalid`)}}function Zt(e,t){switch(e){case`activation_client`:case`activation_signing_worker`:case`export_client`:return e;default:throw Error(`${t} is invalid`)}}function Qt(e,t){switch(e){case`registration_prepare`:case`key_export`:case`recovery`:case`server_share_refresh`:return e;default:throw Error(`${t} is invalid`)}}function $t(e,t){switch(e){case`registration`:case`recovery`:case`export`:case`refresh`:return e;default:throw Error(`${t} is invalid`)}}function en(e){let t=d(e,`application_binding`);return W(t,`application_binding`,[`wallet_id`,`near_ed25519_signing_key_id`,`signing_root_id`,`key_creation_signer_slot`]),{wallet_id:B(t.wallet_id,`application_binding.wallet_id`),near_ed25519_signing_key_id:B(t.near_ed25519_signing_key_id,`application_binding.near_ed25519_signing_key_id`),signing_root_id:B(t.signing_root_id,`application_binding.signing_root_id`),key_creation_signer_slot:Kt(t.key_creation_signer_slot,`application_binding.key_creation_signer_slot`)}}function tn(e){let t=d(e,`scope`);W(t,`scope`,[`lifecycle_id`,`root_share_epoch`,`account_id`,`threshold_session_id`,`signer_set_id`,`signing_worker_id`,`material_activation`]);let n=B(t.account_id,`scope.account_id`),r=B(t.signing_worker_id,`scope.signing_worker_id`),i=de(t.material_activation);if(i.material_owner!==n||i.signing_worker!==r)throw Error(`scope.material_activation does not match the lifecycle owner and worker`);return{lifecycle_id:B(t.lifecycle_id,`scope.lifecycle_id`),root_share_epoch:B(t.root_share_epoch,`scope.root_share_epoch`),account_id:n,threshold_session_id:B(t.threshold_session_id,`scope.threshold_session_id`),signer_set_id:B(t.signer_set_id,`scope.signer_set_id`),signing_worker_id:r,material_activation:i}}function nn(e){if(!Array.isArray(e)||e.length!==2)throw Error(`participant_ids must contain exactly two values`);let t=Kt(e[0],`participant_ids[0]`),n=Kt(e[1],`participant_ids[1]`);if(t>65535||n>65535||t>=n)throw Error(`participant_ids must be distinct, nonzero, ascending u16 values`);return[t,n]}function rn(e){return nn(e)}function an(e){let t=d(e,`binding.lifecycle`);W(t,`binding.lifecycle`,[`lifecycle_id`,`work_kind`,`primitive_request_kind`,`root_share_epoch`,`account_id`,`session_id`,`signer_set_id`,`selected_server_id`]);let n={lifecycle_id:B(t.lifecycle_id,`binding.lifecycle.lifecycle_id`),work_kind:Qt(t.work_kind,`binding.lifecycle.work_kind`),primitive_request_kind:$t(t.primitive_request_kind,`binding.lifecycle.primitive_request_kind`),root_share_epoch:B(t.root_share_epoch,`binding.lifecycle.root_share_epoch`),account_id:B(t.account_id,`binding.lifecycle.account_id`),session_id:B(t.session_id,`binding.lifecycle.session_id`),signer_set_id:B(t.signer_set_id,`binding.lifecycle.signer_set_id`),selected_server_id:B(t.selected_server_id,`binding.lifecycle.selected_server_id`)};if(n.work_kind===Bt&&n.primitive_request_kind!==Vt||n.work_kind===Ht&&n.primitive_request_kind!==Ut||n.work_kind===Wt&&n.primitive_request_kind!==Gt)throw Error(`binding.lifecycle primitive request kind does not match its work kind`);return n}function on(e){let t=d(e,`binding`);W(t,`binding`,[`lifecycle`,`operation`,`session_id`,`stable_key_context_binding`,`material_activation`]);let n={lifecycle:an(t.lifecycle),operation:Jt(t.operation,`binding.operation`),session_id:V(t.session_id,`binding.session_id`,!0),stable_key_context_binding:V(t.stable_key_context_binding,`binding.stable_key_context_binding`,!1),material_activation:de(t.material_activation)};if(n.operation===`registration`&&n.lifecycle.work_kind!==Bt||n.operation===`recovery`&&n.lifecycle.work_kind!==Ht||n.operation===`export`&&n.lifecycle.work_kind!==Wt)throw Error(`binding operation does not match its lifecycle work kind`);if(n.material_activation.material_owner!==n.lifecycle.account_id||n.material_activation.signing_worker!==n.lifecycle.selected_server_id)throw Error(`binding material activation does not match its lifecycle owner and worker`);return n}function sn(e){return on(e)}function cn(e){let t=on(e);if(t.operation!==`export`||t.lifecycle.work_kind!==Wt||t.lifecycle.primitive_request_kind!==Gt)throw Error(`export binding requires the exact export lifecycle`);return{lifecycle:{lifecycle_id:t.lifecycle.lifecycle_id,work_kind:Wt,primitive_request_kind:Gt,root_share_epoch:t.lifecycle.root_share_epoch,account_id:t.lifecycle.account_id,session_id:t.lifecycle.session_id,signer_set_id:t.lifecycle.signer_set_id,selected_server_id:t.lifecycle.selected_server_id},operation:`export`,session_id:t.session_id,stable_key_context_binding:t.stable_key_context_binding,material_activation:t.material_activation}}function ln(e){let t=d(e,`export binding`);return W(t,`export binding`,[`ceremony`,`registered_public_key`,`state_epoch`,`runtime_policy_binding`,`authorization_digest`]),{ceremony:cn(t.ceremony),registered_public_key:V(t.registered_public_key,`export binding.registered_public_key`,!0),state_epoch:qt(t.state_epoch,`export binding.state_epoch`),runtime_policy_binding:V(t.runtime_policy_binding,`export binding.runtime_policy_binding`,!0),authorization_digest:V(t.authorization_digest,`export binding.authorization_digest`,!0)}}function un(e){switch(e.operation){case`registration`:if(e.lifecycle.work_kind!==Bt||e.lifecycle.primitive_request_kind!==Vt)throw Error(`activation binding has the wrong registration lifecycle kind`);return{lifecycle:{lifecycle_id:e.lifecycle.lifecycle_id,work_kind:Bt,primitive_request_kind:Vt,root_share_epoch:e.lifecycle.root_share_epoch,account_id:e.lifecycle.account_id,session_id:e.lifecycle.session_id,signer_set_id:e.lifecycle.signer_set_id,selected_server_id:e.lifecycle.selected_server_id},operation:`registration`,session_id:e.session_id,stable_key_context_binding:e.stable_key_context_binding,material_activation:e.material_activation};case`recovery`:if(e.lifecycle.work_kind!==Ht||e.lifecycle.primitive_request_kind!==Ut)throw Error(`activation binding has the wrong recovery lifecycle kind`);return{lifecycle:{lifecycle_id:e.lifecycle.lifecycle_id,work_kind:Ht,primitive_request_kind:Ut,root_share_epoch:e.lifecycle.root_share_epoch,account_id:e.lifecycle.account_id,session_id:e.lifecycle.session_id,signer_set_id:e.lifecycle.signer_set_id,selected_server_id:e.lifecycle.selected_server_id},operation:`recovery`,session_id:e.session_id,stable_key_context_binding:e.stable_key_context_binding,material_activation:e.material_activation};case`refresh`:case`export`:case`lane_provisioning`:case`lane_refresh`:throw Error(`activation binding has a non-activation operation`)}}function dn(e){let t=d(e,`keyset`);W(t,`keyset`,[`deriver_a_input_public_key`,`deriver_b_input_public_key`,`signing_worker_recipient_public_key`]);let n={deriver_a_input_public_key:V(t.deriver_a_input_public_key,`keyset.deriver_a_input_public_key`,!0),deriver_b_input_public_key:V(t.deriver_b_input_public_key,`keyset.deriver_b_input_public_key`,!0),signing_worker_recipient_public_key:V(t.signing_worker_recipient_public_key,`keyset.signing_worker_recipient_public_key`,!0)};if(H(n.deriver_a_input_public_key,n.deriver_b_input_public_key)||H(n.deriver_a_input_public_key,n.signing_worker_recipient_public_key)||H(n.deriver_b_input_public_key,n.signing_worker_recipient_public_key))throw Error(`keyset public keys must be distinct`);return n}function fn(e,t){let n=d(e,t);W(n,t,[`kind`,`deriver`,`operation`,`session`,`stable_context_binding`,`encapsulated_key`,`ciphertext`]);let r={kind:Xt(n.kind,`${t}.kind`),deriver:Yt(n.deriver,`${t}.deriver`),operation:Jt(n.operation,`${t}.operation`),session:V(n.session,`${t}.session`,!0),stable_context_binding:V(n.stable_context_binding,`${t}.stable_context_binding`,!0),encapsulated_key:V(n.encapsulated_key,`${t}.encapsulated_key`,!0),ciphertext:gt(n.ciphertext,`${t}.ciphertext`,16,Pt)};if(r.kind===`activation`&&r.operation===`export`||r.kind===`export`&&r.operation!==`export`)throw Error(`${t} operation does not match its circuit family`);return r}function pn(e,t,n,r){if(t.kind!==`activation`||t.deriver!==n||t.operation!==e.operation||!H(t.session,e.session_id)||!H(t.stable_context_binding,e.stable_key_context_binding))throw Error(`${r} does not match the admitted activation binding`);switch(e.operation){case`registration`:return{kind:`activation`,deriver:n,operation:`registration`,session:t.session,stable_context_binding:t.stable_context_binding,encapsulated_key:t.encapsulated_key,ciphertext:t.ciphertext};case`recovery`:return{kind:`activation`,deriver:n,operation:`recovery`,session:t.session,stable_context_binding:t.stable_context_binding,encapsulated_key:t.encapsulated_key,ciphertext:t.ciphertext}}}function mn(e,t,n,r){if(t.kind!==`export`||t.deriver!==n||t.operation!==`export`||!H(t.session,e.ceremony.session_id)||!H(t.stable_context_binding,e.ceremony.stable_key_context_binding))throw Error(`${r} does not match the admitted export binding`);return{kind:`export`,deriver:n,operation:`export`,session:t.session,stable_context_binding:t.stable_context_binding,encapsulated_key:t.encapsulated_key,ciphertext:t.ciphertext}}function hn(e,t){let n=d(e,t);return W(n,t,[`kind`,`deriver`,`session`,`transcript`,`encapsulated_key`,`ciphertext`]),{kind:Zt(n.kind,`${t}.kind`),deriver:Yt(n.deriver,`${t}.deriver`),session:V(n.session,`${t}.session`,!0),transcript:V(n.transcript,`${t}.transcript`,!0),encapsulated_key:V(n.encapsulated_key,`${t}.encapsulated_key`,!0),ciphertext:gt(n.ciphertext,`${t}.ciphertext`,16,Pt)}}function gn(e){let t=d(e,`public_receipt`);return W(t,`public_receipt`,[`transcript`,`registered_public_key`,`joined_client_commitment`,`joined_signing_worker_commitment`,`signing_worker_verifying_share`,`state_epoch`,`material_activation`]),{transcript:V(t.transcript,`public_receipt.transcript`,!0),registered_public_key:V(t.registered_public_key,`public_receipt.registered_public_key`,!0),joined_client_commitment:V(t.joined_client_commitment,`public_receipt.joined_client_commitment`,!0),joined_signing_worker_commitment:V(t.joined_signing_worker_commitment,`public_receipt.joined_signing_worker_commitment`,!0),signing_worker_verifying_share:V(t.signing_worker_verifying_share,`public_receipt.signing_worker_verifying_share`,!0),state_epoch:qt(t.state_epoch,`public_receipt.state_epoch`),material_activation:de(t.material_activation)}}function _n(e,t,n,r,i){if(n.kind!==`activation_client`||n.deriver!==r||!H(n.session,e.session_id)||!H(n.transcript,t.transcript))throw Error(`${i} does not match the terminal activation receipt`);return{kind:`activation_client`,deriver:r,session:n.session,transcript:n.transcript,encapsulated_key:n.encapsulated_key,ciphertext:n.ciphertext}}function vn(e,t,n,r,i){if(n.kind!==`export_client`||n.deriver!==r||!H(n.session,e.ceremony.session_id)||!H(n.transcript,t))throw Error(`${i} does not match the terminal export result`);return{kind:`export_client`,deriver:r,session:n.session,transcript:n.transcript,encapsulated_key:n.encapsulated_key,ciphertext:n.ciphertext}}function G(e,t){try{return{ok:!0,value:e(t)}}catch(e){return{ok:!1,code:`invalid_body`,message:e instanceof Error?e.message:String(e)}}}function yn(e){let t=d(e,`registration admission request`);return W(t,`registration admission request`,[`scope`,`application_binding`,`participant_ids`]),{scope:tn(t.scope),application_binding:en(t.application_binding),participant_ids:nn(t.participant_ids)}}function bn(e){let t=d(e,`recovery admission request`);W(t,`recovery admission request`,[`scope`,`active_material_activation`,`application_binding`,`participant_ids`,`active_capability_binding`,`replacement_capability_binding`,`registered_public_key`]);let n=V(t.active_capability_binding,`recovery admission request.active_capability_binding`,!0),r=V(t.replacement_capability_binding,`recovery admission request.replacement_capability_binding`,!0);if(H(n,r))throw Error(`recovery replacement capability binding must be fresh`);let i=tn(t.scope),a=de(t.active_material_activation),o=i.material_activation;if(a.activation_id===o.activation_id||a.lifecycle_binding===o.lifecycle_binding)throw Error(`recovery replacement material activation identity must be fresh`);if(a.capability!==o.capability||a.material_owner!==o.material_owner||a.key_binding!==o.key_binding||a.signing_worker!==o.signing_worker)throw Error(`recovery replacement material activation changed stable identity facts`);return{scope:i,active_material_activation:a,application_binding:en(t.application_binding),participant_ids:nn(t.participant_ids),active_capability_binding:n,replacement_capability_binding:r,registered_public_key:V(t.registered_public_key,`recovery admission request.registered_public_key`,!0)}}function xn(e){let t=d(e,`warm recovery bootstrap request`);if(W(t,`warm recovery bootstrap request`,[`kind`,`walletId`,`nearAccountId`,`nearEd25519SigningKeyId`,`signerSlot`,`thresholdSessionId`,`signingWorkerId`,`participantIds`]),t.kind!==`router_ab_ed25519_yao_warm_recovery_bootstrap_request_v1`)throw Error(`warm recovery bootstrap request.kind is invalid`);return{kind:`router_ab_ed25519_yao_warm_recovery_bootstrap_request_v1`,walletId:B(t.walletId,`warm recovery bootstrap request.walletId`),nearAccountId:B(t.nearAccountId,`warm recovery bootstrap request.nearAccountId`),nearEd25519SigningKeyId:B(t.nearEd25519SigningKeyId,`warm recovery bootstrap request.nearEd25519SigningKeyId`),signerSlot:qt(t.signerSlot,`warm recovery bootstrap request.signerSlot`),thresholdSessionId:B(t.thresholdSessionId,`warm recovery bootstrap request.thresholdSessionId`),signingWorkerId:B(t.signingWorkerId,`warm recovery bootstrap request.signingWorkerId`),participantIds:nn(t.participantIds)}}function Sn(e){let t=d(e,`export admission receipt`);return W(t,`export admission receipt`,[`binding`,`keyset`]),{binding:ln(t.binding),keyset:dn(t.keyset)}}function Cn(e){let t=d(e,`export execute request`);W(t,`export execute request`,[`binding`,`deriver_a_input`,`deriver_b_input`]);let n=ln(t.binding);return{binding:n,deriver_a_input:mn(n,fn(t.deriver_a_input,`deriver_a_input`),`deriver_a`,`deriver_a_input`),deriver_b_input:mn(n,fn(t.deriver_b_input,`deriver_b_input`),`deriver_b`,`deriver_b_input`)}}function wn(e){let t=d(e,`export result`);W(t,`export result`,[`binding`,`transcript`,`deriver_a_client_package`,`deriver_b_client_package`]);let n=ln(t.binding),r=V(t.transcript,`export result.transcript`,!0);return{binding:n,transcript:r,deriver_a_client_package:vn(n,r,hn(t.deriver_a_client_package,`deriver_a_client_package`),`deriver_a`,`deriver_a_client_package`),deriver_b_client_package:vn(n,r,hn(t.deriver_b_client_package,`deriver_b_client_package`),`deriver_b`,`deriver_b_client_package`)}}function Tn(e){let t=d(e,`activation admission receipt`);W(t,`activation admission receipt`,[`binding`,`keyset`]);let n=un(on(t.binding)),r=dn(t.keyset);switch(n.operation){case`registration`:return{binding:n,keyset:r};case`recovery`:return{binding:n,keyset:r}}}function En(e){let t=d(e,`activation execute request`);W(t,`activation execute request`,[`binding`,`deriver_a_input`,`deriver_b_input`]);let n=un(on(t.binding)),r=pn(n,fn(t.deriver_a_input,`deriver_a_input`),`deriver_a`,`deriver_a_input`),i=pn(n,fn(t.deriver_b_input,`deriver_b_input`),`deriver_b`,`deriver_b_input`);if(n.operation===`registration`){if(r.operation!==`registration`||i.operation!==`registration`)throw Error(`activation inputs do not match registration binding`);return{binding:n,deriver_a_input:r,deriver_b_input:i}}if(r.operation!==`recovery`||i.operation!==`recovery`)throw Error(`activation inputs do not match recovery binding`);return{binding:n,deriver_a_input:r,deriver_b_input:i}}function Dn(e){let t=d(e,`activation result`);W(t,`activation result`,[`binding`,`deriver_a_client_package`,`deriver_b_client_package`,`public_receipt`]);let n=un(on(t.binding)),r=gn(t.public_receipt);if(!fe(n.material_activation,r.material_activation))throw Error(`activation result receipt material does not match the admitted binding`);let i=hn(t.deriver_a_client_package,`deriver_a_client_package`),a=hn(t.deriver_b_client_package,`deriver_b_client_package`),o=_n(n,r,i,`deriver_a`,`deriver_a_client_package`),s=_n(n,r,a,`deriver_b`,`deriver_b_client_package`);switch(n.operation){case`registration`:return{binding:n,deriver_a_client_package:o,deriver_b_client_package:s,public_receipt:r};case`recovery`:return{binding:n,deriver_a_client_package:o,deriver_b_client_package:s,public_receipt:r}}}function On(e){let t=un(on(e));switch(t.operation){case`registration`:throw Error(`recovery activation requires a recovery binding`);case`recovery`:return t}}function kn(e){let t=d(e,`recovery activation receipt`);W(t,`recovery activation receipt`,[`binding`,`public_receipt`,`active_capability_binding`,`retired_capability_binding`]);let n=V(t.active_capability_binding,`recovery activation receipt.active_capability_binding`,!0),r=V(t.retired_capability_binding,`recovery activation receipt.retired_capability_binding`,!0);if(H(n,r))throw Error(`recovery activation receipt capability bindings must be distinct`);return{binding:On(t.binding),public_receipt:gn(t.public_receipt),active_capability_binding:n,retired_capability_binding:r}}function An(e,t){return e.binding.operation===t}function jn(e,t){return e.binding.operation===t}function Mn(e,t){return e.binding.operation===t}function Nn(e){return{ok:!1,code:`invalid_body`,message:`activation value must use the ${e} operation`}}function Pn(e){return G(yn,e)}function Fn(e){return G(bn,e)}function In(e){return G(xn,e)}function Ln(e){return G(Sn,e)}function Rn(e){return G(Cn,e)}function zn(e){return G(wn,e)}function Bn(e){return G(Tn,e)}function Vn(e){let t=Bn(e);return t.ok?An(t.value,`registration`)?{ok:!0,value:t.value}:Nn(`registration`):t}function Hn(e){let t=Bn(e);return t.ok?An(t.value,`recovery`)?{ok:!0,value:t.value}:Nn(`recovery`):t}function Un(e){return G(En,e)}function Wn(e){let t=Un(e);return t.ok?jn(t.value,`registration`)?{ok:!0,value:t.value}:Nn(`registration`):t}function Gn(e){let t=Un(e);return t.ok?jn(t.value,`recovery`)?{ok:!0,value:t.value}:Nn(`recovery`):t}function Kn(e){return G(Dn,e)}function qn(e){let t=Kn(e);return t.ok?Mn(t.value,`registration`)?{ok:!0,value:t.value}:Nn(`registration`):t}function Jn(e){let t=Kn(e);return t.ok?Mn(t.value,`recovery`)?{ok:!0,value:t.value}:Nn(`recovery`):t}function Yn(e){return G(kn,e)}function Xn(e){return G(Zn,e)}function Zn(e){return hn(e,`encrypted_package`)}const Qn=`seams/linked-device/ecdsa-source-contribution-envelope/v1`;function $n(e){let t=f(e,`linked-device ordinary source contribution`);switch(t.kind){case`linked_device_ed25519_source_contribution_v1`:return or(t);case`linked_device_ecdsa_source_contribution_v1`:return sr(t);default:throw Error(`linked-device ordinary source contribution kind is invalid`)}}function er(e){let t=J(e,[`state`,`reservation_id`,`participant_ids`,`activation_receipt`,`deriver_a_client_package`,`deriver_b_client_package`],`linked-device Ed25519 source-preserving reservation`);if(t.state!==`inactive`)throw Error(`linked-device Ed25519 source-preserving reservation is not inactive`);let n=gn(t.activation_receipt),r=rn(t.participant_ids),i=fr(t.deriver_a_client_package,`deriver_a`),a=fr(t.deriver_b_client_package,`deriver_b`);if(!U(n.transcript,i.transcript)||!U(n.transcript,a.transcript))throw Error(`linked-device Ed25519 reservation packages have mismatched transcripts`);return{state:`inactive`,reservationId:q(t.reservation_id,`reservation_id`),participantIds:r,activationReceipt:n,deriver_a_client_package:i,deriver_b_client_package:a}}function tr(e){if(!Array.isArray(e)||e.length===0||e.length>2)throw Error(`linked-device ordinary source contributions must contain one or two entries`);let t=e.map($n),n=t.map(e=>e.keyFamily);if(new Set(n).size!==n.length)throw Error(`linked-device ordinary source contributions repeat a key family`);if(t.length===2&&(t[0]?.keyFamily!==`ed25519`||t[1]?.keyFamily!==`ecdsa_secp256k1`))throw Error(`linked-device ordinary source contributions must be Ed25519 then ECDSA`);let r=t[0];if(!r)throw Error(`linked-device ordinary source contributions are empty`);return[r,...t.slice(1)]}function nr(e){let t=J(e,[`linkSessionId`,`enrollmentId`,`sourceAuthorityId`,`source`,`target`],`linked-device ECDSA source contribution preparation`),n=gr(t.source),r=_r(t.target);return wr(n.activation,r.activation),{linkSessionId:Dr(t.linkSessionId),enrollmentId:Or(t.enrollmentId),sourceAuthorityId:kr(t.sourceAuthorityId),source:n,target:r}}function rr(e){let t=f(e,`linked-device ordinary source contribution preparation`);if(t.kind===`linked_device_ed25519_source_contribution_preparation_v1`)return ar(t);if(Object.prototype.hasOwnProperty.call(t,`source`)&&Object.prototype.hasOwnProperty.call(t,`target`))return nr(t);throw Error(`linked-device ordinary source contribution preparation family is invalid`)}function ir(e){if(!Array.isArray(e)||e.length===0||e.length>2)throw Error(`linked-device ordinary source contribution preparations must contain one or two entries`);let t=e.map(rr),n=t.map(e=>`kind`in e?`ed25519`:`ecdsa_secp256k1`);if(new Set(n).size!==n.length)throw Error(`linked-device ordinary source contribution preparations repeat a key family`);if(t.length===2&&(n[0]!==`ed25519`||n[1]!==`ecdsa_secp256k1`))throw Error(`linked-device ordinary source contribution preparations must be ordered Ed25519 then ECDSA`);let r=t[0];if(!r)throw Error(`linked-device ordinary source contribution preparation is empty`);return[r,...t.slice(1)]}function ar(e){if(J(e,[`kind`,`linkSessionId`,`enrollmentId`,`sourceAuthorityId`,`walletKeyId`,`targetDeviceId`,`targetFactorVerificationDigestB64u`,`sourceBinding`,`targetAdmission`,`applicationBinding`,`sourceRevocationEpoch`,`participantIds`,`targetMaterialActivation`,`targetClientRecipientPublicKeyB64u`,`targetSigningWorkerRecipientPublicKeyB64u`,`sourceRegisteredPublicKeyB64u`],`linked-device Ed25519 source contribution preparation`),e.kind!==`linked_device_ed25519_source_contribution_preparation_v1`)throw Error(`linked-device Ed25519 source contribution preparation kind is invalid`);let t=yr(e.sourceBinding,`sourceBinding`),n=Vn(e.targetAdmission);if(!n.ok)throw Error(`targetAdmission ${n.message}`);let r=n.value,i=en(e.applicationBinding);if(typeof e.sourceRevocationEpoch!=`number`||!Number.isSafeInteger(e.sourceRevocationEpoch)||e.sourceRevocationEpoch<0)throw Error(`sourceRevocationEpoch must be a non-negative safe integer`);let a=Er(e.targetMaterialActivation,`targetMaterialActivation`),o=Dr(e.linkSessionId),s=Or(e.enrollmentId),c=kr(e.sourceAuthorityId),l=Ar(e.walletKeyId),ee=jr(e.targetDeviceId),d=Mr(e.targetFactorVerificationDigestB64u,`targetFactorVerificationDigestB64u`),te=K(e.targetClientRecipientPublicKeyB64u,32,`targetClientRecipientPublicKeyB64u`),f=K(e.targetSigningWorkerRecipientPublicKeyB64u,32,`targetSigningWorkerRecipientPublicKeyB64u`);if(te===f)throw Error(`linked-device Ed25519 source contribution recipients must differ`);let p=rn(e.participantIds);if(xr(t,o,`sourceBinding`),!u(a,ye(r.binding.material_activation)))throw Error(`targetAdmission activation differs from targetMaterialActivation`);if(!Sr(t,r.binding))throw Error(`source and target Ed25519 contribution bindings differ`);if(t.material_activation.activation_id===a.activationId)throw Error(`source and target Ed25519 contribution activations must differ`);return{kind:`linked_device_ed25519_source_contribution_preparation_v1`,linkSessionId:o,enrollmentId:s,sourceAuthorityId:c,walletKeyId:l,targetDeviceId:ee,targetFactorVerificationDigestB64u:d,sourceBinding:t,targetAdmission:r,applicationBinding:i,sourceRevocationEpoch:e.sourceRevocationEpoch,participantIds:p,targetMaterialActivation:a,targetClientRecipientPublicKeyB64u:te,targetSigningWorkerRecipientPublicKeyB64u:f,sourceRegisteredPublicKeyB64u:ce(e.sourceRegisteredPublicKeyB64u,`sourceRegisteredPublicKeyB64u`)}}function or(e){if(J(e,[`kind`,`keyFamily`,`linkSessionId`,`enrollmentId`,`sourceAuthorityId`,`walletKeyId`,`targetDeviceId`,`targetFactorVerificationDigestB64u`,`targetMaterialActivation`,`targetClientRecipientPublicKeyB64u`,`targetSigningWorkerRecipientPublicKeyB64u`,`sourceBinding`,`reservationId`,`targetBinding`,`activationReceipt`,`participantIds`,`deriver_a_client_package`,`deriver_b_client_package`,`sourceRegisteredPublicKeyB64u`],`linked-device Ed25519 source contribution`),e.kind!==`linked_device_ed25519_source_contribution_v1`)throw Error(`linked-device Ed25519 source contribution kind is invalid`);if(e.keyFamily!==`ed25519`)throw Error(`linked-device Ed25519 source contribution family is invalid`);let t=yr(e.sourceBinding,`sourceBinding`),n=Er(e.targetMaterialActivation,`source contribution targetMaterialActivation`),r=yr(e.targetBinding,`targetBinding`),i=gn(e.activationReceipt),a=q(e.reservationId,`reservationId`),o=rn(e.participantIds),s=Dr(e.linkSessionId),c=Or(e.enrollmentId),l=kr(e.sourceAuthorityId),ee=Ar(e.walletKeyId),d=jr(e.targetDeviceId),te=Mr(e.targetFactorVerificationDigestB64u,`targetFactorVerificationDigestB64u`),f=K(e.targetClientRecipientPublicKeyB64u,32,`targetClientRecipientPublicKeyB64u`),p=K(e.targetSigningWorkerRecipientPublicKeyB64u,32,`targetSigningWorkerRecipientPublicKeyB64u`);if(f===p)throw Error(`linked-device Ed25519 source contribution recipients must differ`);if(xr(t,s,`sourceBinding`),br(r,s,n,`targetBinding`),!Sr(t,r))throw Error(`linked-device Ed25519 source contribution stable identity differs`);if(!u(ye(i.material_activation),n))throw Error(`linked-device Ed25519 source contribution receipt activation differs`);let ne=ce(e.sourceRegisteredPublicKeyB64u,`sourceRegisteredPublicKeyB64u`);if(!U(i.registered_public_key,Array.from(m(ne))))throw Error(`linked-device Ed25519 source contribution receipt public key differs`);let re=fr(e.deriver_a_client_package,`deriver_a`),h=fr(e.deriver_b_client_package,`deriver_b`);if(!U(i.transcript,re.transcript)||!U(i.transcript,h.transcript))throw Error(`linked-device Ed25519 source contribution package transcript differs`);if(t.material_activation.activation_id===n.activationId)throw Error(`linked-device Ed25519 source contribution reuses the source activation`);return{kind:`linked_device_ed25519_source_contribution_v1`,keyFamily:`ed25519`,linkSessionId:s,enrollmentId:c,sourceAuthorityId:l,walletKeyId:ee,targetDeviceId:d,targetFactorVerificationDigestB64u:te,targetMaterialActivation:n,targetClientRecipientPublicKeyB64u:f,targetSigningWorkerRecipientPublicKeyB64u:p,sourceBinding:t,reservationId:a,targetBinding:r,activationReceipt:i,participantIds:o,deriver_a_client_package:re,deriver_b_client_package:h,sourceRegisteredPublicKeyB64u:ne}}function sr(e){if(J(e,[`kind`,`keyFamily`,`linkSessionId`,`enrollmentId`,`sourceAuthorityId`,`walletKeyId`,`targetDeviceId`,`targetFactorVerificationDigestB64u`,`sourceSigner`,`sourceDerivation`,`target`,`package`],`linked-device ECDSA source contribution`),e.kind!==`linked_device_ecdsa_source_contribution_v1`)throw Error(`linked-device ECDSA source contribution kind is invalid`);if(e.keyFamily!==`ecdsa_secp256k1`)throw Error(`linked-device ECDSA source contribution family is invalid`);let t=Dr(e.linkSessionId),n=Or(e.enrollmentId),r=kr(e.sourceAuthorityId),i=Ar(e.walletKeyId),a=jr(e.targetDeviceId),o=Mr(e.targetFactorVerificationDigestB64u,`targetFactorVerificationDigestB64u`),s=gr(e.sourceSigner),c=cr(e.sourceDerivation),l=_r(e.target);wr(s.activation,l.activation);let u=mr(e.package);if(u.binding.linkSessionId!==t||u.binding.enrollmentId!==n||u.binding.sourceAuthorityId!==r||u.binding.target.targetDeviceId!==a||u.binding.target.targetFactorVerificationDigestB64u!==o)throw Error(`linked-device ECDSA source contribution package binding differs`);if(!Cr(u.binding.source,s))throw Error(`linked-device ECDSA source contribution signer differs from package binding`);if(!Tr(u.binding.target,l))throw Error(`linked-device ECDSA source contribution target differs from package binding`);return{kind:`linked_device_ecdsa_source_contribution_v1`,keyFamily:`ecdsa_secp256k1`,linkSessionId:t,enrollmentId:n,sourceAuthorityId:r,walletKeyId:i,targetDeviceId:a,targetFactorVerificationDigestB64u:o,sourceSigner:s,sourceDerivation:c,target:l,package:u}}function cr(e){let t=J(e,[`applicationBindingDigestB64u`,`clientShareRetryCounter`,`ecdsaThresholdKeyId`,`sourceNormalSigning`],`linked-device ECDSA source derivation`),n=t.clientShareRetryCounter;if(typeof n!=`number`||!Number.isSafeInteger(n)||n<0)throw Error(`linked-device ECDSA source derivation retry counter is invalid`);let r=Mr(t.applicationBindingDigestB64u,`sourceDerivation.applicationBindingDigestB64u`),i=Ce(t.sourceNormalSigning),a=Te(t.ecdsaThresholdKeyId);if(i.scope.context.application_binding_digest_b64u!==r||i.scope.public_identity.client_share_retry_counter!==n||i.scope.ecdsa_threshold_key_id!==a)throw Error(`linked-device ECDSA source derivation differs from normal signing`);return{applicationBindingDigestB64u:r,clientShareRetryCounter:n,ecdsaThresholdKeyId:a,sourceNormalSigning:i}}function lr(e){let t=J(e,[`state`,`binding`,`sourceDerivation`,`targetRelayerPublicKey33B64u`,`thresholdPublicKey33B64u`,`thresholdEthereumAddress20B64u`,`normalSigning`],`linked-device ECDSA source-preserving activation receipt`);if(t.state!==`inactive`)throw Error(`linked-device ECDSA source-preserving activation receipt is not inactive`);let n=hr(t.binding),r=cr(t.sourceDerivation),i=h(t.targetRelayerPublicKey33B64u,`targetRelayerPublicKey33B64u`),a=h(t.thresholdPublicKey33B64u,`thresholdPublicKey33B64u`),o=K(t.thresholdEthereumAddress20B64u,20,`thresholdEthereumAddress20B64u`),s=Ce(t.normalSigning);return ur({binding:n,sourceDerivation:r,targetRelayerPublicKey33B64u:i,thresholdPublicKey33B64u:a,thresholdEthereumAddress20B64u:o,normalSigning:s}),{state:`inactive`,binding:n,sourceDerivation:r,targetRelayerPublicKey33B64u:i,thresholdPublicKey33B64u:a,thresholdEthereumAddress20B64u:o,normalSigning:s}}function ur(e){let t=e.sourceDerivation.sourceNormalSigning.scope,n=e.normalSigning.scope;if(!u(ye(t.material_activation),e.binding.source.activation)||!u(ye(n.material_activation),e.binding.target.activation)||t.wallet_id!==n.wallet_id||t.wallet_id!==e.binding.source.activation.materialOwner||n.wallet_id!==e.binding.target.activation.materialOwner||t.ecdsa_threshold_key_id!==n.ecdsa_threshold_key_id||t.signing_root_id!==n.signing_root_id||t.signing_root_version!==n.signing_root_version||t.context.application_binding_digest_b64u!==n.context.application_binding_digest_b64u||t.activation_epoch!==n.activation_epoch||t.public_identity.derivation_client_share_public_key33_b64u!==e.binding.source.clientPublicKey33B64u||t.public_identity.server_public_key33_b64u!==e.binding.source.relayerPublicKey33B64u||t.public_identity.threshold_public_key33_b64u!==e.binding.source.thresholdPublicKey33B64u||t.public_identity.ethereum_address20_b64u!==e.binding.source.thresholdEthereumAddress20B64u||n.public_identity.context_binding_b64u!==t.public_identity.context_binding_b64u||n.public_identity.derivation_client_share_public_key33_b64u!==e.binding.targetClientPublicKey33B64u||n.public_identity.server_public_key33_b64u!==e.targetRelayerPublicKey33B64u||n.public_identity.threshold_public_key33_b64u!==e.thresholdPublicKey33B64u||n.public_identity.ethereum_address20_b64u!==e.thresholdEthereumAddress20B64u||n.public_identity.client_share_retry_counter!==t.public_identity.client_share_retry_counter||n.public_identity.server_share_retry_counter!==t.public_identity.server_share_retry_counter||n.signing_worker.server_id!==e.binding.target.activation.signingWorker||n.signing_worker.key_epoch!==t.signing_worker.key_epoch||n.signing_worker.recipient_encryption_key!==dr(e.binding.target.signingWorkerRecipientPublicKeyB64u))throw Error(`linked-device ECDSA normal signing state differs from its activation receipt`)}function dr(e){let t=m(e);if(t.length!==32||p(t)!==e)throw Error(`linked-device signing-worker recipient key is invalid`);let n=``;for(let e of t)n+=e.toString(16).padStart(2,`0`);return`x25519:${n}`}function fr(e,t){let n=pr(e,`${t} client package`);if(n.kind!==`activation_client`||n.deriver!==t)throw Error(`${t} client package is not an activation client package`);return t===`deriver_a`?{kind:`activation_client`,deriver:`deriver_a`,session:n.session,transcript:n.transcript,encapsulated_key:n.encapsulated_key,ciphertext:n.ciphertext}:{kind:`activation_client`,deriver:`deriver_b`,session:n.session,transcript:n.transcript,encapsulated_key:n.encapsulated_key,ciphertext:n.ciphertext}}function pr(e,t){let n=Xn(e);if(!n.ok)throw Error(`${t} ${n.message}`);return n.value}function mr(e){let t=J(e,[`binding`,`encryptedDelta`,`encryptedTargetClientShare`],`linked-device ECDSA source contribution package`),n=hr(t.binding),r=vr(t.encryptedDelta,`encryptedDelta`),i=vr(t.encryptedTargetClientShare,`encryptedTargetClientShare`),a=r.bindingDigestB64u;if(i.bindingDigestB64u!==a)throw Error(`linked-device ECDSA source contribution envelope bindings differ`);if(r.recipientPublicKeyB64u!==n.target.signingWorkerRecipientPublicKeyB64u||i.recipientPublicKeyB64u!==n.target.clientRecipientPublicKeyB64u)throw Error(`linked-device ECDSA source contribution envelope recipients differ`);return{binding:n,encryptedDelta:r,encryptedTargetClientShare:i}}function hr(e){let t=J(e,[`linkSessionId`,`enrollmentId`,`sourceAuthorityId`,`source`,`target`,`targetClientPublicKey33B64u`],`linked-device ECDSA source contribution binding`),n=gr(t.source),r=_r(t.target);return wr(n.activation,r.activation),{linkSessionId:q(t.linkSessionId,`binding.linkSessionId`),enrollmentId:q(t.enrollmentId,`binding.enrollmentId`),sourceAuthorityId:q(t.sourceAuthorityId,`binding.sourceAuthorityId`),source:n,target:r,targetClientPublicKey33B64u:h(t.targetClientPublicKey33B64u,`binding.targetClientPublicKey33B64u`)}}function gr(e){let t=J(e,[`activation`,`clientPublicKey33B64u`,`relayerPublicKey33B64u`,`thresholdPublicKey33B64u`,`thresholdEthereumAddress20B64u`],`linked-device ECDSA source signer`);return{activation:Er(t.activation,`source.activation`),clientPublicKey33B64u:h(t.clientPublicKey33B64u,`source.clientPublicKey33B64u`),relayerPublicKey33B64u:h(t.relayerPublicKey33B64u,`source.relayerPublicKey33B64u`),thresholdPublicKey33B64u:h(t.thresholdPublicKey33B64u,`source.thresholdPublicKey33B64u`),thresholdEthereumAddress20B64u:K(t.thresholdEthereumAddress20B64u,20,`source.thresholdEthereumAddress20B64u`)}}function _r(e){let t=J(e,[`activation`,`targetDeviceId`,`targetFactorVerificationDigestB64u`,`clientRecipientPublicKeyB64u`,`signingWorkerRecipientPublicKeyB64u`],`linked-device ECDSA target recipient`),n=K(t.clientRecipientPublicKeyB64u,32,`target.clientRecipientPublicKeyB64u`),r=K(t.signingWorkerRecipientPublicKeyB64u,32,`target.signingWorkerRecipientPublicKeyB64u`);if(n===r)throw Error(`linked-device ECDSA target recipients must differ`);return{activation:Er(t.activation,`target.activation`),targetDeviceId:jr(t.targetDeviceId),targetFactorVerificationDigestB64u:Mr(t.targetFactorVerificationDigestB64u,`target.targetFactorVerificationDigestB64u`),clientRecipientPublicKeyB64u:n,signingWorkerRecipientPublicKeyB64u:r}}function vr(e,t){let n=J(e,[`kind`,`recipientPublicKeyB64u`,`bindingDigestB64u`,`encappedKeyB64u`,`ciphertextB64u`],`linked-device ECDSA ${t}`);if(n.kind!==Qn)throw Error(`${t}.kind is invalid`);return{kind:Qn,recipientPublicKeyB64u:K(n.recipientPublicKeyB64u,32,`${t}.recipientPublicKeyB64u`),bindingDigestB64u:Mr(n.bindingDigestB64u,`${t}.bindingDigestB64u`),encappedKeyB64u:K(n.encappedKeyB64u,32,`${t}.encappedKeyB64u`),ciphertextB64u:ie(n.ciphertextB64u,`${t}.ciphertextB64u`)}}function yr(e,t){let n=sn(e);if(n.operation!==`registration`)throw Error(`${t} must use the registration operation`);return n}function br(e,t,n,r){if(e.material_activation.activation_id!==n.activationId)throw Error(`${r} activation does not match the target activation`);if(e.material_activation.material_owner!==n.materialOwner)throw Error(`${r} material owner does not match the target activation`);if(e.material_activation.signing_worker!==n.signingWorker)throw Error(`${r} signing worker does not match the target activation`);if(e.session_id.length!==32||String(t).length===0)throw Error(`${r} link binding is invalid`)}function xr(e,t,n){if(e.session_id.length!==32||String(t).length===0)throw Error(`${n} link binding is invalid`)}function Sr(e,t){return e.operation===t.operation&&e.stable_key_context_binding.every((e,n)=>e===t.stable_key_context_binding[n])&&e.material_activation.capability===t.material_activation.capability&&e.material_activation.material_owner===t.material_activation.material_owner&&e.material_activation.key_binding===t.material_activation.key_binding&&e.material_activation.lifecycle_binding===t.material_activation.lifecycle_binding&&e.material_activation.signing_worker===t.material_activation.signing_worker&&e.lifecycle.root_share_epoch===t.lifecycle.root_share_epoch&&e.lifecycle.account_id===t.lifecycle.account_id&&e.lifecycle.signer_set_id===t.lifecycle.signer_set_id&&e.lifecycle.selected_server_id===t.lifecycle.selected_server_id}function Cr(e,t){return u(e.activation,t.activation)&&e.clientPublicKey33B64u===t.clientPublicKey33B64u&&e.relayerPublicKey33B64u===t.relayerPublicKey33B64u&&e.thresholdPublicKey33B64u===t.thresholdPublicKey33B64u&&e.thresholdEthereumAddress20B64u===t.thresholdEthereumAddress20B64u}function wr(e,t){if(u(e,t)||e.materialOwner!==t.materialOwner||e.signingWorker!==t.signingWorker)throw Error(`linked-device ECDSA source and target activations are invalid`)}function Tr(e,t){return u(e.activation,t.activation)&&e.targetDeviceId===t.targetDeviceId&&e.targetFactorVerificationDigestB64u===t.targetFactorVerificationDigestB64u&&e.clientRecipientPublicKeyB64u===t.clientRecipientPublicKeyB64u&&e.signingWorkerRecipientPublicKeyB64u===t.signingWorkerRecipientPublicKeyB64u}function Er(e,t){let n=o(e);if(!n.ok)throw Error(`${t} ${n.error.message}`);return n.value}function Dr(e){let t=c(q(e,`linkSessionId`));if(!t.ok)throw Error(`linkSessionId ${t.error.message}`);return t.value}function Or(e){let t=ee(q(e,`enrollmentId`));if(!t.ok)throw Error(`enrollmentId ${t.error.message}`);return t.value}function kr(t){let n=e(q(t,`sourceAuthorityId`));if(!n.ok)throw Error(`sourceAuthorityId ${n.error.message}`);return n.value}function Ar(e){let t=s(q(e,`walletKeyId`));if(!t.ok)throw Error(`walletKeyId ${t.error.message}`);return t.value}function jr(e){let t=Ae(q(e,`targetDeviceId`));if(!t.ok)throw Error(`targetDeviceId ${t.error.message}`);return t.value}function Mr(e,t){try{return P(e)}catch(e){throw Error(`${t} ${e instanceof Error?e.message:`is invalid`}`)}}function K(e,t,n){if(typeof e!=`string`||!/^[A-Za-z0-9_-]+$/.test(e))throw Error(`${n} must be canonical base64url`);let r;try{r=m(e)}catch{throw Error(`${n} must be canonical base64url`)}if(r.length!==t||p(r)!==e)throw Error(`${n} must decode to ${t} bytes`);return e}function q(e,t){if(typeof e!=`string`||e.length===0||e.trim()!==e||[...e].some(e=>{let t=e.charCodeAt(0);return t<32||t===127}))throw Error(`${t} must be a non-empty visible string`);return e}function J(e,t,n){let r=f(e,n),i=new Set(t),a=Object.keys(r);if(a.length!==t.length||a.some(e=>!i.has(e))||t.some(e=>!Object.prototype.hasOwnProperty.call(r,e)))throw Error(`${n} contains unknown or missing fields`);return r}function Nr(e){let t=Hr(e);if(t.kind!==`committed_authority_packages_v1`)throw Error(`CommittedAuthorityPackagesV1.kind is invalid`);let n=Ge(t.authority);if(!n.ok||n.value.state!==`pending_local_install`)throw Error(`CommittedAuthorityPackagesV1.authority is not pending`);let r=qe(t.authMethod);if(!r||r.status!==`pending_local_install`)throw Error(`CommittedAuthorityPackagesV1.authMethod is not pending`);if(r.walletId!==n.value.walletId||r.walletAuthorityId!==n.value.authorityId)throw Error(`CommittedAuthorityPackagesV1 authority and auth method identities differ`);let i=Fr(t.signerPackages);Pr(i,n.value.signerActivations);let a=t.ed25519ExportRootPackage===null?null:ot(t.ed25519ExportRootPackage);if(a&&(a.walletId!==n.value.walletId||a.revocationEpoch!==n.value.revocationEpoch||n.value.provenance.kind!==`device_link`||a.enrollmentId!==n.value.provenance.enrollmentId||a.linkSessionId!==n.value.provenance.linkSessionId||String(a.deviceId)!==String(n.value.principal.deviceId)))throw Error(`CommittedAuthorityPackagesV1 export root identity does not match authority`);return{kind:`committed_authority_packages_v1`,authority:n.value,authMethod:r,signerPackages:i,ed25519ExportRootPackage:a,packageSetDigestB64u:Ir(t.packageSetDigestB64u)}}function Pr(e,t){if(e.keyFamilies.length!==t.keyFamilies.length)throw Error(`CommittedAuthorityPackagesV1 signer families do not match authority`);for(let n=0;n<e.keyFamilies.length;n+=1)if(e.keyFamilies[n]!==t.keyFamilies[n])throw Error(`CommittedAuthorityPackagesV1 signer family order does not match authority`);if(e.keyFamilies.length===1&&e.keyFamilies[0]===`ed25519`){if(!t.ed25519||!e.ed25519)throw Error(`CommittedAuthorityPackagesV1 Ed25519 activation is missing`);if(!u(e.ed25519.materialActivation,t.ed25519.materialActivation))throw Error(`CommittedAuthorityPackagesV1 Ed25519 activation does not match authority`);return}if(e.keyFamilies.length===1&&e.keyFamilies[0]===`ecdsa_secp256k1`){if(!t.ecdsa||!e.ecdsa)throw Error(`CommittedAuthorityPackagesV1 ECDSA activation is missing`);if(!u(e.ecdsa.materialActivation,t.ecdsa.materialActivation))throw Error(`CommittedAuthorityPackagesV1 ECDSA activation does not match authority`);return}if(!t.ed25519||!t.ecdsa||!e.ed25519||!e.ecdsa)throw Error(`CommittedAuthorityPackagesV1 combined activations are incomplete`);if(!u(e.ed25519.materialActivation,t.ed25519.materialActivation)||!u(e.ecdsa.materialActivation,t.ecdsa.materialActivation))throw Error(`CommittedAuthorityPackagesV1 activation references do not match authority`)}function Fr(e){let t=Ur(e);if(t.kind!==`committed_signer_package_set_v1`)throw Error(`CommittedSignerPackageSetV1.kind is invalid`);let n=Vr(t.keyFamilies);if(n.length===1&&n[0]===`ed25519`){if(!(`ed25519`in t))throw Error(`CommittedSignerPackageSetV1 fields are invalid`);return{kind:`committed_signer_package_set_v1`,keyFamilies:n,ed25519:Lr(t.ed25519)}}if(n.length===1&&n[0]===`ecdsa_secp256k1`){if(!(`ecdsa`in t))throw Error(`CommittedSignerPackageSetV1 fields are invalid`);return{kind:`committed_signer_package_set_v1`,keyFamilies:n,ecdsa:Rr(t.ecdsa)}}if(!(`ed25519`in t)||!(`ecdsa`in t))throw Error(`CommittedSignerPackageSetV1 fields are invalid`);let r=Lr(t.ed25519),i=Rr(t.ecdsa);if(r.materialActivation.activationId===i.materialActivation.activationId)throw Error(`CommittedSignerPackageSetV1 activation references must be distinct`);return{kind:`committed_signer_package_set_v1`,keyFamilies:n,ed25519:r,ecdsa:i}}function Ir(e){return P(e)}function Lr(e){let t=Wr(e);if(t.kind!==`committed_ed25519_signer_package_v1`)throw Error(`CommittedEd25519SignerPackageV1.kind is invalid`);let n=Br(t.materialActivation,`materialActivation`),r=sn(t.targetBinding),i=en(t.applicationBinding),a=gn(t.activationReceipt);if(!u(n,ye(a.material_activation)))throw Error(`CommittedEd25519SignerPackageV1 activation receipt does not match material`);if(!u(n,ye(r.material_activation)))throw Error(`CommittedEd25519SignerPackageV1 target binding does not match material`);let o=zr(t.deriver_a_client_package,`deriver_a_client_package`,`deriver_a`),s=zr(t.deriver_b_client_package,`deriver_b_client_package`,`deriver_b`);if(!U(a.transcript,o.transcript)||!U(a.transcript,s.transcript))throw Error(`CommittedEd25519SignerPackageV1 receipt transcript does not match packages`);return{kind:`committed_ed25519_signer_package_v1`,materialActivation:n,targetBinding:r,applicationBinding:i,participantIds:rn(t.participantIds),activationReceipt:a,deriver_a_client_package:o,deriver_b_client_package:s}}function Rr(e){let t=Gr(e);if(t.kind!==`committed_ecdsa_signer_package_v1`)throw Error(`CommittedEcdsaSignerPackageV1.kind is invalid`);let n=Br(t.materialActivation,`materialActivation`),r=lr(t.activationReceipt),i=r.binding.target.activation;if(!u(n,i))throw Error(`CommittedEcdsaSignerPackageV1 receipt activation does not match material`);let a=vr(t.encryptedTargetClientShare,`encryptedTargetClientShare`);if(a.recipientPublicKeyB64u!==r.binding.target.clientRecipientPublicKeyB64u)throw Error(`CommittedEcdsaSignerPackageV1 client share recipient does not match receipt`);return{kind:`committed_ecdsa_signer_package_v1`,materialActivation:n,encryptedTargetClientShare:a,activationReceipt:r}}function zr(e,t,n){let r=Xn(e);if(!r.ok)throw Error(`${t} ${r.message}`);if(r.value.kind!==`activation_client`||r.value.deriver!==n)throw Error(`${t} must be an activation_client for ${n}`);return{kind:`activation_client`,deriver:n,session:r.value.session,transcript:r.value.transcript,encapsulated_key:r.value.encapsulated_key,ciphertext:r.value.ciphertext}}function Br(e,t){let n=o(e);if(!n.ok)throw Error(`${t} ${n.error.message}`);return n.value}function Vr(e){if(!Array.isArray(e))throw Error(`CommittedSignerPackageSetV1.keyFamilies must be an array`);if(e.length===1&&e[0]===`ed25519`)return[`ed25519`];if(e.length===1&&e[0]===`ecdsa_secp256k1`)return[`ecdsa_secp256k1`];if(e.length===2&&e[0]===`ed25519`&&e[1]===`ecdsa_secp256k1`)return[`ed25519`,`ecdsa_secp256k1`];throw Error(`CommittedSignerPackageSetV1.keyFamilies must use canonical family order`)}function Hr(e){let t=Kr(e);if(t===null)throw Error(`CommittedAuthorityPackagesV1 must be an object`);return Y(t,[`kind`,`authority`,`authMethod`,`signerPackages`,`ed25519ExportRootPackage`,`packageSetDigestB64u`],`CommittedAuthorityPackagesV1`),{kind:Reflect.get(t,`kind`),authority:Reflect.get(t,`authority`),authMethod:Reflect.get(t,`authMethod`),signerPackages:Reflect.get(t,`signerPackages`),ed25519ExportRootPackage:Reflect.get(t,`ed25519ExportRootPackage`),packageSetDigestB64u:Reflect.get(t,`packageSetDigestB64u`)}}function Ur(e){let t=Kr(e);if(t===null)throw Error(`CommittedSignerPackageSetV1 must be an object`);let n=Object.keys(t),r=n.includes(`ed25519`),i=n.includes(`ecdsa`);return r&&i?(Y(t,[`kind`,`keyFamilies`,`ed25519`,`ecdsa`],`CommittedSignerPackageSetV1`),{kind:Reflect.get(t,`kind`),keyFamilies:Reflect.get(t,`keyFamilies`),ed25519:Reflect.get(t,`ed25519`),ecdsa:Reflect.get(t,`ecdsa`)}):r?(Y(t,[`kind`,`keyFamilies`,`ed25519`],`CommittedSignerPackageSetV1`),{kind:Reflect.get(t,`kind`),keyFamilies:Reflect.get(t,`keyFamilies`),ed25519:Reflect.get(t,`ed25519`)}):i?(Y(t,[`kind`,`keyFamilies`,`ecdsa`],`CommittedSignerPackageSetV1`),{kind:Reflect.get(t,`kind`),keyFamilies:Reflect.get(t,`keyFamilies`),ecdsa:Reflect.get(t,`ecdsa`)}):(Y(t,[`kind`,`keyFamilies`],`CommittedSignerPackageSetV1`),{kind:Reflect.get(t,`kind`),keyFamilies:Reflect.get(t,`keyFamilies`)})}function Wr(e){let t=Kr(e);if(t===null)throw Error(`CommittedEd25519SignerPackageV1 must be an object`);return Y(t,[`kind`,`materialActivation`,`targetBinding`,`applicationBinding`,`participantIds`,`activationReceipt`,`deriver_a_client_package`,`deriver_b_client_package`],`CommittedEd25519SignerPackageV1`),{kind:Reflect.get(t,`kind`),materialActivation:Reflect.get(t,`materialActivation`),targetBinding:Reflect.get(t,`targetBinding`),applicationBinding:Reflect.get(t,`applicationBinding`),participantIds:Reflect.get(t,`participantIds`),activationReceipt:Reflect.get(t,`activationReceipt`),deriver_a_client_package:Reflect.get(t,`deriver_a_client_package`),deriver_b_client_package:Reflect.get(t,`deriver_b_client_package`)}}function Gr(e){let t=Kr(e);if(t===null)throw Error(`CommittedEcdsaSignerPackageV1 must be an object`);return Y(t,[`kind`,`materialActivation`,`encryptedTargetClientShare`,`activationReceipt`],`CommittedEcdsaSignerPackageV1`),{kind:Reflect.get(t,`kind`),materialActivation:Reflect.get(t,`materialActivation`),encryptedTargetClientShare:Reflect.get(t,`encryptedTargetClientShare`),activationReceipt:Reflect.get(t,`activationReceipt`)}}function Kr(e){return typeof e==`object`&&e&&!Array.isArray(e)?e:null}function Y(e,t,n){let r=new Set(t),i=Object.keys(e);if(i.length!==t.length)throw Error(`${n} contains unexpected fields`);for(let e of i)if(!r.has(e))throw Error(`${n} contains unexpected fields`);for(let r of t)if(!Object.prototype.hasOwnProperty.call(e,r))throw Error(`${n}.${r} is required`)}const qr=[`version`,`purpose`,`linkSessionId`,`linkPublicKeyB64u`,`devicePublicKeyB64u`,`requestedPermission`,`targetFactor`,`issuedAtMs`,`expiresAtMs`];function Jr(...e){return(t,n)=>{if(!e.includes(t))throw Error(`${n} is unsupported`);return t}}function Yr(e,t){if(typeof e!=`string`||!/^[0-9a-f]{64}$/.test(e))throw Error(`${t} must be 32 canonical lowercase hex bytes`);return e}function Xr(e,t){if(typeof e!=`string`||e.length===0||!/^[A-Za-z0-9_-]+$/.test(e))throw Error(`${t} must be canonical unpadded base64url`);try{let t=m(e);if(t.length!==32||p(t)!==e)throw Error(`non-canonical`)}catch{throw Error(`${t} must be a canonical 32-byte unpadded base64url key`)}return e}function Zr(e,t){if(typeof e!=`string`||e.length===0||!/^[A-Za-z0-9_-]+$/.test(e))throw Error(`${t} must be canonical unpadded base64url`);try{let t=m(e);if(t.length===0||p(t)!==e)throw Error(`non-canonical`)}catch{throw Error(`${t} must be canonical unpadded base64url`)}return e}function Qr(e,t,n){let r=Zr(e,n),i=m(r);try{if(i.length!==t)throw Error(`${n} must encode ${t} bytes`);return r}finally{i.fill(0)}}const X=BigInt(`0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff`),$r=X-3n,ei=BigInt(`0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b`);function ti(e){let t=0n;for(let n of e)t=t<<8n|BigInt(n);return t}function ni(e){let t=ti(e.subarray(1,33)),n=ti(e.subarray(33,65));return t>=X||n>=X?!1:n*n%X===(t*t*t%X+$r*t%X+ei)%X}function ri(e,t){let n=Qr(e,65,t),r=m(n);try{if(r[0]!==4)throw Error(`${t} must be an uncompressed SEC1 P-256 point`);if(!ni(r))throw Error(`${t} must be an on-curve P-256 point`);return n}finally{r.fill(0)}}function ii(e){return Xr(e,`LinkDevicePublicKeyB64u`)}function ai(e,t){return _e(Zr(e,t),t)}function oi(e,t){if(e!==`ed25519`&&e!==`ecdsa_secp256k1`)throw Error(`${t} must identify a supported key family`);return e}function si(e,t,n){if(t<=e)throw Error(`${n}.expiresAtMs must be after issuedAtMs`)}function ci(e){return{kind:e.kind,permissions:[...ne(e)]}}function li(e){let t={version:e.version,purpose:e.purpose,linkSessionId:e.linkSessionId,linkPublicKeyB64u:e.linkPublicKeyB64u,devicePublicKeyB64u:e.devicePublicKeyB64u,requestedPermission:ci(e.requestedPermission),targetFactor:e.targetFactor,issuedAtMs:e.issuedAtMs,expiresAtMs:e.expiresAtMs};return e.targetFactor.kind===`email_otp`?{...t,targetEmail:e.targetEmail}:t}function ui(e,t){switch(g(e,[`kind`],t).kind){case`passkey_prf`:return{kind:`passkey_prf`};case`email_otp`:return{kind:`email_otp`};default:throw Error(`${t}.kind is unsupported`)}}function di(){return M({kind:b(`passkey_prf`)})}function fi(){return M({kind:b(`email_otp`)})}function pi(){return M({kind:b(`existing_enrollment`)})}function mi(){return M({kind:b(`new_enrollment`)})}function hi(){return we(`kind`,[pi(),mi()])}function gi(e,t){return hi()(e,t)}function _i(){return M({enrollmentSealKeyVersion:O,clientUnlockPublicKeyB64u:O,unlockKeyVersion:O,serverSealedFactorCiphertextB64u:O})}function vi(e,t){let n=d(e,t);if(n.kind===`passkey_prf`)return g(n,[`kind`],t),{kind:`passkey_prf`};if(n.kind===`email_otp`){let e=gi(n.enrollment,`${t}.enrollment`),r=D(n.targetEmail,`${t}.targetEmail`);return e.kind===`existing_enrollment`?{kind:`email_otp`,targetEmail:r,enrollment:e,baseWalletAuthMethodId:j(g(n,[`kind`,`targetEmail`,`enrollment`,`baseWalletAuthMethodId`],t).baseWalletAuthMethodId,`${t}.baseWalletAuthMethodId`)}:(g(n,[`kind`,`targetEmail`,`enrollment`],t),{kind:`email_otp`,targetEmail:r,enrollment:e})}throw Error(`${t}.kind is unsupported`)}function yi(e){if(e.version!==`v5`)throw Error(`QrLinkedDeviceSessionPayloadV5.version is invalid`);if(e.purpose!==`linked_device_lane_creation`)throw Error(`QrLinkedDeviceSessionPayloadV5.purpose is invalid`);let t=k(e.issuedAtMs,`QrLinkedDeviceSessionPayloadV5.issuedAtMs`),n=k(e.expiresAtMs,`QrLinkedDeviceSessionPayloadV5.expiresAtMs`);si(t,n,`QrLinkedDeviceSessionPayloadV5`);let r={version:`v5`,purpose:`linked_device_lane_creation`,linkSessionId:w(e.linkSessionId,`QrLinkedDeviceSessionPayloadV5.linkSessionId`),linkPublicKeyB64u:Xr(e.linkPublicKeyB64u,`QrLinkedDeviceSessionPayloadV5.linkPublicKeyB64u`),devicePublicKeyB64u:Xr(e.devicePublicKeyB64u,`QrLinkedDeviceSessionPayloadV5.devicePublicKeyB64u`),requestedPermission:ue(e.requestedPermission,`QrLinkedDeviceSessionPayloadV5.requestedPermission`),targetFactor:ui(e.targetFactor,`QrLinkedDeviceSessionPayloadV5.targetFactor`),issuedAtMs:t,expiresAtMs:n};return r.targetFactor.kind===`email_otp`?{...r,targetFactor:{kind:`email_otp`},targetEmail:D(e.targetEmail,`QrLinkedDeviceSessionPayloadV5.targetEmail`)}:{...r,targetFactor:{kind:`passkey_prf`}}}function bi(e){let t=d(e,`QrLinkedDeviceSessionPayloadV5`);return yi(g(t,ui(t.targetFactor,`QrLinkedDeviceSessionPayloadV5.targetFactor`).kind===`email_otp`?[...qr,`targetEmail`]:qr,`QrLinkedDeviceSessionPayloadV5`))}function xi(e){let t=yi(li(e)),n={v:5,s:t.linkSessionId,l:t.linkPublicKeyB64u,d:t.devicePublicKeyB64u,a:ci(t.requestedPermission),f:t.targetFactor.kind===`passkey_prf`?`p`:`e`,i:t.issuedAtMs,e:t.expiresAtMs};return t.targetFactor.kind===`email_otp`?JSON.stringify({...n,t:t.targetEmail}):JSON.stringify(n)}function Si(){return M({payload:bi,requestedAtMs:k})}function Ci(e){return Si()(e,`LinkedDeviceOwnerAuthorizationRequestV1`)}function wi(){let e=e=>M({state:b(e),deviceId:he});return[M({state:b(`displaying_qr`)}),e(`claimed`),e(`awaiting_target_factor`),e(`awaiting_source_contribution`),e(`provisioning`),M({state:b(`authority_pending_local_install`),deviceId:he,authorityId:C,packageSetDigestB64u:x}),M({state:b(`active`),deviceId:he,authorityId:C,activatedAtMs:k}),M({state:b(`failed_before_commit`),error:Ei}),M({state:b(`cancelled`),cancelledAtMs:k}),M({state:b(`expired`),expiredAtMs:k})]}function Ti(e){let t=d(e,`LinkSessionStateV1`).state;if(typeof t!=`string`)throw Error(`LinkSessionStateV1.state is invalid`);let n=wi().find(e=>e.shape.state.literals.includes(t));if(!n)throw Error(`LinkSessionStateV1.state ${t} is unsupported`);return n(e,`LinkSessionStateV1.${t}`)}function Ei(e){let t=g(e,[`kind`,`reason`],`LinkPrecommitFailureV1`);if(t.kind!==`invalid_input`&&t.kind!==`unauthorized_source`&&t.kind!==`revoked_source`&&t.kind!==`permission_attenuation_failed`&&t.kind!==`target_factor_failed`&&t.kind!==`expired_session`&&t.kind!==`cancelled_session`&&t.kind!==`claim_conflict`&&t.kind!==`package_preparation_failed`)throw Error(`LinkPrecommitFailureV1.kind is invalid`);return{kind:t.kind,reason:O(t.reason,`LinkPrecommitFailureV1.reason`)}}function Di(){return M({kind:b(`linked_device_session_projection_v1`),linkSessionId:w,qrPayload:bi,revision:me,createdAtMs:k,updatedAtMs:k,state:Ti})}function Oi(e){return Di()(e,`LinkSessionProjectionV1`)}function ki(){return M({kind:b(`linked_device_session_event_v1`),linkSessionId:w,state:Ti,emittedAtMs:k})}function Ai(e){return ki()(e,`LinkSessionTransportEventV1`)}function ji(){return we(`outcome`,[M({outcome:b(`pending`),state:Ni}),M({outcome:b(`replayed`),replay:M({state:()=>`pending`,session:Ni})})])}function Mi(e){return ji()(e,`LinkedDeviceApprovalResultV1`)}function Ni(e){let t=Ti(e);switch(t.state){case`awaiting_target_factor`:case`awaiting_source_contribution`:case`provisioning`:case`authority_pending_local_install`:return t;default:throw Error(`LinkedDeviceApprovalResultV1 state is not pending`)}}function Pi(){return M({kind:b(`linked_device_session_claim_v1`),linkSessionId:w,walletId:A,enrollmentId:S,deviceId:E,devicePublicKeyB64u:Xr,targetFactor:ui,sessionRevision:k,claimedAtMs:k,claimExpiresAtMs:k},(e,t)=>si(e.claimedAtMs,e.claimExpiresAtMs,t))}function Fi(e){return Pi()(e,`LinkedDeviceSessionClaimV1`)}function Ii(){return M({kind:b(`wallet_session`),walletSessionId:ve,authorizationId:xe})}function Li(e,t=`ownerAuthorization`){if(d(e,t).kind!==`wallet_session`)throw Error(`${t}.kind is unsupported`);return Ii()(e,t)}function Ri(){return{kind:b(`linked_device_approval_v1`),linkSessionId:w,walletId:A,enrollmentId:S,deviceId:E,linkPublicKeyB64u:Xr,devicePublicKeyB64u:Xr,permission:ue,targetFactor:vi,ownerAuthorization:Li,approvedAtMs:k,expiresAtMs:k}}function zi(e,t){si(e.approvedAtMs,e.expiresAtMs,t)}function Bi(){return M(Ri(),zi)}function Vi(){return M({...Ri(),sourceContribution:tr},zi)}function Hi(e){let t=d(e,`LinkedDeviceApprovalV1`);return(t.sourceContribution===void 0?Bi():Vi())(t,`LinkedDeviceApprovalV1`)}function Ui(){return M({kind:b(`linked_device_approval_delivery_v1`),approval:Hi})}function Wi(e){return Ui()(e,`LinkedDeviceApprovalDeliveryV1`)}function Gi(){return{kind:b(`linked_device_target_preparation_v1`),linkSessionId:w,walletId:A,enrollmentId:S,deviceId:E,deliveryRecipientPublicKey65B64u:ri,walletAuthMethodId:j,ed25519ExportRoot:Se(aa()),ordinarySignerMaterialRecipientRequirements:ca,issuedAtMs:k,expiresAtMs:k}}function Ki(e,t){if(e.expiresAtMs<=e.issuedAtMs)throw Error(`${t}.expiresAtMs must follow issuedAtMs`)}function qi(){return M({...Gi(),targetFactor:di(),passkeyCreationOptions:ia,passkeyConfigurationDigestB64u:x},(e,t)=>{if(Ki(e,t),e.passkeyCreationOptions.walletAuthMethodId!==e.walletAuthMethodId)throw Error(`${t}.passkeyCreationOptions.walletAuthMethodId must match the preparation`)})}function Ji(){return M({...Gi(),targetFactor:fi(),targetEmail:D,enrollment:pi(),baseWalletAuthMethodId:j},Ki)}function Yi(){return M({...Gi(),targetFactor:fi(),targetEmail:D,enrollment:mi()},Ki)}function Xi(e){let t=`LinkedDeviceTargetPreparationV1`,n=d(e,t);return ui(n.targetFactor,`${t}.targetFactor`).kind===`passkey_prf`?qi()(n,t):(gi(n.enrollment,`${t}.enrollment`).kind===`new_enrollment`?Yi():Ji())(n,t)}function Zi(){return M({kind:b(`linked_device_target_preparation_request_v1`),linkSessionId:w,deliveryRecipientPublicKey65B64u:ri})}function Qi(e){return Zi()(e,`LinkedDeviceTargetPreparationRequestV1`)}function $i(){return M({baseWalletAuthMethodId:j,maskedEmailHint:(e,t)=>{if(typeof e!=`string`||e.length===0)throw Error(`${t} is invalid`);return e}})}function ea(){let e=$i(),t=t=>e(t,`LinkedDeviceEmailOtpBaseFactorChoiceV1`);return{selected:M({kind:b(`selected`),choice:t}),selection_required:M({kind:b(`selection_required`),choices:(e,n)=>{if(!Array.isArray(e)||e.length===0)throw Error(`${n} must not be empty`);let r=e.map(t);return[r[0],...r.slice(1)]}}),unavailable:M({kind:b(`unavailable`),reason:Jr(`no_active_email_otp_base_factor`)})}}function ta(e){let t=`LinkedDeviceEmailOtpBaseFactorResolutionV1`,n=d(e,t),r=ea();switch(n.kind){case`selected`:case`selection_required`:case`unavailable`:return r[n.kind](n,t);default:throw Error(`${t}.kind is unsupported`)}}function na(){return M({revision:k,resolution:ta})}function ra(e){return na()(e,`LinkedDeviceEmailOtpBaseFactorResolutionResultV1`)}function ia(e,t){let n=g(e,[`kind`,`walletAuthMethodId`,`challengeId`,`challengeB64u`,`rpId`,`user`,`pubKeyCredParams`,`authenticatorSelection`,`timeoutMs`,`attestation`,`extensions`,`excludeCredentials`],t),r=j(n.walletAuthMethodId,`${t}.walletAuthMethodId`);if(g(n.user,[`idB64u`,`name`,`displayName`],`${t}.user`),g(n.authenticatorSelection,[`residentKey`,`userVerification`],`${t}.authenticatorSelection`),g(g(g(n.extensions,[`prf`],`${t}.extensions`).prf,[`eval`],`${t}.extensions.prf`).eval,[`firstB64u`,`secondB64u`],`${t}.extensions.prf.eval`),!Array.isArray(n.pubKeyCredParams))throw Error(`${t}.pubKeyCredParams must be an array`);if(n.pubKeyCredParams.forEach((e,n)=>{g(e,[`type`,`alg`],`${t}.pubKeyCredParams[${n}]`)}),!Array.isArray(n.excludeCredentials))throw Error(`${t}.excludeCredentials must be an array`);n.excludeCredentials.forEach((e,n)=>{g(e,[`type`,`id`],`${t}.excludeCredentials[${n}]`)});let i=pt(n);return{kind:i.kind,walletAuthMethodId:r,challengeId:i.challengeId,challengeB64u:i.challengeB64u,rpId:i.rpId,user:i.user,pubKeyCredParams:i.pubKeyCredParams,authenticatorSelection:i.authenticatorSelection,timeoutMs:i.timeoutMs,attestation:i.attestation,extensions:i.extensions,excludeCredentials:i.excludeCredentials}}function aa(){return M({kind:b(`linked_device_ed25519_export_root_preparation_v1`),walletKeyId:be,applicationBindingDigestB64u:x,registeredPublicKeyB64u:ce,revocationEpoch:me})}function oa(e,t,n){if(!Array.isArray(e)||e.length===0||e.length>2)throw Error(`${n} must contain one or two entries`);let r=e.map((e,r)=>t(e,`${n}[${r}]`));if(new Set(r.map(e=>e.keyFamily)).size!==r.length)throw Error(`${n} repeats a key family`);if(new Set(r.map(e=>String(e.walletKeyId))).size!==r.length)throw Error(`${n} repeats a wallet key`);if(r.length===2&&(r[0]?.keyFamily!==`ed25519`||r[1]?.keyFamily!==`ecdsa_secp256k1`))throw Error(`${n} must be ordered Ed25519 then ECDSA`);return r}function sa(){return M({kind:b(`ordinary_signer_material_recipient_requirement_v1`),keyFamily:oi,walletKeyId:be})}function ca(e){let t=oa(e,sa(),`LinkedDeviceTargetPreparationV1.ordinarySignerMaterialRecipientRequirements`),n=t[0];if(!n)throw Error(`ordinary signer material recipient requirements are empty`);return[n,...t.slice(1)]}const la=b(`ble`,`cable`,`hybrid`,`internal`,`nfc`,`smart-card`,`usb`);function ua(e,t){let n=te(e,t).map((e,n)=>la(e,`${t}[${n}]`));if(new Set(n).size!==n.length)throw Error(`${t} contains duplicates`);return n}function da(){return M({kind:b(`linked_device_webauthn_registration_v1`),credentialIdB64u:ai,authenticatorAttachment:Se(b(`platform`,`cross-platform`)),clientDataJsonB64u:Zr,attestationObjectB64u:Zr,transports:ua})}function fa(){let e=e=>(t,n)=>{if(t!==e)throw Error(`${n} does not match its kind`);return e};return we(`kind`,[M({kind:b(`ordinary_ed25519_signer_material_recipient_request_v1`),keyFamily:e(`ed25519`),walletKeyId:be,recipientPublicKeyB64u:(e,t)=>Qr(e,32,t)}),M({kind:b(`ordinary_ecdsa_signer_material_recipient_request_v1`),keyFamily:e(`ecdsa_secp256k1`),walletKeyId:be,clientEphemeralPublicKey:ge})])}function pa(e){let t=oa(e,fa(),`LinkedDeviceTargetCredentialRegistrationV1.ordinarySignerMaterialRecipientRequests`),n=t[0];if(!n)throw Error(`ordinary signer material recipient requests are empty`);return[n,...t.slice(1)]}function ma(){return{kind:b(`linked_device_target_credential_registration_v1`),linkSessionId:w,walletId:A,enrollmentId:S,deviceId:E,walletAuthMethodId:j}}function ha(){return M({...ma(),targetFactor:di(),targetPreparationDigestB64u:x,ordinarySignerMaterialRecipientRequests:pa,webauthnRegistration:da(),registeredAtMs:k})}function ga(){return M({...ma(),targetFactor:fi(),targetEmail:D,targetPreparationDigestB64u:x,ordinarySignerMaterialRecipientRequests:pa,emailOtpVerificationGrant:Pa,registeredAtMs:k})}function _a(){return M({...ma(),targetFactor:fi(),targetEmail:D,targetPreparationDigestB64u:x,ordinarySignerMaterialRecipientRequests:pa,emailOtpVerificationGrant:Pa,emailOtpEnrollment:_i(),registeredAtMs:k})}function va(e){let t=`LinkedDeviceTargetCredentialRegistrationV1`,n=d(e,t);return ui(n.targetFactor,`${t}.targetFactor`).kind===`passkey_prf`?ha()(n,t):(Pa(n.emailOtpVerificationGrant).enrollment.kind===`new_enrollment`?_a():ga())(n,t)}function ya(){return M({kind:b(`linked_device_target_credential_registration_result_v1`),outcome:b(`applied`,`replayed`),linkSessionId:w,walletId:A,enrollmentId:S,deviceId:E,walletAuthMethodId:j,targetPreparationDigestB64u:x,targetFactor:Ta,ordinarySignerMaterialPreparations:ir,ordinarySignerMaterialRecipientRequests:pa,keyManifestDigestB64u:x},(e,t)=>{let{authMethod:n}=e.targetFactor;if(n.walletAuthMethodId!==e.walletAuthMethodId||n.walletId!==e.walletId)throw Error(`${t} target identity differs`)})}function ba(e){return ya()(e,`LinkedDeviceTargetCredentialRegistrationResultV1`)}function xa(e,t){if(e.verifiedAtMs<e.authMethod.createdAtMs)throw Error(`${t}.verifiedAtMs precedes authMethod.createdAtMs`)}function Sa(){return M({kind:b(`verified_passkey_target_v1`),authMethod:Da,verificationDigestB64u:x,verifiedAtMs:k},xa)}function Ca(){return M({kind:b(`verified_email_otp_target_v1`),authMethod:ka,targetEmail:D,enrollment:pi(),baseWalletAuthMethodId:j,providerUserId:O,verificationDigestB64u:x,verifiedAtMs:k},xa)}function wa(){return M({kind:b(`verified_email_otp_target_v1`),authMethod:ka,targetEmail:D,enrollment:mi(),providerUserId:O,verificationDigestB64u:x,verifiedAtMs:k},xa)}function Ta(e,t){let n=d(e,t);if(n.kind===`verified_passkey_target_v1`)return Sa()(n,t);if(n.kind!==`verified_email_otp_target_v1`)throw Error(`${t}.kind is invalid`);return(gi(n.enrollment,`${t}.enrollment`).kind===`existing_enrollment`?Ca():wa())(n,t)}function Ea(){return M({walletAuthMethodId:j,walletId:A,createdAtMs:k,kind:b(`passkey`),rpId:pe,credentialIdB64u:_e,credentialPublicKeyB64u:Zr,counter:me})}function Da(e,t){return Ea()(e,t)}function Oa(){return M({walletAuthMethodId:j,walletId:A,createdAtMs:k,kind:b(`email_otp`),emailHashHex:Yr,registrationAuthorityId:O})}function ka(e,t){return Oa()(e,t)}function Aa(e){return{kind:b(`linked_device_email_otp_verification_grant_v1`),grantId:O,grantToken:O,challengeId:O,linkSessionId:w,walletId:A,enrollmentId:S,deviceId:E,targetPreparationDigestB64u:x,targetEmail:D,enrollment:e,emailHashHex:Yr,registrationAuthorityId:O,providerUserId:O,authorityDigestB64u:x,issuedAtMs:k,expiresAtMs:k}}function ja(e,t){si(e.issuedAtMs,e.expiresAtMs,t)}function Ma(){return M({...Aa(pi()),baseWalletAuthMethodId:j},ja)}function Na(){return M(Aa(mi()),ja)}function Pa(e){let t=`LinkedDeviceEmailOtpVerificationGrantV1`,n=d(e,t);return(gi(n.enrollment,`${t}.enrollment`).kind===`new_enrollment`?Na():Ma())(n,t)}function Fa(){return M({kind:b(`email_otp_factor_release_v1`),challengeId:O,enrollmentId:O,enrollmentSealKeyVersion:O,serverEphemeralPublicKey65B64u:ri,nonce12B64u:(e,t)=>Qr(e,12,t),ciphertextB64u:Zr})}function Ia(e){return Fa()(e,`LinkedDeviceEmailOtpFactorReleaseEnvelopeV1`)}function La(){return M({kind:b(`linked_device_email_otp_challenge_start_request_v1`),linkSessionId:w,workerEphemeralPublicKey65B64u:ri})}function Ra(e){return La()(e,`LinkedDeviceEmailOtpChallengeStartRequestV1`)}function za(){return M({kind:b(`linked_device_email_otp_challenge_resend_request_v1`),linkSessionId:w,challengeId:O})}function Ba(e){return za()(e,`LinkedDeviceEmailOtpChallengeResendRequestV1`)}function Va(){return M({kind:b(`linked_device_email_otp_challenge_verify_request_v1`),linkSessionId:w,challengeId:O,otpCode:(e,t)=>{if(typeof e!=`string`||!/^[0-9]{6,10}$/.test(e))throw Error(`${t} is invalid`);return e}})}function Ha(e){return Va()(e,`LinkedDeviceEmailOtpChallengeVerifyRequestV1`)}function Ua(){return M({kind:b(`linked_device_email_otp_challenge_result_v1`),challengeId:O,maskedEmailHint:O,expiresAtMs:k,resendAvailableAtMs:k})}function Wa(e){return Ua()(e,`LinkedDeviceEmailOtpChallengeResultV1`)}function Ga(e){let t=g(e,[`kind`,`verificationGrant`,`factorRelease`],`LinkedDeviceEmailOtpVerificationResultV1`);if(t.kind!==`linked_device_email_otp_verification_result_v1`)throw Error(`LinkedDeviceEmailOtpVerificationResultV1.kind is invalid`);let n=Pa(t.verificationGrant);if(Ka(n)){if(t.factorRelease!==null)throw Error(`new linked-device Email OTP enrollment cannot carry a factor release`);return{kind:`linked_device_email_otp_verification_result_v1`,verificationGrant:n,factorRelease:null}}let r=Ia(t.factorRelease);if(r.challengeId!==n.challengeId)throw Error(`LinkedDeviceEmailOtpVerificationResultV1 challenge binding changed`);return{kind:`linked_device_email_otp_verification_result_v1`,verificationGrant:n,factorRelease:r}}function Ka(e){return e.enrollment.kind===`new_enrollment`}function qa(e){let t=k(e.issuedAtMs,`QrLinkedDeviceSessionPayloadV5.issuedAtMs`),n=k(e.expiresAtMs,`QrLinkedDeviceSessionPayloadV5.expiresAtMs`);si(t,n,`QrLinkedDeviceSessionPayloadV5`);let r=ui(e.targetFactor,`QrLinkedDeviceSessionPayloadV5.targetFactor`);if(r.kind===`passkey_prf`)return{version:`v5`,purpose:`linked_device_lane_creation`,linkSessionId:e.linkSessionId,linkPublicKeyB64u:e.linkPublicKeyB64u,devicePublicKeyB64u:e.devicePublicKeyB64u,requestedPermission:ue(ci(e.requestedPermission),`QrLinkedDeviceSessionPayloadV5.requestedPermission`),targetFactor:r,issuedAtMs:t,expiresAtMs:n};if(e.targetEmail===void 0)throw Error(`QrLinkedDeviceSessionPayloadV5.targetEmail is required for Email OTP`);return{version:`v5`,purpose:`linked_device_lane_creation`,linkSessionId:e.linkSessionId,linkPublicKeyB64u:e.linkPublicKeyB64u,devicePublicKeyB64u:e.devicePublicKeyB64u,requestedPermission:ue(ci(e.requestedPermission),`QrLinkedDeviceSessionPayloadV5.requestedPermission`),targetFactor:r,targetEmail:D(e.targetEmail,`QrLinkedDeviceSessionPayloadV5.targetEmail`),issuedAtMs:t,expiresAtMs:n}}function Ja(e){return{kind:`linked_device_session_claim_request_v1`,payload:e}}function Ya(e,t,n){let r=k(e,`${n}.approvedAtMs`),i=k(t,`${n}.expiresAtMs`);return si(r,i,n),{approvedAtMs:r,expiresAtMs:i}}function Xa(e){let t=Ya(e.approvedAtMs,e.expiresAtMs,`LinkedDeviceApprovalV1`);return Hi({kind:`linked_device_approval_v1`,...e,...t})}function Za(e){return va({kind:`linked_device_target_credential_registration_v1`,...e})}function Qa(e){return{kind:`linked_device_session_cancel_unclaimed_request_v1`,linkSessionId:e.linkSessionId,reason:`user_cancelled`,requestedAtMs:k(e.requestedAtMs,`LinkedDeviceSessionCancelUnclaimedRequestV1.requestedAtMs`)}}function $a(e){return{kind:`linked_device_session_cancel_claimed_request_v1`,...e,requestedAtMs:k(e.requestedAtMs,`LinkedDeviceSessionCancelClaimedRequestV1.requestedAtMs`)}}const eo=[`chrome`,`safari`,`firefox`,`edge`,`other`],to=[`macos`,`ios`,`windows`,`android`,`linux`,`other`];function no(e){return typeof e==`string`&&eo.some(t=>t===e)}function ro(e){return typeof e==`string`&&to.some(t=>t===e)}function io(e){if(!e||typeof e!=`object`||Array.isArray(e))return null;let t=e,n=typeof t.label==`string`?t.label.trim():``;if(!n||!no(t.browser)||!ro(t.os)||typeof t.synced!=`boolean`||!Array.isArray(t.transports))return null;let r=t.transports.map(e=>typeof e==`string`?e.trim():``).filter(e=>e.length>0),i=typeof t.provider==`string`?t.provider.trim():``,a=typeof t.providerLabel==`string`?t.providerLabel.trim():``;return{label:n,browser:t.browser,os:t.os,synced:t.synced,transports:r,...i?{provider:i}:{},...a?{providerLabel:a}:{}}}function ao(e){return(t,n)=>{if(!Array.isArray(t))throw Error(`${n} is invalid`);return t.map((t,r)=>e(t,`${n}[${r}]`))}}function oo(e,t){let n=j(e,t);if(n.startsWith(`wallet-authority:`)||n.startsWith(`authority:`))throw Error(`${t} must identify a WalletAuthMethodId`);return n}function so(e,t){let n=me(e,t);if(n<1)throw Error(`${t} must be a positive safe integer`);return n}function co(e,t){let n=io(e);if(!n)throw Error(`${t} is invalid`);return n}function lo(){return we(`kind`,[M({kind:b(`passkey`),walletAuthMethodId:j,credentialIdB64u:_e,device:co}),M({kind:b(`email_otp`),walletAuthMethodId:j,email:D})])}function uo(e,t){return lo()(e,t)}function fo(){return M({deviceId:E,enrollmentId:S,walletId:A,credential:uo,permission:ue,keyManifestDigestB64u:x,coveredWalletKeys:ao(be),state:b(`provisioning`,`active`,`suspended`,`expired`,`revoked`),createdAtMs:k,lastActivityAtMs:k,revocationEpoch:me})}function po(e){return fo()(e,`LinkedDeviceSummaryV1`)}function mo(){return M({kind:b(`linked_device_list_request_v1`),walletId:A,limit:so,cursor:Ee})}function ho(e){return mo()(e,`LinkedDeviceListRequestV1`)}function go(){return M({walletId:A,walletAuthorityId:C,credential:uo,createdAtMs:k,lastActivityAtMs:k})}function _o(){let e=go();return M({devices:ao(po),ownerDevices:ao(t=>e(t,`OwnerDeviceSummaryV1`)),nextCursor:Ee})}function vo(e){return _o()(e,`LinkedDeviceListResultV1`)}function yo(){return M({kind:b(`linked_device_revoke_request_v1`),walletId:A,walletAuthMethodId:oo,requestedAtMs:k})}function bo(e){return yo()(e,`LinkedDeviceRevokeRequestV1`)}function xo(){return M({kind:b(`not_found`,`conflict`,`unauthorized`)})}function So(){return M({kind:b(`revoked`),walletAuthMethodId:oo,authorityId:C,revocationEpoch:me})}function Co(e){let t=d(e,`LinkedDeviceRevokeResultV1`);return(t.kind===`not_found`||t.kind===`conflict`||t.kind===`unauthorized`?xo():So())(t,`LinkedDeviceRevokeResultV1`)}function wo(e){return N({domain:`seams/linked-device/wallet-session-credential-delivery-aad/v1`,aad:e})}function To(e){let t=Mo(e,[`kind`,`namespace`,`orgId`,`projectId`,`envId`,`tenantId`,`principalId`],`LinkedDeviceWalletSessionCredentialDeliveryBindingV1`);if(t.kind!==`linked_device_wallet_session_credential_delivery_binding_v1`)throw Error(`LinkedDeviceWalletSessionCredentialDeliveryBindingV1.kind is invalid`);return{kind:`linked_device_wallet_session_credential_delivery_binding_v1`,namespace:Z(t.namespace,`namespace`),orgId:Z(t.orgId,`orgId`),projectId:Z(t.projectId,`projectId`),envId:Z(t.envId,`envId`),tenantId:Q(Me(t.tenantId)),principalId:Q(Oe(t.principalId))}}async function Eo(e){return Fe(wo(e))}async function Do(e){return Fe(N({domain:`seams/linked-device/wallet-session-credential-delivery-envelope/v1`,envelope:e}))}async function Oo(e){if(await Eo(e.aad)!==e.aadDigestB64u)throw Error(`linked-device Wallet Session credential delivery AAD digest is invalid`);if(await Do(e.envelope)!==e.envelopeDigestB64u)throw Error(`linked-device Wallet Session credential delivery envelope digest is invalid`);if(await Fe(N({domain:`seams/linked-device/delivery-recipient/v1`,recipientPublicKey65B64u:e.aad.recipientPublicKey65B64u}))!==e.recipientBindingDigestB64u)throw Error(`linked-device Wallet Session credential delivery recipient binding is invalid`)}function ko(e){let t=Mo(e,[`kind`,`aad`,`aadDigestB64u`,`recipientBindingDigestB64u`,`envelope`,`envelopeDigestB64u`,`installationReceiptDigestB64u`],`LinkedDeviceWalletSessionCredentialDeliveryV1`);if(t.kind!==`linked_device_wallet_session_credential_delivery_v1`)throw Error(`LinkedDeviceWalletSessionCredentialDeliveryV1.kind is invalid`);return{kind:`linked_device_wallet_session_credential_delivery_v1`,aad:Ao(t.aad),aadDigestB64u:P(t.aadDigestB64u),recipientBindingDigestB64u:P(t.recipientBindingDigestB64u),envelope:jo(t.envelope),envelopeDigestB64u:P(t.envelopeDigestB64u),installationReceiptDigestB64u:P(t.installationReceiptDigestB64u)}}function Ao(t){let i=Mo(t,[`kind`,`namespace`,`orgId`,`projectId`,`envId`,`tenantId`,`principalId`,`linkSessionId`,`walletId`,`authorityId`,`walletAuthMethodId`,`authorizationId`,`walletSessionId`,`quotaId`,`credentialDigestB64u`,`recipientPublicKey65B64u`,`issuedAtMs`,`expiresAtMs`],`LinkedDeviceWalletSessionCredentialDeliveryAadV1`);if(i.kind!==`linked_device_wallet_session_credential_delivery_aad_v1`)throw Error(`LinkedDeviceWalletSessionCredentialDeliveryAadV1.kind is invalid`);let a=No(i.issuedAtMs,`issuedAtMs`),o=No(i.expiresAtMs,`expiresAtMs`);if(o<=a)throw Error(`expiresAtMs must be after issuedAtMs`);return{kind:`linked_device_wallet_session_credential_delivery_aad_v1`,namespace:Z(i.namespace,`namespace`),orgId:Z(i.orgId,`orgId`),projectId:Z(i.projectId,`projectId`),envId:Z(i.envId,`envId`),tenantId:Q(Me(i.tenantId)),principalId:Q(Oe(i.principalId)),linkSessionId:Q(c(i.linkSessionId)),walletId:Q(n(i.walletId)),authorityId:Q(e(i.authorityId)),walletAuthMethodId:Q(r(i.walletAuthMethodId)),authorizationId:Q(je(i.authorizationId)),walletSessionId:Q(ke(i.walletSessionId)),quotaId:Q(De(i.quotaId)),credentialDigestB64u:P(i.credentialDigestB64u),recipientPublicKey65B64u:Fo(i.recipientPublicKey65B64u,65),issuedAtMs:a,expiresAtMs:o}}function jo(e){let t=Mo(e,[`kind`,`algorithm`,`serverEphemeralPublicKey65B64u`,`nonce12B64u`,`ciphertextB64u`],`LinkedDeviceWalletSessionCredentialEnvelopeV1`);if(t.kind!==`linked_device_wallet_session_credential_envelope_v1`||t.algorithm!==`p256-ecdh-aes256gcm-v1`)throw Error(`LinkedDeviceWalletSessionCredentialEnvelopeV1 identity is invalid`);return{kind:`linked_device_wallet_session_credential_envelope_v1`,algorithm:`p256-ecdh-aes256gcm-v1`,serverEphemeralPublicKey65B64u:Fo(t.serverEphemeralPublicKey65B64u,65),nonce12B64u:Fo(t.nonce12B64u,12),ciphertextB64u:Po(t.ciphertextB64u)}}function Mo(e,t,n){if(typeof e!=`object`||!e||Array.isArray(e))throw Error(`${n} must be an object`);let r=e,i=new Set(t);for(let e of Object.keys(r))if(!i.has(e))throw Error(`${n}.${e} is not supported`);for(let e of t)if(!(e in r))throw Error(`${n}.${e} is required`);return r}function Z(e,t){if(typeof e!=`string`||e.length===0||e.trim()!==e)throw Error(`${t} is required`);return e}function No(e,t){if(!Number.isSafeInteger(e)||Number(e)<=0)throw Error(`${t} is invalid`);return Number(e)}function Po(e){let t=Z(e,`base64url`);if(p(m(t))!==t)throw Error(`base64url is not canonical`);return t}function Fo(e,t){let n=Po(e),r=m(n);if(r.length!==t)throw Error(`base64url must contain ${t} bytes`);if(t===65&&r[0]!==4)throw Error(`P-256 public key is invalid`);return n}function Q(e){if(!e.ok)throw Error(e.error.message);return e.value}function Io(e,t){let n=Ue(e);if(!n.ok)throw Error(`${t} ${n.error}`);return n.value}function Lo(){return M({kind:b(`local_authority_installation_receipt_v1`),authorityId:T(C),walletId:T(A),authMethodId:T(j),deviceId:T(he),packageSetDigestB64u:T(x),installedActivationRefs:Io,installedRecordSetDigestB64u:T(x),targetFactorVerificationDigestB64u:T(x),installedAtMs:T(k)})}function Ro(e){return Lo()(e,`LocalAuthorityInstallationReceiptV1`)}function zo(){return M({kind:b(`local_authority_activation_final_ack_v1`),linkSessionId:T(w),authorityId:T(C),packageSetDigestB64u:T(x),authorizationId:T(xe),walletSessionId:T(ve),credentialDigestB64u:T(x),installationReceiptDigestB64u:T(x),acknowledgedAtMs:T(k)})}function Bo(e){return zo()(e,`LocalAuthorityActivationFinalAckV1`)}function Vo(e){let t=d(e,`ActivateInstalledAuthorityResultV1`);switch(t.kind){case`active`:{_(t,[`kind`,`authority`,`authMethod`,`walletSession`,`deliveryBinding`,`sealedDelivery`],`ActivateInstalledAuthorityResultV1`);let e=Ge(t.authority);if(!e.ok||e.value.state!==`active`)throw Error(`ActivateInstalledAuthorityResultV1.authority must be active`);let n=qe(t.authMethod);if(!n||n.status!==`active`)throw Error(`ActivateInstalledAuthorityResultV1.authMethod must be active`);let r=le(t.walletSession),i=To(t.deliveryBinding),a=ko(t.sealedDelivery);if(e.value.walletId!==n.walletId||e.value.authorityId!==n.walletAuthorityId||r.walletId!==e.value.walletId||r.authorityId!==e.value.authorityId||r.authMethodId!==n.walletAuthMethodId||r.authorityDigestB64u!==e.value.authorityDigestB64u||r.authorityRevocationEpoch!==e.value.revocationEpoch||i.namespace!==a.aad.namespace||i.orgId!==a.aad.orgId||i.projectId!==a.aad.projectId||i.envId!==a.aad.envId||i.tenantId!==a.aad.tenantId||i.principalId!==a.aad.principalId||a.aad.walletId!==r.walletId||a.aad.authorityId!==r.authorityId||a.aad.walletAuthMethodId!==r.authMethodId||a.aad.authorizationId!==r.authorizationId||a.aad.quotaId!==r.quotaId||a.aad.issuedAtMs!==r.issuedAtMs||a.aad.expiresAtMs!==r.expiresAtMs)throw Error(`ActivateInstalledAuthorityResultV1 identities do not match`);return{kind:`active`,authority:e.value,authMethod:n,walletSession:r,deliveryBinding:i,sealedDelivery:a}}case`pending_local_install`:return _(t,[`kind`,`authorityId`,`reason`],`ActivateInstalledAuthorityResultV1`),{kind:`pending_local_install`,authorityId:C(t.authorityId,`authorityId`),reason:Ho()(t.reason,`ActivationRetryReasonV1`)};case`integrity_error`:return _(t,[`kind`,`reason`],`ActivateInstalledAuthorityResultV1`),{kind:`integrity_error`,reason:Uo(t.reason)};default:throw Error(`ActivateInstalledAuthorityResultV1.kind is invalid`)}}function Ho(){return we(`kind`,[M({kind:b(`installation_receipt_not_found`)}),M({kind:b(`server_worker_activation_pending`)}),M({kind:b(`wallet_session_issuance_pending`)})])}function Uo(e){let t=d(e,`LinkIntegrityFailureV1`);switch(t.kind){case`authority_id_mismatch`:return _(t,[`kind`,`expectedAuthorityId`,`actualAuthorityId`],`LinkIntegrityFailureV1`),{kind:`authority_id_mismatch`,expectedAuthorityId:C(t.expectedAuthorityId,`expectedAuthorityId`),actualAuthorityId:C(t.actualAuthorityId,`actualAuthorityId`)};case`package_set_digest_mismatch`:return _(t,[`kind`,`expectedPackageSetDigestB64u`,`actualPackageSetDigestB64u`],`LinkIntegrityFailureV1`),{kind:`package_set_digest_mismatch`,expectedPackageSetDigestB64u:x(t.expectedPackageSetDigestB64u,`expectedPackageSetDigestB64u`),actualPackageSetDigestB64u:x(t.actualPackageSetDigestB64u,`actualPackageSetDigestB64u`)};case`installation_receipt_mismatch`:if(_(t,[`kind`,`field`],`LinkIntegrityFailureV1`),t.field!==`walletId`&&t.field!==`authMethodId`&&t.field!==`deviceId`&&t.field!==`targetFactorVerificationDigestB64u`&&t.field!==`installedActivationRefs`)throw Error(`LinkIntegrityFailureV1.field is invalid`);return{kind:`installation_receipt_mismatch`,field:t.field};default:throw Error(`LinkIntegrityFailureV1.kind is invalid`)}}new TextEncoder;async function Wo(e){return Fe(e.token)}function Go(e){return N({domain:`seams/linked-device/local-authority-installation-receipt/v1`,receipt:e})}async function Ko(e){return Fe(Go(e))}function qo(e,t){if(e===void 0)throw Error(`${t} is required`);return e}function Jo(e){return I(e.kind,`targetFactor.kind`)}function Yo(e){let t=e.pubKeyCredParams.map(e=>We([I(e.type,`passkeyCreationOptions.pubKeyCredParams.type`),I(String(e.alg),`passkeyCreationOptions.pubKeyCredParams.alg`)])),n=e.excludeCredentials.map(e=>We([I(e.type,`passkeyCreationOptions.excludeCredentials.type`),I(e.id,`passkeyCreationOptions.excludeCredentials.id`)]));return We([I(e.kind,`passkeyCreationOptions.kind`),I(e.walletAuthMethodId,`passkeyCreationOptions.walletAuthMethodId`),I(e.challengeId,`passkeyCreationOptions.challengeId`),I(e.challengeB64u,`passkeyCreationOptions.challengeB64u`),I(e.rpId,`passkeyCreationOptions.rpId`),I(e.user.idB64u,`passkeyCreationOptions.user.idB64u`),I(e.user.name,`passkeyCreationOptions.user.name`),I(e.user.displayName,`passkeyCreationOptions.user.displayName`),He(t.length,`passkeyCreationOptions.pubKeyCredParams`),...t.map(e=>F(e,`passkeyCreationOptions.pubKeyCredParams.item`)),I(e.authenticatorSelection.residentKey,`passkeyCreationOptions.authenticatorSelection.residentKey`),I(e.authenticatorSelection.userVerification,`passkeyCreationOptions.authenticatorSelection.userVerification`),Je(e.timeoutMs,`passkeyCreationOptions.timeoutMs`),I(e.attestation,`passkeyCreationOptions.attestation`),I(e.extensions.prf.eval.firstB64u,`passkeyCreationOptions.extensions.prf.eval.firstB64u`),I(e.extensions.prf.eval.secondB64u,`passkeyCreationOptions.extensions.prf.eval.secondB64u`),He(n.length,`passkeyCreationOptions.excludeCredentials`),...n.map(e=>F(e,`passkeyCreationOptions.excludeCredentials.item`))])}function Xo(e){return We([I(e.kind,`recipientRequirement.kind`),I(e.keyFamily,`recipientRequirement.keyFamily`),I(e.walletKeyId,`recipientRequirement.walletKeyId`)])}function Zo(e){return e===null?I(`none`,`ed25519ExportRoot.kind`):We([I(e.kind,`ed25519ExportRoot.kind`),I(e.walletKeyId,`ed25519ExportRoot.walletKeyId`),Ve(e.applicationBindingDigestB64u,`ed25519ExportRoot.applicationBindingDigestB64u`),Ke(e.registeredPublicKeyB64u,`ed25519ExportRoot.registeredPublicKeyB64u`),Je(e.revocationEpoch,`ed25519ExportRoot.revocationEpoch`)])}function Qo(e){let t=e.ordinarySignerMaterialRecipientRequirements.map(Xo),n=es(e)?e:void 0,r=n?.passkeyCreationOptions;if(e.targetFactor.kind===`passkey_prf`&&!r)throw Error(`passkey target preparation is missing creation options`);return We([I(`seams/linked-device/target-preparation/v1`,`domain`),I(e.kind,`kind`),I(e.linkSessionId,`linkSessionId`),I(e.walletId,`walletId`),I(e.enrollmentId,`enrollmentId`),I(e.deviceId,`deviceId`),F(Ke(e.deliveryRecipientPublicKey65B64u,`deliveryRecipientPublicKey65B64u`),`deliveryRecipientPublicKey65B64u`),I(e.walletAuthMethodId,`walletAuthMethodId`),F(Zo(e.ed25519ExportRoot),`ed25519ExportRoot`),F(Jo(e.targetFactor),`targetFactor`),...r?[F(Yo(r),`passkeyCreationOptions`),Ve(n.passkeyConfigurationDigestB64u,`passkeyConfigurationDigestB64u`)]:[],...$o(e),He(t.length,`ordinarySignerMaterialRecipientRequirements`),...t.map(e=>F(e,`ordinarySignerMaterialRecipientRequirements.item`)),Je(e.issuedAtMs,`issuedAtMs`),Je(e.expiresAtMs,`expiresAtMs`)])}function $o(e){return es(e)?[]:[I(e.targetEmail,`targetEmail`),I(e.enrollment.kind,`enrollment.kind`),...e.enrollment.kind===`existing_enrollment`?[I(qo(e.baseWalletAuthMethodId,`baseWalletAuthMethodId`),`baseWalletAuthMethodId`)]:[]]}function es(e){return e.targetFactor.kind===`passkey_prf`}async function ts(e){return Pe(Qo(e))}const ns=`x-seams-linked-device-proof-v1`,rs=6e4,is=6e4;async function as(e){return Pe(os(e,32,`devicePublicKeyB64u`))}function os(e,t,n){if(typeof e!=`string`||e.length===0||!/^[A-Za-z0-9_-]+$/.test(e))throw Error(`${n} is invalid`);let r;try{r=m(e)}catch{throw Error(`${n} is invalid`)}if(r.length!==t||p(r)!==e)throw Error(`${n} is invalid`);return r}function ss(e){return!e||typeof e!=`object`||Array.isArray(e)?null:e}function $(e){return typeof e==`string`?e.trim():``}function cs(e,t){let n=$(e);return n?{ok:!0,value:n}:{ok:!1,error:{code:`missing`,message:`${t} is required`}}}function ls(e){let t=typeof e==`number`?e:Number(e);return!Number.isSafeInteger(t)||t<1?{ok:!1,error:{code:`invalid`,message:`signerSlot must be an integer >= 1`}}:{ok:!0,value:t}}function us(e){return{ok:!1,error:{code:`invalid`,message:`${e} must be an object`}}}function ds(e){let n=t(e);return n.ok?{ok:!0,value:n.value}:{ok:!1,error:n.error}}function fs(e){let t=ss(e);if(!t)return us(`WalletIdentity`);let r=n(t.walletId);return r.ok?{ok:!0,value:{walletId:r.value}}:{ok:!1,error:r.error}}function ps(e){return{walletId:e.walletId}}function ms(e){let t=ss(e);if(!t)return us(`PasskeyAuthScope`);let n=fs(t.wallet);if(!n.ok)return n;let r=ds(t.rpId);return r.ok?{ok:!0,value:{wallet:n.value,rpId:r.value}}:r}function hs(e){return{wallet:e.wallet,rpId:e.rpId}}function gs(e){let t=$(e.credentialIdB64u);if(!t)throw Error(`credentialIdB64u is required`);return{kind:`passkey`,walletAuthMethodId:e.walletAuthMethodId,scope:e.scope,credentialIdB64u:t}}function _s(e){let t=$(e.emailHashHex),n=$(e.registrationAuthorityId);if(!t)throw Error(`emailHashHex is required`);if(!n)throw Error(`registrationAuthorityId is required`);return{kind:`email_otp`,walletAuthMethodId:e.walletAuthMethodId,wallet:e.wallet,emailHashHex:t,registrationAuthorityId:n}}function vs(e){let t=ss(e);if(!t)return us(`WalletAuthMethodBinding`);let n=$(t.kind),i=r(t.walletAuthMethodId);if(!i.ok)return{ok:!1,error:i.error};if(n===`passkey`){let e=ms(t.scope);if(!e.ok)return e;let n=cs(t.credentialIdB64u,`credentialIdB64u`);return n.ok?{ok:!0,value:gs({walletAuthMethodId:i.value,scope:e.value,credentialIdB64u:n.value})}:n}if(n===`email_otp`){if(`rpId`in t&&$(t.rpId))return{ok:!1,error:{code:`invalid`,message:`Email OTP auth-method binding must not include rpId`}};let e=fs(t.wallet);if(!e.ok)return e;let n=cs(t.emailHashHex,`emailHashHex`);if(!n.ok)return n;let r=cs(t.registrationAuthorityId,`registrationAuthorityId`);return r.ok?{ok:!0,value:_s({walletAuthMethodId:i.value,wallet:e.value,emailHashHex:n.value,registrationAuthorityId:r.value})}:r}return{ok:!1,error:{code:`invalid`,message:`WalletAuthMethodBinding kind is invalid`}}}function ys(e){return{kind:`implicit_near_account`,wallet:e.wallet,nearAccountId:e.nearAccountId}}function bs(e){return{kind:`named_near_account`,wallet:e.wallet,nearAccountId:e.nearAccountId}}function xs(e){let t=ss(e);if(!t)return us(`NearAccountBinding`);let n=fs(t.wallet);if(!n.ok)return n;let r=$(t.kind);if(r===`implicit_near_account`){let e=Be(t.nearAccountId);return e.ok?{ok:!0,value:ys({wallet:n.value,nearAccountId:e.value})}:{ok:!1,error:{code:e.code,message:e.message}}}if(r===`named_near_account`){let e=ze(t.nearAccountId);return e.ok?{ok:!0,value:bs({wallet:n.value,nearAccountId:e.value})}:{ok:!1,error:{code:e.code,message:e.message}}}return{ok:!1,error:{code:`invalid`,message:`NearAccountBinding kind is invalid`}}}function Ss(e){let t=ls(e.signerSlot);if(!t.ok)throw Error(t.error.message);return{kind:`near_ed25519_signer`,account:e.account,nearEd25519SigningKeyId:e.nearEd25519SigningKeyId,signerSlot:t.value}}function Cs(e){let t=ss(e);if(!t)return us(`NearEd25519SignerBinding`);let n=xs(t.account);if(!n.ok)return n;let r=cs(t.nearEd25519SigningKeyId,`nearEd25519SigningKeyId`);if(!r.ok)return r;let i=ls(t.signerSlot);return i.ok?{ok:!0,value:Ss({account:n.value,nearEd25519SigningKeyId:Ye(r.value),signerSlot:i.value})}:i}function ws(e){let t=typeof e==`string`?e.trim():``;if(!t.startsWith(`ederivation-key-`))throw Error(`Threshold ECDSA key handle is invalid`);return t}function Ts(e,t){let n=String(e??``).trim();if(!n)throw Error(`[threshold-ecdsa-key-handle] ${t} is required`);return n}function Es(e){return String(e??``).trim()||`default`}async function Ds(e){return`ederivation-key-${p(await Ne(N({domain:`seams.threshold_ecdsa.key_handle.v1`,ecdsaThresholdKeyId:Ts(e.ecdsaThresholdKeyId,`ecdsaThresholdKeyId`),signingRootId:Ts(e.signingRootId,`signingRootId`),signingRootVersion:Es(e.signingRootVersion)})))}`}function Os(e){return{code:`missing`,message:`${e} is required`}}function ks(e,t){return{code:`invalid`,message:`${e} ${t}`}}function As(e,t){if(e==null)return{ok:!1,error:Os(t)};if(typeof e!=`string`)return{ok:!1,error:ks(t,`must be a string`)};let n=e.trim();return n?l(n)?{ok:!1,error:ks(t,`must not contain whitespace or control characters`)}:{ok:!0,value:n}:{ok:!1,error:Os(t)}}function js(e,t){if(e==null)return{ok:!1,error:Os(t)};if(typeof e!=`string`||e.length===0)return{ok:!1,error:ks(t,`must be non-empty base64url`)};try{let n=m(e);if(n.length===0||p(n)!==e)return{ok:!1,error:ks(t,`must be canonical unpadded base64url`)}}catch{return{ok:!1,error:ks(t,`must be canonical unpadded base64url`)}}return{ok:!0,value:e}}function Ms(e,t,n){if(e==null)return{ok:!1,error:Os(t)};try{return{ok:!0,value:n(P(e))}}catch{return{ok:!1,error:ks(t,`must be canonical base64url for 32 bytes`)}}}function Ns(e){return e}function Ps(e){return e}function Fs(e){return e}function Is(e,t,n){let r=new Set(t);for(let t of Object.keys(e))if(!r.has(t))throw Error(`${n}.${t} is not supported`);for(let r of t)if(!(r in e))throw Error(`${n}.${r} is required`)}function Ls(e){return As(e,`laneHolderParticipantId`)}function Rs(e){return As(e,`signingWorkerParticipantId`)}function zs(e){return As(e,`signingWorkerRecipientKeyId`)}function Bs(e){return As(e,`laneHolderCustodyBindingId`)}function Vs(e){return Ms(e,`participantBindingDigestB64u`,Fs)}function Hs(e){return Ms(e,`custodyBindingDigestB64u`,Ns)}function Us(e){return Ms(e,`hpkePublicKeyDigestB64u`,Ps)}function Ws(e){return{kind:`lane_holder_custody_identity_v1`,custodyBindingId:e.custodyBindingId,custodyBindingDigestB64u:e.custodyBindingDigestB64u}}function Gs(e){return{kind:`signing_worker_recipient_identity_v1`,recipientKeyId:e.recipientKeyId,hpkePublicKeyB64u:e.hpkePublicKeyB64u,hpkePublicKeyDigestB64u:e.hpkePublicKeyDigestB64u}}function Ks(e,t=`laneHolderCustodyIdentity`){let n=d(e,t);if(Is(n,[`kind`,`custodyBindingId`,`custodyBindingDigestB64u`],t),n.kind!==`lane_holder_custody_identity_v1`)throw Error(`${t}.kind is invalid`);let r=Bs(n.custodyBindingId);if(!r.ok)throw Error(`${t}.${r.error.message}`);let i=Hs(n.custodyBindingDigestB64u);if(!i.ok)throw Error(`${t}.${i.error.message}`);return Ws({custodyBindingId:r.value,custodyBindingDigestB64u:i.value})}function qs(e,t=`signingWorkerRecipientIdentity`){let n=d(e,t);if(Is(n,[`kind`,`recipientKeyId`,`hpkePublicKeyB64u`,`hpkePublicKeyDigestB64u`],t),n.kind!==`signing_worker_recipient_identity_v1`)throw Error(`${t}.kind is invalid`);let r=zs(n.recipientKeyId);if(!r.ok)throw Error(`${t}.${r.error.message}`);let i=js(n.hpkePublicKeyB64u,`${t}.hpkePublicKeyB64u`);if(!i.ok)throw Error(i.error.message);let a=Us(n.hpkePublicKeyDigestB64u);if(!a.ok)throw Error(`${t}.${a.error.message}`);return Gs({recipientKeyId:r.value,hpkePublicKeyB64u:i.value,hpkePublicKeyDigestB64u:a.value})}function Js(e){return{kind:`lane_holder_participant_v1`,participantId:e.participantId,custodyBindingId:e.custody.custodyBindingId,custodyBindingDigestB64u:e.custody.custodyBindingDigestB64u,hpkePublicKeyB64u:e.hpkePublicKeyB64u,hpkePublicKeyDigestB64u:e.hpkePublicKeyDigestB64u,participantBindingDigestB64u:e.participantBindingDigestB64u}}function Ys(e){return{kind:`signing_worker_participant_v1`,participantId:e.participantId,recipientKeyId:e.recipient.recipientKeyId,hpkePublicKeyB64u:e.recipient.hpkePublicKeyB64u,hpkePublicKeyDigestB64u:e.recipient.hpkePublicKeyDigestB64u,participantBindingDigestB64u:e.participantBindingDigestB64u}}function Xs(e,t=`laneHolderParticipant`){let n=d(e,t);if(Is(n,[`kind`,`participantId`,`custodyBindingId`,`custodyBindingDigestB64u`,`hpkePublicKeyB64u`,`hpkePublicKeyDigestB64u`,`participantBindingDigestB64u`],t),n.kind!==`lane_holder_participant_v1`)throw Error(`${t}.kind is invalid`);let r=Ls(n.participantId);if(!r.ok)throw Error(`${t}.${r.error.message}`);let i=Ks({kind:`lane_holder_custody_identity_v1`,custodyBindingId:n.custodyBindingId,custodyBindingDigestB64u:n.custodyBindingDigestB64u},`${t}.custody`),a=js(n.hpkePublicKeyB64u,`${t}.hpkePublicKeyB64u`);if(!a.ok)throw Error(a.error.message);let o=Us(n.hpkePublicKeyDigestB64u);if(!o.ok)throw Error(`${t}.${o.error.message}`);let s=Vs(n.participantBindingDigestB64u);if(!s.ok)throw Error(`${t}.${s.error.message}`);return Js({participantId:r.value,custody:i,hpkePublicKeyB64u:a.value,hpkePublicKeyDigestB64u:o.value,participantBindingDigestB64u:s.value})}function Zs(e,t=`signingWorkerParticipant`){let n=d(e,t);if(Is(n,[`kind`,`participantId`,`recipientKeyId`,`hpkePublicKeyB64u`,`hpkePublicKeyDigestB64u`,`participantBindingDigestB64u`],t),n.kind!==`signing_worker_participant_v1`)throw Error(`${t}.kind is invalid`);let r=Rs(n.participantId);if(!r.ok)throw Error(`${t}.${r.error.message}`);let i=qs({kind:`signing_worker_recipient_identity_v1`,recipientKeyId:n.recipientKeyId,hpkePublicKeyB64u:n.hpkePublicKeyB64u,hpkePublicKeyDigestB64u:n.hpkePublicKeyDigestB64u},`${t}.recipient`),a=Vs(n.participantBindingDigestB64u);if(!a.ok)throw Error(`${t}.${a.error.message}`);return Ys({participantId:r.value,recipient:i,participantBindingDigestB64u:a.value})}const Qs=[`kind`,`signerId`,`participantIds`,`signingWorkerId`,`custodyKeyManifestDigestB64u`,`sourceIdentityDigestB64u`];function $s(e,t=`walletSignerId`){if(typeof e!=`string`)throw Error(`${t} must be a string`);let n=e.trim();if(!n)throw Error(`${t} is required`);if(l(n))throw Error(`${t} must not contain whitespace or control characters`);return n}function ec(e,t){if(typeof e!=`number`||!Number.isSafeInteger(e)||e<=0)throw Error(`${t} must be a positive safe integer`);return e}function tc(e,t){if(!Array.isArray(e)||e.length!==2)throw Error(`${t} must contain exactly two participant ids`);let n=ec(e[0],`${t}[0]`),r=ec(e[1],`${t}[1]`);if(n===r)throw Error(`${t} must contain distinct participant ids`);return[n,r]}function nc(e){let t=tc(e.participantIds,`participantIds`);return{kind:`owner_lane_participant_continuity_v1`,signerId:$s(e.signerId),participantIds:t,signingWorkerId:v(i(e.signingWorkerId),`signingWorkerId`),custodyKeyManifestDigestB64u:y(e.custodyKeyManifestDigestB64u,`custodyKeyManifestDigestB64u`),sourceIdentityDigestB64u:y(e.sourceIdentityDigestB64u,`sourceIdentityDigestB64u`)}}function rc(e,t=`ownerParticipantContinuity`){let n=d(e,t);if(_(n,Qs,t),n.kind!==`owner_lane_participant_continuity_v1`)throw Error(`${t}.kind must be owner_lane_participant_continuity_v1`);return nc({signerId:$s(n.signerId,`${t}.signerId`),participantIds:tc(n.participantIds,`${t}.participantIds`),signingWorkerId:v(i(n.signingWorkerId),`${t}.signingWorkerId`),custodyKeyManifestDigestB64u:y(n.custodyKeyManifestDigestB64u,`${t}.custodyKeyManifestDigestB64u`),sourceIdentityDigestB64u:y(n.sourceIdentityDigestB64u,`${t}.sourceIdentityDigestB64u`)})}function ic(e,t){let n=String(e??``).trim();if(!n)throw Error(`[evm-family-ecdsa] ${t} is required`);return n}function ac(e){return ic(e,`rpId`)}function oc(e){return se({walletId:Ie(e.walletId),signingRootId:cc(e.signingRootId),signingRootVersion:lc(e.signingRootVersion)})}function sc(e){return ic(e,`ecdsaThresholdKeyId`)}function cc(e){return ic(e,`signingRootId`)}function lc(e){return String(e??``).trim()||`default`}function uc(e){let t=String(e??``).trim().toLowerCase();if(!/^0x[0-9a-f]{40}$/.test(t))throw Error(`[evm-family-ecdsa] thresholdOwnerAddress must be an EVM address`);return t}function dc(e){return uc(e)}function fc(e){return ac(e)}function pc(e){return ic(e,`keyHandle`)}function mc(e){return sc(String(e.record.ecdsaThresholdKeyId??``).trim())}function hc(e){return{signingRootId:cc(e.signingRootId),signingRootVersion:lc(e.signingRootVersion)}}function gc(e){return hc({signingRootId:e.record.signingRootId,signingRootVersion:e.record.signingRootVersion})}function _c(e){let t=ae(e.runtimePolicyScope);return hc({signingRootId:t.signingRootId,signingRootVersion:t.signingRootVersion})}function vc(e){let t=ic(e,`thresholdEcdsaPublicKeyB64u`),n;try{n=m(t)}catch{throw Error(`[evm-family-ecdsa] thresholdEcdsaPublicKeyB64u must be base64url`)}if(n.length!==33)throw Error(`[evm-family-ecdsa] thresholdEcdsaPublicKeyB64u must decode to 33 bytes`);return t}function yc(e){let t=Math.floor(Number(e));if(!Number.isSafeInteger(t)||t<1||t>65535)throw Error(`[evm-family-ecdsa] participantId must be a positive safe integer`);return t}function bc(e){let t=oe(e);if(!t?.length)throw Error(`[evm-family-ecdsa] participantIds are required`);return t.map(yc)}function xc(e){return e.map(e=>String(Number(e))).join(`,`)}function Sc(e){let t=2166136261;for(let n=0;n<e.length;n+=1)t^=e.charCodeAt(n),t=Math.imul(t,16777619)>>>0;return t.toString(16).padStart(8,`0`)}function Cc(e){return{walletId:e.walletId,keyScope:`evm-family`,ecdsaThresholdKeyId:sc(e.ecdsaThresholdKeyId),signingRootId:cc(e.signingRootId),signingRootVersion:lc(e.signingRootVersion),participantIds:bc(e.participantIds),thresholdOwnerAddress:uc(e.thresholdOwnerAddress)}}function wc(e){return Cc({walletId:Ie(e.walletId),ecdsaThresholdKeyId:e.ecdsaThresholdKeyId,signingRootId:e.signingRootId,signingRootVersion:e.signingRootVersion,participantIds:e.participantIds,thresholdOwnerAddress:e.thresholdOwnerAddress})}function Tc(e){return Le({walletId:Ie(e)})}async function Ec(e){return await Ds(e)}function Dc(e){return{kind:`verified_ecdsa_public_facts`,keyHandle:e.keyHandle,publicKeyB64u:vc(e.publicKeyB64u),participantIds:bc(e.participantIds),thresholdOwnerAddress:uc(e.thresholdOwnerAddress)}}function Oc(e){return{walletId:e.walletId,keyScope:e.keyFacts.keyScope,ecdsaThresholdKeyId:e.keyFacts.ecdsaThresholdKeyId,signingRootId:e.keyFacts.signingRootId,signingRootVersion:e.keyFacts.signingRootVersion,participantIds:e.keyFacts.participantIds,thresholdOwnerAddress:e.keyFacts.thresholdOwnerAddress}}function kc(e){let t=pc(e.keyHandle),n=wc(e),r=Dc({keyHandle:t,publicKeyB64u:e.thresholdEcdsaPublicKeyB64u,participantIds:n.participantIds,thresholdOwnerAddress:n.thresholdOwnerAddress});return{kind:`evm_family_ecdsa_wallet_key`,walletId:n.walletId,keyHandle:t,chainTarget:e.chainTarget,keyFacts:{kind:`evm_family_ecdsa_key_facts`,keyScope:n.keyScope,ecdsaThresholdKeyId:n.ecdsaThresholdKeyId,signingRootId:n.signingRootId,signingRootVersion:n.signingRootVersion,participantIds:r.participantIds,thresholdOwnerAddress:r.thresholdOwnerAddress,thresholdEcdsaPublicKeyB64u:r.publicKeyB64u}}}function Ac(e){let t=[];if(String(e.expected.keyHandle)!==String(e.actual.keyHandle)&&t.push(`keyHandle`),String(e.expected.publicKeyB64u)!==String(e.actual.publicKeyB64u)&&t.push(`publicKeyB64u`),xc(e.expected.participantIds)!==xc(e.actual.participantIds)&&t.push(`participantIds`),String(e.expected.thresholdOwnerAddress)!==String(e.actual.thresholdOwnerAddress)&&t.push(`thresholdOwnerAddress`),t.length)throw Error(`[evm-family-ecdsa] ${e.context} public facts mismatch: ${t.join(`, `)}`)}function jc(e){return{kind:`passkey_ecdsa_auth_binding`,authMethod:Re.passkey,rpId:ac(e.rpId),credentialIdB64u:ic(e.credentialIdB64u,`credentialIdB64u`)}}function Mc(e){return{kind:`resolved_evm_family_ecdsa_key`,walletId:Ie(e.walletId),publicFacts:e.publicFacts,authBinding:e.authBinding}}function Nc(e){return{kind:`hydrated_ecdsa_signer_material`,walletId:e.walletId,materialActivation:e.materialActivation,publicFacts:e.publicFacts,transport:e.transport,clientShare:e.clientShare,routerAbEcdsaDerivationNormalSigning:e.routerAbEcdsaDerivationNormalSigning}}function Pc(e){let t=Math.floor(Number(e.ttlMs)),n=Math.floor(Number(e.remainingUses));if(!Number.isFinite(t)||t<=0)throw Error(`[evm-family-ecdsa] ttlMs must be a positive finite value`);if(!Number.isFinite(n)||n<=0)throw Error(`[evm-family-ecdsa] remainingUses must be a positive finite value`);return{chainTarget:e.chainTarget,thresholdSessionId:Xe.thresholdEcdsaSession(e.thresholdSessionId),ttlMs:t,remainingUses:n,runtimePolicyScope:e.runtimePolicyScope}}function Fc(e){let t=Math.floor(Number(e.ttlMs)),n=Math.floor(Number(e.remainingUses));if(!Number.isFinite(t)||t<=0)throw Error(`[evm-family-ecdsa] ttlMs must be a positive finite value`);if(!Number.isFinite(n)||n<=0)throw Error(`[evm-family-ecdsa] remainingUses must be a positive finite value`);return{chainTarget:e.chainTarget,thresholdSessionId:Xe.thresholdEcdsaSession(e.thresholdSessionId),ttlMs:t,remainingUses:n,runtimePolicyScope:e.runtimePolicyScope}}function Ic(e){return`evmfam-ecdsa:${Sc(N({version:`evm_family_ecdsa_key_fingerprint_v2`,walletId:String(e.walletId),baseEcdsaSubjectId:String(Tc(e.walletId)),keyScope:e.keyScope,ecdsaThresholdKeyId:String(e.ecdsaThresholdKeyId),signingRootId:String(e.signingRootId),signingRootVersion:String(e.signingRootVersion),participantIds:e.participantIds.map(e=>Number(e)),thresholdOwnerAddress:String(e.thresholdOwnerAddress)}))}`}function Lc(e){return`evmfam-ecdsa:${Sc(N({version:`evm_family_ecdsa_public_facts_fingerprint_v1`,walletId:String(Ie(e.walletId)),keyHandle:String(e.publicFacts.keyHandle),publicKeyB64u:String(e.publicFacts.publicKeyB64u),participantIds:e.publicFacts.participantIds.map(e=>Number(e)),thresholdOwnerAddress:String(e.publicFacts.thresholdOwnerAddress)}))}`}export{ho as $,zn as $t,ys as A,xi as At,is as B,Nt as Bt,dc as C,Ci as Ct,Zs as D,Qi as Dt,Vs as E,ba as Et,ps as F,rr as Ft,Ko as G,wt as Gt,rs as H,Et as Ht,xs as I,Cr as It,Bo as J,gn as Jt,Wo as K,Tt as Kt,Cs as L,Tr as Lt,Ss as M,lr as Mt,hs as N,er as Nt,ws as O,Xi as Ot,gs as P,ir as Pt,ko as Q,Rn as Qt,ds as R,jt as Rt,vc as S,Ga as St,Xs as T,Fi as Tt,as as U,kt as Ut,ns as V,Ot as Vt,ts as W,Dt as Wt,Oo as X,sn as Xt,Ro as Y,en as Yt,To as Z,Ln as Zt,gc as _,ot as _n,Wa as _t,kc as a,Fn as an,$a as at,yc as b,it as bn,Ia as bt,Mc as c,qn as cn,Za as ct,Ic as d,Ft as dn,Oi as dt,rn as en,vo as et,Lc as f,zt as fn,Ai as ft,mc as g,rt as gn,Ba as gt,hc as h,Qe as hn,ra as ht,Pc as i,Jn as in,Xa as it,bs as j,Nr as jt,_s as k,bi as kt,Dc as l,Pn as ln,qa as lt,Oc as m,pt as mn,Mi as mt,wc as n,Gn as nn,Co as nt,Nc as o,Vn as on,Qa as ot,oc as p,Ct as pn,Wi as pt,Vo as q,At as qt,Fc as r,Yn as rn,io as rt,jc as s,Wn as sn,Ja as st,Ac as t,Hn as tn,bo as tt,Ec as u,In as un,ii as ut,_c as v,nt as vn,Ra as vt,rc as w,Li as wt,fc as x,Ze as xn,Pa as xt,pc as y,at as yn,Ha as yt,vs as z,Mt as zt};