@seams/wallet 0.15.6 → 0.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (605) hide show
  1. package/README.md +15 -8
  2. package/THIRD_PARTY_NOTICES.md +102 -1
  3. package/dist/.build-inputs.sha256 +1 -1
  4. package/dist/esm/SeamsWeb/SeamsWeb.js +20 -1
  5. package/dist/esm/SeamsWeb/operations/registration/registrationSignerSet.js +73 -0
  6. package/dist/esm/SeamsWeb/operations/session/thresholdEcdsaProvisioning.js +22 -0
  7. package/dist/esm/SeamsWeb/publicApi/capabilitySelection.js +2 -1
  8. package/dist/esm/SeamsWeb/publicApi/createPublicApi.js +26 -1
  9. package/dist/esm/SeamsWeb/walletIframe/client/overlay/overlay-controller.js +71 -69
  10. package/dist/esm/SeamsWeb/walletIframe/client/preferenceState.js +6 -8
  11. package/dist/esm/SeamsWeb/walletIframe/client/preferences.js +7 -5
  12. package/dist/esm/SeamsWeb/walletIframe/client/progress/on-events-progress-bus.js +2 -1
  13. package/dist/esm/SeamsWeb/walletIframe/client/router.js +116 -108
  14. package/dist/esm/SeamsWeb/walletIframe/client/surface/transactionSurfaceQueue.js +11 -7
  15. package/dist/esm/SeamsWeb/walletIframe/client/transactionReviewReservation.js +3 -2
  16. package/dist/esm/SeamsWeb/walletIframe/client/transport/IframeTransport.js +53 -49
  17. package/dist/esm/SeamsWeb/walletIframe/client/transport/iframe-transport-handshake.js +6 -2
  18. package/dist/esm/SeamsWeb/walletIframe/coordinator.js +18 -13
  19. package/dist/esm/SeamsWeb/walletIframe/host/surface-measurement-reporter.js +14 -13
  20. package/dist/esm/SeamsWeb/walletIframe/host/ui/auth-menu/AuthMenuFooter.js +6 -8
  21. package/dist/esm/SeamsWeb/walletIframe/host/ui/auth-menu/AuthMenuSurface.js +387 -535
  22. package/dist/esm/SeamsWeb/walletIframe/host/ui/auth-menu/mountAuthMenuSurface.js +13 -8
  23. package/dist/esm/SeamsWeb/walletIframe/host/ui/auth-menu/presentation.js +116 -0
  24. package/dist/esm/SeamsWeb/walletIframe/host/ui/auth-menu/recovery-code-input.js +60 -0
  25. package/dist/esm/SeamsWeb/walletIframe/shared/exactSessionState.js +1 -0
  26. package/dist/esm/SeamsWeb/walletIframe/shared/facadeBoundary.js +2 -0
  27. package/dist/esm/core/config/configBuilder.js +3 -1
  28. package/dist/esm/core/config/defaultConfigs.js +1 -0
  29. package/dist/esm/core/indexedDB/accountSignerLifecycle.js +2 -0
  30. package/dist/esm/core/indexedDB/seamsWalletDB/ecdsaCapabilityManifestStore.js +1 -0
  31. package/dist/esm/core/indexedDB/seamsWalletDB/manager.js +6 -5
  32. package/dist/esm/core/indexedDB/seamsWalletDB/repositories.js +2 -0
  33. package/dist/esm/core/indexedDB/seamsWalletDB/walletSessionAuthorizationStore.js +2 -2
  34. package/dist/esm/core/indexedDB/unifiedIndexedDBManager.js +6 -3
  35. package/dist/esm/core/rpcClients/near/NearRpcError.js +7 -0
  36. package/dist/esm/core/rpcClients/relayer/routerAbNormalSigning.js +3 -0
  37. package/dist/esm/core/rpcClients/relayer/walletRegistration.js +6 -2
  38. package/dist/esm/core/rpcClients/relayer/walletSessionAuthorizationStatus.js +5 -4
  39. package/dist/esm/core/signingEngine/chains/evm/evmAdapter.js +2 -1
  40. package/dist/esm/core/signingEngine/chains/tempo/tempoAdapter.js +2 -1
  41. package/dist/esm/core/signingEngine/flows/registration/accountLifecycle.js +1 -1
  42. package/dist/esm/core/signingEngine/flows/signEvmFamily/signers/secp256k1.js +5 -1
  43. package/dist/esm/core/signingEngine/flows/signEvmFamily/signers/webauthnP256.js +1 -1
  44. package/dist/esm/core/signingEngine/flows/signEvmFamily/signingFlow.js +3 -2
  45. package/dist/esm/core/signingEngine/routerAb/ecdsaDerivation/presignatureRefillProgress.js +5 -7
  46. package/dist/esm/core/signingEngine/session/lifecycle/walletSessionFailure.js +2 -0
  47. package/dist/esm/core/signingEngine/session/material/ecdsaCapabilityManifest.js +68 -10
  48. package/dist/esm/core/signingEngine/session/material/walletSigningStateFailure.js +2 -2
  49. package/dist/esm/core/signingEngine/session/operationState/authorizationAdmission.js +2 -0
  50. package/dist/esm/core/signingEngine/stepUpConfirmation/methodSelection.js +2 -0
  51. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ConfirmContent.js +36 -32
  52. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ConfirmHeader.js +10 -6
  53. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ConfirmationBody.js +12 -12
  54. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ConfirmationContent.js +29 -29
  55. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ConfirmationDrawer.js +141 -141
  56. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ConfirmationModal.js +21 -21
  57. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/EmailOtpContent.js +45 -40
  58. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/EmailOtpInput.js +19 -21
  59. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/HaloBorder.js +21 -24
  60. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/PasskeyRegistrationContent.js +16 -16
  61. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/PasskeyRegistrationDetails.js +9 -5
  62. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/RecoveryCodeBackupSurface.js +128 -125
  63. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ReviewDisclosure.js +72 -74
  64. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/TransactionLabel.js +51 -26
  65. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/TransactionReceipt.js +65 -53
  66. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/TransactionReview.js +44 -40
  67. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/TransactionTree.js +122 -122
  68. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/WalletLocale.js +24 -0
  69. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/email-otp-session.js +81 -80
  70. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/mountConfirmationSurface.js +47 -41
  71. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/mountRecoveryCodeBackupSurface.js +17 -11
  72. package/dist/esm/core/signingEngine/uiConfirm/ui/transaction-display/tree.js +4 -21
  73. package/dist/esm/core/types/actionBuilders.js +16 -2
  74. package/dist/esm/core/types/amounts.js +83 -0
  75. package/dist/esm/core/types/linkDevice.js +1 -1
  76. package/dist/esm/core/ui/locale.js +10 -0
  77. package/dist/esm/core/ui/messages.js +694 -0
  78. package/dist/esm/externalEvm/controller.js +49 -48
  79. package/dist/esm/index.js +3 -1
  80. package/dist/esm/react/boundWallet.js +56 -0
  81. package/dist/esm/react/components/AccountMenuButton/AccountMenuButtonMock.js +7 -3
  82. package/dist/esm/react/components/AccountMenuButton/AccountMenuButtonView.js +6 -3
  83. package/dist/esm/react/components/AccountMenuButton/AccountMenuDeviceDetails.js +4 -3
  84. package/dist/esm/react/components/AccountMenuButton/AccountMenuDialog.js +5 -2
  85. package/dist/esm/react/components/AccountMenuButton/AccountMenuMockScreens.js +31 -27
  86. package/dist/esm/react/components/AccountMenuButton/AccountMenuScreen.js +6 -3
  87. package/dist/esm/react/components/AccountMenuButton/AccountsSection.js +6 -3
  88. package/dist/esm/react/components/AccountMenuButton/AuthenticationMethodRow.js +5 -4
  89. package/dist/esm/react/components/AccountMenuButton/AuthenticationMethodsModal.js +33 -27
  90. package/dist/esm/react/components/AccountMenuButton/AuthenticationMethodsView.js +5 -2
  91. package/dist/esm/react/components/AccountMenuButton/ExportKeysScreen.js +5 -3
  92. package/dist/esm/react/components/AccountMenuButton/ExportKeysSection.js +4 -3
  93. package/dist/esm/react/components/AccountMenuButton/LinkedDevicesModal.css +13 -2
  94. package/dist/esm/react/components/AccountMenuButton/LinkedDevicesModal.js +50 -41
  95. package/dist/esm/react/components/AccountMenuButton/LockMenuItem.js +2 -1
  96. package/dist/esm/react/components/AccountMenuButton/MenuItem.js +3 -2
  97. package/dist/esm/react/components/AccountMenuButton/ProfileDropdown.js +8 -4
  98. package/dist/esm/react/components/AccountMenuButton/RecoveryCodeAcknowledgement.js +3 -2
  99. package/dist/esm/react/components/AccountMenuButton/RecoveryCodeActions.js +4 -3
  100. package/dist/esm/react/components/AccountMenuButton/SegmentedControl.js +2 -1
  101. package/dist/esm/react/components/AccountMenuButton/TransactionSettingsSection.js +11 -10
  102. package/dist/esm/react/components/AccountMenuButton/UserAccountButton.js +8 -4
  103. package/dist/esm/react/components/AccountMenuButton/WalletRegionSection.js +112 -108
  104. package/dist/esm/react/components/AccountMenuButton/WalletSettingsLayout.js +74 -73
  105. package/dist/esm/react/components/AccountMenuButton/index.js +18 -15
  106. package/dist/esm/react/components/HostedSeamsAuthMenu/SeamsAuthMenuMock.js +30 -26
  107. package/dist/esm/react/components/HostedSeamsAuthMenu/shell.js +17 -6
  108. package/dist/esm/react/components/QRCodeScanner.js +28 -23
  109. package/dist/esm/react/components/ShowQRCode.css +13 -2
  110. package/dist/esm/react/components/ShowQRCode.js +39 -31
  111. package/dist/esm/react/components/theme/ThemeProvider.js +3 -0
  112. package/dist/esm/react/context/WalletLocale.js +15 -0
  113. package/dist/esm/react/context/index.js +38 -6
  114. package/dist/esm/react/context/useSeamsWithSdkFlow.js +1 -1
  115. package/dist/esm/react/externalEvm.js +22 -25
  116. package/dist/esm/react/index.js +4 -4
  117. package/dist/esm/react/styles/styles.css +13 -2
  118. package/dist/esm/react/transactionReview/TransactionReviewHost.js +3 -6
  119. package/dist/esm/react/transactionReview/boundCalls.js +1 -1
  120. package/dist/esm/react/transactionReview/controller.js +121 -119
  121. package/dist/esm/sdk/ConfirmationDrawer-mu3iThxX.js +1 -0
  122. package/dist/esm/sdk/NonceCoordinator-Dq-FZpBz.js +1 -0
  123. package/dist/{public/sdk/accountLifecycle-CBOkr0vU.js → esm/sdk/accountLifecycle-fLNUdjct.js} +1 -1
  124. package/dist/esm/sdk/{activeWalletSession-WdZkhtBB.js → activeWalletSession-BpbnpU9s.js} +1 -1
  125. package/dist/esm/sdk/adapters-u7LVXthY.js +2 -0
  126. package/dist/esm/sdk/appearance-token-vars-CzBVbO39.js +2 -0
  127. package/dist/esm/sdk/authorizationAdmission-Dd23mTx7.js +1 -0
  128. package/dist/esm/sdk/{canonicalPrimitives-Dsbsxgxc.js → canonicalPrimitives-BMP5yILS.js} +1 -1
  129. package/dist/esm/sdk/{capabilityKinds-N8xo_IEh.js → capabilityKinds-D0Yrp9uf.js} +1 -1
  130. package/dist/esm/sdk/{chains-C_X_fNuS.js → chains-CPmd4s9f.js} +1 -1
  131. package/dist/esm/sdk/challengeDelivery-CG2J5Qxs.js +1 -0
  132. package/dist/esm/sdk/{clientSessionPersistenceState-CBylL1Ul.js → clientSessionPersistenceState-BgO4P6CZ.js} +1 -1
  133. package/dist/esm/sdk/{commitQueue-DYEgzoLA.js → commitQueue-BW7BpYyA.js} +1 -1
  134. package/dist/esm/sdk/configBuilder-BMNShuOu.js +1 -0
  135. package/dist/esm/sdk/{configHelpers-B-hs0mTO.js → configHelpers-D50F_Txb.js} +1 -1
  136. package/dist/esm/sdk/{digestEncoding-BX3VW9eF.js → digestEncoding-aC4dSf_x.js} +1 -1
  137. package/dist/esm/sdk/{display-DsfJkAra.js → display-WtILOPQR.js} +1 -1
  138. package/dist/esm/sdk/domainIds-C3fUa33Q.js +1 -0
  139. package/dist/esm/sdk/ecdsaCapabilityManifest-DRc423SV.js +1 -0
  140. package/dist/esm/sdk/{ecdsaChainTarget-Bfatk3oP.js → ecdsaChainTarget-DkOrgv4y.js} +1 -1
  141. package/dist/esm/sdk/ecdsaDerivationClientWasm-DmwKWUEb.js +1 -0
  142. package/dist/{public/sdk/ecdsaDerivationExport-DOGzq0qC.js → esm/sdk/ecdsaDerivationExport-DX89rq_u.js} +1 -1
  143. package/dist/esm/sdk/{ecdsaWalletRecords-CHfrYvKr.js → ecdsaWalletRecords-CxxUt3fS.js} +1 -1
  144. package/dist/{public/sdk/emailOtpEcdsaDerivationIdentity-Bik0N8v9.js → esm/sdk/emailOtpEcdsaDerivationIdentity-CupWCKNg.js} +1 -1
  145. package/dist/esm/sdk/{errors-DIWY1KR9.js → errors-ADOZT8oV.js} +1 -1
  146. package/dist/esm/sdk/export-viewer-host-ivf9LlBo.js +1 -0
  147. package/dist/{public/sdk/exportKeypairOperation-DzbjKbnk.js → esm/sdk/exportKeypairOperation-Gw7L5Htj.js} +1 -1
  148. package/dist/esm/sdk/{helpers-B9fpZNAP.js → helpers-DS0bksx9.js} +1 -1
  149. package/dist/esm/sdk/{host-DfWylEiw.js → host-B-2QXolt.js} +1 -1
  150. package/dist/esm/sdk/{intentDigest-P_-CM7lS.js → intentDigest-Rh5Mg8X7.js} +1 -1
  151. package/dist/esm/sdk/{lanes-5kcTFbPx.js → lanes-BzU7cv2T.js} +1 -1
  152. package/dist/esm/sdk/localOnly-BKpUHtHa.js +1 -0
  153. package/dist/esm/sdk/mountExportPrivateKeySurface-C8pUK6PQ.js +1 -0
  154. package/dist/esm/sdk/mountRecoveryCodeBackupSurface-DUudF89t.js +2 -0
  155. package/dist/esm/sdk/nearEd25519YaoMaterialActivation-DgWDGRI_.js +1 -0
  156. package/dist/{public/sdk/nearEd25519YaoSigningPreparation-RIfkYN0d.js → esm/sdk/nearEd25519YaoSigningPreparation-yKDLQXBS.js} +1 -1
  157. package/dist/esm/sdk/{nonceLaneKeys-BCYfl1wv.js → nonceLaneKeys-BzMBVxMU.js} +1 -1
  158. package/dist/esm/sdk/{normalization-n503J-BI.js → normalization-Ct9-AY13.js} +1 -1
  159. package/dist/esm/sdk/{operationFingerprint-BHNYryLY.js → operationFingerprint-C4VX-0NI.js} +1 -1
  160. package/dist/esm/sdk/{passkey-custody-DpTM-eNJ.js → passkey-custody-Ba-NQ_4C.js} +1 -1
  161. package/dist/esm/sdk/{pendingWalletRecoveryCodeBackup-C60sZMj5.js → pendingWalletRecoveryCodeBackup-7tBjuSe7.js} +1 -1
  162. package/dist/esm/sdk/presignaturePool-BHoxnbOA.js +1 -0
  163. package/dist/esm/sdk/{prfCache-DJ93rtDv.js → prfCache-BAFh1skJ.js} +1 -1
  164. package/dist/esm/sdk/{primitives-CqrjmIAH.js → primitives-CTmDwMNc.js} +1 -1
  165. package/dist/{public/sdk/recovery-entrypoint-BULjaFBM.js → esm/sdk/recovery-entrypoint-DWghFZrZ.js} +1 -1
  166. package/dist/esm/sdk/{registration-CyF7nOXs.js → registration-CWpOVwhj.js} +1 -1
  167. package/dist/esm/sdk/registration-D2OEgY7O.js +1 -0
  168. package/dist/esm/sdk/{registrationAccounts-BQMUusdD.js → registrationAccounts-CD1u1ZqZ.js} +1 -1
  169. package/dist/esm/sdk/{registrationAuthMethodInput-RbSR7R1G.js → registrationAuthMethodInput-B23_HRil.js} +1 -1
  170. package/dist/esm/sdk/{registrationIds-BaK3jUS6.js → registrationIds-B1OpqRAt.js} +1 -1
  171. package/dist/esm/sdk/{registrationIntent-090Zj7Iu.js → registrationIntent-D4YDjf2U.js} +1 -1
  172. package/dist/{public/sdk/registrationSignerPlan-CPzHavPM.js → esm/sdk/registrationSignerPlan-BHkqlian.js} +1 -1
  173. package/dist/{public/sdk/requireStepUpAuth-BCY5ZStI.js → esm/sdk/requireStepUpAuth-CnSCFSOZ.js} +1 -1
  174. package/dist/esm/sdk/routerAbNormalSigning-BV1t27aB.js +1 -0
  175. package/dist/esm/sdk/runtime-auth-jtyQAuxZ.js +1 -0
  176. package/dist/esm/sdk/runtime-device-link-vhRhB-wS.js +1 -0
  177. package/dist/esm/sdk/runtime-ecdsa-tempo-BXWgFVBa.js +1 -0
  178. package/dist/esm/sdk/runtime-email-otp-BlAaSKtk.js +1 -0
  179. package/dist/esm/sdk/runtime-export-B4FuHhcH.js +1 -0
  180. package/dist/esm/sdk/runtime-near-BnWOpEpA.js +1 -0
  181. package/dist/esm/sdk/runtime-preferences-COm-LTiu.js +1 -0
  182. package/dist/esm/sdk/runtime-recovery-BJTo5Idi.js +1 -0
  183. package/dist/esm/sdk/{runtime-recovery-codes-GOytzExh.js → runtime-recovery-codes-CEOjdUHV.js} +1 -1
  184. package/dist/esm/sdk/{sdkSentEvents-D4KtK7_I.js → sdkSentEvents-DujYAPEM.js} +1 -1
  185. package/dist/esm/sdk/secp256k1-wOOHtPcK.js +1 -0
  186. package/dist/esm/sdk/{secureRandomId-LwBFx84B.js → secureRandomId-8LSc91aN.js} +1 -1
  187. package/dist/esm/sdk/sessionObservationRevision-C7v-wN8_.js +1 -0
  188. package/dist/esm/sdk/shared-BKPGtAps.js +6 -0
  189. package/dist/{public/sdk/signEvmFamily-Cpm3e6Zs.js → esm/sdk/signEvmFamily-DT34Vtpa.js} +1 -1
  190. package/dist/esm/sdk/signEvmFamilyWithUiConfirmForTempo-NYCFU6Li.js +1 -0
  191. package/dist/esm/sdk/{signEvmWithUiConfirm-BRmdLgmm.js → signEvmWithUiConfirm-D6nmJr_L.js} +1 -1
  192. package/dist/esm/sdk/signNear-B000QxBd.js +1 -0
  193. package/dist/esm/sdk/signatureUses-B_nN17i7.js +1 -0
  194. package/dist/esm/sdk/{signerDomain-Dp7BhfmZ.js → signerDomain-BFqRQ0Jl.js} +1 -1
  195. package/dist/esm/sdk/{signingFlow-VAnM8L5C.js → signingFlow-gl85GOW4.js} +2 -2
  196. package/dist/esm/sdk/{signingQueue-D_Ebmzcn.js → signingQueue-gW7wmOuL.js} +1 -1
  197. package/dist/{public/sdk/singletons-BXhnsqeY.js → esm/sdk/singletons-CAsc9LvA.js} +1 -1
  198. package/dist/esm/sdk/surface-measurement-reporter-BJhfiPw6.js +1 -0
  199. package/dist/{public/sdk/thresholdEcdsa-CneSKcRt.js → esm/sdk/thresholdEcdsa-Ci7yz395.js} +1 -1
  200. package/dist/esm/sdk/{trace-BBux0jtr.js → trace-CsRMlSh1.js} +1 -1
  201. package/dist/{public/sdk/transaction-activity-Cccvec2J.js → esm/sdk/transaction-activity-C0nCSW6c.js} +1 -1
  202. package/dist/esm/sdk/transactionReviewAdmission-CNNho8IG.js +1 -0
  203. package/dist/{public/sdk/transactionState-Day-1x7Y.js → esm/sdk/transactionState-lB2qpkOm.js} +1 -1
  204. package/dist/esm/sdk/tx-confirm-ui.js +2502 -1174
  205. package/dist/esm/sdk/{types-hKLqDUhR.js → types-CQTWmtqu.js} +1 -1
  206. package/dist/esm/sdk/wallet-iframe-host-ecdsa.js +1 -1
  207. package/dist/esm/sdk/wallet-iframe-host-full.js +1 -1
  208. package/dist/esm/sdk/wallet-iframe-host-near.js +1 -1
  209. package/dist/esm/sdk/wallet-iframe-host-runtime.js +1 -1
  210. package/dist/{public/sdk/wallet-recovery-Bfhfk52N.js → esm/sdk/wallet-recovery-DFaS3geI.js} +1 -1
  211. package/dist/esm/sdk/wallet-ui.css +1 -1
  212. package/dist/{public/sdk/walletAuthMethodRecord-LniOQQmj.js → esm/sdk/walletAuthMethodRecord-CWdqdY_s.js} +1 -1
  213. package/dist/{public/sdk/walletAuthority-CAiGuWW2.js → esm/sdk/walletAuthority-BY3kyKQ-.js} +1 -1
  214. package/dist/esm/sdk/walletCustodyEcdsaContinuity-mGh1Ysko.js +1 -0
  215. package/dist/esm/sdk/{walletDbName-DtRewci9.js → walletDbName-BxWApBQF.js} +1 -1
  216. package/dist/esm/sdk/{walletOwnershipGeneration-B6HyR2rE.js → walletOwnershipGeneration-DSGfjuV2.js} +1 -1
  217. package/dist/esm/sdk/{walletRecoveryCommit-C6HF84_U.js → walletRecoveryCommit-DQA_wveK.js} +1 -1
  218. package/dist/esm/sdk/{walletRecoveryRotate-BN3H8byw.js → walletRecoveryRotate-zvQThn37.js} +1 -1
  219. package/dist/esm/sdk/walletRegistrationSetupPrewarm-DdVpKccU.js +1 -0
  220. package/dist/esm/sdk/walletSessionAuthorizationStatus-ONPRiEbK.js +1 -0
  221. package/dist/esm/sdk/walletSessionAuthorizationStore-DnUMtkev.js +1 -0
  222. package/dist/esm/sdk/walletSessionFailure-C6TAQTZn.js +1 -0
  223. package/dist/esm/sdk/warmSessionHydration-D8Vdro9n.js +1 -0
  224. package/dist/esm/sdk/webauthnP256-_ajaNl90.js +1 -0
  225. package/dist/esm/sdk/webauthnPromptCoordinator-9bVeHcTZ.js +1 -0
  226. package/dist/esm/shared-ts/src/authorization/delegatedAuthority.js +1 -1
  227. package/dist/esm/shared-ts/src/authorization/operationFingerprint.js +6 -0
  228. package/dist/esm/shared-ts/src/near/nearClient.js +6 -0
  229. package/dist/esm/shared-ts/src/threshold/participants.js +2 -1
  230. package/dist/esm/shared-ts/src/threshold/secp256k1.js +6 -0
  231. package/dist/esm/shared-ts/src/utils/domainIds.js +7 -0
  232. package/dist/esm/shared-ts/src/utils/index.js +1 -1
  233. package/dist/esm/shared-ts/src/utils/registrationSignerPlan.js +14 -1
  234. package/dist/esm/shared-ts/src/utils/routerAbEd25519Yao.js +5 -4
  235. package/dist/esm/utils/qrScanner.js +10 -8
  236. package/dist/public/headers.manifest.json +1 -1
  237. package/dist/public/sdk/ConfirmationDrawer-mu3iThxX.js +1 -0
  238. package/dist/public/sdk/NonceCoordinator-Dq-FZpBz.js +1 -0
  239. package/dist/{esm/sdk/accountLifecycle-CBOkr0vU.js → public/sdk/accountLifecycle-fLNUdjct.js} +1 -1
  240. package/dist/public/sdk/{activeWalletSession-WdZkhtBB.js → activeWalletSession-BpbnpU9s.js} +1 -1
  241. package/dist/public/sdk/adapters-u7LVXthY.js +2 -0
  242. package/dist/public/sdk/appearance-token-vars-CzBVbO39.js +2 -0
  243. package/dist/public/sdk/authorizationAdmission-Dd23mTx7.js +1 -0
  244. package/dist/public/sdk/{canonicalPrimitives-Dsbsxgxc.js → canonicalPrimitives-BMP5yILS.js} +1 -1
  245. package/dist/public/sdk/{capabilityKinds-N8xo_IEh.js → capabilityKinds-D0Yrp9uf.js} +1 -1
  246. package/dist/public/sdk/{chains-C_X_fNuS.js → chains-CPmd4s9f.js} +1 -1
  247. package/dist/public/sdk/challengeDelivery-CG2J5Qxs.js +1 -0
  248. package/dist/public/sdk/{clientSessionPersistenceState-CBylL1Ul.js → clientSessionPersistenceState-BgO4P6CZ.js} +1 -1
  249. package/dist/public/sdk/{commitQueue-DYEgzoLA.js → commitQueue-BW7BpYyA.js} +1 -1
  250. package/dist/public/sdk/configBuilder-BMNShuOu.js +1 -0
  251. package/dist/public/sdk/{configHelpers-B-hs0mTO.js → configHelpers-D50F_Txb.js} +1 -1
  252. package/dist/public/sdk/{digestEncoding-BX3VW9eF.js → digestEncoding-aC4dSf_x.js} +1 -1
  253. package/dist/public/sdk/{display-DsfJkAra.js → display-WtILOPQR.js} +1 -1
  254. package/dist/public/sdk/domainIds-C3fUa33Q.js +1 -0
  255. package/dist/public/sdk/ecdsaCapabilityManifest-DRc423SV.js +1 -0
  256. package/dist/public/sdk/{ecdsaChainTarget-Bfatk3oP.js → ecdsaChainTarget-DkOrgv4y.js} +1 -1
  257. package/dist/public/sdk/ecdsaDerivationClientWasm-DmwKWUEb.js +1 -0
  258. package/dist/{esm/sdk/ecdsaDerivationExport-DOGzq0qC.js → public/sdk/ecdsaDerivationExport-DX89rq_u.js} +1 -1
  259. package/dist/public/sdk/{ecdsaWalletRecords-CHfrYvKr.js → ecdsaWalletRecords-CxxUt3fS.js} +1 -1
  260. package/dist/{esm/sdk/emailOtpEcdsaDerivationIdentity-Bik0N8v9.js → public/sdk/emailOtpEcdsaDerivationIdentity-CupWCKNg.js} +1 -1
  261. package/dist/public/sdk/{errors-DIWY1KR9.js → errors-ADOZT8oV.js} +1 -1
  262. package/dist/public/sdk/export-viewer-host-ivf9LlBo.js +1 -0
  263. package/dist/{esm/sdk/exportKeypairOperation-DzbjKbnk.js → public/sdk/exportKeypairOperation-Gw7L5Htj.js} +1 -1
  264. package/dist/public/sdk/{helpers-B9fpZNAP.js → helpers-DS0bksx9.js} +1 -1
  265. package/dist/public/sdk/{host-DfWylEiw.js → host-B-2QXolt.js} +1 -1
  266. package/dist/public/sdk/{intentDigest-P_-CM7lS.js → intentDigest-Rh5Mg8X7.js} +1 -1
  267. package/dist/public/sdk/{lanes-5kcTFbPx.js → lanes-BzU7cv2T.js} +1 -1
  268. package/dist/public/sdk/localOnly-BKpUHtHa.js +1 -0
  269. package/dist/public/sdk/mountExportPrivateKeySurface-C8pUK6PQ.js +1 -0
  270. package/dist/public/sdk/mountRecoveryCodeBackupSurface-DUudF89t.js +2 -0
  271. package/dist/public/sdk/nearEd25519YaoMaterialActivation-DgWDGRI_.js +1 -0
  272. package/dist/{esm/sdk/nearEd25519YaoSigningPreparation-RIfkYN0d.js → public/sdk/nearEd25519YaoSigningPreparation-yKDLQXBS.js} +1 -1
  273. package/dist/public/sdk/{nonceLaneKeys-BCYfl1wv.js → nonceLaneKeys-BzMBVxMU.js} +1 -1
  274. package/dist/public/sdk/{normalization-n503J-BI.js → normalization-Ct9-AY13.js} +1 -1
  275. package/dist/public/sdk/{operationFingerprint-BHNYryLY.js → operationFingerprint-C4VX-0NI.js} +1 -1
  276. package/dist/public/sdk/{passkey-custody-DpTM-eNJ.js → passkey-custody-Ba-NQ_4C.js} +1 -1
  277. package/dist/public/sdk/{pendingWalletRecoveryCodeBackup-C60sZMj5.js → pendingWalletRecoveryCodeBackup-7tBjuSe7.js} +1 -1
  278. package/dist/public/sdk/presignaturePool-BHoxnbOA.js +1 -0
  279. package/dist/public/sdk/{prfCache-DJ93rtDv.js → prfCache-BAFh1skJ.js} +1 -1
  280. package/dist/public/sdk/{primitives-CqrjmIAH.js → primitives-CTmDwMNc.js} +1 -1
  281. package/dist/{esm/sdk/recovery-entrypoint-BULjaFBM.js → public/sdk/recovery-entrypoint-DWghFZrZ.js} +1 -1
  282. package/dist/public/sdk/{registration-CyF7nOXs.js → registration-CWpOVwhj.js} +1 -1
  283. package/dist/public/sdk/registration-D2OEgY7O.js +1 -0
  284. package/dist/public/sdk/{registrationAccounts-BQMUusdD.js → registrationAccounts-CD1u1ZqZ.js} +1 -1
  285. package/dist/public/sdk/{registrationAuthMethodInput-RbSR7R1G.js → registrationAuthMethodInput-B23_HRil.js} +1 -1
  286. package/dist/public/sdk/{registrationIds-BaK3jUS6.js → registrationIds-B1OpqRAt.js} +1 -1
  287. package/dist/public/sdk/{registrationIntent-090Zj7Iu.js → registrationIntent-D4YDjf2U.js} +1 -1
  288. package/dist/{esm/sdk/registrationSignerPlan-CPzHavPM.js → public/sdk/registrationSignerPlan-BHkqlian.js} +1 -1
  289. package/dist/{esm/sdk/requireStepUpAuth-BCY5ZStI.js → public/sdk/requireStepUpAuth-CnSCFSOZ.js} +1 -1
  290. package/dist/public/sdk/routerAbNormalSigning-BV1t27aB.js +1 -0
  291. package/dist/public/sdk/runtime-auth-jtyQAuxZ.js +1 -0
  292. package/dist/public/sdk/runtime-device-link-vhRhB-wS.js +1 -0
  293. package/dist/public/sdk/runtime-ecdsa-tempo-BXWgFVBa.js +1 -0
  294. package/dist/public/sdk/runtime-email-otp-BlAaSKtk.js +1 -0
  295. package/dist/public/sdk/runtime-export-B4FuHhcH.js +1 -0
  296. package/dist/public/sdk/runtime-near-BnWOpEpA.js +1 -0
  297. package/dist/public/sdk/runtime-preferences-COm-LTiu.js +1 -0
  298. package/dist/public/sdk/runtime-recovery-BJTo5Idi.js +1 -0
  299. package/dist/public/sdk/{runtime-recovery-codes-GOytzExh.js → runtime-recovery-codes-CEOjdUHV.js} +1 -1
  300. package/dist/public/sdk/{sdkSentEvents-D4KtK7_I.js → sdkSentEvents-DujYAPEM.js} +1 -1
  301. package/dist/public/sdk/secp256k1-wOOHtPcK.js +1 -0
  302. package/dist/public/sdk/{secureRandomId-LwBFx84B.js → secureRandomId-8LSc91aN.js} +1 -1
  303. package/dist/public/sdk/sessionObservationRevision-C7v-wN8_.js +1 -0
  304. package/dist/public/sdk/shared-BKPGtAps.js +6 -0
  305. package/dist/{esm/sdk/signEvmFamily-Cpm3e6Zs.js → public/sdk/signEvmFamily-DT34Vtpa.js} +1 -1
  306. package/dist/public/sdk/signEvmFamilyWithUiConfirmForTempo-NYCFU6Li.js +1 -0
  307. package/dist/public/sdk/{signEvmWithUiConfirm-BRmdLgmm.js → signEvmWithUiConfirm-D6nmJr_L.js} +1 -1
  308. package/dist/public/sdk/signNear-B000QxBd.js +1 -0
  309. package/dist/public/sdk/signatureUses-B_nN17i7.js +1 -0
  310. package/dist/public/sdk/{signerDomain-Dp7BhfmZ.js → signerDomain-BFqRQ0Jl.js} +1 -1
  311. package/dist/public/sdk/{signingFlow-VAnM8L5C.js → signingFlow-gl85GOW4.js} +2 -2
  312. package/dist/public/sdk/{signingQueue-D_Ebmzcn.js → signingQueue-gW7wmOuL.js} +1 -1
  313. package/dist/{esm/sdk/singletons-BXhnsqeY.js → public/sdk/singletons-CAsc9LvA.js} +1 -1
  314. package/dist/public/sdk/surface-measurement-reporter-BJhfiPw6.js +1 -0
  315. package/dist/{esm/sdk/thresholdEcdsa-CneSKcRt.js → public/sdk/thresholdEcdsa-Ci7yz395.js} +1 -1
  316. package/dist/public/sdk/{trace-BBux0jtr.js → trace-CsRMlSh1.js} +1 -1
  317. package/dist/{esm/sdk/transaction-activity-Cccvec2J.js → public/sdk/transaction-activity-C0nCSW6c.js} +1 -1
  318. package/dist/public/sdk/transactionReviewAdmission-CNNho8IG.js +1 -0
  319. package/dist/{esm/sdk/transactionState-Day-1x7Y.js → public/sdk/transactionState-lB2qpkOm.js} +1 -1
  320. package/dist/public/sdk/tx-confirm-ui.js +2502 -1174
  321. package/dist/public/sdk/{types-hKLqDUhR.js → types-CQTWmtqu.js} +1 -1
  322. package/dist/public/sdk/wallet-iframe-host-ecdsa.js +1 -1
  323. package/dist/public/sdk/wallet-iframe-host-full.js +1 -1
  324. package/dist/public/sdk/wallet-iframe-host-near.js +1 -1
  325. package/dist/public/sdk/wallet-iframe-host-runtime.js +1 -1
  326. package/dist/{esm/sdk/wallet-recovery-Bfhfk52N.js → public/sdk/wallet-recovery-DFaS3geI.js} +1 -1
  327. package/dist/public/sdk/wallet-ui.css +1 -1
  328. package/dist/{esm/sdk/walletAuthMethodRecord-LniOQQmj.js → public/sdk/walletAuthMethodRecord-CWdqdY_s.js} +1 -1
  329. package/dist/{esm/sdk/walletAuthority-CAiGuWW2.js → public/sdk/walletAuthority-BY3kyKQ-.js} +1 -1
  330. package/dist/public/sdk/walletCustodyEcdsaContinuity-mGh1Ysko.js +1 -0
  331. package/dist/public/sdk/{walletDbName-DtRewci9.js → walletDbName-BxWApBQF.js} +1 -1
  332. package/dist/public/sdk/{walletOwnershipGeneration-B6HyR2rE.js → walletOwnershipGeneration-DSGfjuV2.js} +1 -1
  333. package/dist/public/sdk/{walletRecoveryCommit-C6HF84_U.js → walletRecoveryCommit-DQA_wveK.js} +1 -1
  334. package/dist/public/sdk/{walletRecoveryRotate-BN3H8byw.js → walletRecoveryRotate-zvQThn37.js} +1 -1
  335. package/dist/public/sdk/walletRegistrationSetupPrewarm-DdVpKccU.js +1 -0
  336. package/dist/public/sdk/walletSessionAuthorizationStatus-ONPRiEbK.js +1 -0
  337. package/dist/public/sdk/walletSessionAuthorizationStore-DnUMtkev.js +1 -0
  338. package/dist/public/sdk/walletSessionFailure-C6TAQTZn.js +1 -0
  339. package/dist/public/sdk/warmSessionHydration-D8Vdro9n.js +1 -0
  340. package/dist/public/sdk/webauthnP256-_ajaNl90.js +1 -0
  341. package/dist/public/sdk/webauthnPromptCoordinator-9bVeHcTZ.js +1 -0
  342. package/dist/public/sdk/workers/device-linking-key.worker.js +12 -11
  343. package/dist/public/sdk/workers/ecdsa-derivation-client.worker.js +146 -48
  344. package/dist/public/sdk/workers/ecdsa-online-client.worker.js +7 -6
  345. package/dist/public/sdk/workers/ecdsa-presign-client.worker.js +7 -6
  346. package/dist/public/sdk/workers/email-otp.worker.js +17 -3
  347. package/dist/public/sdk/workers/passkey-mpc-export.worker.js +10 -0
  348. package/dist/public/sdk/workers/passkey-mpc-session.worker.js +2 -1
  349. package/dist/public/wallet-assets.manifest.json +228 -228
  350. package/dist/public/wallet-service/index.html +4 -4
  351. package/dist/types/shared-ts/src/authorization/capabilityKinds.d.ts +14 -14
  352. package/dist/types/shared-ts/src/authorization/delegatedAuthority.d.ts +1 -1
  353. package/dist/types/shared-ts/src/device-linking/ed25519ExportRoot.d.ts +1 -1
  354. package/dist/types/shared-ts/src/device-linking/requestProof.d.ts +1 -1
  355. package/dist/types/shared-ts/src/device-linking/sourceContribution.d.ts +5 -5
  356. package/dist/types/shared-ts/src/passkey-custody/custodyEnvelope.d.ts +3 -3
  357. package/dist/types/shared-ts/src/passkey-custody/custodySecretBinding.d.ts +1 -1
  358. package/dist/types/shared-ts/src/tenant-root/tenantRootIdentity.d.ts +1 -1
  359. package/dist/types/shared-ts/src/tenant-root/tenantRootOperationRecord.d.ts +2 -2
  360. package/dist/types/shared-ts/src/utils/base64.d.ts +2 -2
  361. package/dist/types/shared-ts/src/utils/digestEncoding.d.ts +1 -1
  362. package/dist/types/shared-ts/src/utils/digests.d.ts +2 -2
  363. package/dist/types/shared-ts/src/utils/emailOtpDomain.d.ts +16 -16
  364. package/dist/types/shared-ts/src/utils/emailOtpRecoveryKey.d.ts +1 -1
  365. package/dist/types/shared-ts/src/utils/routerAbEcdsaDerivation.d.ts +10 -10
  366. package/dist/types/shared-ts/src/utils/routerAbEd25519Yao.d.ts +12 -11
  367. package/dist/types/shared-ts/src/utils/routerAbPublicKeyset.d.ts +3 -3
  368. package/dist/types/shared-ts/src/utils/routerAbTraceContext.d.ts +1 -1
  369. package/dist/types/shared-ts/src/utils/signerDomain.d.ts +15 -15
  370. package/dist/types/shared-ts/src/utils/signingSessionSeal.d.ts +11 -11
  371. package/dist/types/shared-ts/src/utils/walletSessionFailure.d.ts +8 -8
  372. package/dist/types/shared-ts/src/utils/webauthnDeviceInfo.d.ts +2 -2
  373. package/dist/types/shared-ts/src/utils/wireSchema.d.ts +1 -1
  374. package/dist/types/shared-ts/src/wallet-recovery/recoveryKeyId.d.ts +1 -1
  375. package/dist/types/wallet/build-paths.d.ts +73 -73
  376. package/dist/types/wallet/src/SeamsWeb/operations/authMethods/emailOtp/googleEmailOtpWalletAuthFlow.d.ts +3 -2
  377. package/dist/types/wallet/src/SeamsWeb/operations/devices/deviceLinkingResume.d.ts +2 -2
  378. package/dist/types/wallet/src/SeamsWeb/operations/devices/linkDeviceTargetActivation.d.ts +1 -1
  379. package/dist/types/wallet/src/SeamsWeb/operations/registration/pendingRegistrationRecovery.d.ts +3 -3
  380. package/dist/types/wallet/src/SeamsWeb/operations/registration/registrationEd25519Yao.d.ts +4 -3
  381. package/dist/types/wallet/src/SeamsWeb/operations/registration/registrationSignerSet.d.ts +5 -0
  382. package/dist/types/wallet/src/SeamsWeb/operations/registration/registrationTiming.d.ts +2 -2
  383. package/dist/types/wallet/src/SeamsWeb/publicApi/createPublicApi.d.ts +10 -1
  384. package/dist/types/wallet/src/SeamsWeb/publicApi/types.d.ts +4 -2
  385. package/dist/types/wallet/src/SeamsWeb/signingSurface/BrowserSigningSurface.d.ts +1 -0
  386. package/dist/types/wallet/src/SeamsWeb/signingSurface/ports.d.ts +1 -0
  387. package/dist/types/wallet/src/SeamsWeb/walletIframe/client/router.d.ts +2 -1
  388. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/auth-menu/domain.d.ts +4 -4
  389. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/createEmailOtpCommands.d.ts +3 -2
  390. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/ui/auth-menu/AuthMenuFooter.d.ts +0 -1
  391. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/ui/auth-menu/AuthMenuSurface.d.ts +4 -6
  392. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/ui/auth-menu/presentation.d.ts +35 -0
  393. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/ui/auth-menu/recovery-code-input.d.ts +17 -0
  394. package/dist/types/wallet/src/SeamsWeb/walletIframe/shared/messages.d.ts +3 -3
  395. package/dist/types/wallet/src/config.d.ts +8 -8
  396. package/dist/types/wallet/src/core/browser/walletIframe/events.d.ts +1 -1
  397. package/dist/types/wallet/src/core/indexedDB/linkedAuthoritySignerMaterial.d.ts +3 -3
  398. package/dist/types/wallet/src/core/indexedDB/pendingWalletRecoveryCommit.d.ts +1 -1
  399. package/dist/types/wallet/src/core/indexedDB/schemaNames.d.ts +181 -181
  400. package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/ecdsaCapabilityManifestRecords.d.ts +8 -8
  401. package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/ecdsaClientPresignatures.d.ts +4 -4
  402. package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/walletSessionAuthorizationStore.d.ts +1 -1
  403. package/dist/types/wallet/src/core/indexedDB/walletCustodyEd25519MaterialRecord.d.ts +2 -2
  404. package/dist/types/wallet/src/core/indexedDB/walletDbName.d.ts +1 -1
  405. package/dist/types/wallet/src/core/signingEngine/chains/evm/evmAdapter.d.ts +1 -1
  406. package/dist/types/wallet/src/core/signingEngine/chains/evm/evmSigning.types.d.ts +1 -0
  407. package/dist/types/wallet/src/core/signingEngine/chains/tempo/tempoAdapter.d.ts +1 -1
  408. package/dist/types/wallet/src/core/signingEngine/flows/shared/signingStateMachine.d.ts +27 -27
  409. package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/signers/secp256k1.d.ts +1 -1
  410. package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/signers/webauthnP256.d.ts +1 -1
  411. package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/signingFlowRuntime.d.ts +17 -17
  412. package/dist/types/wallet/src/core/signingEngine/nonce/nonceTypes.d.ts +40 -40
  413. package/dist/types/wallet/src/core/signingEngine/session/material/walletSigningStateFailure.d.ts +4 -4
  414. package/dist/types/wallet/src/core/signingEngine/session/operationState/types.d.ts +8 -8
  415. package/dist/types/wallet/src/core/signingEngine/session/passkey/ed25519YaoLocalMaterial.d.ts +1 -1
  416. package/dist/types/wallet/src/core/signingEngine/session/persistence/sealedSessionRecords.d.ts +1 -1
  417. package/dist/types/wallet/src/core/signingEngine/stepUpConfirmation/channel/confirmCommon.d.ts +3 -3
  418. package/dist/types/wallet/src/core/signingEngine/stepUpConfirmation/types.d.ts +4 -4
  419. package/dist/types/wallet/src/core/signingEngine/threshold/ed25519/yaoClient.d.ts +1 -1
  420. package/dist/types/wallet/src/core/signingEngine/threshold/sessionPolicy.d.ts +1 -1
  421. package/dist/types/wallet/src/core/signingEngine/uiConfirm/handlers/flows/adapters/adapters.d.ts +1 -1
  422. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/ConfirmContent.d.ts +3 -1
  423. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/ConfirmHeader.d.ts +2 -3
  424. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/ConfirmationBody.d.ts +3 -1
  425. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/ConfirmationContent.d.ts +3 -1
  426. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/ConfirmationDrawer.d.ts +0 -1
  427. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/ConfirmationModal.d.ts +0 -1
  428. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/CopyStatusIcon.d.ts +1 -1
  429. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/EmailOtpInput.d.ts +0 -1
  430. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/ExportPrivateKeySurface.d.ts +1 -1
  431. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/PadlockIcon.d.ts +1 -1
  432. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/PasskeyHaloLoading.d.ts +1 -1
  433. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/PasskeyRegistrationContent.d.ts +3 -1
  434. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/PasskeyRegistrationDetails.d.ts +1 -2
  435. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/RecoveryCodeBackupSurface.d.ts +3 -1
  436. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/ReviewDisclosure.d.ts +0 -1
  437. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/SeamsWordmark.d.ts +1 -1
  438. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/TransactionLabel.d.ts +0 -1
  439. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/TransactionReceipt.d.ts +3 -1
  440. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/TransactionReview.d.ts +3 -1
  441. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/TransactionTree.d.ts +0 -1
  442. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/WalletLocale.d.ts +18 -0
  443. package/dist/types/wallet/src/core/signingEngine/webauthnAuth/credentials/helpers.d.ts +2 -2
  444. package/dist/types/wallet/src/core/signingEngine/workerManager/SignerWorkerManager.d.ts +1 -0
  445. package/dist/types/wallet/src/core/signingEngine/workerManager/deviceLinkingPorts.d.ts +1 -1
  446. package/dist/types/wallet/src/core/signingEngine/workerManager/ecdsaClientWorkerChannels.d.ts +3 -3
  447. package/dist/types/wallet/src/core/signingEngine/workerManager/ecdsaPresignPoolIdentity.d.ts +1 -1
  448. package/dist/types/wallet/src/core/signingEngine/workerManager/validation.d.ts +1 -1
  449. package/dist/types/wallet/src/core/signingEngine/workerManager/workerTransport.d.ts +1 -0
  450. package/dist/types/wallet/src/core/signingEngine/workerManager/workerTypes.d.ts +1 -1
  451. package/dist/types/wallet/src/core/signingEngine/workerManager/workers/device-linking-key/ecdsaTargetShareHpke.d.ts +3 -3
  452. package/dist/types/wallet/src/core/signingEngine/workerManager/workers/device-linking-key/ordinaryMaterialState.d.ts +1 -1
  453. package/dist/types/wallet/src/core/signingEngine/workerManager/workers/email-otp/crypto.d.ts +3 -3
  454. package/dist/types/wallet/src/core/signingEngine/workerManager/workers/email-otp/materialParsing.d.ts +1 -1
  455. package/dist/types/wallet/src/core/signingEngine/workerManager/workers/email-otp/payloadParsing.d.ts +2 -2
  456. package/dist/types/wallet/src/core/signingEngine/workerManager/workers/email-otp/unlock.d.ts +1 -1
  457. package/dist/types/wallet/src/core/signingEngine/workerManager/workers/workerErrorPayload.d.ts +2 -2
  458. package/dist/types/wallet/src/core/types/actionBuilders.d.ts +16 -2
  459. package/dist/types/wallet/src/core/types/amounts.d.ts +75 -0
  460. package/dist/types/wallet/src/core/types/amounts.typecheck.d.ts +2 -0
  461. package/dist/types/wallet/src/core/types/sdkSentEvents.d.ts +5 -5
  462. package/dist/types/wallet/src/core/types/seams.d.ts +3 -0
  463. package/dist/types/wallet/src/core/types/secure-confirm-worker.d.ts +1 -1
  464. package/dist/types/wallet/src/core/types/signer-worker.d.ts +7 -7
  465. package/dist/types/wallet/src/core/ui/locale.d.ts +5 -0
  466. package/dist/types/wallet/src/core/ui/messages.d.ts +8 -0
  467. package/dist/types/wallet/src/externalEvm/types.d.ts +1 -0
  468. package/dist/types/wallet/src/index.d.ts +5 -1
  469. package/dist/types/wallet/src/react/{hooks/useWallet.d.ts → boundWallet.d.ts} +8 -48
  470. package/dist/types/wallet/src/react/components/AccountMenuButton/AccountMenuButtonMock.d.ts +1 -0
  471. package/dist/types/wallet/src/react/components/AccountMenuButton/AccountMenuButtonView.d.ts +0 -1
  472. package/dist/types/wallet/src/react/components/AccountMenuButton/AccountsSection.d.ts +0 -1
  473. package/dist/types/wallet/src/react/components/AccountMenuButton/AuthenticationMethodsModal.d.ts +0 -1
  474. package/dist/types/wallet/src/react/components/AccountMenuButton/ExportKeysSection.d.ts +0 -1
  475. package/dist/types/wallet/src/react/components/AccountMenuButton/LinkedDevicesModal.d.ts +0 -1
  476. package/dist/types/wallet/src/react/components/AccountMenuButton/ProfileDropdown.d.ts +0 -1
  477. package/dist/types/wallet/src/react/components/AccountMenuButton/WalletRegionSection.d.ts +3 -0
  478. package/dist/types/wallet/src/react/components/AccountMenuButton/WalletSettingsLayout.d.ts +4 -2
  479. package/dist/types/wallet/src/react/components/AccountMenuButton/icons/GlobeIcon.d.ts +1 -1
  480. package/dist/types/wallet/src/react/components/AccountMenuButton/icons/HoverArrowIcon.d.ts +0 -1
  481. package/dist/types/wallet/src/react/components/AccountMenuButton/icons/KeyIcon.d.ts +1 -1
  482. package/dist/types/wallet/src/react/components/AccountMenuButton/icons/LaptopIcon.d.ts +1 -1
  483. package/dist/types/wallet/src/react/components/AccountMenuButton/icons/LinkIcon.d.ts +1 -1
  484. package/dist/types/wallet/src/react/components/AccountMenuButton/icons/LockIcon.d.ts +1 -1
  485. package/dist/types/wallet/src/react/components/AccountMenuButton/icons/LockKeyholeIcon.d.ts +1 -1
  486. package/dist/types/wallet/src/react/components/AccountMenuButton/icons/MailIcon.d.ts +1 -1
  487. package/dist/types/wallet/src/react/components/AccountMenuButton/icons/PlusIcon.d.ts +1 -1
  488. package/dist/types/wallet/src/react/components/AccountMenuButton/icons/RecoveryCodesIcon.d.ts +1 -1
  489. package/dist/types/wallet/src/react/components/AccountMenuButton/icons/ScanIcon.d.ts +1 -1
  490. package/dist/types/wallet/src/react/components/AccountMenuButton/icons/SlidersIcon.d.ts +1 -1
  491. package/dist/types/wallet/src/react/components/AccountMenuButton/icons/SmartphoneIcon.d.ts +1 -1
  492. package/dist/types/wallet/src/react/components/AccountMenuButton/icons/TouchIcon.d.ts +0 -1
  493. package/dist/types/wallet/src/react/components/AccountMenuButton/index.d.ts +0 -1
  494. package/dist/types/wallet/src/react/components/AccountMenuButton/types.d.ts +8 -8
  495. package/dist/types/wallet/src/react/components/HostedSeamsAuthMenu/SeamsAuthMenuMock.d.ts +2 -1
  496. package/dist/types/wallet/src/react/components/ShowQRCode.d.ts +0 -1
  497. package/dist/types/wallet/src/react/components/VoiceAssistantCard.d.ts +0 -1
  498. package/dist/types/wallet/src/react/components/theme/design-tokens.d.ts +1 -0
  499. package/dist/types/wallet/src/react/context/WalletLocale.d.ts +16 -0
  500. package/dist/types/wallet/src/react/context/index.d.ts +2 -1
  501. package/dist/types/wallet/src/react/context/useSeamsContextValue.d.ts +2 -2
  502. package/dist/types/wallet/src/react/index.d.ts +3 -2
  503. package/dist/types/wallet/src/react/styles.d.ts +2 -0
  504. package/dist/types/wallet/src/react/transactionReview/boundCalls.d.ts +57 -57
  505. package/dist/types/wallet/src/react/types.d.ts +14 -1
  506. package/dist/types/wallet/src/theme/base-styles.d.ts +4 -4
  507. package/dist/workers/device-linking-key.worker.js +12 -11
  508. package/dist/workers/ecdsa-derivation-client.worker.js +146 -48
  509. package/dist/workers/ecdsa-online-client.worker.js +7 -6
  510. package/dist/workers/ecdsa-presign-client.worker.js +7 -6
  511. package/dist/workers/email-otp.worker.js +17 -3
  512. package/dist/workers/passkey-mpc-export.worker.js +10 -0
  513. package/dist/workers/passkey-mpc-session.worker.js +2 -1
  514. package/package.json +8 -6
  515. package/dist/esm/react/hooks/useWallet.js +0 -108
  516. package/dist/esm/sdk/ConfirmationDrawer-BFzQjd1P.js +0 -1
  517. package/dist/esm/sdk/NonceCoordinator-CDGnEgfI.js +0 -1
  518. package/dist/esm/sdk/adapters-DsAaBNNY.js +0 -2
  519. package/dist/esm/sdk/authorizationAdmission-CGinGhXH.js +0 -1
  520. package/dist/esm/sdk/challengeDelivery-CATQ4u6P.js +0 -1
  521. package/dist/esm/sdk/configBuilder-BMawmNpz.js +0 -1
  522. package/dist/esm/sdk/domainIds-BzkGsRqO.js +0 -1
  523. package/dist/esm/sdk/ecdsaCapabilityManifest-DX6TflEz.js +0 -1
  524. package/dist/esm/sdk/ecdsaDerivationClientWasm-CpjnN4aK.js +0 -1
  525. package/dist/esm/sdk/export-viewer-host-CV-lSsQF.js +0 -1
  526. package/dist/esm/sdk/jsxRuntime.module-DKsgiFjd.js +0 -2
  527. package/dist/esm/sdk/localOnly-C5mSXb_D.js +0 -1
  528. package/dist/esm/sdk/mountExportPrivateKeySurface-CatAhYoG.js +0 -1
  529. package/dist/esm/sdk/mountRecoveryCodeBackupSurface-DlEb3uD7.js +0 -2
  530. package/dist/esm/sdk/nearEd25519YaoMaterialActivation-Bo3IOTS-.js +0 -1
  531. package/dist/esm/sdk/presignaturePool-V10fZpG3.js +0 -1
  532. package/dist/esm/sdk/registration-yoF0o52H.js +0 -1
  533. package/dist/esm/sdk/routerAbNormalSigning-C4P2tDU-.js +0 -1
  534. package/dist/esm/sdk/runtime-auth--i_j8PP7.js +0 -1
  535. package/dist/esm/sdk/runtime-device-link-fpvaxYyR.js +0 -1
  536. package/dist/esm/sdk/runtime-ecdsa-tempo-AE5QTaXu.js +0 -1
  537. package/dist/esm/sdk/runtime-email-otp-Dl03QI-O.js +0 -1
  538. package/dist/esm/sdk/runtime-export-F9s12UcT.js +0 -1
  539. package/dist/esm/sdk/runtime-near-Bjrz1KYf.js +0 -1
  540. package/dist/esm/sdk/runtime-preferences-oLRSEqmz.js +0 -1
  541. package/dist/esm/sdk/runtime-recovery-DBBKvIIg.js +0 -1
  542. package/dist/esm/sdk/secp256k1-CKq7_HD-.js +0 -1
  543. package/dist/esm/sdk/sessionObservationRevision-CnEOLDbl.js +0 -1
  544. package/dist/esm/sdk/shared-D893jckQ.js +0 -6
  545. package/dist/esm/sdk/signEvmFamilyWithUiConfirmForTempo-DGWmm9n7.js +0 -1
  546. package/dist/esm/sdk/signNear-XGZBxc_g.js +0 -1
  547. package/dist/esm/sdk/signatureUses-BKAoDbQd.js +0 -1
  548. package/dist/esm/sdk/surface-measurement-reporter-DvVHPu_O.js +0 -1
  549. package/dist/esm/sdk/transactionReviewAdmission-CIvR4W5_.js +0 -1
  550. package/dist/esm/sdk/walletCustodyEcdsaContinuity-B4fTDL10.js +0 -1
  551. package/dist/esm/sdk/walletRegistrationSetupPrewarm-B9kpnrbK.js +0 -1
  552. package/dist/esm/sdk/walletSessionAuthorizationStatus-BL7j2TeM.js +0 -1
  553. package/dist/esm/sdk/walletSessionAuthorizationStore-DmYe-cDR.js +0 -1
  554. package/dist/esm/sdk/walletSessionFailure-YuhraC3P.js +0 -1
  555. package/dist/esm/sdk/warmSessionHydration-CsQpQVuy.js +0 -1
  556. package/dist/esm/sdk/webauthnP256-BwgxtG5N.js +0 -1
  557. package/dist/esm/sdk/webauthnPromptCoordinator-CwJeKiYq.js +0 -1
  558. package/dist/public/sdk/ConfirmationDrawer-BFzQjd1P.js +0 -1
  559. package/dist/public/sdk/NonceCoordinator-CDGnEgfI.js +0 -1
  560. package/dist/public/sdk/adapters-DsAaBNNY.js +0 -2
  561. package/dist/public/sdk/authorizationAdmission-CGinGhXH.js +0 -1
  562. package/dist/public/sdk/challengeDelivery-CATQ4u6P.js +0 -1
  563. package/dist/public/sdk/configBuilder-BMawmNpz.js +0 -1
  564. package/dist/public/sdk/domainIds-BzkGsRqO.js +0 -1
  565. package/dist/public/sdk/ecdsaCapabilityManifest-DX6TflEz.js +0 -1
  566. package/dist/public/sdk/ecdsaDerivationClientWasm-CpjnN4aK.js +0 -1
  567. package/dist/public/sdk/export-viewer-host-CV-lSsQF.js +0 -1
  568. package/dist/public/sdk/jsxRuntime.module-DKsgiFjd.js +0 -2
  569. package/dist/public/sdk/localOnly-C5mSXb_D.js +0 -1
  570. package/dist/public/sdk/mountExportPrivateKeySurface-CatAhYoG.js +0 -1
  571. package/dist/public/sdk/mountRecoveryCodeBackupSurface-DlEb3uD7.js +0 -2
  572. package/dist/public/sdk/nearEd25519YaoMaterialActivation-Bo3IOTS-.js +0 -1
  573. package/dist/public/sdk/presignaturePool-V10fZpG3.js +0 -1
  574. package/dist/public/sdk/registration-yoF0o52H.js +0 -1
  575. package/dist/public/sdk/routerAbNormalSigning-C4P2tDU-.js +0 -1
  576. package/dist/public/sdk/runtime-auth--i_j8PP7.js +0 -1
  577. package/dist/public/sdk/runtime-device-link-fpvaxYyR.js +0 -1
  578. package/dist/public/sdk/runtime-ecdsa-tempo-AE5QTaXu.js +0 -1
  579. package/dist/public/sdk/runtime-email-otp-Dl03QI-O.js +0 -1
  580. package/dist/public/sdk/runtime-export-F9s12UcT.js +0 -1
  581. package/dist/public/sdk/runtime-near-Bjrz1KYf.js +0 -1
  582. package/dist/public/sdk/runtime-preferences-oLRSEqmz.js +0 -1
  583. package/dist/public/sdk/runtime-recovery-DBBKvIIg.js +0 -1
  584. package/dist/public/sdk/secp256k1-CKq7_HD-.js +0 -1
  585. package/dist/public/sdk/sessionObservationRevision-CnEOLDbl.js +0 -1
  586. package/dist/public/sdk/shared-D893jckQ.js +0 -6
  587. package/dist/public/sdk/signEvmFamilyWithUiConfirmForTempo-DGWmm9n7.js +0 -1
  588. package/dist/public/sdk/signNear-XGZBxc_g.js +0 -1
  589. package/dist/public/sdk/signatureUses-BKAoDbQd.js +0 -1
  590. package/dist/public/sdk/surface-measurement-reporter-DvVHPu_O.js +0 -1
  591. package/dist/public/sdk/transactionReviewAdmission-CIvR4W5_.js +0 -1
  592. package/dist/public/sdk/walletCustodyEcdsaContinuity-B4fTDL10.js +0 -1
  593. package/dist/public/sdk/walletRegistrationSetupPrewarm-B9kpnrbK.js +0 -1
  594. package/dist/public/sdk/walletSessionAuthorizationStatus-BL7j2TeM.js +0 -1
  595. package/dist/public/sdk/walletSessionAuthorizationStore-DmYe-cDR.js +0 -1
  596. package/dist/public/sdk/walletSessionFailure-YuhraC3P.js +0 -1
  597. package/dist/public/sdk/warmSessionHydration-CsQpQVuy.js +0 -1
  598. package/dist/public/sdk/webauthnP256-BwgxtG5N.js +0 -1
  599. package/dist/public/sdk/webauthnPromptCoordinator-CwJeKiYq.js +0 -1
  600. /package/dist/esm/sdk/{base64-DW79QA0h.js → base64-BmKR3UqU.js} +0 -0
  601. /package/dist/esm/sdk/{signingSessionSeal-DX41aXUL.js → signingSessionSeal-DqbjG8c8.js} +0 -0
  602. /package/dist/esm/sdk/{theme-BKaFqCAj.js → theme-os0Salmo.js} +0 -0
  603. /package/dist/public/sdk/{base64-DW79QA0h.js → base64-BmKR3UqU.js} +0 -0
  604. /package/dist/public/sdk/{signingSessionSeal-DX41aXUL.js → signingSessionSeal-DqbjG8c8.js} +0 -0
  605. /package/dist/public/sdk/{theme-BKaFqCAj.js → theme-os0Salmo.js} +0 -0
@@ -1,5 +1,6 @@
1
1
  import { appearanceTokenCssRule } from "../../../../../core/signingEngine/uiConfirm/ui/appearance-token-vars.js";
2
2
  import { createCspStylesheetManager, getDefaultCspNonce } from "../../../../../core/browser/walletIframe/csp-stylesheet.js";
3
+ import { withWalletLocale } from "../../../../../core/signingEngine/uiConfirm/ui/preact/WalletLocale.js";
3
4
  import { AuthMenuSurface } from "./AuthMenuSurface.js";
4
5
  import { render } from "preact";
5
6
  import { jsx } from "preact/jsx-runtime";
@@ -21,13 +22,10 @@ function authMenuStyles(document) {
21
22
  return styles;
22
23
  }
23
24
  var MountedAuthMenuSurface = class {
25
+ element;
26
+ styles;
27
+ state;
24
28
  constructor(input) {
25
- this.cancel = () => {
26
- if (this.state.kind === "mounted") this.state.onIntent({
27
- kind: "close",
28
- reason: "close_button"
29
- });
30
- };
31
29
  const document = input.parent.ownerDocument;
32
30
  this.styles = authMenuStyles(document);
33
31
  this.element = document.createElement("div");
@@ -48,14 +46,15 @@ var MountedAuthMenuSurface = class {
48
46
  }
49
47
  update(viewModel) {
50
48
  if (this.state.kind === "disposed") return;
49
+ this.element.lang = viewModel.appearance.locale ?? "en";
51
50
  this.element.dataset.theme = viewModel.appearance.theme.mode;
52
51
  this.styles.setDynamicRule(this.element.id + "-appearance", appearanceTokenCssRule(this.element.id, viewModel.appearance));
53
- render(/* @__PURE__ */ jsx(AuthMenuSurface, {
52
+ render(withWalletLocale(viewModel.appearance.locale ?? "en", /* @__PURE__ */ jsx(AuthMenuSurface, {
54
53
  element: this.element,
55
54
  viewModel,
56
55
  onIntent: this.state.onIntent,
57
56
  styles: this.styles
58
- }), this.element);
57
+ })), this.element);
59
58
  }
60
59
  dispose() {
61
60
  if (this.state.kind === "disposed") return;
@@ -65,6 +64,12 @@ var MountedAuthMenuSurface = class {
65
64
  this.styles.deleteDynamicRule(this.element.id + "-appearance");
66
65
  this.element.remove();
67
66
  }
67
+ cancel = () => {
68
+ if (this.state.kind === "mounted") this.state.onIntent({
69
+ kind: "close",
70
+ reason: "close_button"
71
+ });
72
+ };
68
73
  };
69
74
  function mountAuthMenuSurface(input) {
70
75
  return new MountedAuthMenuSurface(input);
@@ -0,0 +1,116 @@
1
+ import { demoEmailOtpCodeFromDelivery } from "../../../../../core/signingEngine/session/emailOtp/challengeDelivery.js";
2
+ import { WalletText } from "../../../../../core/signingEngine/uiConfirm/ui/preact/WalletLocale.js";
3
+ import { resolveAuthMenuLoginAccount } from "../../auth-menu/domain.js";
4
+ import { Fragment, jsx, jsxs } from "preact/jsx-runtime";
5
+ //#region src/SeamsWeb/walletIframe/host/ui/auth-menu/presentation.tsx
6
+ function renderDemoEmailCode(delivery) {
7
+ const code = demoEmailOtpCodeFromDelivery(delivery);
8
+ if (code === null) return null;
9
+ return /* @__PURE__ */ jsxs("p", {
10
+ class: "seams-otp-description",
11
+ children: [
12
+ /* @__PURE__ */ jsx(WalletText, { message: "Demo email code:" }),
13
+ " ",
14
+ /* @__PURE__ */ jsx("code", { children: code })
15
+ ]
16
+ });
17
+ }
18
+ const AUTH_MENU_TITLE_ID = "seams-auth-menu-title";
19
+ const AUTH_MENU_ACCOUNT_LIST_ID = "seams-auth-menu-account-list";
20
+ function otpCodeDigits(code, length = 6) {
21
+ return code.padEnd(length, " ").slice(0, length).split("");
22
+ }
23
+ function recoveryCaretAtPoint(root, clientX, clientY, codeLength) {
24
+ let nearest = null;
25
+ for (const slot of root.querySelectorAll("[data-recovery-slot]")) {
26
+ const index = Number(slot.dataset.recoverySlot);
27
+ const box = slot.getBoundingClientRect();
28
+ const dx = clientX < box.left ? box.left - clientX : Math.max(0, clientX - box.right);
29
+ const dy = clientY < box.top ? box.top - clientY : Math.max(0, clientY - box.bottom);
30
+ const distance = dx * dx + dy * dy;
31
+ if (nearest === null || distance < nearest.distance) nearest = {
32
+ index,
33
+ distance,
34
+ after: clientX > box.left + box.width / 2
35
+ };
36
+ }
37
+ if (nearest === null) return null;
38
+ return Math.min(nearest.after ? nearest.index + 1 : nearest.index, codeLength);
39
+ }
40
+ function renderOtpCodeDigit(digit) {
41
+ return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx("span", {
42
+ class: `seams-otp-slot ${digit.trim() ? "is-filled" : ""}`,
43
+ children: digit
44
+ }) });
45
+ }
46
+ function authViewKey(viewModel) {
47
+ const stage = viewModel.kind === "recovery" ? `:${viewModel.stage}` : "";
48
+ return `${viewModel.kind}:${viewModel.mode}:${viewModel.status.kind}${stage}`;
49
+ }
50
+ function recoveryAnnouncement(viewModel) {
51
+ if (viewModel.status.kind === "busy") return viewModel.status.headline;
52
+ if (viewModel.status.kind === "recoverable") return viewModel.status.message;
53
+ if (viewModel.stage === "passkey_ready") return "Recovery code accepted.";
54
+ if (viewModel.stage === "sign_in_ready") return "Wallet recovered. Unlock it to continue.";
55
+ return "";
56
+ }
57
+ function recoveryBackLabel(viewModel) {
58
+ if (viewModel.kind !== "recovery") return "Back";
59
+ return viewModel.stage === "choose_method" ? "Back to recovery code" : "Back to unlock wallet";
60
+ }
61
+ function recoveryNavigationLocked(viewModel) {
62
+ return viewModel.kind === "recovery" && viewModel.stage === "finalizing";
63
+ }
64
+ function modeSwitchCopy(mode) {
65
+ return mode === "register" ? {
66
+ prompt: "Already have a wallet?",
67
+ action: "Unlock wallet",
68
+ nextMode: "login"
69
+ } : {
70
+ prompt: "Don't have a wallet?",
71
+ action: "Create a wallet",
72
+ nextMode: "register"
73
+ };
74
+ }
75
+ function modeLabel(mode) {
76
+ return mode === "register" ? "Create a wallet" : "Unlock wallet";
77
+ }
78
+ function passkeyButtonLabel(mode) {
79
+ return mode === "register" ? "Create wallet with passkey" : "Unlock with passkey";
80
+ }
81
+ /** The failure the footer strip reports. Only the menu itself reports there. */
82
+ function menuNotice(viewModel) {
83
+ if (viewModel.kind === "google_otp_login" || viewModel.kind === "google_registration") return viewModel.error || null;
84
+ return viewModel.kind === "passkey" && viewModel.status.kind === "recoverable" && viewModel.status.reason === "error" ? viewModel.status.message : null;
85
+ }
86
+ function selectedLoginAccount(viewModel) {
87
+ return resolveAuthMenuLoginAccount(viewModel.accountOptions, viewModel.selectedAccount).selectedAccount;
88
+ }
89
+ function selectedAccountPrimaryText(account) {
90
+ return account.walletId;
91
+ }
92
+ function accountSecondaryText(account) {
93
+ return account.authMethod === "email_otp" ? account.emailAddress : null;
94
+ }
95
+ function savedAccountsTriggerLabel(account) {
96
+ if (!account) return "Saved wallets";
97
+ const emailAddress = accountSecondaryText(account);
98
+ return emailAddress ? `Saved wallets. Selected wallet ID ${account.walletId}, email ${emailAddress}` : `Saved wallets. Selected ${account.walletId}`;
99
+ }
100
+ function accountGroups(options) {
101
+ const passkeyAccounts = options.filter((option) => option.authMethod === "passkey");
102
+ const emailOtpAccounts = options.filter((option) => option.authMethod === "email_otp");
103
+ return [{
104
+ authMethod: "passkey",
105
+ label: "Passkey",
106
+ accounts: passkeyAccounts
107
+ }, {
108
+ authMethod: "email_otp",
109
+ label: "Email OTP",
110
+ accounts: emailOtpAccounts
111
+ }].filter((group) => group.accounts.length > 0);
112
+ }
113
+ //#endregion
114
+ export { AUTH_MENU_ACCOUNT_LIST_ID, AUTH_MENU_TITLE_ID, accountGroups, accountSecondaryText, authViewKey, menuNotice, modeLabel, modeSwitchCopy, otpCodeDigits, passkeyButtonLabel, recoveryAnnouncement, recoveryBackLabel, recoveryCaretAtPoint, recoveryNavigationLocked, renderDemoEmailCode, renderOtpCodeDigit, savedAccountsTriggerLabel, selectedAccountPrimaryText, selectedLoginAccount };
115
+
116
+ //# sourceMappingURL=presentation.js.map
@@ -0,0 +1,60 @@
1
+ import { EMAIL_OTP_RECOVERY_KEY_ALPHABET } from "../../../../../shared-ts/src/utils/emailOtpRecoveryKey.js";
2
+ import "../../../../../shared-ts/src/wallet-recovery/recoveryCodes.js";
3
+ import { jsx } from "preact/jsx-runtime";
4
+ //#region src/SeamsWeb/walletIframe/host/ui/auth-menu/recovery-code-input.tsx
5
+ const RECOVERY_CODE_CHARACTERS = new Set(EMAIL_OTP_RECOVERY_KEY_ALPHABET);
6
+ function recoveryInputCharacters(code) {
7
+ let characters = "";
8
+ for (const character of code.toUpperCase()) {
9
+ const read = character === "O" ? "0" : character === "I" || character === "L" ? "1" : character;
10
+ if (RECOVERY_CODE_CHARACTERS.has(read)) characters += read;
11
+ }
12
+ return characters;
13
+ }
14
+ const RECOVERY_CODE_SEPARATOR = /[\s\-\u2010-\u2015\u2212]/;
15
+ /** Characters the input dropped because no recovery code contains them, such as U. */
16
+ function rejectedRecoveryCharacters(input) {
17
+ const rejected = /* @__PURE__ */ new Set();
18
+ for (const character of input.toUpperCase()) {
19
+ if (RECOVERY_CODE_SEPARATOR.test(character)) continue;
20
+ if (recoveryInputCharacters(character)) continue;
21
+ rejected.add(character);
22
+ }
23
+ return Array.from(rejected).slice(0, 3);
24
+ }
25
+ function renderRecoveryCodeGroups(code, selection, arrival) {
26
+ const caret = selection && selection.start === selection.end ? selection.start : null;
27
+ const lastIndex = 31;
28
+ const focusIndex = selection === null ? null : Math.min(selection.start, lastIndex);
29
+ const groups = [];
30
+ for (let start = 0; start < 32; start += 4) {
31
+ const end = start + 4;
32
+ const slots = [];
33
+ for (let index = start; index < end; index += 1) {
34
+ const character = code[index] ?? "";
35
+ const classes = ["seams-otp-slot"];
36
+ if (character) classes.push("is-filled");
37
+ if (index === caret) classes.push("is-caret");
38
+ if (caret === 32 && index === lastIndex) classes.push("is-caret-after");
39
+ if (selection && index >= selection.start && index < selection.end) classes.push("is-selected");
40
+ if (arrival && index >= arrival.start && index < arrival.end) classes.push("is-new");
41
+ slots.push(/* @__PURE__ */ jsx("span", {
42
+ class: classes.join(" "),
43
+ "data-recovery-slot": index,
44
+ children: character
45
+ }, index));
46
+ }
47
+ const groupClasses = ["seams-recovery-code-group"];
48
+ if (focusIndex !== null && focusIndex >= start && focusIndex < end) groupClasses.push("is-active");
49
+ if (code.length >= end) groupClasses.push("is-complete");
50
+ groups.push(/* @__PURE__ */ jsx("div", {
51
+ class: groupClasses.join(" "),
52
+ children: slots
53
+ }, start));
54
+ }
55
+ return groups;
56
+ }
57
+ //#endregion
58
+ export { recoveryInputCharacters, rejectedRecoveryCharacters, renderRecoveryCodeGroups };
59
+
60
+ //# sourceMappingURL=recovery-code-input.js.map
@@ -13,6 +13,7 @@ import { parseSignerSlot } from "../../../shared-ts/src/utils/signerSlot.js";
13
13
  import { walletAuthMethodBindingFromRaw } from "../../../shared-ts/src/utils/walletCapabilityBindings.js";
14
14
  //#region src/SeamsWeb/walletIframe/shared/exactSessionState.ts
15
15
  var WalletIframeSessionExpiredRequestError = class extends Error {
16
+ failure;
16
17
  constructor(failure) {
17
18
  super("Wallet session expired");
18
19
  this.name = "WalletIframeSessionExpiredRequestError";
@@ -1,4 +1,5 @@
1
1
  import { parseMpcMaterialActivationRef } from "../../../shared-ts/src/utils/domainIds.js";
2
+ import { normalizeWalletLocale } from "../../../core/ui/locale.js";
2
3
  import { resolveAppearanceTheme, resolveThemePalette } from "../../../core/config/configHelpers.js";
3
4
  import { nearAccountRefFromAccountId, thresholdEcdsaChainTargetFromRequest, thresholdEcdsaChainTargetsEqual, walletSessionRefFromSession } from "../../../core/signingEngine/interfaces/ecdsaChainTarget.js";
4
5
  import { parseExactEcdsaSigningLaneIdentity, parseExactEd25519ExportMaterialIdentity } from "../../../core/signingEngine/session/identity/exactSigningLaneIdentity.js";
@@ -72,6 +73,7 @@ function normalizeExportKeypairWithUIInput(input, theme) {
72
73
  function resolveRuntimeAppearance(current, input) {
73
74
  const rawInput = input;
74
75
  return {
76
+ locale: normalizeWalletLocale(rawInput.locale ?? current.locale),
75
77
  theme: resolveAppearanceTheme({
76
78
  value: rawInput.theme,
77
79
  fallback: current.theme,
@@ -1,4 +1,5 @@
1
1
  import { normalizeTrimmedString } from "../../shared-ts/src/utils/normalize.js";
2
+ import { normalizeWalletLocale } from "../ui/locale.js";
2
3
  import { copyEcdsaSignerProvisioningDefaults, resolveAppearanceTheme, resolveBoolean, resolveChains, resolveIntegerInRange, resolveThemePalette } from "./configHelpers.js";
3
4
  import { normalizeWalletHostVariant } from "../browser/walletIframe/hostVariant.js";
4
5
  import { SIGNING_SESSION_SEAL_ALG, SIGNING_SESSION_SEAL_GROUP_ID } from "../../shared-ts/src/utils/signingSessionSeal.js";
@@ -18,9 +19,9 @@ const THRESHOLD_ECDSA_PRESIGN_POOL_LIMITS = {
18
19
  }
19
20
  };
20
21
  var HostedWalletOriginRequiredError = class extends Error {
22
+ code = "SEAMS_HOSTED_WALLET_ORIGIN_REQUIRED";
21
23
  constructor() {
22
24
  super("[SEAMS_HOSTED_WALLET_ORIGIN_REQUIRED] Missing required config: iframeWallet.walletOrigin. Browser wallet capabilities require a hosted wallet iframe origin.");
23
- this.code = "SEAMS_HOSTED_WALLET_ORIGIN_REQUIRED";
24
25
  this.name = "HostedWalletOriginRequiredError";
25
26
  }
26
27
  };
@@ -208,6 +209,7 @@ function buildConfigsFromDefaults(args) {
208
209
  }
209
210
  },
210
211
  ui: { appearance: {
212
+ locale: normalizeWalletLocale(rawAppearance?.locale ?? defaults.ui.appearance.locale),
211
213
  theme: appearanceTheme,
212
214
  palette: appearancePalette
213
215
  } }
@@ -1,4 +1,5 @@
1
1
  import { UserVerificationPolicy } from "../../shared-ts/src/utils/authenticatorOptions.js";
2
+ import "../../shared-ts/src/threshold/participants.js";
2
3
  import { DEFAULT_THRESHOLD_SESSION_TTL_MS } from "../signingEngine/threshold/sessionPolicy.js";
3
4
  import { buildConfigsFromDefaults } from "./configBuilder.js";
4
5
  //#region src/core/config/defaultConfigs.ts
@@ -3,6 +3,8 @@ import "../../shared-ts/src/utils/index.js";
3
3
  //#region src/core/indexedDB/accountSignerLifecycle.ts
4
4
  const SIGNER_MATERIAL_FINGERPRINT_METADATA_KEY = "signerMaterialFingerprint";
5
5
  var SignerLifecycleError = class extends Error {
6
+ code;
7
+ details;
6
8
  constructor(args) {
7
9
  super(args.message);
8
10
  this.name = "SignerLifecycleError";
@@ -7,6 +7,7 @@ import { readActiveManifestRows } from "./ecdsaCapabilityManifestLookups.js";
7
7
  //#region src/core/indexedDB/seamsWalletDB/ecdsaCapabilityManifestStore.ts
8
8
  const MATERIAL_AAD_VERSION = 1;
9
9
  var FinalizationControlError = class extends Error {
10
+ kind;
10
11
  constructor(kind, message) {
11
12
  super(message);
12
13
  this.name = "FinalizationControlError";
@@ -73,6 +73,12 @@ function openWalletAuthorityChannel(dbName) {
73
73
  }
74
74
  }
75
75
  var SeamsWalletDBManager = class {
76
+ config;
77
+ dbPromise = null;
78
+ disabled = false;
79
+ walletAuthorityRevision = 0;
80
+ walletAuthorityChannel = null;
81
+ walletAuthorityListeners = /* @__PURE__ */ new Set();
76
82
  onWalletAuthorityChange(listener) {
77
83
  this.walletAuthorityListeners.add(listener);
78
84
  this.connectWalletAuthorityChannel();
@@ -121,11 +127,6 @@ var SeamsWalletDBManager = class {
121
127
  } catch {}
122
128
  }
123
129
  constructor(config = SEAMS_WALLET_DB_CONFIG) {
124
- this.dbPromise = null;
125
- this.disabled = false;
126
- this.walletAuthorityRevision = 0;
127
- this.walletAuthorityChannel = null;
128
- this.walletAuthorityListeners = /* @__PURE__ */ new Set();
129
130
  this.config = config;
130
131
  }
131
132
  getDbName() {
@@ -187,6 +187,8 @@ function requireWebAuthnRpId(value) {
187
187
  return parsed.value;
188
188
  }
189
189
  var SeamsWalletDBConstraintError = class extends Error {
190
+ code;
191
+ details;
190
192
  constructor(code, message, details) {
191
193
  super(message);
192
194
  this.name = "SeamsWalletDBConstraintError";
@@ -8,10 +8,10 @@ import { acceptWalletOwnershipGeneration } from "./walletOwnershipGeneration.js"
8
8
  //#region src/core/indexedDB/seamsWalletDB/walletSessionAuthorizationStore.ts
9
9
  const WALLET_SESSION_AUTHORIZATION_RECORD_VERSION_V6 = "wallet_session_authorization_v6";
10
10
  var WalletSessionAuthorizationUpgradeRequiredError = class extends Error {
11
+ kind = "upgrade_required";
12
+ code = "upgrade_required";
11
13
  constructor(message) {
12
14
  super(message);
13
- this.kind = "upgrade_required";
14
- this.code = "upgrade_required";
15
15
  this.name = "WalletSessionAuthorizationUpgradeRequiredError";
16
16
  }
17
17
  };
@@ -8,10 +8,13 @@ import { SeamsWalletRepositories } from "./seamsWalletDB/repositories.js";
8
8
  const DEFAULT_STALE_PENDING_SIGNER_MS = 1440 * 6e4;
9
9
  const KEY_MATERIAL_SIGNER_KINDS = new Set(Object.values(SIGNER_KINDS));
10
10
  var UnifiedIndexedDBManager = class {
11
+ seamsWalletDB;
12
+ seamsWalletRepositories;
13
+ registrationSetupRepository;
14
+ eventListeners = /* @__PURE__ */ new Set();
15
+ _initialized = false;
16
+ lastUserScope = null;
11
17
  constructor(deps) {
12
- this.eventListeners = /* @__PURE__ */ new Set();
13
- this._initialized = false;
14
- this.lastUserScope = null;
15
18
  this.seamsWalletDB = deps?.seamsWalletDB || seamsWalletDB;
16
19
  this.seamsWalletRepositories = new SeamsWalletRepositories(this.seamsWalletDB);
17
20
  this.registrationSetupRepository = new RegistrationSetupRepository(this.seamsWalletDB);
@@ -8,6 +8,13 @@ function firstKey(o) {
8
8
  return keys.length ? keys[0] : void 0;
9
9
  }
10
10
  var NearRpcError = class NearRpcError extends Error {
11
+ code;
12
+ type;
13
+ kind;
14
+ index;
15
+ short;
16
+ details;
17
+ operation;
11
18
  constructor(params) {
12
19
  super(params.message);
13
20
  this.name = params.name || "NearRpcError";
@@ -14,6 +14,9 @@ const INTENT_VERSION_V2 = "router-ab-protocol/ed25519-normal-signing/intent/v2";
14
14
  const PAYLOAD_VERSION_V2 = "router-ab-protocol/ed25519-normal-signing/payload/v2";
15
15
  const NEP413_PREFIX = 2147484061;
16
16
  var RouterAbSigningRequestError = class extends Error {
17
+ code;
18
+ path;
19
+ status;
17
20
  constructor(args) {
18
21
  super(`Router A/B signing ${args.path} returned HTTP ${args.status}: ${args.message || args.code}`);
19
22
  this.name = "RouterAbSigningRequestError";
@@ -6,9 +6,9 @@ import "../../../shared-ts/src/utils/routerAbEd25519Yao.js";
6
6
  import "../../../shared-ts/src/utils/routerAbEcdsaDerivation.js";
7
7
  import "../../../shared-ts/src/authorization/walletAuthority.js";
8
8
  import { parseImplicitNearAccountId } from "../../../shared-ts/src/utils/near.js";
9
+ import "../../../shared-ts/src/utils/registrationSignerPlan.js";
9
10
  import "../../../shared-ts/src/utils/registrationIds.js";
10
11
  import "../../../shared-ts/src/passkey-custody/index.js";
11
- import "../../../shared-ts/src/utils/registrationSignerPlan.js";
12
12
  import "../../../shared-ts/src/utils/registrationIntent.js";
13
13
  import "../../../shared-ts/src/utils/registrationEstablishedSession.js";
14
14
  import { WALLET_MANAGEMENT_PROTOCOL_HEADER } from "../../../shared-ts/src/utils/walletManagementProtocol.js";
@@ -99,7 +99,11 @@ async function postJson(args) {
99
99
  responseSizeBreakdown: payloadSizeBreakdown(data),
100
100
  totalMs: Date.now() - startedAt
101
101
  });
102
- if (!response.ok || readParsedJsonField(data, "ok") === false) throw new Error(String(readParsedJsonField(data, "message") || readParsedJsonField(data, "error") || readParsedJsonField(data, "code") || `HTTP ${response.status}`));
102
+ if (!response.ok || readParsedJsonField(data, "ok") === false) {
103
+ const code = String(readParsedJsonField(data, "code") || "").trim();
104
+ const message = String(readParsedJsonField(data, "message") || readParsedJsonField(data, "error") || code || `HTTP ${response.status}`);
105
+ throw Object.assign(new Error(message), code ? { code } : {});
106
+ }
103
107
  return data;
104
108
  }
105
109
  const FUND_IMPLICIT_NEAR_SUCCESS_REQUIRED_FIELDS = [
@@ -56,10 +56,8 @@ function statusAfterPrepareClaim(status) {
56
56
  }
57
57
  /** One operation owns this snapshot; subsequent operations create a new scope. */
58
58
  var WalletSessionStatusReadScope = class WalletSessionStatusReadScope {
59
- constructor() {
60
- this.readsByFetch = /* @__PURE__ */ new Map();
61
- this.suppliedStatus = { kind: "remote" };
62
- }
59
+ readsByFetch = /* @__PURE__ */ new Map();
60
+ suppliedStatus = { kind: "remote" };
63
61
  static fromPrepare(options, status) {
64
62
  const scope = new WalletSessionStatusReadScope();
65
63
  scope.suppliedStatus = {
@@ -309,6 +307,9 @@ function parseDecodedWalletSessionStatusResponse(value, expected) {
309
307
  }
310
308
  }
311
309
  var RelayerExactWalletSessionStatusPort = class {
310
+ relayerUrl;
311
+ operationCredential;
312
+ fetchImpl;
312
313
  constructor(options) {
313
314
  this.relayerUrl = normalizeRelayerBaseUrl(options.relayerUrl);
314
315
  if (!this.relayerUrl) throw new Error("Relayer URL is required");
@@ -2,8 +2,9 @@ import { computeEip1559TxHashWasm, encodeEip1559SignedTxFromSignature65Wasm } fr
2
2
  import { bytesToHex } from "./bytes.js";
3
3
  //#region src/core/signingEngine/chains/evm/evmAdapter.ts
4
4
  var EvmAdapter = class {
5
+ chain = "evm";
6
+ workerCtx;
5
7
  constructor(workerCtx) {
6
- this.chain = "evm";
7
8
  this.workerCtx = workerCtx;
8
9
  }
9
10
  async buildIntent(request) {
@@ -2,8 +2,9 @@ import { bytesToHex } from "../evm/bytes.js";
2
2
  import { computeTempoSenderHashWasm, encodeTempoSignedTxWasm } from "./tempoSignerWasm.js";
3
3
  //#region src/core/signingEngine/chains/tempo/tempoAdapter.ts
4
4
  var TempoAdapter = class {
5
+ chain = "tempo";
6
+ workerCtx;
5
7
  constructor(workerCtx) {
6
- this.chain = "tempo";
7
8
  this.workerCtx = workerCtx;
8
9
  }
9
10
  async buildIntent(request) {
@@ -4,11 +4,11 @@ import { thresholdEcdsaChainTargetKey, toWalletId } from "../../interfaces/ecdsa
4
4
  import { compactImplicitNearAccountId } from "../../../../shared-ts/src/utils/near.js";
5
5
  import { toAccountId } from "../../../types/accountIds.js";
6
6
  import { SIGNER_AUTH_METHODS, SIGNER_KINDS, SIGNER_SOURCES } from "../../../../shared-ts/src/utils/signerDomain.js";
7
+ import { NEAR_ED25519_YAO_KEY_VERSION_V1 } from "../../../../shared-ts/src/utils/registrationSignerPlan.js";
7
8
  import { nearEd25519SigningKeyIdFromString } from "../../../../shared-ts/src/utils/registrationIds.js";
8
9
  import { parseSignerSlot } from "../../../../shared-ts/src/utils/signerSlot.js";
9
10
  import { normalizeIndexedDbAccountAddress, toIndexedDbChainTargetKey } from "../../../indexedDB/normalization.js";
10
11
  import { buildNearProfileId, parseNearAccountProjectionProfileId } from "../../../accountData/near/profileId.js";
11
- import { NEAR_ED25519_YAO_KEY_VERSION_V1 } from "../../../../shared-ts/src/utils/registrationSignerPlan.js";
12
12
  import { resolveProfileAccountContextFromCandidates, resolveProfileAccountProjection } from "../../../indexedDB/profileAccountProjection.js";
13
13
  import { buildNearAccountRefs, inferNearChainIdKey } from "../../../accountData/near/accountRefs.js";
14
14
  import { buildWalletCustodyEd25519MaterialRecordV1 } from "../../../indexedDB/walletCustodyEd25519MaterialRecord.js";
@@ -63,8 +63,12 @@ function scheduleRouterAbEcdsaDerivationSigningRefill(args) {
63
63
  });
64
64
  }
65
65
  var Secp256k1Engine = class {
66
+ algorithm = "secp256k1";
67
+ beforeSigning;
68
+ shouldAbort;
69
+ workerCtx;
70
+ reconcileSession;
66
71
  constructor(opts) {
67
- this.algorithm = "secp256k1";
68
72
  this.beforeSigning = opts.beforeSigning;
69
73
  this.shouldAbort = opts.shouldAbort;
70
74
  this.workerCtx = opts.workerCtx;
@@ -7,10 +7,10 @@ function bytesEq(a, b) {
7
7
  return true;
8
8
  }
9
9
  var WebAuthnP256Engine = class {
10
+ algorithm = "webauthnP256";
10
11
  constructor(workerCtx, beforeSigning) {
11
12
  this.workerCtx = workerCtx;
12
13
  this.beforeSigning = beforeSigning;
13
- this.algorithm = "webauthnP256";
14
14
  }
15
15
  async buildWebauthnSignature(args) {
16
16
  if (!this.workerCtx) throw new Error("[WebAuthnP256Engine] workerCtx is required for wasm-backed WebAuthn signature packing");
@@ -19,6 +19,7 @@ import { PENDING_CHALLENGE_B64U, PENDING_INTENT_DIGEST, registerIntentDigestPrep
19
19
  * surfacing as a signing failure. `signEvmFamily` catches it and re-prepares
20
20
  * once against current canonical state. */
21
21
  var EvmFamilyEcdsaMaterialSupersededError = class extends Error {
22
+ superseded;
22
23
  constructor(superseded) {
23
24
  super(`[chains] threshold ECDSA material was superseded (${superseded.supersessionKind}): prepared ${String(superseded.preparedMaterialActivation.activationId)}, current ${String(superseded.currentMaterialActivation.activationId)}`);
24
25
  this.name = "EvmFamilyEcdsaMaterialSupersededError";
@@ -226,6 +227,8 @@ async function signEvmFamilyWithUiConfirm(args) {
226
227
  operationFingerprint
227
228
  });
228
229
  };
230
+ let ecdsaSigningMaterialSource = null;
231
+ let preparedEcdsaOperationStepUp = null;
229
232
  const intentPreparationTask = (async () => {
230
233
  if (input.prepareRequestWithManagedNonce) {
231
234
  const prepared = await input.prepareRequestWithManagedNonce();
@@ -297,8 +300,6 @@ async function signEvmFamilyWithUiConfirm(args) {
297
300
  let intentPrepared = null;
298
301
  let intentHasSecp256k1Request = false;
299
302
  let signedResult = null;
300
- let ecdsaSigningMaterialSource = null;
301
- let preparedEcdsaOperationStepUp = null;
302
303
  const ensureReadySecp256k1SigningMaterial = async (_signReq, operation, operationDigests) => {
303
304
  if (input.resolveEcdsaSigningMaterialPlan) {
304
305
  const plan = await input.resolveEcdsaSigningMaterialPlan();
@@ -1,12 +1,10 @@
1
1
  //#region src/core/signingEngine/routerAb/ecdsaDerivation/presignatureRefillProgress.ts
2
2
  var PresignatureRefillProgressV1 = class {
3
- constructor() {
4
- this.state = {
5
- kind: "refilling",
6
- revision: 0
7
- };
8
- this.waiters = /* @__PURE__ */ new Map();
9
- }
3
+ state = {
4
+ kind: "refilling",
5
+ revision: 0
6
+ };
7
+ waiters = /* @__PURE__ */ new Map();
10
8
  snapshot() {
11
9
  return this.state;
12
10
  }
@@ -1,6 +1,8 @@
1
1
  import { WALLET_SESSION_FAILURE_CODES, isWalletSessionFailureCode } from "../../../../shared-ts/src/utils/walletSessionFailure.js";
2
2
  //#region src/core/signingEngine/session/lifecycle/walletSessionFailure.ts
3
3
  var WalletSessionFailureError = class extends Error {
4
+ failure;
5
+ code;
4
6
  constructor(args) {
5
7
  super(args.message);
6
8
  this.name = "WalletSessionFailureError";