mirror of
https://github.com/cake-tech/cake_wallet.git
synced 2024-12-23 03:59:23 +00:00
Squashed commit of the following:
commit62007975e1
Author: Omar Hatem <omarh.ismail1@gmail.com> Date: Fri Jul 14 01:48:47 2023 +0300 Old state (#999) * Fix Bitcoin transactions not showing (#978) * handle multiple responses coming in a single event * Add timeout for getting transaction info, to allow other transactions to be returned in case of any failure or network issue * Handle other cases of receiving multiple messages in the same response * Fix shib and storj (#997) * Merge main branch * Add missing files --------- Co-authored-by: Justin Ehrenhofer <justin.ehrenhofer@gmail.com> commitf51f0a1d1f
Merge:459a40bc
d7fa9991
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Thu Jul 13 19:06:22 2023 +0300 Merge branch 'main' of https://github.com/cake-tech/cake_wallet into linux/password-direct-input commit459a40bcd9
Merge:e9582f31
7d77a167
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Thu Jul 13 18:59:49 2023 +0300 Merge remote-tracking branch 'origin/linux/password-direct-input' into linux/password-direct-input commite9582f31e5
Merge:fc18b2dc
ff420c7c
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Thu Jul 13 18:26:27 2023 +0300 Merge branch 'main' of https://github.com/cake-tech/cake_wallet into linux/password-direct-input Conflicts: cw_bitcoin/lib/electrum_transaction_history.dart lib/core/wallet_loading_service.dart lib/di.dart lib/main.dart lib/router.dart lib/src/screens/dashboard/widgets/market_place_page.dart lib/src/screens/wallet_list/wallet_list_page.dart lib/view_model/wallet_list/wallet_list_view_model.dart macos/Podfile.lock res/values/strings_ar.arb res/values/strings_bg.arb res/values/strings_cs.arb res/values/strings_de.arb res/values/strings_en.arb res/values/strings_es.arb res/values/strings_fr.arb res/values/strings_hi.arb res/values/strings_hr.arb res/values/strings_id.arb res/values/strings_it.arb res/values/strings_ja.arb res/values/strings_ko.arb res/values/strings_my.arb res/values/strings_nl.arb res/values/strings_pl.arb res/values/strings_pt.arb res/values/strings_ru.arb res/values/strings_th.arb res/values/strings_tr.arb res/values/strings_uk.arb res/values/strings_ur.arb res/values/strings_zh.arb commit7d77a167ac
Author: Harold Than <62450449+thanvinhbaohoang@users.noreply.github.com> Date: Fri Jul 7 07:21:43 2023 -0400 Button: Cursor to Pointer on Hover (#982) * Button: Cursor to Pointer on Hover * Updated build-guide-linux.md to Revert Flutter Version --------- Co-authored-by: Harold <harold@pop-os.localdomain> commit1ca09e692d
Author: Serhii <borodenko.sv@gmail.com> Date: Thu Jun 29 16:44:31 2023 +0300 Revert "Merge branch 'linux/password-direct-input' of https://github.com/cake-tech/cake_wallet into linux/password-direct-input" This reverts commit424cf2e635
, reversing changes made toe1fe03ca28
. commit02eead0014
Author: Serhii <borodenko.sv@gmail.com> Date: Thu Jun 29 16:38:36 2023 +0300 Revert " fix routing and context issue" This reverts commite1fe03ca28
. commit424cf2e635
Merge:e1fe03ca
fc18b2dc
Author: Serhii <borodenko.sv@gmail.com> Date: Thu Jun 29 14:01:18 2023 +0300 Merge branch 'linux/password-direct-input' of https://github.com/cake-tech/cake_wallet into linux/password-direct-input commite1fe03ca28
Author: Serhii <borodenko.sv@gmail.com> Date: Thu Jun 29 14:00:12 2023 +0300 fix routing and context issue commitfc18b2dc52
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Fri Jun 16 22:25:27 2023 +0300 - Pump Linux version - Fix conflicts with main commit2da9112aa2
Merge:e592c892
3f2af133
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Fri Jun 16 22:14:52 2023 +0300 Merge branch 'v4.6.7_v1.3.8' of https://github.com/cake-tech/cake_wallet into linux/password-direct-input Conflicts: cw_bitcoin/lib/electrum_wallet.dart lib/di.dart lib/main.dart lib/src/screens/dashboard/widgets/market_place_page.dart commit3f2af1334d
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Fri Jun 16 21:43:33 2023 +0300 Pump app versions and update release notes commit8ffad4bf80
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Fri Jun 16 19:54:34 2023 +0300 Revert removing swipe to delete wallet feature commit337bfd0527
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Fri Jun 16 17:05:00 2023 +0300 - Replace payfura widget with direct browser link - Remove Payfura widget class as it is duplicate for the web view page commite592c892cc
Author: Rafael Saes <76502841+saltrafael@users.noreply.github.com> Date: Fri May 26 17:16:36 2023 -0300 fix: theme refactor for wallet_unlock_page.dart (#951) commit76559e50d6
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Fri May 26 21:52:02 2023 +0300 Remove secure storage commit825c99094f
Merge:5ba313cb
19cbc40e
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Fri May 26 21:16:08 2023 +0300 Merge branch 'main' of https://github.com/cake-tech/cake_wallet into linux/password-direct-input commit5ba313cb13
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Fri May 26 16:43:30 2023 +0300 Fix Conflicts with main commit53d3db5340
Merge:3ddb6c0a
75c65d67
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Fri May 26 15:09:55 2023 +0300 Merge branch 'main' of https://github.com/cake-tech/cake_wallet into linux/password-direct-input Conflicts: cw_core/lib/wallet_base.dart lib/core/auth_service.dart lib/di.dart lib/main.dart lib/router.dart lib/routes.dart lib/src/screens/dashboard/desktop_widgets/desktop_wallet_selection_dropdown.dart lib/src/screens/restore/restore_wallet_from_seed_page.dart lib/src/screens/settings/security_backup_page.dart lib/src/screens/wallet_list/wallet_list_page.dart lib/store/settings_store.dart lib/view_model/wallet_creation_vm.dart macos/Podfile.lock pubspec_base.yaml res/values/strings_bg.arb res/values/strings_en.arb res/values/strings_id.arb res/values/strings_my.arb res/values/strings_nl.arb res/values/strings_pt.arb res/values/strings_ru.arb res/values/strings_th.arb res/values/strings_tr.arb res/values/strings_uk.arb res/values/strings_ur.arb res/values/strings_zh.arb commit3ddb6c0a40
Author: M <m@cakewallet.com> Date: Thu Apr 27 21:17:41 2023 -0400 Add flatpak section to Linux build guide. commit89980cac5a
Author: M <m@cakewallet.com> Date: Thu Apr 27 20:51:35 2023 -0400 Add flatpak manifest. Add desktop file for Linux. commit0dc2effe41
Author: M <m@cakewallet.com> Date: Tue Apr 25 16:44:14 2023 -0400 Add check gcc and troubleshooting section to Linux build guide. commitd4b96d6f98
Author: M <m@cakewallet.com> Date: Fri Apr 21 18:08:42 2023 -0400 Add build guide for Linux. commitc7138a9124
Author: M <m@cakewallet.com> Date: Fri Apr 21 18:06:05 2023 -0400 Make `model_generator.sh` executable. commitd45df36238
Author: M <m@cakewallet.com> Date: Fri Apr 21 18:02:19 2023 -0400 Add ability to get random bytes on Linux. Used same method as in cake backups. commit5c2490e721
Author: M <m@cakewallet.com> Date: Fri Apr 21 15:55:26 2023 -0400 Update boost version for Linux to 1.82. Update monero for Linux to 0.18.2.2. commitd251539f13
Author: M <m@cakewallet.com> Date: Fri Apr 21 11:48:02 2023 -0400 Change package_info to package_info_plus commita90966b640
Author: M <m@cakewallet.com> Date: Wed Apr 19 17:20:04 2023 -0400 Remove unused constant MONERO_BLOCK_SIZE in ios/Classes/monero_api.cpp commitd34dca99ed
Author: M <m@cakewallet.com> Date: Wed Apr 19 16:11:01 2023 -0400 Remove duplication for routes. Removed unused constant and fixed TransactionInfoRow iterator for macos/Classes/monero_api.cpp. commit2ff6cf43b3
Merge:2e19e9d2
27961f2f
Author: M <m@cakewallet.com> Date: Wed Apr 19 15:18:43 2023 -0400 Merge branch 'main' of github.com:cake-tech/cake_wallet into linux/password-direct-input commit2e19e9d2b6
Author: M <m@cakewallet.com> Date: Tue Apr 18 16:45:32 2023 -0400 Fixes for Linux build scripts. Fixes for load cw_monero on Linux. Catch exception for get PackageInfo in SettingsStore. Add `excludeFlutterSecureStorage` to app_config.sh for Linux. Add FUNCTION_VISABILITY_ATTRIBUTE for monero_api.cpp. commit9cd02b7541
Merge:8efedbcc
786ba3b0
Author: M <m@cakewallet.com> Date: Tue Apr 18 15:45:32 2023 -0400 Merge branch 'desktop-linux' of github.com:cake-tech/cake_wallet into linux/password-direct-input commit8efedbccf6
Author: M <m@cakewallet.com> Date: Thu Apr 13 19:48:51 2023 -0400 Add ability to set custom data application directory commitf52c45b167
Author: M <m@cakewallet.com> Date: Mon Apr 10 19:16:13 2023 -0400 Change encryption method for electrum wallets is wallet password provides directly. Add ability to user for repeat wallets password and compare with original wallet password before wallet creation for cases when wallet password provides directly. commit3b82a390c1
Author: M <m@cakewallet.com> Date: Thu Mar 30 18:33:59 2023 -0400 Add ability to enter wallet password directly. Add ability to build without flutter secure storage. Add `excludeFlutterSecureStorage` flag to too/configure.dart for settings for secure storage. Add wallet unlock screen. commita70b6f298c
Merge:f0164db4
14a4d413
Author: Omar Hatem <omarh.ismail1@gmail.com> Date: Mon Feb 27 15:11:54 2023 +0200 Merge pull request #804 from cake-tech/desktop-ui-enhancements Desktop UI enhancements commit14a4d41339
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Sat Feb 25 00:07:15 2023 +0200 Fixate MobX version to fix restore issue commite8fa3953b5
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Fri Feb 24 17:17:30 2023 +0200 Fix Navigation animation for settings screens commit89aaa9bfef
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Fri Feb 24 15:49:37 2023 +0200 Add back wallet settings page to desktop settings actions commit26a7bfcee5
Merge:f00dc913
f0164db4
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Fri Feb 24 15:39:01 2023 +0200 Merge branch 'dashboard-desktop-view' of https://github.com/cake-tech/cake_wallet into desktop-ui-enhancements commitf0164db47f
Merge:f050f022
143a6eec
Author: Omar Hatem <omarh.ismail1@gmail.com> Date: Fri Feb 24 15:38:35 2023 +0200 Merge pull request #802 from cake-tech/CW-321-lock-app-feature-on-mac Add app lock feature on mac commit143a6eecf5
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Fri Feb 24 15:38:05 2023 +0200 pop only PIN screen after successful auth commita210a1e325
Merge:538220f7
f050f022
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Fri Feb 24 15:23:36 2023 +0200 Merge branch 'dashboard-desktop-view' of https://github.com/cake-tech/cake_wallet into CW-321-lock-app-feature-on-mac commitf00dc9132c
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Fri Feb 24 15:19:59 2023 +0200 Fix UI issues Add missing translation commit05b1bb05c4
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Fri Feb 24 15:18:31 2023 +0200 Enable adding contact from send screen commitb7e9237963
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Fri Feb 24 15:18:01 2023 +0200 Add Nano currency image commit538220f7bc
Author: Godwin Asuquo <godilite@gmail.com> Date: Fri Feb 24 14:50:19 2023 +0200 Add assertion to avoid null commit770ed710d7
Author: Godwin Asuquo <godilite@gmail.com> Date: Fri Feb 24 14:24:40 2023 +0200 Add app lock feature on mac commitf050f022b6
Merge:f8acc1c0
ac099075
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Fri Feb 24 00:40:19 2023 +0200 Merge branch 'main' of https://github.com/cake-tech/cake_wallet into dashboard-desktop-view Conflicts: lib/src/screens/buy/onramper_page.dart lib/src/screens/seed/wallet_seed_page.dart pubspec_base.yaml res/values/strings_de.arb res/values/strings_en.arb res/values/strings_es.arb res/values/strings_fr.arb res/values/strings_hi.arb res/values/strings_hr.arb res/values/strings_it.arb res/values/strings_ja.arb res/values/strings_ko.arb res/values/strings_nl.arb res/values/strings_pl.arb res/values/strings_pt.arb res/values/strings_ru.arb res/values/strings_uk.arb res/values/strings_zh.arb commitf8acc1c007
Merge:67503f39
d3eb22e1
Author: Omar Hatem <omarh.ismail1@gmail.com> Date: Thu Feb 23 21:56:50 2023 +0200 Merge pull request #791 from cake-tech/fix-desktop-colors-addressbook Fix desktop background color and address book view issues commitd3eb22e1d4
Author: Godwin Asuquo <godilite@gmail.com> Date: Thu Feb 23 21:16:28 2023 +0200 Replace removed code commit8d482464d9
Author: Godwin Asuquo <godilite@gmail.com> Date: Thu Feb 23 18:56:20 2023 +0200 Fix ionia input field alignment commit67503f393d
Merge:99344600
016bca01
Author: Omar Hatem <omarh.ismail1@gmail.com> Date: Thu Feb 23 18:24:32 2023 +0200 Merge pull request #797 from cake-tech/align-create-restore-screens Fix alignment in create and restore wallet screens commit016bca01f4
Author: Godwin Asuquo <godilite@gmail.com> Date: Thu Feb 23 18:18:40 2023 +0200 remove unused code commit9934460004
Merge:7a504abc
bba0ce2e
Author: Omar Hatem <omarh.ismail1@gmail.com> Date: Thu Feb 23 18:06:27 2023 +0200 Merge pull request #796 from cake-tech/fix-popup-width-constraints Fix Popup width constraint and add focus orders commitbba0ce2ec6
Author: Godwin Asuquo <godilite@gmail.com> Date: Thu Feb 23 18:03:44 2023 +0200 Remove autofocus commit28c599e68a
Merge:d5e9982e
7a504abc
Author: Godwin Asuquo <godilite@gmail.com> Date: Thu Feb 23 17:51:26 2023 +0200 Merge branch 'dashboard-desktop-view' of https://github.com/cake-tech/cake_wallet into align-create-restore-screens commitd5e9982e91
Author: Godwin Asuquo <godilite@gmail.com> Date: Thu Feb 23 16:03:20 2023 +0200 override navbar with desktopnavbar commit7a504abc01
Merge:c05d70b1
9616974d
Author: Omar Hatem <omarh.ismail1@gmail.com> Date: Wed Feb 22 19:31:37 2023 +0200 Merge pull request #787 from cake-tech/macos-fix-settings-create-wallet Fix wallet create in settings commit9616974d33
Merge:75d52794
24dc9bea
Author: Omar Hatem <omarh.ismail1@gmail.com> Date: Wed Feb 22 19:05:20 2023 +0200 Merge pull request #790 from cake-tech/add-create-restore-dropdown Add create and restore wallet options to dropdown menu commit24dc9bea27
Author: Godwin Asuquo <godilite@gmail.com> Date: Wed Feb 22 18:47:00 2023 +0200 remove space commit6dc4eafff4
Author: Godwin Asuquo <godilite@gmail.com> Date: Wed Feb 22 18:44:49 2023 +0200 Fix dropdown change state bug Hide scanner for desktop commitc41b6b7f89
Author: Godwin Asuquo <godilite@gmail.com> Date: Wed Feb 22 16:17:26 2023 +0200 Fix alignment in create and restore wallet screens commit07f6f43e0b
Author: Godwin Asuquo <godilite@gmail.com> Date: Tue Feb 21 22:05:02 2023 +0200 refactor dropdown items commit88e245e480
Author: Godwin Asuquo <godilite@gmail.com> Date: Tue Feb 21 12:22:32 2023 +0200 Fix issues from code review commitc05d70b118
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Tue Feb 21 01:52:47 2023 +0200 Fix variable name commit44b1eec81d
Author: Godwin Asuquo <godilite@gmail.com> Date: Mon Feb 20 23:24:19 2023 +0200 Fix Popup width constraint and add focus orders commit17aa72e460
Merge:1b892288
c920b62a
Author: Omar Hatem <omarh.ismail1@gmail.com> Date: Mon Feb 20 14:48:22 2023 +0200 Merge pull request #792 from cake-tech/add-keyboard-control Add keyboard control for desktop commitcf125d1e06
Author: Godwin Asuquo <godilite@gmail.com> Date: Sat Feb 18 14:23:48 2023 +0200 Fix issue from code review commitc920b62aa0
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Sat Feb 18 00:13:51 2023 +0200 Add onFieldSubmitted to allow "enter" button interaction commit59a79242af
Author: Godwin Asuquo <godilite@gmail.com> Date: Fri Feb 17 19:06:41 2023 +0200 Fix input field commit52468e1331
Author: Godwin Asuquo <godilite@gmail.com> Date: Fri Feb 17 18:19:26 2023 +0200 Fix desktop background color and address book view issues commit4bc81242fc
Author: Godwin Asuquo <godilite@gmail.com> Date: Fri Feb 17 16:41:49 2023 +0200 Add create and restore wallet options to dropdown menu commit75d52794f4
Merge:e0970fa1
1b892288
Author: Godwin Asuquo <godilite@gmail.com> Date: Thu Feb 16 18:27:19 2023 +0200 Merge branch 'dashboard-desktop-view' of https://github.com/cake-tech/cake_wallet into macos-fix-settings-create-wallet commite0970fa182
Author: Godwin Asuquo <godilite@gmail.com> Date: Thu Feb 16 18:05:10 2023 +0200 fix pageview controller reset index commit1b89228893
Merge:bb05573c
4027ea04
Author: Omar Hatem <omarh.ismail1@gmail.com> Date: Thu Feb 16 17:57:43 2023 +0200 Merge pull request #745 from cake-tech/CW-301-desktop-side-bar-ui Add desktop sidebar commit4027ea04eb
Merge:dd13172c
0015f41a
Author: Omar Hatem <omarh.ismail1@gmail.com> Date: Thu Feb 16 17:54:54 2023 +0200 Merge pull request #775 from cake-tech/CW-311-remove-drawer-from-mac-os Replace drawer icon for mac os commit0015f41a0d
Merge:5a77aa20
55bf964a
Author: Omar Hatem <omarh.ismail1@gmail.com> Date: Thu Feb 16 17:52:24 2023 +0200 Merge pull request #785 from cake-tech/desktop-ui-for-exchange-send Desktop UI for exchange send commit55bf964a27
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Thu Feb 16 17:51:52 2023 +0200 - Use close icon on main screens - Minor UI fixes commit5296a2118a
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Wed Feb 15 23:50:15 2023 +0200 Remove duplicated constrains commit2496a6574a
Author: Godwin Asuquo <godilite@gmail.com> Date: Wed Feb 15 22:14:07 2023 +0200 remove unnecessary code commitf0c4952809
Author: Godwin Asuquo <godilite@gmail.com> Date: Wed Feb 15 22:13:24 2023 +0200 remove unnecessary code commit3dcf5b05a5
Author: Godwin Asuquo <godilite@gmail.com> Date: Wed Feb 15 22:11:34 2023 +0200 Fix wallet create in settings commit8de9c80fe1
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Wed Feb 15 20:55:06 2023 +0200 Rename misleading variable Change initial mac window size commitf8d70e7ce6
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Wed Feb 15 16:07:46 2023 +0200 Fix UI issues, paddings and alignments commitb1947426fb
Merge:843db656
5a77aa20
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Wed Feb 15 03:09:38 2023 +0200 Merge branch 'CW-311-remove-drawer-from-mac-os' of https://github.com/cake-tech/cake_wallet into desktop-ui-for-exchange-send Conflicts: lib/src/screens/dashboard/desktop_dashboard_page.dart lib/src/screens/dashboard/desktop_widgets/desktop_sidebar_wrapper.dart commit843db65603
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Wed Feb 15 01:28:10 2023 +0200 Add width constraints to desktop dashboard commit5a77aa2017
Merge:107e136f
6caeae28
Author: Omar Hatem <omarh.ismail1@gmail.com> Date: Wed Feb 15 01:20:05 2023 +0200 Merge pull request #786 from cake-tech/CW-312-mac-os-settings-icon-to-be-a-toggle MacOS settings icon to be a toggle commit6caeae2817
Author: Godwin Asuquo <godilite@gmail.com> Date: Tue Feb 14 21:55:13 2023 +0200 Add padding to support page commitea09bba0fb
Author: Godwin Asuquo <godilite@gmail.com> Date: Tue Feb 14 21:53:17 2023 +0200 Make side menu items toggle back to dashboard commit02fe3c008f
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Tue Feb 14 18:05:44 2023 +0200 Constrain primary Buttons width commitfb5efc0429
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Tue Feb 14 18:01:24 2023 +0200 Fix Desktop dashboard actions background color commit8f76232937
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Tue Feb 14 17:21:09 2023 +0200 - Change design/paddings for Send page on desktop view - Make AddTemplateButton instead of having it duplicated in send/exchange commitbd04383b7c
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Tue Feb 14 01:36:34 2023 +0200 Change Exchange page UI depending on platform commit10b877f55e
Merge:107e136f
dd13172c
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Sat Feb 11 00:48:16 2023 +0200 Merge branch 'CW-301-desktop-side-bar-ui' of https://github.com/cake-tech/cake_wallet into CW-311-remove-drawer-from-mac-os commitdd13172cfe
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Sat Feb 11 00:41:48 2023 +0200 Add max width constrain to Welcome page commit107e136f52
Author: Godwin Asuquo <godilite@gmail.com> Date: Sat Feb 11 00:35:11 2023 +0200 remove empty line commitbdfe070f8d
Author: Godwin Asuquo <godilite@gmail.com> Date: Sat Feb 11 00:32:26 2023 +0200 Refactor sidebar state management commit770e3b6f52
Merge:99bb3cce
5fa50c76
Author: Omar Hatem <omarh.ismail1@gmail.com> Date: Fri Feb 10 23:29:36 2023 +0200 Merge pull request #774 from cake-tech/CW-310-add-constraints-to-images-on-macos [CW-310] Add constraints to images on macos commit5fa50c7668
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Fri Feb 10 23:27:19 2023 +0200 Fix Constrained width screens UI commitc1bf0ee7aa
Merge:eb3b2464
99bb3cce
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Fri Feb 10 22:54:13 2023 +0200 Merge branch 'CW-301-desktop-side-bar-ui' of https://github.com/cake-tech/cake_wallet into CW-310-add-constraints-to-images-on-macos Conflicts: lib/src/screens/pin_code/pin_code_widget.dart commit99bb3cce47
Merge:2623546b
3fb8be00
Author: Omar Hatem <omarh.ismail1@gmail.com> Date: Fri Feb 10 22:34:18 2023 +0200 Merge pull request #779 from cake-tech/CW-318-desktop-marketplace Add Marketplace to dashboard view commit3fb8be0053
Merge:887afdad
2623546b
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Fri Feb 10 22:33:31 2023 +0200 Merge branch 'CW-301-desktop-side-bar-ui' of https://github.com/cake-tech/cake_wallet into CW-318-desktop-marketplace Conflicts: lib/src/screens/dashboard/desktop_widgets/desktop_dashboard_actions.dart commit2623546b5e
Merge:2b2bebe9
2ea360d8
Author: Omar Hatem <omarh.ismail1@gmail.com> Date: Fri Feb 10 22:09:55 2023 +0200 Merge pull request #776 from cake-tech/CW-309-allow-pin-keyboard-entry-on-macos Allow Keyboard usage on PIN screen commit887afdadd0
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Fri Feb 10 20:39:23 2023 +0200 Change ionia welcome page animation commit2b2bebe98f
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Fri Feb 10 20:26:07 2023 +0200 Refresh desktop dashboard actions on wallet change commiteb3b246437
Author: Godwin Asuquo <godilite@gmail.com> Date: Fri Feb 10 20:19:13 2023 +0200 Add empty trailing to center page title on desktop commit32d2bf2c85
Author: Godwin Asuquo <godilite@gmail.com> Date: Fri Feb 10 20:07:53 2023 +0200 Update widget contraints commit89fe8df459
Author: Godwin Asuquo <godilite@gmail.com> Date: Fri Feb 10 19:45:48 2023 +0200 Update trailing icon to open transaction page commit6d49e6a543
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Fri Feb 10 18:40:50 2023 +0200 Add Marketplace to dashboard view commit2ea360d81d
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Fri Feb 10 18:15:05 2023 +0200 Fix desktop nav bar UI commit677305f625
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Thu Feb 9 22:53:02 2023 +0200 - Listen to keyboard events in PIN screen - Fix PIN buttons style commit1831ebf435
Author: Godwin Asuquo <godilite@gmail.com> Date: Thu Feb 9 20:29:38 2023 +0200 Remove drawer from mac os commit150d43b2da
Author: Godwin Asuquo <godilite@gmail.com> Date: Thu Feb 9 20:11:20 2023 +0200 constraint images and pincoded box commita116241185
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Thu Feb 9 19:17:52 2023 +0200 Separate Dashboard desktop view from mobile view commit5c89c42540
Author: Godwin Asuquo <godilite@gmail.com> Date: Thu Feb 9 16:53:07 2023 +0200 [skip ci] remove .project changes commitdd2bf60b01
Author: Godwin Asuquo <godilite@gmail.com> Date: Thu Feb 9 16:51:49 2023 +0200 [skip ci] remove .project changes commit167eae1293
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Thu Feb 9 16:10:43 2023 +0200 Revert changes in .gitignore commit30d16266c0
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Thu Feb 9 16:02:02 2023 +0200 Revert removing .lock files commit3c17310a5b
Author: Godwin Asuquo <godilite@gmail.com> Date: Wed Feb 8 22:12:11 2023 +0200 [skip ci] reformat desktop dashboard commit48ae156eb8
Author: Godwin Asuquo <godilite@gmail.com> Date: Wed Feb 8 21:57:26 2023 +0200 [skip ci] reformat desktop dashboard commitb1b8193043
Author: Godwin Asuquo <godilite@gmail.com> Date: Wed Feb 8 20:41:46 2023 +0200 Fix issues from code review commita1abdc849a
Author: Godwin Asuquo <godilite@gmail.com> Date: Wed Feb 8 18:56:00 2023 +0200 Fix bug on sidebar reset commit3f03fb0b18
Merge:69651b3e
9f69de80
Author: Omar Hatem <omarh.ismail1@gmail.com> Date: Wed Feb 8 15:50:37 2023 +0200 Merge pull request #769 from cake-tech/fix-buy-feature-on-macos Fix buy feature on macos commit9f69de8057
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Wed Feb 8 15:49:26 2023 +0200 Remove Podfile.lock from cache commit738621254f
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Wed Feb 8 15:46:57 2023 +0200 Add pubspec.lock and Podfile.lock to gitignore commit26b79fe0cd
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Mon Feb 6 18:23:40 2023 +0200 - Refactor onRamper to have a single point of modification - Enlarge initial app size - update Flutter and Packages commitdea81f92e3
Merge:c7db7b99
69651b3e
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Tue Jan 31 16:48:36 2023 +0200 Merge remote-tracking branch 'origin/CW-301-desktop-side-bar-ui' into CW-301-desktop-side-bar-ui commit69651b3eb4
Author: Godwin Asuquo <godilite@gmail.com> Date: Tue Jan 31 15:30:46 2023 +0200 Remove constants commitc7db7b99a5
Merge:9ed77cd6
4902dc8d
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Tue Jan 31 15:23:47 2023 +0200 Merge remote-tracking branch 'origin/CW-301-desktop-side-bar-ui' into CW-301-desktop-side-bar-ui commit4902dc8dd4
Merge:d12bcc80
bb05573c
Author: Godwin Asuquo <godilite@gmail.com> Date: Tue Jan 31 15:12:01 2023 +0200 Merge branch 'dashboard-desktop-view' of https://github.com/cake-tech/cake_wallet into CW-301-desktop-side-bar-ui commit9ed77cd6f9
Merge:d12bcc80
bb05573c
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Mon Jan 30 23:43:09 2023 +0200 Merge branch 'dashboard-desktop-view' of https://github.com/cake-tech/cake_wallet into CW-301-desktop-side-bar-ui Conflicts: lib/src/screens/dashboard/dashboard_page.dart commitbb05573c3a
Merge:de2b887a
c20eb232
Author: Omar Hatem <omarh.ismail1@gmail.com> Date: Mon Jan 30 23:33:44 2023 +0200 Merge pull request #753 from cake-tech/mac-os-icons Mac os icons commitd12bcc80d1
Author: Godwin Asuquo <godilite@gmail.com> Date: Mon Jan 30 23:32:31 2023 +0200 Fix exchange page as fullScreenDialog commitde2b887a9b
Merge:abf5f0b7
adfebe69
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Mon Jan 30 23:31:59 2023 +0200 Merge branch 'mac-os-fixes' of https://github.com/cake-tech/cake_wallet into dashboard-desktop-view commitc20eb2325e
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Mon Jan 30 23:28:15 2023 +0200 Change Mac os app name and bundle id commitdeadc93a76
Author: Godwin Asuquo <godilite@gmail.com> Date: Mon Jan 30 23:23:42 2023 +0200 fix dashboard sidebar and responsive utils commitabf5f0b7c6
Merge:b6666ca4
5b50ea05
Author: Omar Hatem <omarh.ismail1@gmail.com> Date: Mon Jan 30 22:28:24 2023 +0200 Merge pull request #754 from cake-tech/desktop-appbar-view Desktop AppBar commit94184d69d6
Author: Godwin Asuquo <godilite@gmail.com> Date: Mon Jan 30 17:26:40 2023 +0200 localize settings commitd5957b9873
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Mon Jan 30 16:01:37 2023 +0200 Generate MacOS icons commit5b50ea053e
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Sun Jan 29 16:49:42 2023 +0200 Add Wallet selection dropdown to dashboard desktop view commitb6666ca405
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Sat Jan 28 17:13:34 2023 +0200 Ignore increasing brightness for non-mobile platforms commit75f33a433e
Author: Godwin Asuquo <godilite@gmail.com> Date: Sat Jan 28 12:43:44 2023 +0200 refactor desktop settings sidebar commitadfebe6940
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Thu Jan 26 20:53:26 2023 +0200 Temporarily fetch unstoppable domains only on mobile commit132033207e
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Thu Jan 26 02:33:15 2023 +0200 Remove unstoppable domain from macos since it's not supported commit409c13a77a
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Thu Jan 26 02:25:28 2023 +0200 Remove wake lock native code and just use the ready made package commit90a7432bf9
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Thu Jan 26 02:05:48 2023 +0200 - Remove legacy migration from macos - Remove wake lock native code and just use the ready made package commit6b2bf313a3
Merge:42a28d42
e8c1d863
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Wed Jan 25 18:24:57 2023 +0200 Merge branch 'mac-os-fixes' of https://github.com/cake-tech/cake_wallet into dashboard-desktop-view commit20ae8d530f
Author: Godwin Asuquo <godilite@gmail.com> Date: Wed Jan 25 16:17:50 2023 +0200 [skip ci] Add desktop sidebar commitba09a24d53
Author: Godwin Asuquo <godilite@gmail.com> Date: Wed Jan 25 16:14:34 2023 +0200 [skip ci] Add desktop sidebar commit4f1f51e0aa
Author: Godwin Asuquo <godilite@gmail.com> Date: Wed Jan 25 15:57:56 2023 +0200 Add desktop sidebar commite8c1d86373
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Wed Jan 25 02:38:28 2023 +0200 Add platform channel specific code for mac os commit4aebbdace7
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Wed Jan 25 00:14:28 2023 +0200 Revert mac os version commitfa072ff2f1
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Wed Jan 25 00:11:18 2023 +0200 Revert mac os version commit6e03d2933d
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Wed Jan 25 00:07:11 2023 +0200 Revert back to Cake fork for secure storage commitc3c81f7685
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Tue Jan 24 23:58:06 2023 +0200 Revert back to Cake fork for secure storage commitd41e7b7bab
Merge:ed0d87c8
ae3620b1
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Fri Jan 20 18:24:39 2023 +0200 Merge branch 'desktop-mac-os' of https://github.com/cake-tech/cake_wallet into mac-os-fixes commited0d87c893
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Fri Jan 20 17:45:54 2023 +0200 Update deployment target to 10.13 commitdac7f8e1b3
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Fri Jan 20 15:02:08 2023 +0200 Add Bundle ID in entitlements files through app config script commit786ba3b042
Author: M <m@cakewallet.com> Date: Thu Jan 19 18:14:46 2023 -0500 Add linux application to the project. commitae3620b171
Author: M <m@cakewallet.com> Date: Thu Jan 19 15:54:59 2023 -0500 Fix arch match for monero lib for darwin x86_64 -> x86-64 commit42a28d4246
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Thu Jan 19 04:04:20 2023 +0200 Add on Tap to desktop_action_button.dart Remove unused functions commit42a7439315
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Wed Jan 18 22:11:59 2023 +0200 Change Dashboard view on desktop size screens commit9f1e663719
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Tue Jan 17 22:06:05 2023 +0200 Add network access to mac commit456ba28cb2
Author: OmarHatem <omarh.ismail1@gmail.com> Date: Tue Jan 17 21:10:39 2023 +0200 - Update Flutter secure storage to work with macos - Enable uni links only on Mobile - Update devcelocale to work with macos commit31fa9e8b19
Author: M <m@cakewallet.com> Date: Tue Jan 10 21:15:24 2023 -0500 Add build scripts for macOS. Add macos for cw_monero plugin. Add macos proj to the application.
This commit is contained in:
parent
a382186be1
commit
e53bcc411f
46 changed files with 417 additions and 104 deletions
|
@ -1,2 +1,6 @@
|
||||||
Bug fixes
|
Opt-in to Cake 2FA for security. More info: https://guides.cakewallet.com/docs/advanced-features/authentication/#cake-2fa
|
||||||
Fiat Onramp improvements
|
Auto generate restore height for Monero restore QR codes
|
||||||
|
Hausa and Yoruba languages
|
||||||
|
Additional privacy settings
|
||||||
|
Update Monero to 0.18.2.2
|
||||||
|
Refactoring and bug fixes
|
||||||
|
|
|
@ -1,2 +1,6 @@
|
||||||
Bug fixes
|
Opt-in to Cake 2FA for security. More info: https://guides.cakewallet.com/docs/advanced-features/authentication/#cake-2fa
|
||||||
Fiat Onramp improvements
|
Auto generate restore height for Monero restore QR codes
|
||||||
|
Hausa and Yoruba languages
|
||||||
|
Additional privacy settings
|
||||||
|
Update Monero to 0.18.2.2
|
||||||
|
Refactoring and bug fixes
|
||||||
|
|
|
@ -3,6 +3,7 @@ import 'package:cw_bitcoin/bitcoin_mnemonic.dart';
|
||||||
import 'package:cw_bitcoin/bitcoin_mnemonic_is_incorrect_exception.dart';
|
import 'package:cw_bitcoin/bitcoin_mnemonic_is_incorrect_exception.dart';
|
||||||
import 'package:cw_bitcoin/bitcoin_wallet_creation_credentials.dart';
|
import 'package:cw_bitcoin/bitcoin_wallet_creation_credentials.dart';
|
||||||
import 'package:cw_bitcoin/encryption_file_utils.dart';
|
import 'package:cw_bitcoin/encryption_file_utils.dart';
|
||||||
|
import 'package:cw_bitcoin/encryption_file_utils.dart';
|
||||||
import 'package:cw_core/unspent_coins_info.dart';
|
import 'package:cw_core/unspent_coins_info.dart';
|
||||||
import 'package:cw_core/wallet_base.dart';
|
import 'package:cw_core/wallet_base.dart';
|
||||||
import 'package:cw_core/wallet_service.dart';
|
import 'package:cw_core/wallet_service.dart';
|
||||||
|
@ -22,6 +23,7 @@ class BitcoinWalletService extends WalletService<
|
||||||
final Box<WalletInfo> walletInfoSource;
|
final Box<WalletInfo> walletInfoSource;
|
||||||
final Box<UnspentCoinsInfo> unspentCoinsInfoSource;
|
final Box<UnspentCoinsInfo> unspentCoinsInfoSource;
|
||||||
final bool isDirect;
|
final bool isDirect;
|
||||||
|
final bool isDirect;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
WalletType getType() => WalletType.bitcoin;
|
WalletType getType() => WalletType.bitcoin;
|
||||||
|
@ -45,8 +47,8 @@ class BitcoinWalletService extends WalletService<
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Future<BitcoinWallet> openWallet(String name, String password) async {
|
Future<BitcoinWallet> openWallet(String name, String password) async {
|
||||||
final walletInfo = walletInfoSource.values.firstWhereOrNull(
|
final walletInfo = walletInfoSource.values
|
||||||
(info) => info.id == WalletBase.idFor(name, getType()))!;
|
.firstWhereOrNull((info) => info.id == WalletBase.idFor(name, getType()))!;
|
||||||
final wallet = await BitcoinWalletBase.open(
|
final wallet = await BitcoinWalletBase.open(
|
||||||
password: password, name: name, walletInfo: walletInfo,
|
password: password, name: name, walletInfo: walletInfo,
|
||||||
unspentCoinsInfo: unspentCoinsInfoSource,
|
unspentCoinsInfo: unspentCoinsInfoSource,
|
||||||
|
@ -57,22 +59,23 @@ class BitcoinWalletService extends WalletService<
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Future<void> remove(String wallet) async {
|
Future<void> remove(String wallet) async {
|
||||||
File(await pathForWalletDir(name: wallet, type: getType()))
|
File(await pathForWalletDir(name: wallet, type: getType())).delete(recursive: true);
|
||||||
.delete(recursive: true);
|
final walletInfo = walletInfoSource.values
|
||||||
final walletInfo = walletInfoSource.values.firstWhereOrNull(
|
.firstWhereOrNull((info) => info.id == WalletBase.idFor(wallet, getType()))!;
|
||||||
(info) => info.id == WalletBase.idFor(wallet, getType()))!;
|
|
||||||
await walletInfoSource.delete(walletInfo.key);
|
await walletInfoSource.delete(walletInfo.key);
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Future<void> rename(String currentName, String password, String newName) async {
|
Future<void> rename(String currentName, String password, String newName) async {
|
||||||
final currentWalletInfo = walletInfoSource.values.firstWhereOrNull(
|
final currentWalletInfo = walletInfoSource.values
|
||||||
(info) => info.id == WalletBase.idFor(currentName, getType()))!;
|
.firstWhereOrNull((info) => info.id == WalletBase.idFor(currentName, getType()))!;
|
||||||
final currentWallet = await BitcoinWalletBase.open(
|
final currentWallet = await BitcoinWalletBase.open(
|
||||||
password: password,
|
password: password,
|
||||||
name: currentName,
|
name: currentName,
|
||||||
walletInfo: currentWalletInfo,
|
walletInfo: currentWalletInfo,
|
||||||
unspentCoinsInfo: unspentCoinsInfoSource);
|
unspentCoinsInfo: unspentCoinsInfoSource,
|
||||||
|
encryptionFileUtils: encryptionFileUtilsFor(isDirect),
|
||||||
|
);
|
||||||
|
|
||||||
await currentWallet.renameWalletFiles(newName);
|
await currentWallet.renameWalletFiles(newName);
|
||||||
|
|
||||||
|
@ -84,13 +87,11 @@ class BitcoinWalletService extends WalletService<
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Future<BitcoinWallet> restoreFromKeys(
|
Future<BitcoinWallet> restoreFromKeys(BitcoinRestoreWalletFromWIFCredentials credentials) async =>
|
||||||
BitcoinRestoreWalletFromWIFCredentials credentials) async =>
|
|
||||||
throw UnimplementedError();
|
throw UnimplementedError();
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Future<BitcoinWallet> restoreFromSeed(
|
Future<BitcoinWallet> restoreFromSeed(BitcoinRestoreWalletFromSeedCredentials credentials) async {
|
||||||
BitcoinRestoreWalletFromSeedCredentials credentials) async {
|
|
||||||
if (!validateMnemonic(credentials.mnemonic)) {
|
if (!validateMnemonic(credentials.mnemonic)) {
|
||||||
throw BitcoinMnemonicIsIncorrectException();
|
throw BitcoinMnemonicIsIncorrectException();
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import 'dart:io';
|
import 'dart:io';
|
||||||
import 'package:cw_bitcoin/encryption_file_utils.dart';
|
import 'package:cw_bitcoin/encryption_file_utils.dart';
|
||||||
|
import 'package:cw_bitcoin/encryption_file_utils.dart';
|
||||||
import 'package:cw_core/unspent_coins_info.dart';
|
import 'package:cw_core/unspent_coins_info.dart';
|
||||||
import 'package:hive/hive.dart';
|
import 'package:hive/hive.dart';
|
||||||
import 'package:cw_bitcoin/bitcoin_mnemonic.dart';
|
import 'package:cw_bitcoin/bitcoin_mnemonic.dart';
|
||||||
|
@ -22,6 +23,7 @@ class LitecoinWalletService extends WalletService<
|
||||||
final Box<WalletInfo> walletInfoSource;
|
final Box<WalletInfo> walletInfoSource;
|
||||||
final Box<UnspentCoinsInfo> unspentCoinsInfoSource;
|
final Box<UnspentCoinsInfo> unspentCoinsInfoSource;
|
||||||
final bool isDirect;
|
final bool isDirect;
|
||||||
|
final bool isDirect;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
WalletType getType() => WalletType.litecoin;
|
WalletType getType() => WalletType.litecoin;
|
||||||
|
@ -46,8 +48,8 @@ class LitecoinWalletService extends WalletService<
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Future<LitecoinWallet> openWallet(String name, String password) async {
|
Future<LitecoinWallet> openWallet(String name, String password) async {
|
||||||
final walletInfo = walletInfoSource.values.firstWhereOrNull(
|
final walletInfo = walletInfoSource.values
|
||||||
(info) => info.id == WalletBase.idFor(name, getType()))!;
|
.firstWhereOrNull((info) => info.id == WalletBase.idFor(name, getType()))!;
|
||||||
final wallet = await LitecoinWalletBase.open(
|
final wallet = await LitecoinWalletBase.open(
|
||||||
password: password, name: name, walletInfo: walletInfo,
|
password: password, name: name, walletInfo: walletInfo,
|
||||||
unspentCoinsInfo: unspentCoinsInfoSource,
|
unspentCoinsInfo: unspentCoinsInfoSource,
|
||||||
|
@ -58,22 +60,23 @@ class LitecoinWalletService extends WalletService<
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Future<void> remove(String wallet) async {
|
Future<void> remove(String wallet) async {
|
||||||
File(await pathForWalletDir(name: wallet, type: getType()))
|
File(await pathForWalletDir(name: wallet, type: getType())).delete(recursive: true);
|
||||||
.delete(recursive: true);
|
final walletInfo = walletInfoSource.values
|
||||||
final walletInfo = walletInfoSource.values.firstWhereOrNull(
|
.firstWhereOrNull((info) => info.id == WalletBase.idFor(wallet, getType()))!;
|
||||||
(info) => info.id == WalletBase.idFor(wallet, getType()))!;
|
|
||||||
await walletInfoSource.delete(walletInfo.key);
|
await walletInfoSource.delete(walletInfo.key);
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Future<void> rename(String currentName, String password, String newName) async {
|
Future<void> rename(String currentName, String password, String newName) async {
|
||||||
final currentWalletInfo = walletInfoSource.values.firstWhereOrNull(
|
final currentWalletInfo = walletInfoSource.values
|
||||||
(info) => info.id == WalletBase.idFor(currentName, getType()))!;
|
.firstWhereOrNull((info) => info.id == WalletBase.idFor(currentName, getType()))!;
|
||||||
final currentWallet = await LitecoinWalletBase.open(
|
final currentWallet = await LitecoinWalletBase.open(
|
||||||
password: password,
|
password: password,
|
||||||
name: currentName,
|
name: currentName,
|
||||||
walletInfo: currentWalletInfo,
|
walletInfo: currentWalletInfo,
|
||||||
unspentCoinsInfo: unspentCoinsInfoSource);
|
unspentCoinsInfo: unspentCoinsInfoSource,
|
||||||
|
encryptionFileUtils: encryptionFileUtilsFor(isDirect),
|
||||||
|
);
|
||||||
|
|
||||||
await currentWallet.renameWalletFiles(newName);
|
await currentWallet.renameWalletFiles(newName);
|
||||||
|
|
||||||
|
|
|
@ -52,6 +52,7 @@ abstract class MoneroWalletBase extends WalletBase<MoneroBalance,
|
||||||
_hasSyncAfterStartup = false,
|
_hasSyncAfterStartup = false,
|
||||||
isEnabledAutoGenerateSubaddress = false,
|
isEnabledAutoGenerateSubaddress = false,
|
||||||
_password = password,
|
_password = password,
|
||||||
|
walletAddresses = MoneroWalletAddresses(walletInfo),
|
||||||
syncStatus = NotConnectedSyncStatus(),
|
syncStatus = NotConnectedSyncStatus(),
|
||||||
unspentCoins = [],
|
unspentCoins = [],
|
||||||
this.unspentCoinsInfo = unspentCoinsInfo,
|
this.unspentCoinsInfo = unspentCoinsInfo,
|
||||||
|
|
|
@ -13,8 +13,7 @@ import 'package:cake_wallet/.secrets.g.dart' as secrets;
|
||||||
import 'package:cw_core/crypto_currency.dart';
|
import 'package:cw_core/crypto_currency.dart';
|
||||||
|
|
||||||
class MoonPaySellProvider {
|
class MoonPaySellProvider {
|
||||||
MoonPaySellProvider({this.isTest = false})
|
MoonPaySellProvider({this.isTest = false}) : baseUrl = isTest ? _baseTestUrl : _baseProductUrl;
|
||||||
: baseUrl = isTest ? _baseTestUrl : _baseProductUrl;
|
|
||||||
|
|
||||||
static const _baseTestUrl = 'sell-staging.moonpay.com';
|
static const _baseTestUrl = 'sell-staging.moonpay.com';
|
||||||
static const _baseProductUrl = 'sell.moonpay.com';
|
static const _baseProductUrl = 'sell.moonpay.com';
|
||||||
|
@ -68,8 +67,7 @@ class MoonPayBuyProvider extends BuyProvider {
|
||||||
@override
|
@override
|
||||||
BuyProviderDescription get description => BuyProviderDescription.moonPay;
|
BuyProviderDescription get description => BuyProviderDescription.moonPay;
|
||||||
|
|
||||||
String get currencyCode =>
|
String get currencyCode => walletTypeToCryptoCurrency(walletType).title.toLowerCase();
|
||||||
walletTypeToCryptoCurrency(walletType).title.toLowerCase();
|
|
||||||
|
|
||||||
@override
|
@override
|
||||||
String get trackUrl => baseUrl + '/transaction_receipt?transactionId=';
|
String get trackUrl => baseUrl + '/transaction_receipt?transactionId=';
|
||||||
|
@ -78,16 +76,24 @@ class MoonPayBuyProvider extends BuyProvider {
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Future<String> requestUrl(String amount, String sourceCurrency) async {
|
Future<String> requestUrl(String amount, String sourceCurrency) async {
|
||||||
final enabledPaymentMethods =
|
final enabledPaymentMethods = 'credit_debit_card%2Capple_pay%2Cgoogle_pay%2Csamsung_pay'
|
||||||
'credit_debit_card%2Capple_pay%2Cgoogle_pay%2Csamsung_pay'
|
|
||||||
'%2Csepa_bank_transfer%2Cgbp_bank_transfer%2Cgbp_open_banking_payment';
|
'%2Csepa_bank_transfer%2Cgbp_bank_transfer%2Cgbp_open_banking_payment';
|
||||||
|
|
||||||
final suffix = '?apiKey=' + _apiKey + '¤cyCode=' +
|
final suffix = '?apiKey=' +
|
||||||
currencyCode + '&enabledPaymentMethods=' + enabledPaymentMethods +
|
_apiKey +
|
||||||
'&walletAddress=' + walletAddress +
|
'¤cyCode=' +
|
||||||
'&baseCurrencyCode=' + sourceCurrency.toLowerCase() +
|
currencyCode +
|
||||||
'&baseCurrencyAmount=' + amount + '&lockAmount=true' +
|
'&enabledPaymentMethods=' +
|
||||||
'&showAllCurrencies=false' + '&showWalletAddressForm=false';
|
enabledPaymentMethods +
|
||||||
|
'&walletAddress=' +
|
||||||
|
walletAddress +
|
||||||
|
'&baseCurrencyCode=' +
|
||||||
|
sourceCurrency.toLowerCase() +
|
||||||
|
'&baseCurrencyAmount=' +
|
||||||
|
amount +
|
||||||
|
'&lockAmount=true' +
|
||||||
|
'&showAllCurrencies=false' +
|
||||||
|
'&showWalletAddressForm=false';
|
||||||
|
|
||||||
final originalUrl = baseUrl + suffix;
|
final originalUrl = baseUrl + suffix;
|
||||||
|
|
||||||
|
@ -96,25 +102,28 @@ class MoonPayBuyProvider extends BuyProvider {
|
||||||
final hmac = Hmac(sha256, key);
|
final hmac = Hmac(sha256, key);
|
||||||
final digest = hmac.convert(messageBytes);
|
final digest = hmac.convert(messageBytes);
|
||||||
final signature = base64.encode(digest.bytes);
|
final signature = base64.encode(digest.bytes);
|
||||||
final urlWithSignature = originalUrl +
|
final urlWithSignature = originalUrl + '&signature=${Uri.encodeComponent(signature)}';
|
||||||
'&signature=${Uri.encodeComponent(signature)}';
|
|
||||||
|
|
||||||
return isTestEnvironment ? originalUrl : urlWithSignature;
|
return isTestEnvironment ? originalUrl : urlWithSignature;
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Future<BuyAmount> calculateAmount(String amount, String sourceCurrency) async {
|
Future<BuyAmount> calculateAmount(String amount, String sourceCurrency) async {
|
||||||
final url = _apiUrl + _currenciesSuffix + '/$currencyCode' +
|
final url = _apiUrl +
|
||||||
_quoteSuffix + '/?apiKey=' + _apiKey +
|
_currenciesSuffix +
|
||||||
'&baseCurrencyAmount=' + amount +
|
'/$currencyCode' +
|
||||||
'&baseCurrencyCode=' + sourceCurrency.toLowerCase();
|
_quoteSuffix +
|
||||||
|
'/?apiKey=' +
|
||||||
|
_apiKey +
|
||||||
|
'&baseCurrencyAmount=' +
|
||||||
|
amount +
|
||||||
|
'&baseCurrencyCode=' +
|
||||||
|
sourceCurrency.toLowerCase();
|
||||||
final uri = Uri.parse(url);
|
final uri = Uri.parse(url);
|
||||||
final response = await get(uri);
|
final response = await get(uri);
|
||||||
|
|
||||||
if (response.statusCode != 200) {
|
if (response.statusCode != 200) {
|
||||||
throw BuyException(
|
throw BuyException(description: description, text: 'Quote is not found!');
|
||||||
description: description,
|
|
||||||
text: 'Quote is not found!');
|
|
||||||
}
|
}
|
||||||
|
|
||||||
final responseJSON = json.decode(response.body) as Map<String, dynamic>;
|
final responseJSON = json.decode(response.body) as Map<String, dynamic>;
|
||||||
|
@ -123,22 +132,17 @@ class MoonPayBuyProvider extends BuyProvider {
|
||||||
final minSourceAmount = responseJSON['baseCurrency']['minAmount'] as int;
|
final minSourceAmount = responseJSON['baseCurrency']['minAmount'] as int;
|
||||||
|
|
||||||
return BuyAmount(
|
return BuyAmount(
|
||||||
sourceAmount: sourceAmount,
|
sourceAmount: sourceAmount, destAmount: destAmount, minAmount: minSourceAmount);
|
||||||
destAmount: destAmount,
|
|
||||||
minAmount: minSourceAmount);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Future<Order> findOrderById(String id) async {
|
Future<Order> findOrderById(String id) async {
|
||||||
final url = _apiUrl + _transactionsSuffix + '/$id' +
|
final url = _apiUrl + _transactionsSuffix + '/$id' + '?apiKey=' + _apiKey;
|
||||||
'?apiKey=' + _apiKey;
|
|
||||||
final uri = Uri.parse(url);
|
final uri = Uri.parse(url);
|
||||||
final response = await get(uri);
|
final response = await get(uri);
|
||||||
|
|
||||||
if (response.statusCode != 200) {
|
if (response.statusCode != 200) {
|
||||||
throw BuyException(
|
throw BuyException(description: description, text: 'Transaction $id is not found!');
|
||||||
description: description,
|
|
||||||
text: 'Transaction $id is not found!');
|
|
||||||
}
|
}
|
||||||
|
|
||||||
final responseJSON = json.decode(response.body) as Map<String, dynamic>;
|
final responseJSON = json.decode(response.body) as Map<String, dynamic>;
|
||||||
|
@ -156,8 +160,7 @@ class MoonPayBuyProvider extends BuyProvider {
|
||||||
createdAt: createdAt,
|
createdAt: createdAt,
|
||||||
amount: amount.toString(),
|
amount: amount.toString(),
|
||||||
receiveAddress: walletAddress,
|
receiveAddress: walletAddress,
|
||||||
walletId: walletId
|
walletId: walletId);
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static Future<bool> onEnabled() async {
|
static Future<bool> onEnabled() async {
|
||||||
|
|
|
@ -4,6 +4,7 @@ import 'package:cake_wallet/src/screens/auth/auth_page.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:mobx/mobx.dart';
|
import 'package:mobx/mobx.dart';
|
||||||
import 'package:cake_wallet/core/secure_storage.dart';
|
import 'package:cake_wallet/core/secure_storage.dart';
|
||||||
|
import 'package:cake_wallet/core/secure_storage.dart';
|
||||||
import 'package:shared_preferences/shared_preferences.dart';
|
import 'package:shared_preferences/shared_preferences.dart';
|
||||||
import 'package:cake_wallet/entities/preferences_key.dart';
|
import 'package:cake_wallet/entities/preferences_key.dart';
|
||||||
import 'package:cake_wallet/entities/secret_store_key.dart';
|
import 'package:cake_wallet/entities/secret_store_key.dart';
|
||||||
|
|
|
@ -16,14 +16,13 @@ class WalletLoadingService {
|
||||||
final KeyService keyService;
|
final KeyService keyService;
|
||||||
final WalletService Function(WalletType type) walletServiceFactory;
|
final WalletService Function(WalletType type) walletServiceFactory;
|
||||||
|
|
||||||
Future<void> renameWallet(
|
Future<void> renameWallet(WalletType type, String name, String newName,
|
||||||
WalletType type, String name, String newName) async {
|
{String? password}) async {
|
||||||
final walletService = walletServiceFactory.call(type);
|
final walletService = walletServiceFactory.call(type);
|
||||||
final password = await keyService.getWalletPassword(walletName: name);
|
final walletPassword = password ?? (await keyService.getWalletPassword(walletName: name));
|
||||||
|
|
||||||
// Save the current wallet's password to the new wallet name's key
|
// Save the current wallet's password to the new wallet name's key
|
||||||
await keyService.saveWalletPassword(
|
await keyService.saveWalletPassword(walletName: newName, password: walletPassword);
|
||||||
walletName: newName, password: password);
|
|
||||||
// Delete previous wallet name from keyService to keep only new wallet's name
|
// Delete previous wallet name from keyService to keep only new wallet's name
|
||||||
// otherwise keeps duplicate (old and new names)
|
// otherwise keeps duplicate (old and new names)
|
||||||
await keyService.deleteWalletPassword(walletName: name);
|
await keyService.deleteWalletPassword(walletName: name);
|
||||||
|
@ -85,11 +84,9 @@ class WalletLoadingService {
|
||||||
// Save new generated password with backup key for case where
|
// Save new generated password with backup key for case where
|
||||||
// wallet will change password, but it will fail to update in secure storage
|
// wallet will change password, but it will fail to update in secure storage
|
||||||
final bakWalletName = '#__${wallet.name}_bak__#';
|
final bakWalletName = '#__${wallet.name}_bak__#';
|
||||||
await keyService.saveWalletPassword(
|
await keyService.saveWalletPassword(walletName: bakWalletName, password: password);
|
||||||
walletName: bakWalletName, password: password);
|
|
||||||
await wallet.changePassword(password);
|
await wallet.changePassword(password);
|
||||||
await keyService.saveWalletPassword(
|
await keyService.saveWalletPassword(walletName: wallet.name, password: password);
|
||||||
walletName: wallet.name, password: password);
|
|
||||||
isPasswordUpdated = true;
|
isPasswordUpdated = true;
|
||||||
await sharedPreferences.setBool(key, isPasswordUpdated);
|
await sharedPreferences.setBool(key, isPasswordUpdated);
|
||||||
}
|
}
|
||||||
|
|
10
lib/di.dart
10
lib/di.dart
|
@ -7,13 +7,11 @@ import 'package:cake_wallet/entities/preferences_key.dart';
|
||||||
import 'package:cake_wallet/anonpay/anonpay_api.dart';
|
import 'package:cake_wallet/anonpay/anonpay_api.dart';
|
||||||
import 'package:cake_wallet/anonpay/anonpay_info_base.dart';
|
import 'package:cake_wallet/anonpay/anonpay_info_base.dart';
|
||||||
import 'package:cake_wallet/anonpay/anonpay_invoice_info.dart';
|
import 'package:cake_wallet/anonpay/anonpay_invoice_info.dart';
|
||||||
import 'package:cake_wallet/buy/onramper/onramper_buy_provider.dart';
|
|
||||||
import 'package:cake_wallet/buy/payfura/payfura_buy_provider.dart';
|
import 'package:cake_wallet/buy/payfura/payfura_buy_provider.dart';
|
||||||
import 'package:cake_wallet/core/yat_service.dart';
|
import 'package:cake_wallet/core/yat_service.dart';
|
||||||
import 'package:cake_wallet/entities/background_tasks.dart';
|
import 'package:cake_wallet/entities/background_tasks.dart';
|
||||||
import 'package:cake_wallet/entities/auto_generate_subaddress_status.dart';
|
import 'package:cake_wallet/entities/auto_generate_subaddress_status.dart';
|
||||||
import 'package:cake_wallet/entities/exchange_api_mode.dart';
|
import 'package:cake_wallet/entities/exchange_api_mode.dart';
|
||||||
import 'package:cake_wallet/entities/parse_address_from_domain.dart';
|
|
||||||
import 'package:cake_wallet/entities/receive_page_option.dart';
|
import 'package:cake_wallet/entities/receive_page_option.dart';
|
||||||
import 'package:cake_wallet/ethereum/ethereum.dart';
|
import 'package:cake_wallet/ethereum/ethereum.dart';
|
||||||
import 'package:cake_wallet/ionia/ionia_anypay.dart';
|
import 'package:cake_wallet/ionia/ionia_anypay.dart';
|
||||||
|
@ -30,6 +28,8 @@ import 'package:cake_wallet/src/screens/dashboard/desktop_widgets/desktop_wallet
|
||||||
import 'package:cake_wallet/src/screens/dashboard/edit_token_page.dart';
|
import 'package:cake_wallet/src/screens/dashboard/edit_token_page.dart';
|
||||||
import 'package:cake_wallet/src/screens/dashboard/home_settings_page.dart';
|
import 'package:cake_wallet/src/screens/dashboard/home_settings_page.dart';
|
||||||
import 'package:cake_wallet/src/screens/dashboard/widgets/transactions_page.dart';
|
import 'package:cake_wallet/src/screens/dashboard/widgets/transactions_page.dart';
|
||||||
|
import 'package:cake_wallet/src/screens/dashboard/desktop_dashboard_page.dart';
|
||||||
|
import 'package:cake_wallet/src/screens/dashboard/desktop_widgets/desktop_sidebar_wrapper.dart';
|
||||||
import 'package:cake_wallet/src/screens/receive/anonpay_invoice_page.dart';
|
import 'package:cake_wallet/src/screens/receive/anonpay_invoice_page.dart';
|
||||||
import 'package:cake_wallet/src/screens/receive/anonpay_receive_page.dart';
|
import 'package:cake_wallet/src/screens/receive/anonpay_receive_page.dart';
|
||||||
import 'package:cake_wallet/src/screens/settings/display_settings_page.dart';
|
import 'package:cake_wallet/src/screens/settings/display_settings_page.dart';
|
||||||
|
@ -45,6 +45,10 @@ import 'package:cake_wallet/src/screens/wallet_unlock/wallet_unlock_arguments.da
|
||||||
import 'package:cake_wallet/themes/theme_list.dart';
|
import 'package:cake_wallet/themes/theme_list.dart';
|
||||||
import 'package:cake_wallet/utils/payment_request.dart';
|
import 'package:cake_wallet/utils/payment_request.dart';
|
||||||
import 'package:cake_wallet/view_model/dashboard/desktop_sidebar_view_model.dart';
|
import 'package:cake_wallet/view_model/dashboard/desktop_sidebar_view_model.dart';
|
||||||
|
import 'package:cake_wallet/src/screens/wallet_unlock/wallet_unlock_arguments.dart';
|
||||||
|
import 'package:cake_wallet/themes/theme_list.dart';
|
||||||
|
import 'package:cake_wallet/utils/payment_request.dart';
|
||||||
|
import 'package:cake_wallet/view_model/dashboard/desktop_sidebar_view_model.dart';
|
||||||
import 'package:cake_wallet/src/screens/setup_2fa/modify_2fa_page.dart';
|
import 'package:cake_wallet/src/screens/setup_2fa/modify_2fa_page.dart';
|
||||||
import 'package:cake_wallet/src/screens/setup_2fa/setup_2fa_qr_page.dart';
|
import 'package:cake_wallet/src/screens/setup_2fa/setup_2fa_qr_page.dart';
|
||||||
import 'package:cake_wallet/src/screens/setup_2fa/setup_2fa.dart';
|
import 'package:cake_wallet/src/screens/setup_2fa/setup_2fa.dart';
|
||||||
|
@ -52,7 +56,6 @@ import 'package:cake_wallet/src/screens/setup_2fa/setup_2fa_enter_code_page.dart
|
||||||
import 'package:cake_wallet/src/screens/support_chat/support_chat_page.dart';
|
import 'package:cake_wallet/src/screens/support_chat/support_chat_page.dart';
|
||||||
import 'package:cake_wallet/src/screens/support_other_links/support_other_links_page.dart';
|
import 'package:cake_wallet/src/screens/support_other_links/support_other_links_page.dart';
|
||||||
import 'package:cake_wallet/src/screens/wallet/wallet_edit_page.dart';
|
import 'package:cake_wallet/src/screens/wallet/wallet_edit_page.dart';
|
||||||
import 'package:cake_wallet/themes/theme_list.dart';
|
|
||||||
import 'package:cake_wallet/utils/device_info.dart';
|
import 'package:cake_wallet/utils/device_info.dart';
|
||||||
import 'package:cake_wallet/store/anonpay/anonpay_transactions_store.dart';
|
import 'package:cake_wallet/store/anonpay/anonpay_transactions_store.dart';
|
||||||
import 'package:cake_wallet/utils/payment_request.dart';
|
import 'package:cake_wallet/utils/payment_request.dart';
|
||||||
|
@ -217,6 +220,7 @@ import 'package:cake_wallet/src/screens/receive/fullscreen_qr_page.dart';
|
||||||
import 'package:cake_wallet/core/wallet_loading_service.dart';
|
import 'package:cake_wallet/core/wallet_loading_service.dart';
|
||||||
import 'package:cw_core/crypto_currency.dart';
|
import 'package:cw_core/crypto_currency.dart';
|
||||||
import 'package:cake_wallet/src/screens/wallet_unlock/wallet_unlock_page.dart';
|
import 'package:cake_wallet/src/screens/wallet_unlock/wallet_unlock_page.dart';
|
||||||
|
import 'package:cake_wallet/src/screens/wallet_unlock/wallet_unlock_page.dart';
|
||||||
import 'package:cake_wallet/entities/qr_view_data.dart';
|
import 'package:cake_wallet/entities/qr_view_data.dart';
|
||||||
|
|
||||||
import 'core/totp_request_details.dart';
|
import 'core/totp_request_details.dart';
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import 'package:cake_wallet/buy/moonpay/moonpay_buy_provider.dart';
|
import 'package:cake_wallet/buy/moonpay/moonpay_buy_provider.dart';
|
||||||
import 'package:cake_wallet/buy/onramper/onramper_buy_provider.dart';
|
import 'package:cake_wallet/buy/onramper/onramper_buy_provider.dart';
|
||||||
|
import 'package:cake_wallet/buy/payfura/payfura_buy_provider.dart';
|
||||||
import 'package:cake_wallet/di.dart';
|
import 'package:cake_wallet/di.dart';
|
||||||
import 'package:cake_wallet/generated/i18n.dart';
|
import 'package:cake_wallet/generated/i18n.dart';
|
||||||
import 'package:cake_wallet/routes.dart';
|
import 'package:cake_wallet/routes.dart';
|
||||||
|
|
|
@ -85,6 +85,7 @@ class Routes {
|
||||||
static const anonPayInvoicePage = '/anon_pay_invoice_page';
|
static const anonPayInvoicePage = '/anon_pay_invoice_page';
|
||||||
static const anonPayReceivePage = '/anon_pay_receive_page';
|
static const anonPayReceivePage = '/anon_pay_receive_page';
|
||||||
static const anonPayDetailsPage = '/anon_pay_details_page';
|
static const anonPayDetailsPage = '/anon_pay_details_page';
|
||||||
|
static const payfuraPage = '/pay_fura_page';
|
||||||
static const desktop_actions = '/desktop_actions';
|
static const desktop_actions = '/desktop_actions';
|
||||||
static const transactionsPage = '/transactions_page';
|
static const transactionsPage = '/transactions_page';
|
||||||
static const setup_2faPage = '/setup_2fa_page';
|
static const setup_2faPage = '/setup_2fa_page';
|
||||||
|
|
58
lib/src/screens/buy/payfura_page.dart
Normal file
58
lib/src/screens/buy/payfura_page.dart
Normal file
|
@ -0,0 +1,58 @@
|
||||||
|
import 'package:cake_wallet/buy/payfura/payfura_buy_provider.dart';
|
||||||
|
import 'package:cake_wallet/generated/i18n.dart';
|
||||||
|
import 'package:cake_wallet/src/screens/base_page.dart';
|
||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:flutter_inappwebview/flutter_inappwebview.dart';
|
||||||
|
import 'package:permission_handler/permission_handler.dart';
|
||||||
|
|
||||||
|
class PayFuraPage extends BasePage {
|
||||||
|
PayFuraPage(this._PayfuraBuyProvider);
|
||||||
|
|
||||||
|
final PayfuraBuyProvider _PayfuraBuyProvider;
|
||||||
|
|
||||||
|
@override
|
||||||
|
String get title => S.current.buy;
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget body(BuildContext context) {
|
||||||
|
return PayFuraPageBody(_PayfuraBuyProvider);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class PayFuraPageBody extends StatefulWidget {
|
||||||
|
PayFuraPageBody(this._PayfuraBuyProvider);
|
||||||
|
|
||||||
|
final PayfuraBuyProvider _PayfuraBuyProvider;
|
||||||
|
|
||||||
|
Uri get uri => _PayfuraBuyProvider.requestUrl();
|
||||||
|
|
||||||
|
@override
|
||||||
|
PayFuraPageBodyState createState() => PayFuraPageBodyState();
|
||||||
|
}
|
||||||
|
|
||||||
|
class PayFuraPageBodyState extends State<PayFuraPageBody> {
|
||||||
|
PayFuraPageBodyState();
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
return InAppWebView(
|
||||||
|
initialOptions: InAppWebViewGroupOptions(
|
||||||
|
crossPlatform: InAppWebViewOptions(transparentBackground: true),
|
||||||
|
),
|
||||||
|
initialUrlRequest: URLRequest(url: widget.uri),
|
||||||
|
androidOnPermissionRequest: (_, __, resources) async {
|
||||||
|
bool permissionGranted = await Permission.camera.status == PermissionStatus.granted;
|
||||||
|
if (!permissionGranted) {
|
||||||
|
permissionGranted = await Permission.camera.request().isGranted;
|
||||||
|
}
|
||||||
|
|
||||||
|
return PermissionRequestResponse(
|
||||||
|
resources: resources,
|
||||||
|
action: permissionGranted
|
||||||
|
? PermissionRequestResponseAction.GRANT
|
||||||
|
: PermissionRequestResponseAction.DENY,
|
||||||
|
);
|
||||||
|
},
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
|
@ -41,9 +41,11 @@ class TransactionsPage extends StatelessWidget {
|
||||||
return Padding(
|
return Padding(
|
||||||
padding: const EdgeInsets.fromLTRB(24, 0, 24, 8),
|
padding: const EdgeInsets.fromLTRB(24, 0, 24, 8),
|
||||||
child: DashBoardRoundedCardWidget(
|
child: DashBoardRoundedCardWidget(
|
||||||
onTap: () => Navigator.of(context).pushNamed(
|
onTap: () => Navigator.of(context).pushNamed(Routes.webViewPage, arguments: [
|
||||||
Routes.webViewPage,
|
'',
|
||||||
arguments: ['', Uri.parse('https://guides.cakewallet.com/docs/bugs-service-status/why_are_my_funds_not_appearing/')]),
|
Uri.parse(
|
||||||
|
'https://guides.cakewallet.com/docs/bugs-service-status/why_are_my_funds_not_appearing/')
|
||||||
|
]),
|
||||||
title: S.of(context).syncing_wallet_alert_title,
|
title: S.of(context).syncing_wallet_alert_title,
|
||||||
subTitle: S.of(context).syncing_wallet_alert_content,
|
subTitle: S.of(context).syncing_wallet_alert_content,
|
||||||
),
|
),
|
||||||
|
|
|
@ -398,8 +398,82 @@ class SendPage extends BasePage {
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
],
|
],
|
||||||
)),
|
|
||||||
),
|
),
|
||||||
|
),
|
||||||
|
bottomSectionPadding:
|
||||||
|
EdgeInsets.only(left: 24, right: 24, bottom: 24),
|
||||||
|
bottomSection: Column(
|
||||||
|
children: [
|
||||||
|
if (sendViewModel.hasCurrecyChanger)
|
||||||
|
Observer(builder: (_) =>
|
||||||
|
Padding(
|
||||||
|
padding: EdgeInsets.only(bottom: 12),
|
||||||
|
child: PrimaryButton(
|
||||||
|
onPressed: () => presentCurrencyPicker(context),
|
||||||
|
text: 'Change your asset (${sendViewModel.selectedCryptoCurrency})',
|
||||||
|
color: Colors.transparent,
|
||||||
|
textColor: Theme.of(context)
|
||||||
|
.accentTextTheme!.displaySmall!
|
||||||
|
.decorationColor!,
|
||||||
|
)
|
||||||
|
)
|
||||||
|
),
|
||||||
|
if (sendViewModel.hasMultiRecipient)
|
||||||
|
Padding(
|
||||||
|
padding: EdgeInsets.only(bottom: 12),
|
||||||
|
child: PrimaryButton(
|
||||||
|
onPressed: () {
|
||||||
|
sendViewModel.addOutput();
|
||||||
|
Future.delayed(const Duration(milliseconds: 250), () {
|
||||||
|
controller.jumpToPage(sendViewModel.outputs.length - 1);
|
||||||
|
});
|
||||||
|
},
|
||||||
|
text: S.of(context).add_receiver,
|
||||||
|
color: Colors.transparent,
|
||||||
|
textColor: Theme.of(context)
|
||||||
|
.accentTextTheme!.displaySmall!
|
||||||
|
.decorationColor!,
|
||||||
|
isDottedBorder: true,
|
||||||
|
borderColor: Theme.of(context)
|
||||||
|
.primaryTextTheme!.displaySmall!
|
||||||
|
.decorationColor!,
|
||||||
|
)),
|
||||||
|
Observer(
|
||||||
|
builder: (_) {
|
||||||
|
return LoadingPrimaryButton(
|
||||||
|
onPressed: () async {
|
||||||
|
if (_formKey.currentState != null && !_formKey.currentState!.validate()) {
|
||||||
|
if (sendViewModel.outputs.length > 1) {
|
||||||
|
showErrorValidationAlert(context);
|
||||||
|
}
|
||||||
|
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
final notValidItems = sendViewModel.outputs
|
||||||
|
.where((item) =>
|
||||||
|
item.address.isEmpty || item.cryptoAmount.isEmpty)
|
||||||
|
.toList();
|
||||||
|
|
||||||
|
if (notValidItems.isNotEmpty ?? false) {
|
||||||
|
showErrorValidationAlert(context);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
await sendViewModel.createTransaction();
|
||||||
|
|
||||||
|
},
|
||||||
|
text: S.of(context).send,
|
||||||
|
color: Theme.of(context).accentTextTheme!.bodyLarge!.color!,
|
||||||
|
textColor: Colors.white,
|
||||||
|
isLoading: sendViewModel.state is IsExecutingState ||
|
||||||
|
sendViewModel.state is TransactionCommitting,
|
||||||
|
isDisabled: !sendViewModel.isReadyForSend,
|
||||||
|
);
|
||||||
|
},
|
||||||
|
)
|
||||||
|
],
|
||||||
|
)),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -48,13 +48,15 @@ class TotpAuthCodePageState extends State<TotpAuthCodePage> {
|
||||||
_reaction ??= reaction((_) => widget.setup2FAViewModel.state,
|
_reaction ??= reaction((_) => widget.setup2FAViewModel.state,
|
||||||
(ExecutionState state) {
|
(ExecutionState state) {
|
||||||
WidgetsBinding.instance.addPostFrameCallback((_) {
|
WidgetsBinding.instance.addPostFrameCallback((_) {
|
||||||
if (state is ExecutedSuccessfullyState) {
|
|
||||||
widget.totpArguments.onTotpAuthenticationFinished!(true, this);
|
widget.totpArguments.onTotpAuthenticationFinished!(true, this);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
if (state is FailureState) {
|
if (state is FailureState) {
|
||||||
print(state.error);
|
print(state.error);
|
||||||
|
WidgetsBinding.instance.addPostFrameCallback((_) {
|
||||||
widget.totpArguments.onTotpAuthenticationFinished!(false, this);
|
widget.totpArguments.onTotpAuthenticationFinished!(false, this);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
if (state is AuthenticationBanned) {
|
if (state is AuthenticationBanned) {
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
import 'dart:io';
|
import 'dart:io';
|
||||||
import 'package:package_info/package_info.dart';
|
import 'package:package_info_plus/package_info_plus.dart';
|
||||||
|
|
||||||
enum DistributionType { googleplay, github, appstore, fdroid }
|
enum DistributionType { googleplay, github, appstore, fdroid }
|
||||||
|
|
||||||
|
|
|
@ -133,10 +133,10 @@ class ExceptionHandler {
|
||||||
static const List<String> _ignoredErrors = const [
|
static const List<String> _ignoredErrors = const [
|
||||||
"errno = 9", // SocketException: Bad file descriptor
|
"errno = 9", // SocketException: Bad file descriptor
|
||||||
"errno = 28", // OS Error: No space left on device
|
"errno = 28", // OS Error: No space left on device
|
||||||
"errno = 32", // SocketException: OS Error: Broken pipe
|
"errno = 32", // SocketException: Write failed (OS Error: Broken pipe)
|
||||||
"errno = 49", // SocketException: Can't assign requested address
|
"errno = 49", // SocketException: Can't assign requested address
|
||||||
"errno = 54", // SocketException: Connection reset by peer
|
"errno = 54", // SocketException: Connection reset by peer
|
||||||
"errno = 57", // SocketException: OS Error: Socket is not connected
|
"errno = 57", // SocketException: Read failed (OS Error: Socket is not connected)
|
||||||
"errno = 60", // SocketException: Operation timed out
|
"errno = 60", // SocketException: Operation timed out
|
||||||
"errno = 65", // SocketException: No route to host
|
"errno = 65", // SocketException: No route to host
|
||||||
"errno = 103", // SocketException: Software caused connection abort
|
"errno = 103", // SocketException: Software caused connection abort
|
||||||
|
|
|
@ -9,7 +9,6 @@ import connectivity_macos
|
||||||
import cw_monero
|
import cw_monero
|
||||||
import device_info_plus
|
import device_info_plus
|
||||||
import devicelocale
|
import devicelocale
|
||||||
import flutter_secure_storage_macos
|
|
||||||
import in_app_review
|
import in_app_review
|
||||||
import package_info_plus
|
import package_info_plus
|
||||||
import path_provider_foundation
|
import path_provider_foundation
|
||||||
|
@ -25,7 +24,6 @@ func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) {
|
||||||
CwMoneroPlugin.register(with: registry.registrar(forPlugin: "CwMoneroPlugin"))
|
CwMoneroPlugin.register(with: registry.registrar(forPlugin: "CwMoneroPlugin"))
|
||||||
DeviceInfoPlusMacosPlugin.register(with: registry.registrar(forPlugin: "DeviceInfoPlusMacosPlugin"))
|
DeviceInfoPlusMacosPlugin.register(with: registry.registrar(forPlugin: "DeviceInfoPlusMacosPlugin"))
|
||||||
DevicelocalePlugin.register(with: registry.registrar(forPlugin: "DevicelocalePlugin"))
|
DevicelocalePlugin.register(with: registry.registrar(forPlugin: "DevicelocalePlugin"))
|
||||||
FlutterSecureStoragePlugin.register(with: registry.registrar(forPlugin: "FlutterSecureStoragePlugin"))
|
|
||||||
InAppReviewPlugin.register(with: registry.registrar(forPlugin: "InAppReviewPlugin"))
|
InAppReviewPlugin.register(with: registry.registrar(forPlugin: "InAppReviewPlugin"))
|
||||||
FLTPackageInfoPlusPlugin.register(with: registry.registrar(forPlugin: "FLTPackageInfoPlusPlugin"))
|
FLTPackageInfoPlusPlugin.register(with: registry.registrar(forPlugin: "FLTPackageInfoPlusPlugin"))
|
||||||
PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin"))
|
PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin"))
|
||||||
|
|
|
@ -322,6 +322,12 @@
|
||||||
"trade_state_timeout": "نفذ الوقت",
|
"trade_state_timeout": "نفذ الوقت",
|
||||||
"trade_state_created": "تم الأنشاء",
|
"trade_state_created": "تم الأنشاء",
|
||||||
"trade_state_finished": "تم",
|
"trade_state_finished": "تم",
|
||||||
|
"invalid_password": "رمز مرور خاطئ",
|
||||||
|
"unlock": "الغاء القفل",
|
||||||
|
"enter_wallet_password": "أدخل كلمة مرور المحفظة",
|
||||||
|
"repeate_wallet_password": "كرر كلمة مرور المحفظة",
|
||||||
|
"wallet_password_is_empty": "كلمة مرور المحفظة فارغة. يجب ألا تكون كلمة مرور المحفظة فارغة",
|
||||||
|
"repeated_password_is_incorrect": "كلمة المرور المتكررة غير صحيحة. يرجى إعادة كلمة مرور المحفظة مرة أخرى.",
|
||||||
"change_language": "تغيير اللغة",
|
"change_language": "تغيير اللغة",
|
||||||
"change_language_to": "هل تريد تغيير اللغة إلى ${language}؟",
|
"change_language_to": "هل تريد تغيير اللغة إلى ${language}؟",
|
||||||
"paste": "لصق",
|
"paste": "لصق",
|
||||||
|
@ -339,6 +345,12 @@
|
||||||
"template": "قالب",
|
"template": "قالب",
|
||||||
"confirm_delete_template": "سيؤدي هذا الإجراء إلى حذف هذا القالب. هل ترغب في الاستمرار؟",
|
"confirm_delete_template": "سيؤدي هذا الإجراء إلى حذف هذا القالب. هل ترغب في الاستمرار؟",
|
||||||
"confirm_delete_wallet": "سيؤدي هذا الإجراء إلى حذف هذه المحفظة. هل ترغب في الاستمرار؟",
|
"confirm_delete_wallet": "سيؤدي هذا الإجراء إلى حذف هذه المحفظة. هل ترغب في الاستمرار؟",
|
||||||
|
"invalid_password": "رمز مرور خاطئ",
|
||||||
|
"unlock": "الغاء القفل",
|
||||||
|
"enter_wallet_password": "أدخل كلمة مرور المحفظة",
|
||||||
|
"repeate_wallet_password": "كرر كلمة مرور المحفظة",
|
||||||
|
"wallet_password_is_empty": "كلمة مرور المحفظة فارغة. يجب ألا تكون كلمة مرور المحفظة فارغة",
|
||||||
|
"repeated_password_is_incorrect": "كلمة المرور المتكررة غير صحيحة. يرجى إعادة كلمة مرور المحفظة مرة أخرى.",
|
||||||
"picker_description": "لاختيار ChangeNOW أو MorphToken ، يرجى تغيير زوج التداول الخاص بك أولاً",
|
"picker_description": "لاختيار ChangeNOW أو MorphToken ، يرجى تغيير زوج التداول الخاص بك أولاً",
|
||||||
"change_wallet_alert_title": "تغيير المحفظة الحالية",
|
"change_wallet_alert_title": "تغيير المحفظة الحالية",
|
||||||
"change_wallet_alert_content": "هل تريد تغيير المحفظة الحالية إلى ${wallet_name}؟",
|
"change_wallet_alert_content": "هل تريد تغيير المحفظة الحالية إلى ${wallet_name}؟",
|
||||||
|
|
|
@ -322,6 +322,12 @@
|
||||||
"trade_state_timeout": "Време за изчакване",
|
"trade_state_timeout": "Време за изчакване",
|
||||||
"trade_state_created": "Създадено",
|
"trade_state_created": "Създадено",
|
||||||
"trade_state_finished": "Завършено",
|
"trade_state_finished": "Завършено",
|
||||||
|
"invalid_password" : "Невалидна парола",
|
||||||
|
"unlock" : "Отключи",
|
||||||
|
"enter_wallet_password" : "Въведете паролата на портфейла",
|
||||||
|
"repeate_wallet_password" : "Повторете паролата на портфейла",
|
||||||
|
"wallet_password_is_empty" : "Паролата за Wallet е празна. Паролата за Wallet не трябва да е празна",
|
||||||
|
"repeated_password_is_incorrect" : "Повтарящата се парола е неправилна. Моля, повторете отново паролата за портфейла.",
|
||||||
"change_language": "Смяна на езика",
|
"change_language": "Смяна на езика",
|
||||||
"change_language_to": "Смяна на езика на ${language}?",
|
"change_language_to": "Смяна на езика на ${language}?",
|
||||||
"paste": "Поставяне",
|
"paste": "Поставяне",
|
||||||
|
@ -344,6 +350,12 @@
|
||||||
"change_wallet_alert_content": "Искате ли да смените сегашния портфейл на ${wallet_name}?",
|
"change_wallet_alert_content": "Искате ли да смените сегашния портфейл на ${wallet_name}?",
|
||||||
"creating_new_wallet": "Създаване на нов портфейл",
|
"creating_new_wallet": "Създаване на нов портфейл",
|
||||||
"creating_new_wallet_error": "Грешка: ${description}",
|
"creating_new_wallet_error": "Грешка: ${description}",
|
||||||
|
"invalid_password" : "Невалидна парола",
|
||||||
|
"unlock" : "Отключи",
|
||||||
|
"enter_wallet_password" : "Въведете паролата на портфейла",
|
||||||
|
"repeate_wallet_password" : "Повторете паролата на портфейла",
|
||||||
|
"wallet_password_is_empty" : "Паролата за Wallet е празна. Паролата за Wallet не трябва да е празна",
|
||||||
|
"repeated_password_is_incorrect" : "Повтарящата се парола е неправилна. Моля, повторете отново паролата за портфейла.",
|
||||||
"seed_alert_title": "Внимание",
|
"seed_alert_title": "Внимание",
|
||||||
"seed_alert_content": "Seed-ът е единственият начин да възстановите портфейла си. Записахте ли го?",
|
"seed_alert_content": "Seed-ът е единственият начин да възстановите портфейла си. Записахте ли го?",
|
||||||
"seed_alert_back": "Назад",
|
"seed_alert_back": "Назад",
|
||||||
|
@ -603,6 +615,7 @@
|
||||||
"sell_monero_com_alert_content": "Продажбата на Monero все още не се поддържа",
|
"sell_monero_com_alert_content": "Продажбата на Monero все още не се поддържа",
|
||||||
"error_text_input_below_minimum_limit": "Сумата е по-малко от минималната",
|
"error_text_input_below_minimum_limit": "Сумата е по-малко от минималната",
|
||||||
"error_text_input_above_maximum_limit": "Сумата надвишава максималната",
|
"error_text_input_above_maximum_limit": "Сумата надвишава максималната",
|
||||||
|
"settings": "Настройки",
|
||||||
"show_market_place": "Покажи пазар",
|
"show_market_place": "Покажи пазар",
|
||||||
"prevent_screenshots": "Предотвратете екранни снимки и запис на екрана",
|
"prevent_screenshots": "Предотвратете екранни снимки и запис на екрана",
|
||||||
"profile": "Профил",
|
"profile": "Профил",
|
||||||
|
|
|
@ -322,6 +322,12 @@
|
||||||
"trade_state_timeout": "Vypršel časový limit",
|
"trade_state_timeout": "Vypršel časový limit",
|
||||||
"trade_state_created": "Vytvořeno",
|
"trade_state_created": "Vytvořeno",
|
||||||
"trade_state_finished": "Hotovo",
|
"trade_state_finished": "Hotovo",
|
||||||
|
"invalid_password" : "Neplatné heslo",
|
||||||
|
"unlock" : "Odemknout",
|
||||||
|
"enter_wallet_password" : "Zadejte heslo peněženky",
|
||||||
|
"repeate_wallet_password" : "Opakujte heslo peněženky",
|
||||||
|
"wallet_password_is_empty" : "Heslo peněženky je prázdné. Heslo peněženky by nemělo být prázdné",
|
||||||
|
"repeated_password_is_incorrect" : "Opakované heslo je nesprávné. Zopakujte prosím heslo peněženky znovu.",
|
||||||
"change_language": "Změnit jazyk",
|
"change_language": "Změnit jazyk",
|
||||||
"change_language_to": "Změnit jazyk na ${language}?",
|
"change_language_to": "Změnit jazyk na ${language}?",
|
||||||
"paste": "Vložit",
|
"paste": "Vložit",
|
||||||
|
|
|
@ -322,6 +322,12 @@
|
||||||
"trade_state_timeout": "Timeout",
|
"trade_state_timeout": "Timeout",
|
||||||
"trade_state_created": "Erstellt",
|
"trade_state_created": "Erstellt",
|
||||||
"trade_state_finished": "Fertig",
|
"trade_state_finished": "Fertig",
|
||||||
|
"invalid_password" : "Ongeldig wachtwoord",
|
||||||
|
"unlock" : "Freischalten",
|
||||||
|
"enter_wallet_password" : "Geben Sie das Wallet-Passwort ein",
|
||||||
|
"repeat_wallet_password" : "Wiederholen Sie das Wallet-Passwort",
|
||||||
|
"wallet_password_is_empty" : "Wallet-Passwort ist leer. Wallet-Passwort darf nicht leer sein",
|
||||||
|
"repeated_password_is_incorrect" : "Wiederholtes Passwort ist falsch. Bitte wiederholen Sie das Wallet-Passwort noch einmal.",
|
||||||
"change_language": "Sprache ändern",
|
"change_language": "Sprache ändern",
|
||||||
"change_language_to": "Sprache zu ${language} ändern?",
|
"change_language_to": "Sprache zu ${language} ändern?",
|
||||||
"paste": "Einfügen",
|
"paste": "Einfügen",
|
||||||
|
|
|
@ -322,6 +322,12 @@
|
||||||
"trade_state_timeout": "Timeout",
|
"trade_state_timeout": "Timeout",
|
||||||
"trade_state_created": "Created",
|
"trade_state_created": "Created",
|
||||||
"trade_state_finished": "Finished",
|
"trade_state_finished": "Finished",
|
||||||
|
"invalid_password" : "Invalid password",
|
||||||
|
"unlock" : "Unlock",
|
||||||
|
"enter_wallet_password" : "Enter the wallet password",
|
||||||
|
"repeate_wallet_password" : "Repeat the wallet password",
|
||||||
|
"wallet_password_is_empty" : "Wallet password is empty. Wallet password should not be empty",
|
||||||
|
"repeated_password_is_incorrect" : "Repeated password is incorrect. Please repeat the wallet password again.",
|
||||||
"change_language": "Change language",
|
"change_language": "Change language",
|
||||||
"change_language_to": "Change language to ${language}?",
|
"change_language_to": "Change language to ${language}?",
|
||||||
"paste": "Paste",
|
"paste": "Paste",
|
||||||
|
|
|
@ -322,6 +322,12 @@
|
||||||
"trade_state_timeout": "Se acabó el tiempo",
|
"trade_state_timeout": "Se acabó el tiempo",
|
||||||
"trade_state_created": "Creado",
|
"trade_state_created": "Creado",
|
||||||
"trade_state_finished": "Terminado",
|
"trade_state_finished": "Terminado",
|
||||||
|
"invalid_password" : "Contraseña invalida",
|
||||||
|
"unlock" : "desbloquear",
|
||||||
|
"enter_wallet_password" : "Ingrese la contraseña de la billetera",
|
||||||
|
"repeate_wallet_password" : "Repita la contraseña de la billetera",
|
||||||
|
"wallet_password_is_empty" : "La contraseña de la billetera está vacía. La contraseña de la billetera no debe estar vacía",
|
||||||
|
"repeated_password_is_incorrect" : "La contraseña repetida es incorrecta. Repita la contraseña de la billetera nuevamente.",
|
||||||
"change_language": "Cambiar idioma",
|
"change_language": "Cambiar idioma",
|
||||||
"change_language_to": "Cambiar el idioma a ${language}?",
|
"change_language_to": "Cambiar el idioma a ${language}?",
|
||||||
"paste": "Pegar",
|
"paste": "Pegar",
|
||||||
|
|
|
@ -322,6 +322,12 @@
|
||||||
"trade_state_timeout": "Délai dépassé",
|
"trade_state_timeout": "Délai dépassé",
|
||||||
"trade_state_created": "Créé",
|
"trade_state_created": "Créé",
|
||||||
"trade_state_finished": "Terminé",
|
"trade_state_finished": "Terminé",
|
||||||
|
"invalid_password" : "Mot de passe incorrect",
|
||||||
|
"unlock" : "Ouvrir",
|
||||||
|
"enter_wallet_password" : "Entrez le mot de passe du portefeuille",
|
||||||
|
"repeate_wallet_password" : "Répétez le mot de passe du portefeuille",
|
||||||
|
"wallet_password_is_empty" : "Le mot de passe du portefeuille est vide. Le mot de passe du portefeuille ne doit pas être vide",
|
||||||
|
"repeated_password_is_incorrect" : "Le mot de passe répété est incorrect. Veuillez répéter le mot de passe du portefeuille.",
|
||||||
"change_language": "Changer de langue",
|
"change_language": "Changer de langue",
|
||||||
"change_language_to": "Changer la langue vers ${language} ?",
|
"change_language_to": "Changer la langue vers ${language} ?",
|
||||||
"paste": "Coller",
|
"paste": "Coller",
|
||||||
|
|
|
@ -322,6 +322,12 @@
|
||||||
"trade_state_timeout": "lokacin da ya ƙare",
|
"trade_state_timeout": "lokacin da ya ƙare",
|
||||||
"trade_state_created": "an halicci",
|
"trade_state_created": "an halicci",
|
||||||
"trade_state_finished": "an kammala",
|
"trade_state_finished": "an kammala",
|
||||||
|
"invalid_password" : "Mot de passe incorrect",
|
||||||
|
"unlock" : "Ouvrir",
|
||||||
|
"enter_wallet_password" : "Entrez le mot de passe du portefeuille",
|
||||||
|
"repeate_wallet_password" : "Répétez le mot de passe du portefeuille",
|
||||||
|
"wallet_password_is_empty" : "Le mot de passe du portefeuille est vide. Le mot de passe du portefeuille ne doit pas être vide",
|
||||||
|
"repeated_password_is_incorrect" : "Le mot de passe répété est incorrect. Veuillez répéter le mot de passe du portefeuille.",
|
||||||
"change_language": "canja harshen",
|
"change_language": "canja harshen",
|
||||||
"change_language_to": "canja harshen zuwa ${language}?",
|
"change_language_to": "canja harshen zuwa ${language}?",
|
||||||
"paste": "Manna",
|
"paste": "Manna",
|
||||||
|
|
|
@ -322,6 +322,12 @@
|
||||||
"trade_state_timeout": "समय समाप्त",
|
"trade_state_timeout": "समय समाप्त",
|
||||||
"trade_state_created": "बनाया था",
|
"trade_state_created": "बनाया था",
|
||||||
"trade_state_finished": "ख़त्म होना",
|
"trade_state_finished": "ख़त्म होना",
|
||||||
|
"invalid_password" : "अवैध पासवर्ड",
|
||||||
|
"unlock" : "अनलॉक",
|
||||||
|
"enter_wallet_password" : "वॉलेट पासवर्ड दर्ज करें",
|
||||||
|
"repeate_wallet_password" : "वॉलेट पासवर्ड दोहराएं",
|
||||||
|
"wallet_password_is_empty" : "वॉलेट पासवर्ड खाली है। वॉलेट पासवर्ड खाली नहीं होना चाहिए",
|
||||||
|
"repeated_password_is_incorrect" : "दोहराया गया पासवर्ड गलत है। कृपया वॉलेट पासवर्ड दोबारा दोहराएं।",
|
||||||
"change_language": "भाषा बदलो",
|
"change_language": "भाषा बदलो",
|
||||||
"change_language_to": "को भाषा बदलें ${language}?",
|
"change_language_to": "को भाषा बदलें ${language}?",
|
||||||
"paste": "पेस्ट करें",
|
"paste": "पेस्ट करें",
|
||||||
|
|
|
@ -322,6 +322,12 @@
|
||||||
"trade_state_timeout": "Isteklo",
|
"trade_state_timeout": "Isteklo",
|
||||||
"trade_state_created": "Stvoreno",
|
"trade_state_created": "Stvoreno",
|
||||||
"trade_state_finished": "Završeno",
|
"trade_state_finished": "Završeno",
|
||||||
|
"invalid_password" : "Érvénytelen jelszó",
|
||||||
|
"unlock" : "Kinyit",
|
||||||
|
"enter_wallet_password" : "Adja meg a pénztárca jelszavát",
|
||||||
|
"repeate_wallet_password" : "Az ismételt jelszó helytelen. Kérjük, ismételje meg újra a pénztárca jelszavát.",
|
||||||
|
"wallet_password_is_empty" : "A Wallet jelszó üres. A Wallet jelszó nem lehet üres",
|
||||||
|
"repeated_password_is_incorrect" : "Az ismételt jelszó helytelen. Kérjük, ismételje meg újra a pénztárca jelszavát.",
|
||||||
"change_language": "Promijeni jezik",
|
"change_language": "Promijeni jezik",
|
||||||
"change_language_to": "Promijeni jezik u ${language}?",
|
"change_language_to": "Promijeni jezik u ${language}?",
|
||||||
"paste": "Zalijepi",
|
"paste": "Zalijepi",
|
||||||
|
|
|
@ -322,6 +322,12 @@
|
||||||
"trade_state_timeout": "Waktu habis",
|
"trade_state_timeout": "Waktu habis",
|
||||||
"trade_state_created": "Dibuat",
|
"trade_state_created": "Dibuat",
|
||||||
"trade_state_finished": "Selesai",
|
"trade_state_finished": "Selesai",
|
||||||
|
"invalid_password" : "Kata sandi salah",
|
||||||
|
"unlock" : "Membuka kunci",
|
||||||
|
"enter_wallet_password" : "Masukkan kata sandi dompet",
|
||||||
|
"repeate_wallet_password" : "Ulangi kata sandi dompet",
|
||||||
|
"wallet_password_is_empty" : "Kata sandi dompet kosong. Kata sandi dompet tidak boleh kosong",
|
||||||
|
"repeated_password_is_incorrect" : "Kata sandi berulang salah. Harap ulangi kata sandi dompet lagi.",
|
||||||
"change_language": "Ganti bahasa",
|
"change_language": "Ganti bahasa",
|
||||||
"change_language_to": "Ganti bahasa ke ${language}?",
|
"change_language_to": "Ganti bahasa ke ${language}?",
|
||||||
"paste": "Tempel",
|
"paste": "Tempel",
|
||||||
|
@ -599,6 +605,7 @@
|
||||||
"sell_monero_com_alert_content": "Menjual Monero belum didukung",
|
"sell_monero_com_alert_content": "Menjual Monero belum didukung",
|
||||||
"error_text_input_below_minimum_limit": "Jumlah kurang dari minimal",
|
"error_text_input_below_minimum_limit": "Jumlah kurang dari minimal",
|
||||||
"error_text_input_above_maximum_limit": "Jumlah lebih dari maksimal",
|
"error_text_input_above_maximum_limit": "Jumlah lebih dari maksimal",
|
||||||
|
"settings": "Pengaturan",
|
||||||
"show_market_place": "Tampilkan Pasar",
|
"show_market_place": "Tampilkan Pasar",
|
||||||
"prevent_screenshots": "Cegah tangkapan layar dan perekaman layar",
|
"prevent_screenshots": "Cegah tangkapan layar dan perekaman layar",
|
||||||
"profile": "Profil",
|
"profile": "Profil",
|
||||||
|
|
|
@ -322,6 +322,12 @@
|
||||||
"trade_state_timeout": "Timeout",
|
"trade_state_timeout": "Timeout",
|
||||||
"trade_state_created": "Creato",
|
"trade_state_created": "Creato",
|
||||||
"trade_state_finished": "Finito",
|
"trade_state_finished": "Finito",
|
||||||
|
"invalid_password" : "Password non valida",
|
||||||
|
"unlock" : "Sbloccare",
|
||||||
|
"enter_wallet_password" : "Inserisci la password del portafoglio",
|
||||||
|
"repeate_wallet_password" : "Ripeti la password del portafoglio",
|
||||||
|
"wallet_password_is_empty" : "La password del portafoglio è vuota. La password del portafoglio non deve essere vuota",
|
||||||
|
"repeated_password_is_incorrect" : "La password ripetuta non è corretta. Ripeti di nuovo la password del portafoglio.",
|
||||||
"change_language": "Cambia lingua",
|
"change_language": "Cambia lingua",
|
||||||
"change_language_to": "Cambiare lingua in ${language}?",
|
"change_language_to": "Cambiare lingua in ${language}?",
|
||||||
"paste": "Incolla",
|
"paste": "Incolla",
|
||||||
|
|
|
@ -322,6 +322,12 @@
|
||||||
"trade_state_timeout": "タイムアウト",
|
"trade_state_timeout": "タイムアウト",
|
||||||
"trade_state_created": "作成した",
|
"trade_state_created": "作成した",
|
||||||
"trade_state_finished": "完成した",
|
"trade_state_finished": "完成した",
|
||||||
|
"invalid_password" : "無効なパスワード",
|
||||||
|
"unlock" : "ロック解除",
|
||||||
|
"enter_wallet_password" : "ウォレットのパスワードを入力してください",
|
||||||
|
"repeate_wallet_password" : "ウォレットのパスワードを繰り返す",
|
||||||
|
"wallet_password_is_empty" : "ウォレットのパスワードが空です。 ウォレットのパスワードを空にすることはできません",
|
||||||
|
"repeated_password_is_incorrect" : "繰り返されるパスワードが正しくありません。 ウォレットのパスワードをもう一度入力してください。",
|
||||||
"change_language": "言語を変えてください",
|
"change_language": "言語を変えてください",
|
||||||
"change_language_to": "言語を変更 ${language}?",
|
"change_language_to": "言語を変更 ${language}?",
|
||||||
"paste": "ペースト",
|
"paste": "ペースト",
|
||||||
|
|
|
@ -322,6 +322,12 @@
|
||||||
"trade_state_timeout": "타임 아웃",
|
"trade_state_timeout": "타임 아웃",
|
||||||
"trade_state_created": "만들어진",
|
"trade_state_created": "만들어진",
|
||||||
"trade_state_finished": "끝마친",
|
"trade_state_finished": "끝마친",
|
||||||
|
"invalid_password" : "유효하지 않은 비밀번호",
|
||||||
|
"unlock" : "터놓다",
|
||||||
|
"enter_wallet_password" : "지갑 비밀번호를 입력하세요",
|
||||||
|
"repeate_wallet_password" : "지갑 비밀번호를 반복하십시오",
|
||||||
|
"wallet_password_is_empty" : "지갑 비밀번호가 비어 있습니다. 월렛 비밀번호는 비워둘 수 없습니다.",
|
||||||
|
"repeated_password_is_incorrect" : "반복되는 비밀번호가 올바르지 않습니다. 지갑 비밀번호를 다시 한번 입력해주세요.",
|
||||||
"change_language": "언어 변경",
|
"change_language": "언어 변경",
|
||||||
"change_language_to": "언어를로 변경 ${language}?",
|
"change_language_to": "언어를로 변경 ${language}?",
|
||||||
"paste": "풀",
|
"paste": "풀",
|
||||||
|
|
|
@ -322,6 +322,12 @@
|
||||||
"trade_state_timeout": "ခဏပွဲရပ်ခြင်း",
|
"trade_state_timeout": "ခဏပွဲရပ်ခြင်း",
|
||||||
"trade_state_created": "ဖန်တီးခဲ့သည်။",
|
"trade_state_created": "ဖန်တီးခဲ့သည်။",
|
||||||
"trade_state_finished": "ပြီးပြီ။",
|
"trade_state_finished": "ပြီးပြီ။",
|
||||||
|
"invalid_password" : "စကားဝှက် မမှန်ကန်ပါ။",
|
||||||
|
"unlock" : "သော့ဖွင့်ပါ။",
|
||||||
|
"enter_wallet_password" : "ပိုက်ဆံအိတ်စကားဝှက်ကိုထည့်ပါ။",
|
||||||
|
"repeate_wallet_password" : "ပိုက်ဆံအိတ်စကားဝှက်ကို ပြန်လုပ်ပါ။",
|
||||||
|
"wallet_password_is_empty" : "ပိုက်ဆံအိတ်စကားဝှက်သည် ဗလာဖြစ်နေသည်။ ပိုက်ဆံအိတ်စကားဝှက်သည် ဗလာမဖြစ်သင့်ပါ။",
|
||||||
|
"repeated_password_is_incorrect" : "ထပ်ခါတလဲလဲ စကားဝှက် မမှန်ပါ။ ပိုက်ဆံအိတ်စကားဝှက်ကို ထပ်လုပ်ပါ။",
|
||||||
"change_language": "ဘာသာစကားပြောင်းပါ။",
|
"change_language": "ဘာသာစကားပြောင်းပါ။",
|
||||||
"change_language_to": "ဘာသာစကားကို ${language} သို့ ပြောင်းမလား။",
|
"change_language_to": "ဘာသာစကားကို ${language} သို့ ပြောင်းမလား။",
|
||||||
"paste": "ငါးပိ",
|
"paste": "ငါးပိ",
|
||||||
|
|
|
@ -322,6 +322,12 @@
|
||||||
"trade_state_timeout": "Time-out",
|
"trade_state_timeout": "Time-out",
|
||||||
"trade_state_created": "Gemaakt",
|
"trade_state_created": "Gemaakt",
|
||||||
"trade_state_finished": "Afgewerkt",
|
"trade_state_finished": "Afgewerkt",
|
||||||
|
"invalid_password" : "Ongeldig wachtwoord",
|
||||||
|
"unlock" : "Ontgrendelen",
|
||||||
|
"enter_wallet_password" : "Voer het portemonnee-wachtwoord in",
|
||||||
|
"repeate_wallet_password" : "Herhaal het wachtwoord van de portemonnee",
|
||||||
|
"wallet_password_is_empty" : "Wallet-wachtwoord is leeg. Wallet-wachtwoord mag niet leeg zijn",
|
||||||
|
"repeated_password_is_incorrect" : "Herhaald wachtwoord is onjuist. Herhaal het wachtwoord van de portemonnee nogmaals.",
|
||||||
"change_language": "Verander de taal",
|
"change_language": "Verander de taal",
|
||||||
"change_language_to": "Verander de taal in ${language}?",
|
"change_language_to": "Verander de taal in ${language}?",
|
||||||
"paste": "Plakken",
|
"paste": "Plakken",
|
||||||
|
|
|
@ -322,6 +322,12 @@
|
||||||
"trade_state_timeout": "Koniec czasu",
|
"trade_state_timeout": "Koniec czasu",
|
||||||
"trade_state_created": "Stworzona",
|
"trade_state_created": "Stworzona",
|
||||||
"trade_state_finished": "Zakończona",
|
"trade_state_finished": "Zakończona",
|
||||||
|
"invalid_password" : "Nieprawidłowe hasło",
|
||||||
|
"unlock" : "Odblokować",
|
||||||
|
"enter_wallet_password" : "Wprowadź hasło do portfela",
|
||||||
|
"repeate_wallet_password" : "Powtórz hasło do portfela",
|
||||||
|
"wallet_password_is_empty" : "Hasło portfela jest puste. Hasło portfela nie powinno być puste",
|
||||||
|
"repeated_password_is_incorrect" : "Powtórzone hasło jest nieprawidłowe. Powtórz hasło do portfela jeszcze raz.",
|
||||||
"change_language": "Zmień język",
|
"change_language": "Zmień język",
|
||||||
"change_language_to": "Zmień język na ${language}?",
|
"change_language_to": "Zmień język na ${language}?",
|
||||||
"paste": "Wklej",
|
"paste": "Wklej",
|
||||||
|
|
|
@ -322,6 +322,12 @@
|
||||||
"trade_state_timeout": "Tempo esgotado",
|
"trade_state_timeout": "Tempo esgotado",
|
||||||
"trade_state_created": "Criada",
|
"trade_state_created": "Criada",
|
||||||
"trade_state_finished": "Finalizada",
|
"trade_state_finished": "Finalizada",
|
||||||
|
"invalid_password" : "Senha inválida",
|
||||||
|
"unlock" : "desbloquear",
|
||||||
|
"enter_wallet_password" : "Digite a senha da carteira",
|
||||||
|
"repeate_wallet_password" : "Repita a senha da carteira",
|
||||||
|
"wallet_password_is_empty" : "A senha da carteira está vazia. A senha da carteira não deve estar vazia",
|
||||||
|
"repeated_password_is_incorrect" : "A senha repetida está incorreta. Por favor, repita a senha da carteira novamente.",
|
||||||
"change_language": "Mudar idioma",
|
"change_language": "Mudar idioma",
|
||||||
"change_language_to": "Alterar idioma para ${language}?",
|
"change_language_to": "Alterar idioma para ${language}?",
|
||||||
"paste": "Colar",
|
"paste": "Colar",
|
||||||
|
|
|
@ -322,6 +322,12 @@
|
||||||
"trade_state_timeout": "Таймаут",
|
"trade_state_timeout": "Таймаут",
|
||||||
"trade_state_created": "Созданная",
|
"trade_state_created": "Созданная",
|
||||||
"trade_state_finished": "Завершена",
|
"trade_state_finished": "Завершена",
|
||||||
|
"invalid_password" : "Invalid password",
|
||||||
|
"unlock" : "Unlock",
|
||||||
|
"enter_wallet_password" : "Enter the wallet password",
|
||||||
|
"repeate_wallet_password" : "Repeat the wallet password",
|
||||||
|
"wallet_password_is_empty" : "Wallet password is empty. Wallet password should not be empty",
|
||||||
|
"repeated_password_is_incorrect" : "Repeated password is incorrect. Please repeat the wallet password again.",
|
||||||
"change_language": "Изменить язык",
|
"change_language": "Изменить язык",
|
||||||
"change_language_to": "Изменить язык на ${language}?",
|
"change_language_to": "Изменить язык на ${language}?",
|
||||||
"paste": "Вставить",
|
"paste": "Вставить",
|
||||||
|
|
|
@ -322,6 +322,12 @@
|
||||||
"trade_state_timeout": "เวลาหมด",
|
"trade_state_timeout": "เวลาหมด",
|
||||||
"trade_state_created": "ถูกสร้าง",
|
"trade_state_created": "ถูกสร้าง",
|
||||||
"trade_state_finished": "เสร็จสิ้น",
|
"trade_state_finished": "เสร็จสิ้น",
|
||||||
|
"invalid_password" : "รหัสผ่านไม่ถูกต้อง",
|
||||||
|
"unlock" : "ปลดล็อค",
|
||||||
|
"enter_wallet_password" : "ป้อนรหัสผ่านกระเป๋าเงิน",
|
||||||
|
"repeate_wallet_password" : "ทำซ้ำรหัสผ่านกระเป๋าเงิน",
|
||||||
|
"wallet_password_is_empty" : "รหัสผ่าน Wallet ว่างเปล่า รหัสผ่าน Wallet ไม่ควรว่างเปล่า",
|
||||||
|
"repeated_password_is_incorrect" : "รหัสผ่านซ้ำไม่ถูกต้อง กรุณากรอกรหัสผ่านกระเป๋าเงินซ้ำอีกครั้ง",
|
||||||
"change_language": "เปลี่ยนภาษา",
|
"change_language": "เปลี่ยนภาษา",
|
||||||
"change_language_to": "เปลี่ยนภาษาเป็น ${language}?",
|
"change_language_to": "เปลี่ยนภาษาเป็น ${language}?",
|
||||||
"paste": "วาง",
|
"paste": "วาง",
|
||||||
|
|
|
@ -322,6 +322,12 @@
|
||||||
"trade_state_timeout": "Zaman aşımı",
|
"trade_state_timeout": "Zaman aşımı",
|
||||||
"trade_state_created": "Oluşturuldu",
|
"trade_state_created": "Oluşturuldu",
|
||||||
"trade_state_finished": "Tamamlandı",
|
"trade_state_finished": "Tamamlandı",
|
||||||
|
"invalid_password" : "Geçersiz şifre",
|
||||||
|
"unlock" : "Kilidini aç",
|
||||||
|
"enter_wallet_password" : "cüzdan şifresini girin",
|
||||||
|
"repeate_wallet_password" : "M-cüzdan şifresini tekrarla",
|
||||||
|
"wallet_password_is_empty" : "Cüzdan şifresi boş. Cüzdan şifresi boş olmamalıdır",
|
||||||
|
"repeated_password_is_incorrect" : "Tekrarlanan şifre yanlış. Lütfen cüzdan şifresini tekrar tekrarlayın.",
|
||||||
"change_language": "Dili değiştir",
|
"change_language": "Dili değiştir",
|
||||||
"change_language_to": "Dili şuna değiştir: ${language}?",
|
"change_language_to": "Dili şuna değiştir: ${language}?",
|
||||||
"paste": "Yapıştır",
|
"paste": "Yapıştır",
|
||||||
|
|
|
@ -322,6 +322,12 @@
|
||||||
"trade_state_timeout": "Таймаут",
|
"trade_state_timeout": "Таймаут",
|
||||||
"trade_state_created": "Створена",
|
"trade_state_created": "Створена",
|
||||||
"trade_state_finished": "Завершена",
|
"trade_state_finished": "Завершена",
|
||||||
|
"invalid_password" : "Невірний пароль",
|
||||||
|
"unlock" : "Розблокувати",
|
||||||
|
"enter_wallet_password" : "Введіть пароль гаманця",
|
||||||
|
"repeate_wallet_password" : "Повторіть пароль гаманця",
|
||||||
|
"wallet_password_is_empty" : "Пароль гаманця порожній. Пароль гаманця не повинен бути порожнім",
|
||||||
|
"repeated_password_is_incorrect" : "Повторний пароль неправильний. Будь ласка, повторіть пароль гаманця ще раз.",
|
||||||
"change_language": "Змінити мову",
|
"change_language": "Змінити мову",
|
||||||
"change_language_to": "Змінити мову на ${language}?",
|
"change_language_to": "Змінити мову на ${language}?",
|
||||||
"paste": "Вставити",
|
"paste": "Вставити",
|
||||||
|
|
|
@ -322,6 +322,12 @@
|
||||||
"trade_state_timeout": "وقت ختم",
|
"trade_state_timeout": "وقت ختم",
|
||||||
"trade_state_created": "بنایا",
|
"trade_state_created": "بنایا",
|
||||||
"trade_state_finished": "ختم",
|
"trade_state_finished": "ختم",
|
||||||
|
"invalid_password" : "غلط پاسورڈ",
|
||||||
|
"unlock" : "غیر مقفل کریں۔",
|
||||||
|
"enter_wallet_password" : "بٹوے کا پاس ورڈ درج کریں۔",
|
||||||
|
"repeate_wallet_password" : "والیٹ پاس ورڈ کو دہرائیں۔",
|
||||||
|
"wallet_password_is_empty" : "والیٹ کا پاس ورڈ خالی ہے۔ والیٹ کا پاس ورڈ خالی نہیں ہونا چاہیے۔",
|
||||||
|
"repeated_password_is_incorrect" : "بار بار پاس ورڈ غلط ہے۔ براہ کرم بٹوے کا پاس ورڈ دوبارہ دہرائیں۔",
|
||||||
"change_language": "زبان تبدیل کریں",
|
"change_language": "زبان تبدیل کریں",
|
||||||
"change_language_to": "زبان کو ${language} میں تبدیل کریں؟",
|
"change_language_to": "زبان کو ${language} میں تبدیل کریں؟",
|
||||||
"paste": "چسپاں کریں۔",
|
"paste": "چسپاں کریں۔",
|
||||||
|
@ -603,6 +609,7 @@
|
||||||
"sell_monero_com_alert_content": "Monero فروخت کرنا ابھی تک تعاون یافتہ نہیں ہے۔",
|
"sell_monero_com_alert_content": "Monero فروخت کرنا ابھی تک تعاون یافتہ نہیں ہے۔",
|
||||||
"error_text_input_below_minimum_limit": "رقم کم از کم سے کم ہے۔",
|
"error_text_input_below_minimum_limit": "رقم کم از کم سے کم ہے۔",
|
||||||
"error_text_input_above_maximum_limit": "رقم زیادہ سے زیادہ سے زیادہ ہے۔",
|
"error_text_input_above_maximum_limit": "رقم زیادہ سے زیادہ سے زیادہ ہے۔",
|
||||||
|
"settings": "ترتیبات",
|
||||||
"show_market_place": "بازار دکھائیں۔",
|
"show_market_place": "بازار دکھائیں۔",
|
||||||
"prevent_screenshots": "اسکرین شاٹس اور اسکرین ریکارڈنگ کو روکیں۔",
|
"prevent_screenshots": "اسکرین شاٹس اور اسکرین ریکارڈنگ کو روکیں۔",
|
||||||
"profile": "پروفائل",
|
"profile": "پروفائل",
|
||||||
|
|
|
@ -322,6 +322,12 @@
|
||||||
"trade_state_timeout": "超时",
|
"trade_state_timeout": "超时",
|
||||||
"trade_state_created": "已建立",
|
"trade_state_created": "已建立",
|
||||||
"trade_state_finished": "已完成",
|
"trade_state_finished": "已完成",
|
||||||
|
"invalid_password" : "无效的密码",
|
||||||
|
"unlock" : "开锁",
|
||||||
|
"enter_wallet_password" : "输入钱包密码",
|
||||||
|
"repeate_wallet_password" : "重复钱包密码",
|
||||||
|
"wallet_password_is_empty" : "钱包密码为空。 钱包密码不能为空",
|
||||||
|
"repeated_password_is_incorrect" : "重复的密码不正确。 请再次输入钱包密码。",
|
||||||
"change_language": "修改语言",
|
"change_language": "修改语言",
|
||||||
"change_language_to": "修改语言为 ${language}?",
|
"change_language_to": "修改语言为 ${language}?",
|
||||||
"paste": "粘贴",
|
"paste": "粘贴",
|
||||||
|
|
|
@ -14,14 +14,14 @@ TYPES=($MONERO_COM $CAKEWALLET $HAVEN)
|
||||||
APP_ANDROID_TYPE=$1
|
APP_ANDROID_TYPE=$1
|
||||||
|
|
||||||
MONERO_COM_NAME="Monero.com"
|
MONERO_COM_NAME="Monero.com"
|
||||||
MONERO_COM_VERSION="1.5.1"
|
MONERO_COM_VERSION="1.3.7"
|
||||||
MONERO_COM_BUILD_NUMBER=55
|
MONERO_COM_BUILD_NUMBER=50
|
||||||
MONERO_COM_BUNDLE_ID="com.monero.app"
|
MONERO_COM_BUNDLE_ID="com.monero.app"
|
||||||
MONERO_COM_PACKAGE="com.monero.app"
|
MONERO_COM_PACKAGE="com.monero.app"
|
||||||
|
|
||||||
CAKEWALLET_NAME="Cake Wallet"
|
CAKEWALLET_NAME="Cake Wallet"
|
||||||
CAKEWALLET_VERSION="4.8.1"
|
CAKEWALLET_VERSION="4.6.6"
|
||||||
CAKEWALLET_BUILD_NUMBER=168
|
CAKEWALLET_BUILD_NUMBER=160
|
||||||
CAKEWALLET_BUNDLE_ID="com.cakewallet.cake_wallet"
|
CAKEWALLET_BUNDLE_ID="com.cakewallet.cake_wallet"
|
||||||
CAKEWALLET_PACKAGE="com.cakewallet.cake_wallet"
|
CAKEWALLET_PACKAGE="com.cakewallet.cake_wallet"
|
||||||
|
|
||||||
|
|
|
@ -13,13 +13,13 @@ TYPES=($MONERO_COM $CAKEWALLET $HAVEN)
|
||||||
APP_IOS_TYPE=$1
|
APP_IOS_TYPE=$1
|
||||||
|
|
||||||
MONERO_COM_NAME="Monero.com"
|
MONERO_COM_NAME="Monero.com"
|
||||||
MONERO_COM_VERSION="1.5.1"
|
MONERO_COM_VERSION="1.3.7"
|
||||||
MONERO_COM_BUILD_NUMBER=53
|
MONERO_COM_BUILD_NUMBER=48
|
||||||
MONERO_COM_BUNDLE_ID="com.cakewallet.monero"
|
MONERO_COM_BUNDLE_ID="com.cakewallet.monero"
|
||||||
|
|
||||||
CAKEWALLET_NAME="Cake Wallet"
|
CAKEWALLET_NAME="Cake Wallet"
|
||||||
CAKEWALLET_VERSION="4.8.1"
|
CAKEWALLET_VERSION="4.6.6"
|
||||||
CAKEWALLET_BUILD_NUMBER=176
|
CAKEWALLET_BUILD_NUMBER=155
|
||||||
CAKEWALLET_BUNDLE_ID="com.fotolockr.cakewallet"
|
CAKEWALLET_BUNDLE_ID="com.fotolockr.cakewallet"
|
||||||
|
|
||||||
HAVEN_NAME="Haven"
|
HAVEN_NAME="Haven"
|
||||||
|
|
|
@ -15,8 +15,8 @@ if [ -n "$1" ]; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
CAKEWALLET_NAME="Cake Wallet"
|
CAKEWALLET_NAME="Cake Wallet"
|
||||||
CAKEWALLET_VERSION="1.1.1"
|
CAKEWALLET_VERSION="1.0.5"
|
||||||
CAKEWALLET_BUILD_NUMBER=30
|
CAKEWALLET_BUILD_NUMBER=24
|
||||||
CAKEWALLET_BUNDLE_ID="com.fotolockr.cakewallet"
|
CAKEWALLET_BUNDLE_ID="com.fotolockr.cakewallet"
|
||||||
|
|
||||||
if ! [[ " ${TYPES[*]} " =~ " ${APP_MACOS_TYPE} " ]]; then
|
if ! [[ " ${TYPES[*]} " =~ " ${APP_MACOS_TYPE} " ]]; then
|
||||||
|
|
Loading…
Reference in a new issue