From f06bd394a4769e1e8feccc0729133d3f59df1ba7 Mon Sep 17 00:00:00 2001 From: Gabriel Date: Tue, 13 Jul 2021 10:48:58 -0300 Subject: [PATCH] [FEAT] Litecoin Support --- app-template/build-electron-template.js | 1 + app-template/config-template.xml | 3 +- electron/main.js | 2 + package.json | 4 +- src/app/app.component.ts | 3 + src/app/app.scss | 4 + src/assets/img/currencies/ltc.svg | 1 + src/assets/img/icon-ltc-small.svg | 1 + src/components/coin-icon/coin-icon.html | 1 + src/components/coin-icon/coin-icon.scss | 3 + .../incoming-data-menu.html | 2 +- .../add/select-currency/select-currency.html | 2 +- src/pages/send/confirm/confirm.ts | 1 + src/pages/send/multi-send/multi-send.ts | 7 +- src/pages/send/select-inputs/select-inputs.ts | 7 +- src/pages/send/send.ts | 2 + src/providers/address/address.ts | 15 +++- src/providers/bwc/bwc.ts | 4 + src/providers/changelly/changelly.ts | 3 +- src/providers/clipboard/clipboard.ts | 3 +- src/providers/currency/coin.ts | 37 +++++++++ src/providers/currency/currency.ts | 3 +- .../derivation-path-helper.ts | 8 ++ src/providers/incoming-data/incoming-data.ts | 78 ++++++++++++++++++- src/providers/simplex/simplex.ts | 3 +- src/theme/lists.scss | 3 + 26 files changed, 185 insertions(+), 16 deletions(-) create mode 100644 src/assets/img/currencies/ltc.svg create mode 100644 src/assets/img/icon-ltc-small.svg diff --git a/app-template/build-electron-template.js b/app-template/build-electron-template.js index b8cac817d7..c1751c6f49 100644 --- a/app-template/build-electron-template.js +++ b/app-template/build-electron-template.js @@ -28,6 +28,7 @@ builder 'ethereum', 'ripple', 'dogecoin', + 'litecoin', '*NAME*' ] }, diff --git a/app-template/config-template.xml b/app-template/config-template.xml index 3add1487c7..cc138f45fd 100644 --- a/app-template/config-template.xml +++ b/app-template/config-template.xml @@ -91,7 +91,7 @@ - + @@ -100,6 +100,7 @@ + diff --git a/electron/main.js b/electron/main.js index f293fb82bb..38d14ea5d8 100644 --- a/electron/main.js +++ b/electron/main.js @@ -139,6 +139,8 @@ if (!app.isDefaultProtocolClient('ripple')) app.setAsDefaultProtocolClient('ripple'); if (!app.isDefaultProtocolClient('dogecoin')) app.setAsDefaultProtocolClient('dogecoin'); +if (!app.isDefaultProtocolClient('litecoin')) + app.setAsDefaultProtocolClient('litecoin'); if (!app.isDefaultProtocolClient(appConfig.name)) app.setAsDefaultProtocolClient(appConfig.name); diff --git a/package.json b/package.json index 9a7f16ae71..c8308f517c 100644 --- a/package.json +++ b/package.json @@ -130,7 +130,7 @@ "apple-wallet-ng": "1.1.1", "base64-js": "1.3.0", "bitauth": "git+https://github.com/bitpay/bitauth.git#68cf0353bf517a7e5293478608839fa904351eb6", - "bitcore-wallet-client": "8.25.11", + "bitcore-wallet-client": "8.25.13", "buffer-compare": "1.1.1", "chart.js": "2.9.4", "cordova": "9.0.0", @@ -144,7 +144,7 @@ "cordova-plugin-add-swift-support": "2.0.2", "cordova-plugin-advanced-http": "2.1.0", "cordova-plugin-compat": "1.2.0", - "cordova-plugin-customurlscheme-ng": "10.0.0", + "cordova-plugin-customurlscheme-ng": "11.0.0", "cordova-plugin-device": "2.0.1", "cordova-plugin-dialogs": "2.0.2", "cordova-plugin-fcm-ng": "8.3.0", diff --git a/src/app/app.component.ts b/src/app/app.component.ts index c02acbccba..65a81746b7 100644 --- a/src/app/app.component.ts +++ b/src/app/app.component.ts @@ -785,6 +785,9 @@ export class CopayApp { } else if (pathData.indexOf('dogecoin:/') != -1) { this.logger.debug('Dogecoin URL found'); this.handleOpenUrl(pathData.substring(pathData.indexOf('dogecoin:/'))); + } else if (pathData.indexOf('litecoin:/') != -1) { + this.logger.debug('Litecoin URL found'); + this.handleOpenUrl(pathData.substring(pathData.indexOf('litecoin:/'))); } else if (pathData.indexOf(this.appProvider.info.name + '://') != -1) { this.logger.debug(this.appProvider.info.name + ' URL found'); this.handleOpenUrl( diff --git a/src/app/app.scss b/src/app/app.scss index cee9ce2532..4635a707e3 100644 --- a/src/app/app.scss +++ b/src/app/app.scss @@ -323,6 +323,10 @@ ion-spinner * { background-color: #d8c172; } +.ltc-background { + background-color: #2962ff; +} + button.item { &.activated { background-color: $feather; diff --git a/src/assets/img/currencies/ltc.svg b/src/assets/img/currencies/ltc.svg new file mode 100644 index 0000000000..13e76a40ee --- /dev/null +++ b/src/assets/img/currencies/ltc.svg @@ -0,0 +1 @@ +litecoin-ltc-logo \ No newline at end of file diff --git a/src/assets/img/icon-ltc-small.svg b/src/assets/img/icon-ltc-small.svg new file mode 100644 index 0000000000..a6eb4c0243 --- /dev/null +++ b/src/assets/img/icon-ltc-small.svg @@ -0,0 +1 @@ +litecoin-ltc-logo \ No newline at end of file diff --git a/src/components/coin-icon/coin-icon.html b/src/components/coin-icon/coin-icon.html index 166e92e199..ef25824fd2 100644 --- a/src/components/coin-icon/coin-icon.html +++ b/src/components/coin-icon/coin-icon.html @@ -10,6 +10,7 @@ 'background_dai': coin == 'dai', 'background_wbtc': coin == 'wbtc', 'background_doge': coin == 'doge', +'background_ltc': coin == 'ltc', 'testnet': network === 'testnet' }" item-start> diff --git a/src/components/coin-icon/coin-icon.scss b/src/components/coin-icon/coin-icon.scss index b88ec72bdb..864f7fd145 100644 --- a/src/components/coin-icon/coin-icon.scss +++ b/src/components/coin-icon/coin-icon.scss @@ -47,6 +47,9 @@ coin-icon { &_doge { background-color: #d8c172; } + &_ltc { + background-color: #2962ff; + } &_default { background-color: #e6f8e9; } diff --git a/src/components/incoming-data-menu/incoming-data-menu.html b/src/components/incoming-data-menu/incoming-data-menu.html index bc608fe847..d9e5fcc74c 100644 --- a/src/components/incoming-data-menu/incoming-data-menu.html +++ b/src/components/incoming-data-menu/incoming-data-menu.html @@ -1,5 +1,5 @@ - + {{'{coinName} Address' | translate: { coinName: coinName } }} {{data}} diff --git a/src/pages/add/select-currency/select-currency.html b/src/pages/add/select-currency/select-currency.html index 087ba70a1e..28f3b68b40 100644 --- a/src/pages/add/select-currency/select-currency.html +++ b/src/pages/add/select-currency/select-currency.html @@ -52,7 +52,7 @@
-