@seams/wallet 0.6.0 → 0.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (128) 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 +170 -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 +88 -4
  8. package/dist/esm/core/signingEngine/session/passkey/prfCache.js +24 -4
  9. package/dist/esm/core/signingEngine/uiConfirm/PasskeyMpcSessionDurableState.js +5 -3
  10. package/dist/esm/core/signingEngine/uiConfirm/PasskeyMpcSessionManager.js +40 -3
  11. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/TransactionReceipt.js +31 -35
  12. package/dist/esm/core/signingEngine/uiConfirm/ui/preact/mountConfirmationSurface.js +64 -10
  13. package/dist/esm/core/signingEngine/walletCustody/ceremonyDriver.js +1 -1
  14. package/dist/esm/react/SeamsWeb/SeamsWeb.js +1 -0
  15. package/dist/esm/react/SeamsWeb/operations/registration/registration.js +170 -33
  16. package/dist/esm/react/SeamsWeb/operations/registration/registrationTiming.js +33 -2
  17. package/dist/esm/react/SeamsWeb/signingSurface/BrowserSigningSurface.js +3 -0
  18. package/dist/esm/react/SeamsWeb/walletIframe/client/overlay/overlay-controller.js +63 -10
  19. package/dist/esm/react/core/rpcClients/relayer/walletRegistration.js +88 -4
  20. package/dist/esm/react/core/signingEngine/session/passkey/prfCache.js +24 -4
  21. package/dist/esm/react/core/signingEngine/uiConfirm/PasskeyMpcSessionDurableState.js +5 -3
  22. package/dist/esm/react/core/signingEngine/uiConfirm/PasskeyMpcSessionManager.js +40 -3
  23. package/dist/esm/react/core/signingEngine/uiConfirm/ui/preact/TransactionReceipt.js +31 -35
  24. package/dist/esm/react/core/signingEngine/uiConfirm/ui/preact/mountConfirmationSurface.js +64 -10
  25. package/dist/esm/react/core/signingEngine/walletCustody/ceremonyDriver.js +1 -1
  26. package/dist/esm/react/shared-ts/src/utils/routerAbEd25519Yao.js +13 -1
  27. package/dist/esm/sdk/{adapters-Dgy69gf0.js → adapters-LgE4nnos.js} +95 -45
  28. package/dist/esm/sdk/{defaultConfigs-DJCLCrg9.js → defaultConfigs-CyNOW4Sy.js} +1 -1
  29. package/dist/{public/sdk/ecdsaCapabilityManifest-DA_fklIs.js → esm/sdk/ecdsaCapabilityManifest-C8itxV9S.js} +1 -1
  30. package/dist/{public/sdk/ecdsaPresignLifecycle-D_KCktCj.js → esm/sdk/ecdsaPresignLifecycle-CnSnzoRJ.js} +13 -1
  31. package/dist/esm/sdk/{ed25519SeedMaterial-0VmS6K9P.js → ed25519SeedMaterial-Cghz8-XB.js} +2 -2
  32. package/dist/esm/sdk/{exactSessionState-C2aAv_ED.js → exactSessionState-Bt0HforB.js} +64 -11
  33. package/dist/esm/sdk/{export-viewer-host-NhjFdpm-.js → export-viewer-host-B3K81QGA.js} +1 -1
  34. package/dist/esm/sdk/{host-DACTruOj.js → host-Y_xmIzPO.js} +2 -2
  35. package/dist/esm/sdk/{localOnly-DTNq69fJ.js → localOnly-B5TYHJiq.js} +2 -2
  36. package/dist/{public/sdk/nearEd25519YaoMaterialActivation-4AuGG2DG.js → esm/sdk/nearEd25519YaoMaterialActivation-BLxVE6E5.js} +89 -5
  37. package/dist/esm/sdk/{nearEd25519YaoSigningPreparation-jiGcQylO.js → nearEd25519YaoSigningPreparation-DX6xG-IW.js} +1 -1
  38. package/dist/esm/sdk/{prfCache-Dwwauj4v.js → prfCache-CgAr-VEU.js} +24 -4
  39. package/dist/{public/sdk/recovery-entrypoint-CFTX6PFZ.js → esm/sdk/recovery-entrypoint-D39R1avB.js} +3 -3
  40. package/dist/{public/sdk/registration-CuP1WmQu.js → esm/sdk/registration-BtPLgKHk.js} +1 -1
  41. package/dist/esm/sdk/{registration-D8nYJKec.js → registration-D-istkMZ.js} +253 -38
  42. package/dist/esm/sdk/{registrationPreparationPreload-DDe0sbZi.js → registrationPreparationPreload-CvnlDCVn.js} +2 -2
  43. package/dist/{public/sdk/router-DeX_cJ2f.js → esm/sdk/router-CeFS9SgT.js} +3 -3
  44. package/dist/{public/sdk/routerAbNormalSigning-BGpRKRAj.js → esm/sdk/routerAbNormalSigning-DktZKnf1.js} +1 -1
  45. package/dist/{public/sdk/runtime-auth-Ch00YcH5.js → esm/sdk/runtime-auth-B7z1ANNp.js} +8 -8
  46. package/dist/esm/sdk/{runtime-device-link-CEhVZYAw.js → runtime-device-link-B8HGDakg.js} +4 -4
  47. package/dist/esm/sdk/{runtime-ecdsa-tempo-B-qMRrmx.js → runtime-ecdsa-tempo-DKdS5-us.js} +5 -5
  48. package/dist/{public/sdk/runtime-email-otp-giyMPib8.js → esm/sdk/runtime-email-otp-D5bxhdyG.js} +4 -4
  49. package/dist/{public/sdk/runtime-export-CV-6G1Oy.js → esm/sdk/runtime-export--hvNrx8l.js} +4 -4
  50. package/dist/{public/sdk/runtime-near-DoDcS88O.js → esm/sdk/runtime-near-CEexHoug.js} +4 -4
  51. package/dist/{public/sdk/runtime-preferences-Canyenle.js → esm/sdk/runtime-preferences-BiqPp1lV.js} +4 -4
  52. package/dist/esm/sdk/{runtime-recovery-lWyILD1g.js → runtime-recovery-BYu1gDq_.js} +4 -4
  53. package/dist/esm/sdk/{runtimeContext-BdTaYxJD.js → runtimeContext-CH97jPZ0.js} +80 -37
  54. package/dist/{public/sdk/runtimeLoader-Dxn8UA8B.js → esm/sdk/runtimeLoader-BFAmJAbu.js} +9 -9
  55. package/dist/esm/sdk/{secp256k1-CQFsI3qQ.js → secp256k1-Cr1jBW1n.js} +3 -3
  56. package/dist/esm/sdk/{signEvmFamily-CZLET02E.js → signEvmFamily-Dxk4sBPY.js} +7 -7
  57. package/dist/esm/sdk/{signNear-BeUWiWm_.js → signNear-B0OCVKoH.js} +6 -6
  58. package/dist/esm/sdk/{signerLoader-C_w8vuhm.js → signerLoader-D0WU1jq_.js} +1 -1
  59. package/dist/{public/sdk/transactionState-Dd13hMoY.js → esm/sdk/transactionState-Bpm4GamO.js} +2 -2
  60. package/dist/esm/sdk/tx-confirm-ui.js +134 -93
  61. package/dist/esm/sdk/wallet-iframe-host-ecdsa.js +1 -1
  62. package/dist/esm/sdk/wallet-iframe-host-full.js +1 -1
  63. package/dist/esm/sdk/wallet-iframe-host-near.js +1 -1
  64. package/dist/esm/sdk/wallet-iframe-host-runtime.js +1 -1
  65. package/dist/esm/sdk/wallet-ui.css +85 -31
  66. package/dist/{public/sdk/walletRecoveryCommit-DNvzgeIX.js → esm/sdk/walletRecoveryCommit-G6w6N5RV.js} +3 -3
  67. package/dist/esm/sdk/{warmSessionHydration-CCKeEIIy.js → warmSessionHydration-DDNYdTCz.js} +1 -1
  68. package/dist/esm/shared-ts/src/utils/routerAbEd25519Yao.js +13 -1
  69. package/dist/public/headers.manifest.json +1 -1
  70. package/dist/public/sdk/{adapters-Dgy69gf0.js → adapters-LgE4nnos.js} +95 -45
  71. package/dist/public/sdk/{defaultConfigs-DJCLCrg9.js → defaultConfigs-CyNOW4Sy.js} +1 -1
  72. package/dist/{esm/sdk/ecdsaCapabilityManifest-DA_fklIs.js → public/sdk/ecdsaCapabilityManifest-C8itxV9S.js} +1 -1
  73. package/dist/{esm/sdk/ecdsaPresignLifecycle-D_KCktCj.js → public/sdk/ecdsaPresignLifecycle-CnSnzoRJ.js} +13 -1
  74. package/dist/public/sdk/{ed25519SeedMaterial-0VmS6K9P.js → ed25519SeedMaterial-Cghz8-XB.js} +2 -2
  75. package/dist/public/sdk/{exactSessionState-C2aAv_ED.js → exactSessionState-Bt0HforB.js} +64 -11
  76. package/dist/public/sdk/{export-viewer-host-NhjFdpm-.js → export-viewer-host-B3K81QGA.js} +1 -1
  77. package/dist/public/sdk/{host-DACTruOj.js → host-Y_xmIzPO.js} +2 -2
  78. package/dist/public/sdk/{localOnly-DTNq69fJ.js → localOnly-B5TYHJiq.js} +2 -2
  79. package/dist/{esm/sdk/nearEd25519YaoMaterialActivation-4AuGG2DG.js → public/sdk/nearEd25519YaoMaterialActivation-BLxVE6E5.js} +89 -5
  80. package/dist/public/sdk/{nearEd25519YaoSigningPreparation-jiGcQylO.js → nearEd25519YaoSigningPreparation-DX6xG-IW.js} +1 -1
  81. package/dist/public/sdk/{prfCache-Dwwauj4v.js → prfCache-CgAr-VEU.js} +24 -4
  82. package/dist/{esm/sdk/recovery-entrypoint-CFTX6PFZ.js → public/sdk/recovery-entrypoint-D39R1avB.js} +3 -3
  83. package/dist/{esm/sdk/registration-CuP1WmQu.js → public/sdk/registration-BtPLgKHk.js} +1 -1
  84. package/dist/public/sdk/{registration-D8nYJKec.js → registration-D-istkMZ.js} +253 -38
  85. package/dist/public/sdk/{registrationPreparationPreload-DDe0sbZi.js → registrationPreparationPreload-CvnlDCVn.js} +2 -2
  86. package/dist/{esm/sdk/router-DeX_cJ2f.js → public/sdk/router-CeFS9SgT.js} +3 -3
  87. package/dist/{esm/sdk/routerAbNormalSigning-BGpRKRAj.js → public/sdk/routerAbNormalSigning-DktZKnf1.js} +1 -1
  88. package/dist/{esm/sdk/runtime-auth-Ch00YcH5.js → public/sdk/runtime-auth-B7z1ANNp.js} +8 -8
  89. package/dist/public/sdk/{runtime-device-link-CEhVZYAw.js → runtime-device-link-B8HGDakg.js} +4 -4
  90. package/dist/public/sdk/{runtime-ecdsa-tempo-B-qMRrmx.js → runtime-ecdsa-tempo-DKdS5-us.js} +5 -5
  91. package/dist/{esm/sdk/runtime-email-otp-giyMPib8.js → public/sdk/runtime-email-otp-D5bxhdyG.js} +4 -4
  92. package/dist/{esm/sdk/runtime-export-CV-6G1Oy.js → public/sdk/runtime-export--hvNrx8l.js} +4 -4
  93. package/dist/{esm/sdk/runtime-near-DoDcS88O.js → public/sdk/runtime-near-CEexHoug.js} +4 -4
  94. package/dist/{esm/sdk/runtime-preferences-Canyenle.js → public/sdk/runtime-preferences-BiqPp1lV.js} +4 -4
  95. package/dist/public/sdk/{runtime-recovery-lWyILD1g.js → runtime-recovery-BYu1gDq_.js} +4 -4
  96. package/dist/public/sdk/{runtimeContext-BdTaYxJD.js → runtimeContext-CH97jPZ0.js} +80 -37
  97. package/dist/{esm/sdk/runtimeLoader-Dxn8UA8B.js → public/sdk/runtimeLoader-BFAmJAbu.js} +9 -9
  98. package/dist/public/sdk/{secp256k1-CQFsI3qQ.js → secp256k1-Cr1jBW1n.js} +3 -3
  99. package/dist/public/sdk/{signEvmFamily-CZLET02E.js → signEvmFamily-Dxk4sBPY.js} +7 -7
  100. package/dist/public/sdk/{signNear-BeUWiWm_.js → signNear-B0OCVKoH.js} +6 -6
  101. package/dist/public/sdk/{signerLoader-C_w8vuhm.js → signerLoader-D0WU1jq_.js} +1 -1
  102. package/dist/{esm/sdk/transactionState-Dd13hMoY.js → public/sdk/transactionState-Bpm4GamO.js} +2 -2
  103. package/dist/public/sdk/tx-confirm-ui.js +134 -93
  104. package/dist/public/sdk/wallet-iframe-host-ecdsa.js +1 -1
  105. package/dist/public/sdk/wallet-iframe-host-full.js +1 -1
  106. package/dist/public/sdk/wallet-iframe-host-near.js +1 -1
  107. package/dist/public/sdk/wallet-iframe-host-runtime.js +1 -1
  108. package/dist/public/sdk/wallet-ui.css +85 -31
  109. package/dist/{esm/sdk/walletRecoveryCommit-DNvzgeIX.js → public/sdk/walletRecoveryCommit-G6w6N5RV.js} +3 -3
  110. package/dist/public/sdk/{warmSessionHydration-CCKeEIIy.js → warmSessionHydration-DDNYdTCz.js} +1 -1
  111. package/dist/public/sdk/workers/passkey-mpc-session.worker.js +92 -8
  112. package/dist/public/wallet-assets.manifest.json +74 -74
  113. package/dist/public/wallet-service/index.html +4 -4
  114. package/dist/types/wallet/src/SeamsWeb/operations/registration/registration.d.ts +15 -0
  115. package/dist/types/wallet/src/SeamsWeb/operations/registration/registrationTiming.d.ts +11 -1
  116. package/dist/types/wallet/src/SeamsWeb/signingSurface/BrowserSigningSurface.d.ts +6 -0
  117. package/dist/types/wallet/src/SeamsWeb/signingSurface/ports.d.ts +8 -2
  118. package/dist/types/wallet/src/core/rpcClients/relayer/walletRegistration.d.ts +49 -10
  119. package/dist/types/wallet/src/core/signingEngine/session/passkey/prfCache.d.ts +7 -9
  120. package/dist/types/wallet/src/core/signingEngine/session/passkey/warmSessionHydration.d.ts +7 -8
  121. package/dist/types/wallet/src/core/signingEngine/session/passkey/warmSessionMaterialWriter.d.ts +9 -9
  122. package/dist/types/wallet/src/core/signingEngine/session/warmCapabilities/public.d.ts +7 -8
  123. package/dist/types/wallet/src/core/signingEngine/uiConfirm/PasskeyMpcSessionDurableState.d.ts +3 -0
  124. package/dist/types/wallet/src/core/signingEngine/uiConfirm/uiConfirm.types.d.ts +6 -0
  125. package/dist/types/wallet/src/core/signingEngine/workerManager/workers/shamir3pass/clientSealPreparation.d.ts +2 -0
  126. package/dist/types/wallet/src/core/types/secure-confirm-worker.d.ts +15 -1
  127. package/dist/workers/passkey-mpc-session.worker.js +92 -8
  128. package/package.json +1 -1
@@ -7,7 +7,7 @@ import { a as thresholdEcdsaChainTargetFromRequest, c as toWalletId, l as wallet
7
7
  import { n as SIGNER_AUTH_METHODS, r as SIGNER_KINDS } from "./signerDomain-DDLiwuYS.js";
8
8
  import { o as normalizeRuntimePolicyScope } from "./participants-Bcnsa_ip.js";
9
9
  import { o as normalizeThresholdRuntimePolicyScope, v as parseWalletAuthorityV1 } from "./sessionPolicy-B4FsPuk2.js";
10
- import { It as isPasskeyWalletAuthAuthority, On as parseWalletAddAuthMethodRegistrationOptions, R as parseWalletSessionOperationCredentialV1, Y as ROUTER_AB_ECDSA_DERIVATION_SESSION_ACTIVATION_PATH, _t as requireRouterAbEcdsaDerivationNormalSigningStateV1, d as parseActiveWalletSessionV1, dt as parseRouterAbEcdsaPostRegistrationSessionActivationResponseV1, hn as parseRouterAbEd25519YaoRegistrationAdmissionRequestV1, ht as parseRouterAbEcdsaStrictForwardedRegistrationResponseV1, it as parseRouterAbEcdsaDerivationPublicCapabilityV1, mt as parseRouterAbEcdsaRegistrationRequestFactsV1, pt as parseRouterAbEcdsaRegistrationPublicActivationReceiptV1, rt as parseRouterAbEcdsaDerivationNormalSigningStateV1, wn as parseWebAuthnAuthenticatorDeviceInfo, xn as routerAbMpcMaterialActivationRefFromWire, zt as parseWalletAuthAuthority } from "./ecdsaPresignLifecycle-D_KCktCj.js";
10
+ import { It as isPasskeyWalletAuthAuthority, R as parseWalletSessionOperationCredentialV1, Sn as routerAbMpcMaterialActivationRefFromWire, Tn as parseWebAuthnAuthenticatorDeviceInfo, Y as ROUTER_AB_ECDSA_DERIVATION_SESSION_ACTIVATION_PATH, _t as requireRouterAbEcdsaDerivationNormalSigningStateV1, d as parseActiveWalletSessionV1, dt as parseRouterAbEcdsaPostRegistrationSessionActivationResponseV1, hn as parseRouterAbEd25519YaoRegistrationAdmissionRequestV1, ht as parseRouterAbEcdsaStrictForwardedRegistrationResponseV1, it as parseRouterAbEcdsaDerivationPublicCapabilityV1, kn as parseWalletAddAuthMethodRegistrationOptions, mt as parseRouterAbEcdsaRegistrationRequestFactsV1, pt as parseRouterAbEcdsaRegistrationPublicActivationReceiptV1, rt as parseRouterAbEcdsaDerivationNormalSigningStateV1, zt as parseWalletAuthAuthority } from "./ecdsaPresignLifecycle-CnSnzoRJ.js";
11
11
  import { d as parseMpcWalletSigningQuotaId, g as parseWalletSessionMintId, h as parseWalletSessionId, m as parseWalletSessionAuthorizationId } from "./capabilityKinds-jwCEaqBU.js";
12
12
  import { Q as parseThresholdEcdsaKeyHandle, S as toThresholdEcdsaPublicKeyB64u, a as buildEvmFamilyEcdsaWalletKey, g as resolveThresholdEcdsaKeyIdFromRecord, h as parseThresholdSigningRootBinding, y as toEvmFamilyEcdsaKeyHandle } from "./evmFamilyEcdsaIdentity-_kuKSW35.js";
13
13
  import { d as parsePasskeyCustodyEnvelopeRecord, t as parseWalletCustodyRegistrationOutcome } from "./passkey-custody-BaHyYMhj.js";
@@ -1423,6 +1423,7 @@ const ROUTE_PAYLOAD_BREAKDOWN_MAX_DEPTH = 2;
1423
1423
  const ROUTE_PAYLOAD_BREAKDOWN_MAX_FIELDS = 64;
1424
1424
  const WALLET_REGISTRATION_SETUP_PATH = "/wallets/register/setup";
1425
1425
  const WALLET_REGISTRATION_RESPOND_PATH = "/wallets/register/respond";
1426
+ const WALLET_REGISTRATION_NEAR_ADMISSION_PATH = "/wallets/register/near-admission";
1426
1427
  const WALLET_REGISTRATION_ACTIVATE_PATH = "/wallets/register/activate";
1427
1428
  const WALLET_REGISTRATION_NEAR_PROVISIONING_PATH = "/wallets/register/near-provisioning";
1428
1429
  /** Managed environment id header for Router API `api_credentials` auth. */
@@ -3125,6 +3126,47 @@ async function respondWalletRegistration(args) {
3125
3126
  onServerTiming: args.onServerTiming
3126
3127
  }));
3127
3128
  }
3129
+ async function authorizeWalletRegistrationNearAdmission(args) {
3130
+ const body = {
3131
+ registrationCeremonyId: args.registrationCeremonyId,
3132
+ signedSetup: args.signedSetup
3133
+ };
3134
+ switch (args.kind) {
3135
+ case "passkey":
3136
+ body.webauthn_registration = args.webauthnRegistration;
3137
+ break;
3138
+ case "email_otp":
3139
+ body.emailOtpRegistrationProof = args.emailOtpRegistrationProof;
3140
+ break;
3141
+ }
3142
+ const response = await postJson({
3143
+ relayerUrl: args.relayerUrl,
3144
+ path: WALLET_REGISTRATION_NEAR_ADMISSION_PATH,
3145
+ headers: args.headers,
3146
+ body
3147
+ });
3148
+ const responseName = "Wallet registration NEAR admission";
3149
+ const record = requireWalletRegistrationResponseObject({
3150
+ responseName,
3151
+ field: "body",
3152
+ value: response
3153
+ });
3154
+ assertWalletRegistrationResponseKeys(record, [
3155
+ "ok",
3156
+ "registrationCeremonyId",
3157
+ "ed25519"
3158
+ ], responseName);
3159
+ if (readWalletRegistrationResponseField(record, "ok", responseName) !== true) throw new Error(`${responseName} response is not successful`);
3160
+ return {
3161
+ ok: true,
3162
+ registrationCeremonyId: requireResponseString({
3163
+ responseName,
3164
+ field: "registrationCeremonyId",
3165
+ value: readWalletRegistrationResponseField(record, "registrationCeremonyId", responseName)
3166
+ }),
3167
+ ed25519: parseWalletRegistrationRespondEd25519DeferredWork(readWalletRegistrationResponseField(record, "ed25519", responseName))
3168
+ };
3169
+ }
3128
3170
  function parseRegistrationEstablishedSessionResult(value, expectedWalletId) {
3129
3171
  const responseName = "Wallet registration established session";
3130
3172
  const parsed = parseRegistrationEstablishedSessionResultV2(value);
@@ -3332,6 +3374,31 @@ async function activateWalletRegistration(args) {
3332
3374
  onServerTiming: args.onServerTiming
3333
3375
  }));
3334
3376
  }
3377
+ function parseWalletRegistrationSessionSealResponse(value) {
3378
+ const responseName = "Wallet registration session seal";
3379
+ const record = requireWalletRegistrationResponseObject({
3380
+ responseName,
3381
+ field: "body",
3382
+ value
3383
+ });
3384
+ assertWalletRegistrationResponseKeys(record, [
3385
+ "ciphertext",
3386
+ "keyVersion",
3387
+ "expiresAtMs",
3388
+ "remainingUses"
3389
+ ], responseName);
3390
+ const ciphertext = readWalletRegistrationResponseField(record, "ciphertext", responseName);
3391
+ const keyVersion = readWalletRegistrationResponseField(record, "keyVersion", responseName);
3392
+ const expiresAtMs = readWalletRegistrationResponseField(record, "expiresAtMs", responseName);
3393
+ const remainingUses = readWalletRegistrationResponseField(record, "remainingUses", responseName);
3394
+ if (typeof ciphertext !== "string" || !ciphertext.trim() || typeof keyVersion !== "string" || !keyVersion.trim() || typeof expiresAtMs !== "number" || !Number.isSafeInteger(expiresAtMs) || expiresAtMs <= 0 || typeof remainingUses !== "number" || !Number.isSafeInteger(remainingUses) || remainingUses < 0) throw new Error(`${responseName} is invalid`);
3395
+ return {
3396
+ ciphertext,
3397
+ keyVersion,
3398
+ expiresAtMs,
3399
+ remainingUses
3400
+ };
3401
+ }
3335
3402
  function parseWalletRegistrationNearProvisioningResponseV2(value) {
3336
3403
  const responseName = "Wallet registration NEAR provisioning";
3337
3404
  const record = requireWalletRegistrationResponseObject({
@@ -3388,7 +3455,8 @@ function parseWalletRegistrationNearProvisioningResponseV2(value) {
3388
3455
  "ed25519",
3389
3456
  "authorityScope",
3390
3457
  "nearProvisioning",
3391
- "registrationEstablishedSession"
3458
+ "registrationEstablishedSession",
3459
+ "sessionSeal"
3392
3460
  ], responseName);
3393
3461
  const provisioning = requireWalletRegistrationResponseObject({
3394
3462
  responseName,
@@ -3402,10 +3470,25 @@ function parseWalletRegistrationNearProvisioningResponseV2(value) {
3402
3470
  expectedKind: "near_ed25519"
3403
3471
  });
3404
3472
  if (!finalized.ok || finalized.kind !== "near_ed25519") throw new Error(`${responseName} did not return a finalized Ed25519 wallet`);
3405
- return {
3473
+ const sessionSeal = readOptionalWalletRegistrationResponseField(record, "sessionSeal", responseName);
3474
+ const registrationEstablishedSession = parseRegistrationEstablishedSessionResult(readWalletRegistrationResponseField(record, "registrationEstablishedSession", responseName), finalized.walletId);
3475
+ if (isEmailOtpWalletRegistrationFinalizeResponse(finalized)) {
3476
+ if (sessionSeal !== void 0) throw new Error(`${responseName} returned a session seal for an Email OTP authority`);
3477
+ return {
3478
+ ...finalized,
3479
+ nearProvisioning: { status: "near_ready" },
3480
+ registrationEstablishedSession
3481
+ };
3482
+ }
3483
+ const success = {
3406
3484
  ...finalized,
3407
3485
  nearProvisioning: { status: "near_ready" },
3408
- registrationEstablishedSession: parseRegistrationEstablishedSessionResult(readWalletRegistrationResponseField(record, "registrationEstablishedSession", responseName), finalized.walletId)
3486
+ registrationEstablishedSession
3487
+ };
3488
+ if (sessionSeal === void 0) return success;
3489
+ return {
3490
+ ...success,
3491
+ sessionSeal: parseWalletRegistrationSessionSealResponse(sessionSeal)
3409
3492
  };
3410
3493
  }
3411
3494
  async function completeWalletRegistrationNearProvisioning(args) {
@@ -3417,6 +3500,7 @@ async function completeWalletRegistrationNearProvisioning(args) {
3417
3500
  };
3418
3501
  if (args.auth.kind === "email_otp") body.emailOtpEnrollment = args.auth.enrollment;
3419
3502
  if (args.walletCustodyCommit) body.walletCustodyCommit = args.walletCustodyCommit;
3503
+ if (args.sessionSeal) body.sessionSeal = args.sessionSeal;
3420
3504
  return parseWalletRegistrationNearProvisioningResponseV2(await postJson({
3421
3505
  relayerUrl: args.relayerUrl,
3422
3506
  path: WALLET_REGISTRATION_NEAR_PROVISIONING_PATH,
@@ -3946,4 +4030,4 @@ function resolveNearEd25519YaoCapabilityHydrationV1(input) {
3946
4030
  throw new Error("Unsupported Near Ed25519 unlock-source observation");
3947
4031
  }
3948
4032
  //#endregion
3949
- export { parseProfileContinuityEcdsaWarmKey as A, respondWalletAddSignerEcdsa as C, startWalletAddAuthMethod as D, setupWalletRegistration as E, startWalletAddSigner as O, requestAddAuthMethodEmailOtpChallenge as S, revokeWalletAuthMethod as T, finalizeWalletAddAuthMethod as _, buildRehydrateMaterialActivationHydrationPlan as a, isEmailOtpWalletRegistrationFinalizeResponse as b, parseWalletUnlockAlreadyCommittedResponseV1 as c, activateWalletRegistration as d, completeWalletRegistrationNearProvisioning as f, fetchWalletEcdsaKeyFactsInventoryWithWebAuthn as g, fetchWalletEcdsaKeyFactsInventoryWithOperationCredential as h, buildBlockedMpcCapabilityHydrationPlan as i, activateRouterAbEcdsaPostRegistrationSession as k, computeWalletCustodyAdminChallengeDigest as l, createWalletAddSignerIntent as m, nearEd25519YaoRuntimeRef as n, buildUseLiveRuntimeHydrationPlan as o, createWalletAddAuthMethodIntent as p, resolveNearEd25519YaoCapabilityHydrationV1 as r, parseWalletSessionAlreadyCommittedResponseV1 as s, nearEd25519YaoMaterialActivationFromMetadata as t, activateWalletAddSignerEcdsa as u, finalizeWalletAddSigner as v, respondWalletRegistration as w, parseWalletRegistrationEcdsaDerivationRespond as x, fundImplicitNearAccountForTesting as y };
4033
+ export { activateRouterAbEcdsaPostRegistrationSession as A, requestAddAuthMethodEmailOtpChallenge as C, setupWalletRegistration as D, revokeWalletAuthMethod as E, startWalletAddAuthMethod as O, parseWalletRegistrationEcdsaDerivationRespond as S, respondWalletRegistration as T, fetchWalletEcdsaKeyFactsInventoryWithWebAuthn as _, buildRehydrateMaterialActivationHydrationPlan as a, fundImplicitNearAccountForTesting as b, parseWalletUnlockAlreadyCommittedResponseV1 as c, activateWalletRegistration as d, authorizeWalletRegistrationNearAdmission as f, fetchWalletEcdsaKeyFactsInventoryWithOperationCredential as g, createWalletAddSignerIntent as h, buildBlockedMpcCapabilityHydrationPlan as i, parseProfileContinuityEcdsaWarmKey as j, startWalletAddSigner as k, computeWalletCustodyAdminChallengeDigest as l, createWalletAddAuthMethodIntent as m, nearEd25519YaoRuntimeRef as n, buildUseLiveRuntimeHydrationPlan as o, completeWalletRegistrationNearProvisioning as p, resolveNearEd25519YaoCapabilityHydrationV1 as r, parseWalletSessionAlreadyCommittedResponseV1 as s, nearEd25519YaoMaterialActivationFromMetadata as t, activateWalletAddSignerEcdsa as u, finalizeWalletAddAuthMethod as v, respondWalletAddSignerEcdsa as w, isEmailOtpWalletRegistrationFinalizeResponse as x, finalizeWalletAddSigner as y };
@@ -1,6 +1,6 @@
1
1
  import { p as mpcMaterialActivationRefsEqual } from "./normalize-BephcEIF.js";
2
2
  import { l as activeWalletSessionV1RecordsEqual } from "./device-linking-DpVGjSeq.js";
3
- import { At as buildEmailOtpWalletAuthAuthority, Ht as walletAuthAuthorityRef, Mt as emailOtpWalletAuthAuthorityEmailHashHex, Nt as emailOtpWalletAuthAuthorityProvider, Pt as emailOtpWalletAuthAuthorityProviderUserId } from "./ecdsaPresignLifecycle-D_KCktCj.js";
3
+ import { At as buildEmailOtpWalletAuthAuthority, Ht as walletAuthAuthorityRef, Mt as emailOtpWalletAuthAuthorityEmailHashHex, Nt as emailOtpWalletAuthAuthorityProvider, Pt as emailOtpWalletAuthAuthorityProviderUserId } from "./ecdsaPresignLifecycle-CnSnzoRJ.js";
4
4
  import { E as SigningSessionIds, I as exactEd25519SigningLaneIdentity, M as buildEvmFamilyEcdsaSignerBinding, N as exactEcdsaSigningLaneIdentity, U as nearEd25519SignerBindingFromBoundaryFields, j as signingLaneAuthMethod, y as toEvmFamilyEcdsaKeyHandle } from "./evmFamilyEcdsaIdentity-_kuKSW35.js";
5
5
  import { t as parseSignerSlot } from "./signerSlot-DbNAs-kc.js";
6
6
  function emailOtpAuthContextProviderUserId(context) {
@@ -15,23 +15,43 @@ function normalizeSigningSessionCacheEntry(args) {
15
15
  if (!thresholdSessionId || !prfFirstB64u) throw new Error("Missing thresholdSessionId or prfFirstB64u for signing session hydration");
16
16
  if (!Number.isFinite(expiresAtMsRaw) || expiresAtMsRaw <= 0) throw new Error("Invalid expiresAtMs for signing session hydration");
17
17
  if (remainingUses == null) throw new Error("Invalid remainingUses for signing session hydration");
18
- return {
18
+ const normalized = {
19
19
  thresholdSessionId,
20
20
  prfFirstB64u,
21
21
  expiresAtMs: Math.floor(expiresAtMsRaw),
22
22
  remainingUses,
23
+ ...args.diagnostics ? { diagnostics: args.diagnostics } : {}
24
+ };
25
+ if (args.preparedServerSeal) return {
26
+ ...normalized,
27
+ transport: args.transport,
28
+ preparedServerSeal: args.preparedServerSeal
29
+ };
30
+ return {
31
+ ...normalized,
23
32
  ...args.transport ? { transport: args.transport } : {}
24
33
  };
25
34
  }
26
35
  async function cacheCredentialBoundarySetupExportPrfFirst(writer, args) {
27
36
  const normalized = normalizeSigningSessionCacheEntry(args);
28
- await writer.putWarmSessionMaterial({
37
+ const material = {
29
38
  thresholdSessionId: normalized.thresholdSessionId,
30
39
  prfFirstB64u: normalized.prfFirstB64u,
31
40
  expiresAtMs: normalized.expiresAtMs,
32
41
  remainingUses: normalized.remainingUses,
33
- ...args.transport ? { transport: args.transport } : {},
34
- ...args.diagnostics ? { diagnostics: args.diagnostics } : {}
42
+ ...normalized.diagnostics ? { diagnostics: normalized.diagnostics } : {}
43
+ };
44
+ if (normalized.preparedServerSeal) {
45
+ await writer.putWarmSessionMaterial({
46
+ ...material,
47
+ transport: normalized.transport,
48
+ preparedServerSeal: normalized.preparedServerSeal
49
+ });
50
+ return;
51
+ }
52
+ await writer.putWarmSessionMaterial({
53
+ ...material,
54
+ ...normalized.transport ? { transport: normalized.transport } : {}
35
55
  });
36
56
  }
37
57
  //#endregion
@@ -9,14 +9,14 @@ import "./signerDomain-DDLiwuYS.js";
9
9
  import { f as parseRecoveryCodeReservationId, m as decodeEmailOtpRecoveryKey } from "./wallet-recovery-CKqoHbxT.js";
10
10
  import "./participants-Bcnsa_ip.js";
11
11
  import "./sessionPolicy-B4FsPuk2.js";
12
- import "./ecdsaPresignLifecycle-D_KCktCj.js";
12
+ import "./ecdsaPresignLifecycle-CnSnzoRJ.js";
13
13
  import "./capabilityKinds-jwCEaqBU.js";
14
14
  import "./evmFamilyEcdsaIdentity-_kuKSW35.js";
15
15
  import { a as buildEmailOtpEnvelopeFactor, c as buildPasskeyEnvelopeFactor } from "./passkey-custody-BaHyYMhj.js";
16
- import { s as IndexedDBManager } from "./ed25519SeedMaterial-0VmS6K9P.js";
16
+ import { s as IndexedDBManager } from "./ed25519SeedMaterial-Cghz8-XB.js";
17
17
  import "./keccak-DY5wDsym.js";
18
18
  import "./signingSessionSeal-CdtgXHSL.js";
19
- import { a as finalizeWalletRecoveryGoogleEmailOtp, c as isDurablePasskeyPayload, d as prepareWalletRecoveryWithCode, l as finalizeWalletRecovery, n as promoteWalletRecoveryCommit, o as verifyWalletRecoveryEmailOtp, r as restoreAndPublishWalletRecoveryCommit, s as verifyWalletRecoveryGoogle, t as createAwaitingWalletRecoveryCommit, u as buildWalletRecoveryCeremonyCustodyJson } from "./walletRecoveryCommit-DNvzgeIX.js";
19
+ import { a as finalizeWalletRecoveryGoogleEmailOtp, c as isDurablePasskeyPayload, d as prepareWalletRecoveryWithCode, l as finalizeWalletRecovery, n as promoteWalletRecoveryCommit, o as verifyWalletRecoveryEmailOtp, r as restoreAndPublishWalletRecoveryCommit, s as verifyWalletRecoveryGoogle, t as createAwaitingWalletRecoveryCommit, u as buildWalletRecoveryCeremonyCustodyJson } from "./walletRecoveryCommit-G6w6N5RV.js";
20
20
  //#region src/SeamsWeb/operations/recovery/walletRecovery.ts
21
21
  const RECOVERY_PREPARE_RETRY_TTL_MS = 300 * 1e3;
22
22
  function assertNever(value) {
@@ -2,7 +2,7 @@ import { n as __exportAll } from "./chunk-BtrIJ4_z.js";
2
2
  import { o as toError } from "./errors-93h9uAW9.js";
3
3
  import { c as serializeRegistrationCredentialWithPRF, r as isSerializedRegistrationCredential } from "./helpers-DpRjHMBx.js";
4
4
  import { t as webAuthnPromptCoordinator } from "./webauthnPromptCoordinator-CLeba8ru.js";
5
- import { D as getWalletId, S as getNearAccountId, f as ERROR_MESSAGES, m as isUserCancelledUserConfirm, n as createConfirmTxFlowAdapters, t as createConfirmSession, x as getIntentDigest } from "./adapters-Dgy69gf0.js";
5
+ import { D as getWalletId, S as getNearAccountId, f as ERROR_MESSAGES, m as isUserCancelledUserConfirm, n as createConfirmTxFlowAdapters, t as createConfirmSession, x as getIntentDigest } from "./adapters-LgE4nnos.js";
6
6
  import { a as sha256Base64UrlUtf8 } from "./intentDigest-A1MbbJPu.js";
7
7
  //#region src/core/signingEngine/uiConfirm/handlers/flows/registration.ts
8
8
  var registration_exports = /* @__PURE__ */ __exportAll({ handleRegistrationFlow: () => handleRegistrationFlow });