diff --git a/contracts/lib/forge-std b/contracts/lib/forge-std index b6a506db..bb4ceea9 160000 --- a/contracts/lib/forge-std +++ b/contracts/lib/forge-std @@ -1 +1 @@ -Subproject commit b6a506db2262cad5ff982a87789ee6d1558ec861 +Subproject commit bb4ceea94d6f10eeb5b41dc2391c6c8bf8e734ef diff --git a/hardhat.config.ts b/hardhat.config.ts index b72f57b0..60c5b9a7 100644 --- a/hardhat.config.ts +++ b/hardhat.config.ts @@ -585,6 +585,33 @@ const config: HardhatUserConfig = { accounts, ledgerAccounts, }, + enduranceTestnet: { + chainId: 6480, + url: vars.get( + "ENDURANCE_TESTNET_URL", + "https://myrpctestnet.fusionist.io", + ), + accounts, + ledgerAccounts, + }, + openduranceTestnet: { + chainId: 6480001001, + url: vars.get( + "OPENDURANCE_TESTNET_URL", + "https://rpc-l2-testnet.fusionist.io", + ), + accounts, + ledgerAccounts, + }, + enduranceMain: { + chainId: 648, + url: vars.get( + "ENDURANCE_MAINNET_URL", + "https://rpc-endurance.fusionist.io", + ), + accounts, + ledgerAccounts, + }, blastTestnet: { chainId: 168587773, url: vars.get("BLAST_TESTNET_URL", "https://sepolia.blast.io"), @@ -784,6 +811,10 @@ const config: HardhatUserConfig = { mantaTestnet: vars.get("MANTA_API_KEY", ""), // For Arthera testnet artheraTestnet: vars.get("ARTHERA_API_KEY", ""), + // For Endurance testnets & mainnet + endurance: vars.get("ENDURANCE_API_KEY", ""), + enduranceTestnet: vars.get("ENDURANCE_API_KEY", ""), + openduranceTestnet: vars.get("OPENDURANCE_API_KEY", ""), // For Blast testnet & mainnet blast: vars.get("BLAST_API_KEY", ""), blastTestnet: vars.get("BLAST_API_KEY", ""), @@ -1103,6 +1134,30 @@ const config: HardhatUserConfig = { browserURL: "https://explorer-test.arthera.net", }, }, + { + network: "endurance", + chainId: 648, + urls: { + apiURL: "https://explorer-endurance.fusionist.io/api", + browserURL: "https://explorer-endurance.fusionist.io", + }, + }, + { + network: "enduranceTestnet", + chainId: 6480, + urls: { + apiURL: "https://myexplorertestnet.fusionist.io/api", + browserURL: "https://myexplorertestnet.fusionist.io", + }, + }, + { + network: "openduranceTestnet", + chainId: 6480001001, + urls: { + apiURL: "https://explorer-l2-testnet.fusionist.io/api", + browserURL: "https://explorer-l2-testnet.fusionist.io", + }, + }, { network: "blast", chainId: 81457, diff --git a/package.json b/package.json index 967157e9..77f64047 100644 --- a/package.json +++ b/package.json @@ -109,6 +109,9 @@ "deploy:shardeumtestnet": "npx hardhat run --network shardeumTestnet scripts/deploy.ts", "deploy:artheratestnet": "npx hardhat run --network artheraTestnet scripts/deploy.ts", "deploy:frametestnet": "npx hardhat run --network frameTestnet scripts/deploy.ts", + "deploy:endurancetestnet": "npx hardhat run --network enduranceTestnet scripts/deploy.ts", + "deploy:opendurancetestnet": "npx hardhat run --network openduranceTestnet scripts/deploy.ts", + "deploy:endurancemain": "npx hardhat run --network enduranceMain scripts/deploy.ts", "deploy:blasttestnet": "npx hardhat run --network blastTestnet scripts/deploy.ts", "deploy:blastmain": "npx hardhat run --network blastMain scripts/deploy.ts", "deploy:kromatestnet": "npx hardhat run --network kromaTestnet scripts/deploy.ts", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5758675b..ada39aaa 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -4484,6 +4484,42 @@ packages: assert-plus: 1.0.0 dev: true + /data-view-buffer@1.0.1: + resolution: + { + integrity: sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==, + } + engines: { node: ">= 0.4" } + dependencies: + call-bind: 1.0.7 + es-errors: 1.3.0 + is-data-view: 1.0.1 + dev: true + + /data-view-byte-length@1.0.1: + resolution: + { + integrity: sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==, + } + engines: { node: ">= 0.4" } + dependencies: + call-bind: 1.0.7 + es-errors: 1.3.0 + is-data-view: 1.0.1 + dev: true + + /data-view-byte-offset@1.0.0: + resolution: + { + integrity: sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==, + } + engines: { node: ">= 0.4" } + dependencies: + call-bind: 1.0.7 + es-errors: 1.3.0 + is-data-view: 1.0.1 + dev: true + /death@1.1.0: resolution: { @@ -5013,8 +5049,63 @@ packages: regexp.prototype.flags: 1.5.2 safe-array-concat: 1.1.2 safe-regex-test: 1.0.3 - string.prototype.trim: 1.2.8 - string.prototype.trimend: 1.0.7 + string.prototype.trim: 1.2.9 + string.prototype.trimend: 1.0.8 + string.prototype.trimstart: 1.0.7 + typed-array-buffer: 1.0.2 + typed-array-byte-length: 1.0.1 + typed-array-byte-offset: 1.0.2 + typed-array-length: 1.0.5 + unbox-primitive: 1.0.2 + which-typed-array: 1.1.15 + dev: true + + /es-abstract@1.23.2: + resolution: + { + integrity: sha512-60s3Xv2T2p1ICykc7c+DNDPLDMm9t4QxCOUU0K9JxiLjM3C1zB9YVdN7tjxrFd4+AkZ8CdX1ovUga4P2+1e+/w==, + } + engines: { node: ">= 0.4" } + dependencies: + array-buffer-byte-length: 1.0.1 + arraybuffer.prototype.slice: 1.0.3 + available-typed-arrays: 1.0.7 + call-bind: 1.0.7 + data-view-buffer: 1.0.1 + data-view-byte-length: 1.0.1 + data-view-byte-offset: 1.0.0 + es-define-property: 1.0.0 + es-errors: 1.3.0 + es-object-atoms: 1.0.0 + es-set-tostringtag: 2.0.3 + es-to-primitive: 1.2.1 + function.prototype.name: 1.1.6 + get-intrinsic: 1.2.4 + get-symbol-description: 1.0.2 + globalthis: 1.0.3 + gopd: 1.0.1 + has-property-descriptors: 1.0.2 + has-proto: 1.0.3 + has-symbols: 1.0.3 + hasown: 2.0.2 + internal-slot: 1.0.7 + is-array-buffer: 3.0.4 + is-callable: 1.2.7 + is-data-view: 1.0.1 + is-negative-zero: 2.0.3 + is-regex: 1.1.4 + is-shared-array-buffer: 1.0.3 + is-string: 1.0.7 + is-typed-array: 1.1.13 + is-weakref: 1.0.2 + object-inspect: 1.13.1 + object-keys: 1.1.1 + object.assign: 4.1.5 + regexp.prototype.flags: 1.5.2 + safe-array-concat: 1.1.2 + safe-regex-test: 1.0.3 + string.prototype.trim: 1.2.9 + string.prototype.trimend: 1.0.8 string.prototype.trimstart: 1.0.7 typed-array-buffer: 1.0.2 typed-array-byte-length: 1.0.1 @@ -5042,6 +5133,16 @@ packages: engines: { node: ">= 0.4" } dev: true + /es-object-atoms@1.0.0: + resolution: + { + integrity: sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==, + } + engines: { node: ">= 0.4" } + dependencies: + es-errors: 1.3.0 + dev: true + /es-set-tostringtag@2.0.3: resolution: { @@ -7123,6 +7224,16 @@ packages: hasown: 2.0.2 dev: true + /is-data-view@1.0.1: + resolution: + { + integrity: sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==, + } + engines: { node: ">= 0.4" } + dependencies: + is-typed-array: 1.1.13 + dev: true + /is-date-object@1.0.5: resolution: { @@ -10270,27 +10381,28 @@ packages: strip-ansi: 7.1.0 dev: true - /string.prototype.trim@1.2.8: + /string.prototype.trim@1.2.9: resolution: { - integrity: sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==, + integrity: sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==, } engines: { node: ">= 0.4" } dependencies: call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.5 + es-abstract: 1.23.2 + es-object-atoms: 1.0.0 dev: true - /string.prototype.trimend@1.0.7: + /string.prototype.trimend@1.0.8: resolution: { - integrity: sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==, + integrity: sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==, } dependencies: call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.5 + es-object-atoms: 1.0.0 dev: true /string.prototype.trimstart@1.0.7: