Skip to content

Commit

Permalink
feat: Test>main (#788)
Browse files Browse the repository at this point in the history
* feat(EWM-264): account balances (#474)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* refactor: Remove language menu (#476)

* app-deploy.yaml on push branches test

* Add branch-workflow.yaml

* melos.yaml add deploy_ios, deploy_android, deploy_fad commands

* Update README.md

* Rename to deploy_fad_ios and deploy_fad_android

* Move get SENTRY_DSN to build.sh

* build.sh deploy to store only from main

* app-deploy.yaml store job check branch to deploy to stores

* Hide language item from menu in profile

* Update build flow

* Update Readme Deploy from local machine section

* Fix android-deploy orders

* fix: Ewm 250 (#478)

* EWM-250. Fix add seed

* PopScope replace onPopInvoked -> onPopInvokedWithResult + addPostFrameCallback

* Remove todo

* add check didPop in onPopInvokedWithResult

* Fix create new seed from profile

* Fix analyzer issue

* SeedPhraseModel

* feat: dev to test (#477)

* feat(EWM-264): account balances (#474)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* refactor: Remove language menu (#476)

* app-deploy.yaml on push branches test

* Add branch-workflow.yaml

* melos.yaml add deploy_ios, deploy_android, deploy_fad commands

* Update README.md

* Rename to deploy_fad_ios and deploy_fad_android

* Move get SENTRY_DSN to build.sh

* build.sh deploy to store only from main

* app-deploy.yaml store job check branch to deploy to stores

* Hide language item from menu in profile

* Update build flow

* Update Readme Deploy from local machine section

* Fix android-deploy orders

* fix: Ewm 250 (#478)

* EWM-250. Fix add seed

* PopScope replace onPopInvoked -> onPopInvokedWithResult + addPostFrameCallback

* Remove todo

* add check didPop in onPopInvokedWithResult

* Fix create new seed from profile

* Fix analyzer issue

* SeedPhraseModel

---------

Co-authored-by: Egor Komarov <Odrin@users.noreply.github.com>
Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* EWM-272. Hide stake button (#480)

* dev -> test (#481)

* feat(EWM-264): account balances (#474)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* refactor: Remove language menu (#476)

* app-deploy.yaml on push branches test

* Add branch-workflow.yaml

* melos.yaml add deploy_ios, deploy_android, deploy_fad commands

* Update README.md

* Rename to deploy_fad_ios and deploy_fad_android

* Move get SENTRY_DSN to build.sh

* build.sh deploy to store only from main

* app-deploy.yaml store job check branch to deploy to stores

* Hide language item from menu in profile

* Update build flow

* Update Readme Deploy from local machine section

* Fix android-deploy orders

* fix: Ewm 250 (#478)

* EWM-250. Fix add seed

* PopScope replace onPopInvoked -> onPopInvokedWithResult + addPostFrameCallback

* Remove todo

* add check didPop in onPopInvokedWithResult

* Fix create new seed from profile

* Fix analyzer issue

* SeedPhraseModel

* EWM-272. Hide stake button (#480)

---------

Co-authored-by: Egor Komarov <Odrin@users.noreply.github.com>
Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat: EWM-251 (manual backup, which is already in main) (#488)

* create badge on wallet
create common modal
create modal backup modal

* keep safe modal

* create good job modal

* password modal + manul back up modal + logic

* add ui for check seed phrase screen, add logic of choosing word, showing finish modal dialog

* fix linter and comments

* finish logic

* fix modal with keyboard

* fix linter issues and some comments

* make method get value more universal

* fix linter with hiding staking

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* feat: Ewm 252. Bookmarks refactor (#486)

* EWM-252. BrowserResourceSection

* EWM-252. Analyzer fixes

* EWM-252. Browser pages. Move buttons group in widget

* EWM-252. Bookmarks clear bottomsheet

* EWM-263. Remove transparentBackground (#483)

* fix: EWM-253 (#487)

* fix: EWM-253

* fix formatting

* fix linter issues

* fix bug with padding and with overlay error

* fix linter issues

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* feat(EWM-259): transaction list (#482)

* feat(EWM-259): transaction list

# Conflicts:
#	lib/feature/wallet/widgets/wallet_account_actions/wallet_account_actions.dart

# Conflicts:
#	lib/feature/wallet/widgets/wallet_account_actions/wallet_account_actions.dart

* fix: run "optimize imports"

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat(EWM-274): numbers format (#484)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat(EWM-254): open app settings in iOS (#489)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* After merge (#491)

* feat: dev to test (#477)

* feat(EWM-264): account balances (#474)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* refactor: Remove language menu (#476)

* app-deploy.yaml on push branches test

* Add branch-workflow.yaml

* melos.yaml add deploy_ios, deploy_android, deploy_fad commands

* Update README.md

* Rename to deploy_fad_ios and deploy_fad_android

* Move get SENTRY_DSN to build.sh

* build.sh deploy to store only from main

* app-deploy.yaml store job check branch to deploy to stores

* Hide language item from menu in profile

* Update build flow

* Update Readme Deploy from local machine section

* Fix android-deploy orders

* fix: Ewm 250 (#478)

* EWM-250. Fix add seed

* PopScope replace onPopInvoked -> onPopInvokedWithResult + addPostFrameCallback

* Remove todo

* add check didPop in onPopInvokedWithResult

* Fix create new seed from profile

* Fix analyzer issue

* SeedPhraseModel

---------

Co-authored-by: Egor Komarov <Odrin@users.noreply.github.com>
Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* dev -> test (#481)

* feat(EWM-264): account balances (#474)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* refactor: Remove language menu (#476)

* app-deploy.yaml on push branches test

* Add branch-workflow.yaml

* melos.yaml add deploy_ios, deploy_android, deploy_fad commands

* Update README.md

* Rename to deploy_fad_ios and deploy_fad_android

* Move get SENTRY_DSN to build.sh

* build.sh deploy to store only from main

* app-deploy.yaml store job check branch to deploy to stores

* Hide language item from menu in profile

* Update build flow

* Update Readme Deploy from local machine section

* Fix android-deploy orders

* fix: Ewm 250 (#478)

* EWM-250. Fix add seed

* PopScope replace onPopInvoked -> onPopInvokedWithResult + addPostFrameCallback

* Remove todo

* add check didPop in onPopInvokedWithResult

* Fix create new seed from profile

* Fix analyzer issue

* SeedPhraseModel

* EWM-272. Hide stake button (#480)

---------

Co-authored-by: Egor Komarov <Odrin@users.noreply.github.com>
Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

---------

Co-authored-by: Egor Komarov <Odrin@users.noreply.github.com>
Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* Merge test in dev (#492)

* feat: dev to test (#477)

* feat(EWM-264): account balances (#474)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* refactor: Remove language menu (#476)

* app-deploy.yaml on push branches test

* Add branch-workflow.yaml

* melos.yaml add deploy_ios, deploy_android, deploy_fad commands

* Update README.md

* Rename to deploy_fad_ios and deploy_fad_android

* Move get SENTRY_DSN to build.sh

* build.sh deploy to store only from main

* app-deploy.yaml store job check branch to deploy to stores

* Hide language item from menu in profile

* Update build flow

* Update Readme Deploy from local machine section

* Fix android-deploy orders

* fix: Ewm 250 (#478)

* EWM-250. Fix add seed

* PopScope replace onPopInvoked -> onPopInvokedWithResult + addPostFrameCallback

* Remove todo

* add check didPop in onPopInvokedWithResult

* Fix create new seed from profile

* Fix analyzer issue

* SeedPhraseModel

---------

Co-authored-by: Egor Komarov <Odrin@users.noreply.github.com>
Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* dev -> test (#481)

* feat(EWM-264): account balances (#474)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* refactor: Remove language menu (#476)

* app-deploy.yaml on push branches test

* Add branch-workflow.yaml

* melos.yaml add deploy_ios, deploy_android, deploy_fad commands

* Update README.md

* Rename to deploy_fad_ios and deploy_fad_android

* Move get SENTRY_DSN to build.sh

* build.sh deploy to store only from main

* app-deploy.yaml store job check branch to deploy to stores

* Hide language item from menu in profile

* Update build flow

* Update Readme Deploy from local machine section

* Fix android-deploy orders

* fix: Ewm 250 (#478)

* EWM-250. Fix add seed

* PopScope replace onPopInvoked -> onPopInvokedWithResult + addPostFrameCallback

* Remove todo

* add check didPop in onPopInvokedWithResult

* Fix create new seed from profile

* Fix analyzer issue

* SeedPhraseModel

* EWM-272. Hide stake button (#480)

---------

Co-authored-by: Egor Komarov <Odrin@users.noreply.github.com>
Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

---------

Co-authored-by: Egor Komarov <Odrin@users.noreply.github.com>
Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat: EWM-275 change design on deploy (#494)

* change design on deploy

* fix linter

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: EWM-280, remove black frames (#496)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* feat: EWM-256. Capture no allowed schemes for open from external app (#495)

* EWM-256. InAppWebView 6.0.0

* EWM-256. InAppWebView shouldOverrideUrlLoading

* EWM-263. Hide useShouldOverrideUrlLoading

* EWM-263. nekoton_repository from git

* EWM-256. Open external app for wallet connect

* EWM-256. initialOptions -> initialSettings

* EWM-256. Add LSApplicationQueriesSchemes

* EWM-256. Add pubspec.lock

* fix(EWM-277): use default switch (#497)

* fix(EWM-277): use standart switch

* feat(EWM-254): enable biometry on iOS after system settings was open

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: add biometry for modal, autofocus on sercure text field (#498)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: EWM-284 (#501)

* EWM-284. fix TonWalletMultisigExpiredTransactionDetailsPage bottom space

* EWM-284. TonWalletTransactionCustodiansDetails fix background color

* feat: EWM-283. Receive bottom sheet update (#500)

* EWM-283. Refactor ui recieve bottom sheet

* EWM-283. BarcodeAddress widget

* EWM-283. Fix BarcodeAddress padding

* Remove transparentBackground: true (#499)

* fix(EWM-261): set correct zero value for asset & dynamically update assets list (#504)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: ewm-253 fix position (#505)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: EWM-281 fix manual back up (#502)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix(EWM-282): derive key fix (#506)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* EWM-260. Fix amount parse (#507)

* fix: EWM-287 fix switch (#509)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-265 fix autocorrect on old text field (#510)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix(EWM-279): hide deprecated wallet types for non-everscale networks (#503)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* EWM-268. WelcomeScreen big and small layout (#508)

* EWM-268. AdaptiveFooterSingleChildScrollView

* EWM-268. Welcome screen big and small layout

* EWM-268. BrowserModalItem remove vertical padding

* EWM-286. AdaptiveFooterSingleChildScrollView setStatePostFrame

* EWM-286. AdaptiveFooterSingleChildScrollView setStateSafePostFrame

* fix: ewm-276 add create/import param after export seed (#511)

* bug: ewm-276 add create/import param after export seed

* update nekoton

* fix tests

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* feat: add paste button for textfield (#513)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* feat: EWM-286 jdenticon user avatar (#512)

* EWM-286. IdentifyIconsService

* EWM-286. Refactor AccountSettingsWidget remove IntrinsicHeight

* EWM-286. AccountSettingsChangeColorButton

* EWM-286. init ChangeColorBottomSheet

* EWM-286. complete ChangeColorBottomSheet

* EWM-286. IdentifyIconsService add seelcted color to subject

* EWM-286. UserAvatar with jdenticon

* EWM-286. Transform jdenticon color to flutter color

* EWM-286. Image avatars replace to UserAvatar Elementary

* EWM-286. change_color_bottom_sheet.dart add animation

* EWM-286. AccountSettingsInfoCard copy text

* EWM-286. after merge

* EWM-286. fix analyzer issue

* fix: ewm-288 fix touch/face id (#516)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* feat(EWM-291): select current active account as default (#515)

* feat(EWM-291): select current active account as default

* test: fix integration tests

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix(EWM-246): `nekoton_repository@0.37.0-dev.1` (#514)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* EWM-290. Fix history search (#518)

* fix(EWM-282): add account bugs (#521)

* fix(EWM-282): get seed by any public key

* fix(EWM-282): use master key to get password

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat: EWM-271 Update CI (#517)

* EWM-271. fix translate

* EWM-271. Custom AddressConverter

* EWM-271. NekotonAddressConverter

* EWM-271. Add deploy_target check empty

* EWM-271. inputs.deploy_target == ''

* EWM-271. after merge

* EWM-286. After analyze

* EWM-295. BalanceService if wallet or account == null return null (#523)

* feat: EWM-294. Use selected account after reboot app (#519)

* EWM-294. Fix avatar color in select account modal

* EWM-294. Start app set selected account

* EWM-294. CurrentAccountsService async init

* EWM-294. Codegen after merge

* fix(EWM-272): get account pk in staking (#522)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat: ewm-293 max length for textfield and fix change color text (#520)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* Remove duplicates

* fix: EWM-286 (#524)

* EWM-286. Fix colors layout in ChangeColorBottomSheet

* EWM-286. KeyDetailView use UserAvatar

* EWM-286 use set full address to UserAvatar

* fix: ewm-300 (#525)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-297 (#526)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-298 (#527)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* EWM-252. Always show see all bookmarks button in browser (#528)

* EWM-299. Browser use onLoadResource instead onProgressChanged (#529)

* feat: EWM-286. Update IdentifyIconData (#530)

* EWM-286. AccountSettingsWidget change buttons order

* EWM-286. IdentifyIconData

* EWM-286. IdentifyIconData

* EWM-286. UserAvatar remove DecoratedBox

* fix: local manual backup (#531)

* fix: local manual backup

* fix linter

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: EWM-293 fix max length (#537)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-303 fix switching account (#536)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* Readme. Update long clone repo section (#535)

* EWM-302. Press Wallet scroll to top (#534)

* EWM-304. Choose network screen remove network description (#533)

* feat(EWM-273): staking (#532)

* feat(EWM-273): staking

* fix: format

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: venom transport config (#539)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: check wallet before start polling (#540)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* EWM-314. AmountInput remove token symbol (#543)

* EWM-286. Remove circle round avatar (#541)

* feat: ewm-308 change texts (#544)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: EWM-311. If change words tab - clear inputs (#542)

* EWM-311. If change words tab - clear inputs

* EWM-311. Import wallet. Change tab - clear seed.

* EWM-311. Paste 12 words only to 12 seed, 24 to 24

* EWM-304. Choose network change padding (#545)

* dev -> test (#538)

* fix: EWM-286 (#524)

* EWM-286. Fix colors layout in ChangeColorBottomSheet

* EWM-286. KeyDetailView use UserAvatar

* EWM-286 use set full address to UserAvatar

* fix: ewm-300 (#525)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-297 (#526)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-298 (#527)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* EWM-252. Always show see all bookmarks button in browser (#528)

* EWM-299. Browser use onLoadResource instead onProgressChanged (#529)

* feat: EWM-286. Update IdentifyIconData (#530)

* EWM-286. AccountSettingsWidget change buttons order

* EWM-286. IdentifyIconData

* EWM-286. IdentifyIconData

* EWM-286. UserAvatar remove DecoratedBox

* fix: local manual backup (#531)

* fix: local manual backup

* fix linter

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: EWM-293 fix max length (#537)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-303 fix switching account (#536)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* Readme. Update long clone repo section (#535)

* EWM-302. Press Wallet scroll to top (#534)

* EWM-304. Choose network screen remove network description (#533)

* feat(EWM-273): staking (#532)

* feat(EWM-273): staking

* fix: format

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: venom transport config (#539)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: check wallet before start polling (#540)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* EWM-314. AmountInput remove token symbol (#543)

* EWM-286. Remove circle round avatar (#541)

* feat: ewm-308 change texts (#544)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: EWM-311. If change words tab - clear inputs (#542)

* EWM-311. If change words tab - clear inputs

* EWM-311. Import wallet. Change tab - clear seed.

* EWM-311. Paste 12 words only to 12 seed, 24 to 24

* EWM-304. Choose network change padding (#545)

---------

Co-authored-by: Andrey Molochko <36672245+AndreyMolochko@users.noreply.github.com>
Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>
Co-authored-by: Egor Komarov <Odrin@users.noreply.github.com>
Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix(EWM-315): amount validation (#546)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat(EWM-313): simulate transaction tree (#547)

# Conflicts:
#	lib/feature/wallet/token_wallet_send/view/token_wallet_send_confirm_view.dart
#	lib/feature/wallet/ton_wallet_send/view/ton_wallet_send_confirm_view.dart

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat: ewm-301 (#548)

* feat: ewm-301

* comment stake

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* feat(EWM-316): wallet types names (#551)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: EWM-317 fix max value (#550)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix(EWM-309): improve custom network support (#549)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: ewm-323 fix import multisig (#553)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* feat: EWM-233 (#552)

* EWM-233. No internet screen

* EWM-233. No internet route

* EWM-233. App widget Elementary

* EWM-233. Splash screen flow

* EWM-233. Break redirect before complete bootstrap

* EWM-233. AppRouter class

* EWM-233. AppRouter check splash

* EWM-233. AppRouter hasSeeds.valueOrNull

* EWM-233. AppRouter redirect return saved location

* EWM-233. Native splash only color and Flutter splash

* EWM-233. after merge

* add check for interent connection by click

* EWM-233. fix after analyze

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix(EWM-320): staking initialization (#558)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat(EWM-327): expand asset tap area (#557)

* feat(EWM-327): expand asset tap area

* fix: analyze

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: ewm-325 fix validator after paste (#556)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix(EWM-322): refactor current accounts service (#555)

* fix(EWM-322): refactor current accounts service

* fix: analyze

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: ewm-321 (#554)

* fix: ewm-321

* dispose controllers

* fix linter

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-329 (#559)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-337 (#562)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* feat(EWM-274): money format (#560)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: ewm-330 (#561)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix(EWM-326): subscriptions refactor (#564)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: EWM-256 add js (#563)

* EWM-256. JS wrapper for web

* EWM-256. android:usesCleartextTraffic="true"

* EWM-256. Rebuild nekoton js

* EWM-256. Add license for js

* EWM-256. Fix after analyze

* chore: update `nekoton_webview` (+ `flutter_inappwebview@6.1.4`) (#567)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix(EWM-341): add account info to confirm window (#566)

* fix(EWM-341): add account info to confirm window

* fix: analyze

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix(EWM-331): add master key to list (#565)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix(EWM-343): skip redirect for direct subroute navigation (#568)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* Test update (#571)

* fix: EWM-286 (#524)

* EWM-286. Fix colors layout in ChangeColorBottomSheet

* EWM-286. KeyDetailView use UserAvatar

* EWM-286 use set full address to UserAvatar

* fix: ewm-300 (#525)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-297 (#526)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-298 (#527)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* EWM-252. Always show see all bookmarks button in browser (#528)

* EWM-299. Browser use onLoadResource instead onProgressChanged (#529)

* feat: EWM-286. Update IdentifyIconData (#530)

* EWM-286. AccountSettingsWidget change buttons order

* EWM-286. IdentifyIconData

* EWM-286. IdentifyIconData

* EWM-286. UserAvatar remove DecoratedBox

* fix: local manual backup (#531)

* fix: local manual backup

* fix linter

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: EWM-293 fix max length (#537)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-303 fix switching account (#536)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* Readme. Update long clone repo section (#535)

* EWM-302. Press Wallet scroll to top (#534)

* EWM-304. Choose network screen remove network description (#533)

* feat(EWM-273): staking (#532)

* feat(EWM-273): staking

* fix: format

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: venom transport config (#539)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: check wallet before start polling (#540)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* EWM-314. AmountInput remove token symbol (#543)

* EWM-286. Remove circle round avatar (#541)

* feat: ewm-308 change texts (#544)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: EWM-311. If change words tab - clear inputs (#542)

* EWM-311. If change words tab - clear inputs

* EWM-311. Import wallet. Change tab - clear seed.

* EWM-311. Paste 12 words only to 12 seed, 24 to 24

* EWM-304. Choose network change padding (#545)

* fix(EWM-315): amount validation (#546)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat(EWM-313): simulate transaction tree (#547)

# Conflicts:
#	lib/feature/wallet/token_wallet_send/view/token_wallet_send_confirm_view.dart
#	lib/feature/wallet/ton_wallet_send/view/ton_wallet_send_confirm_view.dart

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat: ewm-301 (#548)

* feat: ewm-301

* comment stake

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* feat(EWM-316): wallet types names (#551)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: EWM-317 fix max value (#550)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix(EWM-309): improve custom network support (#549)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: ewm-323 fix import multisig (#553)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* feat: EWM-233 (#552)

* EWM-233. No internet screen

* EWM-233. No internet route

* EWM-233. App widget Elementary

* EWM-233. Splash screen flow

* EWM-233. Break redirect before complete bootstrap

* EWM-233. AppRouter class

* EWM-233. AppRouter check splash

* EWM-233. AppRouter hasSeeds.valueOrNull

* EWM-233. AppRouter redirect return saved location

* EWM-233. Native splash only color and Flutter splash

* EWM-233. after merge

* add check for interent connection by click

* EWM-233. fix after analyze

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix(EWM-320): staking initialization (#558)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat(EWM-327): expand asset tap area (#557)

* feat(EWM-327): expand asset tap area

* fix: analyze

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: ewm-325 fix validator after paste (#556)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix(EWM-322): refactor current accounts service (#555)

* fix(EWM-322): refactor current accounts service

* fix: analyze

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: ewm-321 (#554)

* fix: ewm-321

* dispose controllers

* fix linter

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-329 (#559)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-337 (#562)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* feat(EWM-274): money format (#560)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: ewm-330 (#561)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix(EWM-326): subscriptions refactor (#564)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: EWM-256 add js (#563)

* EWM-256. JS wrapper for web

* EWM-256. android:usesCleartextTraffic="true"

* EWM-256. Rebuild nekoton js

* EWM-256. Add license for js

* EWM-256. Fix after analyze

* chore: update `nekoton_webview` (+ `flutter_inappwebview@6.1.4`) (#567)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix(EWM-341): add account info to confirm window (#566)

* fix(EWM-341): add account info to confirm window

* fix: analyze

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix(EWM-331): add master key to list (#565)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix(EWM-343): skip redirect for direct subroute navigation (#568)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

---------

Co-authored-by: Andrey Molochko <36672245+AndreyMolochko@users.noreply.github.com>
Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>
Co-authored-by: Egor Komarov <Odrin@users.noreply.github.com>
Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: decimal part format (#572)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat: test update (#574)

* fix: EWM-286 (#524)

* EWM-286. Fix colors layout in ChangeColorBottomSheet

* EWM-286. KeyDetailView use UserAvatar

* EWM-286 use set full address to UserAvatar

* fix: ewm-300 (#525)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-297 (#526)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-298 (#527)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* EWM-252. Always show see all bookmarks button in browser (#528)

* EWM-299. Browser use onLoadResource instead onProgressChanged (#529)

* feat: EWM-286. Update IdentifyIconData (#530)

* EWM-286. AccountSettingsWidget change buttons order

* EWM-286. IdentifyIconData

* EWM-286. IdentifyIconData

* EWM-286. UserAvatar remove DecoratedBox

* fix: local manual backup (#531)

* fix: local manual backup

* fix linter

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: EWM-293 fix max length (#537)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-303 fix switching account (#536)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* Readme. Update long clone repo section (#535)

* EWM-302. Press Wallet scroll to top (#534)

* EWM-304. Choose network screen remove network description (#533)

* feat(EWM-273): staking (#532)

* feat(EWM-273): staking

* fix: format

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: venom transport config (#539)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: check wallet before start polling (#540)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* EWM-314. AmountInput remove token symbol (#543)

* EWM-286. Remove circle round avatar (#541)

* feat: ewm-308 change texts (#544)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: EWM-311. If change words tab - clear inputs (#542)

* EWM-311. If change words tab - clear inputs

* EWM-311. Import wallet. Change tab - clear seed.

* EWM-311. Paste 12 words only to 12 seed, 24 to 24

* EWM-304. Choose network change padding (#545)

* fix(EWM-315): amount validation (#546)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat(EWM-313): simulate transaction tree (#547)

# Conflicts:
#	lib/feature/wallet/token_wallet_send/view/token_wallet_send_confirm_view.dart
#	lib/feature/wallet/ton_wallet_send/view/ton_wallet_send_confirm_view.dart

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat: ewm-301 (#548)

* feat: ewm-301

* comment stake

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* feat(EWM-316): wallet types names (#551)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: EWM-317 fix max value (#550)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix(EWM-309): improve custom network support (#549)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: ewm-323 fix import multisig (#553)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* feat: EWM-233 (#552)

* EWM-233. No internet screen

* EWM-233. No internet route

* EWM-233. App widget Elementary

* EWM-233. Splash screen flow

* EWM-233. Break redirect before complete bootstrap

* EWM-233. AppRouter class

* EWM-233. AppRouter check splash

* EWM-233. AppRouter hasSeeds.valueOrNull

* EWM-233. AppRouter redirect return saved location

* EWM-233. Native splash only color and Flutter splash

* EWM-233. after merge

* add check for interent connection by click

* EWM-233. fix after analyze

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix(EWM-320): staking initialization (#558)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat(EWM-327): expand asset tap area (#557)

* feat(EWM-327): expand asset tap area

* fix: analyze

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: ewm-325 fix validator after paste (#556)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix(EWM-322): refactor current accounts service (#555)

* fix(EWM-322): refactor current accounts service

* fix: analyze

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: ewm-321 (#554)

* fix: ewm-321

* dispose controllers

* fix linter

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-329 (#559)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-337 (#562)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* feat(EWM-274): money format (#560)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: ewm-330 (#561)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix(EWM-326): subscriptions refactor (#564)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: EWM-256 add js (#563)

* EWM-256. JS wrapper for web

* EWM-256. android:usesCleartextTraffic="true"

* EWM-256. Rebuild nekoton js

* EWM-256. Add license for js

* EWM-256. Fix after analyze

* chore: update `nekoton_webview` (+ `flutter_inappwebview@6.1.4`) (#567)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix(EWM-341): add account info to confirm window (#566)

* fix(EWM-341): add account info to confirm window

* fix: analyze

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix(EWM-331): add master key to list (#565)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix(EWM-343): skip redirect for direct subroute navigation (#568)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: decimal part format (#572)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

---------

Co-authored-by: Andrey Molochko <36672245+AndreyMolochko@users.noreply.github.com>
Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>
Co-authored-by: Egor Komarov <Odrin@users.noreply.github.com>
Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* version: 1.0.2

* feat: dev -> test (#584)

* fix(EWM-323): store backup banner state by master key; refactor `SecureStorageService` keys; (#577)

* fix(EWM-323): store backup banner state by master key; refactor `SecureStorageService` keys;

* fix(EWM-340): remove testnet networks

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat(EWM-342): implement add/change network provider methods (#569)

* feat(EWM-342): change network

* feat(EWM-342): add network

# Conflicts:
#	lib/app/service/nekoton_related/connection_service/network_presets.dart

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: ewm-308, change text and add clear button suffix (#578)

* fix: ewm-308, change text and add clear button suffix

* replace sparx on SparX

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* feat(EWM-345): minor ui updates (#579)

* feat(EWM-345): minor ui updates

* Update network_item.dart

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat: minor updates & fixes (#581)

* feat(EWM-349): rename browser useragent

* fix: minor ui fixes

* feat(EWM-238): update policy link

* fix: ios `BottomNavigationBar`

* feat(EWM-348): update support email

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* chore(EWM-353): update `nekoton_webview` (#582)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat: EWM-336 App links (#580)

* EWM-336. App links Android

* EWM-336. Universal links iOS

* EWM-336. app_links package logic

* EWM-336. app_links package logic

* EWM-336. AndroidManifest.xml fix app link host

* EWM-336. Android handle init app link

* EWM-336. Plugin Android

* EWM-336. broxus_app_links

* EWM-336 listen plugin app links

* EWM-336 add handle link query from app link

* EWM-336 BehaviorBase

* EWM-336 handle applink in AppLinksService instead EventBus

* EWM-336 handle applink in AppLinksService instead EventBus

* EWM-336 broxus_app_links from git

* EWM-336 after merge

* fix(EWM-355): wait for account to be created before navigating from onboarding to main screen (#583)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

---------

Co-authored-by: Egor Komarov <Odrin@users.noreply.github.com>
Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>
Co-authored-by: Andrey Molochko <36672245+AndreyMolochko@users.noreply.github.com>
Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* feat: dev ->test (#594)

* fix(EWM-323): store backup banner state by master key; refactor `SecureStorageService` keys; (#577)

* fix(EWM-323): store backup banner state by master key; refactor `SecureStorageService` keys;

* fix(EWM-340): remove testnet networks

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat(EWM-342): implement add/change network provider methods (#569)

* feat(EWM-342): change network

* feat(EWM-342): add network

# Conflicts:
#	lib/app/service/nekoton_related/connection_service/network_presets.dart

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: ewm-308, change text and add clear button suffix (#578)

* fix: ewm-308, change text and add clear button suffix

* replace sparx on SparX

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* feat(EWM-345): minor ui updates (#579)

* feat(EWM-345): minor ui updates

* Update network_item.dart

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat: minor updates & fixes (#581)

* feat(EWM-349): rename browser useragent

* fix: minor ui fixes

* feat(EWM-238): update policy link

* fix: ios `BottomNavigationBar`

* feat(EWM-348): update support email

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* chore(EWM-353): update `nekoton_webview` (#582)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat: EWM-336 App links (#580)

* EWM-336. App links Android

* EWM-336. Universal links iOS

* EWM-336. app_links package logic

* EWM-336. app_links package logic

* EWM-336. AndroidManifest.xml fix app link host

* EWM-336. Android handle init app link

* EWM-336. Plugin Android

* EWM-336. broxus_app_links

* EWM-336 listen plugin app links

* EWM-336 add handle link query from app link

* EWM-336 BehaviorBase

* EWM-336 handle applink in AppLinksService instead EventBus

* EWM-336 handle applink in AppLinksService instead EventBus

* EWM-336 broxus_app_links from git

* EWM-336 after merge

* fix(EWM-355): wait for account to be created before navigating from onboarding to main screen (#583)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* EWM-336 add broxus_app_links ref v1.0.0 (#588)

* feat: dev >test (#590)

* feat: EWM-251 add back up flow (#454)

* create badge on wallet
create common modal
create modal backup modal

* keep safe modal

* create good job modal

* password modal + manul back up modal + logic

* add ui for check seed phrase screen, add logic of choosing word, showing finish modal dialog

* fix linter and comments

* finish logic

* fix modal with keyboard

* fix linter issues and some comments

* make method get value more universal

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* dev -> test (#538)

* fix: EWM-286 (#524)

* EWM-286. Fix colors layout in ChangeColorBottomSheet

* EWM-286. KeyDetailView use UserAvatar

* EWM-286 use set full address to UserAvatar

* fix: ewm-300 (#525)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-297 (#526)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-298 (#527)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* EWM-252. Always show see all bookmarks button in browser (#528)

* EWM-299. Browser use onLoadResource instead onProgressChanged (#529)

* feat: EWM-286. Update IdentifyIconData (#530)

* EWM-286. AccountSettingsWidget change buttons order

* EWM-286. IdentifyIconData

* EWM-286. IdentifyIconData

* EWM-286. UserAvatar remove DecoratedBox

* fix: local manual backup (#531)

* fix: local manual backup

* fix linter

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: EWM-293 fix max length (#537)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-303 fix switching account (#536)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* Readme. Update long clone repo section (#535)

* EWM-302. Press Wallet scroll to top (#534)

* EWM-304. Choose network screen remove network description (#533)

* feat(EWM-273): staking (#532)

* feat(EWM-273): staking

* fix: format

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: venom transport config (#539)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: check wallet before start polling (#540)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* EWM-314. AmountInput remove token symbol (#543)

* EWM-286. Remove circle round avatar (#541)

* feat: ewm-308 change texts (#544)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: EWM-311. If change words tab - clear inputs (#542)

* EWM-311. If change words tab - clear inputs

* EWM-311. Import wallet. Change tab - clear seed.

* EWM-311. Paste 12 words only to 12 seed, 24 to 24

* EWM-304. Choose network change padding (#545)

---------

Co-authored-by: Andrey Molochko <36672245+AndreyMolochko@users.noreply.github.com>
Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>
Co-authored-by: Egor Komarov <Odrin@users.noreply.github.com>
Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* Test update (#571)

* fix: EWM-286 (#524)

* EWM-286. Fix colors layout in ChangeColorBottomSheet

* EWM-286. KeyDetailView use UserAvatar

* EWM-286 use set full address to UserAvatar

* fix: ewm-300 (#525)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-297 (#526)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-298 (#527)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* EWM-252. Always show see all bookmarks button in browser (#528)

* EWM-299. Browser use onLoadResource instead onProgressChanged (#529)

* feat: EWM-286. Update IdentifyIconData (#530)

* EWM-286. AccountSettingsWidget change buttons order

* EWM-286. IdentifyIconData

* EWM-286. IdentifyIconData

* EWM-286. UserAvatar remove DecoratedBox

* fix: local manual backup (#531)

* fix: local manual backup

* fix linter

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: EWM-293 fix max length (#537)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-303 fix switching account (#536)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* Readme. Update long clone repo section (#535)

* EWM-302. Press Wallet scroll to top (#534)

* EWM-304. Choose network screen remove network description (#533)

* feat(EWM-273): staking (#532)

* feat(EWM-273): staking

* fix: format

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: venom transport config (#539)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: check wallet before start polling (#540)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* EWM-314. AmountInput remove token symbol (#543)

* EWM-286. Remove circle round avatar (#541)

* feat: ewm-308 change texts (#544)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: EWM-311. If change words tab - clear inputs (#542)

* EWM-311. If change words tab - clear inputs

* EWM-311. Import wallet. Change tab - clear seed.

* EWM-311. Paste 12 words only to 12 seed, 24 to 24

* EWM-304. Choose network change padding (#545)

* fix(EWM-315): amount validation (#546)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat(EWM-313): simulate transaction tree (#547)

# Conflicts:
#	lib/feature/wallet/token_wallet_send/view/token_wallet_send_confirm_view.dart
#	lib/feature/wallet/ton_wallet_send/view/ton_wallet_send_confirm_view.dart

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat: ewm-301 (#548)

* feat: ewm-301

* comment stake

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* feat(EWM-316): wallet types names (#551)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: EWM-317 fix max value (#550)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix(EWM-309): improve custom network support (#549)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: ewm-323 fix import multisig (#553)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* feat: EWM-233 (#552)

* EWM-233. No internet screen

* EWM-233. No internet route

* EWM-233. App widget Elementary

* EWM-233. Splash screen flow

* EWM-233. Break redirect before complete bootstrap

* EWM-233. AppRouter class

* EWM-233. AppRouter check splash

* EWM-233. AppRouter hasSeeds.valueOrNull

* EWM-233. AppRouter redirect return saved location

* EWM-233. Native splash only color and Flutter splash

* EWM-233. after merge

* add check for interent connection by click

* EWM-233. fix after analyze

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix(EWM-320): staking initialization (#558)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat(EWM-327): expand asset tap area (#557)

* feat(EWM-327): expand asset tap area

* fix: analyze

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: ewm-325 fix validator after paste (#556)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix(EWM-322): refactor current accounts service (#555)

* fix(EWM-322): refactor current accounts service

* fix: analyze

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: ewm-321 (#554)

* fix: ewm-321

* dispose controllers

* fix linter

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-329 (#559)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-337 (#562)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* feat(EWM-274): money format (#560)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: ewm-330 (#561)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix(EWM-326): subscriptions refactor (#564)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: EWM-256 add js (#563)

* EWM-256. JS wrapper for web

* EWM-256. android:usesCleartextTraffic="true"

* EWM-256. Rebuild nekoton js

* EWM-256. Add license for js

* EWM-256. Fix after analyze

* chore: update `nekoton_webview` (+ `flutter_inappwebview@6.1.4`) (#567)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix(EWM-341): add account info to confirm window (#566)

* fix(EWM-341): add account info to confirm window

* fix: analyze

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix(EWM-331): add master key to list (#565)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix(EWM-343): skip redirect for direct subroute navigation (#568)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

---------

Co-authored-by: Andrey Molochko <36672245+AndreyMolochko@users.noreply.github.com>
Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>
Co-authored-by: Egor Komarov <Odrin@users.noreply.github.com>
Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat: test update (#574)

* fix: EWM-286 (#524)

* EWM-286. Fix colors layout in ChangeColorBottomSheet

* EWM-286. KeyDetailView use UserAvatar

* EWM-286 use set full address to UserAvatar

* fix: ewm-300 (#525)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-297 (#526)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-298 (#527)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* EWM-252. Always show see all bookmarks button in browser (#528)

* EWM-299. Browser use onLoadResource instead onProgressChanged (#529)

* feat: EWM-286. Update IdentifyIconData (#530)

* EWM-286. AccountSettingsWidget change buttons order

* EWM-286. IdentifyIconData

* EWM-286. IdentifyIconData

* EWM-286. UserAvatar remove DecoratedBox

* fix: local manual backup (#531)

* fix: local manual backup

* fix linter

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: EWM-293 fix max length (#537)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-303 fix switching account (#536)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* Readme. Update long clone repo section (#535)

* EWM-302. Press Wallet scroll to top (#534)

* EWM-304. Choose network screen remove network description (#533)

* feat(EWM-273): staking (#532)

* feat(EWM-273): staking

* fix: format

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: venom transport config (#539)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: check wallet before start polling (#540)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* EWM-314. AmountInput remove token symbol (#543)

* EWM-286. Remove circle round avatar (#541)

* feat: ewm-308 change texts (#544)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: EWM-311. If change words tab - clear inputs (#542)

* EWM-311. If change words tab - clear inputs

* EWM-311. Import wallet. Change tab - clear seed.

* EWM-311. Paste 12 words only to 12 seed, 24 to 24

* EWM-304. Choose network change padding (#545)

* fix(EWM-315): amount validation (#546)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat(EWM-313): simulate transaction tree (#547)

# Conflicts:
#	lib/feature/wallet/token_wallet_send/view/token_wallet_send_confirm_view.dart
#	lib/feature/wallet/ton_wallet_send/view/ton_wallet_send_confirm_view.dart

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat: ewm-301 (#548)

* feat: ewm-301

* comment stake

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* feat(EWM-316): wallet types names (#551)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: EWM-317 fix max value (#550)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix(EWM-309): improve custom network support (#549)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: ewm-323 fix import multisig (#553)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* feat: EWM-233 (#552)

* EWM-233. No internet screen

* EWM-233. No internet route

* EWM-233. App widget Elementary

* EWM-233. Splash screen flow

* EWM-233. Break redirect before complete bootstrap

* EWM-233. AppRouter class

* EWM-233. AppRouter check splash

* EWM-233. AppRouter hasSeeds.valueOrNull

* EWM-233. AppRouter redirect return saved location

* EWM-233. Native splash only color and Flutter splash

* EWM-233. after merge

* add check for interent connection by click

* EWM-233. fix after analyze

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix(EWM-320): staking initialization (#558)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat(EWM-327): expand asset tap area (#557)

* feat(EWM-327): expand asset tap area

* fix: analyze

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: ewm-325 fix validator after paste (#556)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix(EWM-322): refactor current accounts service (#555)

* fix(EWM-322): refactor current accounts service

* fix: analyze

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: ewm-321 (#554)

* fix: ewm-321

* dispose controllers

* fix linter

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-329 (#559)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-337 (#562)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* feat(EWM-274): money format (#560)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: ewm-330 (#561)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix(EWM-326): subscriptions refactor (#564)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: EWM-256 add js (#563)

* EWM-256. JS wrapper for web

* EWM-256. android:usesCleartextTraffic="true"

* EWM-256. Rebuild nekoton js

* EWM-256. Add license for js

* EWM-256. Fix after analyze

* chore: update `nekoton_webview` (+ `flutter_inappwebview@6.1.4`) (#567)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix(EWM-341): add account info to confirm window (#566)

* fix(EWM-341): add account info to confirm window

* fix: analyze

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix(EWM-331): add master key to list (#565)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix(EWM-343): skip redirect for direct subroute navigation (#568)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: decimal part format (#572)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

---------

Co-authored-by: Andrey Molochko <36672245+AndreyMolochko@users.noreply.github.com>
Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>
Co-authored-by: Egor Komarov <Odrin@users.noreply.github.com>
Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat: dev -> test (#584)

* fix(EWM-323): store backup banner state by master key; refactor `SecureStorageService` keys; (#577)

* fix(EWM-323): store backup banner state by master key; refactor `SecureStorageService` keys;

* fix(EWM-340): remove testnet networks

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat(EWM-342): implement add/change network provider methods (#569)

* feat(EWM-342): change network

* feat(EWM-342): add network

# Conflicts:
#	lib/app/service/nekoton_related/connection_service/network_presets.dart

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: ewm-308, change text and add clear button suffix (#578)

* fix: ewm-308, change text and add clear button suffix

* replace sparx on SparX

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* feat(EWM-345): minor ui updates (#579)

* feat(EWM-345): minor ui updates

* Update network_item.dart

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat: minor updates & fixes (#581)

* feat(EWM-349): rename browser useragent

* fix: minor ui fixes

* feat(EWM-238): update policy link

* fix: ios `BottomNavigationBar`

* feat(EWM-348): update support email

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* chore(EWM-353): update `nekoton_webview` (#582)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat: EWM-336 App links (#580)

* EWM-336. App links Android

* EWM-336. Universal links iOS

* EWM-336. app_links package logic

* EWM-336. app_links package logic

* EWM-336. AndroidManifest.xml fix app link host

* EWM-336. Android handle init app link

* EWM-336. Plugin Android

* EWM-336. broxus_app_links

* EWM-336 listen plugin app links

* EWM-336 add handle link query from app link

* EWM-336 BehaviorBase

* EWM-336 handle applink in AppLinksService instead EventBus

* EWM-336 handle applink in AppLinksService instead EventBus

* EWM-336 broxus_app_links from git

* EWM-336 after merge

* fix(EWM-355): wait for account to be created before navigating from onboarding to main screen (#583)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

---------

Co-authored-by: Egor Komarov <Odrin@users.noreply.github.com>
Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>
Co-authored-by: Andrey Molochko <36672245+AndreyMolochko@users.noreply.github.com>
Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

---------

Co-authored-by: Andrey Molochko <36672245+AndreyMolochko@users.noreply.github.com>
Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>
Co-authored-by: Egor Komarov <Odrin@users.noreply.github.com>
Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* EWM-305 add clipboard paste button (#587)

* fix: EWM-356 (#593)

* EWM-356. Clipboard utils

* EWM-356. Update regexp

* EWM-356. Seed Easter egg

---------

Co-authored-by: Egor Komarov <Odrin@users.noreply.github.com>
Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>
Co-authored-by: Andrey Molochko <36672245+AndreyMolochko@users.noreply.github.com>
Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* feat: dev ->test (#597)

* fix(EWM-323): store backup banner state by master key; refactor `SecureStorageService` keys; (#577)

* fix(EWM-323): store backup banner state by master key; refactor `SecureStorageService` keys;

* fix(EWM-340): remove testnet networks

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat(EWM-342): implement add/change network provider methods (#569)

* feat(EWM-342): change network

* feat(EWM-342): add network

# Conflicts:
#	lib/app/service/nekoton_related/connection_service/network_presets.dart

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: ewm-308, change text and add clear button suffix (#578)

* fix: ewm-308, change text and add clear button suffix

* replace sparx on SparX

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* feat(EWM-345): minor ui updates (#579)

* feat(EWM-345): minor ui updates

* Update network_item.dart

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat: minor updates & fixes (#581)

* feat(EWM-349): rename browser useragent

* fix: minor ui fixes

* feat(EWM-238): update policy link

* fix: ios `BottomNavigationBar`

* feat(EWM-348): update support email

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* chore(EWM-353): update `nekoton_webview` (#582)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* feat: EWM-336 App links (#580)

* EWM-336. App links Android

* EWM-336. Universal links iOS

* EWM-336. app_links package logic

* EWM-336. app_links package logic

* EWM-336. AndroidManifest.xml fix app link host

* EWM-336. Android handle init app link

* EWM-336. Plugin Android

* EWM-336. broxus_app_links

* EWM-336 listen plugin app links

* EWM-336 add handle link query from app link

* EWM-336 BehaviorBase

* EWM-336 handle applink in AppLinksService instead EventBus

* EWM-336 handle applink in AppLinksService instead EventBus

* EWM-336 broxus_app_links from git

* EWM-336 after merge

* fix(EWM-355): wait for account to be created before navigating from onboarding to main screen (#583)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* EWM-336 add broxus_app_links ref v1.0.0 (#588)

* feat: dev >test (#590)

* feat: EWM-251 add back up flow (#454)

* create badge on wallet
create common modal
create modal backup modal

* keep safe modal

* create good job modal

* password modal + manul back up modal + logic

* add ui for check seed phrase screen, add logic of choosing word, showing finish modal dialog

* fix linter and comments

* finish logic

* fix modal with keyboard

* fix linter issues and some comments

* make method get value more universal

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* dev -> test (#538)

* fix: EWM-286 (#524)

* EWM-286. Fix colors layout in ChangeColorBottomSheet

* EWM-286. KeyDetailView use UserAvatar

* EWM-286 use set full address to UserAvatar

* fix: ewm-300 (#525)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-297 (#526)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-298 (#527)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* EWM-252. Always show see all bookmarks button in browser (#528)

* EWM-299. Browser use onLoadResource instead onProgressChanged (#529)

* feat: EWM-286. Update IdentifyIconData (#530)

* EWM-286. AccountSettingsWidget change buttons order

* EWM-286. IdentifyIconData

* EWM-286. IdentifyIconData

* EWM-286. UserAvatar remove DecoratedBox

* fix: local manual backup (#531)

* fix: local manual backup

* fix linter

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: EWM-293 fix max length (#537)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-303 fix switching account (#536)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* Readme. Update long clone repo section (#535)

* EWM-302. Press Wallet scroll to top (#534)

* EWM-304. Choose network screen remove network description (#533)

* feat(EWM-273): staking (#532)

* feat(EWM-273): staking

* fix: format

---------

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: venom transport config (#539)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* fix: check wallet before start polling (#540)

Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* EWM-314. AmountInput remove token symbol (#543)

* EWM-286. Remove circle round avatar (#541)

* feat: ewm-308 change texts (#544)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: EWM-311. If change words tab - clear inputs (#542)

* EWM-311. If change words tab - clear inputs

* EWM-311. Import wallet. Change tab - clear seed.

* EWM-311. Paste 12 words only to 12 seed, 24 to 24

* EWM-304. Choose network change padding (#545)

---------

Co-authored-by: Andrey Molochko <36672245+AndreyMolochko@users.noreply.github.com>
Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>
Co-authored-by: Egor Komarov <Odrin@users.noreply.github.com>
Co-authored-by: Egor Komarov <egor.komarov@bf.rocks>

* Test update (#571)

* fix: EWM-286 (#524)

* EWM-286. Fix colors layout in ChangeColorBottomSheet

* EWM-286. KeyDetailView use UserAvatar

* EWM-286 use set full address to UserAvatar

* fix: ewm-300 (#525)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-297 (#526)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-298 (#527)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* EWM-252. Always show see all bookmarks button in browser (#528)

* EWM-299. Browser use onLoadResource instead onProgressChanged (#529)

* feat: EWM-286. Update IdentifyIconData (#530)

* EWM-286. AccountSettingsWidget change buttons order

* EWM-286. IdentifyIconData

* EWM-286. IdentifyIconData

* EWM-286. UserAvatar remove DecoratedBox

* fix: local manual backup (#531)

* fix: local manual backup

* fix linter

---------

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: EWM-293 fix max length (#537)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* fix: ewm-303 fix switching account (#536)

Co-authored-by: Andrey Malochka <andrey.molocko2018@gmail.com>

* Readme. Update long clone repo section (#535)

* EWM-302. Press Wallet scroll to top (#534)

* EWM-304. Choose network screen remove network descripti…
  • Loading branch information
7 people authored Feb 28, 2025
1 parent 9fcbb8f commit a0a4b6a
Show file tree
Hide file tree
Showing 28 changed files with 193 additions and 142 deletions.
2 changes: 2 additions & 0 deletions android/app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@
android:enableOnBackInvokedCallback="true"
android:icon="@mipmap/ic_launcher"
android:roundIcon="@mipmap/ic_launcher_round"
android:allowBackup="false"
android:fullBackupContent="false"
android:label="${appName}"
android:usesCleartextTraffic="true">
<activity
Expand Down
3 changes: 2 additions & 1 deletion assets/configs/connections.json
Original file line number Diff line number Diff line change
Expand Up @@ -166,7 +166,8 @@
"defaultNativeCurrencyDecimal": 9,
"genericTokenType": "jetton",
"accountExplorerLinkType": "packAddress",
"transactionExplorerLinkType": "transaction"
"transactionExplorerLinkType": "transaction",
"currencyApiBaseUrl": "https://tonapi.io/v2"
},
{
"networkName": "Hamster Network",
Expand Down
14 changes: 9 additions & 5 deletions lib/app/service/assets_service.dart
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
import 'dart:async';
import 'dart:convert';

import 'package:app/app/service/connection/connection_factory.dart';
import 'package:app/app/service/presets_connection/presets_connection_service.dart';
import 'package:app/app/service/service.dart';
import 'package:app/data/models/models.dart';
Expand All @@ -11,6 +10,7 @@ import 'package:injectable/injectable.dart';
import 'package:logging/logging.dart';
import 'package:nekoton_repository/nekoton_repository.dart';
import 'package:rxdart/rxdart.dart';
import 'package:ui_components_lib/ui_components_lib.dart';

/// Service that allows loading and updating list of contracts for transport.
/// This service also provides ability to load information about custom
Expand All @@ -24,7 +24,6 @@ class AssetsService {
this.presetsConnectionService,
this.httpService,
this.storage,
this.connectionFactory,
this.tonRepository,
);

Expand All @@ -36,7 +35,6 @@ class AssetsService {
final PresetsConnectionService presetsConnectionService;
final HttpService httpService;
final GeneralStorageService storage;
final ConnectionFactory connectionFactory;
final TonRepository tonRepository;

StreamSubscription<TransportStrategy>? _currentTransportSubscription;
Expand Down Expand Up @@ -92,7 +90,14 @@ class AssetsService {
List<TokenContractAsset>, List<TokenContractAsset>>(
storage.customTokenContractAssetsStream(transport.transport.group),
storage.systemTokenContractAssetsStream(transport.transport.group),
(a, b) => <TokenContractAsset>{...a, ...b}.toList(),
(a, b) => <TokenContractAsset>{
...a,
...b,
}.map((e) {
final symbol = currencySymbolConfig[e.symbol];
if (symbol == null) return e;
return e.copyWith(symbol: symbol);
}).toList(),
);
},
);
Expand Down Expand Up @@ -232,7 +237,6 @@ class AssetsService {
if (transport.networkType == 'ton') {
final details = await JettonWallet.getJettonRootDetails(
transport: transport.transport,
gqlConnection: connectionFactory.getTonGqlConnection(),
tokenRoot: rootTokenContract,
);
final info = await tonRepository.getTokenInfo(
Expand Down
1 change: 0 additions & 1 deletion lib/app/service/connection/connection.dart
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
export 'connection_factory.dart';
export 'connection_service.dart';
export 'data/data.dart';
export 'default_network.dart';
Expand Down
32 changes: 0 additions & 32 deletions lib/app/service/connection/connection_factory.dart

This file was deleted.

4 changes: 0 additions & 4 deletions lib/app/service/connection/generic_token_subscriber.dart
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
import 'package:app/app/service/connection/connection_factory.dart';
import 'package:app/http/repository/ton_repository.dart';
import 'package:nekoton_repository/nekoton_repository.dart';

Expand Down Expand Up @@ -27,11 +26,9 @@ class Tip3TokenWalletSubscriber extends GenericTokenSubscriber {
class JettonTokenWalletSubscriber extends GenericTokenSubscriber {
JettonTokenWalletSubscriber(
this._tonRepository,
this._connectionFactory,
);

final TonRepository _tonRepository;
final ConnectionFactory _connectionFactory;
final Map<Address, Symbol> _symbolCache = {};

@override
Expand All @@ -42,7 +39,6 @@ class JettonTokenWalletSubscriber extends GenericTokenSubscriber {
}) async =>
JettonTokenWallet.subscribe(
transport: transport,
gqlConnection: _connectionFactory.getTonGqlConnection(),
owner: owner,
rootTokenContract: rootTokenContract,
symbol: await _getSymbol(rootTokenContract),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -127,7 +127,7 @@ class CommonTransportStrategy extends AppTransportStrategy {

late final _subscriber = switch (genericTokenType) {
GenericTokenType.tip3 => Tip3TokenWalletSubscriber(),
GenericTokenType.jetton => JettonTokenWalletSubscriber(inject(), inject()),
GenericTokenType.jetton => JettonTokenWalletSubscriber(inject()),
};

NetworkGroup get networkGroup => transport.group;
Expand Down
54 changes: 54 additions & 0 deletions lib/app/service/currencies_service.dart
Original file line number Diff line number Diff line change
Expand Up @@ -217,6 +217,27 @@ class CurrenciesService {
required List<String> currencyAddresses,
required NetworkType networkType,
required NetworkGroup networkGroup,
}) =>
switch (networkGroup) {
'ton' => _fetchCurrenciesTon(
endpoint: endpoint,
currencyAddresses: currencyAddresses,
networkType: networkType,
networkGroup: networkGroup,
),
_ => _fetchCurrenciesDefault(
endpoint: endpoint,
currencyAddresses: currencyAddresses,
networkType: networkType,
networkGroup: networkGroup,
),
};

Future<List<CustomCurrency>> _fetchCurrenciesDefault({
required String endpoint,
required List<String> currencyAddresses,
required NetworkType networkType,
required NetworkGroup networkGroup,
}) async {
final data = jsonEncode({
'currencyAddresses': currencyAddresses,
Expand Down Expand Up @@ -250,6 +271,39 @@ class CurrenciesService {
.toList();
}

Future<List<CustomCurrency>> _fetchCurrenciesTon({
required String endpoint,
required List<String> currencyAddresses,
required NetworkType networkType,
required NetworkGroup networkGroup,
}) async {
final nativeTokenAddress =
nekotonRepository.currentTransport.nativeTokenAddress;
final addresses = [...currencyAddresses, 'TON'];
final encoded = await httpService.getRequest(
'$endpoint/rates?tokens=${addresses.join(',')}&currencies=USD',
);
final decoded = jsonDecode(encoded) as Map<String, dynamic>;
final rates = decoded['rates'] as Map<String, dynamic>;

rates[nativeTokenAddress.toRaw()] = rates['TON'];
rates.remove('TON');

return rates.entries.map((element) {
final address = element.key;
final prices = (element.value as Map<String, dynamic>)['prices'];
final price =
(prices as Map<String, dynamic>?)?['USD']?.toString() ?? '0';

return CustomCurrency(
address: Address(address: address),
price: price,
networkGroup: networkGroup,
networkType: networkType,
);
}).toList();
}

Future<CustomCurrency> _fetchCurrency({
required String endpoint,
required NetworkType networkType,
Expand Down
1 change: 0 additions & 1 deletion lib/data/models/custom_currency.dart
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ part 'custom_currency.g.dart';
class CustomCurrency with _$CustomCurrency {
// TODO(nesquikm): refactor to use Currency and Money
const factory CustomCurrency({
required String currency,
required Address address,

/// Price in USD
Expand Down
41 changes: 7 additions & 34 deletions lib/data/models/custom_currency.freezed.dart
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@ CustomCurrency _$CustomCurrencyFromJson(Map<String, dynamic> json) {

/// @nodoc
mixin _$CustomCurrency {
String get currency => throw _privateConstructorUsedError;
Address get address => throw _privateConstructorUsedError;

/// Price in USD
Expand All @@ -45,11 +44,7 @@ abstract class $CustomCurrencyCopyWith<$Res> {
_$CustomCurrencyCopyWithImpl<$Res, CustomCurrency>;
@useResult
$Res call(
{String currency,
Address address,
String price,
String networkType,
String networkGroup});
{Address address, String price, String networkType, String networkGroup});

$AddressCopyWith<$Res> get address;
}
Expand All @@ -69,17 +64,12 @@ class _$CustomCurrencyCopyWithImpl<$Res, $Val extends CustomCurrency>
@pragma('vm:prefer-inline')
@override
$Res call({
Object? currency = null,
Object? address = null,
Object? price = null,
Object? networkType = null,
Object? networkGroup = null,
}) {
return _then(_value.copyWith(
currency: null == currency
? _value.currency
: currency // ignore: cast_nullable_to_non_nullable
as String,
address: null == address
? _value.address
: address // ignore: cast_nullable_to_non_nullable
Expand Down Expand Up @@ -119,11 +109,7 @@ abstract class _$$CustomCurrencyImplCopyWith<$Res>
@override
@useResult
$Res call(
{String currency,
Address address,
String price,
String networkType,
String networkGroup});
{Address address, String price, String networkType, String networkGroup});

@override
$AddressCopyWith<$Res> get address;
Expand All @@ -142,17 +128,12 @@ class __$$CustomCurrencyImplCopyWithImpl<$Res>
@pragma('vm:prefer-inline')
@override
$Res call({
Object? currency = null,
Object? address = null,
Object? price = null,
Object? networkType = null,
Object? networkGroup = null,
}) {
return _then(_$CustomCurrencyImpl(
currency: null == currency
? _value.currency
: currency // ignore: cast_nullable_to_non_nullable
as String,
address: null == address
? _value.address
: address // ignore: cast_nullable_to_non_nullable
Expand All @@ -177,17 +158,14 @@ class __$$CustomCurrencyImplCopyWithImpl<$Res>
@JsonSerializable()
class _$CustomCurrencyImpl implements _CustomCurrency {
const _$CustomCurrencyImpl(
{required this.currency,
required this.address,
{required this.address,
required this.price,
required this.networkType,
required this.networkGroup});

factory _$CustomCurrencyImpl.fromJson(Map<String, dynamic> json) =>
_$$CustomCurrencyImplFromJson(json);

@override
final String currency;
@override
final Address address;

Expand All @@ -201,16 +179,14 @@ class _$CustomCurrencyImpl implements _CustomCurrency {

@override
String toString() {
return 'CustomCurrency(currency: $currency, address: $address, price: $price, networkType: $networkType, networkGroup: $networkGroup)';
return 'CustomCurrency(address: $address, price: $price, networkType: $networkType, networkGroup: $networkGroup)';
}

@override
bool operator ==(Object other) {
return identical(this, other) ||
(other.runtimeType == runtimeType &&
other is _$CustomCurrencyImpl &&
(identical(other.currency, currency) ||
other.currency == currency) &&
(identical(other.address, address) || other.address == address) &&
(identical(other.price, price) || other.price == price) &&
(identical(other.networkType, networkType) ||
Expand All @@ -221,8 +197,8 @@ class _$CustomCurrencyImpl implements _CustomCurrency {

@JsonKey(includeFromJson: false, includeToJson: false)
@override
int get hashCode => Object.hash(
runtimeType, currency, address, price, networkType, networkGroup);
int get hashCode =>
Object.hash(runtimeType, address, price, networkType, networkGroup);

/// Create a copy of CustomCurrency
/// with the given fields replaced by the non-null parameter values.
Expand All @@ -243,17 +219,14 @@ class _$CustomCurrencyImpl implements _CustomCurrency {

abstract class _CustomCurrency implements CustomCurrency {
const factory _CustomCurrency(
{required final String currency,
required final Address address,
{required final Address address,
required final String price,
required final String networkType,
required final String networkGroup}) = _$CustomCurrencyImpl;

factory _CustomCurrency.fromJson(Map<String, dynamic> json) =
_$CustomCurrencyImpl.fromJson;

@override
String get currency;
@override
Address get address;

Expand Down
2 changes: 0 additions & 2 deletions lib/data/models/custom_currency.g.dart

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit a0a4b6a

Please sign in to comment.