From 1cfc88a2eb96eb93535576598ece02495573c1f9 Mon Sep 17 00:00:00 2001 From: Roy <92044428+impelcrypto@users.noreply.github.com> Date: Mon, 2 Dec 2024 21:45:12 +0800 Subject: [PATCH] feat: added CCIP bridge (#1416) * feat: updated bridge page styling * feat: updated UI * feat: updated CCIP logic for Minato * feat: updated useCcipBridge * wip * fix: send from Minato * feat: bridge from minato * feat: updated UI * fix: refactor * fix: console * feat: added balloon on the assets page * fix: refactoring * fix: tooltip --- src/assets/img/chain/soneium-black.svg | 17 + src/assets/img/chain/soneium-color.svg | 12 + src/components/assets/EvmNativeToken.vue | 68 ++- src/components/assets/styles/asset-list.scss | 19 + .../assets/transfer/Information.vue | 38 +- src/components/bridge/BridgeSelection.vue | 60 ++- src/components/bridge/ccip/Ccip.vue | 104 +++++ src/components/bridge/ccip/CcipBridge.vue | 360 ++++++++++++++++ .../bridge/ccip/styles/ccip-bridge.scss | 272 ++++++++++++ src/components/bridge/ccip/styles/ccip.scss | 35 ++ src/components/bridge/ethereum/L1Bridge.vue | 2 +- .../bridge/ethereum/styles/l1-bridge.scss | 17 +- src/components/bridge/layerzero/LzBridge.vue | 2 +- .../bridge/layerzero/styles/lz-bridge.scss | 16 +- .../bridge/styles/bridge-selection.scss | 8 + src/components/common/Balloon.vue | 4 +- src/components/common/styles/balloon.scss | 4 + .../web3/abi/ccip/EtherSenderReceiver.json | 164 ++++++++ src/config/web3/abi/ccip/Router.json | 164 ++++++++ src/config/web3/index.ts | 21 + src/features.ts | 1 + src/hooks/bridge/useCcipBridge.ts | 393 ++++++++++++++++++ src/hooks/useNetworkInfo.ts | 6 + src/i18n/en-US/index.ts | 16 +- src/links/index.ts | 2 + src/modules/account/index.ts | 1 + src/modules/ccip-bridge/index.ts | 80 ++++ src/router/routes.ts | 7 + src/router/utils/index.ts | 4 + src/v2/app.container.ts | 6 + src/v2/repositories/ICcipBridgeRepository.ts | 23 + .../implementations/CcipBridgeRepository.ts | 130 ++++++ src/v2/services/ICcipBridgeService.ts | 25 ++ .../implementations/CcipBridgeService.ts | 138 ++++++ src/v2/services/implementations/index.ts | 1 + src/v2/services/index.ts | 1 + src/v2/symbols.ts | 2 + 37 files changed, 2196 insertions(+), 27 deletions(-) create mode 100644 src/assets/img/chain/soneium-black.svg create mode 100644 src/assets/img/chain/soneium-color.svg create mode 100644 src/components/bridge/ccip/Ccip.vue create mode 100644 src/components/bridge/ccip/CcipBridge.vue create mode 100644 src/components/bridge/ccip/styles/ccip-bridge.scss create mode 100644 src/components/bridge/ccip/styles/ccip.scss create mode 100644 src/config/web3/abi/ccip/EtherSenderReceiver.json create mode 100644 src/config/web3/abi/ccip/Router.json create mode 100644 src/hooks/bridge/useCcipBridge.ts create mode 100644 src/modules/ccip-bridge/index.ts create mode 100644 src/v2/repositories/ICcipBridgeRepository.ts create mode 100644 src/v2/repositories/implementations/CcipBridgeRepository.ts create mode 100644 src/v2/services/ICcipBridgeService.ts create mode 100644 src/v2/services/implementations/CcipBridgeService.ts diff --git a/src/assets/img/chain/soneium-black.svg b/src/assets/img/chain/soneium-black.svg new file mode 100644 index 000000000..b58bd202a --- /dev/null +++ b/src/assets/img/chain/soneium-black.svg @@ -0,0 +1,17 @@ + diff --git a/src/assets/img/chain/soneium-color.svg b/src/assets/img/chain/soneium-color.svg new file mode 100644 index 000000000..8cecd9205 --- /dev/null +++ b/src/assets/img/chain/soneium-color.svg @@ -0,0 +1,12 @@ + diff --git a/src/components/assets/EvmNativeToken.vue b/src/components/assets/EvmNativeToken.vue index f2e844ba6..c1ae04a08 100644 --- a/src/components/assets/EvmNativeToken.vue +++ b/src/components/assets/EvmNativeToken.vue @@ -43,6 +43,35 @@ +