@unicitylabs/sphere-sdk 0.14.9 → 0.14.10

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.
@@ -9304,6 +9304,10 @@ var import_StateMask = require("@unicitylabs/state-transition-sdk/lib/transactio
9304
9304
  var import_MintJustificationVerifierService = require("@unicitylabs/state-transition-sdk/lib/transaction/verification/MintJustificationVerifierService.js");
9305
9305
  var import_TokenIssuanceVerifierService = require("@unicitylabs/state-transition-sdk/lib/transaction/verification/TokenIssuanceVerifierService.js");
9306
9306
  var import_VerificationContext = require("@unicitylabs/state-transition-sdk/lib/transaction/verification/VerificationContext.js");
9307
+ var import_UnicityCertificateVerifier = require("@unicitylabs/state-transition-sdk/lib/api/bft/verification/UnicityCertificateVerifier.js");
9308
+ var import_UnicitySealQuorumSignaturesVerificationRule = require("@unicitylabs/state-transition-sdk/lib/api/bft/verification/rule/UnicitySealQuorumSignaturesVerificationRule.js");
9309
+ var import_VerifiedSealCache = require("@unicitylabs/state-transition-sdk/lib/api/bft/verification/VerifiedSealCache.js");
9310
+ var import_Secp256k1SignatureVerifier = require("@unicitylabs/state-transition-sdk/lib/crypto/secp256k1/Secp256k1SignatureVerifier.js");
9307
9311
  var import_WorkerTokenVerifier = require("@unicitylabs/state-transition-sdk/lib/transaction/verification/worker/WorkerTokenVerifier.js");
9308
9312
  var import_EncodedPredicate = require("@unicitylabs/state-transition-sdk/lib/predicate/EncodedPredicate.js");
9309
9313
  var import_SignaturePredicate = require("@unicitylabs/state-transition-sdk/lib/predicate/builtin/SignaturePredicate.js");
@@ -9523,6 +9527,7 @@ async function awaitProofBounded(deps, transaction, signal) {
9523
9527
  deps.client,
9524
9528
  deps.trustBase,
9525
9529
  deps.predicateVerifier,
9530
+ deps.unicityCertificateVerifier,
9526
9531
  transaction,
9527
9532
  signal,
9528
9533
  deps.intervalMs
@@ -9729,7 +9734,7 @@ async function burntTokenFromCheckpoint(deps, storedBytes, reDerivedBurnTx, sour
9729
9734
  }
9730
9735
  let burnCertified;
9731
9736
  try {
9732
- burnCertified = await reDerivedBurnTx.toCertifiedTransaction(deps.trustBase, deps.predicateVerifier, burnProof);
9737
+ burnCertified = await reDerivedBurnTx.toCertifiedTransaction(deps.trustBase, deps.predicateVerifier, deps.unicityCertificateVerifier, burnProof);
9733
9738
  } catch (err) {
9734
9739
  if (isTrustbaseFailure(err)) {
9735
9740
  throw new CheckpointTrustbaseMismatchError(
@@ -9837,7 +9842,7 @@ var SphereTokenEngine = class {
9837
9842
  "AGGREGATOR_ERROR",
9838
9843
  options
9839
9844
  );
9840
- const certified = await mintTx.toCertifiedTransaction(this.deps.trustBase, this.deps.predicateVerifier, proof);
9845
+ const certified = await mintTx.toCertifiedTransaction(this.deps.trustBase, this.deps.predicateVerifier, this.deps.unicityCertificateVerifier, proof);
9841
9846
  const token = await import_Token.Token.mint(certified, this.deps.verificationContext);
9842
9847
  return this.wrapToken(token);
9843
9848
  }
@@ -9854,7 +9859,7 @@ var SphereTokenEngine = class {
9854
9859
  "AGGREGATOR_ERROR",
9855
9860
  options
9856
9861
  );
9857
- const certified = await mintTx.toCertifiedTransaction(this.deps.trustBase, this.deps.predicateVerifier, proof);
9862
+ const certified = await mintTx.toCertifiedTransaction(this.deps.trustBase, this.deps.predicateVerifier, this.deps.unicityCertificateVerifier, proof);
9858
9863
  const token = await import_Token.Token.mint(certified, this.deps.verificationContext);
9859
9864
  return this.wrapToken(token);
9860
9865
  }
@@ -9875,7 +9880,7 @@ var SphereTokenEngine = class {
9875
9880
  "TRANSFER_FAILED",
9876
9881
  options
9877
9882
  );
9878
- const certified = await transferTx.toCertifiedTransaction(this.deps.trustBase, this.deps.predicateVerifier, proof);
9883
+ const certified = await transferTx.toCertifiedTransaction(this.deps.trustBase, this.deps.predicateVerifier, this.deps.unicityCertificateVerifier, proof);
9879
9884
  const transferred = await params.token.sdkToken.transfer(certified, this.deps.verificationContext);
9880
9885
  return this.wrapToken(transferred);
9881
9886
  }
@@ -9962,7 +9967,7 @@ var SphereTokenEngine = class {
9962
9967
  const burnUnlock = await import_SignaturePredicateUnlockScript.SignaturePredicateUnlockScript.create(burnTx, this.deps.signingService);
9963
9968
  const burnCert = await import_CertificationData.CertificationData.fromTransaction(burnTx, burnUnlock);
9964
9969
  const burnProof = await this.submitAndAwaitProof(burnCert, burnTx, "Split burn failed", "TRANSFER_FAILED", ctx.options);
9965
- const burnCertified = await burnTx.toCertifiedTransaction(this.deps.trustBase, this.deps.predicateVerifier, burnProof);
9970
+ const burnCertified = await burnTx.toCertifiedTransaction(this.deps.trustBase, this.deps.predicateVerifier, this.deps.unicityCertificateVerifier, burnProof);
9966
9971
  const burntToken = await ctx.params.token.sdkToken.transfer(burnCertified, this.deps.verificationContext);
9967
9972
  return { burntToken, burnProof };
9968
9973
  }
@@ -10001,7 +10006,7 @@ var SphereTokenEngine = class {
10001
10006
  );
10002
10007
  const certData = await import_CertificationData.CertificationData.fromMintTransaction(mintTx);
10003
10008
  const proof = await this.submitSplitMintLeg(certData, mintTx, options);
10004
- const certified = await mintTx.toCertifiedTransaction(this.deps.trustBase, this.deps.predicateVerifier, proof);
10009
+ const certified = await mintTx.toCertifiedTransaction(this.deps.trustBase, this.deps.predicateVerifier, this.deps.unicityCertificateVerifier, proof);
10005
10010
  const token = await import_Token.Token.mint(certified, this.deps.verificationContext);
10006
10011
  return this.wrapToken(token);
10007
10012
  }
@@ -10144,6 +10149,7 @@ var SphereTokenEngine = class {
10144
10149
  client: this.deps.client,
10145
10150
  trustBase: this.deps.trustBase,
10146
10151
  predicateVerifier: this.deps.predicateVerifier,
10152
+ unicityCertificateVerifier: this.deps.unicityCertificateVerifier,
10147
10153
  intervalMs: this.deps.proofPollIntervalMs ?? DEFAULT_PROOF_POLL_INTERVAL_MS
10148
10154
  // #683
10149
10155
  },
@@ -10235,6 +10241,9 @@ async function createSphereTokenEngine(config) {
10235
10241
  }
10236
10242
  const trustBase = import_RootTrustBase.RootTrustBase.fromJSON(config.trustBaseJson);
10237
10243
  const predicateVerifier = import_PredicateVerifierService.PredicateVerifierService.create();
10244
+ const unicityCertificateVerifier = new import_UnicityCertificateVerifier.UnicityCertificateVerifier(
10245
+ new import_UnicitySealQuorumSignaturesVerificationRule.UnicitySealQuorumSignaturesVerificationRule(new import_Secp256k1SignatureVerifier.Secp256k1SignatureVerifier(), new import_VerifiedSealCache.VerifiedSealCache(256))
10246
+ );
10238
10247
  const mintJustificationVerifier = new import_MintJustificationVerifierService.MintJustificationVerifierService();
10239
10248
  mintJustificationVerifier.register(
10240
10249
  new import_SplitMintJustificationVerifier.SplitMintJustificationVerifier(decodeSpherePaymentData)
@@ -10243,10 +10252,12 @@ async function createSphereTokenEngine(config) {
10243
10252
  client: new import_StateTransitionClient.StateTransitionClient(new import_AggregatorClient.AggregatorClient(config.aggregatorUrl, config.apiKey ?? null)),
10244
10253
  trustBase,
10245
10254
  predicateVerifier,
10255
+ unicityCertificateVerifier,
10246
10256
  mintJustificationVerifier,
10247
10257
  verificationContext: new import_VerificationContext.VerificationContext(
10248
10258
  trustBase,
10249
10259
  predicateVerifier,
10260
+ unicityCertificateVerifier,
10250
10261
  mintJustificationVerifier,
10251
10262
  new import_TokenIssuanceVerifierService.TokenIssuanceVerifierService(false)
10252
10263
  ),