@hyperlane-xyz/sdk 28.1.0 → 29.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/consts/multisigIsm.d.ts.map +1 -1
- package/dist/consts/multisigIsm.js +4 -2
- package/dist/consts/multisigIsm.js.map +1 -1
- package/dist/core/types.d.ts +22 -22
- package/dist/fee/EvmTokenFeeDeployer.hardhat-test.js +2 -1
- package/dist/fee/EvmTokenFeeDeployer.hardhat-test.js.map +1 -1
- package/dist/fee/EvmTokenFeeModule.hardhat-test.js +44 -19
- package/dist/fee/EvmTokenFeeModule.hardhat-test.js.map +1 -1
- package/dist/fee/EvmTokenFeeReader.d.ts +1 -1
- package/dist/fee/EvmTokenFeeReader.d.ts.map +1 -1
- package/dist/fee/EvmTokenFeeReader.hardhat-test.d.ts +1 -1
- package/dist/fee/EvmTokenFeeReader.hardhat-test.js +12 -3
- package/dist/fee/EvmTokenFeeReader.hardhat-test.js.map +1 -1
- package/dist/fee/EvmTokenFeeReader.js +5 -3
- package/dist/fee/EvmTokenFeeReader.js.map +1 -1
- package/dist/fee/types.d.ts +20 -20
- package/dist/fee/types.d.ts.map +1 -1
- package/dist/fee/types.js +12 -6
- package/dist/fee/types.js.map +1 -1
- package/dist/fee/types.test.js +67 -5
- package/dist/fee/types.test.js.map +1 -1
- package/dist/fee/utils.d.ts +25 -2
- package/dist/fee/utils.d.ts.map +1 -1
- package/dist/fee/utils.js +39 -7
- package/dist/fee/utils.js.map +1 -1
- package/dist/fee/utils.test.d.ts +2 -0
- package/dist/fee/utils.test.d.ts.map +1 -0
- package/dist/fee/utils.test.js +54 -0
- package/dist/fee/utils.test.js.map +1 -0
- package/dist/ica/types.d.ts +18 -18
- package/dist/metadata/customZodTypes.d.ts +3 -0
- package/dist/metadata/customZodTypes.d.ts.map +1 -1
- package/dist/metadata/customZodTypes.js +6 -0
- package/dist/metadata/customZodTypes.js.map +1 -1
- package/dist/providers/transactions/submitter/builder/types.d.ts +26 -0
- package/dist/providers/transactions/submitter/builder/types.d.ts.map +1 -1
- package/dist/providers/transactions/submitter/ethersV5/types.d.ts +13 -0
- package/dist/providers/transactions/submitter/ethersV5/types.d.ts.map +1 -1
- package/dist/providers/transactions/submitter/ethersV5/types.js +1 -0
- package/dist/providers/transactions/submitter/ethersV5/types.js.map +1 -1
- package/dist/providers/transactions/submitter/ethersV5/types.test.js +15 -1
- package/dist/providers/transactions/submitter/ethersV5/types.test.js.map +1 -1
- package/dist/providers/transactions/submitter/types.d.ts +6 -0
- package/dist/providers/transactions/submitter/types.d.ts.map +1 -1
- package/dist/router/types.d.ts +18 -18
- package/dist/token/adapters/StarknetTokenAdapter.d.ts.map +1 -1
- package/dist/token/adapters/StarknetTokenAdapter.js +2 -4
- package/dist/token/adapters/StarknetTokenAdapter.js.map +1 -1
- package/dist/token/checker.d.ts.map +1 -1
- package/dist/token/checker.js +4 -2
- package/dist/token/checker.js.map +1 -1
- package/dist/token/configUtils.test.js +5 -5
- package/dist/token/configUtils.test.js.map +1 -1
- package/dist/token/deploy.hardhat-test.js +2 -2
- package/dist/token/deploy.hardhat-test.js.map +1 -1
- package/dist/token/types.d.ts +57 -57
- package/dist/token/types.js +2 -2
- package/dist/token/types.js.map +1 -1
- package/dist/token/types.test.js +5 -5
- package/dist/token/types.test.js.map +1 -1
- package/dist/utils/decimals.d.ts +16 -0
- package/dist/utils/decimals.d.ts.map +1 -1
- package/dist/utils/decimals.js +40 -15
- package/dist/utils/decimals.js.map +1 -1
- package/dist/utils/decimals.test.js +229 -0
- package/dist/utils/decimals.test.js.map +1 -1
- package/package.json +14 -13
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EvmTokenFeeModule.hardhat-test.js","sourceRoot":"","sources":["../../src/fee/EvmTokenFeeModule.hardhat-test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"EvmTokenFeeModule.hardhat-test.js","sourceRoot":"","sources":["../../src/fee/EvmTokenFeeModule.hardhat-test.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,6 +20,6 @@ export declare class EvmTokenFeeReader extends HyperlaneReader {
|
|
|
20
20
|
private deriveProgressiveFeeConfig;
|
|
21
21
|
private deriveRegressiveFeeConfig;
|
|
22
22
|
private deriveRoutingFeeConfig;
|
|
23
|
-
convertFromBps(bps:
|
|
23
|
+
convertFromBps(bps: number): FeeParameters;
|
|
24
24
|
}
|
|
25
25
|
//# sourceMappingURL=EvmTokenFeeReader.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EvmTokenFeeReader.d.ts","sourceRoot":"","sources":["../../src/fee/EvmTokenFeeReader.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAE5D,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAE9D,OAAO,EACL,aAAa,EAEb,gBAAgB,EAChB,cAAc,EAEf,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"EvmTokenFeeReader.d.ts","sourceRoot":"","sources":["../../src/fee/EvmTokenFeeReader.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAE5D,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAE9D,OAAO,EACL,aAAa,EAEb,gBAAgB,EAChB,cAAc,EAEf,MAAM,YAAY,CAAC;AASpB,MAAM,MAAM,qBAAqB,GAAG,WAAW,CAAC,cAAc,CAAC,CAAC;AAEhE,MAAM,MAAM,uBAAuB,GAAG,WAAW,CAAC,gBAAgB,CAAC,GAAG;IACpE,YAAY,EAAE,MAAM,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;CACxD,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;CAChC,CAAC;AAEF,qBAAa,iBAAkB,SAAQ,eAAe;IAElD,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa;IAC/C,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,aAAa;gBADpB,aAAa,EAAE,aAAa,EAC5B,KAAK,EAAE,aAAa;IAKnC,oBAAoB,CACxB,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,qBAAqB,CAAC;YA6BnB,qBAAqB;YAyBrB,0BAA0B;YAM1B,yBAAyB;YAMzB,sBAAsB;IA2CpC,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa;CAiB3C"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export declare const MAX_FEE = 115792089237316195423570985008687907853269n;
|
|
2
2
|
export declare const HALF_AMOUNT = 578960446186580977117854925043439539266340n;
|
|
3
|
-
export declare const BPS:
|
|
3
|
+
export declare const BPS: number;
|
|
4
4
|
//# sourceMappingURL=EvmTokenFeeReader.hardhat-test.d.ts.map
|
|
@@ -74,14 +74,23 @@ describe('EvmTokenFeeReader', () => {
|
|
|
74
74
|
expect(convertedBps).to.equal(BPS);
|
|
75
75
|
});
|
|
76
76
|
it('should be able to convert bps to maxFee and halfAmount, and back', async () => {
|
|
77
|
-
const bps =
|
|
77
|
+
const bps = randomInt(1, 10_000);
|
|
78
78
|
const reader = new EvmTokenFeeReader(multiProvider, TestChainName.test2);
|
|
79
79
|
const { maxFee: convertedMaxFee, halfAmount: convertedHalfAmount } = reader.convertFromBps(bps);
|
|
80
80
|
const convertedBps = convertToBps(convertedMaxFee, convertedHalfAmount);
|
|
81
81
|
expect(convertedBps).to.equal(bps);
|
|
82
82
|
});
|
|
83
|
+
it('should round-trip fractional bps values', async () => {
|
|
84
|
+
const fractionalValues = [0.5, 1.5, 2.5, 8.3333];
|
|
85
|
+
const reader = new EvmTokenFeeReader(multiProvider, TestChainName.test2);
|
|
86
|
+
for (const bps of fractionalValues) {
|
|
87
|
+
const { maxFee, halfAmount } = reader.convertFromBps(bps);
|
|
88
|
+
const roundTripped = convertToBps(maxFee, halfAmount);
|
|
89
|
+
expect(roundTripped).to.equal(bps);
|
|
90
|
+
}
|
|
91
|
+
});
|
|
83
92
|
it('should use constant divisor for consistent fee derivation', async () => {
|
|
84
|
-
const bps =
|
|
93
|
+
const bps = 8;
|
|
85
94
|
const reader = new EvmTokenFeeReader(multiProvider, TestChainName.test2);
|
|
86
95
|
const { maxFee, halfAmount } = reader.convertFromBps(bps);
|
|
87
96
|
expect(maxFee > 0n).to.be.true;
|
|
@@ -94,7 +103,7 @@ describe('EvmTokenFeeReader', () => {
|
|
|
94
103
|
});
|
|
95
104
|
it('should reject bps = 0 to prevent division by zero', () => {
|
|
96
105
|
const reader = new EvmTokenFeeReader(multiProvider, TestChainName.test2);
|
|
97
|
-
expect(() => reader.convertFromBps(
|
|
106
|
+
expect(() => reader.convertFromBps(0)).to.throw('bps must be > 0 to prevent division by zero');
|
|
98
107
|
});
|
|
99
108
|
});
|
|
100
109
|
describe('RoutingFee', () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EvmTokenFeeReader.hardhat-test.js","sourceRoot":"","sources":["../../src/fee/EvmTokenFeeReader.hardhat-test.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"EvmTokenFeeReader.hardhat-test.js","sourceRoot":"","sources":["../../src/fee/EvmTokenFeeReader.hardhat-test.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { constants } from 'ethers';
|
|
|
2
2
|
import { BaseFee__factory, LinearFee__factory, RoutingFee__factory, } from '@hyperlane-xyz/core';
|
|
3
3
|
import { HyperlaneReader } from '../utils/HyperlaneReader.js';
|
|
4
4
|
import { OnchainTokenFeeType, TokenFeeType, } from './types.js';
|
|
5
|
-
import { ASSUMED_MAX_AMOUNT_FOR_ZERO_SUPPLY, MAX_BPS, convertToBps, } from './utils.js';
|
|
5
|
+
import { ASSUMED_MAX_AMOUNT_FOR_ZERO_SUPPLY, BPS_PRECISION, MAX_BPS, assertBpsPrecision, convertToBps, } from './utils.js';
|
|
6
6
|
export class EvmTokenFeeReader extends HyperlaneReader {
|
|
7
7
|
multiProvider;
|
|
8
8
|
chain;
|
|
@@ -100,12 +100,14 @@ export class EvmTokenFeeReader extends HyperlaneReader {
|
|
|
100
100
|
};
|
|
101
101
|
}
|
|
102
102
|
convertFromBps(bps) {
|
|
103
|
-
if (bps
|
|
103
|
+
if (!Number.isFinite(bps) || bps <= 0) {
|
|
104
104
|
throw new Error('bps must be > 0 to prevent division by zero');
|
|
105
105
|
}
|
|
106
|
+
assertBpsPrecision(bps);
|
|
106
107
|
const maxFee = BigInt(constants.MaxUint256.toString()) /
|
|
107
108
|
ASSUMED_MAX_AMOUNT_FOR_ZERO_SUPPLY;
|
|
108
|
-
const
|
|
109
|
+
const scaledBps = BigInt(Math.round(bps * Number(BPS_PRECISION)));
|
|
110
|
+
const halfAmount = ((maxFee / 2n) * MAX_BPS * BPS_PRECISION) / scaledBps;
|
|
109
111
|
return {
|
|
110
112
|
maxFee,
|
|
111
113
|
halfAmount,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EvmTokenFeeReader.js","sourceRoot":"","sources":["../../src/fee/EvmTokenFeeReader.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"EvmTokenFeeReader.js","sourceRoot":"","sources":["../../src/fee/EvmTokenFeeReader.ts"],"names":[],"mappings":"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"}
|
package/dist/fee/types.d.ts
CHANGED
|
@@ -50,21 +50,21 @@ export declare const LinearFeeConfigSchema: z.ZodObject<{
|
|
|
50
50
|
halfAmount: z.ZodEffects<z.ZodUnion<[z.ZodUnion<[z.ZodBigInt, z.ZodNumber]>, z.ZodString]>, bigint, string | number | bigint>;
|
|
51
51
|
} & {
|
|
52
52
|
type: z.ZodLiteral<TokenFeeType.LinearFee>;
|
|
53
|
-
bps: z.ZodEffects<z.
|
|
53
|
+
bps: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodNumber, z.ZodString]>, number, string | number>, number, string | number>;
|
|
54
54
|
}, "strip", z.ZodTypeAny, {
|
|
55
55
|
type: TokenFeeType.LinearFee;
|
|
56
56
|
owner: string;
|
|
57
57
|
token: string;
|
|
58
58
|
maxFee: bigint;
|
|
59
59
|
halfAmount: bigint;
|
|
60
|
-
bps:
|
|
60
|
+
bps: number;
|
|
61
61
|
}, {
|
|
62
62
|
type: TokenFeeType.LinearFee;
|
|
63
63
|
owner: string;
|
|
64
64
|
token: string;
|
|
65
65
|
maxFee: string | number | bigint;
|
|
66
66
|
halfAmount: string | number | bigint;
|
|
67
|
-
bps: string | number
|
|
67
|
+
bps: string | number;
|
|
68
68
|
}>;
|
|
69
69
|
export type LinearFeeConfig = z.infer<typeof LinearFeeConfigSchema>;
|
|
70
70
|
export declare const LinearFeeInputConfigSchema: z.ZodEffects<z.ZodEffects<z.ZodObject<{
|
|
@@ -73,33 +73,33 @@ export declare const LinearFeeInputConfigSchema: z.ZodEffects<z.ZodEffects<z.Zod
|
|
|
73
73
|
maxFee: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodUnion<[z.ZodBigInt, z.ZodNumber]>, z.ZodString]>, bigint, string | number | bigint>>;
|
|
74
74
|
halfAmount: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodUnion<[z.ZodBigInt, z.ZodNumber]>, z.ZodString]>, bigint, string | number | bigint>>;
|
|
75
75
|
type: z.ZodLiteral<TokenFeeType.LinearFee>;
|
|
76
|
-
bps: z.ZodOptional<z.ZodEffects<z.
|
|
76
|
+
bps: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodNumber, z.ZodString]>, number, string | number>, number, string | number>>;
|
|
77
77
|
}, "strip", z.ZodTypeAny, {
|
|
78
78
|
type: TokenFeeType.LinearFee;
|
|
79
79
|
owner: string;
|
|
80
80
|
maxFee?: bigint | undefined;
|
|
81
81
|
halfAmount?: bigint | undefined;
|
|
82
|
-
bps?:
|
|
82
|
+
bps?: number | undefined;
|
|
83
83
|
}, {
|
|
84
84
|
type: TokenFeeType.LinearFee;
|
|
85
85
|
owner: string;
|
|
86
86
|
maxFee?: string | number | bigint | undefined;
|
|
87
87
|
halfAmount?: string | number | bigint | undefined;
|
|
88
|
-
bps?: string | number |
|
|
88
|
+
bps?: string | number | undefined;
|
|
89
89
|
}>, {
|
|
90
90
|
type: TokenFeeType.LinearFee;
|
|
91
91
|
owner: string;
|
|
92
92
|
maxFee?: bigint | undefined;
|
|
93
93
|
halfAmount?: bigint | undefined;
|
|
94
|
-
bps?:
|
|
94
|
+
bps?: number | undefined;
|
|
95
95
|
}, {
|
|
96
96
|
type: TokenFeeType.LinearFee;
|
|
97
97
|
owner: string;
|
|
98
98
|
maxFee?: string | number | bigint | undefined;
|
|
99
99
|
halfAmount?: string | number | bigint | undefined;
|
|
100
|
-
bps?: string | number |
|
|
100
|
+
bps?: string | number | undefined;
|
|
101
101
|
}>, {
|
|
102
|
-
bps:
|
|
102
|
+
bps: number;
|
|
103
103
|
type: TokenFeeType.LinearFee;
|
|
104
104
|
owner: string;
|
|
105
105
|
maxFee?: bigint | undefined;
|
|
@@ -109,7 +109,7 @@ export declare const LinearFeeInputConfigSchema: z.ZodEffects<z.ZodEffects<z.Zod
|
|
|
109
109
|
owner: string;
|
|
110
110
|
maxFee?: string | number | bigint | undefined;
|
|
111
111
|
halfAmount?: string | number | bigint | undefined;
|
|
112
|
-
bps?: string | number |
|
|
112
|
+
bps?: string | number | undefined;
|
|
113
113
|
}>;
|
|
114
114
|
export type LinearFeeInputConfig = z.infer<typeof LinearFeeInputConfigSchema>;
|
|
115
115
|
export declare const ProgressiveFeeConfigSchema: z.ZodObject<{
|
|
@@ -259,21 +259,21 @@ export declare const TokenFeeConfigSchema: z.ZodDiscriminatedUnion<"type", [z.Zo
|
|
|
259
259
|
halfAmount: z.ZodEffects<z.ZodUnion<[z.ZodUnion<[z.ZodBigInt, z.ZodNumber]>, z.ZodString]>, bigint, string | number | bigint>;
|
|
260
260
|
} & {
|
|
261
261
|
type: z.ZodLiteral<TokenFeeType.LinearFee>;
|
|
262
|
-
bps: z.ZodEffects<z.
|
|
262
|
+
bps: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodNumber, z.ZodString]>, number, string | number>, number, string | number>;
|
|
263
263
|
}, "strip", z.ZodTypeAny, {
|
|
264
264
|
type: TokenFeeType.LinearFee;
|
|
265
265
|
owner: string;
|
|
266
266
|
token: string;
|
|
267
267
|
maxFee: bigint;
|
|
268
268
|
halfAmount: bigint;
|
|
269
|
-
bps:
|
|
269
|
+
bps: number;
|
|
270
270
|
}, {
|
|
271
271
|
type: TokenFeeType.LinearFee;
|
|
272
272
|
owner: string;
|
|
273
273
|
token: string;
|
|
274
274
|
maxFee: string | number | bigint;
|
|
275
275
|
halfAmount: string | number | bigint;
|
|
276
|
-
bps: string | number
|
|
276
|
+
bps: string | number;
|
|
277
277
|
}>, z.ZodObject<{
|
|
278
278
|
token: z.ZodString;
|
|
279
279
|
owner: z.ZodString;
|
|
@@ -344,33 +344,33 @@ export declare const TokenFeeConfigInputSchema: z.ZodUnion<[z.ZodEffects<z.ZodEf
|
|
|
344
344
|
maxFee: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodUnion<[z.ZodBigInt, z.ZodNumber]>, z.ZodString]>, bigint, string | number | bigint>>;
|
|
345
345
|
halfAmount: z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodUnion<[z.ZodBigInt, z.ZodNumber]>, z.ZodString]>, bigint, string | number | bigint>>;
|
|
346
346
|
type: z.ZodLiteral<TokenFeeType.LinearFee>;
|
|
347
|
-
bps: z.ZodOptional<z.ZodEffects<z.
|
|
347
|
+
bps: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodNumber, z.ZodString]>, number, string | number>, number, string | number>>;
|
|
348
348
|
}, "strip", z.ZodTypeAny, {
|
|
349
349
|
type: TokenFeeType.LinearFee;
|
|
350
350
|
owner: string;
|
|
351
351
|
maxFee?: bigint | undefined;
|
|
352
352
|
halfAmount?: bigint | undefined;
|
|
353
|
-
bps?:
|
|
353
|
+
bps?: number | undefined;
|
|
354
354
|
}, {
|
|
355
355
|
type: TokenFeeType.LinearFee;
|
|
356
356
|
owner: string;
|
|
357
357
|
maxFee?: string | number | bigint | undefined;
|
|
358
358
|
halfAmount?: string | number | bigint | undefined;
|
|
359
|
-
bps?: string | number |
|
|
359
|
+
bps?: string | number | undefined;
|
|
360
360
|
}>, {
|
|
361
361
|
type: TokenFeeType.LinearFee;
|
|
362
362
|
owner: string;
|
|
363
363
|
maxFee?: bigint | undefined;
|
|
364
364
|
halfAmount?: bigint | undefined;
|
|
365
|
-
bps?:
|
|
365
|
+
bps?: number | undefined;
|
|
366
366
|
}, {
|
|
367
367
|
type: TokenFeeType.LinearFee;
|
|
368
368
|
owner: string;
|
|
369
369
|
maxFee?: string | number | bigint | undefined;
|
|
370
370
|
halfAmount?: string | number | bigint | undefined;
|
|
371
|
-
bps?: string | number |
|
|
371
|
+
bps?: string | number | undefined;
|
|
372
372
|
}>, {
|
|
373
|
-
bps:
|
|
373
|
+
bps: number;
|
|
374
374
|
type: TokenFeeType.LinearFee;
|
|
375
375
|
owner: string;
|
|
376
376
|
maxFee?: bigint | undefined;
|
|
@@ -380,7 +380,7 @@ export declare const TokenFeeConfigInputSchema: z.ZodUnion<[z.ZodEffects<z.ZodEf
|
|
|
380
380
|
owner: string;
|
|
381
381
|
maxFee?: string | number | bigint | undefined;
|
|
382
382
|
halfAmount?: string | number | bigint | undefined;
|
|
383
|
-
bps?: string | number |
|
|
383
|
+
bps?: string | number | undefined;
|
|
384
384
|
}>, z.ZodEffects<z.ZodObject<{
|
|
385
385
|
owner: z.ZodString;
|
|
386
386
|
} & {
|
package/dist/fee/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/fee/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/fee/types.ts"],"names":[],"mappings":"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"}
|
package/dist/fee/types.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import { ZBigNumberish, ZChainName, ZHash, } from '../metadata/customZodTypes.js';
|
|
3
|
-
import { convertToBps } from './utils.js';
|
|
2
|
+
import { ZBigNumberish, ZBps, ZChainName, ZHash, } from '../metadata/customZodTypes.js';
|
|
3
|
+
import { MAX_BPS_DECIMALS, convertToBps, isBpsPrecisionValid, } from './utils.js';
|
|
4
4
|
// Matches the enum in BaseFee.sol
|
|
5
5
|
export var OnchainTokenFeeType;
|
|
6
6
|
(function (OnchainTokenFeeType) {
|
|
@@ -46,12 +46,12 @@ const StandardFeeConfigBaseSchema = BaseFeeConfigSchema.merge(FeeParametersSchem
|
|
|
46
46
|
// ====== INDIVIDUAL FEE SCHEMAS ======
|
|
47
47
|
export const LinearFeeConfigSchema = StandardFeeConfigBaseSchema.extend({
|
|
48
48
|
type: z.literal(TokenFeeType.LinearFee),
|
|
49
|
-
bps:
|
|
49
|
+
bps: ZBps,
|
|
50
50
|
});
|
|
51
51
|
// Linear Fee Input - only requires bps & type, token is optional
|
|
52
52
|
export const LinearFeeInputConfigSchema = BaseFeeConfigInputSchema.extend({
|
|
53
53
|
type: z.literal(TokenFeeType.LinearFee),
|
|
54
|
-
bps:
|
|
54
|
+
bps: ZBps.optional(),
|
|
55
55
|
...FeeParametersSchema.partial().shape,
|
|
56
56
|
})
|
|
57
57
|
.superRefine((v, ctx) => {
|
|
@@ -64,14 +64,20 @@ export const LinearFeeInputConfigSchema = BaseFeeConfigInputSchema.extend({
|
|
|
64
64
|
message: 'Provide bps or both maxFee and halfAmount',
|
|
65
65
|
});
|
|
66
66
|
}
|
|
67
|
-
|
|
68
|
-
if (hasBps && BigInt(v.bps) === 0n) {
|
|
67
|
+
if (hasBps && v.bps <= 0) {
|
|
69
68
|
ctx.addIssue({
|
|
70
69
|
code: 'custom',
|
|
71
70
|
path: ['bps'],
|
|
72
71
|
message: 'bps must be > 0',
|
|
73
72
|
});
|
|
74
73
|
}
|
|
74
|
+
if (hasBps && !isBpsPrecisionValid(v.bps)) {
|
|
75
|
+
ctx.addIssue({
|
|
76
|
+
code: 'custom',
|
|
77
|
+
path: ['bps'],
|
|
78
|
+
message: `bps must have at most ${MAX_BPS_DECIMALS} decimal places`,
|
|
79
|
+
});
|
|
80
|
+
}
|
|
75
81
|
if (v.halfAmount === 0n) {
|
|
76
82
|
// Prevents divide by 0
|
|
77
83
|
ctx.addIssue({
|
package/dist/fee/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/fee/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EACL,aAAa,EACb,UAAU,EACV,KAAK,GACN,MAAM,+BAA+B,CAAC;AAEvC,OAAO,
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/fee/types.ts"],"names":[],"mappings":"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"}
|
package/dist/fee/types.test.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { expect } from 'chai';
|
|
2
2
|
import { ethers } from 'ethers';
|
|
3
|
+
import { ZBps } from '../metadata/customZodTypes.js';
|
|
3
4
|
import { LinearFeeInputConfigSchema, TokenFeeType } from './types.js';
|
|
4
5
|
const SOME_ADDRESS = ethers.Wallet.createRandom().address;
|
|
5
6
|
describe('LinearFeeInputConfigSchema', () => {
|
|
@@ -7,7 +8,7 @@ describe('LinearFeeInputConfigSchema', () => {
|
|
|
7
8
|
const config = {
|
|
8
9
|
type: TokenFeeType.LinearFee,
|
|
9
10
|
owner: SOME_ADDRESS,
|
|
10
|
-
bps:
|
|
11
|
+
bps: 100,
|
|
11
12
|
};
|
|
12
13
|
const result = LinearFeeInputConfigSchema.safeParse(config);
|
|
13
14
|
expect(result.success).to.be.true;
|
|
@@ -64,7 +65,7 @@ describe('LinearFeeInputConfigSchema', () => {
|
|
|
64
65
|
const config = {
|
|
65
66
|
type: TokenFeeType.LinearFee,
|
|
66
67
|
owner: SOME_ADDRESS,
|
|
67
|
-
bps:
|
|
68
|
+
bps: 0,
|
|
68
69
|
};
|
|
69
70
|
const result = LinearFeeInputConfigSchema.safeParse(config);
|
|
70
71
|
expect(result.success).to.be.false;
|
|
@@ -74,14 +75,14 @@ describe('LinearFeeInputConfigSchema', () => {
|
|
|
74
75
|
const config = {
|
|
75
76
|
type: TokenFeeType.LinearFee,
|
|
76
77
|
owner: SOME_ADDRESS,
|
|
77
|
-
bps:
|
|
78
|
+
bps: 100,
|
|
78
79
|
maxFee: 10000n,
|
|
79
80
|
halfAmount: 5000n,
|
|
80
81
|
};
|
|
81
82
|
const result = LinearFeeInputConfigSchema.safeParse(config);
|
|
82
83
|
expect(result.success).to.be.true;
|
|
83
84
|
if (result.success) {
|
|
84
|
-
expect(result.data.bps).to.equal(
|
|
85
|
+
expect(result.data.bps).to.equal(100);
|
|
85
86
|
}
|
|
86
87
|
});
|
|
87
88
|
it('should compute bps from maxFee/halfAmount when only those are provided', () => {
|
|
@@ -97,8 +98,69 @@ describe('LinearFeeInputConfigSchema', () => {
|
|
|
97
98
|
expect(result.success).to.be.true;
|
|
98
99
|
if (result.success) {
|
|
99
100
|
expect(result.data.bps).to.exist;
|
|
100
|
-
expect(result.data.bps).to.be.a('
|
|
101
|
+
expect(result.data.bps).to.be.a('number');
|
|
101
102
|
}
|
|
102
103
|
});
|
|
103
104
|
});
|
|
105
|
+
describe('LinearFeeInputConfigSchema — fractional bps', () => {
|
|
106
|
+
it('should accept fractional bps like 1.5', () => {
|
|
107
|
+
const result = LinearFeeInputConfigSchema.safeParse({
|
|
108
|
+
type: TokenFeeType.LinearFee,
|
|
109
|
+
owner: SOME_ADDRESS,
|
|
110
|
+
bps: 1.5,
|
|
111
|
+
});
|
|
112
|
+
expect(result.success).to.be.true;
|
|
113
|
+
if (result.success) {
|
|
114
|
+
expect(result.data.bps).to.equal(1.5);
|
|
115
|
+
}
|
|
116
|
+
});
|
|
117
|
+
it('should accept bps values that are IEEE 754 edge cases (e.g. 0.3)', () => {
|
|
118
|
+
const result = LinearFeeInputConfigSchema.safeParse({
|
|
119
|
+
type: TokenFeeType.LinearFee,
|
|
120
|
+
owner: SOME_ADDRESS,
|
|
121
|
+
bps: 0.3,
|
|
122
|
+
});
|
|
123
|
+
expect(result.success).to.be.true;
|
|
124
|
+
});
|
|
125
|
+
it('should reject bps with more than 4 decimal places', () => {
|
|
126
|
+
const result = LinearFeeInputConfigSchema.safeParse({
|
|
127
|
+
type: TokenFeeType.LinearFee,
|
|
128
|
+
owner: SOME_ADDRESS,
|
|
129
|
+
bps: 0.00001,
|
|
130
|
+
});
|
|
131
|
+
expect(result.success).to.be.false;
|
|
132
|
+
expect(result.error?.issues[0]?.message).to.include('at most 4 decimal places');
|
|
133
|
+
});
|
|
134
|
+
});
|
|
135
|
+
describe('ZBps schema validation', () => {
|
|
136
|
+
it('should reject invalid string inputs', () => {
|
|
137
|
+
expect(ZBps.safeParse('abc').success).to.be.false;
|
|
138
|
+
expect(ZBps.safeParse('').success).to.be.false;
|
|
139
|
+
expect(ZBps.safeParse('Infinity').success).to.be.false;
|
|
140
|
+
expect(ZBps.safeParse('NaN').success).to.be.false;
|
|
141
|
+
expect(ZBps.safeParse('-1').success).to.be.false;
|
|
142
|
+
});
|
|
143
|
+
it('should accept valid inputs and transform to number', () => {
|
|
144
|
+
const r1 = ZBps.safeParse('1.5');
|
|
145
|
+
expect(r1.success).to.be.true;
|
|
146
|
+
if (r1.success)
|
|
147
|
+
expect(r1.data).to.equal(1.5);
|
|
148
|
+
const r2 = ZBps.safeParse('5');
|
|
149
|
+
expect(r2.success).to.be.true;
|
|
150
|
+
if (r2.success)
|
|
151
|
+
expect(r2.data).to.equal(5);
|
|
152
|
+
const r3 = ZBps.safeParse(1.5);
|
|
153
|
+
expect(r3.success).to.be.true;
|
|
154
|
+
});
|
|
155
|
+
it('should reject bigint input (intentional breaking change — use plain number instead)', () => {
|
|
156
|
+
// ZBps intentionally dropped bigint support; callers must use number (e.g., 5 not 5n)
|
|
157
|
+
expect(ZBps.safeParse(5n).success).to.be.false;
|
|
158
|
+
expect(ZBps.safeParse(0n).success).to.be.false;
|
|
159
|
+
});
|
|
160
|
+
it('should reject negative numbers', () => {
|
|
161
|
+
expect(ZBps.safeParse(-5).success).to.be.false;
|
|
162
|
+
expect(ZBps.safeParse(-1.5).success).to.be.false;
|
|
163
|
+
expect(ZBps.safeParse(-0.0001).success).to.be.false;
|
|
164
|
+
});
|
|
165
|
+
});
|
|
104
166
|
//# sourceMappingURL=types.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.test.js","sourceRoot":"","sources":["../../src/fee/types.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,0BAA0B,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAEtE,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,OAAO,CAAC;AAE1D,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;IAC1C,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAC5C,MAAM,MAAM,GAAG;YACb,IAAI,EAAE,YAAY,CAAC,SAAS;YAC5B,KAAK,EAAE,YAAY;YACnB,GAAG,EAAE,
|
|
1
|
+
{"version":3,"file":"types.test.js","sourceRoot":"","sources":["../../src/fee/types.test.ts"],"names":[],"mappings":"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"}
|
package/dist/fee/utils.d.ts
CHANGED
|
@@ -1,4 +1,27 @@
|
|
|
1
1
|
export declare const MAX_BPS = 10000n;
|
|
2
|
+
/**
|
|
3
|
+
* Maximum decimal places supported for fractional bps values.
|
|
4
|
+
* The precision scaling in convertToBps/convertFromBps uses 10^MAX_BPS_DECIMALS
|
|
5
|
+
* as a multiplier. Values with more decimal places will be rejected to prevent
|
|
6
|
+
* silent precision loss during bigint arithmetic.
|
|
7
|
+
*/
|
|
8
|
+
export declare const MAX_BPS_DECIMALS = 4;
|
|
9
|
+
/**
|
|
10
|
+
* Bigint precision multiplier for fractional bps arithmetic.
|
|
11
|
+
* Equals 10^MAX_BPS_DECIMALS = 10_000n.
|
|
12
|
+
*/
|
|
13
|
+
export declare const BPS_PRECISION: bigint;
|
|
14
|
+
/**
|
|
15
|
+
* Returns true if bps has at most MAX_BPS_DECIMALS decimal places.
|
|
16
|
+
* Uses epsilon comparison to avoid IEEE 754 false positives
|
|
17
|
+
* (e.g. 0.3 * 10000 = 2999.9999... which strict equality would wrongly reject).
|
|
18
|
+
*/
|
|
19
|
+
export declare function isBpsPrecisionValid(bps: number): boolean;
|
|
20
|
+
/**
|
|
21
|
+
* Validates that a bps value does not exceed MAX_BPS_DECIMALS decimal places.
|
|
22
|
+
* @throws Error if bps has too many decimal places
|
|
23
|
+
*/
|
|
24
|
+
export declare function assertBpsPrecision(bps: number): void;
|
|
2
25
|
/**
|
|
3
26
|
* Assumed maximum transfer amount for zero-supply tokens.
|
|
4
27
|
* 10^36 is astronomically large (10^18 tokens with 18 decimals).
|
|
@@ -10,8 +33,8 @@ export declare const ASSUMED_MAX_AMOUNT_FOR_ZERO_SUPPLY: bigint;
|
|
|
10
33
|
* Converts fee parameters to basis points (BPS)
|
|
11
34
|
* @param maxFee - Maximum fee amount
|
|
12
35
|
* @param halfAmount - Half of the amount at which maxFee is applied
|
|
13
|
-
* @returns Fee in basis points
|
|
36
|
+
* @returns Fee in basis points (up to MAX_BPS_DECIMALS decimal places)
|
|
14
37
|
* @throws Error if halfAmount is zero to prevent division by zero
|
|
15
38
|
*/
|
|
16
|
-
export declare function convertToBps(maxFee: bigint, halfAmount: bigint):
|
|
39
|
+
export declare function convertToBps(maxFee: bigint, halfAmount: bigint): number;
|
|
17
40
|
//# sourceMappingURL=utils.d.ts.map
|