@t2000/sdk 4.1.1 → 4.1.3

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.
package/dist/index.cjs CHANGED
@@ -1372,6 +1372,13 @@ var KeypairSigner = class {
1372
1372
  }
1373
1373
  };
1374
1374
 
1375
+ // src/mpp-cost.ts
1376
+ function parseChallengeAmount(challenge) {
1377
+ const raw = challenge?.request?.amount;
1378
+ const n = typeof raw === "string" ? Number(raw) : typeof raw === "number" ? raw : Number.NaN;
1379
+ return Number.isFinite(n) ? n : void 0;
1380
+ }
1381
+
1375
1382
  // src/wallet/zkLoginSigner.ts
1376
1383
  var ZkLoginSigner = class {
1377
1384
  constructor(ephemeralKeypair, zkProof, userAddress, maxEpoch) {
@@ -6590,11 +6597,17 @@ var T2000 = class _T2000 extends eventemitter3.EventEmitter {
6590
6597
  const signerAddress = signer.getAddress();
6591
6598
  let paymentDigest;
6592
6599
  let gasCostSui = 0;
6600
+ let chargedAmount;
6593
6601
  const network = client.network === "testnet" ? "testnet" : "mainnet";
6594
6602
  const grpcBaseUrl = network === "testnet" ? "https://fullnode.testnet.sui.io" : "https://fullnode.mainnet.sui.io";
6595
6603
  const grpcClient = new SuiGrpcClient2({ baseUrl: grpcBaseUrl, network });
6596
6604
  const mppx = Mppx.create({
6597
6605
  polyfill: false,
6606
+ onChallenge: async (challenge) => {
6607
+ const parsed = parseChallengeAmount(challenge);
6608
+ if (parsed !== void 0) chargedAmount = parsed;
6609
+ return void 0;
6610
+ },
6598
6611
  methods: [sui({
6599
6612
  client,
6600
6613
  currency: USDC,
@@ -6626,13 +6639,13 @@ var T2000 = class _T2000 extends eventemitter3.EventEmitter {
6626
6639
  }
6627
6640
  const paid = !!paymentDigest;
6628
6641
  if (paid) {
6629
- this.enforcer.recordUsage(options.maxPrice ?? 1);
6642
+ this.enforcer.recordUsage(chargedAmount ?? options.maxPrice ?? 1);
6630
6643
  }
6631
6644
  return {
6632
6645
  status: response.status,
6633
6646
  body,
6634
6647
  paid,
6635
- cost: paid ? options.maxPrice ?? void 0 : void 0,
6648
+ cost: paid ? chargedAmount ?? options.maxPrice ?? void 0 : void 0,
6636
6649
  gasCostSui: paid ? gasCostSui : void 0,
6637
6650
  receipt: paymentDigest ? { reference: paymentDigest, timestamp: (/* @__PURE__ */ new Date()).toISOString() } : void 0
6638
6651
  };