@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,3 +1,5 @@
1
+ import { walletText } from "../../../../ui/messages.js";
2
+ import { WalletLocaleContext, WalletText } from "./WalletLocale.js";
1
3
  import { PasskeyHaloLoading } from "./PasskeyHaloLoading.js";
2
4
  import { PasskeyRegistrationDetails } from "./PasskeyRegistrationDetails.js";
3
5
  import { Component } from "preact";
@@ -5,15 +7,13 @@ import { Fragment as Fragment$1, jsx, jsxs } from "preact/jsx-runtime";
5
7
  //#region src/core/signingEngine/uiConfirm/ui/preact/PasskeyRegistrationContent.tsx
6
8
  /** @jsxImportSource preact */
7
9
  var PasskeyRegistrationContent = class extends Component {
8
- constructor(..._args) {
9
- super(..._args);
10
- this.confirm = () => {
11
- if (this.props.decision.kind === "ready") this.props.decision.onConfirm();
12
- };
13
- this.cancel = () => {
14
- this.props.onCancel();
15
- };
16
- }
10
+ static contextType = WalletLocaleContext;
11
+ confirm = () => {
12
+ if (this.props.decision.kind === "ready") this.props.decision.onConfirm();
13
+ };
14
+ cancel = () => {
15
+ this.props.onCancel();
16
+ };
17
17
  render() {
18
18
  const creating = this.props.decision.kind === "creating";
19
19
  return /* @__PURE__ */ jsxs("div", {
@@ -31,16 +31,16 @@ var PasskeyRegistrationContent = class extends Component {
31
31
  class: "hero-container passkey-registration-confirm__hero-copy",
32
32
  children: [/* @__PURE__ */ jsx("h2", {
33
33
  class: "hero-heading",
34
- children: this.props.heading
34
+ children: /* @__PURE__ */ jsx(WalletText, { copy: this.props.heading })
35
35
  }), /* @__PURE__ */ jsx("p", {
36
36
  class: "passkey-registration-confirm__body",
37
- children: this.props.body
37
+ children: /* @__PURE__ */ jsx(WalletText, { copy: this.props.body })
38
38
  })]
39
39
  })]
40
40
  }),
41
41
  this.props.errorMessage && /* @__PURE__ */ jsx("div", {
42
42
  class: "error-banner",
43
- children: this.props.errorMessage
43
+ children: /* @__PURE__ */ jsx(WalletText, { copy: this.props.errorMessage })
44
44
  }),
45
45
  /* @__PURE__ */ jsx(PasskeyRegistrationDetails, { display: this.props.display }),
46
46
  /* @__PURE__ */ jsxs("div", {
@@ -49,7 +49,7 @@ var PasskeyRegistrationContent = class extends Component {
49
49
  type: "button",
50
50
  class: "btn btn-cancel",
51
51
  onClick: this.cancel,
52
- children: this.props.cancelText
52
+ children: /* @__PURE__ */ jsx(WalletText, { copy: this.props.cancelText })
53
53
  }), /* @__PURE__ */ jsx("button", {
54
54
  type: "button",
55
55
  class: "btn btn-confirm",
@@ -58,11 +58,11 @@ var PasskeyRegistrationContent = class extends Component {
58
58
  children: creating ? /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx("span", {
59
59
  class: "loading-indicator passkey-registration-confirm__spinner",
60
60
  role: "progressbar",
61
- "aria-label": "Creating passkey"
61
+ "aria-label": walletText(this.context, "Creating passkey")
62
62
  }), /* @__PURE__ */ jsx("span", {
63
63
  class: "passkey-registration-confirm__busy-label",
64
- children: "Creating passkey..."
65
- })] }) : "Create passkey"
64
+ children: /* @__PURE__ */ jsx(WalletText, { message: "Creating passkey..." })
65
+ })] }) : /* @__PURE__ */ jsx(WalletText, { message: "Create passkey" })
66
66
  })]
67
67
  })
68
68
  ]
@@ -1,27 +1,31 @@
1
+ import { walletDisplayText, walletText } from "../../../../ui/messages.js";
2
+ import { WalletText, useWalletLocale } from "./WalletLocale.js";
1
3
  import { jsx, jsxs } from "preact/jsx-runtime";
2
4
  //#region src/core/signingEngine/uiConfirm/ui/preact/PasskeyRegistrationDetails.tsx
5
+ /** @jsxImportSource preact */
3
6
  function PasskeyRegistrationDetails(props) {
7
+ const locale = useWalletLocale();
4
8
  return /* @__PURE__ */ jsxs("div", {
5
9
  class: "passkey-registration-confirm__identity",
6
- "aria-label": "Passkey registration details",
10
+ "aria-label": walletText(locale, "Passkey registration details"),
7
11
  children: [/* @__PURE__ */ jsxs("div", {
8
12
  class: "passkey-registration-confirm__row",
9
13
  children: [/* @__PURE__ */ jsx("span", {
10
14
  class: "passkey-registration-confirm__label",
11
- children: "Account"
15
+ children: /* @__PURE__ */ jsx(WalletText, { message: "Account" })
12
16
  }), /* @__PURE__ */ jsx("span", {
13
17
  class: "passkey-registration-confirm__value",
14
- title: props.display.intendedUserName,
18
+ title: walletDisplayText(locale, props.display.intendedUserName),
15
19
  children: props.display.intendedUserName
16
20
  })]
17
21
  }), /* @__PURE__ */ jsxs("div", {
18
22
  class: "passkey-registration-confirm__row",
19
23
  children: [/* @__PURE__ */ jsx("span", {
20
24
  class: "passkey-registration-confirm__label",
21
- children: "Website"
25
+ children: /* @__PURE__ */ jsx(WalletText, { message: "Website" })
22
26
  }), /* @__PURE__ */ jsx("span", {
23
27
  class: "passkey-registration-confirm__value",
24
- title: props.display.rpId,
28
+ title: walletDisplayText(locale, props.display.rpId),
25
29
  children: props.display.rpId
26
30
  })]
27
31
  })]
@@ -1,3 +1,5 @@
1
+ import { walletText } from "../../../../ui/messages.js";
2
+ import { WalletLocaleContext, WalletText } from "./WalletLocale.js";
1
3
  import { Component, createRef } from "preact";
2
4
  import { Fragment as Fragment$1, jsx, jsxs } from "preact/jsx-runtime";
3
5
  //#region src/core/signingEngine/uiConfirm/ui/preact/RecoveryCodeBackupSurface.tsx
@@ -119,109 +121,13 @@ function renderRecoveryCodeItem(code, index) {
119
121
  }, `${index}-${code}`);
120
122
  }
121
123
  var RecoveryCodeBackupSurface = class extends Component {
122
- constructor(..._args) {
123
- super(..._args);
124
- this.state = initialState(this.props.experience);
125
- this.root = createRef();
126
- this.active = false;
127
- this.loadGeneration = 0;
128
- this.copiedResetTimer = null;
129
- this.focusFrame = null;
130
- this.retryStatus = () => {
131
- const experience = this.props.experience;
132
- if (experience.kind !== "account_menu") return;
133
- const current = this.state.viewState;
134
- if (current.kind !== "summary") return;
135
- const generation = ++this.loadGeneration;
136
- this.setState({ viewState: {
137
- ...current,
138
- loadState: { kind: "loading" },
139
- actionError: null
140
- } });
141
- this.loadSummaryStatus(experience, generation);
142
- };
143
- this.openRecoveryCodes = async () => {
144
- const experience = this.props.experience;
145
- const current = this.state.viewState;
146
- if (experience.kind !== "account_menu" || current.kind !== "summary") return;
147
- const generation = this.loadGeneration;
148
- this.setState({ viewState: {
149
- ...current,
150
- kind: "opening",
151
- actionError: null
152
- } });
153
- try {
154
- const request = await experience.loadPendingBackup();
155
- if (!this.active || generation !== this.loadGeneration) return;
156
- if (!request) {
157
- this.setState({ viewState: {
158
- ...current,
159
- actionError: "Recovery codes are no longer available on this device."
160
- } });
161
- return;
162
- }
163
- this.setState({ viewState: {
164
- kind: "recovery_codes",
165
- request
166
- } });
167
- } catch (error) {
168
- if (!this.active || generation !== this.loadGeneration) return;
169
- this.setState({ viewState: {
170
- ...current,
171
- actionError: errorMessage(error, "Could not open recovery codes")
172
- } });
173
- }
174
- };
175
- this.closeSummary = () => {
176
- this.props.onClose({ kind: "dismissed" });
177
- };
178
- this.closeRecoveryCodes = () => {
179
- this.props.onClose({
180
- kind: "recovery_codes",
181
- acknowledged: this.state.acknowledged
182
- });
183
- };
184
- this.onAcknowledgementChange = (event) => {
185
- if (!(event.currentTarget instanceof HTMLInputElement)) return;
186
- this.setState({ acknowledged: event.currentTarget.checked });
187
- };
188
- this.download = () => {
189
- const viewState = this.state.viewState;
190
- if (viewState.kind !== "recovery_codes") return;
191
- const view = this.root.current?.ownerDocument.defaultView;
192
- if (!view) return;
193
- const { walletId, recoveryCodes } = viewState.request;
194
- try {
195
- const url = view.URL.createObjectURL(new view.Blob([backupText(walletId, recoveryCodes)], { type: "text/plain;charset=utf-8" }));
196
- const anchor = view.document.createElement("a");
197
- anchor.href = url;
198
- anchor.download = `seams-wallet-recovery-codes-${safeWalletId(walletId)}.txt`;
199
- try {
200
- anchor.click();
201
- } finally {
202
- view.setTimeout(() => view.URL.revokeObjectURL(url), 0);
203
- }
204
- this.setState({ statusMessage: "Recovery codes downloaded." });
205
- } catch {
206
- this.setState({ statusMessage: "Unable to download the codes. Copy them or try again." });
207
- }
208
- };
209
- this.copy = async () => {
210
- const viewState = this.state.viewState;
211
- if (viewState.kind !== "recovery_codes" || !this.active) return;
212
- const { walletId, recoveryCodes } = viewState.request;
213
- const generation = this.loadGeneration;
214
- try {
215
- await navigator.clipboard.writeText(backupText(walletId, recoveryCodes));
216
- if (!this.active || generation !== this.loadGeneration) return;
217
- this.setState({ statusMessage: "Recovery codes copied." });
218
- this.flashCopied();
219
- } catch {
220
- if (!this.active || generation !== this.loadGeneration) return;
221
- this.setState({ statusMessage: "Unable to copy the codes. Download them or try again." });
222
- }
223
- };
224
- }
124
+ static contextType = WalletLocaleContext;
125
+ state = initialState(this.props.experience);
126
+ root = createRef();
127
+ active = false;
128
+ loadGeneration = 0;
129
+ copiedResetTimer = null;
130
+ focusFrame = null;
225
131
  componentDidMount() {
226
132
  this.active = true;
227
133
  this.loadGeneration += 1;
@@ -288,6 +194,100 @@ var RecoveryCodeBackupSurface = class extends Component {
288
194
  loadState
289
195
  } });
290
196
  }
197
+ retryStatus = () => {
198
+ const experience = this.props.experience;
199
+ if (experience.kind !== "account_menu") return;
200
+ const current = this.state.viewState;
201
+ if (current.kind !== "summary") return;
202
+ const generation = ++this.loadGeneration;
203
+ this.setState({ viewState: {
204
+ ...current,
205
+ loadState: { kind: "loading" },
206
+ actionError: null
207
+ } });
208
+ this.loadSummaryStatus(experience, generation);
209
+ };
210
+ openRecoveryCodes = async () => {
211
+ const experience = this.props.experience;
212
+ const current = this.state.viewState;
213
+ if (experience.kind !== "account_menu" || current.kind !== "summary") return;
214
+ const generation = this.loadGeneration;
215
+ this.setState({ viewState: {
216
+ ...current,
217
+ kind: "opening",
218
+ actionError: null
219
+ } });
220
+ try {
221
+ const request = await experience.loadPendingBackup();
222
+ if (!this.active || generation !== this.loadGeneration) return;
223
+ if (!request) {
224
+ this.setState({ viewState: {
225
+ ...current,
226
+ actionError: "Recovery codes are no longer available on this device."
227
+ } });
228
+ return;
229
+ }
230
+ this.setState({ viewState: {
231
+ kind: "recovery_codes",
232
+ request
233
+ } });
234
+ } catch (error) {
235
+ if (!this.active || generation !== this.loadGeneration) return;
236
+ this.setState({ viewState: {
237
+ ...current,
238
+ actionError: errorMessage(error, "Could not open recovery codes")
239
+ } });
240
+ }
241
+ };
242
+ closeSummary = () => {
243
+ this.props.onClose({ kind: "dismissed" });
244
+ };
245
+ closeRecoveryCodes = () => {
246
+ this.props.onClose({
247
+ kind: "recovery_codes",
248
+ acknowledged: this.state.acknowledged
249
+ });
250
+ };
251
+ onAcknowledgementChange = (event) => {
252
+ if (!(event.currentTarget instanceof HTMLInputElement)) return;
253
+ this.setState({ acknowledged: event.currentTarget.checked });
254
+ };
255
+ download = () => {
256
+ const viewState = this.state.viewState;
257
+ if (viewState.kind !== "recovery_codes") return;
258
+ const view = this.root.current?.ownerDocument.defaultView;
259
+ if (!view) return;
260
+ const { walletId, recoveryCodes } = viewState.request;
261
+ try {
262
+ const url = view.URL.createObjectURL(new view.Blob([backupText(walletId, recoveryCodes)], { type: "text/plain;charset=utf-8" }));
263
+ const anchor = view.document.createElement("a");
264
+ anchor.href = url;
265
+ anchor.download = `seams-wallet-recovery-codes-${safeWalletId(walletId)}.txt`;
266
+ try {
267
+ anchor.click();
268
+ } finally {
269
+ view.setTimeout(() => view.URL.revokeObjectURL(url), 0);
270
+ }
271
+ this.setState({ statusMessage: "Recovery codes downloaded." });
272
+ } catch {
273
+ this.setState({ statusMessage: "Unable to download the codes. Copy them or try again." });
274
+ }
275
+ };
276
+ copy = async () => {
277
+ const viewState = this.state.viewState;
278
+ if (viewState.kind !== "recovery_codes" || !this.active) return;
279
+ const { walletId, recoveryCodes } = viewState.request;
280
+ const generation = this.loadGeneration;
281
+ try {
282
+ await navigator.clipboard.writeText(backupText(walletId, recoveryCodes));
283
+ if (!this.active || generation !== this.loadGeneration) return;
284
+ this.setState({ statusMessage: "Recovery codes copied." });
285
+ this.flashCopied();
286
+ } catch {
287
+ if (!this.active || generation !== this.loadGeneration) return;
288
+ this.setState({ statusMessage: "Unable to copy the codes. Download them or try again." });
289
+ }
290
+ };
291
291
  flashCopied() {
292
292
  const view = this.root.current?.ownerDocument.defaultView;
293
293
  if (!view) return;
@@ -325,7 +325,7 @@ var RecoveryCodeBackupSurface = class extends Component {
325
325
  /* @__PURE__ */ jsx("button", {
326
326
  type: "button",
327
327
  class: "recovery-summary-close",
328
- "aria-label": "Close recovery codes",
328
+ "aria-label": walletText(this.context, "Close recovery codes"),
329
329
  onClick: this.closeSummary,
330
330
  children: /* @__PURE__ */ jsx("svg", {
331
331
  "aria-hidden": "true",
@@ -339,19 +339,19 @@ var RecoveryCodeBackupSurface = class extends Component {
339
339
  id: "seams-wallet-recovery-title",
340
340
  class: "recovery-backup-title",
341
341
  tabIndex: -1,
342
- children: "Wallet recovery codes"
342
+ children: /* @__PURE__ */ jsx(WalletText, { message: "Wallet recovery codes" })
343
343
  }),
344
344
  /* @__PURE__ */ jsx("p", {
345
345
  id: "seams-wallet-recovery-description",
346
346
  class: "recovery-backup-description",
347
- children: "View and save the recovery codes retained by this wallet after registration."
347
+ children: /* @__PURE__ */ jsx(WalletText, { message: "View and save the recovery codes retained by this wallet after registration." })
348
348
  }),
349
349
  /* @__PURE__ */ jsxs("div", {
350
350
  class: "recovery-summary-body",
351
351
  children: [
352
352
  /* @__PURE__ */ jsx("h2", {
353
353
  class: "recovery-summary-section-label",
354
- children: "Security"
354
+ children: /* @__PURE__ */ jsx(WalletText, { message: "Security" })
355
355
  }),
356
356
  /* @__PURE__ */ jsxs("div", {
357
357
  class: "recovery-summary-item",
@@ -365,15 +365,15 @@ var RecoveryCodeBackupSurface = class extends Component {
365
365
  class: "recovery-summary-item-text",
366
366
  children: [/* @__PURE__ */ jsx("span", {
367
367
  class: "recovery-summary-item-title",
368
- children: "Recovery codes"
368
+ children: /* @__PURE__ */ jsx(WalletText, { message: "Recovery codes" })
369
369
  }), /* @__PURE__ */ jsx("span", {
370
370
  class: "recovery-summary-item-detail",
371
- children: activeCodesDetail(state.loadState)
371
+ children: /* @__PURE__ */ jsx(WalletText, { copy: activeCodesDetail(state.loadState) })
372
372
  })]
373
373
  }),
374
374
  /* @__PURE__ */ jsx("span", {
375
375
  class: "recovery-summary-badge",
376
- children: statusValue(state.loadState)
376
+ children: /* @__PURE__ */ jsx(WalletText, { copy: statusValue(state.loadState) })
377
377
  })
378
378
  ]
379
379
  }),
@@ -387,7 +387,7 @@ var RecoveryCodeBackupSurface = class extends Component {
387
387
  class: "recovery-summary-item-text",
388
388
  children: [/* @__PURE__ */ jsx("span", {
389
389
  class: "recovery-summary-item-title",
390
- children: "Wallet"
390
+ children: /* @__PURE__ */ jsx(WalletText, { message: "Wallet" })
391
391
  }), /* @__PURE__ */ jsx("span", {
392
392
  class: "recovery-summary-item-detail",
393
393
  children: state.walletId
@@ -399,7 +399,7 @@ var RecoveryCodeBackupSurface = class extends Component {
399
399
  class: "recovery-backup-button secondary recovery-summary-open",
400
400
  disabled: opening,
401
401
  onClick: this.openRecoveryCodes,
402
- children: opening ? /* @__PURE__ */ jsxs(Fragment$1, { children: ["Opening recovery codes", /* @__PURE__ */ jsxs("span", {
402
+ children: opening ? /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx(WalletText, { message: "Opening recovery codes" }), /* @__PURE__ */ jsxs("span", {
403
403
  class: "recovery-summary-ellipsis",
404
404
  "aria-hidden": "true",
405
405
  children: [
@@ -407,29 +407,29 @@ var RecoveryCodeBackupSurface = class extends Component {
407
407
  /* @__PURE__ */ jsx("span", { children: "." }),
408
408
  /* @__PURE__ */ jsx("span", { children: "." })
409
409
  ]
410
- })] }) : "View recovery codes"
410
+ })] }) : /* @__PURE__ */ jsx(WalletText, { message: "View recovery codes" })
411
411
  }),
412
412
  /* @__PURE__ */ jsx("p", {
413
413
  class: "recovery-summary-live-status",
414
414
  role: "status",
415
415
  "aria-live": "polite",
416
- children: state.loadState.kind === "loading" ? "Loading recovery-code status…" : ""
416
+ children: state.loadState.kind === "loading" ? /* @__PURE__ */ jsx(WalletText, { message: "Loading recovery-code status…" }) : ""
417
417
  }),
418
418
  statusFailure && /* @__PURE__ */ jsx("p", {
419
419
  class: "recovery-summary-error",
420
420
  role: "alert",
421
- children: statusFailure
421
+ children: /* @__PURE__ */ jsx(WalletText, { copy: statusFailure })
422
422
  }),
423
423
  state.actionError && /* @__PURE__ */ jsx("p", {
424
424
  class: "recovery-summary-error",
425
425
  role: "alert",
426
- children: state.actionError
426
+ children: /* @__PURE__ */ jsx(WalletText, { copy: state.actionError })
427
427
  }),
428
428
  state.loadState.kind === "error" && /* @__PURE__ */ jsx("button", {
429
429
  type: "button",
430
430
  class: "recovery-backup-button secondary",
431
431
  onClick: this.retryStatus,
432
- children: "Retry status"
432
+ children: /* @__PURE__ */ jsx(WalletText, { message: "Retry status" })
433
433
  })
434
434
  ]
435
435
  })
@@ -442,18 +442,21 @@ var RecoveryCodeBackupSurface = class extends Component {
442
442
  id: "seams-wallet-recovery-title",
443
443
  class: "recovery-backup-title",
444
444
  tabIndex: -1,
445
- children: "Save your recovery codes"
445
+ children: /* @__PURE__ */ jsx(WalletText, { message: "Save your recovery codes" })
446
446
  }),
447
447
  /* @__PURE__ */ jsx("p", {
448
448
  id: "seams-wallet-recovery-description",
449
449
  class: "recovery-backup-description",
450
- children: description
450
+ children: /* @__PURE__ */ jsx(WalletText, { copy: description })
451
451
  }),
452
452
  /* @__PURE__ */ jsxs("div", {
453
453
  class: "recovery-code-sheet",
454
454
  children: [/* @__PURE__ */ jsxs("div", {
455
455
  class: "recovery-code-sheet-heading",
456
- children: [/* @__PURE__ */ jsx("span", { children: "Recovery codes" }), /* @__PURE__ */ jsxs("span", { children: [request.recoveryCodes.length, " single-use codes"] })]
456
+ children: [/* @__PURE__ */ jsx("span", { children: /* @__PURE__ */ jsx(WalletText, { message: "Recovery codes" }) }), /* @__PURE__ */ jsx("span", { children: /* @__PURE__ */ jsx(WalletText, {
457
+ message: "{value0} single-use codes",
458
+ values: { value0: request.recoveryCodes.length }
459
+ }) })]
457
460
  }), /* @__PURE__ */ jsx("ol", {
458
461
  class: "recovery-code-list",
459
462
  children: request.recoveryCodes.map(renderRecoveryCodeItem)
@@ -465,12 +468,12 @@ var RecoveryCodeBackupSurface = class extends Component {
465
468
  type: "button",
466
469
  class: "recovery-backup-button primary",
467
470
  onClick: this.download,
468
- children: "Download codes"
471
+ children: /* @__PURE__ */ jsx(WalletText, { message: "Download codes" })
469
472
  }), /* @__PURE__ */ jsxs("button", {
470
473
  type: "button",
471
474
  class: `recovery-backup-button secondary recovery-backup-copy${this.state.copied ? " copied" : ""}`,
472
475
  onClick: this.copy,
473
- children: [/* @__PURE__ */ jsx(CopyIcon, {}), "Copy codes"]
476
+ children: [/* @__PURE__ */ jsx(CopyIcon, {}), /* @__PURE__ */ jsx(WalletText, { message: "Copy codes" })]
474
477
  })]
475
478
  }),
476
479
  /* @__PURE__ */ jsxs("div", {
@@ -482,19 +485,19 @@ var RecoveryCodeBackupSurface = class extends Component {
482
485
  "data-seams-wallet-recovery-backup-acknowledgement": true,
483
486
  checked: this.state.acknowledged,
484
487
  onChange: this.onAcknowledgementChange
485
- }), /* @__PURE__ */ jsxs("span", { children: ["I saved these recovery codes somewhere safe.", /* @__PURE__ */ jsx("small", { children: "They won’t be shown again after you finish." })] })]
488
+ }), /* @__PURE__ */ jsxs("span", { children: [/* @__PURE__ */ jsx(WalletText, { message: "I saved these recovery codes somewhere safe." }), /* @__PURE__ */ jsx("small", { children: /* @__PURE__ */ jsx(WalletText, { message: "They won’t be shown again after you finish." }) })] })]
486
489
  }), /* @__PURE__ */ jsx("button", {
487
490
  type: "button",
488
491
  class: `recovery-backup-button ${this.state.acknowledged ? "primary" : "secondary"}`,
489
492
  "data-seams-wallet-recovery-backup-close": true,
490
493
  onClick: this.closeRecoveryCodes,
491
- children: recoveryCloseLabel(request, this.state.acknowledged)
494
+ children: /* @__PURE__ */ jsx(WalletText, { copy: recoveryCloseLabel(request, this.state.acknowledged) })
492
495
  })]
493
496
  }),
494
497
  /* @__PURE__ */ jsx("p", {
495
498
  class: "recovery-backup-status",
496
499
  role: "status",
497
- children: this.state.statusMessage
500
+ children: /* @__PURE__ */ jsx(WalletText, { copy: this.state.statusMessage })
498
501
  })
499
502
  ] });
500
503
  }
@@ -1,3 +1,4 @@
1
+ import { WalletText } from "./WalletLocale.js";
1
2
  import { announceClampedSurfaceResize } from "../confirm-surface-resize.js";
2
3
  import { confirmationDocumentStyles } from "./confirmation-styles.js";
3
4
  import { Component, createRef } from "preact";
@@ -6,82 +7,12 @@ import { jsx, jsxs } from "preact/jsx-runtime";
6
7
  /** @jsxImportSource preact */
7
8
  let nextDisclosureId = 0;
8
9
  var ReviewDisclosure = class extends Component {
9
- constructor(..._args) {
10
- super(..._args);
11
- this.root = createRef();
12
- this.id = `seams-review-disclosure-${++nextDisclosureId}`;
13
- this.motion = null;
14
- this.setHeight = (height) => {
15
- const details = this.root.current;
16
- if (!details) return;
17
- confirmationDocumentStyles(details.ownerDocument).setDynamicDeclarations(this.id, `#${this.id}`, { "--seams-review-disclosure-height": `${height}px` });
18
- };
19
- this.finish = () => {
20
- if (this.root.current && this.motion) {
21
- this.root.current.open = this.motion.opening;
22
- this.root.current.removeAttribute("data-closing");
23
- }
24
- this.clearMotion();
25
- };
26
- this.toggle = (event) => {
27
- const details = this.root.current;
28
- if (!details) return;
29
- event.preventDefault();
30
- if (this.motion?.kind === "hosted") return;
31
- const opening = this.motion ? !this.motion.opening : !details.open;
32
- const body = details.lastElementChild;
33
- if (!(body instanceof HTMLElement)) return;
34
- const height = details.open ? body.getBoundingClientRect().height : 0;
35
- this.clearMotion();
36
- details.toggleAttribute("data-closing", !opening);
37
- if (window.matchMedia("(prefers-reduced-motion: reduce)").matches || !details.animate) {
38
- details.open = opening;
39
- details.removeAttribute("data-closing");
40
- return;
41
- }
42
- details.open = true;
43
- details.setAttribute("data-resizing", "");
44
- const target = opening ? body.scrollHeight : 0;
45
- this.motion = {
46
- kind: "hosted",
47
- opening
48
- };
49
- if (announceClampedSurfaceResize({
50
- element: body,
51
- reason: "review-details",
52
- fromCssPx: height,
53
- toCssPx: target,
54
- drivenClasses: ["seams-review-disclosure-driven"],
55
- setHeightCssPx: this.setHeight,
56
- onSettled: this.finish
57
- })) return;
58
- const size = body.animate([{
59
- height: `${height}px`,
60
- overflow: "hidden"
61
- }, {
62
- height: `${target}px`,
63
- overflow: "hidden"
64
- }], {
65
- duration: opening ? 220 : 180,
66
- easing: "cubic-bezier(.2,0,0,1)",
67
- fill: "both"
68
- });
69
- this.motion = {
70
- kind: "local",
71
- opening,
72
- size,
73
- fade: body.animate(opening ? [{ opacity: 0 }, { opacity: 1 }] : [{ opacity: 1 }, { opacity: 0 }], {
74
- duration: opening ? 180 : 100,
75
- easing: "ease-out",
76
- fill: "both"
77
- })
78
- };
79
- size.onfinish = this.finish;
80
- };
81
- }
10
+ root = createRef();
11
+ id = `seams-review-disclosure-${++nextDisclosureId}`;
82
12
  componentDidMount() {
83
13
  if (this.root.current) this.root.current.open = this.props.initiallyOpen ?? false;
84
14
  }
15
+ motion = null;
85
16
  componentWillUnmount() {
86
17
  this.clearMotion();
87
18
  if (this.root.current) confirmationDocumentStyles(this.root.current.ownerDocument).deleteDynamicRule(this.id);
@@ -96,13 +27,80 @@ var ReviewDisclosure = class extends Component {
96
27
  this.motion = null;
97
28
  this.root.current?.removeAttribute("data-resizing");
98
29
  }
30
+ setHeight = (height) => {
31
+ const details = this.root.current;
32
+ if (!details) return;
33
+ confirmationDocumentStyles(details.ownerDocument).setDynamicDeclarations(this.id, `#${this.id}`, { "--seams-review-disclosure-height": `${height}px` });
34
+ };
35
+ finish = () => {
36
+ if (this.root.current && this.motion) {
37
+ this.root.current.open = this.motion.opening;
38
+ this.root.current.removeAttribute("data-closing");
39
+ }
40
+ this.clearMotion();
41
+ };
42
+ toggle = (event) => {
43
+ const details = this.root.current;
44
+ if (!details) return;
45
+ event.preventDefault();
46
+ if (this.motion?.kind === "hosted") return;
47
+ const opening = this.motion ? !this.motion.opening : !details.open;
48
+ const body = details.lastElementChild;
49
+ if (!(body instanceof HTMLElement)) return;
50
+ const height = details.open ? body.getBoundingClientRect().height : 0;
51
+ this.clearMotion();
52
+ details.toggleAttribute("data-closing", !opening);
53
+ if (window.matchMedia("(prefers-reduced-motion: reduce)").matches || !details.animate) {
54
+ details.open = opening;
55
+ details.removeAttribute("data-closing");
56
+ return;
57
+ }
58
+ details.open = true;
59
+ details.setAttribute("data-resizing", "");
60
+ const target = opening ? body.scrollHeight : 0;
61
+ this.motion = {
62
+ kind: "hosted",
63
+ opening
64
+ };
65
+ if (announceClampedSurfaceResize({
66
+ element: body,
67
+ reason: "review-details",
68
+ fromCssPx: height,
69
+ toCssPx: target,
70
+ drivenClasses: ["seams-review-disclosure-driven"],
71
+ setHeightCssPx: this.setHeight,
72
+ onSettled: this.finish
73
+ })) return;
74
+ const size = body.animate([{
75
+ height: `${height}px`,
76
+ overflow: "hidden"
77
+ }, {
78
+ height: `${target}px`,
79
+ overflow: "hidden"
80
+ }], {
81
+ duration: opening ? 220 : 180,
82
+ easing: "cubic-bezier(.2,0,0,1)",
83
+ fill: "both"
84
+ });
85
+ this.motion = {
86
+ kind: "local",
87
+ opening,
88
+ size,
89
+ fade: body.animate(opening ? [{ opacity: 0 }, { opacity: 1 }] : [{ opacity: 1 }, { opacity: 0 }], {
90
+ duration: opening ? 180 : 100,
91
+ easing: "ease-out",
92
+ fill: "both"
93
+ })
94
+ };
95
+ size.onfinish = this.finish;
96
+ };
99
97
  render() {
100
98
  return /* @__PURE__ */ jsxs("details", {
101
99
  ref: this.root,
102
100
  class: `seams-review-${this.props.kind ?? "technical"}`,
103
101
  children: [/* @__PURE__ */ jsxs("summary", {
104
102
  onClick: this.toggle,
105
- children: [this.props.label, /* @__PURE__ */ jsx("svg", {
103
+ children: [/* @__PURE__ */ jsx(WalletText, { copy: this.props.label }), /* @__PURE__ */ jsx("svg", {
106
104
  class: "seams-review-caret",
107
105
  viewBox: "0 0 20 20",
108
106
  width: "16",