@seams/wallet 0.6.0 → 0.6.2

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 (150) hide show
  1. package/dist/.build-inputs.sha256 +1 -1
  2. package/dist/esm/SeamsWeb/SeamsWeb.js +1 -0
  3. package/dist/esm/SeamsWeb/operations/registration/registration.js +162 -33
  4. package/dist/esm/SeamsWeb/operations/registration/registrationTiming.js +33 -2
  5. package/dist/esm/SeamsWeb/signingSurface/BrowserSigningSurface.js +3 -0
  6. package/dist/esm/SeamsWeb/walletIframe/client/overlay/overlay-controller.js +63 -10
  7. package/dist/esm/core/rpcClients/relayer/walletRegistration.js +45 -3
  8. package/dist/esm/core/signingEngine/flows/signNear/shared/ed25519YaoNormalSigning.js +19 -0
  9. package/dist/esm/core/signingEngine/flows/signNear/signTransactions.js +25 -6
  10. package/dist/esm/core/signingEngine/nonce/nearNonceLane.js +0 -29
  11. package/dist/esm/core/signingEngine/session/operationState/trace.js +10 -1
  12. package/dist/esm/core/signingEngine/session/passkey/prfCache.js +24 -4
  13. package/dist/esm/core/signingEngine/uiConfirm/PasskeyMpcSessionDurableState.js +5 -3
  14. package/dist/esm/core/signingEngine/uiConfirm/PasskeyMpcSessionManager.js +40 -3
  15. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/TransactionReceipt.js +31 -35
  16. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/mountConfirmationSurface.js +64 -10
  17. package/dist/esm/core/signingEngine/walletCustody/ceremonyDriver.js +1 -1
  18. package/dist/esm/react/SeamsWeb/SeamsWeb.js +1 -0
  19. package/dist/esm/react/SeamsWeb/operations/registration/registration.js +162 -33
  20. package/dist/esm/react/SeamsWeb/operations/registration/registrationTiming.js +33 -2
  21. package/dist/esm/react/SeamsWeb/signingSurface/BrowserSigningSurface.js +3 -0
  22. package/dist/esm/react/SeamsWeb/walletIframe/client/overlay/overlay-controller.js +63 -10
  23. package/dist/esm/react/core/rpcClients/relayer/walletRegistration.js +45 -3
  24. package/dist/esm/react/core/signingEngine/flows/signNear/shared/ed25519YaoNormalSigning.js +19 -0
  25. package/dist/esm/react/core/signingEngine/flows/signNear/signTransactions.js +25 -6
  26. package/dist/esm/react/core/signingEngine/nonce/nearNonceLane.js +0 -29
  27. package/dist/esm/react/core/signingEngine/session/operationState/trace.js +10 -1
  28. package/dist/esm/react/core/signingEngine/session/passkey/prfCache.js +24 -4
  29. package/dist/esm/react/core/signingEngine/uiConfirm/PasskeyMpcSessionDurableState.js +5 -3
  30. package/dist/esm/react/core/signingEngine/uiConfirm/PasskeyMpcSessionManager.js +40 -3
  31. package/dist/esm/react/core/signingEngine/uiConfirm/ui/preact/TransactionReceipt.js +31 -35
  32. package/dist/esm/react/core/signingEngine/uiConfirm/ui/preact/mountConfirmationSurface.js +64 -10
  33. package/dist/esm/react/core/signingEngine/walletCustody/ceremonyDriver.js +1 -1
  34. package/dist/esm/react/shared-ts/src/utils/routerAbEd25519Yao.js +13 -1
  35. package/dist/esm/sdk/{NonceCoordinator-C7QltTDC.js → NonceCoordinator-C7mqpJiU.js} +0 -29
  36. package/dist/esm/sdk/{adapters-Dgy69gf0.js → adapters-m94YFj70.js} +96 -46
  37. package/dist/{public/sdk/defaultConfigs-DJCLCrg9.js → esm/sdk/defaultConfigs-CyNOW4Sy.js} +1 -1
  38. package/dist/{public/sdk/display-Cw90-qmF.js → esm/sdk/display-DHdC2yXU.js} +1 -1
  39. package/dist/{public/sdk/ecdsaCapabilityManifest-DA_fklIs.js → esm/sdk/ecdsaCapabilityManifest-C8itxV9S.js} +1 -1
  40. package/dist/esm/sdk/{ecdsaPresignLifecycle-D_KCktCj.js → ecdsaPresignLifecycle-CnSnzoRJ.js} +13 -1
  41. package/dist/{public/sdk/ed25519SeedMaterial-0VmS6K9P.js → esm/sdk/ed25519SeedMaterial-Cghz8-XB.js} +2 -2
  42. package/dist/esm/sdk/{exactSessionState-C2aAv_ED.js → exactSessionState-Bt0HforB.js} +64 -11
  43. package/dist/esm/sdk/{export-viewer-host-NhjFdpm-.js → export-viewer-host-CbqG8ZQV.js} +1 -1
  44. package/dist/esm/sdk/{host-DACTruOj.js → host-BPC1zSVg.js} +2 -2
  45. package/dist/esm/sdk/{localOnly-DTNq69fJ.js → localOnly-CbLYTVbo.js} +2 -2
  46. package/dist/{public/sdk/nearEd25519YaoMaterialActivation-4AuGG2DG.js → esm/sdk/nearEd25519YaoMaterialActivation-Cz5UJQ_7.js} +46 -4
  47. package/dist/esm/sdk/{nearEd25519YaoSigningPreparation-jiGcQylO.js → nearEd25519YaoSigningPreparation-DX6xG-IW.js} +1 -1
  48. package/dist/esm/sdk/{prfCache-Dwwauj4v.js → prfCache-CgAr-VEU.js} +24 -4
  49. package/dist/{public/sdk/recovery-entrypoint-CFTX6PFZ.js → esm/sdk/recovery-entrypoint-D39R1avB.js} +3 -3
  50. package/dist/{public/sdk/registration-CuP1WmQu.js → esm/sdk/registration-DtDICj-o.js} +1 -1
  51. package/dist/esm/sdk/{registration-D8nYJKec.js → registration-PIBMSsQR.js} +247 -40
  52. package/dist/esm/sdk/{registrationPreparationPreload-DDe0sbZi.js → registrationPreparationPreload-BZfAC_ba.js} +2 -2
  53. package/dist/{public/sdk/router-DeX_cJ2f.js → esm/sdk/router-CeFS9SgT.js} +3 -3
  54. package/dist/{public/sdk/routerAbNormalSigning-BGpRKRAj.js → esm/sdk/routerAbNormalSigning-DktZKnf1.js} +1 -1
  55. package/dist/{public/sdk/runtime-auth-Ch00YcH5.js → esm/sdk/runtime-auth-D_lUQQlc.js} +8 -8
  56. package/dist/esm/sdk/{runtime-device-link-CEhVZYAw.js → runtime-device-link-CEph1iM0.js} +4 -4
  57. package/dist/{public/sdk/runtime-ecdsa-tempo-B-qMRrmx.js → esm/sdk/runtime-ecdsa-tempo-tUWnafRo.js} +5 -5
  58. package/dist/esm/sdk/{runtime-email-otp-giyMPib8.js → runtime-email-otp-1wIPTDim.js} +4 -4
  59. package/dist/esm/sdk/{runtime-export-CV-6G1Oy.js → runtime-export-Du2d4_Vu.js} +4 -4
  60. package/dist/{public/sdk/runtime-near-DoDcS88O.js → esm/sdk/runtime-near-CGoWxu7u.js} +4 -4
  61. package/dist/{public/sdk/runtime-preferences-Canyenle.js → esm/sdk/runtime-preferences-JwJK_xP3.js} +4 -4
  62. package/dist/esm/sdk/{runtime-recovery-lWyILD1g.js → runtime-recovery-BEqBdpyo.js} +4 -4
  63. package/dist/esm/sdk/{runtimeContext-BdTaYxJD.js → runtimeContext-CTt9ON27.js} +83 -40
  64. package/dist/{public/sdk/runtimeLoader-Dxn8UA8B.js → esm/sdk/runtimeLoader-ZXsvx9zX.js} +9 -9
  65. package/dist/{public/sdk/secp256k1-CQFsI3qQ.js → esm/sdk/secp256k1-CWDid9WH.js} +4 -4
  66. package/dist/{public/sdk/signEvmFamily-CZLET02E.js → esm/sdk/signEvmFamily-pbMepepQ.js} +10 -10
  67. package/dist/esm/sdk/{signEvmFamilyWithUiConfirmForTempo-DHTBHHgE.js → signEvmFamilyWithUiConfirmForTempo-CxvfCI_o.js} +2 -2
  68. package/dist/{public/sdk/signEvmWithUiConfirm-CSxTBQUW.js → esm/sdk/signEvmWithUiConfirm-nk-r3Rff.js} +1 -1
  69. package/dist/esm/sdk/{signNear-BeUWiWm_.js → signNear-DVD9-IO5.js} +50 -13
  70. package/dist/{public/sdk/signatureUses-C1o1pDql.js → esm/sdk/signatureUses-BY1IY7uz.js} +1 -1
  71. package/dist/{public/sdk/signerLoader-C_w8vuhm.js → esm/sdk/signerLoader-D_w-SfR9.js} +3 -3
  72. package/dist/{public/sdk/trace-DWnDLSuV.js → esm/sdk/trace-08ayoiNp.js} +10 -1
  73. package/dist/{public/sdk/transactionState-Dd13hMoY.js → esm/sdk/transactionState-Bpm4GamO.js} +2 -2
  74. package/dist/esm/sdk/tx-confirm-ui.js +134 -93
  75. package/dist/esm/sdk/wallet-iframe-host-ecdsa.js +1 -1
  76. package/dist/esm/sdk/wallet-iframe-host-full.js +1 -1
  77. package/dist/esm/sdk/wallet-iframe-host-near.js +1 -1
  78. package/dist/esm/sdk/wallet-iframe-host-runtime.js +1 -1
  79. package/dist/esm/sdk/wallet-ui.css +92 -32
  80. package/dist/esm/sdk/{walletRecoveryCommit-DNvzgeIX.js → walletRecoveryCommit-G6w6N5RV.js} +3 -3
  81. package/dist/esm/sdk/{warmSessionHydration-CCKeEIIy.js → warmSessionHydration-DDNYdTCz.js} +1 -1
  82. package/dist/esm/shared-ts/src/utils/routerAbEd25519Yao.js +13 -1
  83. package/dist/public/headers.manifest.json +1 -1
  84. package/dist/public/sdk/{NonceCoordinator-C7QltTDC.js → NonceCoordinator-C7mqpJiU.js} +0 -29
  85. package/dist/public/sdk/{adapters-Dgy69gf0.js → adapters-m94YFj70.js} +96 -46
  86. package/dist/{esm/sdk/defaultConfigs-DJCLCrg9.js → public/sdk/defaultConfigs-CyNOW4Sy.js} +1 -1
  87. package/dist/{esm/sdk/display-Cw90-qmF.js → public/sdk/display-DHdC2yXU.js} +1 -1
  88. package/dist/{esm/sdk/ecdsaCapabilityManifest-DA_fklIs.js → public/sdk/ecdsaCapabilityManifest-C8itxV9S.js} +1 -1
  89. package/dist/public/sdk/{ecdsaPresignLifecycle-D_KCktCj.js → ecdsaPresignLifecycle-CnSnzoRJ.js} +13 -1
  90. package/dist/{esm/sdk/ed25519SeedMaterial-0VmS6K9P.js → public/sdk/ed25519SeedMaterial-Cghz8-XB.js} +2 -2
  91. package/dist/public/sdk/{exactSessionState-C2aAv_ED.js → exactSessionState-Bt0HforB.js} +64 -11
  92. package/dist/public/sdk/{export-viewer-host-NhjFdpm-.js → export-viewer-host-CbqG8ZQV.js} +1 -1
  93. package/dist/public/sdk/{host-DACTruOj.js → host-BPC1zSVg.js} +2 -2
  94. package/dist/public/sdk/{localOnly-DTNq69fJ.js → localOnly-CbLYTVbo.js} +2 -2
  95. package/dist/{esm/sdk/nearEd25519YaoMaterialActivation-4AuGG2DG.js → public/sdk/nearEd25519YaoMaterialActivation-Cz5UJQ_7.js} +46 -4
  96. package/dist/public/sdk/{nearEd25519YaoSigningPreparation-jiGcQylO.js → nearEd25519YaoSigningPreparation-DX6xG-IW.js} +1 -1
  97. package/dist/public/sdk/{prfCache-Dwwauj4v.js → prfCache-CgAr-VEU.js} +24 -4
  98. package/dist/{esm/sdk/recovery-entrypoint-CFTX6PFZ.js → public/sdk/recovery-entrypoint-D39R1avB.js} +3 -3
  99. package/dist/{esm/sdk/registration-CuP1WmQu.js → public/sdk/registration-DtDICj-o.js} +1 -1
  100. package/dist/public/sdk/{registration-D8nYJKec.js → registration-PIBMSsQR.js} +247 -40
  101. package/dist/public/sdk/{registrationPreparationPreload-DDe0sbZi.js → registrationPreparationPreload-BZfAC_ba.js} +2 -2
  102. package/dist/{esm/sdk/router-DeX_cJ2f.js → public/sdk/router-CeFS9SgT.js} +3 -3
  103. package/dist/{esm/sdk/routerAbNormalSigning-BGpRKRAj.js → public/sdk/routerAbNormalSigning-DktZKnf1.js} +1 -1
  104. package/dist/{esm/sdk/runtime-auth-Ch00YcH5.js → public/sdk/runtime-auth-D_lUQQlc.js} +8 -8
  105. package/dist/public/sdk/{runtime-device-link-CEhVZYAw.js → runtime-device-link-CEph1iM0.js} +4 -4
  106. package/dist/{esm/sdk/runtime-ecdsa-tempo-B-qMRrmx.js → public/sdk/runtime-ecdsa-tempo-tUWnafRo.js} +5 -5
  107. package/dist/public/sdk/{runtime-email-otp-giyMPib8.js → runtime-email-otp-1wIPTDim.js} +4 -4
  108. package/dist/public/sdk/{runtime-export-CV-6G1Oy.js → runtime-export-Du2d4_Vu.js} +4 -4
  109. package/dist/{esm/sdk/runtime-near-DoDcS88O.js → public/sdk/runtime-near-CGoWxu7u.js} +4 -4
  110. package/dist/{esm/sdk/runtime-preferences-Canyenle.js → public/sdk/runtime-preferences-JwJK_xP3.js} +4 -4
  111. package/dist/public/sdk/{runtime-recovery-lWyILD1g.js → runtime-recovery-BEqBdpyo.js} +4 -4
  112. package/dist/public/sdk/{runtimeContext-BdTaYxJD.js → runtimeContext-CTt9ON27.js} +83 -40
  113. package/dist/{esm/sdk/runtimeLoader-Dxn8UA8B.js → public/sdk/runtimeLoader-ZXsvx9zX.js} +9 -9
  114. package/dist/{esm/sdk/secp256k1-CQFsI3qQ.js → public/sdk/secp256k1-CWDid9WH.js} +4 -4
  115. package/dist/{esm/sdk/signEvmFamily-CZLET02E.js → public/sdk/signEvmFamily-pbMepepQ.js} +10 -10
  116. package/dist/public/sdk/{signEvmFamilyWithUiConfirmForTempo-DHTBHHgE.js → signEvmFamilyWithUiConfirmForTempo-CxvfCI_o.js} +2 -2
  117. package/dist/{esm/sdk/signEvmWithUiConfirm-CSxTBQUW.js → public/sdk/signEvmWithUiConfirm-nk-r3Rff.js} +1 -1
  118. package/dist/public/sdk/{signNear-BeUWiWm_.js → signNear-DVD9-IO5.js} +50 -13
  119. package/dist/{esm/sdk/signatureUses-C1o1pDql.js → public/sdk/signatureUses-BY1IY7uz.js} +1 -1
  120. package/dist/{esm/sdk/signerLoader-C_w8vuhm.js → public/sdk/signerLoader-D_w-SfR9.js} +3 -3
  121. package/dist/{esm/sdk/trace-DWnDLSuV.js → public/sdk/trace-08ayoiNp.js} +10 -1
  122. package/dist/{esm/sdk/transactionState-Dd13hMoY.js → public/sdk/transactionState-Bpm4GamO.js} +2 -2
  123. package/dist/public/sdk/tx-confirm-ui.js +134 -93
  124. package/dist/public/sdk/wallet-iframe-host-ecdsa.js +1 -1
  125. package/dist/public/sdk/wallet-iframe-host-full.js +1 -1
  126. package/dist/public/sdk/wallet-iframe-host-near.js +1 -1
  127. package/dist/public/sdk/wallet-iframe-host-runtime.js +1 -1
  128. package/dist/public/sdk/wallet-ui.css +92 -32
  129. package/dist/public/sdk/{walletRecoveryCommit-DNvzgeIX.js → walletRecoveryCommit-G6w6N5RV.js} +3 -3
  130. package/dist/public/sdk/{warmSessionHydration-CCKeEIIy.js → warmSessionHydration-DDNYdTCz.js} +1 -1
  131. package/dist/public/sdk/workers/passkey-mpc-session.worker.js +92 -8
  132. package/dist/public/wallet-assets.manifest.json +86 -86
  133. package/dist/public/wallet-service/index.html +4 -4
  134. package/dist/types/wallet/src/SeamsWeb/operations/registration/registration.d.ts +15 -1
  135. package/dist/types/wallet/src/SeamsWeb/operations/registration/registrationTiming.d.ts +11 -1
  136. package/dist/types/wallet/src/SeamsWeb/signingSurface/BrowserSigningSurface.d.ts +6 -0
  137. package/dist/types/wallet/src/SeamsWeb/signingSurface/ports.d.ts +8 -2
  138. package/dist/types/wallet/src/core/rpcClients/relayer/walletRegistration.d.ts +49 -10
  139. package/dist/types/wallet/src/core/signingEngine/nonce/nearNonceLane.d.ts +2 -1
  140. package/dist/types/wallet/src/core/signingEngine/session/operationState/trace.d.ts +2 -0
  141. package/dist/types/wallet/src/core/signingEngine/session/passkey/prfCache.d.ts +7 -9
  142. package/dist/types/wallet/src/core/signingEngine/session/passkey/warmSessionHydration.d.ts +7 -8
  143. package/dist/types/wallet/src/core/signingEngine/session/passkey/warmSessionMaterialWriter.d.ts +9 -9
  144. package/dist/types/wallet/src/core/signingEngine/session/warmCapabilities/public.d.ts +7 -8
  145. package/dist/types/wallet/src/core/signingEngine/uiConfirm/PasskeyMpcSessionDurableState.d.ts +3 -0
  146. package/dist/types/wallet/src/core/signingEngine/uiConfirm/uiConfirm.types.d.ts +6 -0
  147. package/dist/types/wallet/src/core/signingEngine/workerManager/workers/shamir3pass/clientSealPreparation.d.ts +2 -0
  148. package/dist/types/wallet/src/core/types/secure-confirm-worker.d.ts +15 -1
  149. package/dist/workers/passkey-mpc-session.worker.js +92 -8
  150. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- import { t as initWalletIFrame } from "./host-DACTruOj.js";
1
+ import { t as initWalletIFrame } from "./host-BPC1zSVg.js";
2
2
  import "./validation-BphUDXs7.js";
3
3
  import "./errors-93h9uAW9.js";
4
4
  export { initWalletIFrame };
@@ -3205,6 +3205,7 @@ body.seams-transparent {
3205
3205
  }
3206
3206
 
3207
3207
  :where(.seams-wallet-ui) .email-otp-confirm__error {
3208
+ text-align: center;
3208
3209
  color: var(--seams-colors-error, var(--seams-red400));
3209
3210
  font-size: 0.8rem;
3210
3211
  font-weight: 600;
@@ -3212,6 +3213,7 @@ body.seams-transparent {
3212
3213
 
3213
3214
  :where(.seams-wallet-ui) .email-otp-confirm__resend {
3214
3215
  justify-self: center;
3216
+ margin-bottom: 0.75rem;
3215
3217
  border: 0;
3216
3218
  background: transparent;
3217
3219
  color: var(--seams-colors-buttonBackground);
@@ -4145,6 +4147,7 @@ html:has([data-seams-confirm-surface='wallet-iframe'][data-seams-confirm-variant
4145
4147
  }
4146
4148
 
4147
4149
  :where(.seams-wallet-ui) .seams-confirmation-modal--hosted {
4150
+ outline: none;
4148
4151
  inline-size: var(--seams-modal__container-max-width, 26rem);
4149
4152
  max-inline-size: 100%;
4150
4153
  max-block-size: none;
@@ -4915,14 +4918,14 @@ html:has([data-seams-confirm-surface='wallet-iframe'][data-seams-confirm-variant
4915
4918
  height: var(--seams-review-disclosure-height);
4916
4919
  overflow: hidden;
4917
4920
  }
4918
- :where(.seams-wallet-ui) .seams-transaction-review > .seams-review-technical > div {
4921
+ :where(.seams-wallet-ui) :is(.seams-transaction-review, .seams-transaction-receipt) > .seams-review-technical > div {
4919
4922
  margin-inline: calc(-1 * var(--seams-review-inset));
4920
4923
  background: var(--seams-colors-surface2);
4921
4924
  box-shadow: inset 0 1px 0 var(--seams-colors-borderPrimary),
4922
4925
  inset 0 -1px 0 var(--seams-colors-borderPrimary),
4923
4926
  inset 0 5px 8px -7px rgb(0 0 0 / 0.16);
4924
4927
  }
4925
- :where(.seams-wallet-ui) .seams-transaction-review > .seams-review-technical > div > .seams-review-detail {
4928
+ :where(.seams-wallet-ui) :is(.seams-transaction-review, .seams-transaction-receipt) > .seams-review-technical > div > :is(.seams-review-detail, .seams-review-fields) {
4926
4929
  margin: 0;
4927
4930
  padding: 0.75rem var(--seams-review-inset);
4928
4931
  }
@@ -5015,8 +5018,14 @@ html:has([data-seams-confirm-surface='wallet-iframe'][data-seams-confirm-variant
5015
5018
  }
5016
5019
  :where(.seams-wallet-ui) .seams-review-detail-row--block > pre {
5017
5020
  grid-column: 1 / -1;
5021
+ grid-row: 2;
5018
5022
  text-align: start;
5019
5023
  }
5024
+ :where(.seams-wallet-ui) .seams-review-detail-row--block > .seams-review-copy {
5025
+ grid-column: 3;
5026
+ grid-row: 1;
5027
+ justify-self: end;
5028
+ }
5020
5029
  :where(.seams-wallet-ui) .seams-review-detail-row--block > pre,
5021
5030
  :where(.seams-wallet-ui) .seams-review-raw > pre {
5022
5031
  padding: 0.625rem;
@@ -5116,7 +5125,7 @@ html:has([data-seams-confirm-surface='wallet-iframe'][data-seams-confirm-variant
5116
5125
  justify-content: center;
5117
5126
  gap: 0.25rem;
5118
5127
  width: fit-content;
5119
- margin: -0.25rem auto 0.75rem;
5128
+ margin: 0.75rem auto;
5120
5129
  color: var(--seams-colors-textSecondary);
5121
5130
  font-size: 0.75rem;
5122
5131
  text-decoration: none;
@@ -5173,35 +5182,55 @@ html:has([data-seams-confirm-surface='wallet-iframe'][data-seams-confirm-variant
5173
5182
  }
5174
5183
  :where(.seams-wallet-ui) .seams-transaction-toast {
5175
5184
  position: relative;
5185
+ border-radius: inherit;
5176
5186
  background: var(--seams-colors-colorBackground);
5177
5187
  display: flex;
5178
5188
  align-items: center;
5179
5189
  gap: 0.75rem;
5180
- padding: 1.0625rem 1.125rem;
5190
+ padding: 0.625rem 0.75rem;
5181
5191
  }
5182
5192
  :where(.seams-wallet-ui) .seams-toast-progress {
5183
5193
  position: absolute;
5184
- inset: 0 0 auto;
5185
- height: 2px;
5186
- background: var(--seams-colors-colorBackground);
5194
+ inset: 0;
5195
+ border-radius: inherit;
5187
5196
  overflow: hidden;
5197
+ pointer-events: none;
5188
5198
  }
5189
- :where(.seams-wallet-ui) .seams-toast-progress > span {
5199
+ :where(.seams-wallet-ui) .seams-toast-progress-fill {
5200
+ position: relative;
5190
5201
  display: block;
5191
- height: 100%;
5202
+ height: 2px;
5192
5203
  width: 0;
5193
5204
  background: var(--seams-colors-buttonBackground);
5205
+ transform-origin: left;
5194
5206
  transition: width 300ms ease-out;
5195
5207
  }
5196
- :where(.seams-wallet-ui) [data-completed-stages='1'] .seams-toast-progress > span {
5208
+ :where(.seams-wallet-ui) [data-completed-stages='1'] .seams-toast-progress-fill,
5209
+ :where(.seams-wallet-ui) [data-stage='signing'] .seams-toast-progress-fill {
5197
5210
  width: calc(100% / 3);
5198
5211
  }
5199
- :where(.seams-wallet-ui) [data-completed-stages='2'] .seams-toast-progress > span {
5212
+ :where(.seams-wallet-ui) [data-completed-stages='2'] .seams-toast-progress-fill,
5213
+ :where(.seams-wallet-ui) [data-stage='broadcasting'] .seams-toast-progress-fill {
5200
5214
  width: calc(200% / 3);
5201
5215
  }
5202
- :where(.seams-wallet-ui) [data-completed-stages='3'] .seams-toast-progress > span {
5216
+ :where(.seams-wallet-ui) [data-completed-stages='3'] .seams-toast-progress-fill {
5203
5217
  width: 100%;
5204
5218
  }
5219
+ :where(.seams-wallet-ui) .seams-toast-progress-active {
5220
+ position: absolute;
5221
+ top: 0;
5222
+ left: 0;
5223
+ width: 100%;
5224
+ height: 2px;
5225
+ overflow: hidden;
5226
+ background: var(--seams-colors-borderPrimary);
5227
+ }
5228
+ :where(.seams-wallet-ui) .seams-toast-progress-active::after {
5229
+ content: '';
5230
+ position: absolute;
5231
+ inset: 0;
5232
+ background: linear-gradient(90deg, transparent, var(--seams-colors-buttonBackground), transparent);
5233
+ }
5205
5234
  :where(.seams-wallet-ui) .seams-transaction-toast-text {
5206
5235
  display: grid;
5207
5236
  flex: 1;
@@ -5225,7 +5254,7 @@ html:has([data-seams-confirm-surface='wallet-iframe'][data-seams-confirm-variant
5225
5254
  cursor: pointer;
5226
5255
  }
5227
5256
  :where(.seams-wallet-ui[data-receipt-view='toast']) .seams-confirmation-modal--hosted {
5228
- inline-size: 22.5rem;
5257
+ inline-size: 20rem;
5229
5258
  }
5230
5259
  :where(.seams-wallet-ui[data-confirmation-kind='transaction'])
5231
5260
  .seams-confirmation-modal
@@ -5237,7 +5266,7 @@ html:has([data-seams-confirm-surface='wallet-iframe'][data-seams-confirm-variant
5237
5266
  border-radius: min(calc(var(--seams-shape-card, 16px) * 1.625), 26px);
5238
5267
  }
5239
5268
  :where(.seams-wallet-ui[data-confirmation-kind='transaction']) .seams-confirmation-modal {
5240
- inline-size: min(100%, 26.25rem);
5269
+ inline-size: min(100%, 28rem);
5241
5270
  }
5242
5271
  :where(.seams-wallet-ui[data-receipt-view='toast'])
5243
5272
  .seams-confirmation-modal
@@ -5355,16 +5384,10 @@ html:has([data-seams-confirm-surface='wallet-iframe'][data-seams-confirm-variant
5355
5384
  background: var(--seams-colors-surface2);
5356
5385
  box-shadow: 0 0 6px 3px var(--seams-colors-surface2);
5357
5386
  }
5358
- :where(.seams-wallet-ui) .seams-receipt-box {
5359
- background: var(--seams-colors-surface2);
5360
- padding: 0.25rem 0.875rem;
5361
- border-radius: var(--seams-shape-box, 12px);
5362
- margin-block: 0.75rem;
5363
- }
5364
5387
  :where(.seams-wallet-ui) .seams-receipt-morph-shell {
5365
5388
  position: fixed;
5366
5389
  pointer-events: none;
5367
- z-index: 1;
5390
+ z-index: 0;
5368
5391
  box-sizing: border-box;
5369
5392
  background: var(--seams-colors-colorBackground);
5370
5393
  border: 1px solid var(--seams-colors-borderPrimary);
@@ -5409,18 +5432,11 @@ html:has([data-seams-confirm-surface='wallet-iframe'][data-seams-confirm-variant
5409
5432
  :where(.seams-wallet-ui) .seams-drawer-controls:has(.seams-drawer-origin) .seams-drawer-close {
5410
5433
  top: 0.5rem;
5411
5434
  }
5412
- :where(.seams-wallet-ui) .seams-receipt-box .seams-review-technical {
5413
- border-top: 0;
5414
- margin: 0;
5415
- }
5416
- :where(.seams-wallet-ui) .seams-receipt-box .seams-review-fields {
5417
- margin-bottom: 6px;
5418
- }
5419
- :where(.seams-wallet-ui) .seams-receipt-box .seams-review-fields dd .seams-review-copy:not(.seams-review-copy-address) > .copy-icon {
5435
+ :where(.seams-wallet-ui) .seams-transaction-receipt > .seams-review-technical .seams-review-fields dd .seams-review-copy:not(.seams-review-copy-address) > .copy-icon {
5420
5436
  opacity: 0;
5421
5437
  }
5422
- :where(.seams-wallet-ui) .seams-receipt-box .seams-review-fields dd:is(:hover, :focus-within) .seams-review-copy:not(.seams-review-copy-address) > .copy-icon,
5423
- :where(.seams-wallet-ui) .seams-receipt-box .seams-review-fields .seams-review-copy.copied > .copy-icon {
5438
+ :where(.seams-wallet-ui) .seams-transaction-receipt > .seams-review-technical .seams-review-fields dd:is(:hover, :focus-within) .seams-review-copy:not(.seams-review-copy-address) > .copy-icon,
5439
+ :where(.seams-wallet-ui) .seams-transaction-receipt > .seams-review-technical .seams-review-fields .seams-review-copy.copied > .copy-icon {
5424
5440
  opacity: 1;
5425
5441
  }
5426
5442
  :where(.seams-wallet-ui) .seams-receipt-step[data-state='complete'] {
@@ -5440,9 +5456,17 @@ html:has([data-seams-confirm-surface='wallet-iframe'][data-seams-confirm-variant
5440
5456
  }
5441
5457
  }
5442
5458
  @media (prefers-reduced-motion: no-preference) {
5459
+ :where(.seams-wallet-ui) .seams-toast-progress {
5460
+ animation: seams-toast-progress-reveal 1ms step-end 200ms backwards;
5461
+ }
5462
+ :where(.seams-wallet-ui) .seams-toast-progress-fill {
5463
+ animation: seams-toast-progress-draw 180ms ease-out 200ms backwards;
5464
+ }
5465
+ :where(.seams-wallet-ui) .seams-toast-progress-active::after,
5443
5466
  :where(.seams-wallet-ui) .seams-receipt-step[data-state='active'] .seams-receipt-track::after {
5444
5467
  animation: seams-receipt-sweep 1.2s ease-in-out infinite;
5445
5468
  }
5469
+ :where(.seams-wallet-ui) [data-completed-stages='2'] .seams-toast-progress-active::after,
5446
5470
  :where(.seams-wallet-ui)
5447
5471
  .seams-receipt-step[data-stage='confirming'][data-state='active']
5448
5472
  .seams-receipt-track::after {
@@ -5452,6 +5476,22 @@ html:has([data-seams-confirm-surface='wallet-iframe'][data-seams-confirm-variant
5452
5476
  animation: seams-receipt-spin 1.2s linear infinite;
5453
5477
  }
5454
5478
  }
5479
+ @keyframes seams-toast-progress-reveal {
5480
+ from {
5481
+ visibility: hidden;
5482
+ }
5483
+ to {
5484
+ visibility: visible;
5485
+ }
5486
+ }
5487
+ @keyframes seams-toast-progress-draw {
5488
+ from {
5489
+ transform: scaleX(0);
5490
+ }
5491
+ to {
5492
+ transform: scaleX(1);
5493
+ }
5494
+ }
5455
5495
  @keyframes seams-receipt-sweep {
5456
5496
  from {
5457
5497
  transform: translateX(-100%);
@@ -5466,8 +5506,14 @@ html:has([data-seams-confirm-surface='wallet-iframe'][data-seams-confirm-variant
5466
5506
  }
5467
5507
  }
5468
5508
  @media (prefers-reduced-motion: reduce) {
5509
+ :where(.seams-wallet-ui) .seams-toast-progress,
5510
+ :where(.seams-wallet-ui) .seams-toast-progress-fill {
5511
+ animation: none;
5512
+ visibility: visible;
5513
+ transform: none;
5514
+ }
5469
5515
  :where(.seams-wallet-ui) .seams-review-caret,
5470
- :where(.seams-wallet-ui) .seams-toast-progress > span,
5516
+ :where(.seams-wallet-ui) .seams-toast-progress-fill,
5471
5517
  :where(.seams-wallet-ui) .seams-receipt-track::after {
5472
5518
  transition: none;
5473
5519
  }
@@ -5479,6 +5525,20 @@ html:has([data-seams-confirm-surface='wallet-iframe'][data-seams-confirm-variant
5479
5525
  }
5480
5526
  }
5481
5527
 
5528
+ /* Shared receipt content stays visible above the moving surface. */
5529
+ .seams-wallet-ui[data-receipt-morphing] .seams-confirmation-modal,
5530
+ .seams-wallet-ui[data-receipt-morphing] .seams-confirmation-modal .modal-container-root {
5531
+ overflow: visible;
5532
+ }
5533
+ .seams-wallet-ui[data-receipt-morphing] .seams-confirmation-modal .modal-container-root {
5534
+ z-index: 1;
5535
+ background: transparent;
5536
+ box-shadow: none;
5537
+ }
5538
+ .seams-wallet-ui[data-receipt-morphing] .seams-transaction-toast {
5539
+ background: transparent;
5540
+ }
5541
+
5482
5542
 
5483
5543
  /* recovery-backup-surface */
5484
5544
  /*
@@ -7,15 +7,15 @@ import { _ as parseUnixMs, d as parseEd25519PublicKeyB64u, f as parseEnvelopeCip
7
7
  import { M as WALLET_CUSTODY_ED25519_MATERIAL_KEY_KIND, h as prepareWalletRecoveryPasskeyPublication, m as prepareWalletRecoveryEmailOtpPublication } from "./accountLifecycle-Ddavc_FC.js";
8
8
  import { t as toAccountId } from "./accountIds-Ck4GAQfm.js";
9
9
  import { o as normalizeThresholdRuntimePolicyScope, x as walletAuthorityDigestsMatchV1 } from "./sessionPolicy-B4FsPuk2.js";
10
- import { At as buildEmailOtpWalletAuthAuthority, Ht as walletAuthAuthorityRef, Sn as routerAbMpcMaterialActivationRefToWire, ft as parseRouterAbEcdsaRegistrationActivationReceiptV1, it as parseRouterAbEcdsaDerivationPublicCapabilityV1, xn as routerAbMpcMaterialActivationRefFromWire, yn as parseRouterAbMpcMaterialActivationRef } from "./ecdsaPresignLifecycle-D_KCktCj.js";
10
+ import { At as buildEmailOtpWalletAuthAuthority, Cn as routerAbMpcMaterialActivationRefToWire, Ht as walletAuthAuthorityRef, Sn as routerAbMpcMaterialActivationRefFromWire, bn as parseRouterAbMpcMaterialActivationRef, ft as parseRouterAbEcdsaRegistrationActivationReceiptV1, it as parseRouterAbEcdsaDerivationPublicCapabilityV1 } from "./ecdsaPresignLifecycle-CnSnzoRJ.js";
11
11
  import { l as parseDeviceId } from "./capabilityKinds-jwCEaqBU.js";
12
12
  import { St as parseSdkEcdsaDerivationThresholdKeyId, bt as parseSdkEcdsaDerivationSigningRootId, gt as parseEcdsaServerGeneration, vt as computeEcdsaDerivationRoleLocalRelayerKeyId, xt as parseSdkEcdsaDerivationSigningRootVersion, yt as ecdsaClientRootPublicKey33B64uFromString } from "./evmFamilyEcdsaIdentity-_kuKSW35.js";
13
13
  import { d as parsePasskeyCustodyEnvelopeRecord } from "./passkey-custody-BaHyYMhj.js";
14
- import { g as prepareWalletCustodyEcdsaContinuity, s as IndexedDBManager, y as pendingWalletRecoveryCommitIdentityMatches } from "./ed25519SeedMaterial-0VmS6K9P.js";
14
+ import { g as prepareWalletCustodyEcdsaContinuity, s as IndexedDBManager, y as pendingWalletRecoveryCommitIdentityMatches } from "./ed25519SeedMaterial-Cghz8-XB.js";
15
15
  import { n as PASSKEY_PRF_SECOND_SALT_V1, t as PASSKEY_PRF_FIRST_SALT_V1 } from "./signingSessionSeal-CdtgXHSL.js";
16
16
  import { n as parseEmailOtpChallengeDelivery } from "./challengeDelivery-BjLKoou3.js";
17
17
  import { o as redactedPasskeyRegistrationCredential } from "./helpers-DpRjHMBx.js";
18
- import { S as buildEcdsaRoleLocalPublicFacts } from "./ecdsaCapabilityManifest-DA_fklIs.js";
18
+ import { S as buildEcdsaRoleLocalPublicFacts } from "./ecdsaCapabilityManifest-C8itxV9S.js";
19
19
  import { n as buildRelayerJsonPostRequestInit, r as normalizeRelayerBaseUrl } from "./relayerHttp-LsVTZCxA.js";
20
20
  //#region ../shared-ts/src/wallet-recovery/walletRecoveryTarget.ts
21
21
  function parseWalletRecoveryTargetV1(raw) {
@@ -1,4 +1,4 @@
1
- import { t as cacheCredentialBoundarySetupExportPrfFirst } from "./prfCache-Dwwauj4v.js";
1
+ import { t as cacheCredentialBoundarySetupExportPrfFirst } from "./prfCache-CgAr-VEU.js";
2
2
  //#region src/core/signingEngine/session/passkey/warmSessionHydration.ts
3
3
  function createWarmSessionHydrationService(deps) {
4
4
  return { hydrateSigningSession: (input) => cacheCredentialBoundarySetupExportPrfFirst(deps.getWarmSessionMaterialWriter(), input) };
@@ -17,6 +17,18 @@ function sameRouterAbEd25519YaoActivationBindingV1(left, right) {
17
17
  function sameRouterAbEd25519YaoByteSequence(left, right) {
18
18
  return left.length === right.length && left.every((value, index) => value === right[index]);
19
19
  }
20
+ function sameRouterAbEd25519YaoParticipantPairV1(left, right) {
21
+ return left[0] === right[0] && left[1] === right[1];
22
+ }
23
+ function sameRouterAbEd25519YaoLifecycleScopeV1(left, right) {
24
+ return left.lifecycle_id === right.lifecycle_id && left.root_share_epoch === right.root_share_epoch && left.account_id === right.account_id && left.threshold_session_id === right.threshold_session_id && left.signer_set_id === right.signer_set_id && left.signing_worker_id === right.signing_worker_id && sameRouterAbMpcMaterialActivationRef(left.material_activation, right.material_activation);
25
+ }
26
+ function sameRouterAbEd25519YaoApplicationBindingFactsV1(left, right) {
27
+ return left.wallet_id === right.wallet_id && left.near_ed25519_signing_key_id === right.near_ed25519_signing_key_id && left.signing_root_id === right.signing_root_id && left.key_creation_signer_slot === right.key_creation_signer_slot;
28
+ }
29
+ function sameRouterAbEd25519YaoRegistrationAdmissionRequestV1(left, right) {
30
+ return sameRouterAbEd25519YaoLifecycleScopeV1(left.scope, right.scope) && sameRouterAbEd25519YaoApplicationBindingFactsV1(left.application_binding, right.application_binding) && sameRouterAbEd25519YaoParticipantPairV1(left.participant_ids, right.participant_ids);
31
+ }
20
32
  const REGISTRATION_WORK_KIND = "registration_prepare";
21
33
  const REGISTRATION_PRIMITIVE_REQUEST_KIND = "registration";
22
34
  const RECOVERY_WORK_KIND = "recovery";
@@ -803,6 +815,6 @@ function parseEncryptedPackageValue(value) {
803
815
  return parseEncryptedPackage(value, "encrypted_package");
804
816
  }
805
817
  //#endregion
806
- export { ED25519_YAO_CONTROL_CIPHERTEXT_MAX_BYTES_V1, ROUTER_AB_ED25519_YAO_EMAIL_OTP_RECOVERY_BOOTSTRAP_KIND_V1, ROUTER_AB_ED25519_YAO_EXPORT_ADMISSION_PATH_V1, ROUTER_AB_ED25519_YAO_EXPORT_EXECUTE_PATH_V1, ROUTER_AB_ED25519_YAO_RECOVERY_ACTIVATE_PATH_V1, ROUTER_AB_ED25519_YAO_RECOVERY_ADMISSION_PATH_V1, ROUTER_AB_ED25519_YAO_RECOVERY_CHALLENGE_ID_HEADER_V1, ROUTER_AB_ED25519_YAO_RECOVERY_EXECUTE_PATH_V1, ROUTER_AB_ED25519_YAO_REGISTRATION_ADMISSION_PATH_V1, ROUTER_AB_ED25519_YAO_REGISTRATION_EXECUTE_PATH_V1, ROUTER_AB_ED25519_YAO_WARM_RECOVERY_BOOTSTRAP_PATH_V1, deriveRouterAbEd25519YaoApplicationBindingDigestV1, parseRouterAbEd25519YaoActivationAdmissionReceiptV1, parseRouterAbEd25519YaoActivationExecuteRequestV1, parseRouterAbEd25519YaoActivationPublicReceiptV1, parseRouterAbEd25519YaoActivationResultV1, parseRouterAbEd25519YaoApplicationBindingFactsV1, parseRouterAbEd25519YaoCeremonyBindingV1, parseRouterAbEd25519YaoEncryptedPackageV1, parseRouterAbEd25519YaoExportAdmissionReceiptV1, parseRouterAbEd25519YaoExportExecuteRequestV1, parseRouterAbEd25519YaoExportResultV1, parseRouterAbEd25519YaoParticipantIdsV1, parseRouterAbEd25519YaoRecoveryActivationAdmissionReceiptV1, parseRouterAbEd25519YaoRecoveryActivationExecuteRequestV1, parseRouterAbEd25519YaoRecoveryActivationReceiptV1, parseRouterAbEd25519YaoRecoveryActivationResultV1, parseRouterAbEd25519YaoRecoveryAdmissionRequestV1, parseRouterAbEd25519YaoRegistrationActivationAdmissionReceiptV1, parseRouterAbEd25519YaoRegistrationActivationExecuteRequestV1, parseRouterAbEd25519YaoRegistrationActivationResultV1, parseRouterAbEd25519YaoRegistrationAdmissionRequestV1, parseRouterAbEd25519YaoWarmRecoveryBootstrapRequestV1, sameRouterAbEd25519YaoActivationBindingV1 };
818
+ export { ED25519_YAO_CONTROL_CIPHERTEXT_MAX_BYTES_V1, ROUTER_AB_ED25519_YAO_EMAIL_OTP_RECOVERY_BOOTSTRAP_KIND_V1, ROUTER_AB_ED25519_YAO_EXPORT_ADMISSION_PATH_V1, ROUTER_AB_ED25519_YAO_EXPORT_EXECUTE_PATH_V1, ROUTER_AB_ED25519_YAO_RECOVERY_ACTIVATE_PATH_V1, ROUTER_AB_ED25519_YAO_RECOVERY_ADMISSION_PATH_V1, ROUTER_AB_ED25519_YAO_RECOVERY_CHALLENGE_ID_HEADER_V1, ROUTER_AB_ED25519_YAO_RECOVERY_EXECUTE_PATH_V1, ROUTER_AB_ED25519_YAO_REGISTRATION_ADMISSION_PATH_V1, ROUTER_AB_ED25519_YAO_REGISTRATION_EXECUTE_PATH_V1, ROUTER_AB_ED25519_YAO_WARM_RECOVERY_BOOTSTRAP_PATH_V1, deriveRouterAbEd25519YaoApplicationBindingDigestV1, parseRouterAbEd25519YaoActivationAdmissionReceiptV1, parseRouterAbEd25519YaoActivationExecuteRequestV1, parseRouterAbEd25519YaoActivationPublicReceiptV1, parseRouterAbEd25519YaoActivationResultV1, parseRouterAbEd25519YaoApplicationBindingFactsV1, parseRouterAbEd25519YaoCeremonyBindingV1, parseRouterAbEd25519YaoEncryptedPackageV1, parseRouterAbEd25519YaoExportAdmissionReceiptV1, parseRouterAbEd25519YaoExportExecuteRequestV1, parseRouterAbEd25519YaoExportResultV1, parseRouterAbEd25519YaoParticipantIdsV1, parseRouterAbEd25519YaoRecoveryActivationAdmissionReceiptV1, parseRouterAbEd25519YaoRecoveryActivationExecuteRequestV1, parseRouterAbEd25519YaoRecoveryActivationReceiptV1, parseRouterAbEd25519YaoRecoveryActivationResultV1, parseRouterAbEd25519YaoRecoveryAdmissionRequestV1, parseRouterAbEd25519YaoRegistrationActivationAdmissionReceiptV1, parseRouterAbEd25519YaoRegistrationActivationExecuteRequestV1, parseRouterAbEd25519YaoRegistrationActivationResultV1, parseRouterAbEd25519YaoRegistrationAdmissionRequestV1, parseRouterAbEd25519YaoWarmRecoveryBootstrapRequestV1, sameRouterAbEd25519YaoActivationBindingV1, sameRouterAbEd25519YaoRegistrationAdmissionRequestV1 };
807
819
 
808
820
  //# sourceMappingURL=routerAbEd25519Yao.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
3
  "packageName": "@seams/wallet",
4
- "packageVersion": "0.6.0",
4
+ "packageVersion": "0.6.2",
5
5
  "assetRoot": "dist/public",
6
6
  "routeClasses": [
7
7
  {
@@ -722,22 +722,6 @@ var NearImplicitAccountFundingRequiredError = class extends Error {
722
722
  });
723
723
  }
724
724
  };
725
- async function readImplicitNearAccountFundingState(input) {
726
- try {
727
- await input.nearClient.viewAccount(input.subject.nearAccountId);
728
- return { kind: "funded" };
729
- } catch (error) {
730
- if (!isMissingNearAccessKeyError(errorMessage(error))) throw error;
731
- }
732
- return {
733
- kind: "needs_funding",
734
- error: new NearImplicitAccountFundingRequiredError({
735
- walletId: input.subject.walletId,
736
- nearAccountId: input.subject.nearAccountId,
737
- nearPublicKeyStr: input.subject.publicKey
738
- })
739
- };
740
- }
741
725
  var NearAccountLookupFailedError = class extends Error {
742
726
  constructor(args) {
743
727
  super(args.message || `NEAR account ${args.nearAccountId} access key lookup failed.`);
@@ -771,16 +755,11 @@ async function fetchNearFreshDataForState(input) {
771
755
  let txBlockHash = previousTransactionContext?.txBlockHash;
772
756
  const fetchAccessKey = isNonceStale || !accessKeyInfo;
773
757
  const fetchBlock = isBlockStale || !txBlockHeight || !txBlockHash;
774
- const fetchImplicitAccountFunding = isImplicitNearAccountId(capturedSubject.nearAccountId) && (input.force || fetchAccessKey || !readyContext);
775
758
  let maybeAccessKey = accessKeyInfo ?? null;
776
759
  let maybeBlock = null;
777
760
  let accessKeyError = null;
778
761
  let blockError = null;
779
762
  const tasks = [];
780
- const implicitFundingPromise = fetchImplicitAccountFunding ? readImplicitNearAccountFundingState({
781
- nearClient: input.nearClient,
782
- subject: capturedSubject
783
- }) : null;
784
763
  if (fetchAccessKey) tasks.push((async () => {
785
764
  try {
786
765
  maybeAccessKey = await input.nearClient.viewAccessKey(capturedSubject.nearAccountId, capturedSubject.publicKey);
@@ -814,14 +793,6 @@ async function fetchNearFreshDataForState(input) {
814
793
  }
815
794
  })());
816
795
  if (tasks.length > 0) await Promise.all(tasks);
817
- const implicitFunding = implicitFundingPromise ? await implicitFundingPromise : null;
818
- if (implicitFunding?.kind === "needs_funding") {
819
- setNearImplicitUnfunded({
820
- state,
821
- subject: capturedSubject
822
- });
823
- throw implicitFunding.error;
824
- }
825
796
  if (accessKeyError) {
826
797
  if (accessKeyError instanceof NearImplicitAccountFundingRequiredError) setNearImplicitUnfunded({
827
798
  state,
@@ -10,7 +10,7 @@ import { a as toActionArgsWasm, i as isActionArgsWasm, r as fromTransactionInput
10
10
  import { i as orderActionForDigest, r as computeUiIntentDigestFromTxs } from "./intentDigest-A1MbbJPu.js";
11
11
  import { t as createWalletIframeSurfaceMeasurementReporter } from "./surface-measurement-reporter-D7BNehf4.js";
12
12
  import { r as appearanceTokenCssRule } from "./csp-stylesheet-DLj_a6t_.js";
13
- import { n as buildNearNonceLane } from "./NonceCoordinator-C7QltTDC.js";
13
+ import { n as buildNearNonceLane } from "./NonceCoordinator-C7mqpJiU.js";
14
14
  import { n as SigningAuthPlanKind, s as signingAuthModeFromSigningAuthPlan, t as formatEmailOtpSentText } from "./promptText-BEgOkGxB.js";
15
15
  import { a as retainTransactionActivity } from "./transaction-activity-DKgIGpKG.js";
16
16
  import { a as R, i as M, n as confirmationDocumentStyles, o as S, r as C, t as u } from "./jsxRuntime.module-FAP0NE9p.js";
@@ -3476,12 +3476,16 @@ var TransactionReceipt = class extends C {
3476
3476
  if (receipt.view === "toast") return /* @__PURE__ */ u("div", {
3477
3477
  class: "seams-transaction-toast",
3478
3478
  "data-completed-stages": completedStages,
3479
+ "data-stage": receipt.state.kind,
3479
3480
  "data-pending": pending,
3480
3481
  children: [
3481
3482
  /* @__PURE__ */ u("div", {
3482
3483
  class: "seams-toast-progress",
3483
3484
  "aria-hidden": "true",
3484
- children: /* @__PURE__ */ u("span", {})
3485
+ children: /* @__PURE__ */ u("span", {
3486
+ class: "seams-toast-progress-fill",
3487
+ children: pending && /* @__PURE__ */ u("span", { class: "seams-toast-progress-active" })
3488
+ })
3485
3489
  }),
3486
3490
  /* @__PURE__ */ u("span", {
3487
3491
  class: "seams-receipt-symbol",
@@ -3508,17 +3512,12 @@ var TransactionReceipt = class extends C {
3508
3512
  children: [
3509
3513
  /* @__PURE__ */ u("div", {
3510
3514
  class: "seams-review-toolbar",
3511
- children: [/* @__PURE__ */ u("span", { children: "Transaction receipt" }), /* @__PURE__ */ u("div", { children: [/* @__PURE__ */ u("button", {
3515
+ children: [/* @__PURE__ */ u("span", { children: "Transaction receipt" }), /* @__PURE__ */ u("button", {
3512
3516
  type: "button",
3513
3517
  "aria-label": "Minimize transaction",
3514
3518
  onClick: this.minimize,
3515
3519
  children: /* @__PURE__ */ u(ReviewIcon, { kind: "minimize" })
3516
- }), /* @__PURE__ */ u("button", {
3517
- type: "button",
3518
- "aria-label": receiptIsPending(receipt.state) ? "Minimize transaction" : "Close receipt",
3519
- onClick: this.close,
3520
- children: /* @__PURE__ */ u(ReviewIcon, { kind: "close" })
3521
- })] })]
3520
+ })]
3522
3521
  }),
3523
3522
  /* @__PURE__ */ u("div", {
3524
3523
  class: "seams-receipt-heading",
@@ -3578,33 +3577,30 @@ var TransactionReceipt = class extends C {
3578
3577
  })
3579
3578
  ]
3580
3579
  }),
3581
- /* @__PURE__ */ u("div", {
3582
- class: "seams-receipt-box",
3583
- children: /* @__PURE__ */ u(ReviewDisclosure, {
3584
- label: "Receipt details",
3585
- children: /* @__PURE__ */ u("dl", {
3586
- class: "seams-review-fields",
3587
- children: [
3588
- data.model?.signerAccount && /* @__PURE__ */ u("div", { children: [/* @__PURE__ */ u("dt", { children: "From" }), /* @__PURE__ */ u("dd", {
3589
- class: "seams-review-recipient",
3590
- children: /* @__PURE__ */ u(CopyReviewValue, {
3591
- value: data.model.signerAccount,
3592
- address: true,
3593
- label: `Copy signer address ${data.model.signerAccount}`
3594
- })
3595
- })] }),
3596
- recipient && /* @__PURE__ */ u("div", { children: [/* @__PURE__ */ u("dt", { children: "To" }), /* @__PURE__ */ u("dd", {
3597
- class: "seams-review-recipient",
3598
- children: /* @__PURE__ */ u(CopyReviewValue, {
3599
- value: recipient,
3600
- address: true,
3601
- label: `Copy recipient address ${recipient}`
3602
- })
3603
- })] }),
3604
- receipt.state.hash && /* @__PURE__ */ u("div", { children: [/* @__PURE__ */ u("dt", { children: "Transaction" }), /* @__PURE__ */ u("dd", { children: [/* @__PURE__ */ u(ReviewAddress, { value: receipt.state.hash }), /* @__PURE__ */ u(CopyReviewValue, { value: receipt.state.hash })] })] }),
3605
- /* @__PURE__ */ u("div", { children: [/* @__PURE__ */ u("dt", { children: "Status" }), /* @__PURE__ */ u("dd", { children: heading })] })
3606
- ]
3607
- })
3580
+ /* @__PURE__ */ u(ReviewDisclosure, {
3581
+ label: "Receipt details",
3582
+ children: /* @__PURE__ */ u("dl", {
3583
+ class: "seams-review-fields",
3584
+ children: [
3585
+ data.model?.signerAccount && /* @__PURE__ */ u("div", { children: [/* @__PURE__ */ u("dt", { children: "From" }), /* @__PURE__ */ u("dd", {
3586
+ class: "seams-review-recipient",
3587
+ children: /* @__PURE__ */ u(CopyReviewValue, {
3588
+ value: data.model.signerAccount,
3589
+ address: true,
3590
+ label: `Copy signer address ${data.model.signerAccount}`
3591
+ })
3592
+ })] }),
3593
+ recipient && /* @__PURE__ */ u("div", { children: [/* @__PURE__ */ u("dt", { children: "To" }), /* @__PURE__ */ u("dd", {
3594
+ class: "seams-review-recipient",
3595
+ children: /* @__PURE__ */ u(CopyReviewValue, {
3596
+ value: recipient,
3597
+ address: true,
3598
+ label: `Copy recipient address ${recipient}`
3599
+ })
3600
+ })] }),
3601
+ receipt.state.hash && /* @__PURE__ */ u("div", { children: [/* @__PURE__ */ u("dt", { children: "Transaction" }), /* @__PURE__ */ u("dd", { children: [/* @__PURE__ */ u(ReviewAddress, { value: receipt.state.hash }), /* @__PURE__ */ u(CopyReviewValue, { value: receipt.state.hash })] })] }),
3602
+ /* @__PURE__ */ u("div", { children: [/* @__PURE__ */ u("dt", { children: "Status" }), /* @__PURE__ */ u("dd", { children: heading })] })
3603
+ ]
3608
3604
  })
3609
3605
  }),
3610
3606
  /* @__PURE__ */ u("button", {
@@ -3664,6 +3660,27 @@ function ReceiptStep(props) {
3664
3660
  //#endregion
3665
3661
  //#region src/core/signingEngine/uiConfirm/ui/preact/mountConfirmationSurface.tsx
3666
3662
  /** @jsxImportSource preact */
3663
+ const RECEIPT_MORPH_DURATION_MS = 360;
3664
+ const RECEIPT_MORPH_EASING = "cubic-bezier(0.22, 1, 0.36, 1)";
3665
+ const RECEIPT_ANCHORS = [
3666
+ ".seams-receipt-symbol",
3667
+ "[role=\"status\"]",
3668
+ ".seams-review-amount"
3669
+ ];
3670
+ function captureReceiptAnchors(surface) {
3671
+ const anchors = [];
3672
+ for (const selector of RECEIPT_ANCHORS) {
3673
+ const element = surface.querySelector(selector);
3674
+ if (!element) continue;
3675
+ anchors.push({
3676
+ selector,
3677
+ text: element.textContent,
3678
+ bounds: element.getBoundingClientRect(),
3679
+ fontSize: getComputedStyle(element).fontSize
3680
+ });
3681
+ }
3682
+ return anchors;
3683
+ }
3667
3684
  let nextSurfaceId = 0;
3668
3685
  var MountedConfirmationSurface = class {
3669
3686
  constructor(input) {
@@ -3675,6 +3692,7 @@ var MountedConfirmationSurface = class {
3675
3692
  this.receiptMotion = [];
3676
3693
  this.receiptShell?.remove();
3677
3694
  this.receiptShell = null;
3695
+ this.element.removeAttribute("data-receipt-morphing");
3678
3696
  };
3679
3697
  this.dispose = () => {
3680
3698
  if (this.state.kind === "disposed") return;
@@ -3753,6 +3771,7 @@ var MountedConfirmationSurface = class {
3753
3771
  const viewChanged = this.receipt?.view !== model.view;
3754
3772
  const previousShell = this.receiptShell ?? this.element.querySelector(".modal-container-root");
3755
3773
  const previousBounds = previousShell?.getBoundingClientRect();
3774
+ const anchors = viewChanged ? captureReceiptAnchors(this.element) : [];
3756
3775
  const previousRadius = previousShell ? getComputedStyle(previousShell).borderRadius : "26px";
3757
3776
  if (viewChanged) this.clearReceiptMotion();
3758
3777
  this.receipt = model;
@@ -3768,6 +3787,7 @@ var MountedConfirmationSurface = class {
3768
3787
  shell.setAttribute("aria-hidden", "true");
3769
3788
  this.element.appendChild(shell);
3770
3789
  this.receiptShell = shell;
3790
+ this.element.setAttribute("data-receipt-morphing", "");
3771
3791
  const morph = shell.animate([{
3772
3792
  left: `${previousBounds.left}px`,
3773
3793
  top: `${previousBounds.top}px`,
@@ -3781,18 +3801,48 @@ var MountedConfirmationSurface = class {
3781
3801
  height: `${bounds.height}px`,
3782
3802
  borderRadius: getComputedStyle(target).borderRadius
3783
3803
  }], {
3784
- duration: 360,
3785
- easing: "cubic-bezier(0.22, 1, 0.36, 1)",
3804
+ duration: RECEIPT_MORPH_DURATION_MS,
3805
+ easing: RECEIPT_MORPH_EASING,
3786
3806
  fill: "both"
3787
3807
  });
3788
- const reveal = target.animate([{ opacity: 0 }, { opacity: 1 }], {
3789
- duration: 140,
3790
- delay: 220,
3791
- fill: "backwards",
3792
- easing: "ease-out"
3793
- });
3794
- this.receiptMotion = [morph, reveal];
3795
- reveal.onfinish = this.clearReceiptMotion;
3808
+ this.receiptMotion = [morph];
3809
+ const shared = /* @__PURE__ */ new Set();
3810
+ for (const anchor of anchors) {
3811
+ const element = target.querySelector(anchor.selector);
3812
+ if (!element || element.textContent !== anchor.text) continue;
3813
+ const destination = element.getBoundingClientRect();
3814
+ shared.add(element);
3815
+ const scale = parseFloat(anchor.fontSize) / parseFloat(getComputedStyle(element).fontSize);
3816
+ this.receiptMotion.push(element.animate([{
3817
+ transform: `translate(${anchor.bounds.left - destination.left}px, ${anchor.bounds.top - destination.top}px) scale(${scale})`,
3818
+ transformOrigin: "top left"
3819
+ }, {
3820
+ transform: "translate(0, 0) scale(1)",
3821
+ transformOrigin: "top left"
3822
+ }], {
3823
+ duration: RECEIPT_MORPH_DURATION_MS,
3824
+ easing: RECEIPT_MORPH_EASING
3825
+ }));
3826
+ }
3827
+ const details = target.querySelectorAll(".seams-transaction-receipt > :not(.seams-receipt-heading), .seams-receipt-heading > .seams-receipt-symbol, .seams-receipt-heading h2, .seams-receipt-heading p, .seams-transaction-toast > :not(.seams-transaction-toast-text, .seams-toast-progress), .seams-transaction-toast-text > *");
3828
+ let order = 0;
3829
+ for (const detail of details) {
3830
+ if (shared.has(detail)) continue;
3831
+ this.receiptMotion.push(detail.animate([{
3832
+ opacity: 0,
3833
+ transform: "translateY(8px)"
3834
+ }, {
3835
+ opacity: 1,
3836
+ transform: "translateY(0)"
3837
+ }], {
3838
+ duration: 120,
3839
+ delay: model.view === "toast" ? 240 : 180 + Math.min(order, 4) * 15,
3840
+ fill: "backwards",
3841
+ easing: "ease-out"
3842
+ }));
3843
+ order += 1;
3844
+ }
3845
+ morph.onfinish = this.clearReceiptMotion;
3796
3846
  }
3797
3847
  }
3798
3848
  remove() {
@@ -1,6 +1,6 @@
1
1
  import { c as normalizeTrimmedString } from "./normalize-BephcEIF.js";
2
2
  import { n as DEFAULT_THRESHOLD_SESSION_TTL_MS } from "./sessionPolicy-B4FsPuk2.js";
3
- import { n as UserVerificationPolicy } from "./ecdsaPresignLifecycle-D_KCktCj.js";
3
+ import { n as UserVerificationPolicy } from "./ecdsaPresignLifecycle-CnSnzoRJ.js";
4
4
  import { a as SIGNING_SESSION_SEAL_ALG, o as SIGNING_SESSION_SEAL_GROUP_ID } from "./signingSessionSeal-CdtgXHSL.js";
5
5
  import { a as resolveIntegerInRange, i as resolveChains, n as resolveAppearanceTheme, o as resolveThemePalette, r as resolveBoolean, t as copyEcdsaSignerProvisioningDefaults } from "./configHelpers-DB73zYvO.js";
6
6
  //#region src/core/browser/walletIframe/hostVariant.ts
@@ -1,5 +1,5 @@
1
1
  import { i as normalizeHexData } from "./bytes-CwytAKz8.js";
2
- import { g as selectorFromHexData, h as resolveFunctionDisplayName, m as formatCalldataForDisplay, p as formatCompactGas } from "./signatureUses-C1o1pDql.js";
2
+ import { g as selectorFromHexData, h as resolveFunctionDisplayName, m as formatCalldataForDisplay, p as formatCompactGas } from "./signatureUses-BY1IY7uz.js";
3
3
  //#region src/core/signingEngine/chains/tempo/display.ts
4
4
  function toSafeJson(value) {
5
5
  try {
@@ -3,7 +3,7 @@ import { i as base64UrlEncode, r as base64UrlDecode } from "./base64-Clm8C-e9.js
3
3
  import { P as isoTimestampFromUnixMs } from "./registrationIntent-DwAIMQYh.js";
4
4
  import { a as thresholdEcdsaChainTargetFromRequest, c as toWalletId, o as thresholdEcdsaChainTargetKey, s as thresholdEcdsaChainTargetsEqual } from "./ecdsaChainTarget-BOTPGIU_.js";
5
5
  import { a as deriveSigningRootId, o as normalizeRuntimePolicyScope } from "./participants-Bcnsa_ip.js";
6
- import { Cn as sameRouterAbMpcMaterialActivationRef, Sn as routerAbMpcMaterialActivationRefToWire, ft as parseRouterAbEcdsaRegistrationActivationReceiptV1, it as parseRouterAbEcdsaDerivationPublicCapabilityV1, xn as routerAbMpcMaterialActivationRefFromWire } from "./ecdsaPresignLifecycle-D_KCktCj.js";
6
+ import { Cn as routerAbMpcMaterialActivationRefToWire, Sn as routerAbMpcMaterialActivationRefFromWire, ft as parseRouterAbEcdsaRegistrationActivationReceiptV1, it as parseRouterAbEcdsaDerivationPublicCapabilityV1, wn as sameRouterAbMpcMaterialActivationRef } from "./ecdsaPresignLifecycle-CnSnzoRJ.js";
7
7
  import { pt as parseEcdsaLifecycleId, st as parseEcdsaActivationDigest, x as toRpId } from "./evmFamilyEcdsaIdentity-_kuKSW35.js";
8
8
  import { a as toEcdsaDerivationThresholdKeyId, i as toEcdsaDerivationSigningRootVersion, o as toEmailOtpAuthSubjectId, r as toEcdsaDerivationSigningRootId } from "./challengeDelivery-BjLKoou3.js";
9
9
  //#region src/core/signingEngine/session/persistence/ecdsaRoleLocalRecords.ts