@seams/wallet 0.15.6 → 0.17.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 (507) hide show
  1. package/README.md +11 -3
  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 +1 -4
  21. package/dist/esm/SeamsWeb/walletIframe/host/ui/auth-menu/AuthMenuSurface.js +298 -294
  22. package/dist/esm/SeamsWeb/walletIframe/host/ui/auth-menu/mountAuthMenuSurface.js +9 -6
  23. package/dist/esm/SeamsWeb/walletIframe/shared/exactSessionState.js +1 -0
  24. package/dist/esm/core/config/configBuilder.js +1 -1
  25. package/dist/esm/core/config/defaultConfigs.js +1 -0
  26. package/dist/esm/core/indexedDB/accountSignerLifecycle.js +2 -0
  27. package/dist/esm/core/indexedDB/seamsWalletDB/ecdsaCapabilityManifestStore.js +1 -0
  28. package/dist/esm/core/indexedDB/seamsWalletDB/manager.js +6 -5
  29. package/dist/esm/core/indexedDB/seamsWalletDB/repositories.js +2 -0
  30. package/dist/esm/core/indexedDB/seamsWalletDB/walletSessionAuthorizationStore.js +2 -2
  31. package/dist/esm/core/indexedDB/unifiedIndexedDBManager.js +6 -3
  32. package/dist/esm/core/rpcClients/near/NearRpcError.js +7 -0
  33. package/dist/esm/core/rpcClients/relayer/routerAbNormalSigning.js +3 -0
  34. package/dist/esm/core/rpcClients/relayer/walletRegistration.js +6 -2
  35. package/dist/esm/core/rpcClients/relayer/walletSessionAuthorizationStatus.js +5 -4
  36. package/dist/esm/core/signingEngine/chains/evm/evmAdapter.js +2 -1
  37. package/dist/esm/core/signingEngine/chains/tempo/tempoAdapter.js +2 -1
  38. package/dist/esm/core/signingEngine/flows/registration/accountLifecycle.js +1 -1
  39. package/dist/esm/core/signingEngine/flows/signEvmFamily/signers/secp256k1.js +5 -1
  40. package/dist/esm/core/signingEngine/flows/signEvmFamily/signers/webauthnP256.js +1 -1
  41. package/dist/esm/core/signingEngine/flows/signEvmFamily/signingFlow.js +3 -2
  42. package/dist/esm/core/signingEngine/routerAb/ecdsaDerivation/presignatureRefillProgress.js +5 -7
  43. package/dist/esm/core/signingEngine/session/lifecycle/walletSessionFailure.js +2 -0
  44. package/dist/esm/core/signingEngine/session/material/ecdsaCapabilityManifest.js +68 -10
  45. package/dist/esm/core/signingEngine/session/material/walletSigningStateFailure.js +2 -2
  46. package/dist/esm/core/signingEngine/session/operationState/authorizationAdmission.js +2 -0
  47. package/dist/esm/core/signingEngine/stepUpConfirmation/methodSelection.js +2 -0
  48. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ConfirmContent.js +29 -28
  49. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ConfirmationBody.js +3 -6
  50. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ConfirmationContent.js +20 -23
  51. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ConfirmationDrawer.js +134 -137
  52. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ConfirmationModal.js +17 -20
  53. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/EmailOtpContent.js +41 -39
  54. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/EmailOtpInput.js +14 -17
  55. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/HaloBorder.js +21 -24
  56. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/PasskeyRegistrationContent.js +6 -9
  57. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/RecoveryCodeBackupSurface.js +100 -103
  58. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ReviewDisclosure.js +70 -73
  59. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/TransactionReceipt.js +23 -26
  60. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/TransactionReview.js +19 -22
  61. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/TransactionTree.js +114 -117
  62. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/email-otp-session.js +81 -80
  63. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/mountConfirmationSurface.js +41 -37
  64. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/mountRecoveryCodeBackupSurface.js +13 -9
  65. package/dist/esm/core/signingEngine/uiConfirm/ui/transaction-display/tree.js +4 -21
  66. package/dist/esm/core/types/actionBuilders.js +16 -2
  67. package/dist/esm/core/types/amounts.js +83 -0
  68. package/dist/esm/core/types/linkDevice.js +1 -1
  69. package/dist/esm/externalEvm/controller.js +49 -48
  70. package/dist/esm/index.js +2 -1
  71. package/dist/esm/react/boundWallet.js +56 -0
  72. package/dist/esm/react/components/AccountMenuButton/LinkedDevicesModal.css +13 -2
  73. package/dist/esm/react/components/AccountMenuButton/WalletRegionSection.js +90 -93
  74. package/dist/esm/react/components/AccountMenuButton/WalletSettingsLayout.js +55 -58
  75. package/dist/esm/react/components/HostedSeamsAuthMenu/shell.js +17 -6
  76. package/dist/esm/react/components/ShowQRCode.css +13 -2
  77. package/dist/esm/react/context/index.js +30 -3
  78. package/dist/esm/react/context/useSeamsWithSdkFlow.js +1 -1
  79. package/dist/esm/react/externalEvm.js +22 -25
  80. package/dist/esm/react/index.js +4 -4
  81. package/dist/esm/react/styles/styles.css +13 -2
  82. package/dist/esm/react/transactionReview/TransactionReviewHost.js +3 -6
  83. package/dist/esm/react/transactionReview/boundCalls.js +1 -1
  84. package/dist/esm/react/transactionReview/controller.js +121 -119
  85. package/dist/esm/sdk/ConfirmationDrawer-CXVNmfTy.js +1 -0
  86. package/dist/esm/sdk/NonceCoordinator-DuDKN-B8.js +1 -0
  87. package/dist/{public/sdk/accountLifecycle-CBOkr0vU.js → esm/sdk/accountLifecycle-D61FIpFS.js} +1 -1
  88. package/dist/esm/sdk/{activeWalletSession-WdZkhtBB.js → activeWalletSession-Ba6X4CUN.js} +1 -1
  89. package/dist/esm/sdk/adapters-CTlDBRJy.js +2 -0
  90. package/dist/esm/sdk/authorizationAdmission-Dd23mTx7.js +1 -0
  91. package/dist/esm/sdk/{canonicalPrimitives-Dsbsxgxc.js → canonicalPrimitives-BOzRXzfv.js} +1 -1
  92. package/dist/esm/sdk/{capabilityKinds-N8xo_IEh.js → capabilityKinds-D0Yrp9uf.js} +1 -1
  93. package/dist/esm/sdk/{chains-C_X_fNuS.js → chains-CPmd4s9f.js} +1 -1
  94. package/dist/esm/sdk/challengeDelivery-FD9GHK1T.js +1 -0
  95. package/dist/esm/sdk/{clientSessionPersistenceState-CBylL1Ul.js → clientSessionPersistenceState-BHRUSWMt.js} +1 -1
  96. package/dist/esm/sdk/{commitQueue-DYEgzoLA.js → commitQueue-DOIaR0Hr.js} +1 -1
  97. package/dist/esm/sdk/{configHelpers-B-hs0mTO.js → configHelpers-BXdl5Mxs.js} +1 -1
  98. package/dist/esm/sdk/{digestEncoding-BX3VW9eF.js → digestEncoding-CbEFYvlJ.js} +1 -1
  99. package/dist/esm/sdk/{display-DsfJkAra.js → display-CY_aJEn6.js} +1 -1
  100. package/dist/esm/sdk/domainIds-C3fUa33Q.js +1 -0
  101. package/dist/esm/sdk/ecdsaCapabilityManifest-DzA996y9.js +1 -0
  102. package/dist/esm/sdk/{ecdsaChainTarget-Bfatk3oP.js → ecdsaChainTarget-DkOrgv4y.js} +1 -1
  103. package/dist/esm/sdk/ecdsaDerivationClientWasm-DQlajPpE.js +1 -0
  104. package/dist/{public/sdk/ecdsaDerivationExport-DOGzq0qC.js → esm/sdk/ecdsaDerivationExport-DyugdheE.js} +1 -1
  105. package/dist/esm/sdk/{ecdsaWalletRecords-CHfrYvKr.js → ecdsaWalletRecords-C_v74n5X.js} +1 -1
  106. package/dist/{public/sdk/emailOtpEcdsaDerivationIdentity-Bik0N8v9.js → esm/sdk/emailOtpEcdsaDerivationIdentity-BDVjvnmO.js} +1 -1
  107. package/dist/esm/sdk/{errors-DIWY1KR9.js → errors-ADOZT8oV.js} +1 -1
  108. package/dist/esm/sdk/export-viewer-host-DsRaS0UH.js +1 -0
  109. package/dist/{public/sdk/exportKeypairOperation-DzbjKbnk.js → esm/sdk/exportKeypairOperation-SJPysnE1.js} +1 -1
  110. package/dist/esm/sdk/{helpers-B9fpZNAP.js → helpers-D3CUEdHI.js} +1 -1
  111. package/dist/esm/sdk/{host-DfWylEiw.js → host-GPb_mSAQ.js} +1 -1
  112. package/dist/esm/sdk/{intentDigest-P_-CM7lS.js → intentDigest-CGLrsMgj.js} +1 -1
  113. package/dist/esm/sdk/{lanes-5kcTFbPx.js → lanes-DJKIHJBm.js} +1 -1
  114. package/dist/esm/sdk/{localOnly-C5mSXb_D.js → localOnly-CPmpw381.js} +1 -1
  115. package/dist/esm/sdk/mountExportPrivateKeySurface-C8_tpDHF.js +1 -0
  116. package/dist/esm/sdk/mountRecoveryCodeBackupSurface-BtNFtmSj.js +2 -0
  117. package/dist/esm/sdk/nearEd25519YaoMaterialActivation-J6EHFScV.js +1 -0
  118. package/dist/{public/sdk/nearEd25519YaoSigningPreparation-RIfkYN0d.js → esm/sdk/nearEd25519YaoSigningPreparation-CqBNMG87.js} +1 -1
  119. package/dist/esm/sdk/{nonceLaneKeys-BCYfl1wv.js → nonceLaneKeys-D18nlLjh.js} +1 -1
  120. package/dist/esm/sdk/{normalization-n503J-BI.js → normalization-Ct9-AY13.js} +1 -1
  121. package/dist/esm/sdk/{operationFingerprint-BHNYryLY.js → operationFingerprint-Boa9DQ51.js} +1 -1
  122. package/dist/esm/sdk/{passkey-custody-DpTM-eNJ.js → passkey-custody-CBSal3E9.js} +1 -1
  123. package/dist/esm/sdk/{pendingWalletRecoveryCodeBackup-C60sZMj5.js → pendingWalletRecoveryCodeBackup-CvsrXbzn.js} +1 -1
  124. package/dist/esm/sdk/presignaturePool-CQNt13kE.js +1 -0
  125. package/dist/esm/sdk/{primitives-CqrjmIAH.js → primitives-cC0a9GRC.js} +1 -1
  126. package/dist/{public/sdk/recovery-entrypoint-BULjaFBM.js → esm/sdk/recovery-entrypoint-nj7Zo3CR.js} +1 -1
  127. package/dist/esm/sdk/{registration-CyF7nOXs.js → registration-49OGU_GZ.js} +1 -1
  128. package/dist/esm/sdk/registration-C7tywPXF.js +1 -0
  129. package/dist/esm/sdk/{registrationAccounts-BQMUusdD.js → registrationAccounts-9GFI0Ger.js} +1 -1
  130. package/dist/esm/sdk/{registrationAuthMethodInput-RbSR7R1G.js → registrationAuthMethodInput-B23_HRil.js} +1 -1
  131. package/dist/esm/sdk/{registrationIds-BaK3jUS6.js → registrationIds-Br-zI4_5.js} +1 -1
  132. package/dist/{public/sdk/registrationIntent-090Zj7Iu.js → esm/sdk/registrationIntent-PqmcTEE3.js} +1 -1
  133. package/dist/{public/sdk/registrationSignerPlan-CPzHavPM.js → esm/sdk/registrationSignerPlan-BHkqlian.js} +1 -1
  134. package/dist/{public/sdk/requireStepUpAuth-BCY5ZStI.js → esm/sdk/requireStepUpAuth-C4PGTly-.js} +1 -1
  135. package/dist/esm/sdk/routerAbNormalSigning-xxATTIh5.js +1 -0
  136. package/dist/esm/sdk/runtime-auth-CpjGW90U.js +1 -0
  137. package/dist/esm/sdk/{runtime-device-link-fpvaxYyR.js → runtime-device-link-CKgfGi7D.js} +1 -1
  138. package/dist/esm/sdk/{runtime-ecdsa-tempo-AE5QTaXu.js → runtime-ecdsa-tempo-5VV9xSEh.js} +1 -1
  139. package/dist/esm/sdk/{runtime-email-otp-Dl03QI-O.js → runtime-email-otp-D1hYZNn6.js} +1 -1
  140. package/dist/esm/sdk/{runtime-export-F9s12UcT.js → runtime-export-B92wQD25.js} +1 -1
  141. package/dist/esm/sdk/{runtime-near-Bjrz1KYf.js → runtime-near-CUuKg38M.js} +1 -1
  142. package/dist/esm/sdk/runtime-preferences-EdL3G_MO.js +1 -0
  143. package/dist/esm/sdk/{runtime-recovery-codes-GOytzExh.js → runtime-recovery-codes-LR4mg7-k.js} +1 -1
  144. package/dist/esm/sdk/runtime-recovery-uyw8sywI.js +1 -0
  145. package/dist/esm/sdk/{sdkSentEvents-D4KtK7_I.js → sdkSentEvents-DujYAPEM.js} +1 -1
  146. package/dist/esm/sdk/secp256k1-BldUPNQI.js +1 -0
  147. package/dist/{public/sdk/sessionObservationRevision-CnEOLDbl.js → esm/sdk/sessionObservationRevision-DmmNV25w.js} +1 -1
  148. package/dist/esm/sdk/shared-ha31XIdc.js +6 -0
  149. package/dist/{public/sdk/signEvmFamily-Cpm3e6Zs.js → esm/sdk/signEvmFamily-C_RvEnDB.js} +1 -1
  150. package/dist/esm/sdk/signEvmFamilyWithUiConfirmForTempo-CUKdq5dE.js +1 -0
  151. package/dist/esm/sdk/{signEvmWithUiConfirm-BRmdLgmm.js → signEvmWithUiConfirm-CxXzcvj2.js} +1 -1
  152. package/dist/esm/sdk/signNear-Dno7NsP_.js +1 -0
  153. package/dist/esm/sdk/signatureUses-B_nN17i7.js +1 -0
  154. package/dist/esm/sdk/{signerDomain-Dp7BhfmZ.js → signerDomain-BFqRQ0Jl.js} +1 -1
  155. package/dist/{public/sdk/signingFlow-VAnM8L5C.js → esm/sdk/signingFlow-DtugI_2z.js} +2 -2
  156. package/dist/esm/sdk/{signingQueue-D_Ebmzcn.js → signingQueue-C1Pb07gm.js} +1 -1
  157. package/dist/{public/sdk/singletons-BXhnsqeY.js → esm/sdk/singletons-DxIyVhNb.js} +1 -1
  158. package/dist/esm/sdk/surface-measurement-reporter-BJhfiPw6.js +1 -0
  159. package/dist/{public/sdk/thresholdEcdsa-CneSKcRt.js → esm/sdk/thresholdEcdsa-murTq-xz.js} +1 -1
  160. package/dist/esm/sdk/{trace-BBux0jtr.js → trace-CsRMlSh1.js} +1 -1
  161. package/dist/{public/sdk/transaction-activity-Cccvec2J.js → esm/sdk/transaction-activity-C0nCSW6c.js} +1 -1
  162. package/dist/esm/sdk/transactionReviewAdmission-CNNho8IG.js +1 -0
  163. package/dist/{public/sdk/transactionState-Day-1x7Y.js → esm/sdk/transactionState-XbZm9Zon.js} +1 -1
  164. package/dist/esm/sdk/tx-confirm-ui.js +709 -744
  165. package/dist/esm/sdk/{types-hKLqDUhR.js → types-CQTWmtqu.js} +1 -1
  166. package/dist/esm/sdk/wallet-iframe-host-ecdsa.js +1 -1
  167. package/dist/esm/sdk/wallet-iframe-host-full.js +1 -1
  168. package/dist/esm/sdk/wallet-iframe-host-near.js +1 -1
  169. package/dist/esm/sdk/wallet-iframe-host-runtime.js +1 -1
  170. package/dist/{public/sdk/wallet-recovery-Bfhfk52N.js → esm/sdk/wallet-recovery-CVUalZ3p.js} +1 -1
  171. package/dist/esm/sdk/wallet-ui.css +1 -1
  172. package/dist/{public/sdk/walletAuthMethodRecord-LniOQQmj.js → esm/sdk/walletAuthMethodRecord-Bv68Vq-g.js} +1 -1
  173. package/dist/{public/sdk/walletAuthority-CAiGuWW2.js → esm/sdk/walletAuthority-v5wvv3IB.js} +1 -1
  174. package/dist/esm/sdk/walletCustodyEcdsaContinuity-rRHExT_R.js +1 -0
  175. package/dist/esm/sdk/{walletDbName-DtRewci9.js → walletDbName-DRzPv5Ir.js} +1 -1
  176. package/dist/esm/sdk/{walletOwnershipGeneration-B6HyR2rE.js → walletOwnershipGeneration-pMmmJ6XA.js} +1 -1
  177. package/dist/esm/sdk/{walletRecoveryCommit-C6HF84_U.js → walletRecoveryCommit-DvC6WlGz.js} +1 -1
  178. package/dist/esm/sdk/{walletRecoveryRotate-BN3H8byw.js → walletRecoveryRotate-Dd3prJpr.js} +1 -1
  179. package/dist/esm/sdk/walletRegistrationSetupPrewarm-DcbhVNMQ.js +1 -0
  180. package/dist/esm/sdk/walletSessionAuthorizationStatus-DVV3xkAx.js +1 -0
  181. package/dist/esm/sdk/walletSessionAuthorizationStore-D-MhJ0PC.js +1 -0
  182. package/dist/esm/sdk/walletSessionFailure-C6TAQTZn.js +1 -0
  183. package/dist/esm/sdk/webauthnP256-XgYu-Y6E.js +1 -0
  184. package/dist/esm/sdk/webauthnPromptCoordinator-D5sP8Q7e.js +1 -0
  185. package/dist/esm/shared-ts/src/authorization/delegatedAuthority.js +1 -1
  186. package/dist/esm/shared-ts/src/authorization/operationFingerprint.js +6 -0
  187. package/dist/esm/shared-ts/src/near/nearClient.js +6 -0
  188. package/dist/esm/shared-ts/src/threshold/participants.js +2 -1
  189. package/dist/esm/shared-ts/src/threshold/secp256k1.js +6 -0
  190. package/dist/esm/shared-ts/src/utils/domainIds.js +7 -0
  191. package/dist/esm/shared-ts/src/utils/index.js +1 -1
  192. package/dist/esm/shared-ts/src/utils/registrationSignerPlan.js +14 -1
  193. package/dist/esm/shared-ts/src/utils/routerAbEd25519Yao.js +5 -4
  194. package/dist/esm/utils/qrScanner.js +10 -8
  195. package/dist/public/headers.manifest.json +1 -1
  196. package/dist/public/sdk/ConfirmationDrawer-CXVNmfTy.js +1 -0
  197. package/dist/public/sdk/NonceCoordinator-DuDKN-B8.js +1 -0
  198. package/dist/{esm/sdk/accountLifecycle-CBOkr0vU.js → public/sdk/accountLifecycle-D61FIpFS.js} +1 -1
  199. package/dist/public/sdk/{activeWalletSession-WdZkhtBB.js → activeWalletSession-Ba6X4CUN.js} +1 -1
  200. package/dist/public/sdk/adapters-CTlDBRJy.js +2 -0
  201. package/dist/public/sdk/authorizationAdmission-Dd23mTx7.js +1 -0
  202. package/dist/public/sdk/{canonicalPrimitives-Dsbsxgxc.js → canonicalPrimitives-BOzRXzfv.js} +1 -1
  203. package/dist/public/sdk/{capabilityKinds-N8xo_IEh.js → capabilityKinds-D0Yrp9uf.js} +1 -1
  204. package/dist/public/sdk/{chains-C_X_fNuS.js → chains-CPmd4s9f.js} +1 -1
  205. package/dist/public/sdk/challengeDelivery-FD9GHK1T.js +1 -0
  206. package/dist/public/sdk/{clientSessionPersistenceState-CBylL1Ul.js → clientSessionPersistenceState-BHRUSWMt.js} +1 -1
  207. package/dist/public/sdk/{commitQueue-DYEgzoLA.js → commitQueue-DOIaR0Hr.js} +1 -1
  208. package/dist/public/sdk/{configHelpers-B-hs0mTO.js → configHelpers-BXdl5Mxs.js} +1 -1
  209. package/dist/public/sdk/{digestEncoding-BX3VW9eF.js → digestEncoding-CbEFYvlJ.js} +1 -1
  210. package/dist/public/sdk/{display-DsfJkAra.js → display-CY_aJEn6.js} +1 -1
  211. package/dist/public/sdk/domainIds-C3fUa33Q.js +1 -0
  212. package/dist/public/sdk/ecdsaCapabilityManifest-DzA996y9.js +1 -0
  213. package/dist/public/sdk/{ecdsaChainTarget-Bfatk3oP.js → ecdsaChainTarget-DkOrgv4y.js} +1 -1
  214. package/dist/public/sdk/ecdsaDerivationClientWasm-DQlajPpE.js +1 -0
  215. package/dist/{esm/sdk/ecdsaDerivationExport-DOGzq0qC.js → public/sdk/ecdsaDerivationExport-DyugdheE.js} +1 -1
  216. package/dist/public/sdk/{ecdsaWalletRecords-CHfrYvKr.js → ecdsaWalletRecords-C_v74n5X.js} +1 -1
  217. package/dist/{esm/sdk/emailOtpEcdsaDerivationIdentity-Bik0N8v9.js → public/sdk/emailOtpEcdsaDerivationIdentity-BDVjvnmO.js} +1 -1
  218. package/dist/public/sdk/{errors-DIWY1KR9.js → errors-ADOZT8oV.js} +1 -1
  219. package/dist/public/sdk/export-viewer-host-DsRaS0UH.js +1 -0
  220. package/dist/{esm/sdk/exportKeypairOperation-DzbjKbnk.js → public/sdk/exportKeypairOperation-SJPysnE1.js} +1 -1
  221. package/dist/public/sdk/{helpers-B9fpZNAP.js → helpers-D3CUEdHI.js} +1 -1
  222. package/dist/public/sdk/{host-DfWylEiw.js → host-GPb_mSAQ.js} +1 -1
  223. package/dist/public/sdk/{intentDigest-P_-CM7lS.js → intentDigest-CGLrsMgj.js} +1 -1
  224. package/dist/public/sdk/{lanes-5kcTFbPx.js → lanes-DJKIHJBm.js} +1 -1
  225. package/dist/public/sdk/{localOnly-C5mSXb_D.js → localOnly-CPmpw381.js} +1 -1
  226. package/dist/public/sdk/mountExportPrivateKeySurface-C8_tpDHF.js +1 -0
  227. package/dist/public/sdk/mountRecoveryCodeBackupSurface-BtNFtmSj.js +2 -0
  228. package/dist/public/sdk/nearEd25519YaoMaterialActivation-J6EHFScV.js +1 -0
  229. package/dist/{esm/sdk/nearEd25519YaoSigningPreparation-RIfkYN0d.js → public/sdk/nearEd25519YaoSigningPreparation-CqBNMG87.js} +1 -1
  230. package/dist/public/sdk/{nonceLaneKeys-BCYfl1wv.js → nonceLaneKeys-D18nlLjh.js} +1 -1
  231. package/dist/public/sdk/{normalization-n503J-BI.js → normalization-Ct9-AY13.js} +1 -1
  232. package/dist/public/sdk/{operationFingerprint-BHNYryLY.js → operationFingerprint-Boa9DQ51.js} +1 -1
  233. package/dist/public/sdk/{passkey-custody-DpTM-eNJ.js → passkey-custody-CBSal3E9.js} +1 -1
  234. package/dist/public/sdk/{pendingWalletRecoveryCodeBackup-C60sZMj5.js → pendingWalletRecoveryCodeBackup-CvsrXbzn.js} +1 -1
  235. package/dist/public/sdk/presignaturePool-CQNt13kE.js +1 -0
  236. package/dist/public/sdk/{primitives-CqrjmIAH.js → primitives-cC0a9GRC.js} +1 -1
  237. package/dist/{esm/sdk/recovery-entrypoint-BULjaFBM.js → public/sdk/recovery-entrypoint-nj7Zo3CR.js} +1 -1
  238. package/dist/public/sdk/{registration-CyF7nOXs.js → registration-49OGU_GZ.js} +1 -1
  239. package/dist/public/sdk/registration-C7tywPXF.js +1 -0
  240. package/dist/public/sdk/{registrationAccounts-BQMUusdD.js → registrationAccounts-9GFI0Ger.js} +1 -1
  241. package/dist/public/sdk/{registrationAuthMethodInput-RbSR7R1G.js → registrationAuthMethodInput-B23_HRil.js} +1 -1
  242. package/dist/public/sdk/{registrationIds-BaK3jUS6.js → registrationIds-Br-zI4_5.js} +1 -1
  243. package/dist/{esm/sdk/registrationIntent-090Zj7Iu.js → public/sdk/registrationIntent-PqmcTEE3.js} +1 -1
  244. package/dist/{esm/sdk/registrationSignerPlan-CPzHavPM.js → public/sdk/registrationSignerPlan-BHkqlian.js} +1 -1
  245. package/dist/{esm/sdk/requireStepUpAuth-BCY5ZStI.js → public/sdk/requireStepUpAuth-C4PGTly-.js} +1 -1
  246. package/dist/public/sdk/routerAbNormalSigning-xxATTIh5.js +1 -0
  247. package/dist/public/sdk/runtime-auth-CpjGW90U.js +1 -0
  248. package/dist/public/sdk/{runtime-device-link-fpvaxYyR.js → runtime-device-link-CKgfGi7D.js} +1 -1
  249. package/dist/public/sdk/{runtime-ecdsa-tempo-AE5QTaXu.js → runtime-ecdsa-tempo-5VV9xSEh.js} +1 -1
  250. package/dist/public/sdk/{runtime-email-otp-Dl03QI-O.js → runtime-email-otp-D1hYZNn6.js} +1 -1
  251. package/dist/public/sdk/{runtime-export-F9s12UcT.js → runtime-export-B92wQD25.js} +1 -1
  252. package/dist/public/sdk/{runtime-near-Bjrz1KYf.js → runtime-near-CUuKg38M.js} +1 -1
  253. package/dist/public/sdk/runtime-preferences-EdL3G_MO.js +1 -0
  254. package/dist/public/sdk/{runtime-recovery-codes-GOytzExh.js → runtime-recovery-codes-LR4mg7-k.js} +1 -1
  255. package/dist/public/sdk/runtime-recovery-uyw8sywI.js +1 -0
  256. package/dist/public/sdk/{sdkSentEvents-D4KtK7_I.js → sdkSentEvents-DujYAPEM.js} +1 -1
  257. package/dist/public/sdk/secp256k1-BldUPNQI.js +1 -0
  258. package/dist/{esm/sdk/sessionObservationRevision-CnEOLDbl.js → public/sdk/sessionObservationRevision-DmmNV25w.js} +1 -1
  259. package/dist/public/sdk/shared-ha31XIdc.js +6 -0
  260. package/dist/{esm/sdk/signEvmFamily-Cpm3e6Zs.js → public/sdk/signEvmFamily-C_RvEnDB.js} +1 -1
  261. package/dist/public/sdk/signEvmFamilyWithUiConfirmForTempo-CUKdq5dE.js +1 -0
  262. package/dist/public/sdk/{signEvmWithUiConfirm-BRmdLgmm.js → signEvmWithUiConfirm-CxXzcvj2.js} +1 -1
  263. package/dist/public/sdk/signNear-Dno7NsP_.js +1 -0
  264. package/dist/public/sdk/signatureUses-B_nN17i7.js +1 -0
  265. package/dist/public/sdk/{signerDomain-Dp7BhfmZ.js → signerDomain-BFqRQ0Jl.js} +1 -1
  266. package/dist/{esm/sdk/signingFlow-VAnM8L5C.js → public/sdk/signingFlow-DtugI_2z.js} +2 -2
  267. package/dist/public/sdk/{signingQueue-D_Ebmzcn.js → signingQueue-C1Pb07gm.js} +1 -1
  268. package/dist/{esm/sdk/singletons-BXhnsqeY.js → public/sdk/singletons-DxIyVhNb.js} +1 -1
  269. package/dist/public/sdk/surface-measurement-reporter-BJhfiPw6.js +1 -0
  270. package/dist/{esm/sdk/thresholdEcdsa-CneSKcRt.js → public/sdk/thresholdEcdsa-murTq-xz.js} +1 -1
  271. package/dist/public/sdk/{trace-BBux0jtr.js → trace-CsRMlSh1.js} +1 -1
  272. package/dist/{esm/sdk/transaction-activity-Cccvec2J.js → public/sdk/transaction-activity-C0nCSW6c.js} +1 -1
  273. package/dist/public/sdk/transactionReviewAdmission-CNNho8IG.js +1 -0
  274. package/dist/{esm/sdk/transactionState-Day-1x7Y.js → public/sdk/transactionState-XbZm9Zon.js} +1 -1
  275. package/dist/public/sdk/tx-confirm-ui.js +709 -744
  276. package/dist/public/sdk/{types-hKLqDUhR.js → types-CQTWmtqu.js} +1 -1
  277. package/dist/public/sdk/wallet-iframe-host-ecdsa.js +1 -1
  278. package/dist/public/sdk/wallet-iframe-host-full.js +1 -1
  279. package/dist/public/sdk/wallet-iframe-host-near.js +1 -1
  280. package/dist/public/sdk/wallet-iframe-host-runtime.js +1 -1
  281. package/dist/{esm/sdk/wallet-recovery-Bfhfk52N.js → public/sdk/wallet-recovery-CVUalZ3p.js} +1 -1
  282. package/dist/public/sdk/wallet-ui.css +1 -1
  283. package/dist/{esm/sdk/walletAuthMethodRecord-LniOQQmj.js → public/sdk/walletAuthMethodRecord-Bv68Vq-g.js} +1 -1
  284. package/dist/{esm/sdk/walletAuthority-CAiGuWW2.js → public/sdk/walletAuthority-v5wvv3IB.js} +1 -1
  285. package/dist/public/sdk/walletCustodyEcdsaContinuity-rRHExT_R.js +1 -0
  286. package/dist/public/sdk/{walletDbName-DtRewci9.js → walletDbName-DRzPv5Ir.js} +1 -1
  287. package/dist/public/sdk/{walletOwnershipGeneration-B6HyR2rE.js → walletOwnershipGeneration-pMmmJ6XA.js} +1 -1
  288. package/dist/public/sdk/{walletRecoveryCommit-C6HF84_U.js → walletRecoveryCommit-DvC6WlGz.js} +1 -1
  289. package/dist/public/sdk/{walletRecoveryRotate-BN3H8byw.js → walletRecoveryRotate-Dd3prJpr.js} +1 -1
  290. package/dist/public/sdk/walletRegistrationSetupPrewarm-DcbhVNMQ.js +1 -0
  291. package/dist/public/sdk/walletSessionAuthorizationStatus-DVV3xkAx.js +1 -0
  292. package/dist/public/sdk/walletSessionAuthorizationStore-D-MhJ0PC.js +1 -0
  293. package/dist/public/sdk/walletSessionFailure-C6TAQTZn.js +1 -0
  294. package/dist/public/sdk/webauthnP256-XgYu-Y6E.js +1 -0
  295. package/dist/public/sdk/webauthnPromptCoordinator-D5sP8Q7e.js +1 -0
  296. package/dist/public/sdk/workers/device-linking-key.worker.js +12 -11
  297. package/dist/public/sdk/workers/ecdsa-derivation-client.worker.js +146 -48
  298. package/dist/public/sdk/workers/ecdsa-online-client.worker.js +7 -6
  299. package/dist/public/sdk/workers/ecdsa-presign-client.worker.js +7 -6
  300. package/dist/public/sdk/workers/email-otp.worker.js +17 -3
  301. package/dist/public/sdk/workers/passkey-mpc-export.worker.js +10 -0
  302. package/dist/public/sdk/workers/passkey-mpc-session.worker.js +2 -1
  303. package/dist/public/wallet-assets.manifest.json +190 -190
  304. package/dist/public/wallet-service/index.html +4 -4
  305. package/dist/types/shared-ts/src/authorization/capabilityKinds.d.ts +14 -14
  306. package/dist/types/shared-ts/src/authorization/delegatedAuthority.d.ts +1 -1
  307. package/dist/types/shared-ts/src/device-linking/ed25519ExportRoot.d.ts +1 -1
  308. package/dist/types/shared-ts/src/device-linking/requestProof.d.ts +1 -1
  309. package/dist/types/shared-ts/src/device-linking/sourceContribution.d.ts +5 -5
  310. package/dist/types/shared-ts/src/passkey-custody/custodyEnvelope.d.ts +3 -3
  311. package/dist/types/shared-ts/src/passkey-custody/custodySecretBinding.d.ts +1 -1
  312. package/dist/types/shared-ts/src/tenant-root/tenantRootIdentity.d.ts +1 -1
  313. package/dist/types/shared-ts/src/tenant-root/tenantRootOperationRecord.d.ts +2 -2
  314. package/dist/types/shared-ts/src/utils/base64.d.ts +2 -2
  315. package/dist/types/shared-ts/src/utils/digestEncoding.d.ts +1 -1
  316. package/dist/types/shared-ts/src/utils/digests.d.ts +2 -2
  317. package/dist/types/shared-ts/src/utils/emailOtpDomain.d.ts +16 -16
  318. package/dist/types/shared-ts/src/utils/emailOtpRecoveryKey.d.ts +1 -1
  319. package/dist/types/shared-ts/src/utils/routerAbEcdsaDerivation.d.ts +10 -10
  320. package/dist/types/shared-ts/src/utils/routerAbEd25519Yao.d.ts +12 -11
  321. package/dist/types/shared-ts/src/utils/routerAbPublicKeyset.d.ts +3 -3
  322. package/dist/types/shared-ts/src/utils/routerAbTraceContext.d.ts +1 -1
  323. package/dist/types/shared-ts/src/utils/signerDomain.d.ts +15 -15
  324. package/dist/types/shared-ts/src/utils/signingSessionSeal.d.ts +11 -11
  325. package/dist/types/shared-ts/src/utils/walletSessionFailure.d.ts +8 -8
  326. package/dist/types/shared-ts/src/utils/webauthnDeviceInfo.d.ts +2 -2
  327. package/dist/types/shared-ts/src/utils/wireSchema.d.ts +1 -1
  328. package/dist/types/shared-ts/src/wallet-recovery/recoveryKeyId.d.ts +1 -1
  329. package/dist/types/wallet/build-paths.d.ts +73 -73
  330. package/dist/types/wallet/src/SeamsWeb/operations/authMethods/emailOtp/googleEmailOtpWalletAuthFlow.d.ts +3 -2
  331. package/dist/types/wallet/src/SeamsWeb/operations/devices/deviceLinkingResume.d.ts +2 -2
  332. package/dist/types/wallet/src/SeamsWeb/operations/devices/linkDeviceTargetActivation.d.ts +1 -1
  333. package/dist/types/wallet/src/SeamsWeb/operations/registration/pendingRegistrationRecovery.d.ts +3 -3
  334. package/dist/types/wallet/src/SeamsWeb/operations/registration/registrationEd25519Yao.d.ts +4 -3
  335. package/dist/types/wallet/src/SeamsWeb/operations/registration/registrationSignerSet.d.ts +5 -0
  336. package/dist/types/wallet/src/SeamsWeb/operations/registration/registrationTiming.d.ts +2 -2
  337. package/dist/types/wallet/src/SeamsWeb/publicApi/createPublicApi.d.ts +10 -1
  338. package/dist/types/wallet/src/SeamsWeb/publicApi/types.d.ts +4 -2
  339. package/dist/types/wallet/src/SeamsWeb/signingSurface/BrowserSigningSurface.d.ts +1 -0
  340. package/dist/types/wallet/src/SeamsWeb/signingSurface/ports.d.ts +1 -0
  341. package/dist/types/wallet/src/SeamsWeb/walletIframe/client/router.d.ts +2 -1
  342. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/auth-menu/domain.d.ts +4 -4
  343. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/createEmailOtpCommands.d.ts +3 -2
  344. package/dist/types/wallet/src/SeamsWeb/walletIframe/shared/messages.d.ts +3 -3
  345. package/dist/types/wallet/src/config.d.ts +8 -8
  346. package/dist/types/wallet/src/core/browser/walletIframe/events.d.ts +1 -1
  347. package/dist/types/wallet/src/core/indexedDB/linkedAuthoritySignerMaterial.d.ts +3 -3
  348. package/dist/types/wallet/src/core/indexedDB/pendingWalletRecoveryCommit.d.ts +1 -1
  349. package/dist/types/wallet/src/core/indexedDB/schemaNames.d.ts +181 -181
  350. package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/ecdsaCapabilityManifestRecords.d.ts +8 -8
  351. package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/ecdsaClientPresignatures.d.ts +4 -4
  352. package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/walletSessionAuthorizationStore.d.ts +1 -1
  353. package/dist/types/wallet/src/core/indexedDB/walletCustodyEd25519MaterialRecord.d.ts +2 -2
  354. package/dist/types/wallet/src/core/indexedDB/walletDbName.d.ts +1 -1
  355. package/dist/types/wallet/src/core/signingEngine/chains/evm/evmAdapter.d.ts +1 -1
  356. package/dist/types/wallet/src/core/signingEngine/chains/evm/evmSigning.types.d.ts +1 -0
  357. package/dist/types/wallet/src/core/signingEngine/chains/tempo/tempoAdapter.d.ts +1 -1
  358. package/dist/types/wallet/src/core/signingEngine/flows/shared/signingStateMachine.d.ts +27 -27
  359. package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/signers/secp256k1.d.ts +1 -1
  360. package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/signers/webauthnP256.d.ts +1 -1
  361. package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/signingFlowRuntime.d.ts +17 -17
  362. package/dist/types/wallet/src/core/signingEngine/nonce/nonceTypes.d.ts +40 -40
  363. package/dist/types/wallet/src/core/signingEngine/session/material/walletSigningStateFailure.d.ts +4 -4
  364. package/dist/types/wallet/src/core/signingEngine/session/operationState/types.d.ts +8 -8
  365. package/dist/types/wallet/src/core/signingEngine/session/passkey/ed25519YaoLocalMaterial.d.ts +1 -1
  366. package/dist/types/wallet/src/core/signingEngine/session/persistence/sealedSessionRecords.d.ts +1 -1
  367. package/dist/types/wallet/src/core/signingEngine/stepUpConfirmation/channel/confirmCommon.d.ts +3 -3
  368. package/dist/types/wallet/src/core/signingEngine/stepUpConfirmation/types.d.ts +4 -4
  369. package/dist/types/wallet/src/core/signingEngine/threshold/ed25519/yaoClient.d.ts +1 -1
  370. package/dist/types/wallet/src/core/signingEngine/threshold/sessionPolicy.d.ts +1 -1
  371. package/dist/types/wallet/src/core/signingEngine/uiConfirm/handlers/flows/adapters/adapters.d.ts +1 -1
  372. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/ConfirmHeader.d.ts +2 -2
  373. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/CopyStatusIcon.d.ts +1 -1
  374. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/PadlockIcon.d.ts +1 -1
  375. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/PasskeyHaloLoading.d.ts +1 -1
  376. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/PasskeyRegistrationDetails.d.ts +1 -1
  377. package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/SeamsWordmark.d.ts +1 -1
  378. package/dist/types/wallet/src/core/signingEngine/webauthnAuth/credentials/helpers.d.ts +2 -2
  379. package/dist/types/wallet/src/core/signingEngine/workerManager/SignerWorkerManager.d.ts +1 -0
  380. package/dist/types/wallet/src/core/signingEngine/workerManager/deviceLinkingPorts.d.ts +1 -1
  381. package/dist/types/wallet/src/core/signingEngine/workerManager/ecdsaClientWorkerChannels.d.ts +3 -3
  382. package/dist/types/wallet/src/core/signingEngine/workerManager/ecdsaPresignPoolIdentity.d.ts +1 -1
  383. package/dist/types/wallet/src/core/signingEngine/workerManager/validation.d.ts +1 -1
  384. package/dist/types/wallet/src/core/signingEngine/workerManager/workerTransport.d.ts +1 -0
  385. package/dist/types/wallet/src/core/signingEngine/workerManager/workerTypes.d.ts +1 -1
  386. package/dist/types/wallet/src/core/signingEngine/workerManager/workers/device-linking-key/ecdsaTargetShareHpke.d.ts +3 -3
  387. package/dist/types/wallet/src/core/signingEngine/workerManager/workers/device-linking-key/ordinaryMaterialState.d.ts +1 -1
  388. package/dist/types/wallet/src/core/signingEngine/workerManager/workers/email-otp/crypto.d.ts +3 -3
  389. package/dist/types/wallet/src/core/signingEngine/workerManager/workers/email-otp/materialParsing.d.ts +1 -1
  390. package/dist/types/wallet/src/core/signingEngine/workerManager/workers/email-otp/payloadParsing.d.ts +2 -2
  391. package/dist/types/wallet/src/core/signingEngine/workerManager/workers/email-otp/unlock.d.ts +1 -1
  392. package/dist/types/wallet/src/core/signingEngine/workerManager/workers/workerErrorPayload.d.ts +2 -2
  393. package/dist/types/wallet/src/core/types/actionBuilders.d.ts +16 -2
  394. package/dist/types/wallet/src/core/types/amounts.d.ts +75 -0
  395. package/dist/types/wallet/src/core/types/amounts.typecheck.d.ts +2 -0
  396. package/dist/types/wallet/src/core/types/sdkSentEvents.d.ts +5 -5
  397. package/dist/types/wallet/src/core/types/secure-confirm-worker.d.ts +1 -1
  398. package/dist/types/wallet/src/core/types/signer-worker.d.ts +7 -7
  399. package/dist/types/wallet/src/externalEvm/types.d.ts +1 -0
  400. package/dist/types/wallet/src/index.d.ts +2 -0
  401. package/dist/types/wallet/src/react/{hooks/useWallet.d.ts → boundWallet.d.ts} +8 -48
  402. package/dist/types/wallet/src/react/components/AccountMenuButton/AccountMenuButtonView.d.ts +0 -1
  403. package/dist/types/wallet/src/react/components/AccountMenuButton/AccountsSection.d.ts +0 -1
  404. package/dist/types/wallet/src/react/components/AccountMenuButton/AuthenticationMethodsModal.d.ts +0 -1
  405. package/dist/types/wallet/src/react/components/AccountMenuButton/ExportKeysSection.d.ts +0 -1
  406. package/dist/types/wallet/src/react/components/AccountMenuButton/LinkedDevicesModal.d.ts +0 -1
  407. package/dist/types/wallet/src/react/components/AccountMenuButton/ProfileDropdown.d.ts +0 -1
  408. package/dist/types/wallet/src/react/components/AccountMenuButton/WalletSettingsLayout.d.ts +0 -1
  409. package/dist/types/wallet/src/react/components/AccountMenuButton/icons/GlobeIcon.d.ts +1 -1
  410. package/dist/types/wallet/src/react/components/AccountMenuButton/icons/HoverArrowIcon.d.ts +0 -1
  411. package/dist/types/wallet/src/react/components/AccountMenuButton/icons/KeyIcon.d.ts +1 -1
  412. package/dist/types/wallet/src/react/components/AccountMenuButton/icons/LaptopIcon.d.ts +1 -1
  413. package/dist/types/wallet/src/react/components/AccountMenuButton/icons/LinkIcon.d.ts +1 -1
  414. package/dist/types/wallet/src/react/components/AccountMenuButton/icons/LockIcon.d.ts +1 -1
  415. package/dist/types/wallet/src/react/components/AccountMenuButton/icons/LockKeyholeIcon.d.ts +1 -1
  416. package/dist/types/wallet/src/react/components/AccountMenuButton/icons/MailIcon.d.ts +1 -1
  417. package/dist/types/wallet/src/react/components/AccountMenuButton/icons/PlusIcon.d.ts +1 -1
  418. package/dist/types/wallet/src/react/components/AccountMenuButton/icons/RecoveryCodesIcon.d.ts +1 -1
  419. package/dist/types/wallet/src/react/components/AccountMenuButton/icons/ScanIcon.d.ts +1 -1
  420. package/dist/types/wallet/src/react/components/AccountMenuButton/icons/SlidersIcon.d.ts +1 -1
  421. package/dist/types/wallet/src/react/components/AccountMenuButton/icons/SmartphoneIcon.d.ts +1 -1
  422. package/dist/types/wallet/src/react/components/AccountMenuButton/icons/TouchIcon.d.ts +0 -1
  423. package/dist/types/wallet/src/react/components/AccountMenuButton/index.d.ts +0 -1
  424. package/dist/types/wallet/src/react/components/AccountMenuButton/types.d.ts +8 -8
  425. package/dist/types/wallet/src/react/components/ShowQRCode.d.ts +0 -1
  426. package/dist/types/wallet/src/react/components/VoiceAssistantCard.d.ts +0 -1
  427. package/dist/types/wallet/src/react/components/theme/design-tokens.d.ts +1 -0
  428. package/dist/types/wallet/src/react/context/index.d.ts +2 -1
  429. package/dist/types/wallet/src/react/context/useSeamsContextValue.d.ts +2 -2
  430. package/dist/types/wallet/src/react/index.d.ts +3 -2
  431. package/dist/types/wallet/src/react/styles.d.ts +2 -0
  432. package/dist/types/wallet/src/react/transactionReview/boundCalls.d.ts +57 -57
  433. package/dist/types/wallet/src/react/types.d.ts +14 -1
  434. package/dist/types/wallet/src/theme/base-styles.d.ts +4 -4
  435. package/dist/workers/device-linking-key.worker.js +12 -11
  436. package/dist/workers/ecdsa-derivation-client.worker.js +146 -48
  437. package/dist/workers/ecdsa-online-client.worker.js +7 -6
  438. package/dist/workers/ecdsa-presign-client.worker.js +7 -6
  439. package/dist/workers/email-otp.worker.js +17 -3
  440. package/dist/workers/passkey-mpc-export.worker.js +10 -0
  441. package/dist/workers/passkey-mpc-session.worker.js +2 -1
  442. package/package.json +8 -6
  443. package/dist/esm/react/hooks/useWallet.js +0 -108
  444. package/dist/esm/sdk/ConfirmationDrawer-BFzQjd1P.js +0 -1
  445. package/dist/esm/sdk/NonceCoordinator-CDGnEgfI.js +0 -1
  446. package/dist/esm/sdk/adapters-DsAaBNNY.js +0 -2
  447. package/dist/esm/sdk/authorizationAdmission-CGinGhXH.js +0 -1
  448. package/dist/esm/sdk/challengeDelivery-CATQ4u6P.js +0 -1
  449. package/dist/esm/sdk/domainIds-BzkGsRqO.js +0 -1
  450. package/dist/esm/sdk/ecdsaCapabilityManifest-DX6TflEz.js +0 -1
  451. package/dist/esm/sdk/ecdsaDerivationClientWasm-CpjnN4aK.js +0 -1
  452. package/dist/esm/sdk/export-viewer-host-CV-lSsQF.js +0 -1
  453. package/dist/esm/sdk/mountExportPrivateKeySurface-CatAhYoG.js +0 -1
  454. package/dist/esm/sdk/mountRecoveryCodeBackupSurface-DlEb3uD7.js +0 -2
  455. package/dist/esm/sdk/nearEd25519YaoMaterialActivation-Bo3IOTS-.js +0 -1
  456. package/dist/esm/sdk/presignaturePool-V10fZpG3.js +0 -1
  457. package/dist/esm/sdk/registration-yoF0o52H.js +0 -1
  458. package/dist/esm/sdk/routerAbNormalSigning-C4P2tDU-.js +0 -1
  459. package/dist/esm/sdk/runtime-auth--i_j8PP7.js +0 -1
  460. package/dist/esm/sdk/runtime-preferences-oLRSEqmz.js +0 -1
  461. package/dist/esm/sdk/runtime-recovery-DBBKvIIg.js +0 -1
  462. package/dist/esm/sdk/secp256k1-CKq7_HD-.js +0 -1
  463. package/dist/esm/sdk/shared-D893jckQ.js +0 -6
  464. package/dist/esm/sdk/signEvmFamilyWithUiConfirmForTempo-DGWmm9n7.js +0 -1
  465. package/dist/esm/sdk/signNear-XGZBxc_g.js +0 -1
  466. package/dist/esm/sdk/signatureUses-BKAoDbQd.js +0 -1
  467. package/dist/esm/sdk/surface-measurement-reporter-DvVHPu_O.js +0 -1
  468. package/dist/esm/sdk/transactionReviewAdmission-CIvR4W5_.js +0 -1
  469. package/dist/esm/sdk/walletCustodyEcdsaContinuity-B4fTDL10.js +0 -1
  470. package/dist/esm/sdk/walletRegistrationSetupPrewarm-B9kpnrbK.js +0 -1
  471. package/dist/esm/sdk/walletSessionAuthorizationStatus-BL7j2TeM.js +0 -1
  472. package/dist/esm/sdk/walletSessionAuthorizationStore-DmYe-cDR.js +0 -1
  473. package/dist/esm/sdk/walletSessionFailure-YuhraC3P.js +0 -1
  474. package/dist/esm/sdk/webauthnP256-BwgxtG5N.js +0 -1
  475. package/dist/esm/sdk/webauthnPromptCoordinator-CwJeKiYq.js +0 -1
  476. package/dist/public/sdk/ConfirmationDrawer-BFzQjd1P.js +0 -1
  477. package/dist/public/sdk/NonceCoordinator-CDGnEgfI.js +0 -1
  478. package/dist/public/sdk/adapters-DsAaBNNY.js +0 -2
  479. package/dist/public/sdk/authorizationAdmission-CGinGhXH.js +0 -1
  480. package/dist/public/sdk/challengeDelivery-CATQ4u6P.js +0 -1
  481. package/dist/public/sdk/domainIds-BzkGsRqO.js +0 -1
  482. package/dist/public/sdk/ecdsaCapabilityManifest-DX6TflEz.js +0 -1
  483. package/dist/public/sdk/ecdsaDerivationClientWasm-CpjnN4aK.js +0 -1
  484. package/dist/public/sdk/export-viewer-host-CV-lSsQF.js +0 -1
  485. package/dist/public/sdk/mountExportPrivateKeySurface-CatAhYoG.js +0 -1
  486. package/dist/public/sdk/mountRecoveryCodeBackupSurface-DlEb3uD7.js +0 -2
  487. package/dist/public/sdk/nearEd25519YaoMaterialActivation-Bo3IOTS-.js +0 -1
  488. package/dist/public/sdk/presignaturePool-V10fZpG3.js +0 -1
  489. package/dist/public/sdk/registration-yoF0o52H.js +0 -1
  490. package/dist/public/sdk/routerAbNormalSigning-C4P2tDU-.js +0 -1
  491. package/dist/public/sdk/runtime-auth--i_j8PP7.js +0 -1
  492. package/dist/public/sdk/runtime-preferences-oLRSEqmz.js +0 -1
  493. package/dist/public/sdk/runtime-recovery-DBBKvIIg.js +0 -1
  494. package/dist/public/sdk/secp256k1-CKq7_HD-.js +0 -1
  495. package/dist/public/sdk/shared-D893jckQ.js +0 -6
  496. package/dist/public/sdk/signEvmFamilyWithUiConfirmForTempo-DGWmm9n7.js +0 -1
  497. package/dist/public/sdk/signNear-XGZBxc_g.js +0 -1
  498. package/dist/public/sdk/signatureUses-BKAoDbQd.js +0 -1
  499. package/dist/public/sdk/surface-measurement-reporter-DvVHPu_O.js +0 -1
  500. package/dist/public/sdk/transactionReviewAdmission-CIvR4W5_.js +0 -1
  501. package/dist/public/sdk/walletCustodyEcdsaContinuity-B4fTDL10.js +0 -1
  502. package/dist/public/sdk/walletRegistrationSetupPrewarm-B9kpnrbK.js +0 -1
  503. package/dist/public/sdk/walletSessionAuthorizationStatus-BL7j2TeM.js +0 -1
  504. package/dist/public/sdk/walletSessionAuthorizationStore-DmYe-cDR.js +0 -1
  505. package/dist/public/sdk/walletSessionFailure-YuhraC3P.js +0 -1
  506. package/dist/public/sdk/webauthnP256-BwgxtG5N.js +0 -1
  507. package/dist/public/sdk/webauthnPromptCoordinator-CwJeKiYq.js +0 -1
@@ -427,11 +427,11 @@ function walletIframeSurfaceBusyError(detail) {
427
427
  return error;
428
428
  }
429
429
  var WalletIframeConnectionClosedRequestError = class extends Error {
430
+ code = "connection_closed";
430
431
  constructor(requestId, connectionId, requestType) {
431
432
  super(`Wallet iframe connection closed while handling ${requestType}`);
432
433
  this.requestId = requestId;
433
434
  this.connectionId = connectionId;
434
- this.code = "connection_closed";
435
435
  this.name = "WalletIframeConnectionClosedRequestError";
436
436
  }
437
437
  };
@@ -528,114 +528,72 @@ function assertNeverSdkLifecycleEventName(value) {
528
528
  throw new Error(`Unsupported SDK lifecycle event: ${String(value)}`);
529
529
  }
530
530
  var WalletIframeRouter = class {
531
+ placement = createIframePlacementCommands(this.post.bind(this));
532
+ walletSessionReads = /* @__PURE__ */ new Map();
533
+ opts;
534
+ transport;
535
+ state = {
536
+ port: null,
537
+ connectionId: null,
538
+ ready: false,
539
+ configured: false,
540
+ configurationInFlight: null,
541
+ initInFlight: null,
542
+ hostedWalletSessionInFlight: null,
543
+ hostedWalletSessionExpiresAtMs: 0,
544
+ hostedWalletSessionSource: null,
545
+ pending: /* @__PURE__ */ new Map(),
546
+ reqCounter: 0
547
+ };
548
+ listeners = {
549
+ connectionClosed: /* @__PURE__ */ new Set(),
550
+ sessionChanged: /* @__PURE__ */ new Set(),
551
+ preferencesChanged: /* @__PURE__ */ new Set(),
552
+ hostedAuthMenuExternalAuthRequest: /* @__PURE__ */ new Set(),
553
+ sdkLifecycleEvent: /* @__PURE__ */ new Set()
554
+ };
555
+ expiredSigningSessionsByWallet = /* @__PURE__ */ new Map();
556
+ exactSessionState = null;
557
+ sessionSelectionGeneration = 0;
558
+ sessionObservationRevision = -1;
559
+ walletRuntimePreparedConnectionId = null;
560
+ lastPreferencesChangedPayload = null;
561
+ mirroredConfirmationUiMode = null;
562
+ progressBus;
563
+ debug = false;
564
+ walletOriginUrl;
565
+ walletOriginOrigin;
566
+ overlayState;
567
+ walletIframeSurface = hiddenWalletIframeSurface();
568
+ transactionReceipt = null;
569
+ surfaceRenderer;
570
+ activeSurfaceMeasurement = null;
571
+ activeSurfaceMeasurementUnavailable = false;
572
+ surfaceGeneration = 0;
573
+ activeSurfaceMeasurementGeneration = 0;
574
+ surfaceViewportListenersAttached = false;
575
+ surfaceLayoutObserver = null;
576
+ measurementFallbackTimer = null;
577
+ measurementFallbackGeneration = 0;
578
+ disposed = false;
579
+ reviews = /* @__PURE__ */ new Map();
580
+ reviewCancellationTimers = /* @__PURE__ */ new Map();
581
+ reviewIdentityGeneration = 0;
582
+ reviewWaiters = /* @__PURE__ */ new Map();
583
+ reviewSessionDeadline = null;
584
+ reviewGeneration = 0;
585
+ reviewResizeObserver = null;
586
+ reviewSurfaceMeasurement;
587
+ reviewMutationObserver = null;
588
+ transactionSurfaceQueue = new WalletIframeTransactionSurfaceQueue();
589
+ hostedAuthMenuRequestIds = /* @__PURE__ */ new Map();
590
+ hostedAuthMenuConnectionIds = /* @__PURE__ */ new Map();
591
+ hostedAuthMenuAnchors = /* @__PURE__ */ new Map();
592
+ hostedAuthMenuAnchorTrackingFrame = null;
593
+ hostedAuthMenuAnchorTrackingSession = null;
594
+ hostedAuthMenuAnchorTrackingDeadlineMs = 0;
595
+ cancelledHostedAuthMenuSessions = /* @__PURE__ */ new Set();
531
596
  constructor(options) {
532
- this.placement = createIframePlacementCommands(this.post.bind(this));
533
- this.walletSessionReads = /* @__PURE__ */ new Map();
534
- this.state = {
535
- port: null,
536
- connectionId: null,
537
- ready: false,
538
- configured: false,
539
- configurationInFlight: null,
540
- initInFlight: null,
541
- hostedWalletSessionInFlight: null,
542
- hostedWalletSessionExpiresAtMs: 0,
543
- hostedWalletSessionSource: null,
544
- pending: /* @__PURE__ */ new Map(),
545
- reqCounter: 0
546
- };
547
- this.listeners = {
548
- connectionClosed: /* @__PURE__ */ new Set(),
549
- sessionChanged: /* @__PURE__ */ new Set(),
550
- preferencesChanged: /* @__PURE__ */ new Set(),
551
- hostedAuthMenuExternalAuthRequest: /* @__PURE__ */ new Set(),
552
- sdkLifecycleEvent: /* @__PURE__ */ new Set()
553
- };
554
- this.expiredSigningSessionsByWallet = /* @__PURE__ */ new Map();
555
- this.exactSessionState = null;
556
- this.sessionSelectionGeneration = 0;
557
- this.sessionObservationRevision = -1;
558
- this.walletRuntimePreparedConnectionId = null;
559
- this.lastPreferencesChangedPayload = null;
560
- this.mirroredConfirmationUiMode = null;
561
- this.debug = false;
562
- this.walletIframeSurface = hiddenWalletIframeSurface();
563
- this.transactionReceipt = null;
564
- this.activeSurfaceMeasurement = null;
565
- this.activeSurfaceMeasurementUnavailable = false;
566
- this.surfaceGeneration = 0;
567
- this.activeSurfaceMeasurementGeneration = 0;
568
- this.surfaceViewportListenersAttached = false;
569
- this.surfaceLayoutObserver = null;
570
- this.measurementFallbackTimer = null;
571
- this.measurementFallbackGeneration = 0;
572
- this.disposed = false;
573
- this.reviews = /* @__PURE__ */ new Map();
574
- this.reviewCancellationTimers = /* @__PURE__ */ new Map();
575
- this.reviewIdentityGeneration = 0;
576
- this.reviewWaiters = /* @__PURE__ */ new Map();
577
- this.reviewSessionDeadline = null;
578
- this.reviewGeneration = 0;
579
- this.reviewResizeObserver = null;
580
- this.reviewMutationObserver = null;
581
- this.transactionSurfaceQueue = new WalletIframeTransactionSurfaceQueue();
582
- this.hostedAuthMenuRequestIds = /* @__PURE__ */ new Map();
583
- this.hostedAuthMenuConnectionIds = /* @__PURE__ */ new Map();
584
- this.hostedAuthMenuAnchors = /* @__PURE__ */ new Map();
585
- this.hostedAuthMenuAnchorTrackingFrame = null;
586
- this.hostedAuthMenuAnchorTrackingSession = null;
587
- this.hostedAuthMenuAnchorTrackingDeadlineMs = 0;
588
- this.cancelledHostedAuthMenuSessions = /* @__PURE__ */ new Set();
589
- this.refreshReviewGeometry = () => {
590
- const surface = this.walletIframeSurface;
591
- if (surface.kind !== "modal_transaction_review") return;
592
- const slot = this.reviews.get(surface.identity.requestId)?.reservation.slot;
593
- if (slot?.firstElementChild) this.reviewResizeObserver?.observe(slot.firstElementChild);
594
- this.renderActiveWalletIframeSurface();
595
- };
596
- this.handleSurfaceViewportChange = () => {
597
- if (this.walletIframeSurface.kind === "hidden") return;
598
- this.renderActiveWalletIframeSurface();
599
- };
600
- this.handleMeasurementFallbackTimeout = () => {
601
- this.measurementFallbackTimer = null;
602
- this.markMeasurementUnavailable(this.measurementFallbackGeneration);
603
- };
604
- this.handleOverlayDismiss = (event) => {
605
- const surface = this.walletIframeSurface;
606
- if (surface.kind === "hidden") return;
607
- if (surface.identity.surfaceId !== event.identity.surfaceId || surface.identity.requestId !== event.identity.requestId) return;
608
- if (surface.kind === "modal_auth_menu") {
609
- if (surface.authMenuSessionId !== event.authMenuSessionId) return;
610
- this.cancelHostedAuthMenuWithReason(surface.authMenuSessionId, "close_button");
611
- return;
612
- }
613
- if (event.authMenuSessionId !== void 0) return;
614
- if (this.transactionReceipt?.requestId === surface.identity.requestId) {
615
- this.state.port?.postMessage({
616
- type: "PM_SET_TRANSACTION_VIEW",
617
- payload: {
618
- requestId: surface.identity.requestId,
619
- view: "toast"
620
- }
621
- });
622
- return;
623
- }
624
- this.cancelRequest(surface.identity.requestId);
625
- };
626
- this.handleTransportConnectionClosed = () => {
627
- const connectionId = this.state.connectionId;
628
- if (connectionId) this.handleConnectionClosed(connectionId);
629
- };
630
- this.updateHostedAuthMenuAnchorPosition = (timestampMs) => {
631
- this.hostedAuthMenuAnchorTrackingFrame = null;
632
- const authMenuSessionId = this.hostedAuthMenuAnchorTrackingSession;
633
- if (!authMenuSessionId) return;
634
- const surface = this.walletIframeSurface;
635
- if (surface.kind === "modal_auth_menu" && surface.authMenuSessionId === authMenuSessionId) this.renderActiveWalletIframeSurface();
636
- if (timestampMs >= this.hostedAuthMenuAnchorTrackingDeadlineMs) return;
637
- this.hostedAuthMenuAnchorTrackingFrame = requestAnimationFrame(this.updateHostedAuthMenuAnchorPosition);
638
- };
639
597
  if (!options?.walletOrigin) throw new Error("[WalletIframeRouter] walletOrigin is required when using the wallet iframe");
640
598
  let parsedOrigin;
641
599
  try {
@@ -793,6 +751,13 @@ var WalletIframeRouter = class {
793
751
  assertReviewIdentity(connectionId, generation) {
794
752
  if (this.state.connectionId !== connectionId || generation !== this.reviewIdentityGeneration || this.disposed) throw new TransactionReviewError("review_identity_changed", "The wallet connection or signing session changed");
795
753
  }
754
+ refreshReviewGeometry = () => {
755
+ const surface = this.walletIframeSurface;
756
+ if (surface.kind !== "modal_transaction_review") return;
757
+ const slot = this.reviews.get(surface.identity.requestId)?.reservation.slot;
758
+ if (slot?.firstElementChild) this.reviewResizeObserver?.observe(slot.firstElementChild);
759
+ this.renderActiveWalletIframeSurface();
760
+ };
796
761
  finishReviewReservation(requestId) {
797
762
  this.reviews.delete(requestId);
798
763
  this.clearReviewCancellationTimer(requestId);
@@ -935,12 +900,20 @@ var WalletIframeRouter = class {
935
900
  this.surfaceViewportListenersAttached = false;
936
901
  this.cancelMeasurementFallback();
937
902
  }
903
+ handleSurfaceViewportChange = () => {
904
+ if (this.walletIframeSurface.kind === "hidden") return;
905
+ this.renderActiveWalletIframeSurface();
906
+ };
938
907
  scheduleMeasurementFallback(generation) {
939
908
  this.cancelMeasurementFallback();
940
909
  if (this.walletIframeSurface.kind === "hidden") return;
941
910
  this.measurementFallbackGeneration = generation;
942
911
  this.measurementFallbackTimer = window.setTimeout(this.handleMeasurementFallbackTimeout, WALLET_IFRAME_SURFACE_MEASUREMENT_FALLBACK_TIMEOUT_MS);
943
912
  }
913
+ handleMeasurementFallbackTimeout = () => {
914
+ this.measurementFallbackTimer = null;
915
+ this.markMeasurementUnavailable(this.measurementFallbackGeneration);
916
+ };
944
917
  /**
945
918
  * A request that is still reporting progress has not stalled, so its surface
946
919
  * must not be declared unmeasurable while it works toward mounting.
@@ -964,6 +937,32 @@ var WalletIframeRouter = class {
964
937
  this.measurementFallbackTimer = null;
965
938
  }
966
939
  }
940
+ handleOverlayDismiss = (event) => {
941
+ const surface = this.walletIframeSurface;
942
+ if (surface.kind === "hidden") return;
943
+ if (surface.identity.surfaceId !== event.identity.surfaceId || surface.identity.requestId !== event.identity.requestId) return;
944
+ if (surface.kind === "modal_auth_menu") {
945
+ if (surface.authMenuSessionId !== event.authMenuSessionId) return;
946
+ this.cancelHostedAuthMenuWithReason(surface.authMenuSessionId, "close_button");
947
+ return;
948
+ }
949
+ if (event.authMenuSessionId !== void 0) return;
950
+ if (this.transactionReceipt?.requestId === surface.identity.requestId) {
951
+ this.state.port?.postMessage({
952
+ type: "PM_SET_TRANSACTION_VIEW",
953
+ payload: {
954
+ requestId: surface.identity.requestId,
955
+ view: "toast"
956
+ }
957
+ });
958
+ return;
959
+ }
960
+ this.cancelRequest(surface.identity.requestId);
961
+ };
962
+ handleTransportConnectionClosed = () => {
963
+ const connectionId = this.state.connectionId;
964
+ if (connectionId) this.handleConnectionClosed(connectionId);
965
+ };
967
966
  surfaceIdentityEqual(left, right) {
968
967
  if (left.kind === "hidden" || right.kind === "hidden") return left.kind === right.kind;
969
968
  if (left.connectionId !== right.connectionId || left.identity.surfaceId !== right.identity.surfaceId || left.identity.requestId !== right.identity.requestId) return false;
@@ -1065,6 +1064,15 @@ var WalletIframeRouter = class {
1065
1064
  this.hostedAuthMenuAnchorTrackingDeadlineMs = performance.now() + 750;
1066
1065
  this.hostedAuthMenuAnchorTrackingFrame = requestAnimationFrame(this.updateHostedAuthMenuAnchorPosition);
1067
1066
  }
1067
+ updateHostedAuthMenuAnchorPosition = (timestampMs) => {
1068
+ this.hostedAuthMenuAnchorTrackingFrame = null;
1069
+ const authMenuSessionId = this.hostedAuthMenuAnchorTrackingSession;
1070
+ if (!authMenuSessionId) return;
1071
+ const surface = this.walletIframeSurface;
1072
+ if (surface.kind === "modal_auth_menu" && surface.authMenuSessionId === authMenuSessionId) this.renderActiveWalletIframeSurface();
1073
+ if (timestampMs >= this.hostedAuthMenuAnchorTrackingDeadlineMs) return;
1074
+ this.hostedAuthMenuAnchorTrackingFrame = requestAnimationFrame(this.updateHostedAuthMenuAnchorPosition);
1075
+ };
1068
1076
  stopHostedAuthMenuAnchorTracking(authMenuSessionId) {
1069
1077
  if (this.hostedAuthMenuAnchorTrackingSession !== authMenuSessionId) return;
1070
1078
  this.hostedAuthMenuAnchorTrackingSession = null;
@@ -1,6 +1,9 @@
1
1
  //#region src/SeamsWeb/walletIframe/client/surface/transactionSurfaceQueue.ts
2
2
  const MAX_DEADLINE_TIMER_DELAY_MS = 2147483647;
3
3
  var TransactionSurfaceLeaseDeferred = class {
4
+ promise;
5
+ resolvePromise;
6
+ rejectPromise;
4
7
  constructor() {
5
8
  this.promise = new Promise(this.capturePromise.bind(this));
6
9
  }
@@ -16,9 +19,12 @@ var TransactionSurfaceLeaseDeferred = class {
16
19
  }
17
20
  };
18
21
  var TransactionSurfaceLease = class {
22
+ kind = "wallet_iframe_transaction_surface_lease_v1";
23
+ requestId;
24
+ queue;
25
+ leaseId;
26
+ released = false;
19
27
  constructor(args) {
20
- this.kind = "wallet_iframe_transaction_surface_lease_v1";
21
- this.released = false;
22
28
  this.queue = args.queue;
23
29
  this.leaseId = args.leaseId;
24
30
  this.requestId = args.requestId;
@@ -30,11 +36,9 @@ var TransactionSurfaceLease = class {
30
36
  }
31
37
  };
32
38
  var WalletIframeTransactionSurfaceQueue = class {
33
- constructor() {
34
- this.state = { kind: "idle" };
35
- this.waiters = [];
36
- this.nextLeaseId = 0;
37
- }
39
+ state = { kind: "idle" };
40
+ waiters = [];
41
+ nextLeaseId = 0;
38
42
  acquire(args) {
39
43
  if (args.deadline.kind === "deadline" && Date.now() >= args.deadline.atMs) return Promise.reject(this.timeoutError(args.requestId));
40
44
  if (this.state.kind === "idle" && this.waiters.length === 0) return Promise.resolve(this.startLease(args.requestId));
@@ -1,6 +1,9 @@
1
1
  import { TransactionReviewError, assertTransactionReviewValid } from "../shared/transactionReview.js";
2
2
  //#region src/SeamsWeb/walletIframe/client/transactionReviewReservation.ts
3
3
  var TransactionReviewReservation = class {
4
+ currentState = { kind: "reviewing" };
5
+ listeners = /* @__PURE__ */ new Set();
6
+ metadata;
4
7
  constructor(connectionId, identity, slot, title, validity, confirmationConfig, generation, lease, assertCurrent, cancelRequest, finishRequest, resumeRequest) {
5
8
  this.connectionId = connectionId;
6
9
  this.identity = identity;
@@ -12,8 +15,6 @@ var TransactionReviewReservation = class {
12
15
  this.cancelRequest = cancelRequest;
13
16
  this.finishRequest = finishRequest;
14
17
  this.resumeRequest = resumeRequest;
15
- this.currentState = { kind: "reviewing" };
16
- this.listeners = /* @__PURE__ */ new Set();
17
18
  this.metadata = Object.freeze({
18
19
  kind: "transaction_review_v1",
19
20
  connectionId,
@@ -51,56 +51,60 @@ function roundTransportDurationMs(startedAt) {
51
51
  return Math.max(0, Math.round(performance.now() - startedAt));
52
52
  }
53
53
  var IframeTransport = class {
54
- constructor(options) {
55
- this.iframeEl = null;
56
- this.connectionClosed = false;
57
- this.connectionClosedListeners = /* @__PURE__ */ new Set();
58
- this.serviceBooted = false;
59
- this.connectInFlight = null;
60
- this.connectedPort = null;
61
- this.iframeInitialLoadSeen = false;
54
+ opts;
55
+ iframeEl = null;
56
+ connectionClosed = false;
57
+ connectionClosedListeners = /* @__PURE__ */ new Set();
58
+ serviceBooted = false;
59
+ connectInFlight = null;
60
+ connectedPort = null;
61
+ iframeInitialLoadSeen = false;
62
+ handshakeComplete = false;
63
+ walletServiceUrl;
64
+ walletOrigin;
65
+ testOptions;
66
+ debug = false;
67
+ lastDiagnostics = createZeroWalletIframeTransportDiagnostics();
68
+ onIframeLoad = () => {
69
+ if (!this.iframeInitialLoadSeen) {
70
+ this.iframeInitialLoadSeen = true;
71
+ return;
72
+ }
73
+ if (!this.handshakeComplete || this.connectionClosed) return;
62
74
  this.handshakeComplete = false;
63
- this.debug = false;
64
- this.lastDiagnostics = createZeroWalletIframeTransportDiagnostics();
65
- this.onIframeLoad = () => {
66
- if (!this.iframeInitialLoadSeen) {
67
- this.iframeInitialLoadSeen = true;
68
- return;
69
- }
70
- if (!this.handshakeComplete || this.connectionClosed) return;
71
- this.handshakeComplete = false;
72
- const port = this.connectedPort;
73
- this.connectedPort = null;
74
- try {
75
- port?.close();
76
- } catch {}
77
- const iframe = this.iframeEl;
78
- this.iframeEl = null;
79
- iframe?.remove();
80
- this.emitConnectionClosed();
81
- };
82
- this.onWindowMessage = (e) => {
83
- const data = e.data;
84
- if (!isObject(data)) return;
85
- const type = data.type;
86
- if (type === IframeMessage.HostDebugOrigin) {
87
- if (this.debug) console.debug("[IframeTransport][host-origin]", {
88
- origin: data.origin,
89
- href: data.href,
90
- eventOrigin: e.origin
91
- });
92
- return;
93
- }
94
- if (e.origin !== this.walletOrigin) return;
95
- if (type === IframeMessage.HostBooted) {
96
- this.serviceBooted = true;
97
- return;
98
- }
99
- if (type === IframeMessage.HostLog) {
100
- if (this.debug) console.debug("[IframeTransport][wallet-log]", data.payload);
101
- return;
102
- }
103
- };
75
+ const port = this.connectedPort;
76
+ this.connectedPort = null;
77
+ try {
78
+ port?.close();
79
+ } catch {}
80
+ const iframe = this.iframeEl;
81
+ this.iframeEl = null;
82
+ iframe?.remove();
83
+ this.emitConnectionClosed();
84
+ };
85
+ onWindowMessage = (e) => {
86
+ const data = e.data;
87
+ if (!isObject(data)) return;
88
+ const type = data.type;
89
+ if (type === IframeMessage.HostDebugOrigin) {
90
+ if (this.debug) console.debug("[IframeTransport][host-origin]", {
91
+ origin: data.origin,
92
+ href: data.href,
93
+ eventOrigin: e.origin
94
+ });
95
+ return;
96
+ }
97
+ if (e.origin !== this.walletOrigin) return;
98
+ if (type === IframeMessage.HostBooted) {
99
+ this.serviceBooted = true;
100
+ return;
101
+ }
102
+ if (type === IframeMessage.HostLog) {
103
+ if (this.debug) console.debug("[IframeTransport][wallet-log]", data.payload);
104
+ return;
105
+ }
106
+ };
107
+ constructor(options) {
104
108
  this.opts = {
105
109
  servicePath: "/wallet-service",
106
110
  connectTimeoutMs: 8e3,
@@ -8,18 +8,22 @@ function createAbortError() {
8
8
  }
9
9
  const WALLET_IFRAME_READY_TIMEOUT_CODE = "WALLET_IFRAME_READY_TIMEOUT";
10
10
  var WalletIframeReadyTimeoutError = class extends Error {
11
+ code = WALLET_IFRAME_READY_TIMEOUT_CODE;
12
+ elapsedMs;
13
+ timeoutMs;
11
14
  constructor(args) {
12
15
  super(`[IframeTransport] Wallet iframe READY timed out after ${args.elapsedMs}ms`);
13
- this.code = WALLET_IFRAME_READY_TIMEOUT_CODE;
14
16
  this.name = "WalletIframeReadyTimeoutError";
15
17
  this.elapsedMs = args.elapsedMs;
16
18
  this.timeoutMs = args.timeoutMs;
17
19
  }
18
20
  };
19
21
  var WalletIframeProtocolVersionMismatchError = class extends Error {
22
+ code = WALLET_IFRAME_PROTOCOL_VERSION_MISMATCH;
23
+ expectedProtocolVersion;
24
+ receivedProtocolVersion;
20
25
  constructor(args) {
21
26
  super(`[IframeTransport] Wallet iframe protocol version mismatch: expected ${args.expectedProtocolVersion}, received ${args.receivedProtocolVersion ?? "missing"}`);
22
- this.code = WALLET_IFRAME_PROTOCOL_VERSION_MISMATCH;
23
27
  this.name = "WalletIframeProtocolVersionMismatchError";
24
28
  this.expectedProtocolVersion = args.expectedProtocolVersion;
25
29
  this.receivedProtocolVersion = args.receivedProtocolVersion;
@@ -18,20 +18,25 @@ function rejectAbortedConnection(signal, _resolve, reject) {
18
18
  * This keeps `SeamsWeb` focused on business flows while preserving one cohesive iframe domain module.
19
19
  */
20
20
  var WalletIframeCoordinator = class {
21
+ configs;
22
+ userPreferences;
23
+ getAppearance;
24
+ iframeRouter = null;
25
+ connection = { kind: "idle" };
26
+ connectionGeneration = 0;
27
+ connectionListeners = /* @__PURE__ */ new Set();
28
+ walletIframeCloseUnsubscribe = null;
29
+ walletIframePrefsUnsubscribe = null;
30
+ sessionDeliveryRevision = 0;
31
+ walletIframeSessionUnsubscribe = null;
32
+ sessionListeners = /* @__PURE__ */ new Set();
33
+ walletIframeLifecycleUnsubscribe = null;
34
+ walletIframeAuthMenuUnsubscribe = null;
35
+ sdkLifecycleEventListeners = /* @__PURE__ */ new Set();
36
+ hostedAuthMenuExternalAuthRequestListeners = /* @__PURE__ */ new Set();
37
+ forwardSdkLifecycleEventListener;
38
+ forwardHostedAuthMenuExternalAuthRequestListener;
21
39
  constructor(deps) {
22
- this.iframeRouter = null;
23
- this.connection = { kind: "idle" };
24
- this.connectionGeneration = 0;
25
- this.connectionListeners = /* @__PURE__ */ new Set();
26
- this.walletIframeCloseUnsubscribe = null;
27
- this.walletIframePrefsUnsubscribe = null;
28
- this.sessionDeliveryRevision = 0;
29
- this.walletIframeSessionUnsubscribe = null;
30
- this.sessionListeners = /* @__PURE__ */ new Set();
31
- this.walletIframeLifecycleUnsubscribe = null;
32
- this.walletIframeAuthMenuUnsubscribe = null;
33
- this.sdkLifecycleEventListeners = /* @__PURE__ */ new Set();
34
- this.hostedAuthMenuExternalAuthRequestListeners = /* @__PURE__ */ new Set();
35
40
  this.configs = deps.configs;
36
41
  this.userPreferences = deps.userPreferences;
37
42
  this.getAppearance = deps.getAppearance;
@@ -75,20 +75,16 @@ function allocateSurfaceMeasurementSequence() {
75
75
  return sequence;
76
76
  }
77
77
  var SurfaceMeasurementReporter = class {
78
+ observer;
79
+ latestEntry = null;
80
+ recentPostTimes = [];
81
+ warnedAboutStreaming = false;
82
+ surfaceHasSettled = false;
83
+ animationFrame = null;
84
+ lastSize = null;
85
+ disconnected = false;
78
86
  constructor(options) {
79
87
  this.options = options;
80
- this.latestEntry = null;
81
- this.recentPostTimes = [];
82
- this.warnedAboutStreaming = false;
83
- this.surfaceHasSettled = false;
84
- this.animationFrame = null;
85
- this.lastSize = null;
86
- this.disconnected = false;
87
- this.onResize = (entries) => {
88
- if (this.disconnected) return;
89
- this.latestEntry = entries.at(-1) ?? null;
90
- this.scheduleReport();
91
- };
92
88
  if (typeof ResizeObserver === "function") {
93
89
  this.observer = new ResizeObserver(this.onResize);
94
90
  this.observer.observe(options.element);
@@ -107,6 +103,11 @@ var SurfaceMeasurementReporter = class {
107
103
  this.animationFrame = null;
108
104
  this.latestEntry = null;
109
105
  }
106
+ onResize = (entries) => {
107
+ if (this.disconnected) return;
108
+ this.latestEntry = entries.at(-1) ?? null;
109
+ this.scheduleReport();
110
+ };
110
111
  scheduleReport() {
111
112
  if (this.disconnected) return;
112
113
  if (this.animationFrame !== null && typeof cancelAnimationFrame === "function") {
@@ -143,7 +144,7 @@ var SurfaceMeasurementReporter = class {
143
144
  if (!this.surfaceHasSettled) return;
144
145
  if (this.recentPostTimes.length < STREAMING_POSTS_THRESHOLD) return;
145
146
  this.warnedAboutStreaming = true;
146
- console.warn(`[SEAMS] ${this.options.kind} posted ${this.recentPostTimes.length} surface measurements in ${STREAMING_WINDOW_MS}ms after it had settled. Content inside a measured surface must announce a height change once (announceSurfaceResize) instead of animating its own height; the host box cannot follow a moving target. See docs/refactor-127-preact.md.`);
147
+ console.warn(`[SEAMS] ${this.options.kind} posted ${this.recentPostTimes.length} surface measurements in ${STREAMING_WINDOW_MS}ms after it had settled. Content inside a measured surface must announce a height change once (announceSurfaceResize) instead of animating its own height; the host box cannot follow a moving target.`);
147
148
  }
148
149
  sameSize(size) {
149
150
  return this.lastSize?.widthCssPx === size.widthCssPx && this.lastSize?.heightCssPx === size.heightCssPx;
@@ -9,10 +9,7 @@ import { jsx, jsxs } from "preact/jsx-runtime";
9
9
  * failure takes that line over, so reporting one never moves the controls.
10
10
  */
11
11
  var AuthMenuFooter = class extends Component {
12
- constructor(..._args) {
13
- super(..._args);
14
- this.shownNotice = "";
15
- }
12
+ shownNotice = "";
16
13
  render() {
17
14
  const { notice, onRetry } = this.props;
18
15
  if (notice) this.shownNotice = notice;