@bananapus/nana-sdk-core 1.1.0 → 1.1.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/actions/JBSuckerAbi.js +4 -1
- package/dist/cjs/actions/JBSuckerAbi.js.map +1 -1
- package/dist/cjs/actions/dataHook.js +26 -22
- package/dist/cjs/actions/dataHook.js.map +1 -1
- package/dist/cjs/actions/projectMetadata.js +12 -8
- package/dist/cjs/actions/projectMetadata.js.map +1 -1
- package/dist/cjs/actions/suckerPairs.js +21 -17
- package/dist/cjs/actions/suckerPairs.js.map +1 -1
- package/dist/cjs/constants.js +89 -85
- package/dist/cjs/constants.js.map +1 -1
- package/dist/cjs/contracts.js +22 -19
- package/dist/cjs/contracts.js.map +1 -1
- package/dist/cjs/generated/juicebox.js +94 -90
- package/dist/cjs/generated/juicebox.js.map +1 -1
- package/dist/cjs/index.js +24 -8
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/types.js +15 -4
- package/dist/cjs/types.js.map +1 -1
- package/dist/cjs/utils/contracts.js +19 -14
- package/dist/cjs/utils/contracts.js.map +1 -1
- package/dist/cjs/utils/data.js +23 -13
- package/dist/cjs/utils/data.js.map +1 -1
- package/dist/cjs/utils/data.test.js +19 -17
- package/dist/cjs/utils/data.test.js.map +1 -1
- package/dist/cjs/utils/debug.js +4 -1
- package/dist/cjs/utils/debug.js.map +1 -1
- package/dist/cjs/utils/deploy.js +17 -13
- package/dist/cjs/utils/deploy.js.map +1 -1
- package/dist/cjs/utils/deploy.test.js +15 -13
- package/dist/cjs/utils/deploy.test.js.map +1 -1
- package/dist/cjs/utils/fee.js +6 -3
- package/dist/cjs/utils/fee.js.map +1 -1
- package/dist/cjs/utils/fee.test.js +8 -6
- package/dist/cjs/utils/fee.test.js.map +1 -1
- package/dist/cjs/utils/format.js +11 -6
- package/dist/cjs/utils/format.js.map +1 -1
- package/dist/cjs/utils/format.test.js +11 -9
- package/dist/cjs/utils/format.test.js.map +1 -1
- package/dist/cjs/utils/hook.js +9 -6
- package/dist/cjs/utils/hook.js.map +1 -1
- package/dist/cjs/utils/index.js +28 -12
- package/dist/cjs/utils/index.js.map +1 -1
- package/dist/cjs/utils/ipfs.js +14 -6
- package/dist/cjs/utils/ipfs.js.map +1 -1
- package/dist/cjs/utils/ipfs.test.js +23 -18
- package/dist/cjs/utils/ipfs.test.js.map +1 -1
- package/dist/cjs/utils/revnet.js +9 -5
- package/dist/cjs/utils/revnet.js.map +1 -1
- package/dist/cjs/utils/revnet.test.js +9 -7
- package/dist/cjs/utils/revnet.test.js.map +1 -1
- package/dist/cjs/utils/ruleset.js +11 -7
- package/dist/cjs/utils/ruleset.js.map +1 -1
- package/dist/cjs/utils/ruleset.test.js +9 -7
- package/dist/cjs/utils/ruleset.test.js.map +1 -1
- package/dist/cjs/utils/token.js +26 -19
- package/dist/cjs/utils/token.js.map +1 -1
- package/dist/cjs/utils/token.test.js +25 -23
- package/dist/cjs/utils/token.test.js.map +1 -1
- package/dist/cjs/utils/tx.js +6 -3
- package/dist/cjs/utils/tx.js.map +1 -1
- package/dist/cjs/utils/urn.js +9 -5
- package/dist/cjs/utils/urn.js.map +1 -1
- package/dist/cjs/utils/urn.test.js +71 -69
- package/dist/cjs/utils/urn.test.js.map +1 -1
- package/dist/cjs/v6/cashOut.d.ts +5 -0
- package/dist/cjs/v6/cashOut.d.ts.map +1 -1
- package/dist/cjs/v6/cashOut.js +19 -10
- package/dist/cjs/v6/cashOut.js.map +1 -1
- package/dist/cjs/v6/cashOut.test.js +42 -40
- package/dist/cjs/v6/cashOut.test.js.map +1 -1
- package/dist/cjs/v6/currency.js +8 -4
- package/dist/cjs/v6/currency.js.map +1 -1
- package/dist/cjs/v6/currency.test.js +18 -16
- package/dist/cjs/v6/currency.test.js.map +1 -1
- package/dist/cjs/v6/fees.js +11 -6
- package/dist/cjs/v6/fees.js.map +1 -1
- package/dist/cjs/v6/fees.test.js +29 -27
- package/dist/cjs/v6/fees.test.js.map +1 -1
- package/dist/cjs/v6/index.js +31 -15
- package/dist/cjs/v6/index.js.map +1 -1
- package/dist/cjs/v6/launch.js +31 -23
- package/dist/cjs/v6/launch.js.map +1 -1
- package/dist/cjs/v6/launch.test.js +85 -83
- package/dist/cjs/v6/launch.test.js.map +1 -1
- package/dist/cjs/v6/loans.js +26 -19
- package/dist/cjs/v6/loans.js.map +1 -1
- package/dist/cjs/v6/loans.test.js +52 -50
- package/dist/cjs/v6/loans.test.js.map +1 -1
- package/dist/cjs/v6/omnichain.js +16 -12
- package/dist/cjs/v6/omnichain.js.map +1 -1
- package/dist/cjs/v6/omnichain.test.js +63 -61
- package/dist/cjs/v6/omnichain.test.js.map +1 -1
- package/dist/cjs/v6/pay.js +20 -15
- package/dist/cjs/v6/pay.js.map +1 -1
- package/dist/cjs/v6/pay.test.js +49 -47
- package/dist/cjs/v6/pay.test.js.map +1 -1
- package/dist/cjs/v6/permissions.js +14 -9
- package/dist/cjs/v6/permissions.js.map +1 -1
- package/dist/cjs/v6/permissions.test.js +47 -45
- package/dist/cjs/v6/permissions.test.js.map +1 -1
- package/dist/cjs/v6/revnets.d.ts +5 -3
- package/dist/cjs/v6/revnets.d.ts.map +1 -1
- package/dist/cjs/v6/revnets.js +43 -26
- package/dist/cjs/v6/revnets.js.map +1 -1
- package/dist/cjs/v6/revnets.test.js +80 -78
- package/dist/cjs/v6/revnets.test.js.map +1 -1
- package/dist/cjs/v6/rulesets.js +20 -14
- package/dist/cjs/v6/rulesets.js.map +1 -1
- package/dist/cjs/v6/rulesets.test.js +50 -48
- package/dist/cjs/v6/rulesets.test.js.map +1 -1
- package/dist/cjs/v6/splits.d.ts +3 -2
- package/dist/cjs/v6/splits.d.ts.map +1 -1
- package/dist/cjs/v6/splits.js +29 -18
- package/dist/cjs/v6/splits.js.map +1 -1
- package/dist/cjs/v6/splits.test.js +84 -80
- package/dist/cjs/v6/splits.test.js.map +1 -1
- package/dist/cjs/v6/suckers.js +22 -15
- package/dist/cjs/v6/suckers.js.map +1 -1
- package/dist/cjs/v6/suckers.test.js +57 -55
- package/dist/cjs/v6/suckers.test.js.map +1 -1
- package/dist/cjs/v6/terminals.js +15 -11
- package/dist/cjs/v6/terminals.js.map +1 -1
- package/dist/cjs/v6/terminals.test.js +30 -28
- package/dist/cjs/v6/terminals.test.js.map +1 -1
- package/dist/cjs/v6/tokens.js +34 -25
- package/dist/cjs/v6/tokens.js.map +1 -1
- package/dist/cjs/v6/tokens.test.js +66 -64
- package/dist/cjs/v6/tokens.test.js.map +1 -1
- package/dist/cjs/v6/types.js +6 -3
- package/dist/cjs/v6/types.js.map +1 -1
- package/dist/esm/v6/cashOut.d.ts +5 -0
- package/dist/esm/v6/cashOut.d.ts.map +1 -1
- package/dist/esm/v6/cashOut.js +5 -0
- package/dist/esm/v6/cashOut.js.map +1 -1
- package/dist/esm/v6/revnets.d.ts +5 -3
- package/dist/esm/v6/revnets.d.ts.map +1 -1
- package/dist/esm/v6/revnets.js +12 -4
- package/dist/esm/v6/revnets.js.map +1 -1
- package/dist/esm/v6/splits.d.ts +3 -2
- package/dist/esm/v6/splits.d.ts.map +1 -1
- package/dist/esm/v6/splits.js +9 -5
- package/dist/esm/v6/splits.js.map +1 -1
- package/dist/esm/v6/splits.test.js +8 -6
- package/dist/esm/v6/splits.test.js.map +1 -1
- package/dist/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"JBSuckerAbi.js","sourceRoot":"","sources":["../../../src/actions/JBSuckerAbi.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"JBSuckerAbi.js","sourceRoot":"","sources":["../../../src/actions/JBSuckerAbi.ts"],"names":[],"mappings":";;;AAAa,QAAA,WAAW,GAAG;IACzB;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE,EAAE;QACV,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,oBAAoB;aACnC;SACF;QACD,eAAe,EAAE,MAAM;KACxB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,WAAW;QACjB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACxB;SACF;QACD,eAAe,EAAE,MAAM;KACxB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,SAAS;aACxB;SACF;QACD,eAAe,EAAE,MAAM;KACxB;CACO,CAAC"}
|
|
@@ -1,29 +1,33 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.find721DataHook = find721DataHook;
|
|
4
|
+
exports.getHookSpecifications = getHookSpecifications;
|
|
5
|
+
const types_js_1 = require("../types.js");
|
|
6
|
+
const contracts_js_1 = require("../utils/contracts.js");
|
|
7
|
+
const viem_1 = require("viem");
|
|
8
|
+
const juicebox_js_1 = require("../generated/juicebox.js");
|
|
9
|
+
const debug_js_1 = require("../utils/debug.js");
|
|
6
10
|
/**
|
|
7
11
|
* Find the 721 data hook for a given project and ruleset.
|
|
8
12
|
*
|
|
9
13
|
* NOTE this is an expensive call. Best to run it server-side and cache it.
|
|
10
14
|
*/
|
|
11
|
-
|
|
15
|
+
async function find721DataHook(publicClient, args) {
|
|
12
16
|
const chainId = publicClient.chain?.id;
|
|
13
17
|
if (!chainId) {
|
|
14
18
|
throw new Error("[@bananapus/nana-sdk-core] No chain ID on public client.");
|
|
15
19
|
}
|
|
16
|
-
const deployerAddress = getJBContractAddress(JB721HookContracts.JB721TiersHookDeployer, args.version, chainId);
|
|
17
|
-
const registerAddress = getJBContractAddress(JBAddressRegistryContracts.JBAddressRegistry, args.version, chainId);
|
|
20
|
+
const deployerAddress = (0, contracts_js_1.getJBContractAddress)(types_js_1.JB721HookContracts.JB721TiersHookDeployer, args.version, chainId);
|
|
21
|
+
const registerAddress = (0, contracts_js_1.getJBContractAddress)(types_js_1.JBAddressRegistryContracts.JBAddressRegistry, args.version, chainId);
|
|
18
22
|
if (!registerAddress) {
|
|
19
23
|
throw new Error(`[@bananapus/nana-sdk-core] No JBAddressRegistry address for chain ${chainId}.`);
|
|
20
24
|
}
|
|
21
|
-
const registry = getContract({
|
|
25
|
+
const registry = (0, viem_1.getContract)({
|
|
22
26
|
address: registerAddress,
|
|
23
|
-
abi: jbAddressRegistryAbi,
|
|
27
|
+
abi: juicebox_js_1.jbAddressRegistryAbi,
|
|
24
28
|
client: publicClient,
|
|
25
29
|
});
|
|
26
|
-
debug("🧃 getHookSpecifications::args", {
|
|
30
|
+
(0, debug_js_1.debug)("🧃 getHookSpecifications::args", {
|
|
27
31
|
dataHookAddress: args.dataHookAddress,
|
|
28
32
|
projectId: args.projectId,
|
|
29
33
|
rulesetId: args.rulesetId,
|
|
@@ -36,12 +40,12 @@ export async function find721DataHook(publicClient, args) {
|
|
|
36
40
|
});
|
|
37
41
|
const res = await Promise.all(hookSpecs.map(async (h) => {
|
|
38
42
|
const deployerOf = await registry.read.deployerOf([h.hook]);
|
|
39
|
-
debug("🧃 deployerOf", {
|
|
43
|
+
(0, debug_js_1.debug)("🧃 deployerOf", {
|
|
40
44
|
hook: h.hook,
|
|
41
45
|
deployerOf,
|
|
42
46
|
deployerAddress,
|
|
43
47
|
});
|
|
44
|
-
return isAddressEqual(deployerOf, deployerAddress);
|
|
48
|
+
return (0, viem_1.isAddressEqual)(deployerOf, deployerAddress);
|
|
45
49
|
}));
|
|
46
50
|
const index = res.findIndex((r) => r);
|
|
47
51
|
if (index === -1) {
|
|
@@ -49,33 +53,33 @@ export async function find721DataHook(publicClient, args) {
|
|
|
49
53
|
}
|
|
50
54
|
return hookSpecs[index].hook;
|
|
51
55
|
}
|
|
52
|
-
|
|
56
|
+
async function getHookSpecifications(publicClient, args) {
|
|
53
57
|
// v6's returned JBPayHookSpecification gained a `noop` field, so the v4/v5 response
|
|
54
58
|
// doesn't decode with the v6 ABI.
|
|
55
|
-
const dataHook = getContract({
|
|
59
|
+
const dataHook = (0, viem_1.getContract)({
|
|
56
60
|
address: args.dataHookAddress,
|
|
57
|
-
abi: args.version === 6 ? jb721TiersHookAbi : jb721TiersHookV5Abi,
|
|
61
|
+
abi: args.version === 6 ? juicebox_js_1.jb721TiersHookAbi : juicebox_js_1.jb721TiersHookV5Abi,
|
|
58
62
|
client: publicClient,
|
|
59
63
|
});
|
|
60
64
|
const [_, hookSpecifications] = await dataHook.read.beforePayRecordedWith([
|
|
61
65
|
{
|
|
62
66
|
projectId: args.projectId,
|
|
63
67
|
rulesetId: BigInt(args.rulesetId), // TODO update the ABI to be a number, will fix this.
|
|
64
|
-
terminal: zeroAddress,
|
|
65
|
-
beneficiary: zeroAddress,
|
|
68
|
+
terminal: viem_1.zeroAddress,
|
|
69
|
+
beneficiary: viem_1.zeroAddress,
|
|
66
70
|
amount: {
|
|
67
|
-
token: zeroAddress,
|
|
71
|
+
token: viem_1.zeroAddress,
|
|
68
72
|
value: 0n,
|
|
69
73
|
decimals: 0,
|
|
70
74
|
currency: 0,
|
|
71
75
|
},
|
|
72
|
-
payer: zeroAddress,
|
|
76
|
+
payer: viem_1.zeroAddress,
|
|
73
77
|
weight: 0n,
|
|
74
78
|
reservedPercent: 0n,
|
|
75
|
-
metadata: zeroAddress,
|
|
79
|
+
metadata: viem_1.zeroAddress,
|
|
76
80
|
},
|
|
77
81
|
]);
|
|
78
|
-
debug("🧃 getHookSpecifications", { args, hookSpecifications });
|
|
82
|
+
(0, debug_js_1.debug)("🧃 getHookSpecifications", { args, hookSpecifications });
|
|
79
83
|
return hookSpecifications;
|
|
80
84
|
}
|
|
81
85
|
//# sourceMappingURL=dataHook.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataHook.js","sourceRoot":"","sources":["../../../src/actions/dataHook.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dataHook.js","sourceRoot":"","sources":["../../../src/actions/dataHook.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +1,19 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getProjectMetadata = void 0;
|
|
4
|
+
const viem_1 = require("viem");
|
|
5
|
+
const juicebox_js_1 = require("../generated/juicebox.js");
|
|
6
|
+
const ipfs_js_1 = require("../utils/ipfs.js");
|
|
4
7
|
/**
|
|
5
8
|
* Fetch the onchain metadata CID for the given project, using the given JBController contract.
|
|
6
9
|
*/
|
|
7
10
|
const getMetadataCid = async (publicClient, args) => {
|
|
8
|
-
if (isAddressEqual(args.jbControllerAddress, zeroAddress)) {
|
|
11
|
+
if ((0, viem_1.isAddressEqual)(args.jbControllerAddress, viem_1.zeroAddress)) {
|
|
9
12
|
return;
|
|
10
13
|
}
|
|
11
|
-
const JBController = getContract({
|
|
14
|
+
const JBController = (0, viem_1.getContract)({
|
|
12
15
|
address: args.jbControllerAddress,
|
|
13
|
-
abi: jbControllerAbi,
|
|
16
|
+
abi: juicebox_js_1.jbControllerAbi,
|
|
14
17
|
client: publicClient,
|
|
15
18
|
});
|
|
16
19
|
// ipfs://cid or https://cid, probably
|
|
@@ -25,13 +28,14 @@ const getMetadataCid = async (publicClient, args) => {
|
|
|
25
28
|
* @param opts.ipfsGatewayHostname - The hostname of the IPFS gateway to use. Defaults to "ipfs.io"
|
|
26
29
|
*
|
|
27
30
|
*/
|
|
28
|
-
|
|
31
|
+
const getProjectMetadata = async (publicClient, args, opts) => {
|
|
29
32
|
const metadataCid = await getMetadataCid(publicClient, args);
|
|
30
33
|
if (!metadataCid) {
|
|
31
34
|
return;
|
|
32
35
|
}
|
|
33
|
-
const ipfsUrl = ipfsGatewayUrl(metadataCid, opts?.ipfsGatewayHostname);
|
|
36
|
+
const ipfsUrl = (0, ipfs_js_1.ipfsGatewayUrl)(metadataCid, opts?.ipfsGatewayHostname);
|
|
34
37
|
const res = (await fetch(ipfsUrl).then((res) => res.json()));
|
|
35
38
|
return res;
|
|
36
39
|
};
|
|
40
|
+
exports.getProjectMetadata = getProjectMetadata;
|
|
37
41
|
//# sourceMappingURL=projectMetadata.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projectMetadata.js","sourceRoot":"","sources":["../../../src/actions/projectMetadata.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"projectMetadata.js","sourceRoot":"","sources":["../../../src/actions/projectMetadata.ts"],"names":[],"mappings":";;;AAAA,+BAMc;AACd,0DAA2D;AAE3D,8CAAkD;AAElD;;GAEG;AACH,MAAM,cAAc,GAAG,KAAK,EAC1B,YAA0B,EAC1B,IAGC,EACD,EAAE;IACF,IAAI,IAAA,qBAAc,EAAC,IAAI,CAAC,mBAAmB,EAAE,kBAAW,CAAC,EAAE,CAAC;QAC1D,OAAO;IACT,CAAC;IAED,MAAM,YAAY,GAAG,IAAA,kBAAW,EAAC;QAC/B,OAAO,EAAE,IAAI,CAAC,mBAAmB;QACjC,GAAG,EAAE,6BAAe;QACpB,MAAM,EAAE,YAAY;KACrB,CAAC,CAAC;IAEH,sCAAsC;IACtC,MAAM,WAAW,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IAEpE,MAAM,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;IAEjD,OAAO,WAAW,CAAC;AACrB,CAAC,CAAC;AAEF;;;;;;GAMG;AACI,MAAM,kBAAkB,GAAG,KAAK,EACrC,YAA0B,EAC1B,IAGC,EACD,IAEC,EACuC,EAAE;IAC1C,MAAM,WAAW,GAAG,MAAM,cAAc,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IAC7D,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO;IACT,CAAC;IACD,MAAM,OAAO,GAAG,IAAA,wBAAc,EAAC,WAAW,EAAE,IAAI,EAAE,mBAAmB,CAAC,CAAC;IACvE,MAAM,GAAG,GAAG,CAAC,MAAM,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAE9C,CAAC;IAEd,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AApBW,QAAA,kBAAkB,sBAoB7B"}
|
|
@@ -1,40 +1,44 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getSuckerPairs = getSuckerPairs;
|
|
4
|
+
exports.resolveSuckers = resolveSuckers;
|
|
5
|
+
const viem_1 = require("viem");
|
|
6
|
+
const juicebox_js_1 = require("../generated/juicebox.js");
|
|
7
|
+
const JBSuckerAbi_js_1 = require("./JBSuckerAbi.js");
|
|
8
|
+
const types_js_1 = require("../types.js");
|
|
9
|
+
const contracts_js_1 = require("../utils/contracts.js");
|
|
10
|
+
async function getSuckerPairs({ config, chainId, projectId, version, }) {
|
|
11
|
+
const jbSuckerRegistry = (0, contracts_js_1.getJBContractAddress)(types_js_1.JBSuckerContracts.JBSuckerRegistry, version, chainId);
|
|
8
12
|
const client = config.getClient({ chainId: Number(chainId) });
|
|
9
13
|
// v6 identifies remote suckers as bytes32 (for cross-VM compatibility); for EVM peers
|
|
10
14
|
// the address is in the low 20 bytes.
|
|
11
15
|
const suckers = version === 6
|
|
12
|
-
? (await getContract({
|
|
16
|
+
? (await (0, viem_1.getContract)({
|
|
13
17
|
address: jbSuckerRegistry,
|
|
14
|
-
abi: jbSuckerRegistryAbi,
|
|
18
|
+
abi: juicebox_js_1.jbSuckerRegistryAbi,
|
|
15
19
|
client,
|
|
16
|
-
}).read.suckerPairsOf([projectId])).map((sucker) => ({ ...sucker, remote: getAddress(sliceHex(sucker.remote, 12)) }))
|
|
17
|
-
: await getContract({
|
|
20
|
+
}).read.suckerPairsOf([projectId])).map((sucker) => ({ ...sucker, remote: (0, viem_1.getAddress)((0, viem_1.sliceHex)(sucker.remote, 12)) }))
|
|
21
|
+
: await (0, viem_1.getContract)({
|
|
18
22
|
address: jbSuckerRegistry,
|
|
19
|
-
abi: jbSuckerRegistryV5Abi,
|
|
23
|
+
abi: juicebox_js_1.jbSuckerRegistryV5Abi,
|
|
20
24
|
client,
|
|
21
25
|
}).read.suckerPairsOf([projectId]);
|
|
22
26
|
const suckerPairs = await Promise.all(suckers.map(async (sucker) => {
|
|
23
27
|
const client = config.getClient({
|
|
24
28
|
chainId: Number(sucker.remoteChainId),
|
|
25
29
|
});
|
|
26
|
-
const suckerContract = getContract({
|
|
30
|
+
const suckerContract = (0, viem_1.getContract)({
|
|
27
31
|
address: sucker.remote,
|
|
28
|
-
abi: JBSuckerAbi,
|
|
32
|
+
abi: JBSuckerAbi_js_1.JBSuckerAbi,
|
|
29
33
|
client,
|
|
30
34
|
});
|
|
31
35
|
const peer = (await suckerContract.read.peer());
|
|
32
36
|
if (!peer) {
|
|
33
37
|
return;
|
|
34
38
|
}
|
|
35
|
-
const peerContract = getContract({
|
|
39
|
+
const peerContract = (0, viem_1.getContract)({
|
|
36
40
|
address: peer,
|
|
37
|
-
abi: JBSuckerAbi,
|
|
41
|
+
abi: JBSuckerAbi_js_1.JBSuckerAbi,
|
|
38
42
|
client,
|
|
39
43
|
});
|
|
40
44
|
const projectId = await peerContract.read.projectId();
|
|
@@ -45,7 +49,7 @@ export async function getSuckerPairs({ config, chainId, projectId, version, }) {
|
|
|
45
49
|
}));
|
|
46
50
|
return suckerPairs.filter((x) => x);
|
|
47
51
|
}
|
|
48
|
-
|
|
52
|
+
async function resolveSuckers({ config, chainId, projectId, version, }) {
|
|
49
53
|
const initialPairs = await getSuckerPairs({ config, chainId, projectId, version });
|
|
50
54
|
const pairs = [...initialPairs];
|
|
51
55
|
await Promise.all(initialPairs.map(async (pair) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"suckerPairs.js","sourceRoot":"","sources":["../../../src/actions/suckerPairs.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"suckerPairs.js","sourceRoot":"","sources":["../../../src/actions/suckerPairs.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/constants.js
CHANGED
|
@@ -1,49 +1,52 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.USDC_ADDRESSES = exports.CCIP_SUCKER_DEPLOYER_ADDRESSES = exports.DEFAULT_NATIVE_TOKEN_SYMBOL = exports.JB_CHAIN_SLUGS = exports.JB_CHAINS = exports.JBDAO_CASHOUT_FEE_PERCENT = exports.NATIVE_TOKEN_DECIMALS = exports.USD_CURRENCY_ID = exports.ETH_CURRENCY_ID = exports.NATIVE_TOKEN = exports.ONE_JB_TOKEN = exports.JB_TOKEN_DECIMALS = exports.SPLITS_TOTAL_PERCENT = exports.MAX_PAYOUT_LIMIT = exports.MAX_FEE_DISCOUNT = exports.MAX_FEE = exports.MAX_WEIGHT_CUT_PERCENT = exports.MAX_CASH_OUT_TAX_RATE = exports.MAX_RESERVED_PERCENT = exports.DEFAULT_ALLOW_OVERSPENDING = exports.DEFAULT_MIN_RETURNED_TOKENS = exports.DEFAULT_METADATA = exports.DEFAULT_MEMO = exports.ONE_ETHER = void 0;
|
|
4
|
+
const viem_1 = require("viem");
|
|
5
|
+
const chains_1 = require("viem/chains");
|
|
6
|
+
const juicebox_js_1 = require("./generated/juicebox.js");
|
|
7
|
+
const types_js_1 = require("./types.js");
|
|
5
8
|
/**
|
|
6
9
|
* Representation of one ether.
|
|
7
10
|
*/
|
|
8
|
-
|
|
11
|
+
exports.ONE_ETHER = (0, viem_1.parseEther)("1");
|
|
9
12
|
/**
|
|
10
13
|
* Default value for `memo` arguments in Juicebox transactions.
|
|
11
14
|
*/
|
|
12
|
-
|
|
15
|
+
exports.DEFAULT_MEMO = "";
|
|
13
16
|
/**
|
|
14
17
|
* Default value for `metadata` arguments in Juicebox transactions.
|
|
15
18
|
*/
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
+
exports.DEFAULT_METADATA = "0x0";
|
|
20
|
+
exports.DEFAULT_MIN_RETURNED_TOKENS = 0n;
|
|
21
|
+
exports.DEFAULT_ALLOW_OVERSPENDING = true;
|
|
19
22
|
/**
|
|
20
23
|
* The maximum value for a ruleset's Reserved Rate.
|
|
21
24
|
*
|
|
22
25
|
* @link JBConstants.sol
|
|
23
26
|
*/
|
|
24
|
-
|
|
27
|
+
exports.MAX_RESERVED_PERCENT = 10_000;
|
|
25
28
|
/**
|
|
26
29
|
* The maximum value for a ruleset's Cash Out Tax Rate.
|
|
27
30
|
*
|
|
28
31
|
* @link JBConstants.sol
|
|
29
32
|
*/
|
|
30
|
-
|
|
33
|
+
exports.MAX_CASH_OUT_TAX_RATE = 10_000;
|
|
31
34
|
/**
|
|
32
35
|
* The maximum value for a ruleset's Decay Rate.
|
|
33
36
|
*
|
|
34
37
|
* @link JBConstants.sol
|
|
35
38
|
*/
|
|
36
|
-
|
|
39
|
+
exports.MAX_WEIGHT_CUT_PERCENT = 1_000_000_000;
|
|
37
40
|
/**
|
|
38
41
|
* @link JBConstants.sol
|
|
39
42
|
*/
|
|
40
|
-
|
|
43
|
+
exports.MAX_FEE = 1_000_000_000;
|
|
41
44
|
/**
|
|
42
45
|
* @link JBConstants.sol
|
|
43
46
|
*/
|
|
44
|
-
|
|
47
|
+
exports.MAX_FEE_DISCOUNT = 1_000_000_000;
|
|
45
48
|
// uint 224, probably a better way lol
|
|
46
|
-
|
|
49
|
+
exports.MAX_PAYOUT_LIMIT = BigInt("26959946667150639794667015087019630673637144422540572481103610249215");
|
|
47
50
|
/**
|
|
48
51
|
* The 100% representation for a ruleset's Splits.
|
|
49
52
|
*
|
|
@@ -51,7 +54,7 @@ export const MAX_PAYOUT_LIMIT = BigInt("2695994666715063979466701508701963067363
|
|
|
51
54
|
*
|
|
52
55
|
* @link JBConstants.sol
|
|
53
56
|
*/
|
|
54
|
-
|
|
57
|
+
exports.SPLITS_TOTAL_PERCENT = 1_000_000_000;
|
|
55
58
|
/**
|
|
56
59
|
* The number of decimals that the internal JB Token has.
|
|
57
60
|
*
|
|
@@ -60,92 +63,93 @@ export const SPLITS_TOTAL_PERCENT = 1_000_000_000;
|
|
|
60
63
|
* At a later time, a wallet can claim their ERC-20 tokens based on the JB Token they hold.
|
|
61
64
|
*
|
|
62
65
|
*/
|
|
63
|
-
|
|
66
|
+
exports.JB_TOKEN_DECIMALS = 18;
|
|
64
67
|
/**
|
|
65
68
|
* One JB project token as a fixed-point representation.
|
|
66
69
|
*/
|
|
67
|
-
|
|
70
|
+
exports.ONE_JB_TOKEN = (0, viem_1.parseUnits)("1", exports.JB_TOKEN_DECIMALS);
|
|
68
71
|
/**
|
|
69
72
|
* An address representation of the network's 'native' token (e.g. ETH, OP).
|
|
70
73
|
* Within Juicebox contracts, each chain's native token address is represented by this address.
|
|
71
74
|
*
|
|
72
75
|
* @link JBConstants.sol
|
|
73
76
|
*/
|
|
74
|
-
|
|
77
|
+
exports.NATIVE_TOKEN = "0x000000000000000000000000000000000000EEEe";
|
|
75
78
|
/**
|
|
76
79
|
* The ID that represents the network's 'native' currency (e.g. ETH, OP).
|
|
77
80
|
*
|
|
78
81
|
* @link https://github.com/Bananapus/nana-core/blob/main/src/libraries/JBCurrencyIds.sol
|
|
79
82
|
*/
|
|
80
|
-
|
|
83
|
+
exports.ETH_CURRENCY_ID = 1;
|
|
81
84
|
/**
|
|
82
85
|
* The ID that represents USD currencies. Use this when specifying USD-deonominated payouts.
|
|
83
86
|
*
|
|
84
87
|
* @link https://github.com/Bananapus/nana-core/blob/main/src/libraries/JBCurrencyIds.sol
|
|
85
88
|
*/
|
|
86
|
-
|
|
89
|
+
const USD_CURRENCY_ID = (version) => (version === 4 ? 3 : 2);
|
|
90
|
+
exports.USD_CURRENCY_ID = USD_CURRENCY_ID;
|
|
87
91
|
/**
|
|
88
92
|
* Amount of decimals to use for native token fixed-point representation.
|
|
89
93
|
*
|
|
90
94
|
* 18 is assumed to be the default for most EVM-based chains.
|
|
91
95
|
*/
|
|
92
|
-
|
|
96
|
+
exports.NATIVE_TOKEN_DECIMALS = 18;
|
|
93
97
|
/**
|
|
94
98
|
* The fee percentage taken by Juicebox DAO on cashing out Tokens.
|
|
95
99
|
*/
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
[sepolia.id]: {
|
|
99
|
-
chain: sepolia,
|
|
100
|
+
exports.JBDAO_CASHOUT_FEE_PERCENT = 0.025;
|
|
101
|
+
exports.JB_CHAINS = {
|
|
102
|
+
[chains_1.sepolia.id]: {
|
|
103
|
+
chain: chains_1.sepolia,
|
|
100
104
|
name: "Sepolia",
|
|
101
105
|
slug: "sep",
|
|
102
106
|
nativeTokenSymbol: "SepETH",
|
|
103
107
|
etherscanHostname: "sepolia.etherscan.io",
|
|
104
108
|
},
|
|
105
|
-
[optimismSepolia.id]: {
|
|
106
|
-
chain: optimismSepolia,
|
|
109
|
+
[chains_1.optimismSepolia.id]: {
|
|
110
|
+
chain: chains_1.optimismSepolia,
|
|
107
111
|
name: "Optimism Sepolia",
|
|
108
112
|
slug: "opsep",
|
|
109
113
|
nativeTokenSymbol: "OPSepETH",
|
|
110
114
|
etherscanHostname: "sepolia-optimism.etherscan.io",
|
|
111
115
|
},
|
|
112
|
-
[baseSepolia.id]: {
|
|
113
|
-
chain: baseSepolia,
|
|
116
|
+
[chains_1.baseSepolia.id]: {
|
|
117
|
+
chain: chains_1.baseSepolia,
|
|
114
118
|
name: "Base Sepolia",
|
|
115
119
|
slug: "basesep",
|
|
116
120
|
nativeTokenSymbol: "BaseSepETH",
|
|
117
121
|
etherscanHostname: "sepolia.basescan.org",
|
|
118
122
|
},
|
|
119
|
-
[arbitrumSepolia.id]: {
|
|
120
|
-
chain: arbitrumSepolia,
|
|
123
|
+
[chains_1.arbitrumSepolia.id]: {
|
|
124
|
+
chain: chains_1.arbitrumSepolia,
|
|
121
125
|
name: "Arbitrum Sepolia",
|
|
122
126
|
slug: "arbsep",
|
|
123
127
|
nativeTokenSymbol: "ArbSepETH",
|
|
124
128
|
etherscanHostname: "sepolia.arbiscan.io",
|
|
125
129
|
},
|
|
126
|
-
[mainnet.id]: {
|
|
127
|
-
chain: mainnet,
|
|
130
|
+
[chains_1.mainnet.id]: {
|
|
131
|
+
chain: chains_1.mainnet,
|
|
128
132
|
name: "Ethereum",
|
|
129
133
|
slug: "eth",
|
|
130
134
|
nativeTokenSymbol: "ETH",
|
|
131
135
|
etherscanHostname: "etherscan.io",
|
|
132
136
|
},
|
|
133
|
-
[optimism.id]: {
|
|
134
|
-
chain: optimism,
|
|
137
|
+
[chains_1.optimism.id]: {
|
|
138
|
+
chain: chains_1.optimism,
|
|
135
139
|
name: "Optimism",
|
|
136
140
|
slug: "op",
|
|
137
141
|
nativeTokenSymbol: "ETH",
|
|
138
142
|
etherscanHostname: "optimism.etherscan.io",
|
|
139
143
|
},
|
|
140
|
-
[base.id]: {
|
|
141
|
-
chain: base,
|
|
144
|
+
[chains_1.base.id]: {
|
|
145
|
+
chain: chains_1.base,
|
|
142
146
|
name: "Base",
|
|
143
147
|
slug: "base",
|
|
144
148
|
nativeTokenSymbol: "ETH",
|
|
145
149
|
etherscanHostname: "basescan.org",
|
|
146
150
|
},
|
|
147
|
-
[arbitrum.id]: {
|
|
148
|
-
chain: arbitrum,
|
|
151
|
+
[chains_1.arbitrum.id]: {
|
|
152
|
+
chain: chains_1.arbitrum,
|
|
149
153
|
name: "Arbitrum",
|
|
150
154
|
slug: "arb",
|
|
151
155
|
nativeTokenSymbol: "ETH",
|
|
@@ -156,11 +160,11 @@ export const JB_CHAINS = {
|
|
|
156
160
|
* Map of JBChain slugs to chains.
|
|
157
161
|
* Useful when getting the chain for a particular url path.
|
|
158
162
|
*/
|
|
159
|
-
|
|
163
|
+
exports.JB_CHAIN_SLUGS = Object.values(exports.JB_CHAINS).reduce((slugs, chainMetadata) => {
|
|
160
164
|
slugs[chainMetadata.slug] = chainMetadata;
|
|
161
165
|
return slugs;
|
|
162
166
|
}, {});
|
|
163
|
-
|
|
167
|
+
exports.DEFAULT_NATIVE_TOKEN_SYMBOL = "ETH";
|
|
164
168
|
/**
|
|
165
169
|
* CCIP sucker deployer addresses, keyed by version, then local chain, then remote chain.
|
|
166
170
|
*
|
|
@@ -168,62 +172,62 @@ export const DEFAULT_NATIVE_TOKEN_SYMBOL = "ETH";
|
|
|
168
172
|
*
|
|
169
173
|
* @see https://discord.com/channels/1139291093310132376/1139291094069301385/1337164727008366683
|
|
170
174
|
*/
|
|
171
|
-
|
|
172
|
-
6: jbCcipSuckerDeployerAddress[6],
|
|
175
|
+
exports.CCIP_SUCKER_DEPLOYER_ADDRESSES = {
|
|
176
|
+
6: juicebox_js_1.jbCcipSuckerDeployerAddress[6],
|
|
173
177
|
5: {
|
|
174
|
-
[sepolia.id]: {
|
|
175
|
-
[optimismSepolia.id]: jbContractAddress[5][JBSuckerContracts.JBCCIPSuckerDeployer][sepolia.id],
|
|
176
|
-
[baseSepolia.id]: jbContractAddress[5][JBSuckerContracts.JBCCIPSuckerDeployer_1][sepolia.id],
|
|
177
|
-
[arbitrumSepolia.id]: jbContractAddress[5][JBSuckerContracts.JBCCIPSuckerDeployer_2][sepolia.id],
|
|
178
|
+
[chains_1.sepolia.id]: {
|
|
179
|
+
[chains_1.optimismSepolia.id]: juicebox_js_1.jbContractAddress[5][types_js_1.JBSuckerContracts.JBCCIPSuckerDeployer][chains_1.sepolia.id],
|
|
180
|
+
[chains_1.baseSepolia.id]: juicebox_js_1.jbContractAddress[5][types_js_1.JBSuckerContracts.JBCCIPSuckerDeployer_1][chains_1.sepolia.id],
|
|
181
|
+
[chains_1.arbitrumSepolia.id]: juicebox_js_1.jbContractAddress[5][types_js_1.JBSuckerContracts.JBCCIPSuckerDeployer_2][chains_1.sepolia.id],
|
|
178
182
|
},
|
|
179
|
-
[mainnet.id]: {
|
|
180
|
-
[optimism.id]: jbContractAddress[5][JBSuckerContracts.JBCCIPSuckerDeployer][mainnet.id],
|
|
181
|
-
[base.id]: jbContractAddress[5][JBSuckerContracts.JBCCIPSuckerDeployer_1][mainnet.id],
|
|
182
|
-
[arbitrum.id]: jbContractAddress[5][JBSuckerContracts.JBCCIPSuckerDeployer_2][mainnet.id],
|
|
183
|
+
[chains_1.mainnet.id]: {
|
|
184
|
+
[chains_1.optimism.id]: juicebox_js_1.jbContractAddress[5][types_js_1.JBSuckerContracts.JBCCIPSuckerDeployer][chains_1.mainnet.id],
|
|
185
|
+
[chains_1.base.id]: juicebox_js_1.jbContractAddress[5][types_js_1.JBSuckerContracts.JBCCIPSuckerDeployer_1][chains_1.mainnet.id],
|
|
186
|
+
[chains_1.arbitrum.id]: juicebox_js_1.jbContractAddress[5][types_js_1.JBSuckerContracts.JBCCIPSuckerDeployer_2][chains_1.mainnet.id],
|
|
183
187
|
},
|
|
184
|
-
[arbitrumSepolia.id]: {
|
|
185
|
-
[sepolia.id]: jbContractAddress[5][JBSuckerContracts.JBCCIPSuckerDeployer][arbitrumSepolia.id],
|
|
186
|
-
[optimismSepolia.id]: jbContractAddress[5][JBSuckerContracts.JBCCIPSuckerDeployer_1][arbitrumSepolia.id],
|
|
187
|
-
[baseSepolia.id]: jbContractAddress[5][JBSuckerContracts.JBCCIPSuckerDeployer_2][arbitrumSepolia.id],
|
|
188
|
+
[chains_1.arbitrumSepolia.id]: {
|
|
189
|
+
[chains_1.sepolia.id]: juicebox_js_1.jbContractAddress[5][types_js_1.JBSuckerContracts.JBCCIPSuckerDeployer][chains_1.arbitrumSepolia.id],
|
|
190
|
+
[chains_1.optimismSepolia.id]: juicebox_js_1.jbContractAddress[5][types_js_1.JBSuckerContracts.JBCCIPSuckerDeployer_1][chains_1.arbitrumSepolia.id],
|
|
191
|
+
[chains_1.baseSepolia.id]: juicebox_js_1.jbContractAddress[5][types_js_1.JBSuckerContracts.JBCCIPSuckerDeployer_2][chains_1.arbitrumSepolia.id],
|
|
188
192
|
},
|
|
189
|
-
[arbitrum.id]: {
|
|
190
|
-
[mainnet.id]: jbContractAddress[5][JBSuckerContracts.JBCCIPSuckerDeployer][arbitrum.id],
|
|
191
|
-
[optimism.id]: jbContractAddress[5][JBSuckerContracts.JBCCIPSuckerDeployer_1][arbitrum.id],
|
|
192
|
-
[base.id]: jbContractAddress[5][JBSuckerContracts.JBCCIPSuckerDeployer_2][arbitrum.id],
|
|
193
|
+
[chains_1.arbitrum.id]: {
|
|
194
|
+
[chains_1.mainnet.id]: juicebox_js_1.jbContractAddress[5][types_js_1.JBSuckerContracts.JBCCIPSuckerDeployer][chains_1.arbitrum.id],
|
|
195
|
+
[chains_1.optimism.id]: juicebox_js_1.jbContractAddress[5][types_js_1.JBSuckerContracts.JBCCIPSuckerDeployer_1][chains_1.arbitrum.id],
|
|
196
|
+
[chains_1.base.id]: juicebox_js_1.jbContractAddress[5][types_js_1.JBSuckerContracts.JBCCIPSuckerDeployer_2][chains_1.arbitrum.id],
|
|
193
197
|
},
|
|
194
|
-
[optimismSepolia.id]: {
|
|
195
|
-
[sepolia.id]: jbContractAddress[5][JBSuckerContracts.JBCCIPSuckerDeployer][optimismSepolia.id],
|
|
196
|
-
[arbitrumSepolia.id]: jbContractAddress[5][JBSuckerContracts.JBCCIPSuckerDeployer_1][optimismSepolia.id],
|
|
197
|
-
[baseSepolia.id]: jbContractAddress[5][JBSuckerContracts.JBCCIPSuckerDeployer_2][optimismSepolia.id],
|
|
198
|
+
[chains_1.optimismSepolia.id]: {
|
|
199
|
+
[chains_1.sepolia.id]: juicebox_js_1.jbContractAddress[5][types_js_1.JBSuckerContracts.JBCCIPSuckerDeployer][chains_1.optimismSepolia.id],
|
|
200
|
+
[chains_1.arbitrumSepolia.id]: juicebox_js_1.jbContractAddress[5][types_js_1.JBSuckerContracts.JBCCIPSuckerDeployer_1][chains_1.optimismSepolia.id],
|
|
201
|
+
[chains_1.baseSepolia.id]: juicebox_js_1.jbContractAddress[5][types_js_1.JBSuckerContracts.JBCCIPSuckerDeployer_2][chains_1.optimismSepolia.id],
|
|
198
202
|
},
|
|
199
|
-
[optimism.id]: {
|
|
200
|
-
[mainnet.id]: jbContractAddress[5][JBSuckerContracts.JBCCIPSuckerDeployer][optimism.id],
|
|
201
|
-
[arbitrum.id]: jbContractAddress[5][JBSuckerContracts.JBCCIPSuckerDeployer_1][optimism.id],
|
|
202
|
-
[base.id]: jbContractAddress[5][JBSuckerContracts.JBCCIPSuckerDeployer_2][optimism.id],
|
|
203
|
+
[chains_1.optimism.id]: {
|
|
204
|
+
[chains_1.mainnet.id]: juicebox_js_1.jbContractAddress[5][types_js_1.JBSuckerContracts.JBCCIPSuckerDeployer][chains_1.optimism.id],
|
|
205
|
+
[chains_1.arbitrum.id]: juicebox_js_1.jbContractAddress[5][types_js_1.JBSuckerContracts.JBCCIPSuckerDeployer_1][chains_1.optimism.id],
|
|
206
|
+
[chains_1.base.id]: juicebox_js_1.jbContractAddress[5][types_js_1.JBSuckerContracts.JBCCIPSuckerDeployer_2][chains_1.optimism.id],
|
|
203
207
|
},
|
|
204
|
-
[baseSepolia.id]: {
|
|
205
|
-
[sepolia.id]: jbContractAddress[5][JBSuckerContracts.JBCCIPSuckerDeployer][baseSepolia.id],
|
|
206
|
-
[optimismSepolia.id]: jbContractAddress[5][JBSuckerContracts.JBCCIPSuckerDeployer_1][baseSepolia.id],
|
|
207
|
-
[arbitrumSepolia.id]: jbContractAddress[5][JBSuckerContracts.JBCCIPSuckerDeployer_2][baseSepolia.id],
|
|
208
|
+
[chains_1.baseSepolia.id]: {
|
|
209
|
+
[chains_1.sepolia.id]: juicebox_js_1.jbContractAddress[5][types_js_1.JBSuckerContracts.JBCCIPSuckerDeployer][chains_1.baseSepolia.id],
|
|
210
|
+
[chains_1.optimismSepolia.id]: juicebox_js_1.jbContractAddress[5][types_js_1.JBSuckerContracts.JBCCIPSuckerDeployer_1][chains_1.baseSepolia.id],
|
|
211
|
+
[chains_1.arbitrumSepolia.id]: juicebox_js_1.jbContractAddress[5][types_js_1.JBSuckerContracts.JBCCIPSuckerDeployer_2][chains_1.baseSepolia.id],
|
|
208
212
|
},
|
|
209
|
-
[base.id]: {
|
|
210
|
-
[mainnet.id]: jbContractAddress[5][JBSuckerContracts.JBCCIPSuckerDeployer][base.id],
|
|
211
|
-
[optimism.id]: jbContractAddress[5][JBSuckerContracts.JBCCIPSuckerDeployer_1][base.id],
|
|
212
|
-
[arbitrum.id]: jbContractAddress[5][JBSuckerContracts.JBCCIPSuckerDeployer_2][base.id],
|
|
213
|
+
[chains_1.base.id]: {
|
|
214
|
+
[chains_1.mainnet.id]: juicebox_js_1.jbContractAddress[5][types_js_1.JBSuckerContracts.JBCCIPSuckerDeployer][chains_1.base.id],
|
|
215
|
+
[chains_1.optimism.id]: juicebox_js_1.jbContractAddress[5][types_js_1.JBSuckerContracts.JBCCIPSuckerDeployer_1][chains_1.base.id],
|
|
216
|
+
[chains_1.arbitrum.id]: juicebox_js_1.jbContractAddress[5][types_js_1.JBSuckerContracts.JBCCIPSuckerDeployer_2][chains_1.base.id],
|
|
213
217
|
},
|
|
214
218
|
},
|
|
215
219
|
};
|
|
216
220
|
/**
|
|
217
221
|
* USDC contract addresses on supported chains.
|
|
218
222
|
*/
|
|
219
|
-
|
|
220
|
-
[sepolia.id]: "0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238",
|
|
221
|
-
[mainnet.id]: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
|
|
222
|
-
[optimismSepolia.id]: "0x5fd84259d66Cd46123540766Be93DFE6D43130D7",
|
|
223
|
-
[optimism.id]: "0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85",
|
|
224
|
-
[baseSepolia.id]: "0x036CbD53842c5426634e7929541eC2318f3dCF7e",
|
|
225
|
-
[base.id]: "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
|
|
226
|
-
[arbitrumSepolia.id]: "0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d",
|
|
227
|
-
[arbitrum.id]: "0xaf88d065e77c8cC2239327C5EDb3A432268e5831",
|
|
223
|
+
exports.USDC_ADDRESSES = {
|
|
224
|
+
[chains_1.sepolia.id]: "0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238",
|
|
225
|
+
[chains_1.mainnet.id]: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
|
|
226
|
+
[chains_1.optimismSepolia.id]: "0x5fd84259d66Cd46123540766Be93DFE6D43130D7",
|
|
227
|
+
[chains_1.optimism.id]: "0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85",
|
|
228
|
+
[chains_1.baseSepolia.id]: "0x036CbD53842c5426634e7929541eC2318f3dCF7e",
|
|
229
|
+
[chains_1.base.id]: "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
|
|
230
|
+
[chains_1.arbitrumSepolia.id]: "0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d",
|
|
231
|
+
[chains_1.arbitrum.id]: "0xaf88d065e77c8cC2239327C5EDb3A432268e5831",
|
|
228
232
|
};
|
|
229
233
|
//# sourceMappingURL=constants.js.map
|