diff --git a/.github/workflows/build-test-deploy-dev.yml b/.github/workflows/build-test-deploy-dev.yml index 763e23c234..56da5c5503 100644 --- a/.github/workflows/build-test-deploy-dev.yml +++ b/.github/workflows/build-test-deploy-dev.yml @@ -16,12 +16,12 @@ jobs: (github.event.pull_request.head.repo.full_name == github.event.pull_request.base.repo.full_name && !contains(github.head_ref, 'dependabot')) strategy: - matrix: - build: - - name: 'out' - cypress_enabled: 'false' - - name: 'out_cypress' - cypress_enabled: 'true' + matrix: + build: + - name: 'out' + cypress_enabled: 'false' + - name: 'out_cypress' + cypress_enabled: 'true' steps: - uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b # v3.0.2 with: diff --git a/.github/workflows/dependency-review.yml b/.github/workflows/dependency-review.yml index 8697164ea7..5541bc3ee0 100644 --- a/.github/workflows/dependency-review.yml +++ b/.github/workflows/dependency-review.yml @@ -19,4 +19,4 @@ jobs: - name: 'Dependency Review' uses: actions/dependency-review-action@v2 with: - fail-on-severity: critical \ No newline at end of file + fail-on-severity: critical diff --git a/package.json b/package.json index 7f5aac95e3..476733ccef 100644 --- a/package.json +++ b/package.json @@ -31,8 +31,8 @@ "test:coverage": "jest --coverage" }, "dependencies": { - "@aave/contract-helpers": "1.30.5", - "@aave/math-utils": "1.30.5", + "@aave/contract-helpers": "1.31.1", + "@aave/math-utils": "1.31.1", "@bgd-labs/aave-address-book": "4.10.0", "@emotion/cache": "11.10.3", "@emotion/react": "11.10.4", diff --git a/src/ui-config/marketsConfig.tsx b/src/ui-config/marketsConfig.tsx index 899bf0f0f7..534238c48a 100644 --- a/src/ui-config/marketsConfig.tsx +++ b/src/ui-config/marketsConfig.tsx @@ -13,6 +13,7 @@ import { AaveV3EthereumEtherFi, AaveV3EthereumLido, AaveV3Gnosis, + AaveV3Linea, AaveV3Metis, AaveV3Optimism, AaveV3OptimismSepolia, @@ -92,6 +93,7 @@ export enum CustomMarket { proto_lido_v3 = 'proto_lido_v3', proto_zksync_v3 = 'proto_zksync_v3', proto_etherfi_v3 = 'proto_etherfi_v3', + proto_linea_v3 = 'proto_linea_v3', // v2 proto_mainnet = 'proto_mainnet', proto_avalanche = 'proto_avalanche', @@ -681,4 +683,20 @@ export const marketsData: { COLLECTOR: AaveV3ZkSync.COLLECTOR, }, }, + [CustomMarket.proto_linea_v3]: { + marketTitle: 'Linea', + market: CustomMarket.proto_linea_v3, + chainId: ChainId.linea, + v3: true, + subgraphUrl: `https://gateway.thegraph.com/api/${apiKey}/subgraphs/id/Gz2kjnmRV1fQj3R8cssoZa5y9VTanhrDo4Mh7nWW1wHa`, + addresses: { + LENDING_POOL_ADDRESS_PROVIDER: AaveV3Linea.POOL_ADDRESSES_PROVIDER, + LENDING_POOL: AaveV3Linea.POOL, + WETH_GATEWAY: AaveV3Linea.WETH_GATEWAY, + WALLET_BALANCE_PROVIDER: AaveV3Linea.WALLET_BALANCE_PROVIDER, + UI_POOL_DATA_PROVIDER: AaveV3Linea.UI_POOL_DATA_PROVIDER, + UI_INCENTIVE_DATA_PROVIDER: AaveV3Linea.UI_INCENTIVE_DATA_PROVIDER, + COLLECTOR: AaveV3Linea.COLLECTOR, + }, + }, } as const; diff --git a/src/ui-config/networksConfig.ts b/src/ui-config/networksConfig.ts index 79e8432efb..b8b098af7e 100644 --- a/src/ui-config/networksConfig.ts +++ b/src/ui-config/networksConfig.ts @@ -396,10 +396,14 @@ export const networkConfigs: Record = { }, ratesHistoryApiUrl, }, - [59144]: { + [ChainId.linea]: { name: 'Linea', privateJsonRPCUrl: 'https://linea-mainnet.g.alchemy.com/v2/6uk5qBl8QvjpEbgF3TgZBbxWkKlmWZR-', - publicJsonRPCUrl: ['https://1rpc.io/linea'], + publicJsonRPCUrl: [ + 'https://1rpc.io/linea', + 'https://linea.drpc.org', + 'https://linea-rpc.publicnode.com', + ], baseAssetSymbol: 'ETH', wrappedBaseAssetSymbol: 'WETH', baseAssetDecimals: 18, diff --git a/src/ui-config/permitConfig.ts b/src/ui-config/permitConfig.ts index f791317d4b..87c5188fbf 100644 --- a/src/ui-config/permitConfig.ts +++ b/src/ui-config/permitConfig.ts @@ -41,4 +41,9 @@ export const permitByChainAndToken: { '0x493257fd37edb34451f62edf8d2a0c418852ba4c': true, '0x5aea5775959fbc2557cc8789bc1bf90a239d9a91': true, }, + [ChainId.linea]: { + '0xa219439258ca9da29e9cc4ce5596924745e12b93': true, // USDT + '0x2416092f143378750bb29b79ed961ab195cceea5': true, // ezETH + '0xb5bedd42000b71fdde22d3ee8a79bd49a568fc8f': true, // wstETH + }, }; diff --git a/src/ui-config/wagmiConfig.ts b/src/ui-config/wagmiConfig.ts index dfcc2f6cf2..fe6fef4c99 100644 --- a/src/ui-config/wagmiConfig.ts +++ b/src/ui-config/wagmiConfig.ts @@ -19,6 +19,7 @@ import { baseSepolia, bsc, gnosis, + linea, mainnet, metis, optimism, @@ -52,6 +53,7 @@ let prodChains: CreateConfigParameters['chains'] = [ bsc, scroll, zksync, + linea, ]; const { name, baseAssetDecimals, baseAssetSymbol } = networkConfigs[FORK_BASE_CHAIN_ID]; diff --git a/yarn.lock b/yarn.lock index 4d89bde038..ed628954fc 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,17 +2,17 @@ # yarn lockfile v1 -"@aave/contract-helpers@1.30.5": - version "1.30.5" - resolved "https://registry.yarnpkg.com/@aave/contract-helpers/-/contract-helpers-1.30.5.tgz#2dca36c08701548eb7ad52551514215cfd4c3b6a" - integrity sha512-4CCLROduGD6HG3/DYAWS9KPDe30Pbo+b2LNKblLCy+Y90lE8aB5/e0RVZ47+vHheV9qOCjEjLYXEyeUYo7NvFg== +"@aave/contract-helpers@1.31.1": + version "1.31.1" + resolved "https://registry.yarnpkg.com/@aave/contract-helpers/-/contract-helpers-1.31.1.tgz#e0464847f18b7daa063cd5f1a1926c4b7ffce767" + integrity sha512-68/RIxOSZXpAJ0CbzN25tPDGF0QUoVbJQ6c7UDtA1hT2aL5g06URqHKhdIg1+Jvnz4VU8Qu0YYC26F5K+lVUcQ== dependencies: isomorphic-unfetch "^3.1.0" -"@aave/math-utils@1.30.5": - version "1.30.5" - resolved "https://registry.yarnpkg.com/@aave/math-utils/-/math-utils-1.30.5.tgz#6c6bbf46d8a422e00504e92cf8b3f6fcad626d04" - integrity sha512-aBAHCK6p3sMuyD4mipxH0vF+kn22Ocu7TzotCPzvKgkifVvGWFY7XsM5CNWubvDksL1+uNSoUvX2v3LOr23UHA== +"@aave/math-utils@1.31.1": + version "1.31.1" + resolved "https://registry.yarnpkg.com/@aave/math-utils/-/math-utils-1.31.1.tgz#f465a316c1b59b75b112b772236118541e14b716" + integrity sha512-thdudjGLygOhvDlhhndhSZjVcwglWfYROv1z6qfx9c4LsyiVITAxfz1FLUXbjEOI3kirHitl060Ng4rNuYjT1Q== "@adobe/css-tools@^4.0.1": version "4.4.1"