@bannynet/core-v6 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/foundry.lock +14 -0
  2. package/foundry.toml +2 -1
  3. package/package.json +7 -26
  4. package/script/Add.Denver.s.sol +9 -6
  5. package/script/Deploy.s.sol +65 -62
  6. package/script/Drop1.s.sol +150 -56
  7. package/script/helpers/BannyverseDeploymentLib.sol +2 -2
  8. package/script/helpers/MigrationHelper.sol +3 -3
  9. package/script/outfit_drop/generate-migration.js +6 -6
  10. package/src/Banny721TokenUriResolver.sol +90 -47
  11. package/src/interfaces/IBanny721TokenUriResolver.sol +14 -3
  12. package/test/Banny721TokenUriResolver.t.sol +42 -21
  13. package/test/BannyAttacks.t.sol +6 -5
  14. package/test/DecorateFlow.t.sol +6 -5
  15. package/script/1.Fix.s.sol +0 -290
  16. package/script/AirdropOutfits.s.sol +0 -2302
  17. package/script/MigrationContractArbitrum.sol +0 -494
  18. package/script/MigrationContractArbitrum1.sol +0 -170
  19. package/script/MigrationContractArbitrum2.sol +0 -204
  20. package/script/MigrationContractArbitrum3.sol +0 -174
  21. package/script/MigrationContractArbitrum4.sol +0 -478
  22. package/script/MigrationContractBase1.sol +0 -444
  23. package/script/MigrationContractBase2.sol +0 -175
  24. package/script/MigrationContractBase3.sol +0 -309
  25. package/script/MigrationContractBase4.sol +0 -350
  26. package/script/MigrationContractBase5.sol +0 -259
  27. package/script/MigrationContractEthereum1.sol +0 -468
  28. package/script/MigrationContractEthereum2.sol +0 -306
  29. package/script/MigrationContractEthereum3.sol +0 -349
  30. package/script/MigrationContractEthereum4.sol +0 -352
  31. package/script/MigrationContractEthereum5.sol +0 -354
  32. package/script/MigrationContractEthereum6.sol +0 -270
  33. package/script/MigrationContractEthereum7.sol +0 -439
  34. package/script/MigrationContractEthereum8.sol +0 -385
  35. package/script/MigrationContractOptimism.sol +0 -196
package/foundry.lock ADDED
@@ -0,0 +1,14 @@
1
+ {
2
+ "lib/base64": {
3
+ "rev": "dcbf852ba545b3d15de0ac0ef88dce934c090c8e"
4
+ },
5
+ "lib/forge-std": {
6
+ "rev": "ae570fec082bfe1c1f45b0acca4a2b4f84d345ce"
7
+ },
8
+ "lib/sphinx": {
9
+ "branch": {
10
+ "name": "v0.23.0",
11
+ "rev": "5fb24a825f46bd6ae0b5359fe0da1d2346126b09"
12
+ }
13
+ }
14
+ }
package/foundry.toml CHANGED
@@ -1,7 +1,8 @@
1
1
  [profile.default]
2
- solc = '0.8.23'
2
+ solc = '0.8.26'
3
3
  evm_version = 'paris'
4
4
  optimizer_runs = 800
5
+ via_ir = true
5
6
  libs = ["node_modules", "lib"]
6
7
  fs_permissions = [{ access = "read-write", path = "./"}]
7
8
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bannynet/core-v6",
3
- "version": "0.0.1",
3
+ "version": "0.0.2",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -17,34 +17,15 @@
17
17
  "deploy:testnets": "source ./.env && export START_TIME=$(date +%s) && npx sphinx propose ./script/Deploy.s.sol --networks testnets",
18
18
  "deploy:testnets:drop:1": "source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks testnets",
19
19
  "deploy:mainnets:drop:1": "source ./.env && npx sphinx propose ./script/Drop1.s.sol --networks mainnets",
20
- "deploy:testnets:airdrop": "source ./.env && npx sphinx propose ./script/AirdropOutfits.s.sol --networks testnets",
21
- "deploy:mainnets:airdrop": "source ./.env && npx sphinx propose ./script/AirdropOutfits.s.sol --networks mainnets",
22
- "deploy:testnets:airdrop:batch1": "source ./.env && npx sphinx propose ./script/AirdropOutfitsBatch1.s.sol --networks testnets",
23
- "deploy:mainnets:airdrop:batch1": "source ./.env && npx sphinx propose ./script/AirdropOutfitsBatch1.s.sol --networks mainnets",
24
- "deploy:testnets:airdrop:batch2": "source ./.env && npx sphinx propose ./script/AirdropOutfitsBatch2.s.sol --networks testnets",
25
- "deploy:mainnets:airdrop:batch2": "source ./.env && npx sphinx propose ./script/AirdropOutfitsBatch2.s.sol --networks mainnets",
26
- "deploy:testnets:airdrop:batch3": "source ./.env && npx sphinx propose ./script/AirdropOutfitsBatch3.s.sol --networks testnets",
27
- "deploy:mainnets:airdrop:batch3": "source ./.env && npx sphinx propose ./script/AirdropOutfitsBatch3.s.sol --networks mainnets",
28
- "deploy:testnets:airdrop:batch4": "source ./.env && npx sphinx propose ./script/AirdropOutfitsBatch4.s.sol --networks testnets",
29
- "deploy:mainnets:airdrop:batch4": "source ./.env && npx sphinx propose ./script/AirdropOutfitsBatch4.s.sol --networks mainnets",
30
- "deploy:testnets:airdrop:batch5": "source ./.env && npx sphinx propose ./script/AirdropOutfitsBatch5.s.sol --networks testnets",
31
- "deploy:mainnets:airdrop:batch5": "source ./.env && npx sphinx propose ./script/AirdropOutfitsBatch5.s.sol --networks mainnets",
32
- "deploy:testnets:airdrop:batch6": "source ./.env && npx sphinx propose ./script/AirdropOutfitsBatch6.s.sol --networks testnets",
33
- "deploy:mainnets:airdrop:batch6": "source ./.env && npx sphinx propose ./script/AirdropOutfitsBatch6.s.sol --networks mainnets",
34
- "deploy:testnets:airdrop:batch7": "source ./.env && npx sphinx propose ./script/AirdropOutfitsBatch7.s.sol --networks testnets",
35
- "deploy:mainnets:airdrop:batch7": "source ./.env && npx sphinx propose ./script/AirdropOutfitsBatch7.s.sol --networks mainnets",
36
- "deploy:testnets:fix:1": "source ./.env && npx sphinx propose ./script/1.Fix.s.sol --networks testnets",
37
- "deploy:mainnets:fix:1": "source ./.env && npx sphinx propose ./script/1.Fix.s.sol --networks mainnets",
38
- "artifacts": "source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v5'"
20
+ "artifacts": "source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'banny-core-v6'"
39
21
  },
40
22
  "dependencies": {
41
- "@bananapus/721-hook-v6": "^0.0.1",
42
- "@bananapus/buyback-hook-v6": "^0.0.1",
43
- "@bananapus/core-v6": "^0.0.1",
44
- "@bananapus/suckers-v6": "^0.0.1",
45
- "@bananapus/swap-terminal-v6": "^0.0.1",
23
+ "@bananapus/721-hook-v6": "^0.0.3",
24
+ "@bananapus/core-v6": "^0.0.4",
25
+ "@bananapus/suckers-v6": "^0.0.2",
26
+ "@bananapus/router-terminal-v6": "^0.0.2",
46
27
  "@openzeppelin/contracts": "^5.2.0",
47
- "@rev-net/core-v6": "^0.0.1",
28
+ "@rev-net/core-v6": "^0.0.2",
48
29
  "keccak": "^3.0.4"
49
30
  },
50
31
  "devDependencies": {
@@ -1,11 +1,12 @@
1
1
  // SPDX-License-Identifier: MIT
2
- pragma solidity 0.8.23;
2
+ pragma solidity 0.8.26;
3
3
 
4
- import {JB721TierConfig} from "@bananapus/721-hook-v5/src/structs/JB721TierConfig.sol";
5
- import {JB721TiersHook} from "@bananapus/721-hook-v5/src/JB721TiersHook.sol";
4
+ import {JB721TierConfig} from "@bananapus/721-hook-v6/src/structs/JB721TierConfig.sol";
5
+ import {JBSplit} from "@bananapus/core-v6/src/structs/JBSplit.sol";
6
+ import {JB721TiersHook} from "@bananapus/721-hook-v6/src/JB721TiersHook.sol";
6
7
 
7
8
  import "./helpers/BannyverseDeploymentLib.sol";
8
- import "@rev-net/core-v5/script/helpers/RevnetCoreDeploymentLib.sol";
9
+ import "@rev-net/core-v6/script/helpers/RevnetCoreDeploymentLib.sol";
9
10
  import "@openzeppelin/contracts/utils/Strings.sol";
10
11
 
11
12
  import {Sphinx} from "@sphinx-labs/contracts/SphinxPlugin.sol";
@@ -32,7 +33,7 @@ contract Drop1Script is Script, Sphinx {
32
33
 
33
34
  // Get the deployment addresses for the revnet contracts for this chain.
34
35
  revnet = RevnetCoreDeploymentLib.getDeployment(
35
- vm.envOr("REVNET_CORE_DEPLOYMENT_PATH", string("node_modules/@rev-net/core-v5/deployments/"))
36
+ vm.envOr("REVNET_CORE_DEPLOYMENT_PATH", string("node_modules/@rev-net/core-v6/deployments/"))
36
37
  );
37
38
 
38
39
  // Get the deployment addresses for the 721 hook contracts for this chain.
@@ -67,7 +68,9 @@ contract Drop1Script is Script, Sphinx {
67
68
  useReserveBeneficiaryAsDefault: false,
68
69
  transfersPausable: false,
69
70
  useVotingUnits: false,
70
- cannotBeRemoved: false
71
+ cannotBeRemoved: false,
72
+ splitPercent: 0,
73
+ splits: new JBSplit[](0)
71
74
  });
72
75
 
73
76
  hook.adjustTiers(products, new uint256[](0));
@@ -1,35 +1,34 @@
1
1
  // SPDX-License-Identifier: MIT
2
- pragma solidity 0.8.23;
3
-
4
- import "@bananapus/721-hook-v5/script/helpers/Hook721DeploymentLib.sol";
5
- import "@bananapus/core-v5/script/helpers/CoreDeploymentLib.sol";
6
- import "@bananapus/suckers-v5/script/helpers/SuckerDeploymentLib.sol";
7
- import "@bananapus/swap-terminal-v5/script/helpers/SwapTerminalDeploymentLib.sol";
8
- import "@rev-net/core-v5/script/helpers/RevnetCoreDeploymentLib.sol";
9
-
10
- import {IJB721TokenUriResolver} from "@bananapus/721-hook-v5/src/interfaces/IJB721TokenUriResolver.sol";
11
- import {JB721InitTiersConfig} from "@bananapus/721-hook-v5/src/structs/JB721InitTiersConfig.sol";
12
- import {JB721TierConfig} from "@bananapus/721-hook-v5/src/structs/JB721TierConfig.sol";
13
- import {JB721TiersHookFlags} from "@bananapus/721-hook-v5/src/structs/JB721TiersHookFlags.sol";
14
- import {JBDeploy721TiersHookConfig} from "@bananapus/721-hook-v5/src/structs/JBDeploy721TiersHookConfig.sol";
15
- import {IJBPrices} from "@bananapus/core-v5/src/interfaces/IJBPrices.sol";
16
- import {IJBSplitHook} from "@bananapus/core-v5/src/interfaces/IJBSplitHook.sol";
17
- import {JBConstants} from "@bananapus/core-v5/src/libraries/JBConstants.sol";
18
- import {JBCurrencyIds} from "@bananapus/core-v5/src/libraries/JBCurrencyIds.sol";
19
- import {JBAccountingContext} from "@bananapus/core-v5/src/structs/JBAccountingContext.sol";
20
- import {JBSplit} from "@bananapus/core-v5/src/structs/JBSplit.sol";
21
- import {JBTerminalConfig} from "@bananapus/core-v5/src/structs/JBTerminalConfig.sol";
22
- import {JBTokenMapping} from "@bananapus/suckers-v5/src/structs/JBTokenMapping.sol";
23
- import {REVAutoIssuance} from "@rev-net/core-v5/src/structs/REVAutoIssuance.sol";
24
- import {REVConfig} from "@rev-net/core-v5/src/structs/REVConfig.sol";
25
- import {REVCroptopAllowedPost} from "@rev-net/core-v5/src/structs/REVCroptopAllowedPost.sol";
26
- import {REVDeploy721TiersHookConfig} from "@rev-net/core-v5/src/structs/REVDeploy721TiersHookConfig.sol";
27
- import {REVDescription} from "@rev-net/core-v5/src/structs/REVDescription.sol";
28
- import {REVLoanSource} from "@rev-net/core-v5/src/structs/REVLoanSource.sol";
29
- import {REVStageConfig} from "@rev-net/core-v5/src/structs/REVStageConfig.sol";
30
- import {REVSuckerDeploymentConfig} from "@rev-net/core-v5/src/structs/REVSuckerDeploymentConfig.sol";
31
- import {JBSuckerDeployerConfig} from "@bananapus/suckers-v5/src/structs/JBSuckerDeployerConfig.sol";
32
- import {IJBTerminal} from "@bananapus/core-v5/src/interfaces/IJBTerminal.sol";
2
+ pragma solidity 0.8.26;
3
+
4
+ import "@bananapus/721-hook-v6/script/helpers/Hook721DeploymentLib.sol";
5
+ import "@bananapus/core-v6/script/helpers/CoreDeploymentLib.sol";
6
+ import "@bananapus/suckers-v6/script/helpers/SuckerDeploymentLib.sol";
7
+ import "@bananapus/router-terminal-v6/script/helpers/RouterTerminalDeploymentLib.sol";
8
+ import "@rev-net/core-v6/script/helpers/RevnetCoreDeploymentLib.sol";
9
+
10
+ import {IJB721TokenUriResolver} from "@bananapus/721-hook-v6/src/interfaces/IJB721TokenUriResolver.sol";
11
+ import {JB721InitTiersConfig} from "@bananapus/721-hook-v6/src/structs/JB721InitTiersConfig.sol";
12
+ import {JB721TierConfig} from "@bananapus/721-hook-v6/src/structs/JB721TierConfig.sol";
13
+ import {JB721TiersHookFlags} from "@bananapus/721-hook-v6/src/structs/JB721TiersHookFlags.sol";
14
+ import {JBDeploy721TiersHookConfig} from "@bananapus/721-hook-v6/src/structs/JBDeploy721TiersHookConfig.sol";
15
+ import {IJBPrices} from "@bananapus/core-v6/src/interfaces/IJBPrices.sol";
16
+ import {IJBSplitHook} from "@bananapus/core-v6/src/interfaces/IJBSplitHook.sol";
17
+ import {JBConstants} from "@bananapus/core-v6/src/libraries/JBConstants.sol";
18
+ import {JBCurrencyIds} from "@bananapus/core-v6/src/libraries/JBCurrencyIds.sol";
19
+ import {JBAccountingContext} from "@bananapus/core-v6/src/structs/JBAccountingContext.sol";
20
+ import {JBSplit} from "@bananapus/core-v6/src/structs/JBSplit.sol";
21
+ import {JBTerminalConfig} from "@bananapus/core-v6/src/structs/JBTerminalConfig.sol";
22
+ import {JBTokenMapping} from "@bananapus/suckers-v6/src/structs/JBTokenMapping.sol";
23
+ import {REVAutoIssuance} from "@rev-net/core-v6/src/structs/REVAutoIssuance.sol";
24
+ import {REVConfig} from "@rev-net/core-v6/src/structs/REVConfig.sol";
25
+ import {REVCroptopAllowedPost} from "@rev-net/core-v6/src/structs/REVCroptopAllowedPost.sol";
26
+ import {REVDeploy721TiersHookConfig} from "@rev-net/core-v6/src/structs/REVDeploy721TiersHookConfig.sol";
27
+ import {REVDescription} from "@rev-net/core-v6/src/structs/REVDescription.sol";
28
+ import {REVStageConfig} from "@rev-net/core-v6/src/structs/REVStageConfig.sol";
29
+ import {REVSuckerDeploymentConfig} from "@rev-net/core-v6/src/structs/REVSuckerDeploymentConfig.sol";
30
+ import {JBSuckerDeployerConfig} from "@bananapus/suckers-v6/src/structs/JBSuckerDeployerConfig.sol";
31
+ import {IJBTerminal} from "@bananapus/core-v6/src/interfaces/IJBTerminal.sol";
33
32
 
34
33
  import {Sphinx} from "@sphinx-labs/contracts/SphinxPlugin.sol";
35
34
  import {Script} from "forge-std/Script.sol";
@@ -52,8 +51,8 @@ contract DeployScript is Script, Sphinx {
52
51
  RevnetCoreDeployment revnet;
53
52
  /// @notice tracks the deployment of the 721 hook contracts for the chain we are deploying to.
54
53
  Hook721Deployment hook;
55
- /// @notice tracks the deployment of the swap terminal.
56
- SwapTerminalDeployment swapTerminal;
54
+ /// @notice tracks the deployment of the router terminal.
55
+ RouterTerminalDeployment routerTerminal;
57
56
 
58
57
  BannyverseRevnetConfig bannyverseConfig;
59
58
 
@@ -80,7 +79,7 @@ contract DeployScript is Script, Sphinx {
80
79
  uint104 BAN_ARB_AUTO_ISSUANCE_ = 2_825_980_000_000_000_000_000;
81
80
 
82
81
  function configureSphinx() public override {
83
- sphinxConfig.projectName = "banny-core-v5";
82
+ sphinxConfig.projectName = "banny-core-v6";
84
83
  sphinxConfig.mainnets = ["ethereum", "optimism", "base", "arbitrum"];
85
84
  sphinxConfig.testnets = ["ethereum_sepolia", "optimism_sepolia", "base_sepolia", "arbitrum_sepolia"];
86
85
  }
@@ -92,24 +91,25 @@ contract DeployScript is Script, Sphinx {
92
91
  // Get the deployment addresses for the nana CORE for this chain.
93
92
  // We want to do this outside of the `sphinx` modifier.
94
93
  core = CoreDeploymentLib.getDeployment(
95
- vm.envOr("NANA_CORE_DEPLOYMENT_PATH", string("node_modules/@bananapus/core-v5/deployments/"))
94
+ vm.envOr("NANA_CORE_DEPLOYMENT_PATH", string("node_modules/@bananapus/core-v6/deployments/"))
96
95
  );
97
96
  // Get the deployment addresses for the 721 hook contracts for this chain.
98
97
  hook = Hook721DeploymentLib.getDeployment(
99
- vm.envOr("NANA_721_DEPLOYMENT_PATH", string("node_modules/@bananapus/721-hook-v5/deployments/"))
98
+ vm.envOr("NANA_721_DEPLOYMENT_PATH", string("node_modules/@bananapus/721-hook-v6/deployments/"))
100
99
  );
101
100
  // Get the deployment addresses for the 721 hook contracts for this chain.
102
101
  revnet = RevnetCoreDeploymentLib.getDeployment(
103
- vm.envOr("REVNET_CORE_DEPLOYMENT_PATH", string("node_modules/@rev-net/core-v5/deployments/"))
102
+ vm.envOr("REVNET_CORE_DEPLOYMENT_PATH", string("node_modules/@rev-net/core-v6/deployments/"))
104
103
  );
105
104
  // Get the deployment addresses for the suckers contracts for this chain.
106
105
  suckers = SuckerDeploymentLib.getDeployment(
107
- vm.envOr("NANA_SUCKERS_DEPLOYMENT_PATH", string("node_modules/@bananapus/suckers-v5/deployments/"))
106
+ vm.envOr("NANA_SUCKERS_DEPLOYMENT_PATH", string("node_modules/@bananapus/suckers-v6/deployments/"))
108
107
  );
109
108
  // Get the deployment addresses for the 721 hook contracts for this chain.
110
- swapTerminal = SwapTerminalDeploymentLib.getDeployment(
109
+ routerTerminal = RouterTerminalDeploymentLib.getDeployment(
111
110
  vm.envOr(
112
- "NANA_SWAP_TERMINAL_DEPLOYMENT_PATH", string("node_modules/@bananapus/swap-terminal-v5/deployments/")
111
+ "NANA_ROUTER_TERMINAL_DEPLOYMENT_PATH",
112
+ string("node_modules/@bananapus/router-terminal-v6/deployments/")
113
113
  )
114
114
  );
115
115
 
@@ -134,7 +134,7 @@ contract DeployScript is Script, Sphinx {
134
134
  JBTerminalConfig({terminal: core.terminal, accountingContextsToAccept: accountingContextsToAccept});
135
135
 
136
136
  terminalConfigurations[1] = JBTerminalConfig({
137
- terminal: IJBTerminal(address(swapTerminal.registry)),
137
+ terminal: IJBTerminal(address(routerTerminal.registry)),
138
138
  accountingContextsToAccept: new JBAccountingContext[](0)
139
139
  });
140
140
 
@@ -203,22 +203,12 @@ contract DeployScript is Script, Sphinx {
203
203
  extraMetadata: 4 // Allow adding suckers.
204
204
  });
205
205
 
206
- REVConfig memory revnetConfiguration;
207
- {
208
- // Thr projects loan configuration.
209
- REVLoanSource[] memory _loanSources = new REVLoanSource[](1);
210
- _loanSources[0] = REVLoanSource({token: JBConstants.NATIVE_TOKEN, terminal: core.terminal});
211
-
212
- // The project's revnet configuration
213
- revnetConfiguration = REVConfig({
214
- description: REVDescription(NAME, SYMBOL, PROJECT_URI, ERC20_SALT),
215
- baseCurrency: ETH_CURRENCY,
216
- splitOperator: OPERATOR,
217
- stageConfigurations: stageConfigurations,
218
- loanSources: _loanSources,
219
- loans: address(revnet.loans)
220
- });
221
- }
206
+ REVConfig memory revnetConfiguration = REVConfig({
207
+ description: REVDescription(NAME, SYMBOL, PROJECT_URI, ERC20_SALT),
208
+ baseCurrency: ETH_CURRENCY,
209
+ splitOperator: OPERATOR,
210
+ stageConfigurations: stageConfigurations
211
+ });
222
212
 
223
213
  // The project's NFT tiers.
224
214
  JB721TierConfig[] memory tiers = new JB721TierConfig[](4);
@@ -237,7 +227,9 @@ contract DeployScript is Script, Sphinx {
237
227
  useReserveBeneficiaryAsDefault: false,
238
228
  transfersPausable: false,
239
229
  useVotingUnits: false,
240
- cannotBeRemoved: true
230
+ cannotBeRemoved: true,
231
+ splitPercent: 0,
232
+ splits: new JBSplit[](0)
241
233
  });
242
234
  tiers[1] = JB721TierConfig({
243
235
  price: uint104(1 * (10 ** (DECIMALS - 1))),
@@ -253,7 +245,9 @@ contract DeployScript is Script, Sphinx {
253
245
  useReserveBeneficiaryAsDefault: false,
254
246
  transfersPausable: false,
255
247
  useVotingUnits: false,
256
- cannotBeRemoved: true
248
+ cannotBeRemoved: true,
249
+ splitPercent: 0,
250
+ splits: new JBSplit[](0)
257
251
  });
258
252
  tiers[2] = JB721TierConfig({
259
253
  price: uint104(1 * (10 ** (DECIMALS - 2))),
@@ -269,7 +263,9 @@ contract DeployScript is Script, Sphinx {
269
263
  useReserveBeneficiaryAsDefault: false,
270
264
  transfersPausable: false,
271
265
  useVotingUnits: false,
272
- cannotBeRemoved: true
266
+ cannotBeRemoved: true,
267
+ splitPercent: 0,
268
+ splits: new JBSplit[](0)
273
269
  });
274
270
  tiers[3] = JB721TierConfig({
275
271
  price: uint104(1 * (10 ** (DECIMALS - 4))),
@@ -285,15 +281,17 @@ contract DeployScript is Script, Sphinx {
285
281
  useReserveBeneficiaryAsDefault: false,
286
282
  transfersPausable: false,
287
283
  useVotingUnits: false,
288
- cannotBeRemoved: true
284
+ cannotBeRemoved: true,
285
+ splitPercent: 0,
286
+ splits: new JBSplit[](0)
289
287
  });
290
288
 
291
289
  // Organize the instructions for how this project will connect to other chains.
292
290
  JBTokenMapping[] memory tokenMappings = new JBTokenMapping[](1);
293
291
  tokenMappings[0] = JBTokenMapping({
294
292
  localToken: JBConstants.NATIVE_TOKEN,
295
- remoteToken: JBConstants.NATIVE_TOKEN,
296
293
  minGas: 200_000,
294
+ remoteToken: bytes32(uint256(uint160(JBConstants.NATIVE_TOKEN))),
297
295
  minBridgeAmount: 0.01 ether
298
296
  });
299
297
 
@@ -403,6 +401,11 @@ contract DeployScript is Script, Sphinx {
403
401
  : Banny721TokenUriResolver(_resolver);
404
402
  }
405
403
 
404
+ // Set the resolver's metadata.
405
+ resolver.setMetadata(
406
+ "A piece of Banny Retail.", "https://retail.banny.eth.shop", "https://bannyverse.infura-ipfs.io/ipfs/"
407
+ );
408
+
406
409
  // Update our config with its address.
407
410
  bannyverseConfig.hookConfiguration.baseline721HookConfiguration.tokenUriResolver = resolver;
408
411