@bananapus/nana-sdk-core 1.3.0 → 1.4.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/cjs/utils/index.d.ts +1 -0
- package/dist/cjs/utils/index.d.ts.map +1 -1
- package/dist/cjs/utils/index.js +1 -0
- package/dist/cjs/utils/index.js.map +1 -1
- package/dist/cjs/utils/ipfs.d.ts +33 -1
- package/dist/cjs/utils/ipfs.d.ts.map +1 -1
- package/dist/cjs/utils/ipfs.js +212 -8
- package/dist/cjs/utils/ipfs.js.map +1 -1
- package/dist/cjs/utils/token.d.ts +2 -2
- package/dist/cjs/utils/token.d.ts.map +1 -1
- package/dist/cjs/utils/token.js +30 -9
- package/dist/cjs/utils/token.js.map +1 -1
- package/dist/cjs/v6/index.d.ts +2 -0
- package/dist/cjs/v6/index.d.ts.map +1 -1
- package/dist/cjs/v6/index.js +2 -0
- package/dist/cjs/v6/index.js.map +1 -1
- package/dist/cjs/v6/launch.d.ts +23 -2
- package/dist/cjs/v6/launch.d.ts.map +1 -1
- package/dist/cjs/v6/launch.js +40 -1
- package/dist/cjs/v6/launch.js.map +1 -1
- package/dist/cjs/v6/nft.d.ts +67 -0
- package/dist/cjs/v6/nft.d.ts.map +1 -1
- package/dist/cjs/v6/nft.js +192 -2
- package/dist/cjs/v6/nft.js.map +1 -1
- package/dist/cjs/v6/permissions.d.ts +21 -0
- package/dist/cjs/v6/permissions.d.ts.map +1 -1
- package/dist/cjs/v6/permissions.js +44 -1
- package/dist/cjs/v6/permissions.js.map +1 -1
- package/dist/cjs/v6/projectPayers.d.ts +178 -0
- package/dist/cjs/v6/projectPayers.d.ts.map +1 -0
- package/dist/cjs/v6/projectPayers.js +108 -0
- package/dist/cjs/v6/projectPayers.js.map +1 -0
- package/dist/cjs/v6/revnets.d.ts +3 -2
- package/dist/cjs/v6/revnets.d.ts.map +1 -1
- package/dist/cjs/v6/revnets.js +3 -2
- package/dist/cjs/v6/revnets.js.map +1 -1
- package/dist/cjs/v6/rulesets.d.ts +42 -0
- package/dist/cjs/v6/rulesets.d.ts.map +1 -1
- package/dist/cjs/v6/rulesets.js +87 -0
- package/dist/cjs/v6/rulesets.js.map +1 -1
- package/dist/cjs/v6/suckers.d.ts +740 -2
- package/dist/cjs/v6/suckers.d.ts.map +1 -1
- package/dist/cjs/v6/suckers.js +647 -8
- package/dist/cjs/v6/suckers.js.map +1 -1
- package/dist/cjs/v6/uniswapV4.d.ts +82 -0
- package/dist/cjs/v6/uniswapV4.d.ts.map +1 -0
- package/dist/cjs/v6/uniswapV4.js +336 -0
- package/dist/cjs/v6/uniswapV4.js.map +1 -0
- package/dist/esm/utils/index.d.ts +1 -0
- package/dist/esm/utils/index.d.ts.map +1 -1
- package/dist/esm/utils/index.js +1 -0
- package/dist/esm/utils/index.js.map +1 -1
- package/dist/esm/utils/ipfs.d.ts +33 -1
- package/dist/esm/utils/ipfs.d.ts.map +1 -1
- package/dist/esm/utils/ipfs.js +204 -8
- package/dist/esm/utils/ipfs.js.map +1 -1
- package/dist/esm/utils/token.d.ts +2 -2
- package/dist/esm/utils/token.d.ts.map +1 -1
- package/dist/esm/utils/token.js +30 -9
- package/dist/esm/utils/token.js.map +1 -1
- package/dist/esm/v6/index.d.ts +2 -0
- package/dist/esm/v6/index.d.ts.map +1 -1
- package/dist/esm/v6/index.js +2 -0
- package/dist/esm/v6/index.js.map +1 -1
- package/dist/esm/v6/launch.d.ts +23 -2
- package/dist/esm/v6/launch.d.ts.map +1 -1
- package/dist/esm/v6/launch.js +39 -2
- package/dist/esm/v6/launch.js.map +1 -1
- package/dist/esm/v6/nft.d.ts +67 -0
- package/dist/esm/v6/nft.d.ts.map +1 -1
- package/dist/esm/v6/nft.js +183 -1
- package/dist/esm/v6/nft.js.map +1 -1
- package/dist/esm/v6/permissions.d.ts +21 -0
- package/dist/esm/v6/permissions.d.ts.map +1 -1
- package/dist/esm/v6/permissions.js +40 -0
- package/dist/esm/v6/permissions.js.map +1 -1
- package/dist/esm/v6/projectPayers.d.ts +178 -0
- package/dist/esm/v6/projectPayers.d.ts.map +1 -0
- package/dist/esm/v6/projectPayers.js +101 -0
- package/dist/esm/v6/projectPayers.js.map +1 -0
- package/dist/esm/v6/revnets.d.ts +3 -2
- package/dist/esm/v6/revnets.d.ts.map +1 -1
- package/dist/esm/v6/revnets.js +3 -2
- package/dist/esm/v6/revnets.js.map +1 -1
- package/dist/esm/v6/rulesets.d.ts +42 -0
- package/dist/esm/v6/rulesets.d.ts.map +1 -1
- package/dist/esm/v6/rulesets.js +83 -0
- package/dist/esm/v6/rulesets.js.map +1 -1
- package/dist/esm/v6/suckers.d.ts +740 -2
- package/dist/esm/v6/suckers.d.ts.map +1 -1
- package/dist/esm/v6/suckers.js +630 -8
- package/dist/esm/v6/suckers.js.map +1 -1
- package/dist/esm/v6/uniswapV4.d.ts +82 -0
- package/dist/esm/v6/uniswapV4.d.ts.map +1 -0
- package/dist/esm/v6/uniswapV4.js +318 -0
- package/dist/esm/v6/uniswapV4.js.map +1 -0
- package/package.json +17 -10
- package/dist/cjs/utils/data.test.d.ts +0 -2
- package/dist/cjs/utils/data.test.d.ts.map +0 -1
- package/dist/cjs/utils/data.test.js +0 -27
- package/dist/cjs/utils/data.test.js.map +0 -1
- package/dist/cjs/utils/deploy.test.d.ts +0 -2
- package/dist/cjs/utils/deploy.test.d.ts.map +0 -1
- package/dist/cjs/utils/deploy.test.js +0 -65
- package/dist/cjs/utils/deploy.test.js.map +0 -1
- package/dist/cjs/utils/fee.test.d.ts +0 -2
- package/dist/cjs/utils/fee.test.d.ts.map +0 -1
- package/dist/cjs/utils/fee.test.js +0 -11
- package/dist/cjs/utils/fee.test.js.map +0 -1
- package/dist/cjs/utils/format.test.d.ts +0 -2
- package/dist/cjs/utils/format.test.d.ts.map +0 -1
- package/dist/cjs/utils/format.test.js +0 -27
- package/dist/cjs/utils/format.test.js.map +0 -1
- package/dist/cjs/utils/ipfs.test.d.ts +0 -2
- package/dist/cjs/utils/ipfs.test.d.ts.map +0 -1
- package/dist/cjs/utils/ipfs.test.js +0 -33
- package/dist/cjs/utils/ipfs.test.js.map +0 -1
- package/dist/cjs/utils/revnet.test.d.ts +0 -2
- package/dist/cjs/utils/revnet.test.d.ts.map +0 -1
- package/dist/cjs/utils/revnet.test.js +0 -12
- package/dist/cjs/utils/revnet.test.js.map +0 -1
- package/dist/cjs/utils/ruleset.test.d.ts +0 -2
- package/dist/cjs/utils/ruleset.test.d.ts.map +0 -1
- package/dist/cjs/utils/ruleset.test.js +0 -23
- package/dist/cjs/utils/ruleset.test.js.map +0 -1
- package/dist/cjs/utils/token.test.d.ts +0 -2
- package/dist/cjs/utils/token.test.d.ts.map +0 -1
- package/dist/cjs/utils/token.test.js +0 -40
- package/dist/cjs/utils/token.test.js.map +0 -1
- package/dist/cjs/utils/urn.test.d.ts +0 -2
- package/dist/cjs/utils/urn.test.d.ts.map +0 -1
- package/dist/cjs/utils/urn.test.js +0 -114
- package/dist/cjs/utils/urn.test.js.map +0 -1
- package/dist/cjs/v6/cashOut.test.d.ts +0 -2
- package/dist/cjs/v6/cashOut.test.d.ts.map +0 -1
- package/dist/cjs/v6/cashOut.test.js +0 -122
- package/dist/cjs/v6/cashOut.test.js.map +0 -1
- package/dist/cjs/v6/currency.test.d.ts +0 -2
- package/dist/cjs/v6/currency.test.d.ts.map +0 -1
- package/dist/cjs/v6/currency.test.js +0 -26
- package/dist/cjs/v6/currency.test.js.map +0 -1
- package/dist/cjs/v6/fees.test.d.ts +0 -2
- package/dist/cjs/v6/fees.test.d.ts.map +0 -1
- package/dist/cjs/v6/fees.test.js +0 -40
- package/dist/cjs/v6/fees.test.js.map +0 -1
- package/dist/cjs/v6/launch.test.d.ts +0 -2
- package/dist/cjs/v6/launch.test.d.ts.map +0 -1
- package/dist/cjs/v6/launch.test.js +0 -137
- package/dist/cjs/v6/launch.test.js.map +0 -1
- package/dist/cjs/v6/loans.test.d.ts +0 -2
- package/dist/cjs/v6/loans.test.d.ts.map +0 -1
- package/dist/cjs/v6/loans.test.js +0 -129
- package/dist/cjs/v6/loans.test.js.map +0 -1
- package/dist/cjs/v6/nft.test.d.ts +0 -2
- package/dist/cjs/v6/nft.test.d.ts.map +0 -1
- package/dist/cjs/v6/nft.test.js +0 -206
- package/dist/cjs/v6/nft.test.js.map +0 -1
- package/dist/cjs/v6/omnichain.test.d.ts +0 -2
- package/dist/cjs/v6/omnichain.test.d.ts.map +0 -1
- package/dist/cjs/v6/omnichain.test.js +0 -145
- package/dist/cjs/v6/omnichain.test.js.map +0 -1
- package/dist/cjs/v6/pay.test.d.ts +0 -2
- package/dist/cjs/v6/pay.test.d.ts.map +0 -1
- package/dist/cjs/v6/pay.test.js +0 -137
- package/dist/cjs/v6/pay.test.js.map +0 -1
- package/dist/cjs/v6/permissions.test.d.ts +0 -2
- package/dist/cjs/v6/permissions.test.d.ts.map +0 -1
- package/dist/cjs/v6/permissions.test.js +0 -117
- package/dist/cjs/v6/permissions.test.js.map +0 -1
- package/dist/cjs/v6/revnets.test.d.ts +0 -2
- package/dist/cjs/v6/revnets.test.d.ts.map +0 -1
- package/dist/cjs/v6/revnets.test.js +0 -233
- package/dist/cjs/v6/revnets.test.js.map +0 -1
- package/dist/cjs/v6/rulesets.test.d.ts +0 -2
- package/dist/cjs/v6/rulesets.test.d.ts.map +0 -1
- package/dist/cjs/v6/rulesets.test.js +0 -106
- package/dist/cjs/v6/rulesets.test.js.map +0 -1
- package/dist/cjs/v6/splits.test.d.ts +0 -2
- package/dist/cjs/v6/splits.test.d.ts.map +0 -1
- package/dist/cjs/v6/splits.test.js +0 -135
- package/dist/cjs/v6/splits.test.js.map +0 -1
- package/dist/cjs/v6/suckers.test.d.ts +0 -2
- package/dist/cjs/v6/suckers.test.d.ts.map +0 -1
- package/dist/cjs/v6/suckers.test.js +0 -134
- package/dist/cjs/v6/suckers.test.js.map +0 -1
- package/dist/cjs/v6/terminals.test.d.ts +0 -2
- package/dist/cjs/v6/terminals.test.d.ts.map +0 -1
- package/dist/cjs/v6/terminals.test.js +0 -59
- package/dist/cjs/v6/terminals.test.js.map +0 -1
- package/dist/cjs/v6/tokens.test.d.ts +0 -2
- package/dist/cjs/v6/tokens.test.d.ts.map +0 -1
- package/dist/cjs/v6/tokens.test.js +0 -141
- package/dist/cjs/v6/tokens.test.js.map +0 -1
- package/dist/esm/utils/data.test.d.ts +0 -2
- package/dist/esm/utils/data.test.d.ts.map +0 -1
- package/dist/esm/utils/data.test.js +0 -25
- package/dist/esm/utils/data.test.js.map +0 -1
- package/dist/esm/utils/deploy.test.d.ts +0 -2
- package/dist/esm/utils/deploy.test.d.ts.map +0 -1
- package/dist/esm/utils/deploy.test.js +0 -63
- package/dist/esm/utils/deploy.test.js.map +0 -1
- package/dist/esm/utils/fee.test.d.ts +0 -2
- package/dist/esm/utils/fee.test.d.ts.map +0 -1
- package/dist/esm/utils/fee.test.js +0 -9
- package/dist/esm/utils/fee.test.js.map +0 -1
- package/dist/esm/utils/format.test.d.ts +0 -2
- package/dist/esm/utils/format.test.d.ts.map +0 -1
- package/dist/esm/utils/format.test.js +0 -25
- package/dist/esm/utils/format.test.js.map +0 -1
- package/dist/esm/utils/ipfs.test.d.ts +0 -2
- package/dist/esm/utils/ipfs.test.d.ts.map +0 -1
- package/dist/esm/utils/ipfs.test.js +0 -28
- package/dist/esm/utils/ipfs.test.js.map +0 -1
- package/dist/esm/utils/revnet.test.d.ts +0 -2
- package/dist/esm/utils/revnet.test.d.ts.map +0 -1
- package/dist/esm/utils/revnet.test.js +0 -10
- package/dist/esm/utils/revnet.test.js.map +0 -1
- package/dist/esm/utils/ruleset.test.d.ts +0 -2
- package/dist/esm/utils/ruleset.test.d.ts.map +0 -1
- package/dist/esm/utils/ruleset.test.js +0 -21
- package/dist/esm/utils/ruleset.test.js.map +0 -1
- package/dist/esm/utils/token.test.d.ts +0 -2
- package/dist/esm/utils/token.test.d.ts.map +0 -1
- package/dist/esm/utils/token.test.js +0 -38
- package/dist/esm/utils/token.test.js.map +0 -1
- package/dist/esm/utils/urn.test.d.ts +0 -2
- package/dist/esm/utils/urn.test.d.ts.map +0 -1
- package/dist/esm/utils/urn.test.js +0 -112
- package/dist/esm/utils/urn.test.js.map +0 -1
- package/dist/esm/v6/cashOut.test.d.ts +0 -2
- package/dist/esm/v6/cashOut.test.d.ts.map +0 -1
- package/dist/esm/v6/cashOut.test.js +0 -120
- package/dist/esm/v6/cashOut.test.js.map +0 -1
- package/dist/esm/v6/currency.test.d.ts +0 -2
- package/dist/esm/v6/currency.test.d.ts.map +0 -1
- package/dist/esm/v6/currency.test.js +0 -24
- package/dist/esm/v6/currency.test.js.map +0 -1
- package/dist/esm/v6/fees.test.d.ts +0 -2
- package/dist/esm/v6/fees.test.d.ts.map +0 -1
- package/dist/esm/v6/fees.test.js +0 -38
- package/dist/esm/v6/fees.test.js.map +0 -1
- package/dist/esm/v6/launch.test.d.ts +0 -2
- package/dist/esm/v6/launch.test.d.ts.map +0 -1
- package/dist/esm/v6/launch.test.js +0 -135
- package/dist/esm/v6/launch.test.js.map +0 -1
- package/dist/esm/v6/loans.test.d.ts +0 -2
- package/dist/esm/v6/loans.test.d.ts.map +0 -1
- package/dist/esm/v6/loans.test.js +0 -127
- package/dist/esm/v6/loans.test.js.map +0 -1
- package/dist/esm/v6/nft.test.d.ts +0 -2
- package/dist/esm/v6/nft.test.d.ts.map +0 -1
- package/dist/esm/v6/nft.test.js +0 -204
- package/dist/esm/v6/nft.test.js.map +0 -1
- package/dist/esm/v6/omnichain.test.d.ts +0 -2
- package/dist/esm/v6/omnichain.test.d.ts.map +0 -1
- package/dist/esm/v6/omnichain.test.js +0 -143
- package/dist/esm/v6/omnichain.test.js.map +0 -1
- package/dist/esm/v6/pay.test.d.ts +0 -2
- package/dist/esm/v6/pay.test.d.ts.map +0 -1
- package/dist/esm/v6/pay.test.js +0 -135
- package/dist/esm/v6/pay.test.js.map +0 -1
- package/dist/esm/v6/permissions.test.d.ts +0 -2
- package/dist/esm/v6/permissions.test.d.ts.map +0 -1
- package/dist/esm/v6/permissions.test.js +0 -115
- package/dist/esm/v6/permissions.test.js.map +0 -1
- package/dist/esm/v6/revnets.test.d.ts +0 -2
- package/dist/esm/v6/revnets.test.d.ts.map +0 -1
- package/dist/esm/v6/revnets.test.js +0 -231
- package/dist/esm/v6/revnets.test.js.map +0 -1
- package/dist/esm/v6/rulesets.test.d.ts +0 -2
- package/dist/esm/v6/rulesets.test.d.ts.map +0 -1
- package/dist/esm/v6/rulesets.test.js +0 -104
- package/dist/esm/v6/rulesets.test.js.map +0 -1
- package/dist/esm/v6/splits.test.d.ts +0 -2
- package/dist/esm/v6/splits.test.d.ts.map +0 -1
- package/dist/esm/v6/splits.test.js +0 -133
- package/dist/esm/v6/splits.test.js.map +0 -1
- package/dist/esm/v6/suckers.test.d.ts +0 -2
- package/dist/esm/v6/suckers.test.d.ts.map +0 -1
- package/dist/esm/v6/suckers.test.js +0 -132
- package/dist/esm/v6/suckers.test.js.map +0 -1
- package/dist/esm/v6/terminals.test.d.ts +0 -2
- package/dist/esm/v6/terminals.test.d.ts.map +0 -1
- package/dist/esm/v6/terminals.test.js +0 -57
- package/dist/esm/v6/terminals.test.js.map +0 -1
- package/dist/esm/v6/tokens.test.d.ts +0 -2
- package/dist/esm/v6/tokens.test.d.ts.map +0 -1
- package/dist/esm/v6/tokens.test.js +0 -139
- package/dist/esm/v6/tokens.test.js.map +0 -1
- package/dist/tsconfig.cjs.tsbuildinfo +0 -1
- package/dist/tsconfig.tsbuildinfo +0 -1
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const vitest_1 = require("vitest");
|
|
4
|
-
const deploy_js_1 = require("./deploy.js");
|
|
5
|
-
const chains_1 = require("viem/chains");
|
|
6
|
-
const tx_js_1 = require("./tx.js");
|
|
7
|
-
(0, vitest_1.describe)("sucker parsing", () => {
|
|
8
|
-
(0, vitest_1.test)("ouputs correct amount of sucker configurations and mappings", () => {
|
|
9
|
-
const result = (0, deploy_js_1.parseSuckerDeployerConfig)(chains_1.mainnet.id, [chains_1.optimism.id, chains_1.arbitrum.id, chains_1.base.id], [deploy_js_1.MappableAsset.USDC, deploy_js_1.MappableAsset.NATIVE]);
|
|
10
|
-
// Should be 3 deployer configurations, one for each chain that is being connected to mainnet.
|
|
11
|
-
(0, vitest_1.expect)(result.deployerConfigurations.length).toBe(3);
|
|
12
|
-
// Each configuration should have 2 mappings, one for USDC and one for NATIVE.
|
|
13
|
-
result.deployerConfigurations.map((conf) => {
|
|
14
|
-
(0, vitest_1.expect)(conf.mappings.length).toBe(2);
|
|
15
|
-
});
|
|
16
|
-
});
|
|
17
|
-
(0, vitest_1.test)("keeps salt if passed in explicitly", () => {
|
|
18
|
-
const salt = (0, tx_js_1.createSalt)();
|
|
19
|
-
const result = (0, deploy_js_1.parseSuckerDeployerConfig)(chains_1.mainnet.id, [chains_1.optimism.id, chains_1.arbitrum.id, chains_1.base.id], [deploy_js_1.MappableAsset.NATIVE], { salt: salt });
|
|
20
|
-
// Salt should be the same as the one we passed in.
|
|
21
|
-
(0, vitest_1.expect)(result.salt).toBe(salt);
|
|
22
|
-
});
|
|
23
|
-
});
|
|
24
|
-
(0, vitest_1.describe)("v6 bridge selection", () => {
|
|
25
|
-
(0, vitest_1.test)("native bridges from mainnet to each L2", () => {
|
|
26
|
-
const result = (0, deploy_js_1.parseSuckerDeployerConfig)(chains_1.mainnet.id, [chains_1.optimism.id, chains_1.arbitrum.id, chains_1.base.id], [deploy_js_1.MappableAsset.NATIVE], { version: 6, bridge: "native" });
|
|
27
|
-
(0, vitest_1.expect)(result.deployerConfigurations.length).toBe(3);
|
|
28
|
-
(0, vitest_1.expect)(result.deployerConfigurations[0].deployer).toBe("0x298a775c030adcedb641a89d9047ec9972674e1a");
|
|
29
|
-
});
|
|
30
|
-
(0, vitest_1.test)("both deploys a native and a CCIP sucker per L1<->L2 pair", () => {
|
|
31
|
-
const result = (0, deploy_js_1.parseSuckerDeployerConfig)(chains_1.mainnet.id, [chains_1.optimism.id], [deploy_js_1.MappableAsset.NATIVE], { version: 6, bridge: "both" });
|
|
32
|
-
(0, vitest_1.expect)(result.deployerConfigurations.length).toBe(2);
|
|
33
|
-
const [native, ccip] = result.deployerConfigurations;
|
|
34
|
-
(0, vitest_1.expect)(native.deployer).not.toBe(ccip.deployer);
|
|
35
|
-
});
|
|
36
|
-
(0, vitest_1.test)("both falls back to CCIP alone for L2<->L2 pairs", () => {
|
|
37
|
-
const result = (0, deploy_js_1.parseSuckerDeployerConfig)(chains_1.optimism.id, [chains_1.base.id], [deploy_js_1.MappableAsset.NATIVE], { version: 6, bridge: "both" });
|
|
38
|
-
(0, vitest_1.expect)(result.deployerConfigurations.length).toBe(1);
|
|
39
|
-
});
|
|
40
|
-
(0, vitest_1.test)("native throws for L2<->L2 pairs", () => {
|
|
41
|
-
(0, vitest_1.expect)(() => (0, deploy_js_1.parseSuckerDeployerConfig)(chains_1.optimism.id, [chains_1.base.id], [deploy_js_1.MappableAsset.NATIVE], {
|
|
42
|
-
version: 6,
|
|
43
|
-
bridge: "native",
|
|
44
|
-
})).toThrow(/native bridges only connect Ethereum with an L2/);
|
|
45
|
-
});
|
|
46
|
-
(0, vitest_1.test)("native throws for USDC (bridge-wrapped USDC.e trap)", () => {
|
|
47
|
-
(0, vitest_1.expect)(() => (0, deploy_js_1.parseSuckerDeployerConfig)(chains_1.mainnet.id, [chains_1.optimism.id], [deploy_js_1.MappableAsset.USDC], {
|
|
48
|
-
version: 6,
|
|
49
|
-
bridge: "native",
|
|
50
|
-
})).toThrow(/USDC\.e/);
|
|
51
|
-
});
|
|
52
|
-
(0, vitest_1.test)("both keeps USDC on the CCIP sucker only", () => {
|
|
53
|
-
const result = (0, deploy_js_1.parseSuckerDeployerConfig)(chains_1.mainnet.id, [chains_1.optimism.id], [deploy_js_1.MappableAsset.NATIVE, deploy_js_1.MappableAsset.USDC], { version: 6, bridge: "both" });
|
|
54
|
-
(0, vitest_1.expect)(result.deployerConfigurations.length).toBe(2);
|
|
55
|
-
const [native, ccip] = result.deployerConfigurations;
|
|
56
|
-
(0, vitest_1.expect)(native.mappings.length).toBe(1); // native token only
|
|
57
|
-
(0, vitest_1.expect)(ccip.mappings.length).toBe(2); // native + USDC
|
|
58
|
-
});
|
|
59
|
-
(0, vitest_1.test)("native is rejected for pre-v6 deployments", () => {
|
|
60
|
-
(0, vitest_1.expect)(() => (0, deploy_js_1.parseSuckerDeployerConfig)(chains_1.mainnet.id, [chains_1.optimism.id], [deploy_js_1.MappableAsset.NATIVE], {
|
|
61
|
-
bridge: "native",
|
|
62
|
-
})).toThrow(/only supported for v6/);
|
|
63
|
-
});
|
|
64
|
-
});
|
|
65
|
-
//# sourceMappingURL=deploy.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"deploy.test.js","sourceRoot":"","sources":["../../../src/utils/deploy.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"fee.test.d.ts","sourceRoot":"","sources":["../../../src/utils/fee.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const constants_js_1 = require("../constants.js");
|
|
4
|
-
const vitest_1 = require("vitest");
|
|
5
|
-
const fee_js_1 = require("./fee.js");
|
|
6
|
-
(0, vitest_1.describe)("fee", () => {
|
|
7
|
-
(0, vitest_1.test)("applyJbDaoCashOutFee", () => {
|
|
8
|
-
(0, vitest_1.expect)((0, fee_js_1.applyJbDaoCashOutFee)(constants_js_1.ONE_ETHER)).toEqual(975000000000000000n);
|
|
9
|
-
});
|
|
10
|
-
});
|
|
11
|
-
//# sourceMappingURL=fee.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"fee.test.js","sourceRoot":"","sources":["../../../src/utils/fee.test.ts"],"names":[],"mappings":";;AAAA,kDAA4C;AAC5C,mCAAgD;AAChD,qCAAgD;AAEhD,IAAA,iBAAQ,EAAC,KAAK,EAAE,GAAG,EAAE;IACnB,IAAA,aAAI,EAAC,sBAAsB,EAAE,GAAG,EAAE;QAChC,IAAA,eAAM,EAAC,IAAA,6BAAoB,EAAC,wBAAS,CAAC,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"format.test.d.ts","sourceRoot":"","sources":["../../../src/utils/format.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const vitest_1 = require("vitest");
|
|
4
|
-
const format_js_1 = require("./format.js");
|
|
5
|
-
(0, vitest_1.describe)("formatting utilities", () => {
|
|
6
|
-
(0, vitest_1.test)("formats Ethereum address correctly", () => {
|
|
7
|
-
const address = "0x123456789abcdef0123456789abcdef012345678";
|
|
8
|
-
(0, vitest_1.expect)((0, format_js_1.formatEthAddress)(address, { truncateTo: 4 })).toEqual("0x1234...5678");
|
|
9
|
-
});
|
|
10
|
-
vitest_1.test.each `
|
|
11
|
-
wei | fractionDigits | expected
|
|
12
|
-
${1000000000000000000n} | ${2} | ${"1"}
|
|
13
|
-
${1234567890123456789n} | ${3} | ${"1.235"}
|
|
14
|
-
${1234567890123456789n} | ${0} | ${"1"}
|
|
15
|
-
`("formats Ether correctly", ({ wei, fractionDigits, expected }) => {
|
|
16
|
-
(0, vitest_1.expect)((0, format_js_1.formatEther)(wei, { fractionDigits })).toEqual(expected);
|
|
17
|
-
});
|
|
18
|
-
vitest_1.test.each `
|
|
19
|
-
value | units | fractionDigits | expected
|
|
20
|
-
${1000000000n} | ${9} | ${2} | ${"1"}
|
|
21
|
-
${1234567890n} | ${9} | ${3} | ${"1.235"}
|
|
22
|
-
${1234567890n} | ${9} | ${0} | ${"1"}
|
|
23
|
-
`("formats Units correctly", ({ value, units, fractionDigits, expected }) => {
|
|
24
|
-
(0, vitest_1.expect)((0, format_js_1.formatUnits)(value, units, { fractionDigits })).toEqual(expected);
|
|
25
|
-
});
|
|
26
|
-
});
|
|
27
|
-
//# sourceMappingURL=format.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"format.test.js","sourceRoot":"","sources":["../../../src/utils/format.test.ts"],"names":[],"mappings":";;AAAA,mCAAgD;AAChD,2CAAyE;AAEzE,IAAA,iBAAQ,EAAC,sBAAsB,EAAE,GAAG,EAAE;IACpC,IAAA,aAAI,EAAC,oCAAoC,EAAE,GAAG,EAAE;QAC9C,MAAM,OAAO,GAAG,4CAA4C,CAAC;QAC7D,IAAA,eAAM,EAAC,IAAA,4BAAgB,EAAC,OAAO,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAC1D,eAAe,CAChB,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,aAAI,CAAC,IAAI,CAAA;;MAEL,oBAAoB,MAAM,CAAC,gBAAgB,GAAG;MAC9C,oBAAoB,MAAM,CAAC,gBAAgB,OAAO;MAClD,oBAAoB,MAAM,CAAC,gBAAgB,GAAG;GACjD,CAAC,yBAAyB,EAAE,CAAC,EAAE,GAAG,EAAE,cAAc,EAAE,QAAQ,EAAE,EAAE,EAAE;QACjE,IAAA,eAAM,EAAC,IAAA,uBAAW,EAAC,GAAG,EAAE,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,aAAI,CAAC,IAAI,CAAA;;MAEL,WAAW,MAAM,CAAC,OAAO,CAAC,gBAAgB,GAAG;MAC7C,WAAW,MAAM,CAAC,OAAO,CAAC,gBAAgB,OAAO;MACjD,WAAW,MAAM,CAAC,OAAO,CAAC,gBAAgB,GAAG;GAChD,CAAC,yBAAyB,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC1E,IAAA,eAAM,EAAC,IAAA,uBAAW,EAAC,KAAK,EAAE,KAAK,EAAE,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ipfs.test.d.ts","sourceRoot":"","sources":["../../../src/utils/ipfs.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,33 +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
|
-
const bs58_1 = __importDefault(require("bs58"));
|
|
7
|
-
const vitest_1 = require("vitest");
|
|
8
|
-
const ipfs_js_1 = require("./ipfs.js");
|
|
9
|
-
const cid = "QmbWqxBEKC3P8tqsKc98xmWNzrzDtRLMiMPL8wBuTGsMnR";
|
|
10
|
-
const cidCorrespondingHex = "c3c4733ec8affd06cf9e9ff50ffc6bcd2ec85a6170004bb709669c31de94391a";
|
|
11
|
-
(0, vitest_1.describe)("IPFS utilities", () => {
|
|
12
|
-
(0, vitest_1.test)("generates IPFS gateway URL correctly", () => {
|
|
13
|
-
(0, vitest_1.expect)((0, ipfs_js_1.ipfsGatewayUrl)(cid)).toEqual(`https://ipfs.io/ipfs/${cid}`);
|
|
14
|
-
(0, vitest_1.expect)((0, ipfs_js_1.ipfsGatewayUrl)(cid, "another-gateway.com")).toEqual(`https://another-gateway.com/ipfs/${cid}`);
|
|
15
|
-
(0, vitest_1.expect)((0, ipfs_js_1.ipfsGatewayUrl)(undefined)).toEqual("https://ipfs.io/ipfs/undefined");
|
|
16
|
-
});
|
|
17
|
-
(0, vitest_1.test)("encodes IPFS CID correctly", () => {
|
|
18
|
-
const hexEncoded = (0, ipfs_js_1.encodeIpfsUri)(cid);
|
|
19
|
-
(0, vitest_1.expect)(hexEncoded).toEqual("0x" + cidCorrespondingHex);
|
|
20
|
-
});
|
|
21
|
-
(0, vitest_1.test)("decodes hex-encoded IPFS CID correctly", () => {
|
|
22
|
-
const hexEncoded = "0x" + cidCorrespondingHex;
|
|
23
|
-
const decodedCid = (0, ipfs_js_1.decodeEncodedIpfsUri)(hexEncoded);
|
|
24
|
-
(0, vitest_1.expect)(decodedCid).toEqual(cid);
|
|
25
|
-
});
|
|
26
|
-
(0, vitest_1.test)("encodes and then decodes IPFS CID correctly", () => {
|
|
27
|
-
const expectedHex = Buffer.from(bs58_1.default.decode(cid).slice(2)).toString("hex");
|
|
28
|
-
const hexEncoded = "0x" + expectedHex;
|
|
29
|
-
const decodedCid = (0, ipfs_js_1.decodeEncodedIpfsUri)(hexEncoded);
|
|
30
|
-
(0, vitest_1.expect)(decodedCid).toEqual(cid);
|
|
31
|
-
});
|
|
32
|
-
});
|
|
33
|
-
//# sourceMappingURL=ipfs.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ipfs.test.js","sourceRoot":"","sources":["../../../src/utils/ipfs.test.ts"],"names":[],"mappings":";;;;;AAAA,gDAAwB;AACxB,mCAAgD;AAChD,uCAAgF;AAEhF,MAAM,GAAG,GAAG,gDAAgD,CAAC;AAC7D,MAAM,mBAAmB,GACvB,kEAAkE,CAAC;AAErE,IAAA,iBAAQ,EAAC,gBAAgB,EAAE,GAAG,EAAE;IAC9B,IAAA,aAAI,EAAC,sCAAsC,EAAE,GAAG,EAAE;QAChD,IAAA,eAAM,EAAC,IAAA,wBAAc,EAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,wBAAwB,GAAG,EAAE,CAAC,CAAC;QACnE,IAAA,eAAM,EAAC,IAAA,wBAAc,EAAC,GAAG,EAAE,qBAAqB,CAAC,CAAC,CAAC,OAAO,CACxD,oCAAoC,GAAG,EAAE,CAC1C,CAAC;QACF,IAAA,eAAM,EAAC,IAAA,wBAAc,EAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,gCAAgC,CAAC,CAAC;IAC9E,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,4BAA4B,EAAE,GAAG,EAAE;QACtC,MAAM,UAAU,GAAG,IAAA,uBAAa,EAAC,GAAG,CAAC,CAAC;QACtC,IAAA,eAAM,EAAC,UAAU,CAAC,CAAC,OAAO,CAAC,IAAI,GAAG,mBAAmB,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,wCAAwC,EAAE,GAAG,EAAE;QAClD,MAAM,UAAU,GAAG,IAAI,GAAG,mBAAmB,CAAC;QAC9C,MAAM,UAAU,GAAG,IAAA,8BAAoB,EAAC,UAAU,CAAC,CAAC;QACpD,IAAA,eAAM,EAAC,UAAU,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,6CAA6C,EAAE,GAAG,EAAE;QACvD,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,cAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC3E,MAAM,UAAU,GAAG,IAAI,GAAG,WAAW,CAAC;QACtC,MAAM,UAAU,GAAG,IAAA,8BAAoB,EAAC,UAAU,CAAC,CAAC;QACpD,IAAA,eAAM,EAAC,UAAU,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"revnet.test.d.ts","sourceRoot":"","sources":["../../../src/utils/revnet.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const vitest_1 = require("vitest");
|
|
4
|
-
const revnet_js_1 = require("./revnet.js");
|
|
5
|
-
(0, vitest_1.describe)("calcPrepaidFee", () => {
|
|
6
|
-
(0, vitest_1.test)("calcPrepaidFee", () => {
|
|
7
|
-
(0, vitest_1.expect)((0, revnet_js_1.calcPrepaidFee)(1)).toEqual(29n);
|
|
8
|
-
(0, vitest_1.expect)((0, revnet_js_1.calcPrepaidFee)(0)).toEqual(25n);
|
|
9
|
-
(0, vitest_1.expect)((0, revnet_js_1.calcPrepaidFee)(121)).toEqual(500n);
|
|
10
|
-
});
|
|
11
|
-
});
|
|
12
|
-
//# sourceMappingURL=revnet.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"revnet.test.js","sourceRoot":"","sources":["../../../src/utils/revnet.test.ts"],"names":[],"mappings":";;AAAA,mCAAgD;AAChD,2CAA6C;AAE7C,IAAA,iBAAQ,EAAC,gBAAgB,EAAE,GAAG,EAAE;IAC9B,IAAA,aAAI,EAAC,gBAAgB,EAAE,GAAG,EAAE;QAC1B,IAAA,eAAM,EAAC,IAAA,0BAAc,EAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACvC,IAAA,eAAM,EAAC,IAAA,0BAAc,EAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACvC,IAAA,eAAM,EAAC,IAAA,0BAAc,EAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ruleset.test.d.ts","sourceRoot":"","sources":["../../../src/utils/ruleset.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const vitest_1 = require("vitest");
|
|
4
|
-
const ruleset_js_1 = require("./ruleset.js");
|
|
5
|
-
(0, vitest_1.describe)("Ruleset Weight utilities", () => {
|
|
6
|
-
vitest_1.test.each `
|
|
7
|
-
weight | weightCutPercent | expected
|
|
8
|
-
${100n} | ${200000000} | ${80n}
|
|
9
|
-
${200n} | ${300000000} | ${140n}
|
|
10
|
-
${300n} | ${0} | ${300n}
|
|
11
|
-
`("computes next ruleset weight correctly", ({ weight, weightCutPercent, expected }) => {
|
|
12
|
-
(0, vitest_1.expect)((0, ruleset_js_1.getNextRulesetWeight)({ weight, weightCutPercent })).toEqual(expected);
|
|
13
|
-
});
|
|
14
|
-
vitest_1.test.each `
|
|
15
|
-
weight | weightCutPercent | expected
|
|
16
|
-
${80n} | ${200000000} | ${100n}
|
|
17
|
-
${160n} | ${300000000} | ${228n}
|
|
18
|
-
${300n} | ${0} | ${300n}
|
|
19
|
-
`("computes previous cycle weight correctly", ({ weight, weightCutPercent, expected }) => {
|
|
20
|
-
(0, vitest_1.expect)((0, ruleset_js_1.getPrevRulesetWeight)({ weight, weightCutPercent })).toEqual(expected);
|
|
21
|
-
});
|
|
22
|
-
});
|
|
23
|
-
//# sourceMappingURL=ruleset.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ruleset.test.js","sourceRoot":"","sources":["../../../src/utils/ruleset.test.ts"],"names":[],"mappings":";;AAAA,mCAAgD;AAChD,6CAA0E;AAE1E,IAAA,iBAAQ,EAAC,0BAA0B,EAAE,GAAG,EAAE;IACxC,aAAI,CAAC,IAAI,CAAA;;MAEL,IAAI,MAAM,SAAS,UAAU,GAAG;MAChC,IAAI,MAAM,SAAS,UAAU,IAAI;MACjC,IAAI,MAAM,CAAC,iBAAiB,IAAI;GACnC,CACC,wCAAwC,EACxC,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,QAAQ,EAAE,EAAE,EAAE;QACzC,IAAA,eAAM,EAAC,IAAA,iCAAoB,EAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,OAAO,CAChE,QAAQ,CACT,CAAC;IACJ,CAAC,CACF,CAAC;IAEF,aAAI,CAAC,IAAI,CAAA;;MAEL,GAAG,OAAO,SAAS,UAAU,IAAI;MACjC,IAAI,MAAM,SAAS,UAAU,IAAI;MACjC,IAAI,MAAM,CAAC,iBAAiB,IAAI;GACnC,CACC,0CAA0C,EAC1C,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,QAAQ,EAAE,EAAE,EAAE;QACzC,IAAA,eAAM,EAAC,IAAA,iCAAoB,EAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,OAAO,CAChE,QAAQ,CACT,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"token.test.d.ts","sourceRoot":"","sources":["../../../src/utils/token.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const fpnum_1 = require("fpnum");
|
|
4
|
-
const viem_1 = require("viem");
|
|
5
|
-
const vitest_1 = require("vitest");
|
|
6
|
-
const data_js_1 = require("./data.js");
|
|
7
|
-
const token_js_1 = require("./token.js");
|
|
8
|
-
(0, vitest_1.describe)("token", () => {
|
|
9
|
-
(0, vitest_1.describe)("getTokenAToBQuote", () => {
|
|
10
|
-
vitest_1.test.each `
|
|
11
|
-
tokenAAmount | tokenADecimals | expectedPayerTokens
|
|
12
|
-
${1000000n} | ${6} | ${(0, viem_1.parseUnits)("1", 18)}
|
|
13
|
-
${(0, viem_1.parseEther)("1")} | ${18} | ${(0, viem_1.parseUnits)("1", 18)}
|
|
14
|
-
`("should return the correct token B quote when amount is $tokenAAmount and decimals is $tokenADecimals", ({ tokenAAmount, tokenADecimals, expectedPayerTokens }) => {
|
|
15
|
-
const weight = fpnum_1.FixedInt.parse("1", 18); // 1 token per USDC
|
|
16
|
-
const reservedPercent = new data_js_1.ReservedPercent(0);
|
|
17
|
-
const { payerTokens } = (0, token_js_1.getTokenAToBQuote)(new fpnum_1.FixedInt(tokenAAmount, tokenADecimals), {
|
|
18
|
-
weight,
|
|
19
|
-
reservedPercent,
|
|
20
|
-
});
|
|
21
|
-
(0, vitest_1.expect)(payerTokens).toEqual(expectedPayerTokens);
|
|
22
|
-
});
|
|
23
|
-
vitest_1.test.each `
|
|
24
|
-
tokenADecimals | weight | expectedTokenBPrice
|
|
25
|
-
${18} | ${fpnum_1.FixedInt.parse("1", 18)} | ${(0, viem_1.parseUnits)("1", 18)}
|
|
26
|
-
${6} | ${fpnum_1.FixedInt.parse("1", 18)} | ${(0, viem_1.parseUnits)("1", 6)}
|
|
27
|
-
${18} | ${fpnum_1.FixedInt.parse("0.5", 18)} | ${(0, viem_1.parseUnits)("2", 18)}
|
|
28
|
-
${6} | ${fpnum_1.FixedInt.parse("0.5", 18)} | ${(0, viem_1.parseUnits)("2", 6)}
|
|
29
|
-
${6} | ${fpnum_1.FixedInt.parse("0.8", 18)} | ${(0, viem_1.parseUnits)("1.25", 6)}
|
|
30
|
-
`("should return the correct token A quote when amount is $tokenBAmount and decimals is $tokenADecimals", ({ tokenADecimals, expectedTokenBPrice, weight }) => {
|
|
31
|
-
const reservedPercent = new data_js_1.ReservedPercent(0);
|
|
32
|
-
const tokenBPrice = (0, token_js_1.getTokenBPrice)(tokenADecimals, {
|
|
33
|
-
weight,
|
|
34
|
-
reservedPercent,
|
|
35
|
-
});
|
|
36
|
-
(0, vitest_1.expect)(tokenBPrice.value).toBe(expectedTokenBPrice);
|
|
37
|
-
});
|
|
38
|
-
});
|
|
39
|
-
});
|
|
40
|
-
//# sourceMappingURL=token.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"token.test.js","sourceRoot":"","sources":["../../../src/utils/token.test.ts"],"names":[],"mappings":";;AAAA,iCAAiC;AACjC,+BAA8C;AAC9C,mCAAgD;AAChD,uCAA4C;AAC5C,yCAA+D;AAE/D,IAAA,iBAAQ,EAAC,OAAO,EAAE,GAAG,EAAE;IACrB,IAAA,iBAAQ,EAAC,mBAAmB,EAAE,GAAG,EAAE;QACjC,aAAI,CAAC,IAAI,CAAA;;QAEL,QAAQ,aAAa,CAAC,gBAAgB,IAAA,iBAAU,EAAC,GAAG,EAAE,EAAE,CAAC;QACzD,IAAA,iBAAU,EAAC,GAAG,CAAC,MAAM,EAAE,eAAe,IAAA,iBAAU,EAAC,GAAG,EAAE,EAAE,CAAC;KAC5D,CACC,sGAAsG,EACtG,CAAC,EAAE,YAAY,EAAE,cAAc,EAAE,mBAAmB,EAAE,EAAE,EAAE;YACxD,MAAM,MAAM,GAAG,gBAAQ,CAAC,KAAK,CAAK,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,mBAAmB;YAC/D,MAAM,eAAe,GAAG,IAAI,yBAAe,CAAC,CAAC,CAAC,CAAC;YAC/C,MAAM,EAAE,WAAW,EAAE,GAAG,IAAA,4BAAiB,EACvC,IAAI,gBAAQ,CAAC,YAAY,EAAE,cAAc,CAAC,EAC1C;gBACE,MAAM;gBACN,eAAe;aAChB,CACF,CAAC;YACF,IAAA,eAAM,EAAC,WAAW,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;QACnD,CAAC,CACF,CAAC;QAEF,aAAI,CAAC,IAAI,CAAA;;QAEL,EAAE,eAAe,gBAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,QAAQ,IAAA,iBAAU,EAAC,GAAG,EAAE,EAAE,CAAC;QACnE,CAAC,gBAAgB,gBAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,QAAQ,IAAA,iBAAU,EAAC,GAAG,EAAE,CAAC,CAAC;QAClE,EAAE,eAAe,gBAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,IAAA,iBAAU,EAAC,GAAG,EAAE,EAAE,CAAC;QACnE,CAAC,gBAAgB,gBAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,IAAA,iBAAU,EAAC,GAAG,EAAE,CAAC,CAAC;QAClE,CAAC,gBAAgB,gBAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,IAAA,iBAAU,EAAC,MAAM,EAAE,CAAC,CAAC;KACxE,CACC,sGAAsG,EACtG,CAAC,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,EAAE,EAAE,EAAE;YAClD,MAAM,eAAe,GAAG,IAAI,yBAAe,CAAC,CAAC,CAAC,CAAC;YAC/C,MAAM,WAAW,GAAG,IAAA,yBAAc,EAAC,cAAc,EAAE;gBACjD,MAAM;gBACN,eAAe;aAChB,CAAC,CAAC;YAEH,IAAA,eAAM,EAAC,WAAW,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACtD,CAAC,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"urn.test.d.ts","sourceRoot":"","sources":["../../../src/utils/urn.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const chains_1 = require("viem/chains");
|
|
4
|
-
const vitest_1 = require("vitest");
|
|
5
|
-
const urn_js_1 = require("./urn.js");
|
|
6
|
-
(0, vitest_1.describe)("jbUrn", () => {
|
|
7
|
-
(0, vitest_1.describe)("valid URNs", () => {
|
|
8
|
-
(0, vitest_1.it)("should parse /eth:3 as mainnet project id 3, version 4", () => {
|
|
9
|
-
const result = (0, urn_js_1.jbUrn)("eth:3");
|
|
10
|
-
(0, vitest_1.expect)(result).toEqual({
|
|
11
|
-
chainId: chains_1.mainnet.id,
|
|
12
|
-
projectId: 3n,
|
|
13
|
-
version: 4,
|
|
14
|
-
});
|
|
15
|
-
});
|
|
16
|
-
(0, vitest_1.it)("should parse /v5:eth:5 as mainnet project id 5, version 5", () => {
|
|
17
|
-
const result = (0, urn_js_1.jbUrn)("v5:eth:5");
|
|
18
|
-
(0, vitest_1.expect)(result).toEqual({
|
|
19
|
-
chainId: chains_1.mainnet.id,
|
|
20
|
-
projectId: 5n,
|
|
21
|
-
version: 5,
|
|
22
|
-
});
|
|
23
|
-
});
|
|
24
|
-
(0, vitest_1.it)("should parse large project IDs correctly", () => {
|
|
25
|
-
const result = (0, urn_js_1.jbUrn)("eth:999999999999999999");
|
|
26
|
-
(0, vitest_1.expect)(result).toEqual({
|
|
27
|
-
chainId: chains_1.mainnet.id,
|
|
28
|
-
projectId: 999999999999999999n,
|
|
29
|
-
version: 4,
|
|
30
|
-
});
|
|
31
|
-
});
|
|
32
|
-
});
|
|
33
|
-
(0, vitest_1.describe)("supported chains", () => {
|
|
34
|
-
const chainTests = [
|
|
35
|
-
{ slug: "eth", chainId: chains_1.mainnet.id, name: "Ethereum mainnet" },
|
|
36
|
-
{ slug: "sep", chainId: chains_1.sepolia.id, name: "Sepolia testnet" },
|
|
37
|
-
{ slug: "op", chainId: chains_1.optimism.id, name: "Optimism" },
|
|
38
|
-
{ slug: "base", chainId: chains_1.base.id, name: "Base" },
|
|
39
|
-
{ slug: "arb", chainId: chains_1.arbitrum.id, name: "Arbitrum" },
|
|
40
|
-
];
|
|
41
|
-
chainTests.forEach(({ slug, chainId, name }) => {
|
|
42
|
-
(0, vitest_1.it)(`should parse ${name} (${slug}) correctly`, () => {
|
|
43
|
-
const result = (0, urn_js_1.jbUrn)(`${slug}:42`);
|
|
44
|
-
(0, vitest_1.expect)(result).toEqual({ chainId, projectId: 42n, version: 4 });
|
|
45
|
-
});
|
|
46
|
-
});
|
|
47
|
-
});
|
|
48
|
-
(0, vitest_1.describe)("version validation", () => {
|
|
49
|
-
(0, vitest_1.it)("should accept versions 4, 5 and 6, default to 4", () => {
|
|
50
|
-
(0, vitest_1.expect)((0, urn_js_1.jbUrn)("v4:eth:1")?.version).toBe(4);
|
|
51
|
-
(0, vitest_1.expect)((0, urn_js_1.jbUrn)("v5:eth:1")?.version).toBe(5);
|
|
52
|
-
(0, vitest_1.expect)((0, urn_js_1.jbUrn)("v6:eth:1")?.version).toBe(6);
|
|
53
|
-
(0, vitest_1.expect)((0, urn_js_1.jbUrn)("eth:1")?.version).toBe(4); // default
|
|
54
|
-
});
|
|
55
|
-
(0, vitest_1.it)("should reject invalid versions", () => {
|
|
56
|
-
(0, vitest_1.expect)((0, urn_js_1.jbUrn)("v1:eth:3")).toBeNull();
|
|
57
|
-
(0, vitest_1.expect)((0, urn_js_1.jbUrn)("v7:eth:3")).toBeNull();
|
|
58
|
-
(0, vitest_1.expect)((0, urn_js_1.jbUrn)("v0:eth:3")).toBeNull();
|
|
59
|
-
});
|
|
60
|
-
});
|
|
61
|
-
(0, vitest_1.describe)("invalid URNs", () => {
|
|
62
|
-
(0, vitest_1.it)("should return null for invalid version format", () => {
|
|
63
|
-
(0, vitest_1.expect)((0, urn_js_1.jbUrn)("version5:eth:3")).toBeNull();
|
|
64
|
-
(0, vitest_1.expect)((0, urn_js_1.jbUrn)("5:eth:3")).toBeNull();
|
|
65
|
-
(0, vitest_1.expect)((0, urn_js_1.jbUrn)("V5:eth:3")).toBeNull();
|
|
66
|
-
(0, vitest_1.expect)((0, urn_js_1.jbUrn)("v5a:eth:3")).toBeNull();
|
|
67
|
-
});
|
|
68
|
-
(0, vitest_1.it)("should return null for unknown chain names", () => {
|
|
69
|
-
(0, vitest_1.expect)((0, urn_js_1.jbUrn)("bitcoin:3")).toBeNull();
|
|
70
|
-
(0, vitest_1.expect)((0, urn_js_1.jbUrn)("ethereum:3")).toBeNull();
|
|
71
|
-
(0, vitest_1.expect)((0, urn_js_1.jbUrn)("ETH:3")).toBeNull();
|
|
72
|
-
});
|
|
73
|
-
(0, vitest_1.it)("should return null for malformed URLs", () => {
|
|
74
|
-
(0, vitest_1.expect)((0, urn_js_1.jbUrn)("")).toBeNull();
|
|
75
|
-
(0, vitest_1.expect)((0, urn_js_1.jbUrn)("eth:")).toBeNull();
|
|
76
|
-
(0, vitest_1.expect)((0, urn_js_1.jbUrn)(":3")).toBeNull();
|
|
77
|
-
(0, vitest_1.expect)((0, urn_js_1.jbUrn)("v5:eth:3:extra")).toBeNull();
|
|
78
|
-
(0, vitest_1.expect)((0, urn_js_1.jbUrn)("eth")).toBeNull();
|
|
79
|
-
});
|
|
80
|
-
(0, vitest_1.it)("should handle invalid project IDs", () => {
|
|
81
|
-
(0, vitest_1.expect)((0, urn_js_1.jbUrn)("eth:abc")).toBeNull();
|
|
82
|
-
(0, vitest_1.expect)((0, urn_js_1.jbUrn)("eth:3.14")).toBeNull();
|
|
83
|
-
// 0x123 = 291
|
|
84
|
-
(0, vitest_1.expect)((0, urn_js_1.jbUrn)("eth:0x123")).toEqual({
|
|
85
|
-
chainId: chains_1.mainnet.id,
|
|
86
|
-
projectId: 291n,
|
|
87
|
-
version: 4,
|
|
88
|
-
});
|
|
89
|
-
});
|
|
90
|
-
});
|
|
91
|
-
(0, vitest_1.describe)("edge cases", () => {
|
|
92
|
-
(0, vitest_1.it)("should handle whitespace by trimming", () => {
|
|
93
|
-
(0, vitest_1.expect)((0, urn_js_1.jbUrn)(" eth:3")).toEqual({
|
|
94
|
-
chainId: chains_1.mainnet.id,
|
|
95
|
-
projectId: 3n,
|
|
96
|
-
version: 4,
|
|
97
|
-
});
|
|
98
|
-
(0, vitest_1.expect)((0, urn_js_1.jbUrn)("v5: eth : 3 ")).toEqual({
|
|
99
|
-
chainId: chains_1.mainnet.id,
|
|
100
|
-
projectId: 3n,
|
|
101
|
-
version: 5,
|
|
102
|
-
});
|
|
103
|
-
});
|
|
104
|
-
(0, vitest_1.it)("should handle numeric edge cases", () => {
|
|
105
|
-
(0, vitest_1.expect)((0, urn_js_1.jbUrn)("eth:0003")?.projectId).toBe(3n);
|
|
106
|
-
(0, vitest_1.expect)((0, urn_js_1.jbUrn)("eth:0")?.projectId).toBe(0n);
|
|
107
|
-
});
|
|
108
|
-
(0, vitest_1.it)("should reject invalid formats", () => {
|
|
109
|
-
(0, vitest_1.expect)((0, urn_js_1.jbUrn)("eth-test:3")).toBeNull();
|
|
110
|
-
(0, vitest_1.expect)((0, urn_js_1.jbUrn)("a".repeat(1000) + ":1")).toBeNull();
|
|
111
|
-
});
|
|
112
|
-
});
|
|
113
|
-
});
|
|
114
|
-
//# sourceMappingURL=urn.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"urn.test.js","sourceRoot":"","sources":["../../../src/utils/urn.test.ts"],"names":[],"mappings":";;AAAA,wCAAyE;AACzE,mCAA8C;AAC9C,qCAAiC;AAEjC,IAAA,iBAAQ,EAAC,OAAO,EAAE,GAAG,EAAE;IACrB,IAAA,iBAAQ,EAAC,YAAY,EAAE,GAAG,EAAE;QAC1B,IAAA,WAAE,EAAC,wDAAwD,EAAE,GAAG,EAAE;YAChE,MAAM,MAAM,GAAG,IAAA,cAAK,EAAC,OAAO,CAAC,CAAC;YAC9B,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACrB,OAAO,EAAE,gBAAO,CAAC,EAAE;gBACnB,SAAS,EAAE,EAAE;gBACb,OAAO,EAAE,CAAC;aACX,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAA,WAAE,EAAC,2DAA2D,EAAE,GAAG,EAAE;YACnE,MAAM,MAAM,GAAG,IAAA,cAAK,EAAC,UAAU,CAAC,CAAC;YACjC,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACrB,OAAO,EAAE,gBAAO,CAAC,EAAE;gBACnB,SAAS,EAAE,EAAE;gBACb,OAAO,EAAE,CAAC;aACX,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAA,WAAE,EAAC,0CAA0C,EAAE,GAAG,EAAE;YAClD,MAAM,MAAM,GAAG,IAAA,cAAK,EAAC,wBAAwB,CAAC,CAAC;YAC/C,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACrB,OAAO,EAAE,gBAAO,CAAC,EAAE;gBACnB,SAAS,EAAE,mBAAmB;gBAC9B,OAAO,EAAE,CAAC;aACX,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAA,iBAAQ,EAAC,kBAAkB,EAAE,GAAG,EAAE;QAChC,MAAM,UAAU,GAAG;YACjB,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,gBAAO,CAAC,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE;YAC9D,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,gBAAO,CAAC,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE;YAC7D,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,iBAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;YACtD,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,aAAI,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;YAChD,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,iBAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;SACxD,CAAC;QAEF,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE;YAC7C,IAAA,WAAE,EAAC,gBAAgB,IAAI,KAAK,IAAI,aAAa,EAAE,GAAG,EAAE;gBAClD,MAAM,MAAM,GAAG,IAAA,cAAK,EAAC,GAAG,IAAI,KAAK,CAAC,CAAC;gBACnC,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;YAClE,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAA,iBAAQ,EAAC,oBAAoB,EAAE,GAAG,EAAE;QAClC,IAAA,WAAE,EAAC,iDAAiD,EAAE,GAAG,EAAE;YACzD,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,UAAU,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC3C,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,UAAU,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC3C,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,UAAU,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC3C,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU;QACrD,CAAC,CAAC,CAAC;QAEH,IAAA,WAAE,EAAC,gCAAgC,EAAE,GAAG,EAAE;YACxC,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;YACrC,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;YACrC,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QACvC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAA,iBAAQ,EAAC,cAAc,EAAE,GAAG,EAAE;QAC5B,IAAA,WAAE,EAAC,+CAA+C,EAAE,GAAG,EAAE;YACvD,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,gBAAgB,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;YAC3C,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;YACpC,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;YACrC,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,IAAA,WAAE,EAAC,4CAA4C,EAAE,GAAG,EAAE;YACpD,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;YACtC,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;YACvC,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QACpC,CAAC,CAAC,CAAC;QAEH,IAAA,WAAE,EAAC,uCAAuC,EAAE,GAAG,EAAE;YAC/C,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;YAC7B,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;YACjC,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;YAC/B,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,gBAAgB,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;YAC3C,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QAClC,CAAC,CAAC,CAAC;QAEH,IAAA,WAAE,EAAC,mCAAmC,EAAE,GAAG,EAAE;YAC3C,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;YACpC,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;YACrC,cAAc;YACd,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC;gBACjC,OAAO,EAAE,gBAAO,CAAC,EAAE;gBACnB,SAAS,EAAE,IAAI;gBACf,OAAO,EAAE,CAAC;aACX,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAA,iBAAQ,EAAC,YAAY,EAAE,GAAG,EAAE;QAC1B,IAAA,WAAE,EAAC,sCAAsC,EAAE,GAAG,EAAE;YAC9C,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC;gBAC9B,OAAO,EAAE,gBAAO,CAAC,EAAE;gBACnB,SAAS,EAAE,EAAE;gBACb,OAAO,EAAE,CAAC;aACX,CAAC,CAAC;YACH,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC;gBACpC,OAAO,EAAE,gBAAO,CAAC,EAAE;gBACnB,SAAS,EAAE,EAAE;gBACb,OAAO,EAAE,CAAC;aACX,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAA,WAAE,EAAC,kCAAkC,EAAE,GAAG,EAAE;YAC1C,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,UAAU,CAAC,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC9C,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,OAAO,CAAC,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,IAAA,WAAE,EAAC,+BAA+B,EAAE,GAAG,EAAE;YACvC,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;YACvC,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QACpD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cashOut.test.d.ts","sourceRoot":"","sources":["../../../src/v6/cashOut.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,122 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const viem_1 = require("viem");
|
|
4
|
-
const vitest_1 = require("vitest");
|
|
5
|
-
const constants_js_1 = require("../constants.js");
|
|
6
|
-
const juicebox_js_1 = require("../generated/juicebox.js");
|
|
7
|
-
const cashOut_js_1 = require("./cashOut.js");
|
|
8
|
-
const types_js_1 = require("./types.js");
|
|
9
|
-
const chainId = 11155111;
|
|
10
|
-
const terminal = "0x1111111111111111111111111111111111111111";
|
|
11
|
-
const holder = "0x2222222222222222222222222222222222222222";
|
|
12
|
-
const beneficiary = "0x3333333333333333333333333333333333333333";
|
|
13
|
-
const projectId = 3n;
|
|
14
|
-
(0, vitest_1.describe)("cashOut", () => {
|
|
15
|
-
(0, vitest_1.test)("buildCashOutTx encodes cashOutTokensOf", () => {
|
|
16
|
-
const tx = (0, cashOut_js_1.buildCashOutTx)({
|
|
17
|
-
chainId,
|
|
18
|
-
terminal,
|
|
19
|
-
holder,
|
|
20
|
-
projectId,
|
|
21
|
-
cashOutCount: constants_js_1.ONE_ETHER,
|
|
22
|
-
tokenToReclaim: constants_js_1.NATIVE_TOKEN,
|
|
23
|
-
beneficiary,
|
|
24
|
-
});
|
|
25
|
-
(0, vitest_1.expect)(tx.chainId).toEqual(chainId);
|
|
26
|
-
(0, vitest_1.expect)(tx.address).toEqual(terminal);
|
|
27
|
-
(0, vitest_1.expect)(tx.functionName).toEqual("cashOutTokensOf");
|
|
28
|
-
(0, vitest_1.expect)(tx.args).toEqual([
|
|
29
|
-
holder,
|
|
30
|
-
projectId,
|
|
31
|
-
constants_js_1.ONE_ETHER,
|
|
32
|
-
constants_js_1.NATIVE_TOKEN,
|
|
33
|
-
0n,
|
|
34
|
-
beneficiary,
|
|
35
|
-
"0x",
|
|
36
|
-
]);
|
|
37
|
-
(0, vitest_1.expect)(() => (0, viem_1.encodeFunctionData)(tx)).not.toThrow();
|
|
38
|
-
});
|
|
39
|
-
(0, vitest_1.test)("buildCashOutTx passes minTokensReclaimed and metadata through", () => {
|
|
40
|
-
const tx = (0, cashOut_js_1.buildCashOutTx)({
|
|
41
|
-
chainId,
|
|
42
|
-
terminal,
|
|
43
|
-
holder,
|
|
44
|
-
projectId,
|
|
45
|
-
cashOutCount: constants_js_1.ONE_ETHER,
|
|
46
|
-
tokenToReclaim: constants_js_1.NATIVE_TOKEN,
|
|
47
|
-
minTokensReclaimed: 999n,
|
|
48
|
-
beneficiary,
|
|
49
|
-
metadata: "0x1234",
|
|
50
|
-
});
|
|
51
|
-
(0, vitest_1.expect)(tx.args[4]).toEqual(999n);
|
|
52
|
-
(0, vitest_1.expect)(tx.args[6]).toEqual("0x1234");
|
|
53
|
-
(0, vitest_1.expect)(() => (0, viem_1.encodeFunctionData)(tx)).not.toThrow();
|
|
54
|
-
});
|
|
55
|
-
(0, vitest_1.test)("getCashOutQuote reads the terminal store and applies the 2.5% fee", async () => {
|
|
56
|
-
const calls = [];
|
|
57
|
-
const client = {
|
|
58
|
-
async readContract(params) {
|
|
59
|
-
calls.push(params);
|
|
60
|
-
return constants_js_1.ONE_ETHER;
|
|
61
|
-
},
|
|
62
|
-
};
|
|
63
|
-
const quote = await (0, cashOut_js_1.getCashOutQuote)(client, {
|
|
64
|
-
chainId,
|
|
65
|
-
projectId,
|
|
66
|
-
cashOutCount: constants_js_1.ONE_ETHER,
|
|
67
|
-
});
|
|
68
|
-
(0, vitest_1.expect)(quote.reclaimAmount).toEqual(constants_js_1.ONE_ETHER);
|
|
69
|
-
(0, vitest_1.expect)(quote.reclaimAmountAfterFee).toEqual(975000000000000000n);
|
|
70
|
-
(0, vitest_1.expect)(calls[0].address).toEqual((0, types_js_1.v6Address)("JBTerminalStore", chainId));
|
|
71
|
-
(0, vitest_1.expect)(calls[0].abi).toBe(juicebox_js_1.jbTerminalStoreAbi);
|
|
72
|
-
(0, vitest_1.expect)(calls[0].functionName).toEqual("currentReclaimableSurplusOf");
|
|
73
|
-
// Empty terminal/token arrays use all of the project's terminals and tokens;
|
|
74
|
-
// defaults quote 18 decimals in the native token's currency.
|
|
75
|
-
(0, vitest_1.expect)(calls[0].args).toEqual([projectId, constants_js_1.ONE_ETHER, [], [], 18n, 61166n]);
|
|
76
|
-
});
|
|
77
|
-
(0, vitest_1.test)("getCashOutQuote respects custom decimals and currency", async () => {
|
|
78
|
-
const calls = [];
|
|
79
|
-
const client = {
|
|
80
|
-
async readContract(params) {
|
|
81
|
-
calls.push(params);
|
|
82
|
-
return 0n;
|
|
83
|
-
},
|
|
84
|
-
};
|
|
85
|
-
await (0, cashOut_js_1.getCashOutQuote)(client, {
|
|
86
|
-
chainId,
|
|
87
|
-
projectId,
|
|
88
|
-
cashOutCount: constants_js_1.ONE_ETHER,
|
|
89
|
-
decimals: 6n,
|
|
90
|
-
currency: 0x3606eb48n,
|
|
91
|
-
});
|
|
92
|
-
(0, vitest_1.expect)(calls[0].args).toEqual([
|
|
93
|
-
projectId,
|
|
94
|
-
constants_js_1.ONE_ETHER,
|
|
95
|
-
[],
|
|
96
|
-
[],
|
|
97
|
-
6n,
|
|
98
|
-
0x3606eb48n,
|
|
99
|
-
]);
|
|
100
|
-
});
|
|
101
|
-
(0, vitest_1.test)("build721CashOutMetadata packs the cashOut id and token ids", () => {
|
|
102
|
-
// With a target whose first 4 bytes are zero, the id is the first 4 bytes
|
|
103
|
-
// of keccak256("cashOut").
|
|
104
|
-
const metadata = (0, cashOut_js_1.build721CashOutMetadata)({
|
|
105
|
-
metadataIdTarget: "0x00000000000000000000000000000000DeaDBeef",
|
|
106
|
-
tokenIds: [1000000001n, 1000000002n],
|
|
107
|
-
});
|
|
108
|
-
(0, vitest_1.expect)((0, viem_1.sliceHex)(metadata, 0, 32)).toEqual(`0x${"00".repeat(32)}`);
|
|
109
|
-
// keccak256("cashOut") first 4 bytes, then the payload word offset (2).
|
|
110
|
-
(0, vitest_1.expect)((0, viem_1.sliceHex)(metadata, 32, 36)).toEqual("0x86b14ff4");
|
|
111
|
-
(0, vitest_1.expect)((0, viem_1.sliceHex)(metadata, 36, 37)).toEqual("0x02");
|
|
112
|
-
const [tokenIds] = (0, viem_1.decodeAbiParameters)([{ type: "uint256[]" }], (0, viem_1.sliceHex)(metadata, 64));
|
|
113
|
-
(0, vitest_1.expect)(tokenIds).toEqual([1000000001n, 1000000002n]);
|
|
114
|
-
});
|
|
115
|
-
(0, vitest_1.test)("build721CashOutMetadata rejects empty, duplicate, and zero token ids", () => {
|
|
116
|
-
const target = "0x00000000000000000000000000000000DeaDBeef";
|
|
117
|
-
(0, vitest_1.expect)(() => (0, cashOut_js_1.build721CashOutMetadata)({ metadataIdTarget: target, tokenIds: [] })).toThrow(/at least one/);
|
|
118
|
-
(0, vitest_1.expect)(() => (0, cashOut_js_1.build721CashOutMetadata)({ metadataIdTarget: target, tokenIds: [1n, 1n] })).toThrow(/unique/);
|
|
119
|
-
(0, vitest_1.expect)(() => (0, cashOut_js_1.build721CashOutMetadata)({ metadataIdTarget: target, tokenIds: [0n] })).toThrow(/positive/);
|
|
120
|
-
});
|
|
121
|
-
});
|
|
122
|
-
//# sourceMappingURL=cashOut.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cashOut.test.js","sourceRoot":"","sources":["../../../src/v6/cashOut.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"currency.test.d.ts","sourceRoot":"","sources":["../../../src/v6/currency.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const vitest_1 = require("vitest");
|
|
4
|
-
const constants_js_1 = require("../constants.js");
|
|
5
|
-
const currency_js_1 = require("./currency.js");
|
|
6
|
-
(0, vitest_1.describe)("currency", () => {
|
|
7
|
-
(0, vitest_1.test)("base currency ids", () => {
|
|
8
|
-
(0, vitest_1.expect)(currency_js_1.BASE_CURRENCY_ETH).toEqual(1);
|
|
9
|
-
(0, vitest_1.expect)(currency_js_1.BASE_CURRENCY_USD).toEqual(2);
|
|
10
|
-
});
|
|
11
|
-
(0, vitest_1.test)("tokenCurrencyId of the native token is 61166", () => {
|
|
12
|
-
(0, vitest_1.expect)((0, currency_js_1.tokenCurrencyId)(constants_js_1.NATIVE_TOKEN)).toEqual(61166);
|
|
13
|
-
(0, vitest_1.expect)((0, currency_js_1.tokenCurrencyId)(constants_js_1.NATIVE_TOKEN)).toEqual(currency_js_1.NATIVE_TOKEN_CURRENCY_ID);
|
|
14
|
-
});
|
|
15
|
-
(0, vitest_1.test)("tokenCurrencyId is the low 32 bits of the address", () => {
|
|
16
|
-
// Mainnet USDC; low 4 bytes are 0x3606eb48.
|
|
17
|
-
(0, vitest_1.expect)((0, currency_js_1.tokenCurrencyId)("0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48")).toEqual(0x3606eb48);
|
|
18
|
-
});
|
|
19
|
-
(0, vitest_1.test)("tokenCurrencyId of the zero address is 0", () => {
|
|
20
|
-
(0, vitest_1.expect)((0, currency_js_1.tokenCurrencyId)("0x0000000000000000000000000000000000000000")).toEqual(0);
|
|
21
|
-
});
|
|
22
|
-
(0, vitest_1.test)("tokenCurrencyId fits in a uint32 even for high addresses", () => {
|
|
23
|
-
(0, vitest_1.expect)((0, currency_js_1.tokenCurrencyId)("0xffffffffffffffffffffffffffffffffffffffff")).toEqual(0xffffffff);
|
|
24
|
-
});
|
|
25
|
-
});
|
|
26
|
-
//# sourceMappingURL=currency.test.js.map
|