@1inch/fusion-sdk 1.0.1-rc.1 → 1.0.1-rc.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.
Files changed (31) hide show
  1. package/dist/auction-calculator/auction-calculator.d.ts +11 -5
  2. package/dist/auction-calculator/auction-calculator.js +27 -11
  3. package/dist/auction-calculator/auction-calculator.js.map +1 -1
  4. package/dist/auction-calculator/auction-calculator.spec.js +29 -3
  5. package/dist/auction-calculator/auction-calculator.spec.js.map +1 -1
  6. package/dist/fusion-order/auction-details/auction-details.js +2 -2
  7. package/dist/fusion-order/auction-details/auction-details.js.map +1 -1
  8. package/dist/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.js +2 -2
  9. package/dist/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.js.map +1 -1
  10. package/dist/index.d.ts +1 -1
  11. package/dist/index.js +7 -1
  12. package/dist/index.js.map +1 -1
  13. package/dist/utils.d.ts +0 -5
  14. package/dist/utils.js +1 -30
  15. package/dist/utils.js.map +1 -1
  16. package/package.json +8 -7
  17. package/dist/utils/bytes/bit-mask.d.ts +0 -7
  18. package/dist/utils/bytes/bit-mask.js +0 -22
  19. package/dist/utils/bytes/bit-mask.js.map +0 -1
  20. package/dist/utils/bytes/bit-mask.spec.d.ts +0 -1
  21. package/dist/utils/bytes/bit-mask.spec.js +0 -16
  22. package/dist/utils/bytes/bit-mask.spec.js.map +0 -1
  23. package/dist/utils/bytes/bn.d.ts +0 -20
  24. package/dist/utils/bytes/bn.js +0 -68
  25. package/dist/utils/bytes/bn.js.map +0 -1
  26. package/dist/utils/bytes/bn.spec.d.ts +0 -1
  27. package/dist/utils/bytes/bn.spec.js +0 -19
  28. package/dist/utils/bytes/bn.spec.js.map +0 -1
  29. package/dist/utils/bytes/bytes-iter.d.ts +0 -12
  30. package/dist/utils/bytes/bytes-iter.js +0 -47
  31. package/dist/utils/bytes/bytes-iter.js.map +0 -1
@@ -1,13 +1,19 @@
1
- import { SettlementPostInteractionData } from '../fusion-order/settlement-post-interaction-data';
2
- import { AuctionDetails, AuctionPoint } from '../fusion-order/auction-details';
1
+ import { SettlementPostInteractionData, AuctionDetails, AuctionPoint } from '../fusion-order';
3
2
  export declare class AuctionCalculator {
4
3
  private readonly startTime;
5
4
  private readonly duration;
6
5
  private readonly initialRateBump;
7
6
  private readonly points;
8
7
  private readonly takerFeeRatio;
9
- constructor(startTime: bigint, duration: bigint, initialRateBump: bigint, points: AuctionPoint[], takerFeeRatio: bigint);
8
+ private readonly gasCost;
9
+ private static GAS_PRICE_BASE;
10
+ constructor(startTime: bigint, duration: bigint, initialRateBump: bigint, points: AuctionPoint[], takerFeeRatio: bigint, gasCost?: {
11
+ gasBumpEstimate: bigint;
12
+ gasPriceEstimate: bigint;
13
+ });
10
14
  static fromAuctionData(data: SettlementPostInteractionData, details: AuctionDetails): AuctionCalculator;
11
- calcAuctionTakingAmount(takingAmount: string, rate: number): string;
12
- calcRateBump(time: number): number;
15
+ calcAuctionTakingAmount(takingAmount: bigint, rate: number): bigint;
16
+ calcRateBump(time: bigint, blockBaseFee?: bigint): number;
17
+ private getGasPriceBump;
18
+ private getAuctionBump;
13
19
  }
@@ -5,34 +5,51 @@ const calc_1 = require("./calc");
5
5
  const constants_1 = require("./constants");
6
6
  const sdk_1 = require("../sdk");
7
7
  class AuctionCalculator {
8
- constructor(startTime, duration, initialRateBump, points, takerFeeRatio) {
8
+ constructor(startTime, duration, initialRateBump, points, takerFeeRatio, gasCost = { gasBumpEstimate: 0n, gasPriceEstimate: 0n }) {
9
9
  this.startTime = startTime;
10
10
  this.duration = duration;
11
11
  this.initialRateBump = initialRateBump;
12
12
  this.points = points;
13
13
  this.takerFeeRatio = takerFeeRatio;
14
+ this.gasCost = gasCost;
14
15
  }
15
16
  static fromAuctionData(data, details) {
16
- return new AuctionCalculator(data.auctionStartTime, details.duration, details.initialRateBump, details.points, data.integratorFee?.ratio || 0n);
17
+ return new AuctionCalculator(data.auctionStartTime, details.duration, details.initialRateBump, details.points, data.integratorFee?.ratio || 0n, details.gasCost);
17
18
  }
18
19
  calcAuctionTakingAmount(takingAmount, rate) {
19
20
  const auctionTakingAmount = (BigInt(takingAmount) * (BigInt(rate) + constants_1.RATE_BUMP_DENOMINATOR)) /
20
21
  constants_1.RATE_BUMP_DENOMINATOR;
21
22
  if (this.takerFeeRatio === 0n) {
22
- return auctionTakingAmount.toString();
23
+ return auctionTakingAmount;
23
24
  }
24
- return (0, sdk_1.addRatioToAmount)(auctionTakingAmount, this.takerFeeRatio).toString();
25
+ return (0, sdk_1.addRatioToAmount)(auctionTakingAmount, this.takerFeeRatio);
25
26
  }
26
- calcRateBump(time) {
27
+ calcRateBump(time, blockBaseFee = 0n) {
28
+ const gasBump = this.getGasPriceBump(blockBaseFee);
29
+ const auctionBump = this.getAuctionBump(time);
30
+ const final = auctionBump > gasBump ? auctionBump - gasBump : 0n;
31
+ return Number(final);
32
+ }
33
+ getGasPriceBump(blockBaseFee) {
34
+ if (this.gasCost.gasBumpEstimate === 0n ||
35
+ this.gasCost.gasPriceEstimate === 0n ||
36
+ blockBaseFee === 0n) {
37
+ return 0n;
38
+ }
39
+ return ((this.gasCost.gasBumpEstimate * blockBaseFee) /
40
+ this.gasCost.gasPriceEstimate /
41
+ AuctionCalculator.GAS_PRICE_BASE);
42
+ }
43
+ getAuctionBump(time) {
27
44
  let cumulativeTime = BigInt(this.startTime);
28
45
  const lastTime = BigInt(this.duration) + cumulativeTime;
29
46
  const startBump = BigInt(this.initialRateBump);
30
47
  const currentTime = BigInt(time);
31
48
  if (currentTime <= cumulativeTime) {
32
- return Number(this.initialRateBump);
49
+ return this.initialRateBump;
33
50
  }
34
51
  else if (currentTime >= lastTime) {
35
- return 0;
52
+ return 0n;
36
53
  }
37
54
  let prevCoefficient = startBump;
38
55
  let prevCumulativeTime = cumulativeTime;
@@ -41,15 +58,14 @@ class AuctionCalculator {
41
58
  cumulativeTime = cumulativeTime + BigInt(delay);
42
59
  const coefficientBN = BigInt(coefficient);
43
60
  if (cumulativeTime >= currentTime) {
44
- const rate = (0, calc_1.linearInterpolation)(prevCumulativeTime, cumulativeTime, prevCoefficient, coefficientBN, currentTime);
45
- return Number(rate);
61
+ return (0, calc_1.linearInterpolation)(prevCumulativeTime, cumulativeTime, prevCoefficient, coefficientBN, currentTime);
46
62
  }
47
63
  prevCumulativeTime = cumulativeTime;
48
64
  prevCoefficient = coefficientBN;
49
65
  }
50
- const rate = (0, calc_1.linearInterpolation)(prevCumulativeTime, lastTime, prevCoefficient, 0n, currentTime);
51
- return Number(rate);
66
+ return (0, calc_1.linearInterpolation)(prevCumulativeTime, lastTime, prevCoefficient, 0n, currentTime);
52
67
  }
53
68
  }
54
69
  exports.AuctionCalculator = AuctionCalculator;
70
+ AuctionCalculator.GAS_PRICE_BASE = 1000000n;
55
71
  //# sourceMappingURL=auction-calculator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"auction-calculator.js","sourceRoot":"","sources":["../../src/auction-calculator/auction-calculator.ts"],"names":[],"mappings":";;;AAAA,iCAA0C;AAC1C,2CAAiD;AAGjD,gCAAuC;AAEvC,MAAa,iBAAiB;IAC1B,YACqB,SAAiB,EACjB,QAAgB,EAChB,eAAuB,EACvB,MAAsB,EACtB,aAAqB;QAJrB,cAAS,GAAT,SAAS,CAAQ;QACjB,aAAQ,GAAR,QAAQ,CAAQ;QAChB,oBAAe,GAAf,eAAe,CAAQ;QACvB,WAAM,GAAN,MAAM,CAAgB;QACtB,kBAAa,GAAb,aAAa,CAAQ;IACvC,CAAC;IAEJ,MAAM,CAAC,eAAe,CAClB,IAAmC,EACnC,OAAuB;QAEvB,OAAO,IAAI,iBAAiB,CACxB,IAAI,CAAC,gBAAgB,EACrB,OAAO,CAAC,QAAQ,EAChB,OAAO,CAAC,eAAe,EACvB,OAAO,CAAC,MAAM,EACd,IAAI,CAAC,aAAa,EAAE,KAAK,IAAI,EAAE,CAClC,CAAA;IACL,CAAC;IAKD,uBAAuB,CAAC,YAAoB,EAAE,IAAY;QACtD,MAAM,mBAAmB,GACrB,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,iCAAqB,CAAC,CAAC;YAC/D,iCAAqB,CAAA;QAEzB,IAAI,IAAI,CAAC,aAAa,KAAK,EAAE,EAAE;YAC3B,OAAO,mBAAmB,CAAC,QAAQ,EAAE,CAAA;SACxC;QAED,OAAO,IAAA,sBAAgB,EACnB,mBAAmB,EACnB,IAAI,CAAC,aAAa,CACrB,CAAC,QAAQ,EAAE,CAAA;IAChB,CAAC;IAMD,YAAY,CAAC,IAAY;QACrB,IAAI,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAC3C,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,cAAc,CAAA;QACvD,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;QAE9C,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;QAEhC,IAAI,WAAW,IAAI,cAAc,EAAE;YAC/B,OAAO,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;SACtC;aAAM,IAAI,WAAW,IAAI,QAAQ,EAAE;YAChC,OAAO,CAAC,CAAA;SACX;QAED,IAAI,eAAe,GAAG,SAAS,CAAA;QAC/B,IAAI,kBAAkB,GAAG,cAAc,CAAA;QAEvC,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YAC9C,MAAM,EAAC,WAAW,EAAE,KAAK,EAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;YAE3C,cAAc,GAAG,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;YAC/C,MAAM,aAAa,GAAG,MAAM,CAAC,WAAW,CAAC,CAAA;YAEzC,IAAI,cAAc,IAAI,WAAW,EAAE;gBAC/B,MAAM,IAAI,GAAG,IAAA,0BAAmB,EAC5B,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,aAAa,EACb,WAAW,CACd,CAAA;gBAED,OAAO,MAAM,CAAC,IAAI,CAAC,CAAA;aACtB;YAED,kBAAkB,GAAG,cAAc,CAAA;YACnC,eAAe,GAAG,aAAa,CAAA;SAClC;QAED,MAAM,IAAI,GAAG,IAAA,0BAAmB,EAC5B,kBAAkB,EAClB,QAAQ,EACR,eAAe,EACf,EAAE,EACF,WAAW,CACd,CAAA;QAED,OAAO,MAAM,CAAC,IAAI,CAAC,CAAA;IACvB,CAAC;CACJ;AA5FD,8CA4FC"}
1
+ {"version":3,"file":"auction-calculator.js","sourceRoot":"","sources":["../../src/auction-calculator/auction-calculator.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const limit_order_sdk_1 = require("@1inch/limit-order-sdk");
4
+ const ethers_1 = require("ethers");
4
5
  const auction_calculator_1 = require("./auction-calculator");
5
6
  const fusion_order_1 = require("../fusion-order");
6
7
  const sdk_1 = require("../sdk");
@@ -23,10 +24,35 @@ describe('Auction Calculator', () => {
23
24
  points: []
24
25
  });
25
26
  const calculator = auction_calculator_1.AuctionCalculator.fromAuctionData(postInteraction, auctionDetails);
26
- const rate = calculator.calcRateBump(Number(auctionStartTime + 60n));
27
- const auctionTakingAmount = calculator.calcAuctionTakingAmount('1420000000', rate);
27
+ const rate = calculator.calcRateBump(auctionStartTime + 60n);
28
+ const auctionTakingAmount = calculator.calcAuctionTakingAmount(1420000000n, rate);
28
29
  expect(rate).toBe(25000);
29
- expect(auctionTakingAmount).toBe('1423692355');
30
+ expect(auctionTakingAmount).toBe(1423692355n);
31
+ });
32
+ describe('Gas bump', () => {
33
+ const now = BigInt(Math.floor(Date.now() / 1000));
34
+ const duration = 1800n;
35
+ const takingAmount = (0, ethers_1.parseEther)('1');
36
+ const calculator = new auction_calculator_1.AuctionCalculator(now - 60n, duration, 1000000n, [{ delay: 60, coefficient: 500000 }], 0n, {
37
+ gasBumpEstimate: 10000n,
38
+ gasPriceEstimate: 1000n
39
+ });
40
+ it('0 gwei = no gas fee', () => {
41
+ const bump = calculator.calcRateBump(now);
42
+ expect(calculator.calcAuctionTakingAmount(takingAmount, bump)).toBe((0, ethers_1.parseEther)('1.05'));
43
+ });
44
+ it('0.1 gwei = 0.01% gas fee', () => {
45
+ const bump = calculator.calcRateBump(now, (0, ethers_1.parseUnits)('1', 8));
46
+ expect(calculator.calcAuctionTakingAmount(takingAmount, bump)).toBe((0, ethers_1.parseEther)('1.0499'));
47
+ });
48
+ it('15 gwei = 1.5% gas fee', () => {
49
+ const bump = calculator.calcRateBump(now, (0, ethers_1.parseUnits)('15', 9));
50
+ expect(calculator.calcAuctionTakingAmount(takingAmount, bump)).toBe((0, ethers_1.parseEther)('1.035'));
51
+ });
52
+ it('100 gwei = 10% gas fee, should be capped with takingAmount', () => {
53
+ const bump = calculator.calcRateBump(now, (0, ethers_1.parseUnits)('100', 9));
54
+ expect(calculator.calcAuctionTakingAmount(takingAmount, bump)).toBe((0, ethers_1.parseEther)('1'));
55
+ });
30
56
  });
31
57
  });
32
58
  //# sourceMappingURL=auction-calculator.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"auction-calculator.spec.js","sourceRoot":"","sources":["../../src/auction-calculator/auction-calculator.spec.ts"],"names":[],"mappings":";;AAAA,4DAA8C;AAC9C,6DAAsD;AACtD,kDAA6E;AAC7E,gCAAuC;AAEvC,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAChC,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC3D,MAAM,gBAAgB,GAAG,WAAW,CAAA;QAEpC,MAAM,eAAe,GAAG,4CAA6B,CAAC,GAAG,CAAC;YACtD,aAAa,EAAE;gBACX,KAAK,EAAE,IAAA,sBAAgB,EAAC,CAAC,CAAC;gBAC1B,QAAQ,EAAE,yBAAO,CAAC,UAAU,CAAC,EAAE,CAAC;aACnC;YACD,OAAO,EAAE,EAAE;YACX,gBAAgB;YAChB,SAAS,EAAE,EAAE;SAChB,CAAC,CAAA;QAEF,MAAM,cAAc,GAAG,IAAI,6BAAc,CAAC;YACtC,SAAS,EAAE,gBAAgB;YAC3B,eAAe,EAAE,KAAK;YACtB,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,EAAE;SACb,CAAC,CAAA;QAEF,MAAM,UAAU,GAAG,sCAAiB,CAAC,eAAe,CAChD,eAAe,EACf,cAAc,CACjB,CAAA;QAED,MAAM,IAAI,GAAG,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,gBAAgB,GAAG,GAAG,CAAC,CAAC,CAAA;QACpE,MAAM,mBAAmB,GAAG,UAAU,CAAC,uBAAuB,CAC1D,YAAY,EACZ,IAAI,CACP,CAAA;QAED,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACxB,MAAM,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IAClD,CAAC,CAAC,CAAA;AACN,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"auction-calculator.spec.js","sourceRoot":"","sources":["../../src/auction-calculator/auction-calculator.spec.ts"],"names":[],"mappings":"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"}
@@ -5,10 +5,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.AuctionDetails = void 0;
7
7
  const ethers_1 = require("ethers");
8
+ const byte_utils_1 = require("@1inch/byte-utils");
8
9
  const assert_1 = __importDefault(require("assert"));
9
10
  const validations_1 = require("../../validations");
10
11
  const utils_1 = require("../../utils");
11
- const bytes_iter_1 = require("../../utils/bytes/bytes-iter");
12
12
  const constants_1 = require("../../constants");
13
13
  class AuctionDetails {
14
14
  constructor(auction) {
@@ -28,7 +28,7 @@ class AuctionDetails {
28
28
  }
29
29
  static decode(data) {
30
30
  (0, assert_1.default)((0, validations_1.isHexBytes)(data), 'Invalid auction details data');
31
- const iter = new bytes_iter_1.BytesIter(data);
31
+ const iter = byte_utils_1.BytesIter.BigInt(data);
32
32
  const gasBumpEstimate = iter.nextUint24();
33
33
  const gasPriceEstimate = iter.nextUint32();
34
34
  const start = iter.nextUint32();
@@ -1 +1 @@
1
- {"version":3,"file":"auction-details.js","sourceRoot":"","sources":["../../../src/fusion-order/auction-details/auction-details.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auction-details.js","sourceRoot":"","sources":["../../../src/fusion-order/auction-details/auction-details.ts"],"names":[],"mappings":"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"}
@@ -6,9 +6,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.SettlementPostInteractionData = void 0;
7
7
  const ethers_1 = require("ethers");
8
8
  const limit_order_sdk_1 = require("@1inch/limit-order-sdk");
9
+ const byte_utils_1 = require("@1inch/byte-utils");
9
10
  const assert_1 = __importDefault(require("assert"));
10
11
  const validations_1 = require("../../validations");
11
- const bytes_iter_1 = require("../../utils/bytes/bytes-iter");
12
12
  const utils_1 = require("../../utils");
13
13
  class SettlementPostInteractionData {
14
14
  constructor(data) {
@@ -28,7 +28,7 @@ class SettlementPostInteractionData {
28
28
  }
29
29
  static decode(data) {
30
30
  (0, assert_1.default)((0, validations_1.isHexBytes)(data), 'Post interaction data must be valid bytes string');
31
- const iter = new bytes_iter_1.BytesIter(data);
31
+ const iter = byte_utils_1.BytesIter.BigInt(data);
32
32
  const feeType = iter.nextByte();
33
33
  let bankFee = 0n;
34
34
  let integratorFee;
@@ -1 +1 @@
1
- {"version":3,"file":"settlement-post-interaction-data.js","sourceRoot":"","sources":["../../../src/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settlement-post-interaction-data.js","sourceRoot":"","sources":["../../../src/fusion-order/settlement-post-interaction-data/settlement-post-interaction-data.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export { Address } from '@1inch/limit-order-sdk';
1
+ export { Address, LimitOrderV4Struct, Extension, randBigInt, getLimitOrderContract, Interaction, TakerTraits, ExtensionBuilder } from '@1inch/limit-order-sdk';
2
2
  export * from './fusion-order/index';
3
3
  export * from './auction-calculator/index';
4
4
  export * from './connector/index';
package/dist/index.js CHANGED
@@ -14,9 +14,15 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.Address = void 0;
17
+ exports.ExtensionBuilder = exports.TakerTraits = exports.Interaction = exports.getLimitOrderContract = exports.randBigInt = exports.Extension = exports.Address = void 0;
18
18
  var limit_order_sdk_1 = require("@1inch/limit-order-sdk");
19
19
  Object.defineProperty(exports, "Address", { enumerable: true, get: function () { return limit_order_sdk_1.Address; } });
20
+ Object.defineProperty(exports, "Extension", { enumerable: true, get: function () { return limit_order_sdk_1.Extension; } });
21
+ Object.defineProperty(exports, "randBigInt", { enumerable: true, get: function () { return limit_order_sdk_1.randBigInt; } });
22
+ Object.defineProperty(exports, "getLimitOrderContract", { enumerable: true, get: function () { return limit_order_sdk_1.getLimitOrderContract; } });
23
+ Object.defineProperty(exports, "Interaction", { enumerable: true, get: function () { return limit_order_sdk_1.Interaction; } });
24
+ Object.defineProperty(exports, "TakerTraits", { enumerable: true, get: function () { return limit_order_sdk_1.TakerTraits; } });
25
+ Object.defineProperty(exports, "ExtensionBuilder", { enumerable: true, get: function () { return limit_order_sdk_1.ExtensionBuilder; } });
20
26
  __exportStar(require("./fusion-order/index"), exports);
21
27
  __exportStar(require("./auction-calculator/index"), exports);
22
28
  __exportStar(require("./connector/index"), exports);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0DAA8C;AAAtC,0GAAA,OAAO,OAAA;AACf,uDAAoC;AACpC,6DAA0C;AAC1C,oDAAiC;AACjC,8CAA2B;AAC3B,8CAA2B;AAC3B,0CAAuB;AACvB,kDAA+B;AAC/B,gDAA6B;AAC7B,2CAAwB;AACxB,2CAAwB;AACxB,yDAAsC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0DAS+B;AAR3B,0GAAA,OAAO,OAAA;AAEP,4GAAA,SAAS,OAAA;AACT,6GAAA,UAAU,OAAA;AACV,wHAAA,qBAAqB,OAAA;AACrB,8GAAA,WAAW,OAAA;AACX,8GAAA,WAAW,OAAA;AACX,mHAAA,gBAAgB,OAAA;AAEpB,uDAAoC;AACpC,6DAA0C;AAC1C,oDAAiC;AACjC,8CAA2B;AAC3B,8CAA2B;AAC3B,0CAAuB;AACvB,kDAA+B;AAC/B,gDAA6B;AAC7B,2CAAwB;AACxB,2CAAwB;AACxB,yDAAsC"}
package/dist/utils.d.ts CHANGED
@@ -1,7 +1,2 @@
1
- import { BN } from './utils/bytes/bn';
2
- export declare function toSec(time: number | string | Date): number;
3
- export declare function toBN(val: number | string): BN;
4
1
  export declare function trim0x(data: string): string;
5
2
  export declare function add0x(data: string): string;
6
- export declare function getBytesCount(hex: string): bigint;
7
- export declare function randBigInt(max: number): bigint;
package/dist/utils.js CHANGED
@@ -1,26 +1,6 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.randBigInt = exports.getBytesCount = exports.add0x = exports.trim0x = exports.toBN = exports.toSec = void 0;
7
- const assert_1 = __importDefault(require("assert"));
8
- const validations_1 = require("./validations");
9
- const bn_1 = require("./utils/bytes/bn");
10
- function toSec(time) {
11
- const t = time instanceof Date ? time.getTime() : time;
12
- return Math.floor(+t / 1000);
13
- }
14
- exports.toSec = toSec;
15
- function toBN(val) {
16
- if (typeof val === 'number') {
17
- if (!Number.isSafeInteger(val)) {
18
- throw new Error('integer is not safe');
19
- }
20
- }
21
- return new bn_1.BN(BigInt(val));
22
- }
23
- exports.toBN = toBN;
3
+ exports.add0x = exports.trim0x = void 0;
24
4
  function trim0x(data) {
25
5
  if (data.startsWith('0x')) {
26
6
  return data.substring(2);
@@ -35,13 +15,4 @@ function add0x(data) {
35
15
  return '0x' + data;
36
16
  }
37
17
  exports.add0x = add0x;
38
- function getBytesCount(hex) {
39
- (0, assert_1.default)((0, validations_1.isHexBytes)(hex), 'invalid hex');
40
- return BigInt(trim0x(hex).length / 2);
41
- }
42
- exports.getBytesCount = getBytesCount;
43
- function randBigInt(max) {
44
- return BigInt(Math.floor(Math.random() * max));
45
- }
46
- exports.randBigInt = randBigInt;
47
18
  //# sourceMappingURL=utils.js.map
package/dist/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA2B;AAC3B,+CAAwC;AACxC,yCAAmC;AAEnC,SAAgB,KAAK,CAAC,IAA4B;IAC9C,MAAM,CAAC,GAAG,IAAI,YAAY,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;IAEtD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAA;AAChC,CAAC;AAJD,sBAIC;AAED,SAAgB,IAAI,CAAC,GAAoB;IACrC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;QACzB,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE;YAC5B,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;SACzC;KACJ;IAED,OAAO,IAAI,OAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;AAC9B,CAAC;AARD,oBAQC;AAED,SAAgB,MAAM,CAAC,IAAY;IAC/B,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;QACvB,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;KAC3B;IAED,OAAO,IAAI,CAAA;AACf,CAAC;AAND,wBAMC;AAED,SAAgB,KAAK,CAAC,IAAY;IAC9B,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;QACrB,OAAO,IAAI,CAAA;KACd;IAED,OAAO,IAAI,GAAG,IAAI,CAAA;AACtB,CAAC;AAND,sBAMC;AAED,SAAgB,aAAa,CAAC,GAAW;IACrC,IAAA,gBAAM,EAAC,IAAA,wBAAU,EAAC,GAAG,CAAC,EAAE,aAAa,CAAC,CAAA;IAEtC,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;AACzC,CAAC;AAJD,sCAIC;AAED,SAAgB,UAAU,CAAC,GAAW;IAClC,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAA;AAClD,CAAC;AAFD,gCAEC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;AAAA,SAAgB,MAAM,CAAC,IAAY;IAC/B,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;QACvB,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;KAC3B;IAED,OAAO,IAAI,CAAA;AACf,CAAC;AAND,wBAMC;AAED,SAAgB,KAAK,CAAC,IAAY;IAC9B,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;QACrB,OAAO,IAAI,CAAA;KACd;IAED,OAAO,IAAI,GAAG,IAAI,CAAA;AACtB,CAAC;AAND,sBAMC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@1inch/fusion-sdk",
3
- "version": "1.0.1-rc.1",
3
+ "version": "1.0.1-rc.3",
4
4
  "description": "1inch Fusion Mode SDK",
5
5
  "author": "@1inch",
6
6
  "private": false,
@@ -17,7 +17,8 @@
17
17
  "url": "ssh://git@github.com:1inch/fusion-sdk.git"
18
18
  },
19
19
  "dependencies": {
20
- "@1inch/limit-order-sdk": "4.0.1",
20
+ "@1inch/byte-utils": "2.0.0",
21
+ "@1inch/limit-order-sdk": "4.1.0",
21
22
  "@metamask/eth-sig-util": "^5.0.2",
22
23
  "bn.js": "^5.2.1",
23
24
  "ethers": "6.11.0",
@@ -25,17 +26,16 @@
25
26
  "ws": "^8.12.1"
26
27
  },
27
28
  "devDependencies": {
28
- "@1inch/tsconfig": "1.0.7",
29
29
  "@1inch/eslint-config": "1.4.3",
30
+ "@1inch/tsconfig": "1.0.7",
31
+ "@swc/core": "1.3.66",
32
+ "@swc/jest": "0.2.26",
30
33
  "@types/jest": "^26.0.22",
31
34
  "@types/prompts": "^2.0.12",
32
35
  "@types/ws": "^8.5.4",
33
- "@swc/core": "1.3.66",
34
- "@swc/jest": "0.2.26",
35
- "axios": "^1.6.7",
36
- "generate-changelog": "^1.8.0",
37
36
  "@typescript-eslint/eslint-plugin": "5.59",
38
37
  "@typescript-eslint/parser": "5.51",
38
+ "axios": "^1.6.7",
39
39
  "eslint": "8.41.0",
40
40
  "eslint-config-prettier": "8.3",
41
41
  "eslint-config-standard": "17",
@@ -45,6 +45,7 @@
45
45
  "eslint-plugin-prettier": "4",
46
46
  "eslint-plugin-promise": "6",
47
47
  "eslint-plugin-unused-imports": "2",
48
+ "generate-changelog": "^1.8.0",
48
49
  "jest": "^26.6.3",
49
50
  "prettier": "^2.2.1",
50
51
  "ts-loader": "^9.0.2",
@@ -1,7 +0,0 @@
1
- export declare class BitMask {
2
- readonly offset: bigint;
3
- readonly mask: bigint;
4
- constructor(startBit: bigint, endBit?: bigint);
5
- toString(): string;
6
- toBigInt(): bigint;
7
- }
@@ -1,22 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.BitMask = void 0;
7
- const assert_1 = __importDefault(require("assert"));
8
- class BitMask {
9
- constructor(startBit, endBit = startBit + 1n) {
10
- (0, assert_1.default)(startBit < endBit, 'BitMask: startBit must be less than endBit');
11
- this.offset = startBit;
12
- this.mask = (1n << (endBit - startBit)) - 1n;
13
- }
14
- toString() {
15
- return '0x' + this.toBigInt().toString(16);
16
- }
17
- toBigInt() {
18
- return this.mask << this.offset;
19
- }
20
- }
21
- exports.BitMask = BitMask;
22
- //# sourceMappingURL=bit-mask.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bit-mask.js","sourceRoot":"","sources":["../../../src/utils/bytes/bit-mask.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA2B;AAE3B,MAAa,OAAO;IAgBhB,YAAY,QAAgB,EAAE,MAAM,GAAG,QAAQ,GAAG,EAAE;QAChD,IAAA,gBAAM,EAAC,QAAQ,GAAG,MAAM,EAAE,4CAA4C,CAAC,CAAA;QAEvE,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAA;QACtB,IAAI,CAAC,IAAI,GAAG,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,GAAG,EAAE,CAAA;IAChD,CAAC;IAEM,QAAQ;QACX,OAAO,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;IAC9C,CAAC;IAEM,QAAQ;QACX,OAAO,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAA;IACnC,CAAC;CACJ;AA9BD,0BA8BC"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,16 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const bit_mask_1 = require("./bit-mask");
4
- describe('BitMask', () => {
5
- it('Should create single bit mask', () => {
6
- expect(new bit_mask_1.BitMask(0n).toString()).toEqual('0x1');
7
- expect(new bit_mask_1.BitMask(1n).toString()).toEqual('0x2');
8
- expect(new bit_mask_1.BitMask(16n).toString()).toEqual('0x10000');
9
- });
10
- it('Should create multi bit mask', () => {
11
- expect(new bit_mask_1.BitMask(0n, 16n).toString()).toEqual('0xffff');
12
- expect(new bit_mask_1.BitMask(16n, 32n).toString()).toEqual('0xffff0000');
13
- expect(new bit_mask_1.BitMask(32n, 35n).toString()).toEqual('0x700000000');
14
- });
15
- });
16
- //# sourceMappingURL=bit-mask.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bit-mask.spec.js","sourceRoot":"","sources":["../../../src/utils/bytes/bit-mask.spec.ts"],"names":[],"mappings":";;AAAA,yCAAkC;AAElC,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;IACrB,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;QACrC,MAAM,CAAC,IAAI,kBAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QACjD,MAAM,CAAC,IAAI,kBAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QACjD,MAAM,CAAC,IAAI,kBAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IAC1D,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;QACpC,MAAM,CAAC,IAAI,kBAAO,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;QACzD,MAAM,CAAC,IAAI,kBAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;QAC9D,MAAM,CAAC,IAAI,kBAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;IACnE,CAAC,CAAC,CAAA;AACN,CAAC,CAAC,CAAA"}
@@ -1,20 +0,0 @@
1
- import { BitMask } from './bit-mask';
2
- export declare class BN {
3
- readonly value: bigint;
4
- constructor(value: bigint);
5
- static fromNumber(n: number): BN;
6
- setBit(n: bigint, value: 1 | 0): BN;
7
- getBit(n: bigint): 1 | 0;
8
- shiftLeft(n: bigint): BN;
9
- shiftRight(n: bigint): BN;
10
- and(other: BN | bigint): BN;
11
- or(other: BN | bigint): BN;
12
- xor(other: BN | bigint): BN;
13
- isZero(): boolean;
14
- isOne(): boolean;
15
- getMask(mask: BitMask): BN;
16
- setMask(mask: BitMask, value: BN | bigint): BN;
17
- clearMask(mask: BitMask): BN;
18
- toHex(pad?: number): string;
19
- toNumber(): number;
20
- }
@@ -1,68 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.BN = void 0;
7
- const assert_1 = __importDefault(require("assert"));
8
- const utils_1 = require("../../utils");
9
- class BN {
10
- constructor(value) {
11
- this.value = value;
12
- }
13
- static fromNumber(n) {
14
- return new BN(BigInt(n));
15
- }
16
- setBit(n, value) {
17
- if (value) {
18
- return new BN(this.value | (1n << n));
19
- }
20
- return new BN(this.value & ~(1n << n));
21
- }
22
- getBit(n) {
23
- return (this.value & (1n << n)) === 0n ? 0 : 1;
24
- }
25
- shiftLeft(n) {
26
- return new BN(this.value << n);
27
- }
28
- shiftRight(n) {
29
- return new BN(this.value >> n);
30
- }
31
- and(other) {
32
- const raw = typeof other === 'bigint' ? other : other.value;
33
- return new BN(raw & this.value);
34
- }
35
- or(other) {
36
- const raw = typeof other === 'bigint' ? other : other.value;
37
- return new BN(raw | this.value);
38
- }
39
- xor(other) {
40
- const raw = typeof other === 'bigint' ? other : other.value;
41
- return new BN(raw ^ this.value);
42
- }
43
- isZero() {
44
- return this.value === 0n;
45
- }
46
- isOne() {
47
- return this.value === 1n;
48
- }
49
- getMask(mask) {
50
- return this.shiftRight(mask.offset).and(mask.mask);
51
- }
52
- setMask(mask, value) {
53
- const raw = typeof value === 'bigint' ? value : value.value;
54
- (0, assert_1.default)(raw <= mask.mask, `Value 0x${raw.toString(16)} to big for mask ${mask}`);
55
- return new BN(this.clearMask(mask).value | (raw << mask.offset));
56
- }
57
- clearMask(mask) {
58
- return new BN(this.value - (mask.toBigInt() & this.value));
59
- }
60
- toHex(pad = 0) {
61
- return (0, utils_1.add0x)(this.value.toString(16).padStart(pad, '0'));
62
- }
63
- toNumber() {
64
- return Number(this.value);
65
- }
66
- }
67
- exports.BN = BN;
68
- //# sourceMappingURL=bn.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bn.js","sourceRoot":"","sources":["../../../src/utils/bytes/bn.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,19 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const bn_1 = require("./bn");
4
- const bit_mask_1 = require("./bit-mask");
5
- describe('BN', () => {
6
- test('clearMask', () => {
7
- const bn = new bn_1.BN(0xab7f1111n);
8
- const mask = new bit_mask_1.BitMask(16n, 24n);
9
- expect(bn.clearMask(mask).value).toEqual(0xab001111n);
10
- });
11
- test('setBit', () => {
12
- const bn = new bn_1.BN(0xab7f1111n);
13
- expect(bn.setBit(0n, 0).value).toEqual(0xab7f1110n);
14
- expect(bn.setBit(4n, 0).value).toEqual(0xab7f1101n);
15
- expect(bn.setBit(1n, 1).value).toEqual(0xab7f1113n);
16
- expect(bn.setBit(5n, 1).value).toEqual(0xab7f1131n);
17
- });
18
- });
19
- //# sourceMappingURL=bn.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bn.spec.js","sourceRoot":"","sources":["../../../src/utils/bytes/bn.spec.ts"],"names":[],"mappings":";;AAAA,6BAAuB;AACvB,yCAAkC;AAElC,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE;IAChB,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE;QACnB,MAAM,EAAE,GAAG,IAAI,OAAE,CAAC,WAAW,CAAC,CAAA;QAC9B,MAAM,IAAI,GAAG,IAAI,kBAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;QAElC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;IACzD,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE;QAChB,MAAM,EAAE,GAAG,IAAI,OAAE,CAAC,WAAW,CAAC,CAAA;QAE9B,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;QACnD,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;QAEnD,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;QACnD,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;IACvD,CAAC,CAAC,CAAA;AACN,CAAC,CAAC,CAAA"}
@@ -1,12 +0,0 @@
1
- export declare class BytesIter {
2
- private bytes;
3
- constructor(bytes: string);
4
- isEmpty(): boolean;
5
- nextByte(): bigint;
6
- nextBytes(n: number): bigint;
7
- nextUint8(): bigint;
8
- nextUint16(): bigint;
9
- nextUint24(): bigint;
10
- nextUint32(): bigint;
11
- nextUint160(): bigint;
12
- }
@@ -1,47 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.BytesIter = void 0;
7
- const assert_1 = __importDefault(require("assert"));
8
- const validations_1 = require("../../validations");
9
- const utils_1 = require("../../utils");
10
- class BytesIter {
11
- constructor(bytes) {
12
- (0, assert_1.default)((0, validations_1.isHexBytes)(bytes), 'invalid bytes value');
13
- this.bytes = bytes.slice(2);
14
- }
15
- isEmpty() {
16
- return this.bytes.length === 0;
17
- }
18
- nextByte() {
19
- return this.nextBytes(1);
20
- }
21
- nextBytes(n) {
22
- const cnt = n * 2;
23
- if (this.bytes.length < cnt) {
24
- throw new Error(`Can not consume ${n} bytes, have only ${this.bytes.length / 2}`);
25
- }
26
- const bytes = this.bytes.slice(0, cnt);
27
- this.bytes = this.bytes.slice(cnt);
28
- return BigInt((0, utils_1.add0x)(bytes));
29
- }
30
- nextUint8() {
31
- return this.nextByte();
32
- }
33
- nextUint16() {
34
- return this.nextBytes(2);
35
- }
36
- nextUint24() {
37
- return this.nextBytes(3);
38
- }
39
- nextUint32() {
40
- return this.nextBytes(4);
41
- }
42
- nextUint160() {
43
- return this.nextBytes(20);
44
- }
45
- }
46
- exports.BytesIter = BytesIter;
47
- //# sourceMappingURL=bytes-iter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bytes-iter.js","sourceRoot":"","sources":["../../../src/utils/bytes/bytes-iter.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA2B;AAC3B,mDAA4C;AAC5C,uCAAiC;AAEjC,MAAa,SAAS;IAGlB,YAAY,KAAa;QACrB,IAAA,gBAAM,EAAC,IAAA,wBAAU,EAAC,KAAK,CAAC,EAAE,qBAAqB,CAAC,CAAA;QAEhD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAC/B,CAAC;IAEM,OAAO;QACV,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAA;IAClC,CAAC;IAEM,QAAQ;QACX,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;IAC5B,CAAC;IAEM,SAAS,CAAC,CAAS;QACtB,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,CAAA;QAEjB,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,EAAE;YACzB,MAAM,IAAI,KAAK,CACX,mBAAmB,CAAC,qBAAqB,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CACnE,CAAA;SACJ;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;QAEtC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAElC,OAAO,MAAM,CAAC,IAAA,aAAK,EAAC,KAAK,CAAC,CAAC,CAAA;IAC/B,CAAC;IAEM,SAAS;QACZ,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAA;IAC1B,CAAC;IAEM,UAAU;QACb,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;IAC5B,CAAC;IAEM,UAAU;QACb,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;IAC5B,CAAC;IAEM,UAAU;QACb,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;IAC5B,CAAC;IAEM,WAAW;QACd,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;IAC7B,CAAC;CACJ;AApDD,8BAoDC"}