@seams/wallet 0.6.1 → 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 (86) hide show
  1. package/dist/.build-inputs.sha256 +1 -1
  2. package/dist/esm/SeamsWeb/operations/registration/registration.js +21 -29
  3. package/dist/esm/core/rpcClients/relayer/walletRegistration.js +1 -43
  4. package/dist/esm/core/signingEngine/flows/signNear/shared/ed25519YaoNormalSigning.js +19 -0
  5. package/dist/esm/core/signingEngine/flows/signNear/signTransactions.js +25 -6
  6. package/dist/esm/core/signingEngine/nonce/nearNonceLane.js +0 -29
  7. package/dist/esm/core/signingEngine/session/operationState/trace.js +10 -1
  8. package/dist/esm/react/SeamsWeb/operations/registration/registration.js +21 -29
  9. package/dist/esm/react/core/rpcClients/relayer/walletRegistration.js +1 -43
  10. package/dist/esm/react/core/signingEngine/flows/signNear/shared/ed25519YaoNormalSigning.js +19 -0
  11. package/dist/esm/react/core/signingEngine/flows/signNear/signTransactions.js +25 -6
  12. package/dist/esm/react/core/signingEngine/nonce/nearNonceLane.js +0 -29
  13. package/dist/esm/react/core/signingEngine/session/operationState/trace.js +10 -1
  14. package/dist/esm/sdk/{NonceCoordinator-C7QltTDC.js → NonceCoordinator-C7mqpJiU.js} +0 -29
  15. package/dist/{public/sdk/adapters-LgE4nnos.js → esm/sdk/adapters-m94YFj70.js} +1 -1
  16. package/dist/{public/sdk/display-Cw90-qmF.js → esm/sdk/display-DHdC2yXU.js} +1 -1
  17. package/dist/{public/sdk/export-viewer-host-B3K81QGA.js → esm/sdk/export-viewer-host-CbqG8ZQV.js} +1 -1
  18. package/dist/esm/sdk/{host-Y_xmIzPO.js → host-BPC1zSVg.js} +2 -2
  19. package/dist/esm/sdk/{localOnly-B5TYHJiq.js → localOnly-CbLYTVbo.js} +2 -2
  20. package/dist/esm/sdk/{nearEd25519YaoMaterialActivation-BLxVE6E5.js → nearEd25519YaoMaterialActivation-Cz5UJQ_7.js} +1 -43
  21. package/dist/esm/sdk/{registration-BtPLgKHk.js → registration-DtDICj-o.js} +1 -1
  22. package/dist/esm/sdk/{registration-D-istkMZ.js → registration-PIBMSsQR.js} +22 -30
  23. package/dist/esm/sdk/{registrationPreparationPreload-CvnlDCVn.js → registrationPreparationPreload-BZfAC_ba.js} +2 -2
  24. package/dist/{public/sdk/runtime-auth-B7z1ANNp.js → esm/sdk/runtime-auth-D_lUQQlc.js} +4 -4
  25. package/dist/{public/sdk/runtime-device-link-B8HGDakg.js → esm/sdk/runtime-device-link-CEph1iM0.js} +2 -2
  26. package/dist/esm/sdk/{runtime-ecdsa-tempo-DKdS5-us.js → runtime-ecdsa-tempo-tUWnafRo.js} +2 -2
  27. package/dist/{public/sdk/runtime-email-otp-D5bxhdyG.js → esm/sdk/runtime-email-otp-1wIPTDim.js} +2 -2
  28. package/dist/{public/sdk/runtime-export--hvNrx8l.js → esm/sdk/runtime-export-Du2d4_Vu.js} +2 -2
  29. package/dist/esm/sdk/{runtime-near-CEexHoug.js → runtime-near-CGoWxu7u.js} +2 -2
  30. package/dist/{public/sdk/runtime-preferences-BiqPp1lV.js → esm/sdk/runtime-preferences-JwJK_xP3.js} +2 -2
  31. package/dist/esm/sdk/{runtime-recovery-BYu1gDq_.js → runtime-recovery-BEqBdpyo.js} +2 -2
  32. package/dist/esm/sdk/{runtimeContext-CH97jPZ0.js → runtimeContext-CTt9ON27.js} +22 -22
  33. package/dist/{public/sdk/runtimeLoader-BFAmJAbu.js → esm/sdk/runtimeLoader-ZXsvx9zX.js} +9 -9
  34. package/dist/esm/sdk/{secp256k1-Cr1jBW1n.js → secp256k1-CWDid9WH.js} +1 -1
  35. package/dist/{public/sdk/signEvmFamily-Dxk4sBPY.js → esm/sdk/signEvmFamily-pbMepepQ.js} +5 -5
  36. package/dist/esm/sdk/{signEvmFamilyWithUiConfirmForTempo-DHTBHHgE.js → signEvmFamilyWithUiConfirmForTempo-CxvfCI_o.js} +2 -2
  37. package/dist/{public/sdk/signEvmWithUiConfirm-CSxTBQUW.js → esm/sdk/signEvmWithUiConfirm-nk-r3Rff.js} +1 -1
  38. package/dist/esm/sdk/{signNear-B0OCVKoH.js → signNear-DVD9-IO5.js} +45 -8
  39. package/dist/esm/sdk/{signatureUses-C1o1pDql.js → signatureUses-BY1IY7uz.js} +1 -1
  40. package/dist/esm/sdk/{signerLoader-D0WU1jq_.js → signerLoader-D_w-SfR9.js} +3 -3
  41. package/dist/esm/sdk/{trace-DWnDLSuV.js → trace-08ayoiNp.js} +10 -1
  42. package/dist/esm/sdk/wallet-iframe-host-ecdsa.js +1 -1
  43. package/dist/esm/sdk/wallet-iframe-host-full.js +1 -1
  44. package/dist/esm/sdk/wallet-iframe-host-near.js +1 -1
  45. package/dist/esm/sdk/wallet-iframe-host-runtime.js +1 -1
  46. package/dist/esm/sdk/wallet-ui.css +7 -1
  47. package/dist/public/headers.manifest.json +1 -1
  48. package/dist/public/sdk/{NonceCoordinator-C7QltTDC.js → NonceCoordinator-C7mqpJiU.js} +0 -29
  49. package/dist/{esm/sdk/adapters-LgE4nnos.js → public/sdk/adapters-m94YFj70.js} +1 -1
  50. package/dist/{esm/sdk/display-Cw90-qmF.js → public/sdk/display-DHdC2yXU.js} +1 -1
  51. package/dist/{esm/sdk/export-viewer-host-B3K81QGA.js → public/sdk/export-viewer-host-CbqG8ZQV.js} +1 -1
  52. package/dist/public/sdk/{host-Y_xmIzPO.js → host-BPC1zSVg.js} +2 -2
  53. package/dist/public/sdk/{localOnly-B5TYHJiq.js → localOnly-CbLYTVbo.js} +2 -2
  54. package/dist/public/sdk/{nearEd25519YaoMaterialActivation-BLxVE6E5.js → nearEd25519YaoMaterialActivation-Cz5UJQ_7.js} +1 -43
  55. package/dist/public/sdk/{registration-BtPLgKHk.js → registration-DtDICj-o.js} +1 -1
  56. package/dist/public/sdk/{registration-D-istkMZ.js → registration-PIBMSsQR.js} +22 -30
  57. package/dist/public/sdk/{registrationPreparationPreload-CvnlDCVn.js → registrationPreparationPreload-BZfAC_ba.js} +2 -2
  58. package/dist/{esm/sdk/runtime-auth-B7z1ANNp.js → public/sdk/runtime-auth-D_lUQQlc.js} +4 -4
  59. package/dist/{esm/sdk/runtime-device-link-B8HGDakg.js → public/sdk/runtime-device-link-CEph1iM0.js} +2 -2
  60. package/dist/public/sdk/{runtime-ecdsa-tempo-DKdS5-us.js → runtime-ecdsa-tempo-tUWnafRo.js} +2 -2
  61. package/dist/{esm/sdk/runtime-email-otp-D5bxhdyG.js → public/sdk/runtime-email-otp-1wIPTDim.js} +2 -2
  62. package/dist/{esm/sdk/runtime-export--hvNrx8l.js → public/sdk/runtime-export-Du2d4_Vu.js} +2 -2
  63. package/dist/public/sdk/{runtime-near-CEexHoug.js → runtime-near-CGoWxu7u.js} +2 -2
  64. package/dist/{esm/sdk/runtime-preferences-BiqPp1lV.js → public/sdk/runtime-preferences-JwJK_xP3.js} +2 -2
  65. package/dist/public/sdk/{runtime-recovery-BYu1gDq_.js → runtime-recovery-BEqBdpyo.js} +2 -2
  66. package/dist/public/sdk/{runtimeContext-CH97jPZ0.js → runtimeContext-CTt9ON27.js} +22 -22
  67. package/dist/{esm/sdk/runtimeLoader-BFAmJAbu.js → public/sdk/runtimeLoader-ZXsvx9zX.js} +9 -9
  68. package/dist/public/sdk/{secp256k1-Cr1jBW1n.js → secp256k1-CWDid9WH.js} +1 -1
  69. package/dist/{esm/sdk/signEvmFamily-Dxk4sBPY.js → public/sdk/signEvmFamily-pbMepepQ.js} +5 -5
  70. package/dist/public/sdk/{signEvmFamilyWithUiConfirmForTempo-DHTBHHgE.js → signEvmFamilyWithUiConfirmForTempo-CxvfCI_o.js} +2 -2
  71. package/dist/{esm/sdk/signEvmWithUiConfirm-CSxTBQUW.js → public/sdk/signEvmWithUiConfirm-nk-r3Rff.js} +1 -1
  72. package/dist/public/sdk/{signNear-B0OCVKoH.js → signNear-DVD9-IO5.js} +45 -8
  73. package/dist/public/sdk/{signatureUses-C1o1pDql.js → signatureUses-BY1IY7uz.js} +1 -1
  74. package/dist/public/sdk/{signerLoader-D0WU1jq_.js → signerLoader-D_w-SfR9.js} +3 -3
  75. package/dist/public/sdk/{trace-DWnDLSuV.js → trace-08ayoiNp.js} +10 -1
  76. package/dist/public/sdk/wallet-iframe-host-ecdsa.js +1 -1
  77. package/dist/public/sdk/wallet-iframe-host-full.js +1 -1
  78. package/dist/public/sdk/wallet-iframe-host-near.js +1 -1
  79. package/dist/public/sdk/wallet-iframe-host-runtime.js +1 -1
  80. package/dist/public/sdk/wallet-ui.css +7 -1
  81. package/dist/public/wallet-assets.manifest.json +58 -58
  82. package/dist/public/wallet-service/index.html +4 -4
  83. package/dist/types/wallet/src/SeamsWeb/operations/registration/registration.d.ts +2 -3
  84. package/dist/types/wallet/src/core/signingEngine/nonce/nearNonceLane.d.ts +2 -1
  85. package/dist/types/wallet/src/core/signingEngine/session/operationState/trace.d.ts +2 -0
  86. package/package.json +1 -1
@@ -1 +1 @@
1
- 26f9cbe14c02c52bc728d47a019f30b773531195d58cb96ade8476629c0fe91c
1
+ 0d1577c2c1b97c7654920198df26f4d567031af57e0d5e0fb0262a294a65493a
@@ -38,7 +38,7 @@ import { planPendingNearRegistration, preparePendingNearRegistration } from "../
38
38
  import { walletSessionAuthorizations } from "../../../core/indexedDB/seamsWalletDB/walletSessionAuthorizationStore.js";
39
39
  import { IndexedDBManager } from "../../../core/indexedDB/index.js";
40
40
  import { nearEd25519YaoMaterialActivationFromMetadata } from "../../../core/signingEngine/session/material/nearEd25519YaoMaterialActivation.js";
41
- import { activateWalletRegistration, authorizeWalletRegistrationNearAdmission, completeWalletRegistrationNearProvisioning, createWalletAddSignerIntent, finalizeWalletAddSigner, isEmailOtpWalletRegistrationFinalizeResponse, parseWalletRegistrationEcdsaDerivationRespond, respondWalletRegistration, setupWalletRegistration, startWalletAddSigner } from "../../../core/rpcClients/relayer/walletRegistration.js";
41
+ import { activateWalletRegistration, completeWalletRegistrationNearProvisioning, createWalletAddSignerIntent, finalizeWalletAddSigner, isEmailOtpWalletRegistrationFinalizeResponse, parseWalletRegistrationEcdsaDerivationRespond, respondWalletRegistration, setupWalletRegistration, startWalletAddSigner } from "../../../core/rpcClients/relayer/walletRegistration.js";
42
42
  import { buildEmailOtpAuthContext, emailOtpAuthContextEmailHashHex, emailOtpAuthContextProvider, emailOtpAuthContextProviderUserId } from "../../../core/signingEngine/session/identity/laneIdentity.js";
43
43
  import { persistPasskeyEd25519YaoSignerMaterialV1 } from "../../../core/signingEngine/session/passkey/ed25519YaoLocalMaterial.js";
44
44
  import { buildPasskeyEd25519RestoreMetadata } from "../../../core/signingEngine/session/passkey/ed25519YaoSealedSession.js";
@@ -472,17 +472,10 @@ function registrationThreeRouteAuthorityPayload(authority) {
472
472
  default: return assertNever(authority);
473
473
  }
474
474
  }
475
- async function startEarlyNearRegistrationAdmission(args) {
475
+ async function startNearRegistrationAdmission(args) {
476
476
  const startedAt = performance.now();
477
477
  try {
478
- const deferredNear = (await authorizeWalletRegistrationNearAdmission({
479
- relayerUrl: args.relayerUrl,
480
- headers: registrationRouteHeaders(args.traceContext),
481
- registrationCeremonyId: args.registrationCeremonyId,
482
- signedSetup: args.signedSetup,
483
- ...registrationThreeRouteAuthorityPayload(args.authority)
484
- })).ed25519;
485
- const admissionReceipt = await admitDeferredNearRegistration(deferredNear, {
478
+ const admissionReceipt = await admitDeferredNearRegistration(args.deferredNear, {
486
479
  routerOrigin: new URL(args.relayerUrl).origin,
487
480
  authorization: {
488
481
  kind: "bearer",
@@ -498,7 +491,7 @@ async function startEarlyNearRegistrationAdmission(args) {
498
491
  outcome: "success"
499
492
  });
500
493
  return {
501
- deferredNear,
494
+ deferredNear: args.deferredNear,
502
495
  admissionReceipt
503
496
  };
504
497
  } catch (error) {
@@ -511,7 +504,7 @@ async function startEarlyNearRegistrationAdmission(args) {
511
504
  throw error;
512
505
  }
513
506
  }
514
- function requireEarlyNearRegistrationAdmission(admission) {
507
+ function requireNearRegistrationAdmission(admission) {
515
508
  if (!admission) throw new Error("Mixed registration did not start NEAR admission");
516
509
  return admission;
517
510
  }
@@ -688,14 +681,6 @@ async function runEcdsaEnabledThreeRouteRegistrationCeremony(args) {
688
681
  clientCeremony: args.clientCeremony
689
682
  })
690
683
  });
691
- const earlyNearAdmission = args.signerPlanKind === "near_ed25519_and_evm_family_ecdsa" ? startEarlyNearRegistrationAdmission({
692
- relayerUrl: args.relayerUrl,
693
- registrationCeremonyId: ceremonyId,
694
- signedSetup: args.signedSetup,
695
- authority: args.authority,
696
- traceContext: args.traceContext
697
- }) : null;
698
- earlyNearAdmission?.catch(ignoreNearCustodyFailure);
699
684
  const responded = await measureStrictEcdsaCeremonyStep({
700
685
  registrationTiming: args.registrationTiming,
701
686
  bucket: "ecdsaRegistrationGatewayRespondMs",
@@ -716,6 +701,14 @@ async function runEcdsaEnabledThreeRouteRegistrationCeremony(args) {
716
701
  });
717
702
  if (responded.kind === "near_ed25519") throw new Error("ECDSA registration ceremony received an Ed25519-only respond result");
718
703
  const deferredNear = responded.kind === "near_ed25519_and_evm_family_ecdsa" ? responded.ed25519 : null;
704
+ const nearAdmission = deferredNear ? startNearRegistrationAdmission({
705
+ relayerUrl: args.relayerUrl,
706
+ registrationCeremonyId: ceremonyId,
707
+ signedSetup: args.signedSetup,
708
+ deferredNear,
709
+ traceContext: args.traceContext
710
+ }) : null;
711
+ nearAdmission?.catch(ignoreNearCustodyFailure);
719
712
  const verified = await measureStrictEcdsaCeremonyStep({
720
713
  registrationTiming: args.registrationTiming,
721
714
  bucket: "ecdsaRegistrationClientProofVerifyMs",
@@ -776,8 +769,7 @@ async function runEcdsaEnabledThreeRouteRegistrationCeremony(args) {
776
769
  deferredNear
777
770
  });
778
771
  deferredNearCustodyWork = args.startDeferredNearCustody({
779
- deferredNear,
780
- earlyAdmission: requireEarlyNearRegistrationAdmission(earlyNearAdmission),
772
+ admission: requireNearRegistrationAdmission(nearAdmission),
781
773
  establishedEvmCustodyCommit: bootstrap.preActivationCommitPayload
782
774
  });
783
775
  deferredNearCustodyWork.catch(ignoreNearCustodyFailure);
@@ -1075,14 +1067,14 @@ async function startDeferredNearWalletCustody(base, input) {
1075
1067
  operation: "near_provisioning"
1076
1068
  });
1077
1069
  if (!pending || pending.operation !== "near_provisioning" || pending.phase !== "planned") throw new Error("NEAR registration has no planned continuation");
1078
- let earlyAdmissionReceipt;
1070
+ let preAdmittedReceipt;
1079
1071
  try {
1080
- const early = await input.earlyAdmission;
1081
- if (!sameRouterAbEd25519YaoRegistrationAdmissionRequestV1(early.deferredNear.admissionRequest, pending.admissionRequest)) throw new Error("Early NEAR admission changed the authorized request");
1082
- earlyAdmissionReceipt = early.admissionReceipt;
1072
+ const admitted = await input.admission;
1073
+ if (!sameRouterAbEd25519YaoRegistrationAdmissionRequestV1(admitted.deferredNear.admissionRequest, pending.admissionRequest)) throw new Error("NEAR admission changed the authorized request");
1074
+ preAdmittedReceipt = admitted.admissionReceipt;
1083
1075
  } catch (error) {
1084
- if (error instanceof Error && error.message === "Early NEAR admission changed the authorized request") throw error;
1085
- earlyAdmissionReceipt = void 0;
1076
+ if (error instanceof Error && error.message === "NEAR admission changed the authorized request") throw error;
1077
+ preAdmittedReceipt = void 0;
1086
1078
  }
1087
1079
  const { joined, admissionReceipt } = await continueNearRegistrationCustody({
1088
1080
  pending,
@@ -1091,7 +1083,7 @@ async function startDeferredNearWalletCustody(base, input) {
1091
1083
  credential: base.signedSetup,
1092
1084
  traceContext: base.traceContext,
1093
1085
  factorSecret,
1094
- ...earlyAdmissionReceipt ? { admitted: earlyAdmissionReceipt } : {}
1086
+ ...preAdmittedReceipt ? { admitted: preAdmittedReceipt } : {}
1095
1087
  });
1096
1088
  outcome = "success";
1097
1089
  return {
@@ -29,7 +29,6 @@ const ROUTE_PAYLOAD_BREAKDOWN_MAX_DEPTH = 2;
29
29
  const ROUTE_PAYLOAD_BREAKDOWN_MAX_FIELDS = 64;
30
30
  const WALLET_REGISTRATION_SETUP_PATH = "/wallets/register/setup";
31
31
  const WALLET_REGISTRATION_RESPOND_PATH = "/wallets/register/respond";
32
- const WALLET_REGISTRATION_NEAR_ADMISSION_PATH = "/wallets/register/near-admission";
33
32
  const WALLET_REGISTRATION_ACTIVATE_PATH = "/wallets/register/activate";
34
33
  const WALLET_REGISTRATION_NEAR_PROVISIONING_PATH = "/wallets/register/near-provisioning";
35
34
  /** Managed environment id header for Router API `api_credentials` auth. */
@@ -1732,47 +1731,6 @@ async function respondWalletRegistration(args) {
1732
1731
  onServerTiming: args.onServerTiming
1733
1732
  }));
1734
1733
  }
1735
- async function authorizeWalletRegistrationNearAdmission(args) {
1736
- const body = {
1737
- registrationCeremonyId: args.registrationCeremonyId,
1738
- signedSetup: args.signedSetup
1739
- };
1740
- switch (args.kind) {
1741
- case "passkey":
1742
- body.webauthn_registration = args.webauthnRegistration;
1743
- break;
1744
- case "email_otp":
1745
- body.emailOtpRegistrationProof = args.emailOtpRegistrationProof;
1746
- break;
1747
- }
1748
- const response = await postJson({
1749
- relayerUrl: args.relayerUrl,
1750
- path: WALLET_REGISTRATION_NEAR_ADMISSION_PATH,
1751
- headers: args.headers,
1752
- body
1753
- });
1754
- const responseName = "Wallet registration NEAR admission";
1755
- const record = requireWalletRegistrationResponseObject({
1756
- responseName,
1757
- field: "body",
1758
- value: response
1759
- });
1760
- assertWalletRegistrationResponseKeys(record, [
1761
- "ok",
1762
- "registrationCeremonyId",
1763
- "ed25519"
1764
- ], responseName);
1765
- if (readWalletRegistrationResponseField(record, "ok", responseName) !== true) throw new Error(`${responseName} response is not successful`);
1766
- return {
1767
- ok: true,
1768
- registrationCeremonyId: requireResponseString({
1769
- responseName,
1770
- field: "registrationCeremonyId",
1771
- value: readWalletRegistrationResponseField(record, "registrationCeremonyId", responseName)
1772
- }),
1773
- ed25519: parseWalletRegistrationRespondEd25519DeferredWork(readWalletRegistrationResponseField(record, "ed25519", responseName))
1774
- };
1775
- }
1776
1734
  function parseRegistrationEstablishedSessionResult(value, expectedWalletId) {
1777
1735
  const responseName = "Wallet registration established session";
1778
1736
  const parsed = parseRegistrationEstablishedSessionResultV2(value);
@@ -2362,6 +2320,6 @@ async function fetchWalletEcdsaKeyFactsInventoryWithWebAuthn(args) {
2362
2320
  });
2363
2321
  }
2364
2322
  //#endregion
2365
- export { activateWalletAddSignerEcdsa, activateWalletRegistration, authorizeWalletRegistrationNearAdmission, completeWalletRegistrationNearProvisioning, createWalletAddAuthMethodIntent, createWalletAddSignerIntent, fetchWalletEcdsaKeyFactsInventoryWithOperationCredential, fetchWalletEcdsaKeyFactsInventoryWithWebAuthn, finalizeWalletAddAuthMethod, finalizeWalletAddSigner, fundImplicitNearAccountForTesting, isEmailOtpWalletRegistrationFinalizeResponse, parseWalletRegistrationEcdsaDerivationRespond, requestAddAuthMethodEmailOtpChallenge, respondWalletAddSignerEcdsa, respondWalletRegistration, revokeWalletAuthMethod, setupWalletRegistration, startWalletAddAuthMethod, startWalletAddSigner };
2323
+ export { activateWalletAddSignerEcdsa, activateWalletRegistration, completeWalletRegistrationNearProvisioning, createWalletAddAuthMethodIntent, createWalletAddSignerIntent, fetchWalletEcdsaKeyFactsInventoryWithOperationCredential, fetchWalletEcdsaKeyFactsInventoryWithWebAuthn, finalizeWalletAddAuthMethod, finalizeWalletAddSigner, fundImplicitNearAccountForTesting, isEmailOtpWalletRegistrationFinalizeResponse, parseWalletRegistrationEcdsaDerivationRespond, requestAddAuthMethodEmailOtpChallenge, respondWalletAddSignerEcdsa, respondWalletRegistration, revokeWalletAuthMethod, setupWalletRegistration, startWalletAddAuthMethod, startWalletAddSigner };
2366
2324
 
2367
2325
  //# sourceMappingURL=walletRegistration.js.map
@@ -8,6 +8,7 @@ import { resolveNearNetwork } from "../../../../config/chains.js";
8
8
  import { SigningSessionIds } from "../../../session/operationState/types.js";
9
9
  import { ActionType, fromActionArgsWasm } from "../../../../../shared-ts/src/near/actions.js";
10
10
  import { PASSKEY_MANAGER_DEFAULT_CONFIGS } from "../../../../config/defaultConfigs.js";
11
+ import { emitEd25519SigningTiming } from "../../../session/operationState/trace.js";
11
12
  import { parseThresholdEd25519NearTransaction, thresholdEd25519NearTransactionOperationFingerprint } from "../../../../../shared-ts/src/threshold/ed25519OperationFingerprint.js";
12
13
  import { WorkerResponseType } from "../../../../types/signer-worker.js";
13
14
  import { buildThresholdEd25519DelegateSigningPayloadWasm, buildThresholdEd25519NearTxUnsignedBorshWasm, decodeThresholdEd25519SignedNearTxBorshWasm, finalizeThresholdEd25519DelegateFromSignatureWasm, finalizeThresholdEd25519NearTxFromSignatureWasm } from "../../../chains/near/nearSignerWasm.js";
@@ -260,6 +261,18 @@ function requireActiveClientMatchesNormalSigningOperation(args) {
260
261
  if (!sameBytes(metadata.signingWorkerVerifyingShare, args.signingWorkerVerifyingShare)) throw new Error("Router A/B Ed25519 active Client SigningWorker verifying share mismatch");
261
262
  }
262
263
  async function tryFinalizeRouterAbEd25519NormalSigningSignature(args) {
264
+ const operationId = args.prepare.request.intent.operation_id;
265
+ const signatureStartedAt = performance.now();
266
+ let outcome = "failed";
267
+ try {
268
+ const finalized = await finalizeRouterAbEd25519NormalSigningSignature(args, operationId);
269
+ outcome = "succeeded";
270
+ return finalized;
271
+ } finally {
272
+ emitEd25519SigningTiming(operationId, "signature_total", signatureStartedAt, outcome);
273
+ }
274
+ }
275
+ async function finalizeRouterAbEd25519NormalSigningSignature(args, operationId) {
263
276
  const signingPayload = base64UrlDecode(args.signingDigestB64u);
264
277
  if (signingPayload.length !== 32) throw new Error(`Router A/B normal-signing ${args.signingPayloadLabel} must be 32 bytes`);
265
278
  const admittedDigest = requireWireBytes32(args.prepare.admissionMaterial.admittedSigningDigest.bytes, "admitted digest");
@@ -279,11 +292,13 @@ async function tryFinalizeRouterAbEd25519NormalSigningSignature(args) {
279
292
  runtimePolicyScope: args.walletSessionState.runtimePolicyScope,
280
293
  relayerUrl: args.walletSessionState.relayerUrl
281
294
  } : args.materialFacts;
295
+ const prepareStartedAt = performance.now();
282
296
  const prepareResponse = await prepareRouterAbNormalSigningV2({
283
297
  relayServerUrl: materialFacts.relayerUrl,
284
298
  credential: args.credential,
285
299
  request: args.prepare.request
286
300
  });
301
+ emitEd25519SigningTiming(operationId, "prepare", prepareStartedAt);
287
302
  requireRouterAbNormalSigningPrepareMatchesRequest({
288
303
  request: args.prepare.request,
289
304
  signingPayloadDigest: args.prepare.admissionMaterial.signingPayloadDigest,
@@ -304,12 +319,15 @@ async function tryFinalizeRouterAbEd25519NormalSigningSignature(args) {
304
319
  signingWorkerId: prepareResponse.signing_worker.server_id,
305
320
  signingWorkerVerifyingShare
306
321
  });
322
+ const clientShareStartedAt = performance.now();
307
323
  const clientShare = await args.activeClient.createSigningShare({
308
324
  admittedDigest,
309
325
  signingWorkerCommitments: prepareResponse.server_commitments,
310
326
  signingWorkerVerifyingShare
311
327
  });
328
+ emitEd25519SigningTiming(operationId, "client_share", clientShareStartedAt);
312
329
  if (clientShare.clientVerifyingShare.length !== 32) throw new Error("Router A/B normal-signing Client verifying share must be 32 bytes");
330
+ const finalizeStartedAt = performance.now();
313
331
  const signingResponse = await finalizeRouterAbNormalSigningV2({
314
332
  relayServerUrl: materialFacts.relayerUrl,
315
333
  credential: args.credential,
@@ -323,6 +341,7 @@ async function tryFinalizeRouterAbEd25519NormalSigningSignature(args) {
323
341
  clientSignatureShareB64u: clientShare.clientSignatureShareB64u
324
342
  })
325
343
  });
344
+ emitEd25519SigningTiming(operationId, "finalize", finalizeStartedAt);
326
345
  requireRouterAbNormalSigningResponseMatchesRequest({
327
346
  request: args.prepare.request,
328
347
  signingPayloadDigest: args.prepare.admissionMaterial.signingPayloadDigest,
@@ -9,7 +9,7 @@ import { SignedTransaction } from "../../../rpcClients/near/NearClient.js";
9
9
  import { PASSKEY_MANAGER_DEFAULT_CONFIGS } from "../../../config/defaultConfigs.js";
10
10
  import { resolveNearSigningMaterials } from "./shared/signingMaterials.js";
11
11
  import { buildNearTransactionSigningPayload } from "../../chains/near/payloads.js";
12
- import { createSigningBoundaryTraceEvent, emitSigningBoundaryTrace } from "../../session/operationState/trace.js";
12
+ import { createSigningBoundaryTraceEvent, emitEd25519SigningTiming, emitSigningBoundaryTrace } from "../../session/operationState/trace.js";
13
13
  import { parseThresholdEd25519NearTransaction, thresholdEd25519NearTransactionPlanningOperationFingerprint } from "../../../../shared-ts/src/threshold/ed25519OperationFingerprint.js";
14
14
  import { SigningOperationCommandKind, isSigningOperationReviewApprovedState, runSigningOperationCommand } from "../shared/signingStateMachine.js";
15
15
  import { requireNearStepUpAuth, signingAuthPlanForNearMaterialRequirement } from "./requireNearStepUpAuth.js";
@@ -45,6 +45,16 @@ function disposeOwnedNearOperationStepUpMaterialAndRethrow(args, error) {
45
45
  disposeOwnedNearOperationStepUpMaterial(args);
46
46
  throw error;
47
47
  }
48
+ async function resolveWarmNearSigningMaterial(args) {
49
+ return {
50
+ material: await resolvePreparedNearEd25519YaoMaterial(args.preparation, args.executor),
51
+ walletSessionState: await args.executor.resolveWalletSessionState()
52
+ };
53
+ }
54
+ function requireWarmNearSigningMaterialTask(task) {
55
+ if (!task) throw new Error("[SigningEngine][near] warm signing material was not prepared");
56
+ return task;
57
+ }
48
58
  async function resolveNearTransactionOperationStepUpMaterial(args) {
49
59
  if (args.authorization.kind === "passkey") {
50
60
  if (args.material.kind !== "passkey_live" && args.material.kind !== "passkey_sealed") throw new Error("[SigningEngine][near] passkey transaction material changed factor");
@@ -385,6 +395,8 @@ async function runAuthorizedNearTransactionWithActionsSigning({ ctx, commandSubj
385
395
  const nearAccountId = toAccountId(nearAccount.accountId);
386
396
  const relayerUrl = ctx.relayerUrl;
387
397
  const warnings = [];
398
+ const durableLeaseRecovery = ctx.nonceCoordinator.recoverDurableLeases({ walletId: String(commandSubject.walletSession.walletId) });
399
+ durableLeaseRecovery.catch(() => {});
388
400
  emitNearSigningEvent(onEvent, nearAccountId, {
389
401
  phase: SigningEventPhase.STEP_02_REQUEST_PREPARED,
390
402
  status: "running",
@@ -484,6 +496,11 @@ async function runAuthorizedNearTransactionWithActionsSigning({ ctx, commandSubj
484
496
  ...passkeyEd25519OperationStepUp ? { passkeyEd25519OperationStepUp } : {},
485
497
  ...emailOtpEd25519StepUp ? { emailOtpEd25519StepUp } : {}
486
498
  });
499
+ const warmSigningMaterialTask = preparedStepUp.kind === "warm_session" ? resolveWarmNearSigningMaterial({
500
+ preparation: yaoSigningPreparation,
501
+ executor: yaoMaterialExecutor
502
+ }) : null;
503
+ warmSigningMaterialTask?.catch(() => {});
487
504
  const confirmationAuthPayload = preparedStepUp.confirmationAuthPayload;
488
505
  if (isWarmSessionSigningAuthPlan(confirmationAuthPayload.signingAuthPlan)) emitNearSigningEvent(onEvent, nearAccountId, {
489
506
  phase: SigningEventPhase.STEP_06_AUTH_WARM_SESSION_CLAIMED,
@@ -578,6 +595,7 @@ async function runAuthorizedNearTransactionWithActionsSigning({ ctx, commandSubj
578
595
  readiness: operationStepUpReadiness
579
596
  });
580
597
  }
598
+ const confirmationCompletedAt = performance.now();
581
599
  const operationStepUpMaterial = operationStepUpReadiness ? await operationStepUpReadiness : null;
582
600
  if (transactionReviewRequired) emitNearSigningEvent(onEvent, nearAccountId, {
583
601
  phase: SigningEventPhase.STEP_05_CONFIRMATION_APPROVED,
@@ -610,7 +628,7 @@ async function runAuthorizedNearTransactionWithActionsSigning({ ctx, commandSubj
610
628
  });
611
629
  const ownsResolvedOperationStepUpMaterial = operationStepUpMaterial?.kind === "passkey_sealed" || operationStepUpMaterial?.kind === "email_otp_sealed";
612
630
  try {
613
- await ctx.nonceCoordinator.recoverDurableLeases({ walletId: String(signingLane.identity.signer.account.wallet.walletId) });
631
+ await durableLeaseRecovery;
614
632
  } catch (error) {
615
633
  disposeOwnedNearOperationStepUpMaterial({
616
634
  resolved: resolvedOperationStepUpMaterial,
@@ -633,14 +651,14 @@ async function runAuthorizedNearTransactionWithActionsSigning({ ctx, commandSubj
633
651
  });
634
652
  const resolvedMaterial = stepUpAuthorization.kind === "warm_session" ? {
635
653
  kind: "warm_session",
636
- material: await resolvePreparedNearEd25519YaoMaterial(yaoSigningPreparation, yaoMaterialExecutor)
654
+ resolved: await requireWarmNearSigningMaterialTask(warmSigningMaterialTask)
637
655
  } : {
638
656
  kind: "operation_step_up",
639
657
  resolved: resolvedOperationStepUpMaterial
640
658
  };
641
- const canonicalThresholdSessionId = resolvedMaterial.kind === "warm_session" ? resolvedMaterial.material.facts.thresholdSessionId : resolvedMaterial.resolved.material.facts.thresholdSessionId;
642
- const activeYaoClient = resolvedMaterial.kind === "warm_session" ? resolvedMaterial.material.activeClient : resolvedMaterial.resolved.material.activeClient;
643
- const activeWalletSessionState = resolvedMaterial.kind === "warm_session" ? await yaoMaterialExecutor.resolveWalletSessionState() : null;
659
+ const canonicalThresholdSessionId = resolvedMaterial.kind === "warm_session" ? resolvedMaterial.resolved.material.facts.thresholdSessionId : resolvedMaterial.resolved.material.facts.thresholdSessionId;
660
+ const activeYaoClient = resolvedMaterial.kind === "warm_session" ? resolvedMaterial.resolved.material.activeClient : resolvedMaterial.resolved.material.activeClient;
661
+ const activeWalletSessionState = resolvedMaterial.kind === "warm_session" ? resolvedMaterial.resolved.walletSessionState : null;
644
662
  const confirmedNearContext = resolvedMaterial.kind === "warm_session" ? await resolveConfirmedNearTransactionContext({
645
663
  confirmation,
646
664
  ctx,
@@ -771,6 +789,7 @@ async function runAuthorizedNearTransactionWithActionsSigning({ ctx, commandSubj
771
789
  warnings,
772
790
  nonceLeases: nonceLeaseRefs
773
791
  });
792
+ emitEd25519SigningTiming(String(signingOperation.operationId), "confirmed_to_signed", confirmationCompletedAt);
774
793
  emitNearSigningEvent(onEvent, nearAccountId, {
775
794
  phase: SigningEventPhase.STEP_11_TRANSACTION_SIGNED,
776
795
  status: "succeeded",
@@ -393,22 +393,6 @@ var NearImplicitAccountFundingRequiredError = class extends Error {
393
393
  });
394
394
  }
395
395
  };
396
- async function readImplicitNearAccountFundingState(input) {
397
- try {
398
- await input.nearClient.viewAccount(input.subject.nearAccountId);
399
- return { kind: "funded" };
400
- } catch (error) {
401
- if (!isMissingNearAccessKeyError(errorMessage(error))) throw error;
402
- }
403
- return {
404
- kind: "needs_funding",
405
- error: new NearImplicitAccountFundingRequiredError({
406
- walletId: input.subject.walletId,
407
- nearAccountId: input.subject.nearAccountId,
408
- nearPublicKeyStr: input.subject.publicKey
409
- })
410
- };
411
- }
412
396
  var NearAccountLookupFailedError = class extends Error {
413
397
  constructor(args) {
414
398
  super(args.message || `NEAR account ${args.nearAccountId} access key lookup failed.`);
@@ -442,16 +426,11 @@ async function fetchNearFreshDataForState(input) {
442
426
  let txBlockHash = previousTransactionContext?.txBlockHash;
443
427
  const fetchAccessKey = isNonceStale || !accessKeyInfo;
444
428
  const fetchBlock = isBlockStale || !txBlockHeight || !txBlockHash;
445
- const fetchImplicitAccountFunding = isImplicitNearAccountId(capturedSubject.nearAccountId) && (input.force || fetchAccessKey || !readyContext);
446
429
  let maybeAccessKey = accessKeyInfo ?? null;
447
430
  let maybeBlock = null;
448
431
  let accessKeyError = null;
449
432
  let blockError = null;
450
433
  const tasks = [];
451
- const implicitFundingPromise = fetchImplicitAccountFunding ? readImplicitNearAccountFundingState({
452
- nearClient: input.nearClient,
453
- subject: capturedSubject
454
- }) : null;
455
434
  if (fetchAccessKey) tasks.push((async () => {
456
435
  try {
457
436
  maybeAccessKey = await input.nearClient.viewAccessKey(capturedSubject.nearAccountId, capturedSubject.publicKey);
@@ -485,14 +464,6 @@ async function fetchNearFreshDataForState(input) {
485
464
  }
486
465
  })());
487
466
  if (tasks.length > 0) await Promise.all(tasks);
488
- const implicitFunding = implicitFundingPromise ? await implicitFundingPromise : null;
489
- if (implicitFunding?.kind === "needs_funding") {
490
- setNearImplicitUnfunded({
491
- state,
492
- subject: capturedSubject
493
- });
494
- throw implicitFunding.error;
495
- }
496
467
  if (accessKeyError) {
497
468
  if (accessKeyError instanceof NearImplicitAccountFundingRequiredError) setNearImplicitUnfunded({
498
469
  state,
@@ -30,6 +30,15 @@ function emitEcdsaSigningTiming(operationId, stage, startedAt, outcome = "succee
30
30
  outcome
31
31
  });
32
32
  }
33
+ function emitEd25519SigningTiming(operationId, stage, startedAt, outcome = "succeeded") {
34
+ emitSigningSessionFlowTrace("near", {
35
+ event: "ed25519_signing_timing",
36
+ operationId,
37
+ stage,
38
+ durationMs: Math.max(0, performance.now() - startedAt),
39
+ outcome
40
+ });
41
+ }
33
42
  function emitSigningLaneResolutionTrace(scope, lane, args = {}) {
34
43
  if (!lane || !isSigningSessionTraceEnabled()) return;
35
44
  try {
@@ -80,6 +89,6 @@ function isSigningSessionTraceEnabled() {
80
89
  }
81
90
  }
82
91
  //#endregion
83
- export { createSigningBoundaryTraceEvent, emitEcdsaPresignServerTiming, emitEcdsaServerTiming, emitEcdsaSigningTiming, emitSigningBoundaryTrace, emitSigningLaneResolutionTrace, emitSigningPlannerDecisionTrace, emitSigningSessionFlowFailure, emitSigningSessionFlowTrace };
92
+ export { createSigningBoundaryTraceEvent, emitEcdsaPresignServerTiming, emitEcdsaServerTiming, emitEcdsaSigningTiming, emitEd25519SigningTiming, emitSigningBoundaryTrace, emitSigningLaneResolutionTrace, emitSigningPlannerDecisionTrace, emitSigningSessionFlowFailure, emitSigningSessionFlowTrace };
84
93
 
85
94
  //# sourceMappingURL=trace.js.map
@@ -39,7 +39,7 @@ import { planPendingNearRegistration, preparePendingNearRegistration } from "../
39
39
  import { walletSessionAuthorizations } from "../../../core/indexedDB/seamsWalletDB/walletSessionAuthorizationStore.js";
40
40
  import { IndexedDBManager } from "../../../core/indexedDB/index.js";
41
41
  import { nearEd25519YaoMaterialActivationFromMetadata } from "../../../core/signingEngine/session/material/nearEd25519YaoMaterialActivation.js";
42
- import { activateWalletRegistration, authorizeWalletRegistrationNearAdmission, completeWalletRegistrationNearProvisioning, createWalletAddSignerIntent, finalizeWalletAddSigner, isEmailOtpWalletRegistrationFinalizeResponse, parseWalletRegistrationEcdsaDerivationRespond, respondWalletRegistration, setupWalletRegistration, startWalletAddSigner } from "../../../core/rpcClients/relayer/walletRegistration.js";
42
+ import { activateWalletRegistration, completeWalletRegistrationNearProvisioning, createWalletAddSignerIntent, finalizeWalletAddSigner, isEmailOtpWalletRegistrationFinalizeResponse, parseWalletRegistrationEcdsaDerivationRespond, respondWalletRegistration, setupWalletRegistration, startWalletAddSigner } from "../../../core/rpcClients/relayer/walletRegistration.js";
43
43
  import { persistPasskeyEd25519YaoSignerMaterialV1 } from "../../../core/signingEngine/session/passkey/ed25519YaoLocalMaterial.js";
44
44
  import { buildPasskeyEd25519RestoreMetadata } from "../../../core/signingEngine/session/passkey/ed25519YaoSealedSession.js";
45
45
  import { prepareWalletEcdsaRegistrationPublication, prepareWalletEd25519RegistrationPublication, prepareWalletEmailOtpEd25519RegistrationPublication } from "../../../core/signingEngine/flows/registration/accountLifecycle.js";
@@ -472,17 +472,10 @@ function registrationThreeRouteAuthorityPayload(authority) {
472
472
  default: return assertNever(authority);
473
473
  }
474
474
  }
475
- async function startEarlyNearRegistrationAdmission(args) {
475
+ async function startNearRegistrationAdmission(args) {
476
476
  const startedAt = performance.now();
477
477
  try {
478
- const deferredNear = (await authorizeWalletRegistrationNearAdmission({
479
- relayerUrl: args.relayerUrl,
480
- headers: registrationRouteHeaders(args.traceContext),
481
- registrationCeremonyId: args.registrationCeremonyId,
482
- signedSetup: args.signedSetup,
483
- ...registrationThreeRouteAuthorityPayload(args.authority)
484
- })).ed25519;
485
- const admissionReceipt = await admitDeferredNearRegistration(deferredNear, {
478
+ const admissionReceipt = await admitDeferredNearRegistration(args.deferredNear, {
486
479
  routerOrigin: new URL(args.relayerUrl).origin,
487
480
  authorization: {
488
481
  kind: "bearer",
@@ -498,7 +491,7 @@ async function startEarlyNearRegistrationAdmission(args) {
498
491
  outcome: "success"
499
492
  });
500
493
  return {
501
- deferredNear,
494
+ deferredNear: args.deferredNear,
502
495
  admissionReceipt
503
496
  };
504
497
  } catch (error) {
@@ -511,7 +504,7 @@ async function startEarlyNearRegistrationAdmission(args) {
511
504
  throw error;
512
505
  }
513
506
  }
514
- function requireEarlyNearRegistrationAdmission(admission) {
507
+ function requireNearRegistrationAdmission(admission) {
515
508
  if (!admission) throw new Error("Mixed registration did not start NEAR admission");
516
509
  return admission;
517
510
  }
@@ -688,14 +681,6 @@ async function runEcdsaEnabledThreeRouteRegistrationCeremony(args) {
688
681
  clientCeremony: args.clientCeremony
689
682
  })
690
683
  });
691
- const earlyNearAdmission = args.signerPlanKind === "near_ed25519_and_evm_family_ecdsa" ? startEarlyNearRegistrationAdmission({
692
- relayerUrl: args.relayerUrl,
693
- registrationCeremonyId: ceremonyId,
694
- signedSetup: args.signedSetup,
695
- authority: args.authority,
696
- traceContext: args.traceContext
697
- }) : null;
698
- earlyNearAdmission?.catch(ignoreNearCustodyFailure);
699
684
  const responded = await measureStrictEcdsaCeremonyStep({
700
685
  registrationTiming: args.registrationTiming,
701
686
  bucket: "ecdsaRegistrationGatewayRespondMs",
@@ -716,6 +701,14 @@ async function runEcdsaEnabledThreeRouteRegistrationCeremony(args) {
716
701
  });
717
702
  if (responded.kind === "near_ed25519") throw new Error("ECDSA registration ceremony received an Ed25519-only respond result");
718
703
  const deferredNear = responded.kind === "near_ed25519_and_evm_family_ecdsa" ? responded.ed25519 : null;
704
+ const nearAdmission = deferredNear ? startNearRegistrationAdmission({
705
+ relayerUrl: args.relayerUrl,
706
+ registrationCeremonyId: ceremonyId,
707
+ signedSetup: args.signedSetup,
708
+ deferredNear,
709
+ traceContext: args.traceContext
710
+ }) : null;
711
+ nearAdmission?.catch(ignoreNearCustodyFailure);
719
712
  const verified = await measureStrictEcdsaCeremonyStep({
720
713
  registrationTiming: args.registrationTiming,
721
714
  bucket: "ecdsaRegistrationClientProofVerifyMs",
@@ -776,8 +769,7 @@ async function runEcdsaEnabledThreeRouteRegistrationCeremony(args) {
776
769
  deferredNear
777
770
  });
778
771
  deferredNearCustodyWork = args.startDeferredNearCustody({
779
- deferredNear,
780
- earlyAdmission: requireEarlyNearRegistrationAdmission(earlyNearAdmission),
772
+ admission: requireNearRegistrationAdmission(nearAdmission),
781
773
  establishedEvmCustodyCommit: bootstrap.preActivationCommitPayload
782
774
  });
783
775
  deferredNearCustodyWork.catch(ignoreNearCustodyFailure);
@@ -1075,14 +1067,14 @@ async function startDeferredNearWalletCustody(base, input) {
1075
1067
  operation: "near_provisioning"
1076
1068
  });
1077
1069
  if (!pending || pending.operation !== "near_provisioning" || pending.phase !== "planned") throw new Error("NEAR registration has no planned continuation");
1078
- let earlyAdmissionReceipt;
1070
+ let preAdmittedReceipt;
1079
1071
  try {
1080
- const early = await input.earlyAdmission;
1081
- if (!sameRouterAbEd25519YaoRegistrationAdmissionRequestV1(early.deferredNear.admissionRequest, pending.admissionRequest)) throw new Error("Early NEAR admission changed the authorized request");
1082
- earlyAdmissionReceipt = early.admissionReceipt;
1072
+ const admitted = await input.admission;
1073
+ if (!sameRouterAbEd25519YaoRegistrationAdmissionRequestV1(admitted.deferredNear.admissionRequest, pending.admissionRequest)) throw new Error("NEAR admission changed the authorized request");
1074
+ preAdmittedReceipt = admitted.admissionReceipt;
1083
1075
  } catch (error) {
1084
- if (error instanceof Error && error.message === "Early NEAR admission changed the authorized request") throw error;
1085
- earlyAdmissionReceipt = void 0;
1076
+ if (error instanceof Error && error.message === "NEAR admission changed the authorized request") throw error;
1077
+ preAdmittedReceipt = void 0;
1086
1078
  }
1087
1079
  const { joined, admissionReceipt } = await continueNearRegistrationCustody({
1088
1080
  pending,
@@ -1091,7 +1083,7 @@ async function startDeferredNearWalletCustody(base, input) {
1091
1083
  credential: base.signedSetup,
1092
1084
  traceContext: base.traceContext,
1093
1085
  factorSecret,
1094
- ...earlyAdmissionReceipt ? { admitted: earlyAdmissionReceipt } : {}
1086
+ ...preAdmittedReceipt ? { admitted: preAdmittedReceipt } : {}
1095
1087
  });
1096
1088
  outcome = "success";
1097
1089
  return {
@@ -29,7 +29,6 @@ const ROUTE_PAYLOAD_BREAKDOWN_MAX_DEPTH = 2;
29
29
  const ROUTE_PAYLOAD_BREAKDOWN_MAX_FIELDS = 64;
30
30
  const WALLET_REGISTRATION_SETUP_PATH = "/wallets/register/setup";
31
31
  const WALLET_REGISTRATION_RESPOND_PATH = "/wallets/register/respond";
32
- const WALLET_REGISTRATION_NEAR_ADMISSION_PATH = "/wallets/register/near-admission";
33
32
  const WALLET_REGISTRATION_ACTIVATE_PATH = "/wallets/register/activate";
34
33
  const WALLET_REGISTRATION_NEAR_PROVISIONING_PATH = "/wallets/register/near-provisioning";
35
34
  /** Managed environment id header for Router API `api_credentials` auth. */
@@ -1732,47 +1731,6 @@ async function respondWalletRegistration(args) {
1732
1731
  onServerTiming: args.onServerTiming
1733
1732
  }));
1734
1733
  }
1735
- async function authorizeWalletRegistrationNearAdmission(args) {
1736
- const body = {
1737
- registrationCeremonyId: args.registrationCeremonyId,
1738
- signedSetup: args.signedSetup
1739
- };
1740
- switch (args.kind) {
1741
- case "passkey":
1742
- body.webauthn_registration = args.webauthnRegistration;
1743
- break;
1744
- case "email_otp":
1745
- body.emailOtpRegistrationProof = args.emailOtpRegistrationProof;
1746
- break;
1747
- }
1748
- const response = await postJson({
1749
- relayerUrl: args.relayerUrl,
1750
- path: WALLET_REGISTRATION_NEAR_ADMISSION_PATH,
1751
- headers: args.headers,
1752
- body
1753
- });
1754
- const responseName = "Wallet registration NEAR admission";
1755
- const record = requireWalletRegistrationResponseObject({
1756
- responseName,
1757
- field: "body",
1758
- value: response
1759
- });
1760
- assertWalletRegistrationResponseKeys(record, [
1761
- "ok",
1762
- "registrationCeremonyId",
1763
- "ed25519"
1764
- ], responseName);
1765
- if (readWalletRegistrationResponseField(record, "ok", responseName) !== true) throw new Error(`${responseName} response is not successful`);
1766
- return {
1767
- ok: true,
1768
- registrationCeremonyId: requireResponseString({
1769
- responseName,
1770
- field: "registrationCeremonyId",
1771
- value: readWalletRegistrationResponseField(record, "registrationCeremonyId", responseName)
1772
- }),
1773
- ed25519: parseWalletRegistrationRespondEd25519DeferredWork(readWalletRegistrationResponseField(record, "ed25519", responseName))
1774
- };
1775
- }
1776
1734
  function parseRegistrationEstablishedSessionResult(value, expectedWalletId) {
1777
1735
  const responseName = "Wallet registration established session";
1778
1736
  const parsed = parseRegistrationEstablishedSessionResultV2(value);
@@ -2362,6 +2320,6 @@ async function fetchWalletEcdsaKeyFactsInventoryWithWebAuthn(args) {
2362
2320
  });
2363
2321
  }
2364
2322
  //#endregion
2365
- export { activateWalletAddSignerEcdsa, activateWalletRegistration, authorizeWalletRegistrationNearAdmission, completeWalletRegistrationNearProvisioning, createWalletAddAuthMethodIntent, createWalletAddSignerIntent, fetchWalletEcdsaKeyFactsInventoryWithOperationCredential, fetchWalletEcdsaKeyFactsInventoryWithWebAuthn, finalizeWalletAddAuthMethod, finalizeWalletAddSigner, fundImplicitNearAccountForTesting, isEmailOtpWalletRegistrationFinalizeResponse, parseWalletRegistrationEcdsaDerivationRespond, requestAddAuthMethodEmailOtpChallenge, respondWalletAddSignerEcdsa, respondWalletRegistration, revokeWalletAuthMethod, setupWalletRegistration, startWalletAddAuthMethod, startWalletAddSigner };
2323
+ export { activateWalletAddSignerEcdsa, activateWalletRegistration, completeWalletRegistrationNearProvisioning, createWalletAddAuthMethodIntent, createWalletAddSignerIntent, fetchWalletEcdsaKeyFactsInventoryWithOperationCredential, fetchWalletEcdsaKeyFactsInventoryWithWebAuthn, finalizeWalletAddAuthMethod, finalizeWalletAddSigner, fundImplicitNearAccountForTesting, isEmailOtpWalletRegistrationFinalizeResponse, parseWalletRegistrationEcdsaDerivationRespond, requestAddAuthMethodEmailOtpChallenge, respondWalletAddSignerEcdsa, respondWalletRegistration, revokeWalletAuthMethod, setupWalletRegistration, startWalletAddAuthMethod, startWalletAddSigner };
2366
2324
 
2367
2325
  //# sourceMappingURL=walletRegistration.js.map