diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0b1c486a..ea3de9c0 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -17,7 +17,7 @@ jobs: - name: Setup Flutter uses: subosito/flutter-action@v2 with: - flutter-version: '3.0.1' + flutter-version: '3.3.10' channel: 'stable' - name: Flutter version run: flutter --version @@ -35,7 +35,7 @@ jobs: - name: Setup Flutter uses: subosito/flutter-action@v2 with: - flutter-version: '3.0.1' + flutter-version: '3.3.10' channel: 'stable' - name: Install dependencies run: flutter pub get @@ -54,7 +54,7 @@ jobs: - name: Setup Flutter uses: subosito/flutter-action@v2 with: - flutter-version: '3.0.1' + flutter-version: '3.3.10' channel: 'stable' - name: Install Flutter dependencies run: flutter pub get @@ -79,7 +79,7 @@ jobs: - name: Setup Flutter uses: subosito/flutter-action@v2 with: - flutter-version: '3.0.1' + flutter-version: '3.3.10' channel: 'stable' - name: Install Flutter dependencies run: flutter pub get @@ -106,7 +106,7 @@ jobs: - name: Setup Flutter uses: subosito/flutter-action@v2 with: - flutter-version: '3.0.1' + flutter-version: '3.3.10' channel: 'stable' - name: Install Flutter dependencies run: flutter pub get @@ -121,4 +121,4 @@ jobs: uses: actions/upload-artifact@v3 with: name: ribn_chrome_ext.zip - path: ribn_chrome_ext.zip \ No newline at end of file + path: ribn_chrome_ext.zip diff --git a/.gitignore b/.gitignore index 3d6fadb4..7d41851d 100644 --- a/.gitignore +++ b/.gitignore @@ -1,14 +1,18 @@ node_modules/ dist/ mock/ +pubspec.lock # Ignore secrets -*.jks key.properties service_account_key.json android_keys.zip *.p8 + +# Obfuscation related +app.*.map.json + # Miscellaneous *.class *.log @@ -20,37 +24,111 @@ android_keys.zip .history .svn/ + +# Android Studio will place build artifacts here +/android/app/debug +/android/app/profile +/android/app/release + # IntelliJ related *.iml *.ipr *.iws .idea/ -# The .vscode folder contains launch configuration and tasks you configure in -# VS Code which you may wish to be included in version control, so this line -# is commented out by default. -#.vscode/ +# Visual Studio Code related +.classpath +.project +.settings/ +.vscode/ + +# packages file containing multi-root paths +.packages.generated # Flutter/Dart/Pub related **/doc/api/ -**/ios/Flutter/.last_build_id .dart_tool/ .flutter-plugins .flutter-plugins-dependencies +**/generated_plugin_registrant.dart .packages .pub-cache/ .pub/ -/build/ +build/ +flutter_*.png +linked_*.ds +unlinked.ds +unlinked_spec.ds -# Web related +# Android related +**/android/**/gradle-wrapper.jar +.gradle/ +**/android/captures/ +**/android/gradlew +**/android/gradlew.bat +**/android/local.properties +**/android/**/GeneratedPluginRegistrant.java +**/android/key.properties +*.jks -# Symbolication related -app.*.symbols -# Obfuscation related -app.*.map.json +# iOS/XCode related +**/ios/**/*.mode1v3 +**/ios/**/*.mode2v3 +**/ios/**/*.moved-aside +**/ios/**/*.pbxuser +**/ios/**/*.perspectivev3 +**/ios/**/*sync/ +**/ios/**/.sconsign.dblite +**/ios/**/.tags* +**/ios/**/.vagrant/ +**/ios/**/DerivedData/ +**/ios/**/Icon? +**/ios/**/Pods/ +**/ios/**/.symlinks/ +**/ios/**/profile +**/ios/**/xcuserdata +**/ios/.generated/ +**/ios/Flutter/.last_build_id +**/ios/Flutter/App.framework +**/ios/Flutter/Flutter.framework +**/ios/Flutter/Flutter.podspec +**/ios/Flutter/Generated.xcconfig +**/ios/Flutter/ephemeral +**/ios/Flutter/app.flx +**/ios/Flutter/app.zip +**/ios/Flutter/flutter_assets/ +**/ios/Flutter/flutter_export_environment.sh +**/ios/ServiceDefinitions.json +**/ios/Runner/GeneratedPluginRegistrant.* -# Android Studio will place build artifacts here -/android/app/debug -/android/app/profile -/android/app/release + +# macOS +**/Flutter/ephemeral/ +**/Pods/ +**/macos/Flutter/GeneratedPluginRegistrant.swift +**/macos/Flutter/ephemeral +**/xcuserdata/ + +# Windows +**/windows/flutter/generated_plugin_registrant.cc +**/windows/flutter/generated_plugin_registrant.h + +# Linux +**/linux/flutter/generated_plugin_registrant.cc +**/linux/flutter/generated_plugin_registrant.h + + +# Coverage +coverage/ + +# Symbols +app.*.symbols + +# Exceptions to above rules. +!**/ios/**/default.mode1v3 +!**/ios/**/default.mode2v3 +!**/ios/**/default.pbxuser +!**/ios/**/default.perspectivev3 +!/packages/flutter_tools/test/data/dart_dependencies_test/**/.packages +!/dev/ci/**/Gemfile.lock \ No newline at end of file diff --git a/.metadata b/.metadata index 085e3196..5f48db11 100644 --- a/.metadata +++ b/.metadata @@ -4,7 +4,7 @@ # This file should be version controlled. version: - revision: fb57da5f945d02ef4f98dfd9409a72b7cce74268 + revision: 135454af32477f815a7525073027a3ff9eff1bfd channel: stable project_type: app @@ -13,11 +13,11 @@ project_type: app migration: platforms: - platform: root - create_revision: fb57da5f945d02ef4f98dfd9409a72b7cce74268 - base_revision: fb57da5f945d02ef4f98dfd9409a72b7cce74268 + create_revision: 135454af32477f815a7525073027a3ff9eff1bfd + base_revision: 135454af32477f815a7525073027a3ff9eff1bfd - platform: macos - create_revision: fb57da5f945d02ef4f98dfd9409a72b7cce74268 - base_revision: fb57da5f945d02ef4f98dfd9409a72b7cce74268 + create_revision: 135454af32477f815a7525073027a3ff9eff1bfd + base_revision: 135454af32477f815a7525073027a3ff9eff1bfd # User provided section diff --git a/Makefile b/Makefile index 68640870..acd753dd 100644 --- a/Makefile +++ b/Makefile @@ -47,7 +47,7 @@ format: ## Formats the code @echo "╠ Formatting the code" @dart format lib . @flutter pub run import_sorter:main - @flutter format lib + @dart format . lint: ## Lints the code @echo "╠ Verifying code..." diff --git a/README.md b/README.md index 63360014..9c80be29 100644 --- a/README.md +++ b/README.md @@ -27,6 +27,10 @@ Ribn allows users to: * Navigate to and select the directory with path `ribn/build/web/` * The app should be loaded and you should be able to open it like you would any other extension +## Using Test Credentials +* Change `Line 28` in `main.dart` to: `await Redux.initStore(initTestStore: true);` +* PW is Topl1234 +* Seed phrase can be found in `test_data.dart` ## Feature requests and bugs Please file feature requests and bugs at the [issue tracker](https://github.com/Topl/ribn/issues). If you want to contribute to this library, please submit a Pull Request. diff --git a/analysis_options.yaml b/analysis_options.yaml index 6e38b4ea..51dd4f5a 100644 --- a/analysis_options.yaml +++ b/analysis_options.yaml @@ -36,49 +36,49 @@ linter: # `// ignore_for_file: name_of_lint` syntax on the line or in the file # producing the lint. rules: - - annotate_overrides - - require_trailing_commas - - avoid_unused_constructor_parameters - - await_only_futures - - camel_case_types - - cancel_subscriptions - - directives_ordering - - empty_catches - - empty_statements - - hash_and_equals - - iterable_contains_unrelated_type - - list_remove_unrelated_type - - no_adjacent_strings_in_list - - no_duplicate_case_values - - non_constant_identifier_names - - only_throw_errors - - overridden_fields - - prefer_collection_literals - - prefer_conditional_assignment - - prefer_contains - - prefer_final_fields - - prefer_final_locals - - prefer_initializing_formals - - prefer_interpolation_to_compose_strings - - prefer_is_empty - - prefer_is_not_empty - - prefer_single_quotes - - prefer_typing_uninitialized_variables - - recursive_getters - - slash_for_doc_comments - - test_types_in_equals - - throw_in_finally - - type_init_formals - - unawaited_futures - - unnecessary_brace_in_string_interps - - unnecessary_getters_setters - - unnecessary_lambdas - - unnecessary_new - - unnecessary_null_aware_assignments - - unnecessary_statements - - unnecessary_this - - unrelated_type_equality_checks - - use_rethrow_when_possible - - valid_regexps + annotate_overrides + require_trailing_commas:true + avoid_unused_constructor_parameters:true + await_only_futures:true + camel_case_types:true + cancel_subscriptions:true + directives_ordering:true + empty_catches:true + empty_statements:true + hash_and_equals:true + iterable_contains_unrelated_type:true + list_remove_unrelated_type:true + no_adjacent_strings_in_list:true + no_duplicate_case_values:true + non_constant_identifier_names:true + only_throw_errors:true + overridden_fields:true + prefer_collection_literals:true + prefer_conditional_assignment:true + prefer_contains:true + prefer_final_fields:true + prefer_final_locals:true + prefer_initializing_formals:true + prefer_interpolation_to_compose_strings:true + prefer_is_empty:true + prefer_is_not_empty:true + prefer_single_quotes:true + prefer_typing_uninitialized_variables:true + recursive_getters:true + slash_for_doc_comments:true + test_types_in_equals:true + throw_in_finally:true + type_init_formals:true + unawaited_futures:true + unnecessary_brace_in_string_interps:true + unnecessary_getters_setters:true + unnecessary_lambdas:true + unnecessary_new:true + unnecessary_null_aware_assignments:true + unnecessary_statements:true + unnecessary_this:true + unrelated_type_equality_checks:true + use_rethrow_when_possible:true + valid_regexps:true # Additional information about this file can be found at # https://dart.dev/guides/language/analysis-options diff --git a/android/app/build.gradle b/android/app/build.gradle index f151b9dc..a1e49e12 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -33,7 +33,7 @@ apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { - compileSdkVersion 32 + compileSdkVersion 33 compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 @@ -71,6 +71,7 @@ android { signingConfig signingConfigs.release } } + namespace 'co.topl.ribn' } flutter { diff --git a/android/app/src/debug/AndroidManifest.xml b/android/app/src/debug/AndroidManifest.xml index c148bc62..7053c78c 100644 --- a/android/app/src/debug/AndroidManifest.xml +++ b/android/app/src/debug/AndroidManifest.xml @@ -1,5 +1,5 @@ + package="co.topl.ribn"> diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index 10e565bb..c6466650 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -1,5 +1,5 @@ + package="co.topl.ribn"> + package="co.topl.ribn"> diff --git a/android/build.gradle b/android/build.gradle index 09fbd640..fd47cc78 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -6,7 +6,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:4.1.0' + classpath 'com.android.tools.build:gradle:7.2.0' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } diff --git a/android/gradle/wrapper/gradle-wrapper.properties b/android/gradle/wrapper/gradle-wrapper.properties index 04be1935..0293f945 100644 --- a/android/gradle/wrapper/gradle-wrapper.properties +++ b/android/gradle/wrapper/gradle-wrapper.properties @@ -4,4 +4,4 @@ distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists # https://docs.gradle.org/current/userguide/compatibility.html -distributionUrl=https\://services.gradle.org/distributions/gradle-7.3-all.zip \ No newline at end of file +distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-all.zip \ No newline at end of file diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 54f54225..97fd9fee 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -40,15 +40,15 @@ PODS: - Flutter - flutter_native_splash (0.0.1): - Flutter - - flutter_secure_storage (3.3.1): + - flutter_secure_storage (6.0.0): - Flutter - local_auth_ios (0.0.1): - Flutter - path_provider_ios (0.0.1): - Flutter - - SDWebImage (5.13.4): - - SDWebImage/Core (= 5.13.4) - - SDWebImage/Core (5.13.4) + - SDWebImage (5.14.2): + - SDWebImage/Core (= 5.14.2) + - SDWebImage/Core (5.14.2) - SwiftyGif (5.4.3) - url_launcher_ios (0.0.1): - Flutter @@ -99,10 +99,10 @@ SPEC CHECKSUMS: Flutter: f04841e97a9d0b0a8025694d0796dd46242b2854 flutter_keyboard_visibility: 0339d06371254c3eb25eeb90ba8d17dca8f9c069 flutter_native_splash: 52501b97d1c0a5f898d687f1646226c1f93c56ef - flutter_secure_storage: 7953c38a04c3fdbb00571bcd87d8e3b5ceb9daec + flutter_secure_storage: 23fc622d89d073675f2eaa109381aefbcf5a49be local_auth_ios: 0d333dde7780f669e66f19d2ff6005f3ea84008d path_provider_ios: 14f3d2fd28c4fdb42f44e0f751d12861c43cee02 - SDWebImage: e5cc87bf736e60f49592f307bdf9e157189298a3 + SDWebImage: b9a731e1d6307f44ca703b3976d18c24ca561e84 SwiftyGif: 6c3eafd0ce693cad58bb63d2b2fb9bacb8552780 url_launcher_ios: 839c58cdb4279282219f5e248c3321761ff3c4de diff --git a/lib/actions/internal_message_actions.dart b/lib/actions/internal_message_actions.dart index 38ac2dd2..2ac072cc 100644 --- a/lib/actions/internal_message_actions.dart +++ b/lib/actions/internal_message_actions.dart @@ -1,3 +1,4 @@ +// Project imports: import 'package:ribn/models/internal_message.dart'; class SendInternalMsgAction { diff --git a/lib/actions/keychain_actions.dart b/lib/actions/keychain_actions.dart index cc74b50d..fd66a494 100644 --- a/lib/actions/keychain_actions.dart +++ b/lib/actions/keychain_actions.dart @@ -1,5 +1,8 @@ +// Dart imports: import 'dart:async'; import 'dart:typed_data'; + +// Project imports: import 'package:ribn/constants/rules.dart'; import 'package:ribn/models/ribn_address.dart'; import 'package:ribn/models/ribn_network.dart'; @@ -7,7 +10,10 @@ import 'package:ribn/models/ribn_network.dart'; class InitializeHDWalletAction { final String? keyStoreJson; final Uint8List toplExtendedPrivateKey; - const InitializeHDWalletAction({this.keyStoreJson, required this.toplExtendedPrivateKey}); + const InitializeHDWalletAction({ + this.keyStoreJson, + required this.toplExtendedPrivateKey, + }); } class GenerateInitialAddressesAction { diff --git a/lib/actions/login_actions.dart b/lib/actions/login_actions.dart index bce336a4..ea2f4389 100644 --- a/lib/actions/login_actions.dart +++ b/lib/actions/login_actions.dart @@ -1,3 +1,4 @@ +// Dart imports: import 'dart:async'; import 'dart:typed_data'; diff --git a/lib/actions/misc_actions.dart b/lib/actions/misc_actions.dart index c506e571..db8f37fb 100644 --- a/lib/actions/misc_actions.dart +++ b/lib/actions/misc_actions.dart @@ -1,3 +1,4 @@ +// Dart imports: import 'dart:async'; class PersistAppState {} diff --git a/lib/actions/restore_wallet_actions.dart b/lib/actions/restore_wallet_actions.dart index 866bff88..e3ea67c0 100644 --- a/lib/actions/restore_wallet_actions.dart +++ b/lib/actions/restore_wallet_actions.dart @@ -1,10 +1,14 @@ +// Dart imports: import 'dart:async'; import 'dart:typed_data'; class RestoreWalletWithMnemonicAction { final String mnemonic; final String password; - RestoreWalletWithMnemonicAction({required this.mnemonic, required this.password}); + RestoreWalletWithMnemonicAction({ + required this.mnemonic, + required this.password, + }); } class RestoreWalletWithToplKeyAction { @@ -22,7 +26,10 @@ class RestoreWalletWithToplKeyAction { class SuccessfullyRestoredWalletAction { final String keyStoreJson; final Uint8List toplExtendedPrivateKey; - const SuccessfullyRestoredWalletAction({required this.keyStoreJson, required this.toplExtendedPrivateKey}); + const SuccessfullyRestoredWalletAction({ + required this.keyStoreJson, + required this.toplExtendedPrivateKey, + }); } class FailedToRestoreWalletAction {} diff --git a/lib/actions/transaction_actions.dart b/lib/actions/transaction_actions.dart index 79e91c91..6ea8e94c 100644 --- a/lib/actions/transaction_actions.dart +++ b/lib/actions/transaction_actions.dart @@ -1,7 +1,10 @@ +// Dart imports: import 'dart:async'; +// Package imports: import 'package:brambldart/model.dart'; +// Project imports: import 'package:ribn/models/internal_message.dart'; import 'package:ribn/models/ribn_address.dart'; import 'package:ribn/models/transfer_details.dart'; diff --git a/lib/constants/assets.dart b/lib/constants/assets.dart index 1df7b818..fa40246a 100644 --- a/lib/constants/assets.dart +++ b/lib/constants/assets.dart @@ -10,13 +10,15 @@ class RibnAssets { static const seedPhraseCreatedIcon = 'assets/icons/seedphrase_created.png'; static const passwordManagerIcon = 'assets/icons/password_manager.svg'; static const encryptFileIcon = 'assets/icons/encrypt_file.svg'; - static const seedPhraseConfirmedIcon = 'assets/icons/seed_phrase_confirmed.svg'; + static const seedPhraseConfirmedIcon = + 'assets/icons/seed_phrase_confirmed.svg'; static const walletPasswordIcon = 'assets/icons/wallet_password.svg'; static const addIcon = 'assets/icons/add.svg'; static const removeIcon = 'assets/icons/remove.svg'; static const extensionIcon = 'assets/icons/extension.svg'; static const plusIcon = 'assets/icons/plus.svg'; - static const importWalletIcon = 'packages/ribn_toolkit/assets/icons/restore_wallet.png'; + static const importWalletIcon = + 'packages/ribn_toolkit/assets/icons/restore_wallet.png'; static const closeGreyIcon = 'assets/icons/close_grey.svg'; static const downloadIcon = 'assets/icons/download.svg'; static const infoIcon = 'assets/icons/info.png'; @@ -24,7 +26,8 @@ class RibnAssets { static const sentIcon = 'assets/icons/sent.svg'; static const receiveIcon = 'assets/icons/receive.png'; static const menuIcon = 'assets/icons/menu.svg'; - static const txHistoryPageActiveIcon = 'assets/icons/tx_history_page_active.svg'; + static const txHistoryPageActiveIcon = + 'assets/icons/tx_history_page_active.svg'; static const txHistoryPageIcon = 'assets/icons/tx_history_page.svg'; static const settingsIcon = 'packages/ribn_toolkit/assets/icons/settings.png'; static const supportIcon = 'packages/ribn_toolkit/assets/icons/support.png'; @@ -45,15 +48,24 @@ class RibnAssets { static const copyUnselectedIcon = 'assets/icons/copy_unselected.png'; static const copySelectedIcon = 'assets/icons/copy_selected.png'; static const unselectedAsset = 'assets/icons/asset_unselected.png'; - static const coffBlueIcon = 'packages/ribn_toolkit/assets/asset_icons/coff_blue_icon.png'; - static const coffBrownIcon = 'packages/ribn_toolkit/assets/asset_icons/coff_brown_icon.png'; - static const coffGreenIcon = 'packages/ribn_toolkit/assets/asset_icons/coff_green_icon.png'; - static const coffPurpleIcon = 'packages/ribn_toolkit/assets/asset_icons/coff_purple_icon.png'; - static const coffYellowIcon = 'packages/ribn_toolkit/assets/asset_icons/coff_yellow_icon.png'; - static const diaBlueIcon = 'packages/ribn_toolkit/assets/asset_icons/dia_blue_icon.png'; - static const diaGreenIcon = 'packages/ribn_toolkit/assets/asset_icons/dia_green_icon.png'; - static const diaPurpleIcon = 'packages/ribn_toolkit/assets/asset_icons/dia_purple_icon.png'; - static const diaYellowIcon = 'packages/ribn_toolkit/assets/asset_icons/dia_yellow_icon.png'; + static const coffBlueIcon = + 'packages/ribn_toolkit/assets/asset_icons/coff_blue_icon.png'; + static const coffBrownIcon = + 'packages/ribn_toolkit/assets/asset_icons/coff_brown_icon.png'; + static const coffGreenIcon = + 'packages/ribn_toolkit/assets/asset_icons/coff_green_icon.png'; + static const coffPurpleIcon = + 'packages/ribn_toolkit/assets/asset_icons/coff_purple_icon.png'; + static const coffYellowIcon = + 'packages/ribn_toolkit/assets/asset_icons/coff_yellow_icon.png'; + static const diaBlueIcon = + 'packages/ribn_toolkit/assets/asset_icons/dia_blue_icon.png'; + static const diaGreenIcon = + 'packages/ribn_toolkit/assets/asset_icons/dia_green_icon.png'; + static const diaPurpleIcon = + 'packages/ribn_toolkit/assets/asset_icons/dia_purple_icon.png'; + static const diaYellowIcon = + 'packages/ribn_toolkit/assets/asset_icons/dia_yellow_icon.png'; static const addressCopiedIcon = 'assets/icons/address_copied.png'; static const polysIcon = 'assets/icons/polysIcon.png'; static const undefinedIcon = 'assets/icons/undefined_icon.png'; @@ -66,22 +78,32 @@ class RibnAssets { static const smsFailed = 'assets/icons/sms_failed.png'; static const openInNewWindow = 'assets/icons/open_in_new.png'; static const roundInfoCircle = 'assets/icons/round_info_circle.png'; - static const newRibnLogo = 'packages/ribn_toolkit/assets/icons/new_ribn_logo.png'; - static const newCircleRibnLogo = 'packages/ribn_toolkit/assets/icons/ribn_circle_logo.png'; - static const chevronDown = 'packages/ribn_toolkit/assets/icons/chevron_down.png'; - static const chevronDownDark = 'packages/ribn_toolkit/assets/icons/chevron_down_dark.png'; - static const hamburgerMenu = 'packages/ribn_toolkit/assets/icons/hamburger_menu.png'; - static const circleExclamation = 'packages/ribn_toolkit/assets/icons/error.png'; + static const newRibnLogo = + 'packages/ribn_toolkit/assets/icons/new_ribn_logo.png'; + static const newCircleRibnLogo = + 'packages/ribn_toolkit/assets/icons/ribn_circle_logo.png'; + static const chevronDown = + 'packages/ribn_toolkit/assets/icons/chevron_down.png'; + static const chevronDownDark = + 'packages/ribn_toolkit/assets/icons/chevron_down_dark.png'; + static const hamburgerMenu = + 'packages/ribn_toolkit/assets/icons/hamburger_menu.png'; + static const circleExclamation = + 'packages/ribn_toolkit/assets/icons/error.png'; static const circleInfo = 'assets/icons/circle_info.png'; - static const greyHelpBubble = 'packages/ribn_toolkit/assets/icons/gray_help_bubble.png'; + static const greyHelpBubble = + 'packages/ribn_toolkit/assets/icons/gray_help_bubble.png'; static const plusBlue = 'packages/ribn_toolkit/assets/icons/plus_blue.png'; static const plusGrey = 'packages/ribn_toolkit/assets/icons/plus_grey.png'; - static const walletBlue = 'packages/ribn_toolkit/assets/icons/wallet_blue.png'; - static const walletGrey = 'packages/ribn_toolkit/assets/icons/wallet_grey.png'; + static const walletBlue = + 'packages/ribn_toolkit/assets/icons/wallet_blue.png'; + static const walletGrey = + 'packages/ribn_toolkit/assets/icons/wallet_grey.png'; static const clockBlue = 'packages/ribn_toolkit/assets/icons/clock_blue.png'; static const clockGrey = 'packages/ribn_toolkit/assets/icons/clock_grey.png'; static const copyIcon = 'packages/ribn_toolkit/assets/icons/copy_icon.png'; - static const circlePlus = 'packages/ribn_toolkit/assets/icons/circle_plus.png'; + static const circlePlus = + 'packages/ribn_toolkit/assets/icons/circle_plus.png'; static const copyIconAlternate = 'assets/icons/copy_icon_alternate.png'; static const fingerPrintAssets = 'assets/icons/finger_print_assets.png'; static const redDangerTriangle = 'assets/icons/red_danger_triangle.png'; @@ -91,11 +113,16 @@ class RibnAssets { static const passwordLockPng = 'assets/icons/password_lock.png'; static const penPaperPng = 'assets/icons/pen_paper.png'; static const programPng = 'assets/icons/program.png'; - static const onboardingBackgroundSvg = 'assets/icons/onboarding_background.svg'; - static const onboardingBackgroundPng = 'assets/icons/onboarding_background.png'; - static const createWalletPng = 'packages/ribn_toolkit/assets/icons/create_wallet.png'; - static const createWalletPngWithShadow = 'packages/ribn_toolkit/assets/icons/create_wallet_shadow.png'; - static const importWalletPng = 'packages/ribn_toolkit/assets/icons/import_wallet.png'; + static const onboardingBackgroundSvg = + 'assets/icons/onboarding_background.svg'; + static const onboardingBackgroundPng = + 'assets/icons/onboarding_background.png'; + static const createWalletPng = + 'packages/ribn_toolkit/assets/icons/create_wallet.png'; + static const createWalletPngWithShadow = + 'packages/ribn_toolkit/assets/icons/create_wallet_shadow.png'; + static const importWalletPng = + 'packages/ribn_toolkit/assets/icons/import_wallet.png'; static const walletLockPng = 'assets/icons/wallet_lock.png'; static const passwordVisiblePng = 'assets/icons/password_visible.png'; static const passwordHiddenPng = 'assets/icons/password_hidden.png'; @@ -110,9 +137,11 @@ class RibnAssets { static const touchID = 'assets/icons/touch_id.png'; static const touchIDCutout = 'assets/icons/touch_id_cutout.png'; static const iosBiometrics = 'assets/icons/iphone_biometrics.png'; - static const iosBiometricsOutline = 'assets/icons/iphone_biometrics_outline.png'; + static const iosBiometricsOutline = + 'assets/icons/iphone_biometrics_outline.png'; static const andriodBiometrics = 'assets/icons/android_biometrics.png'; - static const andriodBiometricsOutline = 'assets/icons/android_biometrics_outline.png'; + static const andriodBiometricsOutline = + 'assets/icons/android_biometrics_outline.png'; static const addPlusPng = 'assets/icons/add_plus.png'; static const documentPng = 'assets/icons/document.png'; static const polyIconCircle = 'assets/icons/poly_icon_circle.png'; diff --git a/lib/constants/keys.dart b/lib/constants/keys.dart index 3add3a55..cfcbb9e7 100644 --- a/lib/constants/keys.dart +++ b/lib/constants/keys.dart @@ -1,7 +1,9 @@ +// Flutter imports: import 'package:flutter/material.dart'; class Keys { Keys._(); - static final GlobalKey navigatorKey = GlobalKey(); + static final GlobalKey navigatorKey = + GlobalKey(); static const isTestingEnvironment = bool.fromEnvironment('FLUTTER_TEST'); } diff --git a/lib/constants/network_utils.dart b/lib/constants/network_utils.dart index c1115ebc..10731458 100644 --- a/lib/constants/network_utils.dart +++ b/lib/constants/network_utils.dart @@ -1,3 +1,4 @@ +// Package imports: import 'package:brambldart/brambldart.dart'; import 'package:brambldart/utils.dart' as constants; @@ -7,13 +8,15 @@ class NetworkUtils { static const String toplNet = 'toplnet'; static const String valhalla = 'valhalla'; static const String private = 'private'; - static const String privateIP = '35.226.176.100'; + static const String privateIP = '35.226.176.100'; static int toplNetId = constants.networkRegistry[toplNet]!; static int valhallaId = constants.networkRegistry[valhalla]!; static int privateId = constants.networkRegistry[private]!; static Map networkFees = { - valhallaId: PolyAmount.fromUnitAndValue(PolyUnit.nanopoly, constants.valhallaFee), - toplNetId: PolyAmount.fromUnitAndValue(PolyUnit.nanopoly, constants.toplnetFee), + valhallaId: + PolyAmount.fromUnitAndValue(PolyUnit.nanopoly, constants.valhallaFee), + toplNetId: + PolyAmount.fromUnitAndValue(PolyUnit.nanopoly, constants.toplnetFee), privateId: PolyAmount.zero(), }; static const String projectId = '60ff001754b7c75558146daf'; diff --git a/lib/constants/routes.dart b/lib/constants/routes.dart index a697f6ae..41e4b5d6 100644 --- a/lib/constants/routes.dart +++ b/lib/constants/routes.dart @@ -1,3 +1,4 @@ +// Flutter imports: import 'package:flutter/material.dart'; class Routes { @@ -27,10 +28,14 @@ class Routes { static const restoreWalletNewPassword = '/restore-wallet/new-password'; static const enterWalletPassword = '/restore-wallet/topl-key/enter-password'; static const loginRestoreWalletWithToplKey = '/login/restore-wallet/topl-key'; - static const loginRestoreWalletEnterPassword = '/login/restore-wallet/enter-password'; - static const onboardingRestoreWalletWithMnemonic = '/onboarding/restore-wallet/mnemonic'; - static const onboardingRestoreWalletWithToplKey = '/onboarding/restore-wallet/topl-key'; - static const onboardingRestoreWalletEnterPassword = '/onboarding/restore-wallet/enter-password'; + static const loginRestoreWalletEnterPassword = + '/login/restore-wallet/enter-password'; + static const onboardingRestoreWalletWithMnemonic = + '/onboarding/restore-wallet/mnemonic'; + static const onboardingRestoreWalletWithToplKey = + '/onboarding/restore-wallet/topl-key'; + static const onboardingRestoreWalletEnterPassword = + '/onboarding/restore-wallet/enter-password'; static const onboardingEnableBiometrics = '/onboarding/enable-biometrics'; static const assetsTransferInput = '/asset-transfer'; static const polyTransferInput = '/poly-transfer-input'; diff --git a/lib/constants/rules.dart b/lib/constants/rules.dart index 5ecda1e1..7cf663a1 100644 --- a/lib/constants/rules.dart +++ b/lib/constants/rules.dart @@ -1,17 +1,22 @@ +// Package imports: import 'package:brambldart/brambldart.dart'; import 'package:brambldart/credentials.dart' as hd; import 'package:brambldart/utils.dart' as constants; import 'package:dio/dio.dart'; + +// Project imports: import 'package:ribn/constants/network_utils.dart'; import 'package:ribn/constants/strings.dart'; class Rules { Rules._(); + static const int minPasswordLength = 8; static const int scryptN = 8192; static const int extendedSecretKeySize = hd.extendedSecretKeySize; static const int toplKeyDepth = 2; static const int hardenedOffset = constants.hardenedOffset; + // Reference: [CIP-1852](https://github.com/cardano-foundation/CIPs/blob/master/CIP-1852/CIP-1852.md) // m / purpose' / coin_type' / account' / role / index static const int defaultPurpose = constants.defaultPurpose; // 1852' @@ -23,17 +28,19 @@ class Rules { static const int assetCodeVersion = constants.supportedAssetCodeVersion; static const int internalIdx = 1; static Map txHistoryUrls = { - NetworkUtils.valhallaId: 'https://annulus-api.topl.services/staging/valhalla', NetworkUtils.toplNetId: 'https://annulus-api.topl.services/staging/toplnet', + NetworkUtils.valhallaId: 'https://annulus-api.topl.services/staging/valhalla', NetworkUtils.privateId: 'https://annulus-api.topl.services/staging/valhalla', }; static Map txDetailsRedirectUrls = { - NetworkUtils.valhallaId: 'https://staging.valhalla.annulus.topl.services/#/transaction/', NetworkUtils.toplNetId: 'https://staging.toplnet.annulus.topl.services/#/transaction/', + NetworkUtils.valhallaId: 'https://staging.valhalla.annulus.topl.services/#/transaction/', NetworkUtils.privateId: 'https://staging.valhalla.annulus.topl.services/#/transaction/', }; - static String txHistoryUrl(String addr, int networkId) => '${txHistoryUrls[networkId]!}/v1/address/history/$addr'; - static String txDetailsUrl(String txId, int networkId) => '${txDetailsRedirectUrls[networkId]!}$txId'; + static String txHistoryUrl(String addr, int networkId) => + '${txHistoryUrls[networkId]!}/v1/address/history/$addr'; + static String txDetailsUrl(String txId, int networkId) => + '${txDetailsRedirectUrls[networkId]!}$txId'; static const transferTypes = [Strings.polyTransfer, Strings.assetTransfer, Strings.minting]; static BramblClient getBramblCient(int networkId) { final Dio httpClient = Dio( diff --git a/lib/constants/strings.dart b/lib/constants/strings.dart index b0dd61ad..387558f8 100644 --- a/lib/constants/strings.dart +++ b/lib/constants/strings.dart @@ -41,13 +41,16 @@ class Strings { static const String sign = 'Sign'; static const String back = 'Back'; static const String welcomeToRibn = 'Welcome to Ribn'; - static const String intro = 'Topl’s blockchain wallet used to track, tokenize, and transact impact.'; + static const String intro = + 'Topl’s blockchain wallet used to track, tokenize, and transact impact.'; static const String getStarted = 'Get started'; static const String createWallet = 'Create wallet'; - static const String createWalletDescription = 'First time? Create your new wallet\nand 15 word Seed Phrase.'; + static const String createWalletDescription = + 'First time? Create your new wallet\nand 15 word Seed Phrase.'; static const String importWallet = 'Import wallet'; static const String restoreWallet = 'Restore wallet'; - static const String restoreWalletDescription = 'Restore your existing Ribn wallet\nusing a Seed Phrase or Topl key.'; + static const String restoreWalletDescription = + 'Restore your existing Ribn wallet\nusing a Seed Phrase or Topl key.'; static const String gettingStarted = 'Getting started'; static const String download = 'Download'; static const String gettingStartedDescription = @@ -64,22 +67,27 @@ This 15-word phrase will be used to restore your assets if this device is lost o static const String beforeYouStart = 'Before you start'; static const String okLetsGo = "Ok, let's go!"; static const String weRecommend = 'We Recommend:'; - static const String weRecommendSub = 'At least one of the following to record your Seed Phrase safely:'; + static const String weRecommendSub = + 'At least one of the following to record your Seed Phrase safely:'; static const String paperAndPen = 'A paper and pen.'; static const String securePasswordManager = 'A secure password manager.'; - static const String encryptTextFile = 'A program such as PGP to encrypt your text file.'; + static const String encryptTextFile = + 'A program such as PGP to encrypt your text file.'; static const String writeDownSeedPhrase = 'Write down Seed Phrase'; static const String seedPhraseFileName = 'seed_phrase'; static const String letsTryThatAgain = 'Now, Let’s Try That Again'; static const String heyIWasntKidding = '''Hey I wasn’t kidding, write these words down in the exact order they are shown. Remember don’t take any screenshots!'''; - static const String writeDownSeedPhraseDesc = '''Now, you will write each word of your Seed Phrase down carefully. + static const String writeDownSeedPhraseDesc = + '''Now, you will write each word of your Seed Phrase down carefully. Make sure they are in the exact order shown below. Don’t take screenshots!'''; static const String done = 'Done'; static const String confirmYourSeedPhrase = 'Confirm your Seed Phrase'; - static const String confirmYourSeedPhraseDesc = 'Click each word in the correct order.'; + static const String confirmYourSeedPhraseDesc = + 'Click each word in the correct order.'; static const String seedPhraseConfirmed = 'Seed Phrase Confirmed!'; - static const String seedPhraseConfirmedDesc = '''Good job! Each word in your Seed Phrase has been input correctly. + static const String seedPhraseConfirmedDesc = + '''Good job! Each word in your Seed Phrase has been input correctly. Rest assured, you have saved the correct words, in the correct order.'''; static const String cont = 'Continue'; static const String finalReview = 'Final Review'; @@ -95,7 +103,8 @@ Rest assured, you have saved the correct words, in the correct order.'''; static const String readFollowingCarefully = 'Read Following Carefully'; static const String savedMyWalletPasswordSafely = 'I have saved my Wallet Password safely. I will use this password to unlock my wallet.'; - static const String toplCannotRecoverForMe = 'I understand that Topl cannot recover my Wallet Password for me.'; + static const String toplCannotRecoverForMe = + 'I understand that Topl cannot recover my Wallet Password for me.'; static const String spAndPasswordUnrecoverable = 'I understand that my Seed phrase and Wallet Password are both unrecoverable.'; static const String walletCreated = '''Success!\nWallet Created'''; @@ -103,13 +112,16 @@ Rest assured, you have saved the correct words, in the correct order.'''; '''You’re all set. Make sure to keep your 15 word Seed phrase safe and private.\n You'll need it to recover your wallet if your device is lost or broken.'''; static const String frequentlyAskedQuestions = 'Frequently Asked Questions:'; - static const String howCanIKeepMySeedPhraseSecure = 'How can I keep my Seed Phrase secure?'; + static const String howCanIKeepMySeedPhraseSecure = + 'How can I keep my Seed Phrase secure?'; static const String howCanIKeepMySeedPhraseSecureAns = '''• Save in a password manager.\n• Keep in a safe deposit box.\n• Encrypt and store on an external drive.'''; - static const String howIsASeedPhraseDifferent = 'How is a Seed Phrase different from a Wallet Password?'; + static const String howIsASeedPhraseDifferent = + 'How is a Seed Phrase different from a Wallet Password?'; static const String howIsASeedPhraseDifferentAns = '''The Seed Phrase is different because you can restore your wallet with it. The Wallet Password is for security and only lets you unlock the wallet after it has been imported (or created) in wallet software. Your Wallet Password isn't required to lock your wallet.'''; - static const String howIsMySeedPhraseUnrecoverable = 'How is my Seed Phrase or Wallet Password unrecoverable?'; + static const String howIsMySeedPhraseUnrecoverable = + 'How is my Seed Phrase or Wallet Password unrecoverable?'; static const String howIsMySeedPhraseUnrecoverableAns = '''You are the only one with a record of your Seed Phrase or Wallet Password. Topl does not maintain or have any way to generate either of these for you.'''; static const String howIsMySeedPhraseUnrecoverableNewLine = @@ -117,8 +129,10 @@ You'll need it to recover your wallet if your device is lost or broken.'''; static const String seedPhraseGenerating = 'Seed Phrase Generating...'; static const String goGrabAPenAndPaper = 'Go grab a pen and paper'; - static const String seriouslyGetAPenAndPaper = 'Seriously, get a pen and paper'; - static const String aboutToShowSeedPhrase = '''We are about to show you 15 words.\n + static const String seriouslyGetAPenAndPaper = + 'Seriously, get a pen and paper'; + static const String aboutToShowSeedPhrase = + '''We are about to show you 15 words.\n These words need to be written down carefully and in the exact order shown.'''; static const String seedPhraseGenerated = 'Seed Phrase generated!'; static const String seedPhraseGeneratedDesc = @@ -131,8 +145,10 @@ Write down the each word in the exact order it is presented.'''; static const String ribnWallet = 'Ribn Wallet'; static const String openTheWalletBy = 'Open the Ribn Wallet extension by:'; static const String clickingTheIconPartOne = 'Clicking the '; - static const String clickingTheIconPartTwo = ''' icon on the top right of your browser.\n\nOr, clicking the '''; - static const String clickingTheIconPartThree = ' to find the Ribn Wallet extension in the Chrome extension list.'; + static const String clickingTheIconPartTwo = + ''' icon on the top right of your browser.\n\nOr, clicking the '''; + static const String clickingTheIconPartThree = + ' to find the Ribn Wallet extension in the Chrome extension list.'; static const String ribnVersion = 'Ribn Version'; static const String links = 'Links'; static const String termsOfUse = 'Terms of Use'; @@ -143,13 +159,15 @@ Write down the each word in the exact order it is presented.'''; '''Export Topl Main Key and save it somewhere secure.\nYou can reimport this to restore your wallet.'''; static const String exportWallet = 'Export Wallet'; static const String dangerZone = 'Danger Zone'; - static const String actionNotReversible = 'Careful, these actions are not reversible!'; + static const String actionNotReversible = + 'Careful, these actions are not reversible!'; static const String removeWallet = 'Remove wallet from your device'; static const String disconnectDApps = 'Disconnect DApps from Ribn'; static const String delete = 'Delete'; static const String disconnect = 'Disconnect'; static const String deleteRibnWallet = 'Delete Ribn Wallet'; - static const String disconnectRibnWalletDApps = 'Disconnect all DApps from Ribn wallet?'; + static const String disconnectRibnWalletDApps = + 'Disconnect all DApps from Ribn wallet?'; static const String deleteRibnWalletDesc = 'Enter your wallet password to delete this wallet.\n\nThis action is not reversible. Your Ribn wallet will be deleted from this device.'; static const String disconnectRibnWalletDAppsDesc = @@ -165,11 +183,13 @@ Write down the each word in the exact order it is presented.'''; static const String restoreWalletNewline = 'RESTORE\nWALLET'; static const String restoreWalletDesc = 'You can either use your 15-word Seed Phrase or your Top Level Key to import or recover your wallet.'; - static const String seedPhraseDiffFromTopLevelKey = 'How is a Seed Phrase different from a Top Level Key?'; + static const String seedPhraseDiffFromTopLevelKey = + 'How is a Seed Phrase different from a Top Level Key?'; static const String seedPhraseDiffFromTopLevelKeyDesc = '''Your Seed Phrase is a combination of words that you can use to maintain accounts across multiple blockchains including Topl's. Meanwhile, your Top Level Key is a unique key file, specific to the Topl Blockchain. Either one can be used to access your wallet.'''; - static const String whereCanIFindMyTopLevelKey = 'Where can I find my Top Level Key?'; + static const String whereCanIFindMyTopLevelKey = + 'Where can I find my Top Level Key?'; static const String whereCanIFindMyTopLevelKeyDesc = '''You can find and export your Top Level Key under settings. Please make sure to save this in a secure location as we cannot provide it to you if you lose access to your wallet.'''; static const String hintSeedPhrase = @@ -181,10 +201,12 @@ Write down the each word in the exact order it is presented.'''; static const String needHelp = 'Need help? Contact '; static const String ribnSupport = 'Ribn Support'; - static const String importWalletUsingSeedPhrase = 'Import an existing Ribn wallet using your Seed Phrase.'; + static const String importWalletUsingSeedPhrase = + 'Import an existing Ribn wallet using your Seed Phrase.'; static const String typeSomething = 'Type something'; static const String supportEmail = 'support@topl.me'; - static const String supportEmailLink = 'mailto:$supportEmail?subject=Ribn Support&body='; + static const String supportEmailLink = + 'mailto:$supportEmail?subject=Ribn Support&body='; static const String sendAssets = 'Send assets'; static const String sendNativeCoins = 'Send native coins'; static const String yourRibnWalletAddress = 'Your Ribn Wallet address'; @@ -214,22 +236,25 @@ Write down the each word in the exact order it is presented.'''; static const String mintExistingAsset = 'Mint existing asset'; static const String myRibnWallet = 'MY\nRIBN WALLET'; static const String anotherRecipientsWallet = 'ANOTHER RECIPIENT\'S WALLET '; - static const String mintAssetDesc = 'Where would you like your Asset to be minted?'; + static const String mintAssetDesc = + 'Where would you like your Asset to be minted?'; static const String issuerAddress = 'Issuer address'; static const String walletPasswordInfo = 'Your Wallet Password can lock and unlock your\nwallet on a device where it is already stored.'; static const String assetLongNameInfo = 'The descriptive name used to identify your\nassets locally in your Ribn Wallet.'; - static const String assetCodeLongInfo = 'Asset code serves as a unique identifier\nfor user issued assets.'; + static const String assetCodeLongInfo = + 'Asset code serves as a unique identifier\nfor user issued assets.'; static const String assetCodeShortInfo = - 'This is used to view the short name for your \nasset as this will be the information used to\nidentify a particular asset on the blockchain.'; + 'This is used to view the name for your \nasset as this will be the information used to\nidentify a particular asset on the blockchain.'; static const String issuerAddressInfo = 'This is the address of the party who originally\ncreated a certain asset. You can copy the\nissuer address and paste it into the Topl explorer\nfor more information.'; static const String assetDetails = 'Asset Details'; static const String newWalletPassword = 'New Wallet Password'; static const String newWalletPasswordHint = 'Min 8 characters'; static const String confirmWalletPassword = 'Confirm Wallet Password'; - static const String confirmWalletPasswordHint = 'Re-type your Wallet Password'; + static const String confirmWalletPasswordHint = + 'Re-type your Wallet Password'; static const String warning = 'Warning'; static const String restoreWalletWarning = '''For your security, restoration of a wallet will overwrite all previously stored Ribn activity. This will not affect any activity recorded on the blockchain itself.'''; @@ -254,19 +279,24 @@ Write down the each word in the exact order it is presented.'''; static const String myRibnWalletAddress = 'My Ribn Wallet Address'; static const String copyAddress = 'Copy address'; static const String privacyPolicyUrl = 'https://legal.topl.co/Privacy_Policy'; - static const String termsOfUseUrl = 'https://legal.topl.co/Ribn_License_Agreement'; + static const String termsOfUseUrl = + 'https://legal.topl.co/Ribn_License_Agreement'; static const String loginPasswordInfo = 'Your Wallet Password can lock and unlock your\n wallet on a device where it is already stored.'; - static const String refillCurrentPolyBalance = 'You can refill your Poly balance anytime by\n signing into'; - static const String refillEmptyPolyBalance = 'Time to refill your Poly balance.\nSign into'; + static const String refillCurrentPolyBalance = + 'You can refill your Poly balance anytime by\n signing into'; + static const String refillEmptyPolyBalance = + 'Time to refill your Poly balance.\nSign into'; static const String forgotPassword = 'Forgot password?'; static const String invalidAmountError = 'The amount you entered exceeds\nyour wallet balance for this asset.\nPlease enter a valid amount!'; static const String invalidRecipientAddressError = "Hmmm... That's not a valid Recipient address.\nTip: Instead of typing it out, try copy\nand pasting your Recipient's address."; static const String invalidSeedPhrase = 'Invalid Seed Phrase'; - static const String importExistingWallet = 'Import an existing Ribn wallet using your Seed Phrase.'; - static const String firstTimeWallet = 'First time? Create a new wallet and 15 word Seed Phrase.'; + static const String importExistingWallet = + 'Import an existing Ribn wallet using your Seed Phrase.'; + static const String firstTimeWallet = + 'First time? Create a new wallet and 15 word Seed Phrase.'; static const String passwordExample = 'Example: tree-mice-house'; static const String writeDownSeedPhraseInExactOrder = 'Now, you will write your Seed Phrase in the exact order shown below.'; @@ -279,15 +309,16 @@ Write down the each word in the exact order it is presented.'''; Ribn Wallet does not control the functionality of biometrics and does not have access to your biometrics information.'''; static const String recentActivity = 'Recent Activity'; static const String transactionDetails = 'Activity details'; - static const String noActivityToReview = 'You currently have no wallet activity to review.'; - static const String noAssetsInWallet = 'You currently have no assets in your wallet'; + static const String noActivityToReview = + 'You currently have no wallet activity to review.'; + static const String noAssetsInWallet = + 'You currently have no assets in your wallet'; static const String emptyStateBody = 'Here’s how you can get started:\n • Mint a new asset to a wallet address\n • Share your address to receive assets'; static const String connect = 'Connect'; - static const String connectDApp = ' allowing this site to see my Ribn address, and suggest transactions to approve.'; + static const String connectDApp = + ' allowing this site to see my Ribn address, and suggest transactions to approve.'; static const String connecting = 'Connecting...'; - static const String executeTransaction = 'You are about to execute the following transaction on'; - - - + static const String executeTransaction = + 'You are about to execute the following transaction on'; } diff --git a/lib/constants/test_data.dart b/lib/constants/test_data.dart index 871f1189..67c94dbe 100644 --- a/lib/constants/test_data.dart +++ b/lib/constants/test_data.dart @@ -1,3 +1,4 @@ +// Dart imports: import 'dart:typed_data'; /// This class holds some test data that can be used to initialize a test redux store during development. diff --git a/lib/constants/ui_constants.dart b/lib/constants/ui_constants.dart index 33ea0dca..e65e8eb8 100644 --- a/lib/constants/ui_constants.dart +++ b/lib/constants/ui_constants.dart @@ -1,4 +1,7 @@ +// Flutter imports: import 'package:flutter/material.dart'; + +// Project imports: import 'package:ribn/constants/assets.dart'; class UIConstants { diff --git a/lib/containers/asset_transfer_input_container.dart b/lib/containers/asset_transfer_input_container.dart index c7f21ca3..efcfb7fd 100644 --- a/lib/containers/asset_transfer_input_container.dart +++ b/lib/containers/asset_transfer_input_container.dart @@ -1,11 +1,16 @@ +// Dart imports: import 'dart:async'; -import 'package:brambldart/brambldart.dart'; +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; + +// Package imports: +import 'package:brambldart/brambldart.dart'; import 'package:flutter_redux/flutter_redux.dart'; import 'package:redux/redux.dart'; +// Project imports: import 'package:ribn/actions/transaction_actions.dart'; import 'package:ribn/constants/keys.dart'; import 'package:ribn/constants/network_utils.dart'; @@ -93,16 +98,20 @@ class AssetTransferInputViewModel { (TransferDetails? transferDetails) { final success = transferDetails != null; onRawTxCreated(success); - Keys.navigatorKey.currentState?.pushNamed(Routes.txReview, arguments: transferDetails); + Keys.navigatorKey.currentState + ?.pushNamed(Routes.txReview, arguments: transferDetails); }, ); }, assets: store.state.keychainState.currentNetwork.getAllAssetsInWallet(), currentNetwork: store.state.keychainState.currentNetwork, - networkFee: NetworkUtils.networkFees[store.state.keychainState.currentNetwork.networkId]!.getInNanopoly, + networkFee: NetworkUtils + .networkFees[store.state.keychainState.currentNetwork.networkId]! + .getInNanopoly, assetDetails: store.state.userDetailsState.assetDetails, getAssetBalance: (String? assetCode) { - final List myAssets = store.state.keychainState.currentNetwork.getAllAssetsInWallet(); + final List myAssets = + store.state.keychainState.currentNetwork.getAllAssetsInWallet(); return myAssets .where((element) => element.assetCode.toString() == assetCode) .fold(0, (prev, value) => prev + value.quantity); @@ -123,6 +132,9 @@ class AssetTransferInputViewModel { @override int get hashCode { - return assets.hashCode ^ networkFee.hashCode ^ assetDetails.hashCode ^ currentNetwork.hashCode; + return assets.hashCode ^ + networkFee.hashCode ^ + assetDetails.hashCode ^ + currentNetwork.hashCode; } } diff --git a/lib/containers/create_password_container.dart b/lib/containers/create_password_container.dart index 5c347d28..c5fcc95e 100644 --- a/lib/containers/create_password_container.dart +++ b/lib/containers/create_password_container.dart @@ -1,14 +1,23 @@ +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: import 'package:flutter_redux/flutter_redux.dart'; import 'package:redux/redux.dart'; +// Project imports: import 'package:ribn/actions/onboarding_actions.dart'; import 'package:ribn/models/app_state.dart'; class CreatePasswordContainer extends StatelessWidget { - const CreatePasswordContainer({Key? key, required this.builder, required this.onDidChange}) : super(key: key); + const CreatePasswordContainer({ + Key? key, + required this.builder, + required this.onDidChange, + }) : super(key: key); final ViewModelBuilder builder; - final Function(CreatePasswordViewModel?, CreatePasswordViewModel)? onDidChange; + final Function(CreatePasswordViewModel?, CreatePasswordViewModel)? + onDidChange; @override Widget build(BuildContext context) { @@ -33,8 +42,10 @@ class CreatePasswordViewModel { }); static CreatePasswordViewModel fromStore(Store store) { return CreatePasswordViewModel( - attemptCreatePassword: (String password) => store.dispatch(CreatePasswordAction(password)), - passwordSuccessfullyCreated: store.state.keychainState.keyStoreJson != null, + attemptCreatePassword: (String password) => + store.dispatch(CreatePasswordAction(password)), + passwordSuccessfullyCreated: + store.state.keychainState.keyStoreJson != null, keyStoreJson: store.state.keychainState.keyStoreJson, ); } @@ -49,5 +60,6 @@ class CreatePasswordViewModel { } @override - int get hashCode => passwordSuccessfullyCreated.hashCode & keyStoreJson.hashCode; + int get hashCode => + passwordSuccessfullyCreated.hashCode & keyStoreJson.hashCode; } diff --git a/lib/containers/login_container.dart b/lib/containers/login_container.dart index 281ed2bd..45b597bc 100644 --- a/lib/containers/login_container.dart +++ b/lib/containers/login_container.dart @@ -1,9 +1,14 @@ +// Dart imports: import 'dart:async'; +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: import 'package:flutter_redux/flutter_redux.dart'; import 'package:redux/redux.dart'; +// Project imports: import 'package:ribn/actions/login_actions.dart'; import 'package:ribn/actions/misc_actions.dart'; import 'package:ribn/constants/keys.dart'; @@ -33,7 +38,10 @@ class LoginContainer extends StatelessWidget { class LoginViewModel { /// Handler for when there is an attempt to login using [password]. - final Function({required String password, required VoidCallback onIncorrectPasswordEntered}) attemptLogin; + final Function({ + required String password, + required VoidCallback onIncorrectPasswordEntered, + }) attemptLogin; /// Handler for when there is attempt to restore wallet from the login page. final VoidCallback restoreWallet; @@ -48,7 +56,10 @@ class LoginViewModel { }); static LoginViewModel fromStore(Store store) { return LoginViewModel( - attemptLogin: ({required String password, required VoidCallback onIncorrectPasswordEntered}) async { + attemptLogin: ({ + required String password, + required VoidCallback onIncorrectPasswordEntered, + }) async { final Completer loginCompleter = Completer(); store.dispatch(AttemptLoginAction(password, loginCompleter)); await loginCompleter.future.then((bool loginSuccess) { @@ -59,7 +70,8 @@ class LoginViewModel { } }); }, - restoreWallet: () => store.dispatch(NavigateToRoute(Routes.restoreWallet)), + restoreWallet: () => + store.dispatch(NavigateToRoute(Routes.restoreWallet)), isBiometricsEnabled: store.state.userDetailsState.isBiometricsEnabled, ); } diff --git a/lib/containers/mint_input_container.dart b/lib/containers/mint_input_container.dart index e0f188c4..15c8689b 100644 --- a/lib/containers/mint_input_container.dart +++ b/lib/containers/mint_input_container.dart @@ -1,11 +1,16 @@ +// Dart imports: import 'dart:async'; -import 'package:brambldart/brambldart.dart'; +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; + +// Package imports: +import 'package:brambldart/brambldart.dart'; import 'package:flutter_redux/flutter_redux.dart'; import 'package:redux/redux.dart'; +// Project imports: import 'package:ribn/actions/transaction_actions.dart'; import 'package:ribn/constants/keys.dart'; import 'package:ribn/constants/network_utils.dart'; @@ -76,8 +81,11 @@ class MintInputViewmodel { AssetDetails? assetDetails, required Function(bool success) onRawTxCreated, }) async { - final ToplAddress issuerAddress = store.state.keychainState.currentNetwork.myWalletAddress!.toplAddress; - final TransferType transferType = mintingNewAsset ? TransferType.mintingAsset : TransferType.remintingAsset; + final ToplAddress issuerAddress = store + .state.keychainState.currentNetwork.myWalletAddress!.toplAddress; + final TransferType transferType = mintingNewAsset + ? TransferType.mintingAsset + : TransferType.remintingAsset; final TransferDetails transferDetails = TransferDetails( transferType: transferType, assetCode: AssetCode.initialize( @@ -96,13 +104,17 @@ class MintInputViewmodel { await actionCompleter.future.then( (TransferDetails? transferDetails) { onRawTxCreated(transferDetails != null); - Keys.navigatorKey.currentState?.pushNamed(Routes.txReview, arguments: transferDetails); + Keys.navigatorKey.currentState + ?.pushNamed(Routes.txReview, arguments: transferDetails); }, ); }, - assets: store.state.keychainState.currentNetwork.getAssetsIssuedByWallet(), + assets: + store.state.keychainState.currentNetwork.getAssetsIssuedByWallet(), currentNetwork: store.state.keychainState.currentNetwork, - networkFee: NetworkUtils.networkFees[store.state.keychainState.currentNetwork.networkId]!.getInNanopoly, + networkFee: NetworkUtils + .networkFees[store.state.keychainState.currentNetwork.networkId]! + .getInNanopoly, assetDetails: store.state.userDetailsState.assetDetails, ); } @@ -120,6 +132,9 @@ class MintInputViewmodel { @override int get hashCode { - return networkFee.hashCode ^ assets.hashCode ^ currentNetwork.hashCode ^ assetDetails.hashCode; + return networkFee.hashCode ^ + assets.hashCode ^ + currentNetwork.hashCode ^ + assetDetails.hashCode; } } diff --git a/lib/containers/poly_transfer_input_container.dart b/lib/containers/poly_transfer_input_container.dart index 2d8a0823..ed20a012 100644 --- a/lib/containers/poly_transfer_input_container.dart +++ b/lib/containers/poly_transfer_input_container.dart @@ -1,10 +1,15 @@ +// Dart imports: import 'dart:async'; +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: import 'package:flutter_redux/flutter_redux.dart'; import 'package:redux/redux.dart'; -import 'package:ribn/actions/misc_actions.dart'; +// Project imports: +import 'package:ribn/actions/misc_actions.dart'; import 'package:ribn/actions/transaction_actions.dart'; import 'package:ribn/constants/keys.dart'; import 'package:ribn/constants/network_utils.dart'; @@ -16,7 +21,8 @@ import 'package:ribn/models/transfer_details.dart'; /// Intended to wrap the [PolyTransferInputPage] and provide it with the the [PolyTransferInputViewModel]. class PolyTransferInputContainer extends StatelessWidget { - const PolyTransferInputContainer({Key? key, required this.builder}) : super(key: key); + const PolyTransferInputContainer({Key? key, required this.builder}) + : super(key: key); final ViewModelBuilder builder; @override @@ -61,7 +67,9 @@ class PolyTransferInputViewModel { }); static PolyTransferInputViewModel fromStore(Store store) { - final num networkFee = NetworkUtils.networkFees[store.state.keychainState.currentNetwork.networkId]!.getInNanopoly; + final num networkFee = NetworkUtils + .networkFees[store.state.keychainState.currentNetwork.networkId]! + .getInNanopoly; return PolyTransferInputViewModel( initiateTx: ({ required String amount, @@ -83,14 +91,18 @@ class PolyTransferInputViewModel { (TransferDetails? transferDetails) { final success = transferDetails != null; onRawTxCreated(success); - Keys.navigatorKey.currentState?.pushNamed(Routes.txReview, arguments: transferDetails); + Keys.navigatorKey.currentState + ?.pushNamed(Routes.txReview, arguments: transferDetails); }, ); }, currentNetwork: store.state.keychainState.currentNetwork, networkFee: networkFee, - maxTransferrableAmount: store.state.keychainState.currentNetwork.getPolysInWallet() - networkFee, - navigateToSendAssets: () => store.dispatch(NavigateToRoute(Routes.assetsTransferInput)), + maxTransferrableAmount: + store.state.keychainState.currentNetwork.getPolysInWallet() - + networkFee, + navigateToSendAssets: () => + store.dispatch(NavigateToRoute(Routes.assetsTransferInput)), ); } diff --git a/lib/containers/ribn_app_bar_container.dart b/lib/containers/ribn_app_bar_container.dart index 706c6708..126ba405 100644 --- a/lib/containers/ribn_app_bar_container.dart +++ b/lib/containers/ribn_app_bar_container.dart @@ -1,15 +1,19 @@ +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; + +// Package imports: import 'package:flutter_redux/flutter_redux.dart'; import 'package:redux/redux.dart'; +import 'package:url_launcher/url_launcher_string.dart'; +// Project imports: import 'package:ribn/actions/keychain_actions.dart'; import 'package:ribn/actions/misc_actions.dart'; import 'package:ribn/constants/assets.dart'; import 'package:ribn/constants/routes.dart'; import 'package:ribn/constants/strings.dart'; import 'package:ribn/models/app_state.dart'; -import 'package:url_launcher/url_launcher_string.dart'; class RibnAppBarContainer extends StatelessWidget { const RibnAppBarContainer({ @@ -92,6 +96,9 @@ class RibnAppBarViewModel { @override int get hashCode { - return networks.hashCode ^ currentNetworkName.hashCode ^ updateNetwork.hashCode ^ selectSettingsOption.hashCode; + return networks.hashCode ^ + currentNetworkName.hashCode ^ + updateNetwork.hashCode ^ + selectSettingsOption.hashCode; } } diff --git a/lib/containers/seed_phrase_confirmation_container.dart b/lib/containers/seed_phrase_confirmation_container.dart index cdcc3ede..60b00a4d 100644 --- a/lib/containers/seed_phrase_confirmation_container.dart +++ b/lib/containers/seed_phrase_confirmation_container.dart @@ -1,8 +1,12 @@ +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; + +// Package imports: import 'package:flutter_redux/flutter_redux.dart'; import 'package:redux/redux.dart'; +// Project imports: import 'package:ribn/actions/onboarding_actions.dart'; import 'package:ribn/models/app_state.dart'; @@ -46,10 +50,12 @@ class SeedPhraseConfirmationViewModel { static SeedPhraseConfirmationViewModel fromStore(Store store) { return SeedPhraseConfirmationViewModel( shuffledMnemonic: store.state.onboardingState.shuffledMnemonic!, - mnemonicWordsList: store.state.onboardingState.mnemonic!.split(' ').toList(), + mnemonicWordsList: + store.state.onboardingState.mnemonic!.split(' ').toList(), userSelectedIndices: store.state.onboardingState.userSelectedIndices!, - finishedInputting: store.state.onboardingState.userSelectedIndices?.length == - store.state.onboardingState.shuffledMnemonic?.length, + finishedInputting: + store.state.onboardingState.userSelectedIndices?.length == + store.state.onboardingState.shuffledMnemonic?.length, selectWord: (idx) => store.dispatch(UserSelectedWordAction(idx)), confirmeIdxs: store.state.onboardingState.mobileConfirmIdxs, ); @@ -68,6 +74,9 @@ class SeedPhraseConfirmationViewModel { @override int get hashCode { - return shuffledMnemonic.hashCode ^ mnemonicWordsList.hashCode ^ userSelectedIndices.hashCode ^ selectWord.hashCode; + return shuffledMnemonic.hashCode ^ + mnemonicWordsList.hashCode ^ + userSelectedIndices.hashCode ^ + selectWord.hashCode; } } diff --git a/lib/containers/settings_container.dart b/lib/containers/settings_container.dart index b8cec0ba..3d6670f5 100644 --- a/lib/containers/settings_container.dart +++ b/lib/containers/settings_container.dart @@ -1,16 +1,22 @@ // ignore_for_file: public_member_api_docs, sort_constructors_first + +// Dart imports: import 'dart:async'; +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: import 'package:flutter_redux/flutter_redux.dart'; import 'package:redux/redux.dart'; + +// Project imports: import 'package:ribn/actions/misc_actions.dart'; import 'package:ribn/models/app_state.dart'; import 'package:ribn/platform/platform.dart'; import 'package:ribn/presentation/settings/sections/delete_wallet_confirmation_dialog.dart'; import 'package:ribn/presentation/settings/sections/disconnect_wallet_confirmation_dialog.dart'; - /// Intended to wrap the [SettingsPage] and provide it with the the [SettingsViewModel]. class SettingsContainer extends StatelessWidget { const SettingsContainer({Key? key, required this.builder}) : super(key: key); @@ -86,7 +92,7 @@ class SettingsViewModel { onDisconnectPressed: (BuildContext context) async { final dApps = await PlatformUtils.instance .convertToFuture(PlatformUtils.instance.getDAppList()); - await PlatformUtils.instance.consoleLog(dApps); + // await PlatformUtils.instance.consoleLog(dApps); // final bool disconnectResult = await showDialog( context: context, diff --git a/lib/containers/transaction_history_container.dart b/lib/containers/transaction_history_container.dart index 510aa412..1430e033 100644 --- a/lib/containers/transaction_history_container.dart +++ b/lib/containers/transaction_history_container.dart @@ -1,12 +1,18 @@ -import 'package:brambldart/brambldart.dart'; +// Flutter imports: + +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; + +// Package imports: +import 'package:brambldart/brambldart.dart'; import 'package:flutter_redux/flutter_redux.dart'; import 'package:redux/redux.dart'; + +// Project imports: import 'package:ribn/genus/generated/filters.pb.dart'; import 'package:ribn/genus/generated/services_types.pb.dart'; import 'package:ribn/genus/generated/transactions_query.pbgrpc.dart'; - import 'package:ribn/models/app_state.dart'; import 'package:ribn/platform/platform.dart'; diff --git a/lib/containers/wallet_balance_container.dart b/lib/containers/wallet_balance_container.dart index 229d1788..f12416af 100644 --- a/lib/containers/wallet_balance_container.dart +++ b/lib/containers/wallet_balance_container.dart @@ -1,11 +1,16 @@ +// Dart imports: import 'dart:async'; -import 'package:brambldart/model.dart'; +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; + +// Package imports: +import 'package:brambldart/model.dart'; import 'package:flutter_redux/flutter_redux.dart'; import 'package:redux/redux.dart'; +// Project imports: import 'package:ribn/actions/keychain_actions.dart'; import 'package:ribn/actions/misc_actions.dart'; import 'package:ribn/constants/routes.dart'; @@ -17,7 +22,8 @@ import 'package:ribn/models/ribn_network.dart'; class WalletBalanceContainer extends StatelessWidget { final ViewModelBuilder builder; final void Function(WalletBalanceViewModel vm) onInitialBuild; - final void Function(WalletBalanceViewModel?, WalletBalanceViewModel) onWillChange; + final void Function(WalletBalanceViewModel?, WalletBalanceViewModel) + onWillChange; const WalletBalanceContainer({ Key? key, required this.builder, @@ -57,7 +63,8 @@ class WalletBalanceViewModel { final Function(AssetAmount) viewAssetDetails; /// Callback to refresh balances. - final void Function({required Function(bool success) onBalancesRefreshed}) refreshBalances; + final void Function({required Function(bool success) onBalancesRefreshed}) + refreshBalances; /// The current network being viewed. final RibnNetwork currentNetwork; @@ -82,8 +89,10 @@ class WalletBalanceViewModel { polyBalance: store.state.keychainState.currentNetwork.getPolysInWallet(), assets: store.state.keychainState.currentNetwork.getAllAssetsInWallet(), assetDetails: store.state.userDetailsState.assetDetails, - navigateToSendAssets: () => store.dispatch(NavigateToRoute(Routes.assetsTransferInput)), - navigateToSendPolys: () => store.dispatch(NavigateToRoute(Routes.polyTransferInput)), + navigateToSendAssets: () => + store.dispatch(NavigateToRoute(Routes.assetsTransferInput)), + navigateToSendPolys: () => + store.dispatch(NavigateToRoute(Routes.polyTransferInput)), viewAssetDetails: (AssetAmount assetAmount) => store.dispatch( NavigateToRoute( Routes.assetDetails, @@ -94,7 +103,12 @@ class WalletBalanceViewModel { ), refreshBalances: ({required Function(bool success) onBalancesRefreshed}) { final Completer actionCompleter = Completer(); - store.dispatch(RefreshBalancesAction(actionCompleter, store.state.keychainState.currentNetwork)); + store.dispatch( + RefreshBalancesAction( + actionCompleter, + store.state.keychainState.currentNetwork, + ), + ); actionCompleter.future.then((bool value) => onBalancesRefreshed(value)); }, currentNetwork: store.state.keychainState.currentNetwork, diff --git a/lib/generated/assets.dart b/lib/generated/assets.dart index e69de29b..8b137891 100644 --- a/lib/generated/assets.dart +++ b/lib/generated/assets.dart @@ -0,0 +1 @@ + diff --git a/lib/genus/generated/blocks_query.pb.dart b/lib/genus/generated/blocks_query.pb.dart index f953dbb4..ef306c6d 100644 --- a/lib/genus/generated/blocks_query.pb.dart +++ b/lib/genus/generated/blocks_query.pb.dart @@ -5,23 +5,34 @@ // @dart = 2.12 // ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name +// Dart imports: import 'dart:core' as $core; +// Package imports: import 'package:protobuf/protobuf.dart' as $pb; +// Project imports: import 'filters.pb.dart' as $4; import 'services_types.pb.dart' as $5; import 'types.pb.dart' as $6; class BlockSorting_Height extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'BlockSorting.Height', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'BlockSorting.Height', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) - ..aOB(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'descending') + ..aOB( + 1, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'descending') ..hasRequiredFields = false; BlockSorting_Height._() : super(); @@ -39,7 +50,8 @@ class BlockSorting_Height extends $pb.GeneratedMessage { $pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY, ]) => create()..mergeFromBuffer(i, r); - factory BlockSorting_Height.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory BlockSorting_Height.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -59,10 +71,11 @@ class BlockSorting_Height extends $pb.GeneratedMessage { @$core.pragma('dart2js:noInline') static BlockSorting_Height create() => BlockSorting_Height._(); BlockSorting_Height createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static BlockSorting_Height getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static BlockSorting_Height getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static BlockSorting_Height? _defaultInstance; @$pb.TagNumber(1) @@ -80,13 +93,21 @@ class BlockSorting_Height extends $pb.GeneratedMessage { class BlockSorting_Timestamp extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'BlockSorting.Timestamp', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'BlockSorting.Timestamp', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) - ..aOB(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'descending') + ..aOB( + 1, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'descending') ..hasRequiredFields = false; BlockSorting_Timestamp._() : super(); @@ -104,30 +125,34 @@ class BlockSorting_Timestamp extends $pb.GeneratedMessage { $pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY, ]) => create()..mergeFromBuffer(i, r); - factory BlockSorting_Timestamp.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory BlockSorting_Timestamp.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version', ) - BlockSorting_Timestamp clone() => BlockSorting_Timestamp()..mergeFromMessage(this); + BlockSorting_Timestamp clone() => + BlockSorting_Timestamp()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version', ) - BlockSorting_Timestamp copyWith(void Function(BlockSorting_Timestamp) updates) => + BlockSorting_Timestamp copyWith( + void Function(BlockSorting_Timestamp) updates) => super.copyWith((message) => updates(message as BlockSorting_Timestamp)) as BlockSorting_Timestamp; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static BlockSorting_Timestamp create() => BlockSorting_Timestamp._(); BlockSorting_Timestamp createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static BlockSorting_Timestamp getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static BlockSorting_Timestamp getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static BlockSorting_Timestamp? _defaultInstance; @$pb.TagNumber(1) @@ -145,13 +170,21 @@ class BlockSorting_Timestamp extends $pb.GeneratedMessage { class BlockSorting_Difficulty extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'BlockSorting.Difficulty', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'BlockSorting.Difficulty', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) - ..aOB(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'descending') + ..aOB( + 1, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'descending') ..hasRequiredFields = false; BlockSorting_Difficulty._() : super(); @@ -169,30 +202,34 @@ class BlockSorting_Difficulty extends $pb.GeneratedMessage { $pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY, ]) => create()..mergeFromBuffer(i, r); - factory BlockSorting_Difficulty.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory BlockSorting_Difficulty.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version', ) - BlockSorting_Difficulty clone() => BlockSorting_Difficulty()..mergeFromMessage(this); + BlockSorting_Difficulty clone() => + BlockSorting_Difficulty()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version', ) - BlockSorting_Difficulty copyWith(void Function(BlockSorting_Difficulty) updates) => + BlockSorting_Difficulty copyWith( + void Function(BlockSorting_Difficulty) updates) => super.copyWith((message) => updates(message as BlockSorting_Difficulty)) as BlockSorting_Difficulty; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static BlockSorting_Difficulty create() => BlockSorting_Difficulty._(); BlockSorting_Difficulty createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static BlockSorting_Difficulty getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static BlockSorting_Difficulty getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static BlockSorting_Difficulty? _defaultInstance; @$pb.TagNumber(1) @@ -210,13 +247,21 @@ class BlockSorting_Difficulty extends $pb.GeneratedMessage { class BlockSorting_NumberOfTransactions extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'BlockSorting.NumberOfTransactions', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'BlockSorting.NumberOfTransactions', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) - ..aOB(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'descending') + ..aOB( + 1, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'descending') ..hasRequiredFields = false; BlockSorting_NumberOfTransactions._() : super(); @@ -244,24 +289,29 @@ class BlockSorting_NumberOfTransactions extends $pb.GeneratedMessage { 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version', ) - BlockSorting_NumberOfTransactions clone() => BlockSorting_NumberOfTransactions()..mergeFromMessage(this); + BlockSorting_NumberOfTransactions clone() => + BlockSorting_NumberOfTransactions()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version', ) - BlockSorting_NumberOfTransactions copyWith(void Function(BlockSorting_NumberOfTransactions) updates) => - super.copyWith((message) => updates(message as BlockSorting_NumberOfTransactions)) + BlockSorting_NumberOfTransactions copyWith( + void Function(BlockSorting_NumberOfTransactions) updates) => + super.copyWith((message) => + updates(message as BlockSorting_NumberOfTransactions)) as BlockSorting_NumberOfTransactions; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') - static BlockSorting_NumberOfTransactions create() => BlockSorting_NumberOfTransactions._(); + static BlockSorting_NumberOfTransactions create() => + BlockSorting_NumberOfTransactions._(); BlockSorting_NumberOfTransactions createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') - static BlockSorting_NumberOfTransactions getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static BlockSorting_NumberOfTransactions getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor( + create); static BlockSorting_NumberOfTransactions? _defaultInstance; @$pb.TagNumber(1) @@ -277,10 +327,17 @@ class BlockSorting_NumberOfTransactions extends $pb.GeneratedMessage { void clearDescending() => clearField(1); } -enum BlockSorting_SortBy { height, timestamp, difficulty, numberOfTransactions, notSet } +enum BlockSorting_SortBy { + height, + timestamp, + difficulty, + numberOfTransactions, + notSet +} class BlockSorting extends $pb.GeneratedMessage { - static const $core.Map<$core.int, BlockSorting_SortBy> _BlockSorting_SortByByTag = { + static const $core.Map<$core.int, BlockSorting_SortBy> + _BlockSorting_SortByByTag = { 1: BlockSorting_SortBy.height, 2: BlockSorting_SortBy.timestamp, 3: BlockSorting_SortBy.difficulty, @@ -288,31 +345,43 @@ class BlockSorting extends $pb.GeneratedMessage { 0: BlockSorting_SortBy.notSet }; static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'BlockSorting', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'BlockSorting', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) ..oo(0, [1, 2, 3, 4]) ..aOM( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'height', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'height', subBuilder: BlockSorting_Height.create, ) ..aOM( 2, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'timestamp', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'timestamp', subBuilder: BlockSorting_Timestamp.create, ) ..aOM( 3, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'difficulty', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'difficulty', subBuilder: BlockSorting_Difficulty.create, ) ..aOM( 4, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'numberOfTransactions', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'numberOfTransactions', subBuilder: BlockSorting_NumberOfTransactions.create, ) ..hasRequiredFields = false; @@ -339,9 +408,11 @@ class BlockSorting extends $pb.GeneratedMessage { } return _result; } - factory BlockSorting.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory BlockSorting.fromBuffer($core.List<$core.int> i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); - factory BlockSorting.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory BlockSorting.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -355,17 +426,21 @@ class BlockSorting extends $pb.GeneratedMessage { 'Will be removed in next major version', ) BlockSorting copyWith(void Function(BlockSorting) updates) => - super.copyWith((message) => updates(message as BlockSorting)) as BlockSorting; // ignore: deprecated_member_use + super.copyWith((message) => updates(message as BlockSorting)) + as BlockSorting; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static BlockSorting create() => BlockSorting._(); BlockSorting createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static BlockSorting getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static BlockSorting getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static BlockSorting? _defaultInstance; - BlockSorting_SortBy whichSortBy() => _BlockSorting_SortByByTag[$_whichOneof(0)]!; + BlockSorting_SortBy whichSortBy() => + _BlockSorting_SortByByTag[$_whichOneof(0)]!; void clearSortBy() => clearField($_whichOneof(0)); @$pb.TagNumber(1) @@ -427,30 +502,42 @@ class BlockSorting extends $pb.GeneratedMessage { class QueryBlocksReq extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'QueryBlocksReq', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'QueryBlocksReq', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) ..aOM<$4.BlockFilter>( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'filter', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'filter', subBuilder: $4.BlockFilter.create, ) ..aOM( 2, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'sorting', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'sorting', subBuilder: BlockSorting.create, ) ..a<$core.int>( 3, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'confirmationDepth', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'confirmationDepth', $pb.PbFieldType.OU3, ) ..aOM<$5.Paging>( 4, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'pagingOptions', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'pagingOptions', subBuilder: $5.Paging.create, ) ..hasRequiredFields = false; @@ -477,9 +564,11 @@ class QueryBlocksReq extends $pb.GeneratedMessage { } return _result; } - factory QueryBlocksReq.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory QueryBlocksReq.fromBuffer($core.List<$core.int> i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); - factory QueryBlocksReq.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory QueryBlocksReq.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -499,9 +588,11 @@ class QueryBlocksReq extends $pb.GeneratedMessage { @$core.pragma('dart2js:noInline') static QueryBlocksReq create() => QueryBlocksReq._(); QueryBlocksReq createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static QueryBlocksReq getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static QueryBlocksReq getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static QueryBlocksReq? _defaultInstance; @$pb.TagNumber(1) @@ -561,15 +652,21 @@ class QueryBlocksReq extends $pb.GeneratedMessage { class QueryBlocksRes_Success extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'QueryBlocksRes.Success', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'QueryBlocksRes.Success', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) ..pc<$6.Block>( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'blocks', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'blocks', $pb.PbFieldType.PM, subBuilder: $6.Block.create, ) @@ -590,56 +687,82 @@ class QueryBlocksRes_Success extends $pb.GeneratedMessage { $pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY, ]) => create()..mergeFromBuffer(i, r); - factory QueryBlocksRes_Success.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory QueryBlocksRes_Success.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version', ) - QueryBlocksRes_Success clone() => QueryBlocksRes_Success()..mergeFromMessage(this); + QueryBlocksRes_Success clone() => + QueryBlocksRes_Success()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version', ) - QueryBlocksRes_Success copyWith(void Function(QueryBlocksRes_Success) updates) => + QueryBlocksRes_Success copyWith( + void Function(QueryBlocksRes_Success) updates) => super.copyWith((message) => updates(message as QueryBlocksRes_Success)) as QueryBlocksRes_Success; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static QueryBlocksRes_Success create() => QueryBlocksRes_Success._(); QueryBlocksRes_Success createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static QueryBlocksRes_Success getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static QueryBlocksRes_Success getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static QueryBlocksRes_Success? _defaultInstance; @$pb.TagNumber(1) $core.List<$6.Block> get blocks => $_getList(0); } -enum QueryBlocksRes_Failure_Reason { dataStoreConnectionError, queryTimeout, invalidQuery, notSet } +enum QueryBlocksRes_Failure_Reason { + dataStoreConnectionError, + queryTimeout, + invalidQuery, + notSet +} class QueryBlocksRes_Failure extends $pb.GeneratedMessage { - static const $core.Map<$core.int, QueryBlocksRes_Failure_Reason> _QueryBlocksRes_Failure_ReasonByTag = { + static const $core.Map<$core.int, QueryBlocksRes_Failure_Reason> + _QueryBlocksRes_Failure_ReasonByTag = { 1: QueryBlocksRes_Failure_Reason.dataStoreConnectionError, 2: QueryBlocksRes_Failure_Reason.queryTimeout, 3: QueryBlocksRes_Failure_Reason.invalidQuery, 0: QueryBlocksRes_Failure_Reason.notSet }; static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'QueryBlocksRes.Failure', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'QueryBlocksRes.Failure', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) ..oo(0, [1, 2, 3]) - ..aOS(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'dataStoreConnectionError') - ..aOS(2, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'queryTimeout') - ..aOS(3, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'invalidQuery') + ..aOS( + 1, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'dataStoreConnectionError') + ..aOS( + 2, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'queryTimeout') + ..aOS( + 3, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'invalidQuery') ..hasRequiredFields = false; QueryBlocksRes_Failure._() : super(); @@ -665,33 +788,38 @@ class QueryBlocksRes_Failure extends $pb.GeneratedMessage { $pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY, ]) => create()..mergeFromBuffer(i, r); - factory QueryBlocksRes_Failure.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory QueryBlocksRes_Failure.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version', ) - QueryBlocksRes_Failure clone() => QueryBlocksRes_Failure()..mergeFromMessage(this); + QueryBlocksRes_Failure clone() => + QueryBlocksRes_Failure()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version', ) - QueryBlocksRes_Failure copyWith(void Function(QueryBlocksRes_Failure) updates) => + QueryBlocksRes_Failure copyWith( + void Function(QueryBlocksRes_Failure) updates) => super.copyWith((message) => updates(message as QueryBlocksRes_Failure)) as QueryBlocksRes_Failure; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static QueryBlocksRes_Failure create() => QueryBlocksRes_Failure._(); QueryBlocksRes_Failure createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static QueryBlocksRes_Failure getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static QueryBlocksRes_Failure getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static QueryBlocksRes_Failure? _defaultInstance; - QueryBlocksRes_Failure_Reason whichReason() => _QueryBlocksRes_Failure_ReasonByTag[$_whichOneof(0)]!; + QueryBlocksRes_Failure_Reason whichReason() => + _QueryBlocksRes_Failure_ReasonByTag[$_whichOneof(0)]!; void clearReason() => clearField($_whichOneof(0)); @$pb.TagNumber(1) @@ -734,27 +862,36 @@ class QueryBlocksRes_Failure extends $pb.GeneratedMessage { enum QueryBlocksRes_Result { success, failure, notSet } class QueryBlocksRes extends $pb.GeneratedMessage { - static const $core.Map<$core.int, QueryBlocksRes_Result> _QueryBlocksRes_ResultByTag = { + static const $core.Map<$core.int, QueryBlocksRes_Result> + _QueryBlocksRes_ResultByTag = { 1: QueryBlocksRes_Result.success, 2: QueryBlocksRes_Result.failure, 0: QueryBlocksRes_Result.notSet }; static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'QueryBlocksRes', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'QueryBlocksRes', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) ..oo(0, [1, 2]) ..aOM( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'success', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'success', subBuilder: QueryBlocksRes_Success.create, ) ..aOM( 2, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'failure', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'failure', subBuilder: QueryBlocksRes_Failure.create, ) ..hasRequiredFields = false; @@ -773,9 +910,11 @@ class QueryBlocksRes extends $pb.GeneratedMessage { } return _result; } - factory QueryBlocksRes.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory QueryBlocksRes.fromBuffer($core.List<$core.int> i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); - factory QueryBlocksRes.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory QueryBlocksRes.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -795,12 +934,15 @@ class QueryBlocksRes extends $pb.GeneratedMessage { @$core.pragma('dart2js:noInline') static QueryBlocksRes create() => QueryBlocksRes._(); QueryBlocksRes createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static QueryBlocksRes getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static QueryBlocksRes getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static QueryBlocksRes? _defaultInstance; - QueryBlocksRes_Result whichResult() => _QueryBlocksRes_ResultByTag[$_whichOneof(0)]!; + QueryBlocksRes_Result whichResult() => + _QueryBlocksRes_ResultByTag[$_whichOneof(0)]!; void clearResult() => clearField($_whichOneof(0)); @$pb.TagNumber(1) @@ -834,25 +976,35 @@ class QueryBlocksRes extends $pb.GeneratedMessage { class BlocksQueryStreamReq extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'BlocksQueryStreamReq', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'BlocksQueryStreamReq', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) ..aOM<$4.BlockFilter>( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'filter', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'filter', subBuilder: $4.BlockFilter.create, ) ..aOM( 2, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'sorting', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'sorting', subBuilder: BlockSorting.create, ) ..a<$core.int>( 3, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'confirmationDepth', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'confirmationDepth', $pb.PbFieldType.OU3, ) ..hasRequiredFields = false; @@ -880,14 +1032,16 @@ class BlocksQueryStreamReq extends $pb.GeneratedMessage { $pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY, ]) => create()..mergeFromBuffer(i, r); - factory BlocksQueryStreamReq.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory BlocksQueryStreamReq.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version', ) - BlocksQueryStreamReq clone() => BlocksQueryStreamReq()..mergeFromMessage(this); + BlocksQueryStreamReq clone() => + BlocksQueryStreamReq()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' @@ -900,10 +1054,11 @@ class BlocksQueryStreamReq extends $pb.GeneratedMessage { @$core.pragma('dart2js:noInline') static BlocksQueryStreamReq create() => BlocksQueryStreamReq._(); BlocksQueryStreamReq createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static BlocksQueryStreamReq getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static BlocksQueryStreamReq getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static BlocksQueryStreamReq? _defaultInstance; @$pb.TagNumber(1) @@ -947,24 +1102,41 @@ class BlocksQueryStreamReq extends $pb.GeneratedMessage { void clearConfirmationDepth() => clearField(3); } -enum BlocksQueryStreamRes_Failure_Reason { dataStoreConnectionError, invalidQuery, notSet } +enum BlocksQueryStreamRes_Failure_Reason { + dataStoreConnectionError, + invalidQuery, + notSet +} class BlocksQueryStreamRes_Failure extends $pb.GeneratedMessage { - static const $core.Map<$core.int, BlocksQueryStreamRes_Failure_Reason> _BlocksQueryStreamRes_Failure_ReasonByTag = { + static const $core.Map<$core.int, BlocksQueryStreamRes_Failure_Reason> + _BlocksQueryStreamRes_Failure_ReasonByTag = { 1: BlocksQueryStreamRes_Failure_Reason.dataStoreConnectionError, 2: BlocksQueryStreamRes_Failure_Reason.invalidQuery, 0: BlocksQueryStreamRes_Failure_Reason.notSet }; static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'BlocksQueryStreamRes.Failure', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'BlocksQueryStreamRes.Failure', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) ..oo(0, [1, 2]) - ..aOS(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'dataStoreConnectionError') - ..aOS(2, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'invalidQuery') + ..aOS( + 1, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'dataStoreConnectionError') + ..aOS( + 2, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'invalidQuery') ..hasRequiredFields = false; BlocksQueryStreamRes_Failure._() : super(); @@ -996,26 +1168,32 @@ class BlocksQueryStreamRes_Failure extends $pb.GeneratedMessage { 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version', ) - BlocksQueryStreamRes_Failure clone() => BlocksQueryStreamRes_Failure()..mergeFromMessage(this); + BlocksQueryStreamRes_Failure clone() => + BlocksQueryStreamRes_Failure()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version', ) - BlocksQueryStreamRes_Failure copyWith(void Function(BlocksQueryStreamRes_Failure) updates) => - super.copyWith((message) => updates(message as BlocksQueryStreamRes_Failure)) + BlocksQueryStreamRes_Failure copyWith( + void Function(BlocksQueryStreamRes_Failure) updates) => + super.copyWith( + (message) => updates(message as BlocksQueryStreamRes_Failure)) as BlocksQueryStreamRes_Failure; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') - static BlocksQueryStreamRes_Failure create() => BlocksQueryStreamRes_Failure._(); + static BlocksQueryStreamRes_Failure create() => + BlocksQueryStreamRes_Failure._(); BlocksQueryStreamRes_Failure createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static BlocksQueryStreamRes_Failure getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static BlocksQueryStreamRes_Failure getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static BlocksQueryStreamRes_Failure? _defaultInstance; - BlocksQueryStreamRes_Failure_Reason whichReason() => _BlocksQueryStreamRes_Failure_ReasonByTag[$_whichOneof(0)]!; + BlocksQueryStreamRes_Failure_Reason whichReason() => + _BlocksQueryStreamRes_Failure_ReasonByTag[$_whichOneof(0)]!; void clearReason() => clearField($_whichOneof(0)); @$pb.TagNumber(1) @@ -1046,27 +1224,36 @@ class BlocksQueryStreamRes_Failure extends $pb.GeneratedMessage { enum BlocksQueryStreamRes_Result { block, failure, notSet } class BlocksQueryStreamRes extends $pb.GeneratedMessage { - static const $core.Map<$core.int, BlocksQueryStreamRes_Result> _BlocksQueryStreamRes_ResultByTag = { + static const $core.Map<$core.int, BlocksQueryStreamRes_Result> + _BlocksQueryStreamRes_ResultByTag = { 1: BlocksQueryStreamRes_Result.block, 2: BlocksQueryStreamRes_Result.failure, 0: BlocksQueryStreamRes_Result.notSet }; static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'BlocksQueryStreamRes', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'BlocksQueryStreamRes', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) ..oo(0, [1, 2]) ..aOM<$6.Block>( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'block', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'block', subBuilder: $6.Block.create, ) ..aOM( 2, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'failure', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'failure', subBuilder: BlocksQueryStreamRes_Failure.create, ) ..hasRequiredFields = false; @@ -1090,14 +1277,16 @@ class BlocksQueryStreamRes extends $pb.GeneratedMessage { $pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY, ]) => create()..mergeFromBuffer(i, r); - factory BlocksQueryStreamRes.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory BlocksQueryStreamRes.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version', ) - BlocksQueryStreamRes clone() => BlocksQueryStreamRes()..mergeFromMessage(this); + BlocksQueryStreamRes clone() => + BlocksQueryStreamRes()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' @@ -1110,13 +1299,15 @@ class BlocksQueryStreamRes extends $pb.GeneratedMessage { @$core.pragma('dart2js:noInline') static BlocksQueryStreamRes create() => BlocksQueryStreamRes._(); BlocksQueryStreamRes createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static BlocksQueryStreamRes getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static BlocksQueryStreamRes getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static BlocksQueryStreamRes? _defaultInstance; - BlocksQueryStreamRes_Result whichResult() => _BlocksQueryStreamRes_ResultByTag[$_whichOneof(0)]!; + BlocksQueryStreamRes_Result whichResult() => + _BlocksQueryStreamRes_ResultByTag[$_whichOneof(0)]!; void clearResult() => clearField($_whichOneof(0)); @$pb.TagNumber(1) diff --git a/lib/genus/generated/blocks_query.pbenum.dart b/lib/genus/generated/blocks_query.pbenum.dart index 02741272..e2619d12 100644 --- a/lib/genus/generated/blocks_query.pbenum.dart +++ b/lib/genus/generated/blocks_query.pbenum.dart @@ -4,4 +4,3 @@ // // @dart = 2.12 // ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name - diff --git a/lib/genus/generated/blocks_query.pbgrpc.dart b/lib/genus/generated/blocks_query.pbgrpc.dart index b2cf221f..17a81ce9 100644 --- a/lib/genus/generated/blocks_query.pbgrpc.dart +++ b/lib/genus/generated/blocks_query.pbgrpc.dart @@ -5,21 +5,27 @@ // @dart = 2.12 // ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name +// Dart imports: import 'dart:async' as $async; - import 'dart:core' as $core; +// Package imports: import 'package:grpc/service_api.dart' as $grpc; + +// Project imports: import 'blocks_query.pb.dart' as $1; + export 'blocks_query.pb.dart'; class BlocksQueryClient extends $grpc.Client { - static final _$query = $grpc.ClientMethod<$1.QueryBlocksReq, $1.QueryBlocksRes>( + static final _$query = + $grpc.ClientMethod<$1.QueryBlocksReq, $1.QueryBlocksRes>( '/co.topl.genus.services.BlocksQuery/Query', ($1.QueryBlocksReq value) => value.writeToBuffer(), ($core.List<$core.int> value) => $1.QueryBlocksRes.fromBuffer(value), ); - static final _$queryStream = $grpc.ClientMethod<$1.BlocksQueryStreamReq, $1.BlocksQueryStreamRes>( + static final _$queryStream = + $grpc.ClientMethod<$1.BlocksQueryStreamReq, $1.BlocksQueryStreamRes>( '/co.topl.genus.services.BlocksQuery/QueryStream', ($1.BlocksQueryStreamReq value) => value.writeToBuffer(), ($core.List<$core.int> value) => $1.BlocksQueryStreamRes.fromBuffer(value), @@ -70,7 +76,8 @@ abstract class BlocksQueryServiceBase extends $grpc.Service { queryStream_Pre, false, true, - ($core.List<$core.int> value) => $1.BlocksQueryStreamReq.fromBuffer(value), + ($core.List<$core.int> value) => + $1.BlocksQueryStreamReq.fromBuffer(value), ($1.BlocksQueryStreamRes value) => value.writeToBuffer(), ), ); diff --git a/lib/genus/generated/blocks_query.pbjson.dart b/lib/genus/generated/blocks_query.pbjson.dart index 672868d0..9abd574f 100644 --- a/lib/genus/generated/blocks_query.pbjson.dart +++ b/lib/genus/generated/blocks_query.pbjson.dart @@ -5,19 +5,58 @@ // @dart = 2.12 // ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,deprecated_member_use_from_same_package,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name -import 'dart:core' as $core; +// Dart imports: import 'dart:convert' as $convert; +import 'dart:core' as $core; import 'dart:typed_data' as $typed_data; + @$core.Deprecated('Use blockSortingDescriptor instead') const BlockSorting$json = const { '1': 'BlockSorting', '2': const [ - const {'1': 'height', '3': 1, '4': 1, '5': 11, '6': '.co.topl.genus.services.BlockSorting.Height', '9': 0, '10': 'height'}, - const {'1': 'timestamp', '3': 2, '4': 1, '5': 11, '6': '.co.topl.genus.services.BlockSorting.Timestamp', '9': 0, '10': 'timestamp'}, - const {'1': 'difficulty', '3': 3, '4': 1, '5': 11, '6': '.co.topl.genus.services.BlockSorting.Difficulty', '9': 0, '10': 'difficulty'}, - const {'1': 'number_of_transactions', '3': 4, '4': 1, '5': 11, '6': '.co.topl.genus.services.BlockSorting.NumberOfTransactions', '9': 0, '10': 'numberOfTransactions'}, + const { + '1': 'height', + '3': 1, + '4': 1, + '5': 11, + '6': '.co.topl.genus.services.BlockSorting.Height', + '9': 0, + '10': 'height' + }, + const { + '1': 'timestamp', + '3': 2, + '4': 1, + '5': 11, + '6': '.co.topl.genus.services.BlockSorting.Timestamp', + '9': 0, + '10': 'timestamp' + }, + const { + '1': 'difficulty', + '3': 3, + '4': 1, + '5': 11, + '6': '.co.topl.genus.services.BlockSorting.Difficulty', + '9': 0, + '10': 'difficulty' + }, + const { + '1': 'number_of_transactions', + '3': 4, + '4': 1, + '5': 11, + '6': '.co.topl.genus.services.BlockSorting.NumberOfTransactions', + '9': 0, + '10': 'numberOfTransactions' + }, + ], + '3': const [ + BlockSorting_Height$json, + BlockSorting_Timestamp$json, + BlockSorting_Difficulty$json, + BlockSorting_NumberOfTransactions$json ], - '3': const [BlockSorting_Height$json, BlockSorting_Timestamp$json, BlockSorting_Difficulty$json, BlockSorting_NumberOfTransactions$json], '8': const [ const {'1': 'sort_by'}, ], @@ -56,26 +95,71 @@ const BlockSorting_NumberOfTransactions$json = const { }; /// Descriptor for `BlockSorting`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List blockSortingDescriptor = $convert.base64Decode('CgxCbG9ja1NvcnRpbmcSRQoGaGVpZ2h0GAEgASgLMisuY28udG9wbC5nZW51cy5zZXJ2aWNlcy5CbG9ja1NvcnRpbmcuSGVpZ2h0SABSBmhlaWdodBJOCgl0aW1lc3RhbXAYAiABKAsyLi5jby50b3BsLmdlbnVzLnNlcnZpY2VzLkJsb2NrU29ydGluZy5UaW1lc3RhbXBIAFIJdGltZXN0YW1wElEKCmRpZmZpY3VsdHkYAyABKAsyLy5jby50b3BsLmdlbnVzLnNlcnZpY2VzLkJsb2NrU29ydGluZy5EaWZmaWN1bHR5SABSCmRpZmZpY3VsdHkScQoWbnVtYmVyX29mX3RyYW5zYWN0aW9ucxgEIAEoCzI5LmNvLnRvcGwuZ2VudXMuc2VydmljZXMuQmxvY2tTb3J0aW5nLk51bWJlck9mVHJhbnNhY3Rpb25zSABSFG51bWJlck9mVHJhbnNhY3Rpb25zGigKBkhlaWdodBIeCgpkZXNjZW5kaW5nGAEgASgIUgpkZXNjZW5kaW5nGisKCVRpbWVzdGFtcBIeCgpkZXNjZW5kaW5nGAEgASgIUgpkZXNjZW5kaW5nGiwKCkRpZmZpY3VsdHkSHgoKZGVzY2VuZGluZxgBIAEoCFIKZGVzY2VuZGluZxo2ChROdW1iZXJPZlRyYW5zYWN0aW9ucxIeCgpkZXNjZW5kaW5nGAEgASgIUgpkZXNjZW5kaW5nQgkKB3NvcnRfYnk='); +final $typed_data.Uint8List blockSortingDescriptor = $convert.base64Decode( + 'CgxCbG9ja1NvcnRpbmcSRQoGaGVpZ2h0GAEgASgLMisuY28udG9wbC5nZW51cy5zZXJ2aWNlcy5CbG9ja1NvcnRpbmcuSGVpZ2h0SABSBmhlaWdodBJOCgl0aW1lc3RhbXAYAiABKAsyLi5jby50b3BsLmdlbnVzLnNlcnZpY2VzLkJsb2NrU29ydGluZy5UaW1lc3RhbXBIAFIJdGltZXN0YW1wElEKCmRpZmZpY3VsdHkYAyABKAsyLy5jby50b3BsLmdlbnVzLnNlcnZpY2VzLkJsb2NrU29ydGluZy5EaWZmaWN1bHR5SABSCmRpZmZpY3VsdHkScQoWbnVtYmVyX29mX3RyYW5zYWN0aW9ucxgEIAEoCzI5LmNvLnRvcGwuZ2VudXMuc2VydmljZXMuQmxvY2tTb3J0aW5nLk51bWJlck9mVHJhbnNhY3Rpb25zSABSFG51bWJlck9mVHJhbnNhY3Rpb25zGigKBkhlaWdodBIeCgpkZXNjZW5kaW5nGAEgASgIUgpkZXNjZW5kaW5nGisKCVRpbWVzdGFtcBIeCgpkZXNjZW5kaW5nGAEgASgIUgpkZXNjZW5kaW5nGiwKCkRpZmZpY3VsdHkSHgoKZGVzY2VuZGluZxgBIAEoCFIKZGVzY2VuZGluZxo2ChROdW1iZXJPZlRyYW5zYWN0aW9ucxIeCgpkZXNjZW5kaW5nGAEgASgIUgpkZXNjZW5kaW5nQgkKB3NvcnRfYnk='); @$core.Deprecated('Use queryBlocksReqDescriptor instead') const QueryBlocksReq$json = const { '1': 'QueryBlocksReq', '2': const [ - const {'1': 'filter', '3': 1, '4': 1, '5': 11, '6': '.co.topl.genus.BlockFilter', '10': 'filter'}, - const {'1': 'sorting', '3': 2, '4': 1, '5': 11, '6': '.co.topl.genus.services.BlockSorting', '10': 'sorting'}, - const {'1': 'confirmation_depth', '3': 3, '4': 1, '5': 13, '10': 'confirmationDepth'}, - const {'1': 'paging_options', '3': 4, '4': 1, '5': 11, '6': '.co.topl.genus.services.Paging', '10': 'pagingOptions'}, + const { + '1': 'filter', + '3': 1, + '4': 1, + '5': 11, + '6': '.co.topl.genus.BlockFilter', + '10': 'filter' + }, + const { + '1': 'sorting', + '3': 2, + '4': 1, + '5': 11, + '6': '.co.topl.genus.services.BlockSorting', + '10': 'sorting' + }, + const { + '1': 'confirmation_depth', + '3': 3, + '4': 1, + '5': 13, + '10': 'confirmationDepth' + }, + const { + '1': 'paging_options', + '3': 4, + '4': 1, + '5': 11, + '6': '.co.topl.genus.services.Paging', + '10': 'pagingOptions' + }, ], }; /// Descriptor for `QueryBlocksReq`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List queryBlocksReqDescriptor = $convert.base64Decode('Cg5RdWVyeUJsb2Nrc1JlcRIyCgZmaWx0ZXIYASABKAsyGi5jby50b3BsLmdlbnVzLkJsb2NrRmlsdGVyUgZmaWx0ZXISPgoHc29ydGluZxgCIAEoCzIkLmNvLnRvcGwuZ2VudXMuc2VydmljZXMuQmxvY2tTb3J0aW5nUgdzb3J0aW5nEi0KEmNvbmZpcm1hdGlvbl9kZXB0aBgDIAEoDVIRY29uZmlybWF0aW9uRGVwdGgSRQoOcGFnaW5nX29wdGlvbnMYBCABKAsyHi5jby50b3BsLmdlbnVzLnNlcnZpY2VzLlBhZ2luZ1INcGFnaW5nT3B0aW9ucw=='); +final $typed_data.Uint8List queryBlocksReqDescriptor = $convert.base64Decode( + 'Cg5RdWVyeUJsb2Nrc1JlcRIyCgZmaWx0ZXIYASABKAsyGi5jby50b3BsLmdlbnVzLkJsb2NrRmlsdGVyUgZmaWx0ZXISPgoHc29ydGluZxgCIAEoCzIkLmNvLnRvcGwuZ2VudXMuc2VydmljZXMuQmxvY2tTb3J0aW5nUgdzb3J0aW5nEi0KEmNvbmZpcm1hdGlvbl9kZXB0aBgDIAEoDVIRY29uZmlybWF0aW9uRGVwdGgSRQoOcGFnaW5nX29wdGlvbnMYBCABKAsyHi5jby50b3BsLmdlbnVzLnNlcnZpY2VzLlBhZ2luZ1INcGFnaW5nT3B0aW9ucw=='); @$core.Deprecated('Use queryBlocksResDescriptor instead') const QueryBlocksRes$json = const { '1': 'QueryBlocksRes', '2': const [ - const {'1': 'success', '3': 1, '4': 1, '5': 11, '6': '.co.topl.genus.services.QueryBlocksRes.Success', '9': 0, '10': 'success'}, - const {'1': 'failure', '3': 2, '4': 1, '5': 11, '6': '.co.topl.genus.services.QueryBlocksRes.Failure', '9': 0, '10': 'failure'}, + const { + '1': 'success', + '3': 1, + '4': 1, + '5': 11, + '6': '.co.topl.genus.services.QueryBlocksRes.Success', + '9': 0, + '10': 'success' + }, + const { + '1': 'failure', + '3': 2, + '4': 1, + '5': 11, + '6': '.co.topl.genus.services.QueryBlocksRes.Failure', + '9': 0, + '10': 'failure' + }, ], '3': const [QueryBlocksRes_Success$json, QueryBlocksRes_Failure$json], '8': const [ @@ -87,7 +171,14 @@ const QueryBlocksRes$json = const { const QueryBlocksRes_Success$json = const { '1': 'Success', '2': const [ - const {'1': 'blocks', '3': 1, '4': 3, '5': 11, '6': '.co.topl.genus.Block', '10': 'blocks'}, + const { + '1': 'blocks', + '3': 1, + '4': 3, + '5': 11, + '6': '.co.topl.genus.Block', + '10': 'blocks' + }, ], }; @@ -95,9 +186,30 @@ const QueryBlocksRes_Success$json = const { const QueryBlocksRes_Failure$json = const { '1': 'Failure', '2': const [ - const {'1': 'data_store_connection_error', '3': 1, '4': 1, '5': 9, '9': 0, '10': 'dataStoreConnectionError'}, - const {'1': 'query_timeout', '3': 2, '4': 1, '5': 9, '9': 0, '10': 'queryTimeout'}, - const {'1': 'invalid_query', '3': 3, '4': 1, '5': 9, '9': 0, '10': 'invalidQuery'}, + const { + '1': 'data_store_connection_error', + '3': 1, + '4': 1, + '5': 9, + '9': 0, + '10': 'dataStoreConnectionError' + }, + const { + '1': 'query_timeout', + '3': 2, + '4': 1, + '5': 9, + '9': 0, + '10': 'queryTimeout' + }, + const { + '1': 'invalid_query', + '3': 3, + '4': 1, + '5': 9, + '9': 0, + '10': 'invalidQuery' + }, ], '8': const [ const {'1': 'reason'}, @@ -105,25 +217,63 @@ const QueryBlocksRes_Failure$json = const { }; /// Descriptor for `QueryBlocksRes`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List queryBlocksResDescriptor = $convert.base64Decode('Cg5RdWVyeUJsb2Nrc1JlcxJKCgdzdWNjZXNzGAEgASgLMi4uY28udG9wbC5nZW51cy5zZXJ2aWNlcy5RdWVyeUJsb2Nrc1Jlcy5TdWNjZXNzSABSB3N1Y2Nlc3MSSgoHZmFpbHVyZRgCIAEoCzIuLmNvLnRvcGwuZ2VudXMuc2VydmljZXMuUXVlcnlCbG9ja3NSZXMuRmFpbHVyZUgAUgdmYWlsdXJlGjcKB1N1Y2Nlc3MSLAoGYmxvY2tzGAEgAygLMhQuY28udG9wbC5nZW51cy5CbG9ja1IGYmxvY2tzGqIBCgdGYWlsdXJlEj8KG2RhdGFfc3RvcmVfY29ubmVjdGlvbl9lcnJvchgBIAEoCUgAUhhkYXRhU3RvcmVDb25uZWN0aW9uRXJyb3ISJQoNcXVlcnlfdGltZW91dBgCIAEoCUgAUgxxdWVyeVRpbWVvdXQSJQoNaW52YWxpZF9xdWVyeRgDIAEoCUgAUgxpbnZhbGlkUXVlcnlCCAoGcmVhc29uQggKBnJlc3VsdA=='); +final $typed_data.Uint8List queryBlocksResDescriptor = $convert.base64Decode( + 'Cg5RdWVyeUJsb2Nrc1JlcxJKCgdzdWNjZXNzGAEgASgLMi4uY28udG9wbC5nZW51cy5zZXJ2aWNlcy5RdWVyeUJsb2Nrc1Jlcy5TdWNjZXNzSABSB3N1Y2Nlc3MSSgoHZmFpbHVyZRgCIAEoCzIuLmNvLnRvcGwuZ2VudXMuc2VydmljZXMuUXVlcnlCbG9ja3NSZXMuRmFpbHVyZUgAUgdmYWlsdXJlGjcKB1N1Y2Nlc3MSLAoGYmxvY2tzGAEgAygLMhQuY28udG9wbC5nZW51cy5CbG9ja1IGYmxvY2tzGqIBCgdGYWlsdXJlEj8KG2RhdGFfc3RvcmVfY29ubmVjdGlvbl9lcnJvchgBIAEoCUgAUhhkYXRhU3RvcmVDb25uZWN0aW9uRXJyb3ISJQoNcXVlcnlfdGltZW91dBgCIAEoCUgAUgxxdWVyeVRpbWVvdXQSJQoNaW52YWxpZF9xdWVyeRgDIAEoCUgAUgxpbnZhbGlkUXVlcnlCCAoGcmVhc29uQggKBnJlc3VsdA=='); @$core.Deprecated('Use blocksQueryStreamReqDescriptor instead') const BlocksQueryStreamReq$json = const { '1': 'BlocksQueryStreamReq', '2': const [ - const {'1': 'filter', '3': 1, '4': 1, '5': 11, '6': '.co.topl.genus.BlockFilter', '10': 'filter'}, - const {'1': 'sorting', '3': 2, '4': 1, '5': 11, '6': '.co.topl.genus.services.BlockSorting', '10': 'sorting'}, - const {'1': 'confirmation_depth', '3': 3, '4': 1, '5': 13, '10': 'confirmationDepth'}, + const { + '1': 'filter', + '3': 1, + '4': 1, + '5': 11, + '6': '.co.topl.genus.BlockFilter', + '10': 'filter' + }, + const { + '1': 'sorting', + '3': 2, + '4': 1, + '5': 11, + '6': '.co.topl.genus.services.BlockSorting', + '10': 'sorting' + }, + const { + '1': 'confirmation_depth', + '3': 3, + '4': 1, + '5': 13, + '10': 'confirmationDepth' + }, ], }; /// Descriptor for `BlocksQueryStreamReq`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List blocksQueryStreamReqDescriptor = $convert.base64Decode('ChRCbG9ja3NRdWVyeVN0cmVhbVJlcRIyCgZmaWx0ZXIYASABKAsyGi5jby50b3BsLmdlbnVzLkJsb2NrRmlsdGVyUgZmaWx0ZXISPgoHc29ydGluZxgCIAEoCzIkLmNvLnRvcGwuZ2VudXMuc2VydmljZXMuQmxvY2tTb3J0aW5nUgdzb3J0aW5nEi0KEmNvbmZpcm1hdGlvbl9kZXB0aBgDIAEoDVIRY29uZmlybWF0aW9uRGVwdGg='); +final $typed_data.Uint8List blocksQueryStreamReqDescriptor = $convert.base64Decode( + 'ChRCbG9ja3NRdWVyeVN0cmVhbVJlcRIyCgZmaWx0ZXIYASABKAsyGi5jby50b3BsLmdlbnVzLkJsb2NrRmlsdGVyUgZmaWx0ZXISPgoHc29ydGluZxgCIAEoCzIkLmNvLnRvcGwuZ2VudXMuc2VydmljZXMuQmxvY2tTb3J0aW5nUgdzb3J0aW5nEi0KEmNvbmZpcm1hdGlvbl9kZXB0aBgDIAEoDVIRY29uZmlybWF0aW9uRGVwdGg='); @$core.Deprecated('Use blocksQueryStreamResDescriptor instead') const BlocksQueryStreamRes$json = const { '1': 'BlocksQueryStreamRes', '2': const [ - const {'1': 'block', '3': 1, '4': 1, '5': 11, '6': '.co.topl.genus.Block', '9': 0, '10': 'block'}, - const {'1': 'failure', '3': 2, '4': 1, '5': 11, '6': '.co.topl.genus.services.BlocksQueryStreamRes.Failure', '9': 0, '10': 'failure'}, + const { + '1': 'block', + '3': 1, + '4': 1, + '5': 11, + '6': '.co.topl.genus.Block', + '9': 0, + '10': 'block' + }, + const { + '1': 'failure', + '3': 2, + '4': 1, + '5': 11, + '6': '.co.topl.genus.services.BlocksQueryStreamRes.Failure', + '9': 0, + '10': 'failure' + }, ], '3': const [BlocksQueryStreamRes_Failure$json], '8': const [ @@ -135,8 +285,22 @@ const BlocksQueryStreamRes$json = const { const BlocksQueryStreamRes_Failure$json = const { '1': 'Failure', '2': const [ - const {'1': 'data_store_connection_error', '3': 1, '4': 1, '5': 9, '9': 0, '10': 'dataStoreConnectionError'}, - const {'1': 'invalid_query', '3': 2, '4': 1, '5': 9, '9': 0, '10': 'invalidQuery'}, + const { + '1': 'data_store_connection_error', + '3': 1, + '4': 1, + '5': 9, + '9': 0, + '10': 'dataStoreConnectionError' + }, + const { + '1': 'invalid_query', + '3': 2, + '4': 1, + '5': 9, + '9': 0, + '10': 'invalidQuery' + }, ], '8': const [ const {'1': 'reason'}, @@ -144,4 +308,5 @@ const BlocksQueryStreamRes_Failure$json = const { }; /// Descriptor for `BlocksQueryStreamRes`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List blocksQueryStreamResDescriptor = $convert.base64Decode('ChRCbG9ja3NRdWVyeVN0cmVhbVJlcxIsCgVibG9jaxgBIAEoCzIULmNvLnRvcGwuZ2VudXMuQmxvY2tIAFIFYmxvY2sSUAoHZmFpbHVyZRgCIAEoCzI0LmNvLnRvcGwuZ2VudXMuc2VydmljZXMuQmxvY2tzUXVlcnlTdHJlYW1SZXMuRmFpbHVyZUgAUgdmYWlsdXJlGnsKB0ZhaWx1cmUSPwobZGF0YV9zdG9yZV9jb25uZWN0aW9uX2Vycm9yGAEgASgJSABSGGRhdGFTdG9yZUNvbm5lY3Rpb25FcnJvchIlCg1pbnZhbGlkX3F1ZXJ5GAIgASgJSABSDGludmFsaWRRdWVyeUIICgZyZWFzb25CCAoGcmVzdWx0'); +final $typed_data.Uint8List blocksQueryStreamResDescriptor = $convert.base64Decode( + 'ChRCbG9ja3NRdWVyeVN0cmVhbVJlcxIsCgVibG9jaxgBIAEoCzIULmNvLnRvcGwuZ2VudXMuQmxvY2tIAFIFYmxvY2sSUAoHZmFpbHVyZRgCIAEoCzI0LmNvLnRvcGwuZ2VudXMuc2VydmljZXMuQmxvY2tzUXVlcnlTdHJlYW1SZXMuRmFpbHVyZUgAUgdmYWlsdXJlGnsKB0ZhaWx1cmUSPwobZGF0YV9zdG9yZV9jb25uZWN0aW9uX2Vycm9yGAEgASgJSABSGGRhdGFTdG9yZUNvbm5lY3Rpb25FcnJvchIlCg1pbnZhbGlkX3F1ZXJ5GAIgASgJSABSDGludmFsaWRRdWVyeUIICgZyZWFzb25CCAoGcmVzdWx0'); diff --git a/lib/genus/generated/blocks_subscription.pb.dart b/lib/genus/generated/blocks_subscription.pb.dart index 4570eddc..ca911396 100644 --- a/lib/genus/generated/blocks_subscription.pb.dart +++ b/lib/genus/generated/blocks_subscription.pb.dart @@ -5,35 +5,48 @@ // @dart = 2.12 // ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name +// Dart imports: import 'dart:core' as $core; +// Package imports: import 'package:fixnum/fixnum.dart' as $fixnum; import 'package:protobuf/protobuf.dart' as $pb; +// Project imports: import 'filters.pb.dart' as $4; import 'types.pb.dart' as $6; class CreateBlocksSubscriptionReq extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'CreateBlocksSubscriptionReq', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'CreateBlocksSubscriptionReq', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) ..aOM<$4.BlockFilter>( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'filter', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'filter', subBuilder: $4.BlockFilter.create, ) ..a<$core.int>( 2, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'confirmationDepth', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'confirmationDepth', $pb.PbFieldType.OU3, ) ..a<$fixnum.Int64>( 3, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'startHeight', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'startHeight', $pb.PbFieldType.OU6, defaultOrMaker: $fixnum.Int64.ZERO, ) @@ -72,23 +85,28 @@ class CreateBlocksSubscriptionReq extends $pb.GeneratedMessage { 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version', ) - CreateBlocksSubscriptionReq clone() => CreateBlocksSubscriptionReq()..mergeFromMessage(this); + CreateBlocksSubscriptionReq clone() => + CreateBlocksSubscriptionReq()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version', ) - CreateBlocksSubscriptionReq copyWith(void Function(CreateBlocksSubscriptionReq) updates) => - super.copyWith((message) => updates(message as CreateBlocksSubscriptionReq)) + CreateBlocksSubscriptionReq copyWith( + void Function(CreateBlocksSubscriptionReq) updates) => + super.copyWith( + (message) => updates(message as CreateBlocksSubscriptionReq)) as CreateBlocksSubscriptionReq; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') - static CreateBlocksSubscriptionReq create() => CreateBlocksSubscriptionReq._(); + static CreateBlocksSubscriptionReq create() => + CreateBlocksSubscriptionReq._(); CreateBlocksSubscriptionReq createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static CreateBlocksSubscriptionReq getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static CreateBlocksSubscriptionReq getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static CreateBlocksSubscriptionReq? _defaultInstance; @$pb.TagNumber(1) @@ -130,24 +148,41 @@ class CreateBlocksSubscriptionReq extends $pb.GeneratedMessage { void clearStartHeight() => clearField(3); } -enum BlocksSubscriptionRes_Failure_Reason { invalidRequest, dataConnectionError, notSet } +enum BlocksSubscriptionRes_Failure_Reason { + invalidRequest, + dataConnectionError, + notSet +} class BlocksSubscriptionRes_Failure extends $pb.GeneratedMessage { - static const $core.Map<$core.int, BlocksSubscriptionRes_Failure_Reason> _BlocksSubscriptionRes_Failure_ReasonByTag = { + static const $core.Map<$core.int, BlocksSubscriptionRes_Failure_Reason> + _BlocksSubscriptionRes_Failure_ReasonByTag = { 1: BlocksSubscriptionRes_Failure_Reason.invalidRequest, 2: BlocksSubscriptionRes_Failure_Reason.dataConnectionError, 0: BlocksSubscriptionRes_Failure_Reason.notSet }; static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'BlocksSubscriptionRes.Failure', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'BlocksSubscriptionRes.Failure', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) ..oo(0, [1, 2]) - ..aOS(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'invalidRequest') - ..aOS(2, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'dataConnectionError') + ..aOS( + 1, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'invalidRequest') + ..aOS( + 2, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'dataConnectionError') ..hasRequiredFields = false; BlocksSubscriptionRes_Failure._() : super(); @@ -179,26 +214,32 @@ class BlocksSubscriptionRes_Failure extends $pb.GeneratedMessage { 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version', ) - BlocksSubscriptionRes_Failure clone() => BlocksSubscriptionRes_Failure()..mergeFromMessage(this); + BlocksSubscriptionRes_Failure clone() => + BlocksSubscriptionRes_Failure()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version', ) - BlocksSubscriptionRes_Failure copyWith(void Function(BlocksSubscriptionRes_Failure) updates) => - super.copyWith((message) => updates(message as BlocksSubscriptionRes_Failure)) + BlocksSubscriptionRes_Failure copyWith( + void Function(BlocksSubscriptionRes_Failure) updates) => + super.copyWith( + (message) => updates(message as BlocksSubscriptionRes_Failure)) as BlocksSubscriptionRes_Failure; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') - static BlocksSubscriptionRes_Failure create() => BlocksSubscriptionRes_Failure._(); + static BlocksSubscriptionRes_Failure create() => + BlocksSubscriptionRes_Failure._(); BlocksSubscriptionRes_Failure createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static BlocksSubscriptionRes_Failure getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static BlocksSubscriptionRes_Failure getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static BlocksSubscriptionRes_Failure? _defaultInstance; - BlocksSubscriptionRes_Failure_Reason whichReason() => _BlocksSubscriptionRes_Failure_ReasonByTag[$_whichOneof(0)]!; + BlocksSubscriptionRes_Failure_Reason whichReason() => + _BlocksSubscriptionRes_Failure_ReasonByTag[$_whichOneof(0)]!; void clearReason() => clearField($_whichOneof(0)); @$pb.TagNumber(1) @@ -229,27 +270,36 @@ class BlocksSubscriptionRes_Failure extends $pb.GeneratedMessage { enum BlocksSubscriptionRes_Result { success, failure, notSet } class BlocksSubscriptionRes extends $pb.GeneratedMessage { - static const $core.Map<$core.int, BlocksSubscriptionRes_Result> _BlocksSubscriptionRes_ResultByTag = { + static const $core.Map<$core.int, BlocksSubscriptionRes_Result> + _BlocksSubscriptionRes_ResultByTag = { 1: BlocksSubscriptionRes_Result.success, 2: BlocksSubscriptionRes_Result.failure, 0: BlocksSubscriptionRes_Result.notSet }; static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'BlocksSubscriptionRes', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'BlocksSubscriptionRes', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) ..oo(0, [1, 2]) ..aOM<$6.Block>( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'success', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'success', subBuilder: $6.Block.create, ) ..aOM( 2, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'failure', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'failure', subBuilder: BlocksSubscriptionRes_Failure.create, ) ..hasRequiredFields = false; @@ -273,33 +323,38 @@ class BlocksSubscriptionRes extends $pb.GeneratedMessage { $pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY, ]) => create()..mergeFromBuffer(i, r); - factory BlocksSubscriptionRes.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory BlocksSubscriptionRes.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version', ) - BlocksSubscriptionRes clone() => BlocksSubscriptionRes()..mergeFromMessage(this); + BlocksSubscriptionRes clone() => + BlocksSubscriptionRes()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version', ) - BlocksSubscriptionRes copyWith(void Function(BlocksSubscriptionRes) updates) => + BlocksSubscriptionRes copyWith( + void Function(BlocksSubscriptionRes) updates) => super.copyWith((message) => updates(message as BlocksSubscriptionRes)) as BlocksSubscriptionRes; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static BlocksSubscriptionRes create() => BlocksSubscriptionRes._(); BlocksSubscriptionRes createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static BlocksSubscriptionRes getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static BlocksSubscriptionRes getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static BlocksSubscriptionRes? _defaultInstance; - BlocksSubscriptionRes_Result whichResult() => _BlocksSubscriptionRes_ResultByTag[$_whichOneof(0)]!; + BlocksSubscriptionRes_Result whichResult() => + _BlocksSubscriptionRes_ResultByTag[$_whichOneof(0)]!; void clearResult() => clearField($_whichOneof(0)); @$pb.TagNumber(1) diff --git a/lib/genus/generated/blocks_subscription.pbenum.dart b/lib/genus/generated/blocks_subscription.pbenum.dart index 9a9d8098..54539585 100644 --- a/lib/genus/generated/blocks_subscription.pbenum.dart +++ b/lib/genus/generated/blocks_subscription.pbenum.dart @@ -4,4 +4,3 @@ // // @dart = 2.12 // ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name - diff --git a/lib/genus/generated/blocks_subscription.pbgrpc.dart b/lib/genus/generated/blocks_subscription.pbgrpc.dart index 08c06e81..9d7c3891 100644 --- a/lib/genus/generated/blocks_subscription.pbgrpc.dart +++ b/lib/genus/generated/blocks_subscription.pbgrpc.dart @@ -5,16 +5,21 @@ // @dart = 2.12 // ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name +// Dart imports: import 'dart:async' as $async; - import 'dart:core' as $core; +// Package imports: import 'package:grpc/service_api.dart' as $grpc; + +// Project imports: import 'blocks_subscription.pb.dart' as $3; + export 'blocks_subscription.pb.dart'; class BlocksSubscriptionClient extends $grpc.Client { - static final _$create = $grpc.ClientMethod<$3.CreateBlocksSubscriptionReq, $3.BlocksSubscriptionRes>( + static final _$create = $grpc.ClientMethod<$3.CreateBlocksSubscriptionReq, + $3.BlocksSubscriptionRes>( '/co.topl.genus.services.BlocksSubscription/Create', ($3.CreateBlocksSubscriptionReq value) => value.writeToBuffer(), ($core.List<$core.int> value) => $3.BlocksSubscriptionRes.fromBuffer(value), @@ -43,12 +48,14 @@ abstract class BlocksSubscriptionServiceBase extends $grpc.Service { BlocksSubscriptionServiceBase() { $addMethod( - $grpc.ServiceMethod<$3.CreateBlocksSubscriptionReq, $3.BlocksSubscriptionRes>( + $grpc.ServiceMethod<$3.CreateBlocksSubscriptionReq, + $3.BlocksSubscriptionRes>( 'Create', create_Pre, false, true, - ($core.List<$core.int> value) => $3.CreateBlocksSubscriptionReq.fromBuffer(value), + ($core.List<$core.int> value) => + $3.CreateBlocksSubscriptionReq.fromBuffer(value), ($3.BlocksSubscriptionRes value) => value.writeToBuffer(), ), ); diff --git a/lib/genus/generated/blocks_subscription.pbjson.dart b/lib/genus/generated/blocks_subscription.pbjson.dart index 37f49830..ca0d1d77 100644 --- a/lib/genus/generated/blocks_subscription.pbjson.dart +++ b/lib/genus/generated/blocks_subscription.pbjson.dart @@ -5,27 +5,60 @@ // @dart = 2.12 // ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,deprecated_member_use_from_same_package,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name -import 'dart:core' as $core; +// Dart imports: import 'dart:convert' as $convert; +import 'dart:core' as $core; import 'dart:typed_data' as $typed_data; + @$core.Deprecated('Use createBlocksSubscriptionReqDescriptor instead') const CreateBlocksSubscriptionReq$json = const { '1': 'CreateBlocksSubscriptionReq', '2': const [ - const {'1': 'filter', '3': 1, '4': 1, '5': 11, '6': '.co.topl.genus.BlockFilter', '10': 'filter'}, - const {'1': 'confirmation_depth', '3': 2, '4': 1, '5': 13, '10': 'confirmationDepth'}, + const { + '1': 'filter', + '3': 1, + '4': 1, + '5': 11, + '6': '.co.topl.genus.BlockFilter', + '10': 'filter' + }, + const { + '1': 'confirmation_depth', + '3': 2, + '4': 1, + '5': 13, + '10': 'confirmationDepth' + }, const {'1': 'start_height', '3': 3, '4': 1, '5': 4, '10': 'startHeight'}, ], }; /// Descriptor for `CreateBlocksSubscriptionReq`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List createBlocksSubscriptionReqDescriptor = $convert.base64Decode('ChtDcmVhdGVCbG9ja3NTdWJzY3JpcHRpb25SZXESMgoGZmlsdGVyGAEgASgLMhouY28udG9wbC5nZW51cy5CbG9ja0ZpbHRlclIGZmlsdGVyEi0KEmNvbmZpcm1hdGlvbl9kZXB0aBgCIAEoDVIRY29uZmlybWF0aW9uRGVwdGgSIQoMc3RhcnRfaGVpZ2h0GAMgASgEUgtzdGFydEhlaWdodA=='); +final $typed_data.Uint8List createBlocksSubscriptionReqDescriptor = + $convert.base64Decode( + 'ChtDcmVhdGVCbG9ja3NTdWJzY3JpcHRpb25SZXESMgoGZmlsdGVyGAEgASgLMhouY28udG9wbC5nZW51cy5CbG9ja0ZpbHRlclIGZmlsdGVyEi0KEmNvbmZpcm1hdGlvbl9kZXB0aBgCIAEoDVIRY29uZmlybWF0aW9uRGVwdGgSIQoMc3RhcnRfaGVpZ2h0GAMgASgEUgtzdGFydEhlaWdodA=='); @$core.Deprecated('Use blocksSubscriptionResDescriptor instead') const BlocksSubscriptionRes$json = const { '1': 'BlocksSubscriptionRes', '2': const [ - const {'1': 'success', '3': 1, '4': 1, '5': 11, '6': '.co.topl.genus.Block', '9': 0, '10': 'success'}, - const {'1': 'failure', '3': 2, '4': 1, '5': 11, '6': '.co.topl.genus.services.BlocksSubscriptionRes.Failure', '9': 0, '10': 'failure'}, + const { + '1': 'success', + '3': 1, + '4': 1, + '5': 11, + '6': '.co.topl.genus.Block', + '9': 0, + '10': 'success' + }, + const { + '1': 'failure', + '3': 2, + '4': 1, + '5': 11, + '6': '.co.topl.genus.services.BlocksSubscriptionRes.Failure', + '9': 0, + '10': 'failure' + }, ], '3': const [BlocksSubscriptionRes_Failure$json], '8': const [ @@ -37,8 +70,22 @@ const BlocksSubscriptionRes$json = const { const BlocksSubscriptionRes_Failure$json = const { '1': 'Failure', '2': const [ - const {'1': 'invalid_request', '3': 1, '4': 1, '5': 9, '9': 0, '10': 'invalidRequest'}, - const {'1': 'data_connection_error', '3': 2, '4': 1, '5': 9, '9': 0, '10': 'dataConnectionError'}, + const { + '1': 'invalid_request', + '3': 1, + '4': 1, + '5': 9, + '9': 0, + '10': 'invalidRequest' + }, + const { + '1': 'data_connection_error', + '3': 2, + '4': 1, + '5': 9, + '9': 0, + '10': 'dataConnectionError' + }, ], '8': const [ const {'1': 'reason'}, @@ -46,4 +93,5 @@ const BlocksSubscriptionRes_Failure$json = const { }; /// Descriptor for `BlocksSubscriptionRes`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List blocksSubscriptionResDescriptor = $convert.base64Decode('ChVCbG9ja3NTdWJzY3JpcHRpb25SZXMSMAoHc3VjY2VzcxgBIAEoCzIULmNvLnRvcGwuZ2VudXMuQmxvY2tIAFIHc3VjY2VzcxJRCgdmYWlsdXJlGAIgASgLMjUuY28udG9wbC5nZW51cy5zZXJ2aWNlcy5CbG9ja3NTdWJzY3JpcHRpb25SZXMuRmFpbHVyZUgAUgdmYWlsdXJlGnQKB0ZhaWx1cmUSKQoPaW52YWxpZF9yZXF1ZXN0GAEgASgJSABSDmludmFsaWRSZXF1ZXN0EjQKFWRhdGFfY29ubmVjdGlvbl9lcnJvchgCIAEoCUgAUhNkYXRhQ29ubmVjdGlvbkVycm9yQggKBnJlYXNvbkIICgZyZXN1bHQ='); +final $typed_data.Uint8List blocksSubscriptionResDescriptor = $convert.base64Decode( + 'ChVCbG9ja3NTdWJzY3JpcHRpb25SZXMSMAoHc3VjY2VzcxgBIAEoCzIULmNvLnRvcGwuZ2VudXMuQmxvY2tIAFIHc3VjY2VzcxJRCgdmYWlsdXJlGAIgASgLMjUuY28udG9wbC5nZW51cy5zZXJ2aWNlcy5CbG9ja3NTdWJzY3JpcHRpb25SZXMuRmFpbHVyZUgAUgdmYWlsdXJlGnQKB0ZhaWx1cmUSKQoPaW52YWxpZF9yZXF1ZXN0GAEgASgJSABSDmludmFsaWRSZXF1ZXN0EjQKFWRhdGFfY29ubmVjdGlvbl9lcnJvchgCIAEoCUgAUhNkYXRhQ29ubmVjdGlvbkVycm9yQggKBnJlYXNvbkIICgZyZXN1bHQ='); diff --git a/lib/genus/generated/filters.pb.dart b/lib/genus/generated/filters.pb.dart index 747418db..f3b57d43 100644 --- a/lib/genus/generated/filters.pb.dart +++ b/lib/genus/generated/filters.pb.dart @@ -5,19 +5,29 @@ // @dart = 2.12 // ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name +// Dart imports: import 'dart:core' as $core; +// Package imports: import 'package:fixnum/fixnum.dart' as $fixnum; import 'package:protobuf/protobuf.dart' as $pb; class StringSelection extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'StringSelection', - package: - const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus'), + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'StringSelection', + package: const $pb.PackageName( + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus'), createEmptyInstance: create, ) - ..pPS(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'values') + ..pPS( + 1, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'values') ..hasRequiredFields = false; StringSelection._() : super(); @@ -35,7 +45,8 @@ class StringSelection extends $pb.GeneratedMessage { $pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY, ]) => create()..mergeFromBuffer(i, r); - factory StringSelection.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory StringSelection.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -55,10 +66,11 @@ class StringSelection extends $pb.GeneratedMessage { @$core.pragma('dart2js:noInline') static StringSelection create() => StringSelection._(); StringSelection createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static StringSelection getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static StringSelection getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static StringSelection? _defaultInstance; @$pb.TagNumber(1) @@ -68,27 +80,36 @@ class StringSelection extends $pb.GeneratedMessage { enum NumberRange_FilterType { min, max, notSet } class NumberRange extends $pb.GeneratedMessage { - static const $core.Map<$core.int, NumberRange_FilterType> _NumberRange_FilterTypeByTag = { + static const $core.Map<$core.int, NumberRange_FilterType> + _NumberRange_FilterTypeByTag = { 1: NumberRange_FilterType.min, 2: NumberRange_FilterType.max, 0: NumberRange_FilterType.notSet }; static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'NumberRange', - package: - const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus'), + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'NumberRange', + package: const $pb.PackageName( + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus'), createEmptyInstance: create, ) ..oo(0, [1, 2]) ..a<$fixnum.Int64>( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'min', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'min', $pb.PbFieldType.OU6, defaultOrMaker: $fixnum.Int64.ZERO, ) ..a<$fixnum.Int64>( 2, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'max', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'max', $pb.PbFieldType.OU6, defaultOrMaker: $fixnum.Int64.ZERO, ) @@ -108,9 +129,11 @@ class NumberRange extends $pb.GeneratedMessage { } return _result; } - factory NumberRange.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory NumberRange.fromBuffer($core.List<$core.int> i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); - factory NumberRange.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory NumberRange.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -124,17 +147,20 @@ class NumberRange extends $pb.GeneratedMessage { 'Will be removed in next major version', ) NumberRange copyWith(void Function(NumberRange) updates) => - super.copyWith((message) => updates(message as NumberRange)) as NumberRange; // ignore: deprecated_member_use + super.copyWith((message) => updates(message as NumberRange)) + as NumberRange; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static NumberRange create() => NumberRange._(); NumberRange createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') - static NumberRange getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static NumberRange getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static NumberRange? _defaultInstance; - NumberRange_FilterType whichFilterType() => _NumberRange_FilterTypeByTag[$_whichOneof(0)]!; + NumberRange_FilterType whichFilterType() => + _NumberRange_FilterTypeByTag[$_whichOneof(0)]!; void clearFilterType() => clearField($_whichOneof(0)); @$pb.TagNumber(1) @@ -164,14 +190,20 @@ class NumberRange extends $pb.GeneratedMessage { class NumberSelection extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'NumberSelection', - package: - const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus'), + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'NumberSelection', + package: const $pb.PackageName( + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus'), createEmptyInstance: create, ) ..p<$fixnum.Int64>( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'values', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'values', $pb.PbFieldType.KU6, ) ..hasRequiredFields = false; @@ -191,7 +223,8 @@ class NumberSelection extends $pb.GeneratedMessage { $pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY, ]) => create()..mergeFromBuffer(i, r); - factory NumberSelection.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory NumberSelection.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -211,10 +244,11 @@ class NumberSelection extends $pb.GeneratedMessage { @$core.pragma('dart2js:noInline') static NumberSelection create() => NumberSelection._(); NumberSelection createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static NumberSelection getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static NumberSelection getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static NumberSelection? _defaultInstance; @$pb.TagNumber(1) @@ -223,12 +257,20 @@ class NumberSelection extends $pb.GeneratedMessage { class BooleanSelection extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'BooleanSelection', - package: - const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus'), + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'BooleanSelection', + package: const $pb.PackageName( + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus'), createEmptyInstance: create, ) - ..aOB(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'value') + ..aOB( + 1, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'value') ..hasRequiredFields = false; BooleanSelection._() : super(); @@ -246,7 +288,8 @@ class BooleanSelection extends $pb.GeneratedMessage { $pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY, ]) => create()..mergeFromBuffer(i, r); - factory BooleanSelection.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory BooleanSelection.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -266,10 +309,11 @@ class BooleanSelection extends $pb.GeneratedMessage { @$core.pragma('dart2js:noInline') static BooleanSelection create() => BooleanSelection._(); BooleanSelection createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static BooleanSelection getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static BooleanSelection getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static BooleanSelection? _defaultInstance; @$pb.TagNumber(1) @@ -285,35 +329,51 @@ class BooleanSelection extends $pb.GeneratedMessage { void clearValue() => clearField(1); } -enum TokenValueFilter_FilterType { assetCodeSelection, quantityRange, tokenValueTypeSelection, notSet } +enum TokenValueFilter_FilterType { + assetCodeSelection, + quantityRange, + tokenValueTypeSelection, + notSet +} class TokenValueFilter extends $pb.GeneratedMessage { - static const $core.Map<$core.int, TokenValueFilter_FilterType> _TokenValueFilter_FilterTypeByTag = { + static const $core.Map<$core.int, TokenValueFilter_FilterType> + _TokenValueFilter_FilterTypeByTag = { 1: TokenValueFilter_FilterType.assetCodeSelection, 2: TokenValueFilter_FilterType.quantityRange, 3: TokenValueFilter_FilterType.tokenValueTypeSelection, 0: TokenValueFilter_FilterType.notSet }; static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'TokenValueFilter', - package: - const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus'), + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'TokenValueFilter', + package: const $pb.PackageName( + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus'), createEmptyInstance: create, ) ..oo(0, [1, 2, 3]) ..aOM( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'assetCodeSelection', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'assetCodeSelection', subBuilder: StringSelection.create, ) ..aOM( 2, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'quantityRange', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'quantityRange', subBuilder: NumberRange.create, ) ..aOM( 3, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'tokenValueTypeSelection', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'tokenValueTypeSelection', subBuilder: StringSelection.create, ) ..hasRequiredFields = false; @@ -341,7 +401,8 @@ class TokenValueFilter extends $pb.GeneratedMessage { $pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY, ]) => create()..mergeFromBuffer(i, r); - factory TokenValueFilter.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory TokenValueFilter.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -361,13 +422,15 @@ class TokenValueFilter extends $pb.GeneratedMessage { @$core.pragma('dart2js:noInline') static TokenValueFilter create() => TokenValueFilter._(); TokenValueFilter createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static TokenValueFilter getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static TokenValueFilter getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static TokenValueFilter? _defaultInstance; - TokenValueFilter_FilterType whichFilterType() => _TokenValueFilter_FilterTypeByTag[$_whichOneof(0)]!; + TokenValueFilter_FilterType whichFilterType() => + _TokenValueFilter_FilterTypeByTag[$_whichOneof(0)]!; void clearFilterType() => clearField($_whichOneof(0)); @$pb.TagNumber(1) @@ -415,14 +478,20 @@ class TokenValueFilter extends $pb.GeneratedMessage { class TransactionFilter_AndFilter extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'TransactionFilter.AndFilter', - package: - const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus'), + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'TransactionFilter.AndFilter', + package: const $pb.PackageName( + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus'), createEmptyInstance: create, ) ..pc( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'filters', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'filters', $pb.PbFieldType.PM, subBuilder: TransactionFilter.create, ) @@ -453,23 +522,28 @@ class TransactionFilter_AndFilter extends $pb.GeneratedMessage { 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version', ) - TransactionFilter_AndFilter clone() => TransactionFilter_AndFilter()..mergeFromMessage(this); + TransactionFilter_AndFilter clone() => + TransactionFilter_AndFilter()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version', ) - TransactionFilter_AndFilter copyWith(void Function(TransactionFilter_AndFilter) updates) => - super.copyWith((message) => updates(message as TransactionFilter_AndFilter)) + TransactionFilter_AndFilter copyWith( + void Function(TransactionFilter_AndFilter) updates) => + super.copyWith( + (message) => updates(message as TransactionFilter_AndFilter)) as TransactionFilter_AndFilter; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') - static TransactionFilter_AndFilter create() => TransactionFilter_AndFilter._(); + static TransactionFilter_AndFilter create() => + TransactionFilter_AndFilter._(); TransactionFilter_AndFilter createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static TransactionFilter_AndFilter getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static TransactionFilter_AndFilter getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static TransactionFilter_AndFilter? _defaultInstance; @$pb.TagNumber(1) @@ -478,14 +552,20 @@ class TransactionFilter_AndFilter extends $pb.GeneratedMessage { class TransactionFilter_OrFilter extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'TransactionFilter.OrFilter', - package: - const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus'), + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'TransactionFilter.OrFilter', + package: const $pb.PackageName( + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus'), createEmptyInstance: create, ) ..pc( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'filters', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'filters', $pb.PbFieldType.PM, subBuilder: TransactionFilter.create, ) @@ -516,23 +596,27 @@ class TransactionFilter_OrFilter extends $pb.GeneratedMessage { 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version', ) - TransactionFilter_OrFilter clone() => TransactionFilter_OrFilter()..mergeFromMessage(this); + TransactionFilter_OrFilter clone() => + TransactionFilter_OrFilter()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version', ) - TransactionFilter_OrFilter copyWith(void Function(TransactionFilter_OrFilter) updates) => - super.copyWith((message) => updates(message as TransactionFilter_OrFilter)) + TransactionFilter_OrFilter copyWith( + void Function(TransactionFilter_OrFilter) updates) => + super.copyWith( + (message) => updates(message as TransactionFilter_OrFilter)) as TransactionFilter_OrFilter; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static TransactionFilter_OrFilter create() => TransactionFilter_OrFilter._(); TransactionFilter_OrFilter createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static TransactionFilter_OrFilter getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static TransactionFilter_OrFilter getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static TransactionFilter_OrFilter? _defaultInstance; @$pb.TagNumber(1) @@ -541,14 +625,20 @@ class TransactionFilter_OrFilter extends $pb.GeneratedMessage { class TransactionFilter_NotFilter extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'TransactionFilter.NotFilter', - package: - const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus'), + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'TransactionFilter.NotFilter', + package: const $pb.PackageName( + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus'), createEmptyInstance: create, ) ..aOM( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'filter', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'filter', subBuilder: TransactionFilter.create, ) ..hasRequiredFields = false; @@ -578,23 +668,28 @@ class TransactionFilter_NotFilter extends $pb.GeneratedMessage { 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version', ) - TransactionFilter_NotFilter clone() => TransactionFilter_NotFilter()..mergeFromMessage(this); + TransactionFilter_NotFilter clone() => + TransactionFilter_NotFilter()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version', ) - TransactionFilter_NotFilter copyWith(void Function(TransactionFilter_NotFilter) updates) => - super.copyWith((message) => updates(message as TransactionFilter_NotFilter)) + TransactionFilter_NotFilter copyWith( + void Function(TransactionFilter_NotFilter) updates) => + super.copyWith( + (message) => updates(message as TransactionFilter_NotFilter)) as TransactionFilter_NotFilter; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') - static TransactionFilter_NotFilter create() => TransactionFilter_NotFilter._(); + static TransactionFilter_NotFilter create() => + TransactionFilter_NotFilter._(); TransactionFilter_NotFilter createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static TransactionFilter_NotFilter getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static TransactionFilter_NotFilter getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static TransactionFilter_NotFilter? _defaultInstance; @$pb.TagNumber(1) @@ -614,9 +709,13 @@ class TransactionFilter_NotFilter extends $pb.GeneratedMessage { class TransactionFilter_AllFilter extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'TransactionFilter.AllFilter', - package: - const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus'), + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'TransactionFilter.AllFilter', + package: const $pb.PackageName( + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus'), createEmptyInstance: create, )..hasRequiredFields = false; @@ -637,23 +736,28 @@ class TransactionFilter_AllFilter extends $pb.GeneratedMessage { 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version', ) - TransactionFilter_AllFilter clone() => TransactionFilter_AllFilter()..mergeFromMessage(this); + TransactionFilter_AllFilter clone() => + TransactionFilter_AllFilter()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version', ) - TransactionFilter_AllFilter copyWith(void Function(TransactionFilter_AllFilter) updates) => - super.copyWith((message) => updates(message as TransactionFilter_AllFilter)) + TransactionFilter_AllFilter copyWith( + void Function(TransactionFilter_AllFilter) updates) => + super.copyWith( + (message) => updates(message as TransactionFilter_AllFilter)) as TransactionFilter_AllFilter; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') - static TransactionFilter_AllFilter create() => TransactionFilter_AllFilter._(); + static TransactionFilter_AllFilter create() => + TransactionFilter_AllFilter._(); TransactionFilter_AllFilter createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static TransactionFilter_AllFilter getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static TransactionFilter_AllFilter getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static TransactionFilter_AllFilter? _defaultInstance; } @@ -680,7 +784,8 @@ enum TransactionFilter_FilterType { } class TransactionFilter extends $pb.GeneratedMessage { - static const $core.Map<$core.int, TransactionFilter_FilterType> _TransactionFilter_FilterTypeByTag = { + static const $core.Map<$core.int, TransactionFilter_FilterType> + _TransactionFilter_FilterTypeByTag = { 1: TransactionFilter_FilterType.txTypeSelection, 2: TransactionFilter_FilterType.timestampRange, 3: TransactionFilter_FilterType.inputAddressSelection, @@ -702,85 +807,119 @@ class TransactionFilter extends $pb.GeneratedMessage { 0: TransactionFilter_FilterType.notSet }; static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'TransactionFilter', - package: - const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus'), + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'TransactionFilter', + package: const $pb.PackageName( + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus'), createEmptyInstance: create, ) ..oo(0, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18]) ..aOM( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'txTypeSelection', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'txTypeSelection', subBuilder: StringSelection.create, ) ..aOM( 2, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'timestampRange', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'timestampRange', subBuilder: NumberRange.create, ) ..aOM( 3, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'inputAddressSelection', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'inputAddressSelection', subBuilder: StringSelection.create, ) ..aOM( 4, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'inputNonceSelection', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'inputNonceSelection', subBuilder: NumberSelection.create, ) ..aOM( 5, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'outputTokenBoxTypeSelection', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'outputTokenBoxTypeSelection', subBuilder: StringSelection.create, ) ..aOM( 6, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'outputTokenValueFilter', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'outputTokenValueFilter', subBuilder: TokenValueFilter.create, ) ..aOM( 7, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'outputAddressSelection', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'outputAddressSelection', subBuilder: StringSelection.create, ) ..aOM( 8, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'mintingSelection', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'mintingSelection', subBuilder: BooleanSelection.create, ) ..aOM( 9, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'txIdSelection', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'txIdSelection', subBuilder: StringSelection.create, ) ..aOM( 10, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'boxesToRemoveSelection', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'boxesToRemoveSelection', subBuilder: StringSelection.create, ) ..aOM( 11, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'feeRange', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'feeRange', subBuilder: NumberRange.create, ) ..aOM( 12, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'propositionSelection', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'propositionSelection', subBuilder: StringSelection.create, ) ..aOM( 13, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'blockIdSelection', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'blockIdSelection', subBuilder: StringSelection.create, ) ..aOM( 14, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'blockHeightRange', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'blockHeightRange', subBuilder: NumberRange.create, ) ..aOM( 15, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'and', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'and', subBuilder: TransactionFilter_AndFilter.create, ) ..aOM( @@ -790,12 +929,16 @@ class TransactionFilter extends $pb.GeneratedMessage { ) ..aOM( 17, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'not', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'not', subBuilder: TransactionFilter_NotFilter.create, ) ..aOM( 18, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'all', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'all', subBuilder: TransactionFilter_AllFilter.create, ) ..hasRequiredFields = false; @@ -883,7 +1026,8 @@ class TransactionFilter extends $pb.GeneratedMessage { $pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY, ]) => create()..mergeFromBuffer(i, r); - factory TransactionFilter.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory TransactionFilter.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -903,13 +1047,15 @@ class TransactionFilter extends $pb.GeneratedMessage { @$core.pragma('dart2js:noInline') static TransactionFilter create() => TransactionFilter._(); TransactionFilter createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static TransactionFilter getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static TransactionFilter getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static TransactionFilter? _defaultInstance; - TransactionFilter_FilterType whichFilterType() => _TransactionFilter_FilterTypeByTag[$_whichOneof(0)]!; + TransactionFilter_FilterType whichFilterType() => + _TransactionFilter_FilterTypeByTag[$_whichOneof(0)]!; void clearFilterType() => clearField($_whichOneof(0)); @$pb.TagNumber(1) @@ -1167,14 +1313,20 @@ class TransactionFilter extends $pb.GeneratedMessage { class BlockFilter_AndFilter extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'BlockFilter.AndFilter', - package: - const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus'), + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'BlockFilter.AndFilter', + package: const $pb.PackageName( + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus'), createEmptyInstance: create, ) ..pc( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'filters', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'filters', $pb.PbFieldType.PM, subBuilder: BlockFilter.create, ) @@ -1195,30 +1347,34 @@ class BlockFilter_AndFilter extends $pb.GeneratedMessage { $pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY, ]) => create()..mergeFromBuffer(i, r); - factory BlockFilter_AndFilter.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory BlockFilter_AndFilter.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version', ) - BlockFilter_AndFilter clone() => BlockFilter_AndFilter()..mergeFromMessage(this); + BlockFilter_AndFilter clone() => + BlockFilter_AndFilter()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version', ) - BlockFilter_AndFilter copyWith(void Function(BlockFilter_AndFilter) updates) => + BlockFilter_AndFilter copyWith( + void Function(BlockFilter_AndFilter) updates) => super.copyWith((message) => updates(message as BlockFilter_AndFilter)) as BlockFilter_AndFilter; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static BlockFilter_AndFilter create() => BlockFilter_AndFilter._(); BlockFilter_AndFilter createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static BlockFilter_AndFilter getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static BlockFilter_AndFilter getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static BlockFilter_AndFilter? _defaultInstance; @$pb.TagNumber(1) @@ -1227,14 +1383,20 @@ class BlockFilter_AndFilter extends $pb.GeneratedMessage { class BlockFilter_OrFilter extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'BlockFilter.OrFilter', - package: - const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus'), + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'BlockFilter.OrFilter', + package: const $pb.PackageName( + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus'), createEmptyInstance: create, ) ..pc( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'filters', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'filters', $pb.PbFieldType.PM, subBuilder: BlockFilter.create, ) @@ -1255,14 +1417,16 @@ class BlockFilter_OrFilter extends $pb.GeneratedMessage { $pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY, ]) => create()..mergeFromBuffer(i, r); - factory BlockFilter_OrFilter.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory BlockFilter_OrFilter.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version', ) - BlockFilter_OrFilter clone() => BlockFilter_OrFilter()..mergeFromMessage(this); + BlockFilter_OrFilter clone() => + BlockFilter_OrFilter()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' @@ -1275,10 +1439,11 @@ class BlockFilter_OrFilter extends $pb.GeneratedMessage { @$core.pragma('dart2js:noInline') static BlockFilter_OrFilter create() => BlockFilter_OrFilter._(); BlockFilter_OrFilter createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static BlockFilter_OrFilter getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static BlockFilter_OrFilter getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static BlockFilter_OrFilter? _defaultInstance; @$pb.TagNumber(1) @@ -1287,14 +1452,20 @@ class BlockFilter_OrFilter extends $pb.GeneratedMessage { class BlockFilter_NotFilter extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'BlockFilter.NotFilter', - package: - const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus'), + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'BlockFilter.NotFilter', + package: const $pb.PackageName( + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus'), createEmptyInstance: create, ) ..aOM( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'filter', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'filter', subBuilder: BlockFilter.create, ) ..hasRequiredFields = false; @@ -1314,30 +1485,34 @@ class BlockFilter_NotFilter extends $pb.GeneratedMessage { $pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY, ]) => create()..mergeFromBuffer(i, r); - factory BlockFilter_NotFilter.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory BlockFilter_NotFilter.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version', ) - BlockFilter_NotFilter clone() => BlockFilter_NotFilter()..mergeFromMessage(this); + BlockFilter_NotFilter clone() => + BlockFilter_NotFilter()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version', ) - BlockFilter_NotFilter copyWith(void Function(BlockFilter_NotFilter) updates) => + BlockFilter_NotFilter copyWith( + void Function(BlockFilter_NotFilter) updates) => super.copyWith((message) => updates(message as BlockFilter_NotFilter)) as BlockFilter_NotFilter; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static BlockFilter_NotFilter create() => BlockFilter_NotFilter._(); BlockFilter_NotFilter createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static BlockFilter_NotFilter getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static BlockFilter_NotFilter getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static BlockFilter_NotFilter? _defaultInstance; @$pb.TagNumber(1) @@ -1357,9 +1532,13 @@ class BlockFilter_NotFilter extends $pb.GeneratedMessage { class BlockFilter_AllFilter extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'BlockFilter.AllFilter', - package: - const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus'), + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'BlockFilter.AllFilter', + package: const $pb.PackageName( + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus'), createEmptyInstance: create, )..hasRequiredFields = false; @@ -1370,30 +1549,34 @@ class BlockFilter_AllFilter extends $pb.GeneratedMessage { $pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY, ]) => create()..mergeFromBuffer(i, r); - factory BlockFilter_AllFilter.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory BlockFilter_AllFilter.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version', ) - BlockFilter_AllFilter clone() => BlockFilter_AllFilter()..mergeFromMessage(this); + BlockFilter_AllFilter clone() => + BlockFilter_AllFilter()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version', ) - BlockFilter_AllFilter copyWith(void Function(BlockFilter_AllFilter) updates) => + BlockFilter_AllFilter copyWith( + void Function(BlockFilter_AllFilter) updates) => super.copyWith((message) => updates(message as BlockFilter_AllFilter)) as BlockFilter_AllFilter; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static BlockFilter_AllFilter create() => BlockFilter_AllFilter._(); BlockFilter_AllFilter createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static BlockFilter_AllFilter getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static BlockFilter_AllFilter getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static BlockFilter_AllFilter? _defaultInstance; } @@ -1416,7 +1599,8 @@ enum BlockFilter_FilterType { } class BlockFilter extends $pb.GeneratedMessage { - static const $core.Map<$core.int, BlockFilter_FilterType> _BlockFilter_FilterTypeByTag = { + static const $core.Map<$core.int, BlockFilter_FilterType> + _BlockFilter_FilterTypeByTag = { 1: BlockFilter_FilterType.idSelection, 2: BlockFilter_FilterType.parentIdSelection, 3: BlockFilter_FilterType.timestampRange, @@ -1434,65 +1618,91 @@ class BlockFilter extends $pb.GeneratedMessage { 0: BlockFilter_FilterType.notSet }; static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'BlockFilter', - package: - const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus'), + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'BlockFilter', + package: const $pb.PackageName( + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus'), createEmptyInstance: create, ) ..oo(0, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 15, 16, 17, 18]) ..aOM( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'idSelection', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'idSelection', subBuilder: StringSelection.create, ) ..aOM( 2, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'parentIdSelection', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'parentIdSelection', subBuilder: StringSelection.create, ) ..aOM( 3, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'timestampRange', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'timestampRange', subBuilder: NumberRange.create, ) ..aOM( 4, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'generatorBoxTokenValueFilter', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'generatorBoxTokenValueFilter', subBuilder: TokenValueFilter.create, ) ..aOM( 5, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'publicKeySelection', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'publicKeySelection', subBuilder: StringSelection.create, ) ..aOM( 6, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'heightRange', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'heightRange', subBuilder: NumberRange.create, ) ..aOM( 7, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'heightSelection', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'heightSelection', subBuilder: NumberSelection.create, ) ..aOM( 8, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'difficultyRange', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'difficultyRange', subBuilder: NumberRange.create, ) ..aOM( 9, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'versionSelection', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'versionSelection', subBuilder: NumberSelection.create, ) ..aOM( 10, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'numTransactionRange', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'numTransactionRange', subBuilder: NumberRange.create, ) ..aOM( 15, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'and', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'and', subBuilder: BlockFilter_AndFilter.create, ) ..aOM( @@ -1502,12 +1712,16 @@ class BlockFilter extends $pb.GeneratedMessage { ) ..aOM( 17, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'not', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'not', subBuilder: BlockFilter_NotFilter.create, ) ..aOM( 18, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'all', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'all', subBuilder: BlockFilter_AllFilter.create, ) ..hasRequiredFields = false; @@ -1574,9 +1788,11 @@ class BlockFilter extends $pb.GeneratedMessage { } return _result; } - factory BlockFilter.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory BlockFilter.fromBuffer($core.List<$core.int> i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); - factory BlockFilter.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory BlockFilter.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -1590,17 +1806,20 @@ class BlockFilter extends $pb.GeneratedMessage { 'Will be removed in next major version', ) BlockFilter copyWith(void Function(BlockFilter) updates) => - super.copyWith((message) => updates(message as BlockFilter)) as BlockFilter; // ignore: deprecated_member_use + super.copyWith((message) => updates(message as BlockFilter)) + as BlockFilter; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static BlockFilter create() => BlockFilter._(); BlockFilter createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') - static BlockFilter getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static BlockFilter getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static BlockFilter? _defaultInstance; - BlockFilter_FilterType whichFilterType() => _BlockFilter_FilterTypeByTag[$_whichOneof(0)]!; + BlockFilter_FilterType whichFilterType() => + _BlockFilter_FilterTypeByTag[$_whichOneof(0)]!; void clearFilterType() => clearField($_whichOneof(0)); @$pb.TagNumber(1) diff --git a/lib/genus/generated/filters.pbenum.dart b/lib/genus/generated/filters.pbenum.dart index 67c28c19..ef47b98d 100644 --- a/lib/genus/generated/filters.pbenum.dart +++ b/lib/genus/generated/filters.pbenum.dart @@ -4,4 +4,3 @@ // // @dart = 2.12 // ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name - diff --git a/lib/genus/generated/filters.pbjson.dart b/lib/genus/generated/filters.pbjson.dart index deb829bc..7c2f2a02 100644 --- a/lib/genus/generated/filters.pbjson.dart +++ b/lib/genus/generated/filters.pbjson.dart @@ -5,9 +5,11 @@ // @dart = 2.12 // ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,deprecated_member_use_from_same_package,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name -import 'dart:core' as $core; +// Dart imports: import 'dart:convert' as $convert; +import 'dart:core' as $core; import 'dart:typed_data' as $typed_data; + @$core.Deprecated('Use stringSelectionDescriptor instead') const StringSelection$json = const { '1': 'StringSelection', @@ -17,7 +19,8 @@ const StringSelection$json = const { }; /// Descriptor for `StringSelection`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List stringSelectionDescriptor = $convert.base64Decode('Cg9TdHJpbmdTZWxlY3Rpb24SFgoGdmFsdWVzGAEgAygJUgZ2YWx1ZXM='); +final $typed_data.Uint8List stringSelectionDescriptor = $convert + .base64Decode('Cg9TdHJpbmdTZWxlY3Rpb24SFgoGdmFsdWVzGAEgAygJUgZ2YWx1ZXM='); @$core.Deprecated('Use numberRangeDescriptor instead') const NumberRange$json = const { '1': 'NumberRange', @@ -31,7 +34,8 @@ const NumberRange$json = const { }; /// Descriptor for `NumberRange`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List numberRangeDescriptor = $convert.base64Decode('CgtOdW1iZXJSYW5nZRISCgNtaW4YASABKARIAFIDbWluEhIKA21heBgCIAEoBEgAUgNtYXhCDQoLZmlsdGVyX3R5cGU='); +final $typed_data.Uint8List numberRangeDescriptor = $convert.base64Decode( + 'CgtOdW1iZXJSYW5nZRISCgNtaW4YASABKARIAFIDbWluEhIKA21heBgCIAEoBEgAUgNtYXhCDQoLZmlsdGVyX3R5cGU='); @$core.Deprecated('Use numberSelectionDescriptor instead') const NumberSelection$json = const { '1': 'NumberSelection', @@ -41,7 +45,8 @@ const NumberSelection$json = const { }; /// Descriptor for `NumberSelection`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List numberSelectionDescriptor = $convert.base64Decode('Cg9OdW1iZXJTZWxlY3Rpb24SFgoGdmFsdWVzGAEgAygEUgZ2YWx1ZXM='); +final $typed_data.Uint8List numberSelectionDescriptor = $convert + .base64Decode('Cg9OdW1iZXJTZWxlY3Rpb24SFgoGdmFsdWVzGAEgAygEUgZ2YWx1ZXM='); @$core.Deprecated('Use booleanSelectionDescriptor instead') const BooleanSelection$json = const { '1': 'BooleanSelection', @@ -51,14 +56,39 @@ const BooleanSelection$json = const { }; /// Descriptor for `BooleanSelection`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List booleanSelectionDescriptor = $convert.base64Decode('ChBCb29sZWFuU2VsZWN0aW9uEhQKBXZhbHVlGAEgASgIUgV2YWx1ZQ=='); +final $typed_data.Uint8List booleanSelectionDescriptor = $convert + .base64Decode('ChBCb29sZWFuU2VsZWN0aW9uEhQKBXZhbHVlGAEgASgIUgV2YWx1ZQ=='); @$core.Deprecated('Use tokenValueFilterDescriptor instead') const TokenValueFilter$json = const { '1': 'TokenValueFilter', '2': const [ - const {'1': 'asset_code_selection', '3': 1, '4': 1, '5': 11, '6': '.co.topl.genus.StringSelection', '9': 0, '10': 'assetCodeSelection'}, - const {'1': 'quantity_range', '3': 2, '4': 1, '5': 11, '6': '.co.topl.genus.NumberRange', '9': 0, '10': 'quantityRange'}, - const {'1': 'token_value_type_selection', '3': 3, '4': 1, '5': 11, '6': '.co.topl.genus.StringSelection', '9': 0, '10': 'tokenValueTypeSelection'}, + const { + '1': 'asset_code_selection', + '3': 1, + '4': 1, + '5': 11, + '6': '.co.topl.genus.StringSelection', + '9': 0, + '10': 'assetCodeSelection' + }, + const { + '1': 'quantity_range', + '3': 2, + '4': 1, + '5': 11, + '6': '.co.topl.genus.NumberRange', + '9': 0, + '10': 'quantityRange' + }, + const { + '1': 'token_value_type_selection', + '3': 3, + '4': 1, + '5': 11, + '6': '.co.topl.genus.StringSelection', + '9': 0, + '10': 'tokenValueTypeSelection' + }, ], '8': const [ const {'1': 'filter_type'}, @@ -66,31 +96,181 @@ const TokenValueFilter$json = const { }; /// Descriptor for `TokenValueFilter`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List tokenValueFilterDescriptor = $convert.base64Decode('ChBUb2tlblZhbHVlRmlsdGVyElIKFGFzc2V0X2NvZGVfc2VsZWN0aW9uGAEgASgLMh4uY28udG9wbC5nZW51cy5TdHJpbmdTZWxlY3Rpb25IAFISYXNzZXRDb2RlU2VsZWN0aW9uEkMKDnF1YW50aXR5X3JhbmdlGAIgASgLMhouY28udG9wbC5nZW51cy5OdW1iZXJSYW5nZUgAUg1xdWFudGl0eVJhbmdlEl0KGnRva2VuX3ZhbHVlX3R5cGVfc2VsZWN0aW9uGAMgASgLMh4uY28udG9wbC5nZW51cy5TdHJpbmdTZWxlY3Rpb25IAFIXdG9rZW5WYWx1ZVR5cGVTZWxlY3Rpb25CDQoLZmlsdGVyX3R5cGU='); +final $typed_data.Uint8List tokenValueFilterDescriptor = $convert.base64Decode( + 'ChBUb2tlblZhbHVlRmlsdGVyElIKFGFzc2V0X2NvZGVfc2VsZWN0aW9uGAEgASgLMh4uY28udG9wbC5nZW51cy5TdHJpbmdTZWxlY3Rpb25IAFISYXNzZXRDb2RlU2VsZWN0aW9uEkMKDnF1YW50aXR5X3JhbmdlGAIgASgLMhouY28udG9wbC5nZW51cy5OdW1iZXJSYW5nZUgAUg1xdWFudGl0eVJhbmdlEl0KGnRva2VuX3ZhbHVlX3R5cGVfc2VsZWN0aW9uGAMgASgLMh4uY28udG9wbC5nZW51cy5TdHJpbmdTZWxlY3Rpb25IAFIXdG9rZW5WYWx1ZVR5cGVTZWxlY3Rpb25CDQoLZmlsdGVyX3R5cGU='); @$core.Deprecated('Use transactionFilterDescriptor instead') const TransactionFilter$json = const { '1': 'TransactionFilter', '2': const [ - const {'1': 'tx_type_selection', '3': 1, '4': 1, '5': 11, '6': '.co.topl.genus.StringSelection', '9': 0, '10': 'txTypeSelection'}, - const {'1': 'timestamp_range', '3': 2, '4': 1, '5': 11, '6': '.co.topl.genus.NumberRange', '9': 0, '10': 'timestampRange'}, - const {'1': 'input_address_selection', '3': 3, '4': 1, '5': 11, '6': '.co.topl.genus.StringSelection', '9': 0, '10': 'inputAddressSelection'}, - const {'1': 'input_nonce_selection', '3': 4, '4': 1, '5': 11, '6': '.co.topl.genus.NumberSelection', '9': 0, '10': 'inputNonceSelection'}, - const {'1': 'output_token_box_type_selection', '3': 5, '4': 1, '5': 11, '6': '.co.topl.genus.StringSelection', '9': 0, '10': 'outputTokenBoxTypeSelection'}, - const {'1': 'output_token_value_filter', '3': 6, '4': 1, '5': 11, '6': '.co.topl.genus.TokenValueFilter', '9': 0, '10': 'outputTokenValueFilter'}, - const {'1': 'output_address_selection', '3': 7, '4': 1, '5': 11, '6': '.co.topl.genus.StringSelection', '9': 0, '10': 'outputAddressSelection'}, - const {'1': 'minting_selection', '3': 8, '4': 1, '5': 11, '6': '.co.topl.genus.BooleanSelection', '9': 0, '10': 'mintingSelection'}, - const {'1': 'tx_id_selection', '3': 9, '4': 1, '5': 11, '6': '.co.topl.genus.StringSelection', '9': 0, '10': 'txIdSelection'}, - const {'1': 'boxes_to_remove_selection', '3': 10, '4': 1, '5': 11, '6': '.co.topl.genus.StringSelection', '9': 0, '10': 'boxesToRemoveSelection'}, - const {'1': 'fee_range', '3': 11, '4': 1, '5': 11, '6': '.co.topl.genus.NumberRange', '9': 0, '10': 'feeRange'}, - const {'1': 'proposition_selection', '3': 12, '4': 1, '5': 11, '6': '.co.topl.genus.StringSelection', '9': 0, '10': 'propositionSelection'}, - const {'1': 'block_id_selection', '3': 13, '4': 1, '5': 11, '6': '.co.topl.genus.StringSelection', '9': 0, '10': 'blockIdSelection'}, - const {'1': 'block_height_range', '3': 14, '4': 1, '5': 11, '6': '.co.topl.genus.NumberRange', '9': 0, '10': 'blockHeightRange'}, - const {'1': 'and', '3': 15, '4': 1, '5': 11, '6': '.co.topl.genus.TransactionFilter.AndFilter', '9': 0, '10': 'and'}, - const {'1': 'or', '3': 16, '4': 1, '5': 11, '6': '.co.topl.genus.TransactionFilter.OrFilter', '9': 0, '10': 'or'}, - const {'1': 'not', '3': 17, '4': 1, '5': 11, '6': '.co.topl.genus.TransactionFilter.NotFilter', '9': 0, '10': 'not'}, - const {'1': 'all', '3': 18, '4': 1, '5': 11, '6': '.co.topl.genus.TransactionFilter.AllFilter', '9': 0, '10': 'all'}, - ], - '3': const [TransactionFilter_AndFilter$json, TransactionFilter_OrFilter$json, TransactionFilter_NotFilter$json, TransactionFilter_AllFilter$json], + const { + '1': 'tx_type_selection', + '3': 1, + '4': 1, + '5': 11, + '6': '.co.topl.genus.StringSelection', + '9': 0, + '10': 'txTypeSelection' + }, + const { + '1': 'timestamp_range', + '3': 2, + '4': 1, + '5': 11, + '6': '.co.topl.genus.NumberRange', + '9': 0, + '10': 'timestampRange' + }, + const { + '1': 'input_address_selection', + '3': 3, + '4': 1, + '5': 11, + '6': '.co.topl.genus.StringSelection', + '9': 0, + '10': 'inputAddressSelection' + }, + const { + '1': 'input_nonce_selection', + '3': 4, + '4': 1, + '5': 11, + '6': '.co.topl.genus.NumberSelection', + '9': 0, + '10': 'inputNonceSelection' + }, + const { + '1': 'output_token_box_type_selection', + '3': 5, + '4': 1, + '5': 11, + '6': '.co.topl.genus.StringSelection', + '9': 0, + '10': 'outputTokenBoxTypeSelection' + }, + const { + '1': 'output_token_value_filter', + '3': 6, + '4': 1, + '5': 11, + '6': '.co.topl.genus.TokenValueFilter', + '9': 0, + '10': 'outputTokenValueFilter' + }, + const { + '1': 'output_address_selection', + '3': 7, + '4': 1, + '5': 11, + '6': '.co.topl.genus.StringSelection', + '9': 0, + '10': 'outputAddressSelection' + }, + const { + '1': 'minting_selection', + '3': 8, + '4': 1, + '5': 11, + '6': '.co.topl.genus.BooleanSelection', + '9': 0, + '10': 'mintingSelection' + }, + const { + '1': 'tx_id_selection', + '3': 9, + '4': 1, + '5': 11, + '6': '.co.topl.genus.StringSelection', + '9': 0, + '10': 'txIdSelection' + }, + const { + '1': 'boxes_to_remove_selection', + '3': 10, + '4': 1, + '5': 11, + '6': '.co.topl.genus.StringSelection', + '9': 0, + '10': 'boxesToRemoveSelection' + }, + const { + '1': 'fee_range', + '3': 11, + '4': 1, + '5': 11, + '6': '.co.topl.genus.NumberRange', + '9': 0, + '10': 'feeRange' + }, + const { + '1': 'proposition_selection', + '3': 12, + '4': 1, + '5': 11, + '6': '.co.topl.genus.StringSelection', + '9': 0, + '10': 'propositionSelection' + }, + const { + '1': 'block_id_selection', + '3': 13, + '4': 1, + '5': 11, + '6': '.co.topl.genus.StringSelection', + '9': 0, + '10': 'blockIdSelection' + }, + const { + '1': 'block_height_range', + '3': 14, + '4': 1, + '5': 11, + '6': '.co.topl.genus.NumberRange', + '9': 0, + '10': 'blockHeightRange' + }, + const { + '1': 'and', + '3': 15, + '4': 1, + '5': 11, + '6': '.co.topl.genus.TransactionFilter.AndFilter', + '9': 0, + '10': 'and' + }, + const { + '1': 'or', + '3': 16, + '4': 1, + '5': 11, + '6': '.co.topl.genus.TransactionFilter.OrFilter', + '9': 0, + '10': 'or' + }, + const { + '1': 'not', + '3': 17, + '4': 1, + '5': 11, + '6': '.co.topl.genus.TransactionFilter.NotFilter', + '9': 0, + '10': 'not' + }, + const { + '1': 'all', + '3': 18, + '4': 1, + '5': 11, + '6': '.co.topl.genus.TransactionFilter.AllFilter', + '9': 0, + '10': 'all' + }, + ], + '3': const [ + TransactionFilter_AndFilter$json, + TransactionFilter_OrFilter$json, + TransactionFilter_NotFilter$json, + TransactionFilter_AllFilter$json + ], '8': const [ const {'1': 'filter_type'}, ], @@ -100,7 +280,14 @@ const TransactionFilter$json = const { const TransactionFilter_AndFilter$json = const { '1': 'AndFilter', '2': const [ - const {'1': 'filters', '3': 1, '4': 3, '5': 11, '6': '.co.topl.genus.TransactionFilter', '10': 'filters'}, + const { + '1': 'filters', + '3': 1, + '4': 3, + '5': 11, + '6': '.co.topl.genus.TransactionFilter', + '10': 'filters' + }, ], }; @@ -108,7 +295,14 @@ const TransactionFilter_AndFilter$json = const { const TransactionFilter_OrFilter$json = const { '1': 'OrFilter', '2': const [ - const {'1': 'filters', '3': 1, '4': 3, '5': 11, '6': '.co.topl.genus.TransactionFilter', '10': 'filters'}, + const { + '1': 'filters', + '3': 1, + '4': 3, + '5': 11, + '6': '.co.topl.genus.TransactionFilter', + '10': 'filters' + }, ], }; @@ -116,7 +310,14 @@ const TransactionFilter_OrFilter$json = const { const TransactionFilter_NotFilter$json = const { '1': 'NotFilter', '2': const [ - const {'1': 'filter', '3': 1, '4': 1, '5': 11, '6': '.co.topl.genus.TransactionFilter', '10': 'filter'}, + const { + '1': 'filter', + '3': 1, + '4': 1, + '5': 11, + '6': '.co.topl.genus.TransactionFilter', + '10': 'filter' + }, ], }; @@ -126,27 +327,145 @@ const TransactionFilter_AllFilter$json = const { }; /// Descriptor for `TransactionFilter`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List transactionFilterDescriptor = $convert.base64Decode('ChFUcmFuc2FjdGlvbkZpbHRlchJMChF0eF90eXBlX3NlbGVjdGlvbhgBIAEoCzIeLmNvLnRvcGwuZ2VudXMuU3RyaW5nU2VsZWN0aW9uSABSD3R4VHlwZVNlbGVjdGlvbhJFCg90aW1lc3RhbXBfcmFuZ2UYAiABKAsyGi5jby50b3BsLmdlbnVzLk51bWJlclJhbmdlSABSDnRpbWVzdGFtcFJhbmdlElgKF2lucHV0X2FkZHJlc3Nfc2VsZWN0aW9uGAMgASgLMh4uY28udG9wbC5nZW51cy5TdHJpbmdTZWxlY3Rpb25IAFIVaW5wdXRBZGRyZXNzU2VsZWN0aW9uElQKFWlucHV0X25vbmNlX3NlbGVjdGlvbhgEIAEoCzIeLmNvLnRvcGwuZ2VudXMuTnVtYmVyU2VsZWN0aW9uSABSE2lucHV0Tm9uY2VTZWxlY3Rpb24SZgofb3V0cHV0X3Rva2VuX2JveF90eXBlX3NlbGVjdGlvbhgFIAEoCzIeLmNvLnRvcGwuZ2VudXMuU3RyaW5nU2VsZWN0aW9uSABSG291dHB1dFRva2VuQm94VHlwZVNlbGVjdGlvbhJcChlvdXRwdXRfdG9rZW5fdmFsdWVfZmlsdGVyGAYgASgLMh8uY28udG9wbC5nZW51cy5Ub2tlblZhbHVlRmlsdGVySABSFm91dHB1dFRva2VuVmFsdWVGaWx0ZXISWgoYb3V0cHV0X2FkZHJlc3Nfc2VsZWN0aW9uGAcgASgLMh4uY28udG9wbC5nZW51cy5TdHJpbmdTZWxlY3Rpb25IAFIWb3V0cHV0QWRkcmVzc1NlbGVjdGlvbhJOChFtaW50aW5nX3NlbGVjdGlvbhgIIAEoCzIfLmNvLnRvcGwuZ2VudXMuQm9vbGVhblNlbGVjdGlvbkgAUhBtaW50aW5nU2VsZWN0aW9uEkgKD3R4X2lkX3NlbGVjdGlvbhgJIAEoCzIeLmNvLnRvcGwuZ2VudXMuU3RyaW5nU2VsZWN0aW9uSABSDXR4SWRTZWxlY3Rpb24SWwoZYm94ZXNfdG9fcmVtb3ZlX3NlbGVjdGlvbhgKIAEoCzIeLmNvLnRvcGwuZ2VudXMuU3RyaW5nU2VsZWN0aW9uSABSFmJveGVzVG9SZW1vdmVTZWxlY3Rpb24SOQoJZmVlX3JhbmdlGAsgASgLMhouY28udG9wbC5nZW51cy5OdW1iZXJSYW5nZUgAUghmZWVSYW5nZRJVChVwcm9wb3NpdGlvbl9zZWxlY3Rpb24YDCABKAsyHi5jby50b3BsLmdlbnVzLlN0cmluZ1NlbGVjdGlvbkgAUhRwcm9wb3NpdGlvblNlbGVjdGlvbhJOChJibG9ja19pZF9zZWxlY3Rpb24YDSABKAsyHi5jby50b3BsLmdlbnVzLlN0cmluZ1NlbGVjdGlvbkgAUhBibG9ja0lkU2VsZWN0aW9uEkoKEmJsb2NrX2hlaWdodF9yYW5nZRgOIAEoCzIaLmNvLnRvcGwuZ2VudXMuTnVtYmVyUmFuZ2VIAFIQYmxvY2tIZWlnaHRSYW5nZRI+CgNhbmQYDyABKAsyKi5jby50b3BsLmdlbnVzLlRyYW5zYWN0aW9uRmlsdGVyLkFuZEZpbHRlckgAUgNhbmQSOwoCb3IYECABKAsyKS5jby50b3BsLmdlbnVzLlRyYW5zYWN0aW9uRmlsdGVyLk9yRmlsdGVySABSAm9yEj4KA25vdBgRIAEoCzIqLmNvLnRvcGwuZ2VudXMuVHJhbnNhY3Rpb25GaWx0ZXIuTm90RmlsdGVySABSA25vdBI+CgNhbGwYEiABKAsyKi5jby50b3BsLmdlbnVzLlRyYW5zYWN0aW9uRmlsdGVyLkFsbEZpbHRlckgAUgNhbGwaRwoJQW5kRmlsdGVyEjoKB2ZpbHRlcnMYASADKAsyIC5jby50b3BsLmdlbnVzLlRyYW5zYWN0aW9uRmlsdGVyUgdmaWx0ZXJzGkYKCE9yRmlsdGVyEjoKB2ZpbHRlcnMYASADKAsyIC5jby50b3BsLmdlbnVzLlRyYW5zYWN0aW9uRmlsdGVyUgdmaWx0ZXJzGkUKCU5vdEZpbHRlchI4CgZmaWx0ZXIYASABKAsyIC5jby50b3BsLmdlbnVzLlRyYW5zYWN0aW9uRmlsdGVyUgZmaWx0ZXIaCwoJQWxsRmlsdGVyQg0KC2ZpbHRlcl90eXBl'); +final $typed_data.Uint8List transactionFilterDescriptor = $convert.base64Decode( + 'ChFUcmFuc2FjdGlvbkZpbHRlchJMChF0eF90eXBlX3NlbGVjdGlvbhgBIAEoCzIeLmNvLnRvcGwuZ2VudXMuU3RyaW5nU2VsZWN0aW9uSABSD3R4VHlwZVNlbGVjdGlvbhJFCg90aW1lc3RhbXBfcmFuZ2UYAiABKAsyGi5jby50b3BsLmdlbnVzLk51bWJlclJhbmdlSABSDnRpbWVzdGFtcFJhbmdlElgKF2lucHV0X2FkZHJlc3Nfc2VsZWN0aW9uGAMgASgLMh4uY28udG9wbC5nZW51cy5TdHJpbmdTZWxlY3Rpb25IAFIVaW5wdXRBZGRyZXNzU2VsZWN0aW9uElQKFWlucHV0X25vbmNlX3NlbGVjdGlvbhgEIAEoCzIeLmNvLnRvcGwuZ2VudXMuTnVtYmVyU2VsZWN0aW9uSABSE2lucHV0Tm9uY2VTZWxlY3Rpb24SZgofb3V0cHV0X3Rva2VuX2JveF90eXBlX3NlbGVjdGlvbhgFIAEoCzIeLmNvLnRvcGwuZ2VudXMuU3RyaW5nU2VsZWN0aW9uSABSG291dHB1dFRva2VuQm94VHlwZVNlbGVjdGlvbhJcChlvdXRwdXRfdG9rZW5fdmFsdWVfZmlsdGVyGAYgASgLMh8uY28udG9wbC5nZW51cy5Ub2tlblZhbHVlRmlsdGVySABSFm91dHB1dFRva2VuVmFsdWVGaWx0ZXISWgoYb3V0cHV0X2FkZHJlc3Nfc2VsZWN0aW9uGAcgASgLMh4uY28udG9wbC5nZW51cy5TdHJpbmdTZWxlY3Rpb25IAFIWb3V0cHV0QWRkcmVzc1NlbGVjdGlvbhJOChFtaW50aW5nX3NlbGVjdGlvbhgIIAEoCzIfLmNvLnRvcGwuZ2VudXMuQm9vbGVhblNlbGVjdGlvbkgAUhBtaW50aW5nU2VsZWN0aW9uEkgKD3R4X2lkX3NlbGVjdGlvbhgJIAEoCzIeLmNvLnRvcGwuZ2VudXMuU3RyaW5nU2VsZWN0aW9uSABSDXR4SWRTZWxlY3Rpb24SWwoZYm94ZXNfdG9fcmVtb3ZlX3NlbGVjdGlvbhgKIAEoCzIeLmNvLnRvcGwuZ2VudXMuU3RyaW5nU2VsZWN0aW9uSABSFmJveGVzVG9SZW1vdmVTZWxlY3Rpb24SOQoJZmVlX3JhbmdlGAsgASgLMhouY28udG9wbC5nZW51cy5OdW1iZXJSYW5nZUgAUghmZWVSYW5nZRJVChVwcm9wb3NpdGlvbl9zZWxlY3Rpb24YDCABKAsyHi5jby50b3BsLmdlbnVzLlN0cmluZ1NlbGVjdGlvbkgAUhRwcm9wb3NpdGlvblNlbGVjdGlvbhJOChJibG9ja19pZF9zZWxlY3Rpb24YDSABKAsyHi5jby50b3BsLmdlbnVzLlN0cmluZ1NlbGVjdGlvbkgAUhBibG9ja0lkU2VsZWN0aW9uEkoKEmJsb2NrX2hlaWdodF9yYW5nZRgOIAEoCzIaLmNvLnRvcGwuZ2VudXMuTnVtYmVyUmFuZ2VIAFIQYmxvY2tIZWlnaHRSYW5nZRI+CgNhbmQYDyABKAsyKi5jby50b3BsLmdlbnVzLlRyYW5zYWN0aW9uRmlsdGVyLkFuZEZpbHRlckgAUgNhbmQSOwoCb3IYECABKAsyKS5jby50b3BsLmdlbnVzLlRyYW5zYWN0aW9uRmlsdGVyLk9yRmlsdGVySABSAm9yEj4KA25vdBgRIAEoCzIqLmNvLnRvcGwuZ2VudXMuVHJhbnNhY3Rpb25GaWx0ZXIuTm90RmlsdGVySABSA25vdBI+CgNhbGwYEiABKAsyKi5jby50b3BsLmdlbnVzLlRyYW5zYWN0aW9uRmlsdGVyLkFsbEZpbHRlckgAUgNhbGwaRwoJQW5kRmlsdGVyEjoKB2ZpbHRlcnMYASADKAsyIC5jby50b3BsLmdlbnVzLlRyYW5zYWN0aW9uRmlsdGVyUgdmaWx0ZXJzGkYKCE9yRmlsdGVyEjoKB2ZpbHRlcnMYASADKAsyIC5jby50b3BsLmdlbnVzLlRyYW5zYWN0aW9uRmlsdGVyUgdmaWx0ZXJzGkUKCU5vdEZpbHRlchI4CgZmaWx0ZXIYASABKAsyIC5jby50b3BsLmdlbnVzLlRyYW5zYWN0aW9uRmlsdGVyUgZmaWx0ZXIaCwoJQWxsRmlsdGVyQg0KC2ZpbHRlcl90eXBl'); @$core.Deprecated('Use blockFilterDescriptor instead') const BlockFilter$json = const { '1': 'BlockFilter', '2': const [ - const {'1': 'id_selection', '3': 1, '4': 1, '5': 11, '6': '.co.topl.genus.StringSelection', '9': 0, '10': 'idSelection'}, - const {'1': 'parent_id_selection', '3': 2, '4': 1, '5': 11, '6': '.co.topl.genus.StringSelection', '9': 0, '10': 'parentIdSelection'}, - const {'1': 'timestamp_range', '3': 3, '4': 1, '5': 11, '6': '.co.topl.genus.NumberRange', '9': 0, '10': 'timestampRange'}, - const {'1': 'generator_box_token_value_filter', '3': 4, '4': 1, '5': 11, '6': '.co.topl.genus.TokenValueFilter', '9': 0, '10': 'generatorBoxTokenValueFilter'}, - const {'1': 'public_key_selection', '3': 5, '4': 1, '5': 11, '6': '.co.topl.genus.StringSelection', '9': 0, '10': 'publicKeySelection'}, - const {'1': 'height_range', '3': 6, '4': 1, '5': 11, '6': '.co.topl.genus.NumberRange', '9': 0, '10': 'heightRange'}, - const {'1': 'height_selection', '3': 7, '4': 1, '5': 11, '6': '.co.topl.genus.NumberSelection', '9': 0, '10': 'heightSelection'}, - const {'1': 'difficulty_range', '3': 8, '4': 1, '5': 11, '6': '.co.topl.genus.NumberRange', '9': 0, '10': 'difficultyRange'}, - const {'1': 'version_selection', '3': 9, '4': 1, '5': 11, '6': '.co.topl.genus.NumberSelection', '9': 0, '10': 'versionSelection'}, - const {'1': 'num_transaction_range', '3': 10, '4': 1, '5': 11, '6': '.co.topl.genus.NumberRange', '9': 0, '10': 'numTransactionRange'}, - const {'1': 'and', '3': 15, '4': 1, '5': 11, '6': '.co.topl.genus.BlockFilter.AndFilter', '9': 0, '10': 'and'}, - const {'1': 'or', '3': 16, '4': 1, '5': 11, '6': '.co.topl.genus.BlockFilter.OrFilter', '9': 0, '10': 'or'}, - const {'1': 'not', '3': 17, '4': 1, '5': 11, '6': '.co.topl.genus.BlockFilter.NotFilter', '9': 0, '10': 'not'}, - const {'1': 'all', '3': 18, '4': 1, '5': 11, '6': '.co.topl.genus.BlockFilter.AllFilter', '9': 0, '10': 'all'}, - ], - '3': const [BlockFilter_AndFilter$json, BlockFilter_OrFilter$json, BlockFilter_NotFilter$json, BlockFilter_AllFilter$json], + const { + '1': 'id_selection', + '3': 1, + '4': 1, + '5': 11, + '6': '.co.topl.genus.StringSelection', + '9': 0, + '10': 'idSelection' + }, + const { + '1': 'parent_id_selection', + '3': 2, + '4': 1, + '5': 11, + '6': '.co.topl.genus.StringSelection', + '9': 0, + '10': 'parentIdSelection' + }, + const { + '1': 'timestamp_range', + '3': 3, + '4': 1, + '5': 11, + '6': '.co.topl.genus.NumberRange', + '9': 0, + '10': 'timestampRange' + }, + const { + '1': 'generator_box_token_value_filter', + '3': 4, + '4': 1, + '5': 11, + '6': '.co.topl.genus.TokenValueFilter', + '9': 0, + '10': 'generatorBoxTokenValueFilter' + }, + const { + '1': 'public_key_selection', + '3': 5, + '4': 1, + '5': 11, + '6': '.co.topl.genus.StringSelection', + '9': 0, + '10': 'publicKeySelection' + }, + const { + '1': 'height_range', + '3': 6, + '4': 1, + '5': 11, + '6': '.co.topl.genus.NumberRange', + '9': 0, + '10': 'heightRange' + }, + const { + '1': 'height_selection', + '3': 7, + '4': 1, + '5': 11, + '6': '.co.topl.genus.NumberSelection', + '9': 0, + '10': 'heightSelection' + }, + const { + '1': 'difficulty_range', + '3': 8, + '4': 1, + '5': 11, + '6': '.co.topl.genus.NumberRange', + '9': 0, + '10': 'difficultyRange' + }, + const { + '1': 'version_selection', + '3': 9, + '4': 1, + '5': 11, + '6': '.co.topl.genus.NumberSelection', + '9': 0, + '10': 'versionSelection' + }, + const { + '1': 'num_transaction_range', + '3': 10, + '4': 1, + '5': 11, + '6': '.co.topl.genus.NumberRange', + '9': 0, + '10': 'numTransactionRange' + }, + const { + '1': 'and', + '3': 15, + '4': 1, + '5': 11, + '6': '.co.topl.genus.BlockFilter.AndFilter', + '9': 0, + '10': 'and' + }, + const { + '1': 'or', + '3': 16, + '4': 1, + '5': 11, + '6': '.co.topl.genus.BlockFilter.OrFilter', + '9': 0, + '10': 'or' + }, + const { + '1': 'not', + '3': 17, + '4': 1, + '5': 11, + '6': '.co.topl.genus.BlockFilter.NotFilter', + '9': 0, + '10': 'not' + }, + const { + '1': 'all', + '3': 18, + '4': 1, + '5': 11, + '6': '.co.topl.genus.BlockFilter.AllFilter', + '9': 0, + '10': 'all' + }, + ], + '3': const [ + BlockFilter_AndFilter$json, + BlockFilter_OrFilter$json, + BlockFilter_NotFilter$json, + BlockFilter_AllFilter$json + ], '8': const [ const {'1': 'filter_type'}, ], @@ -156,7 +475,14 @@ const BlockFilter$json = const { const BlockFilter_AndFilter$json = const { '1': 'AndFilter', '2': const [ - const {'1': 'filters', '3': 1, '4': 3, '5': 11, '6': '.co.topl.genus.BlockFilter', '10': 'filters'}, + const { + '1': 'filters', + '3': 1, + '4': 3, + '5': 11, + '6': '.co.topl.genus.BlockFilter', + '10': 'filters' + }, ], }; @@ -164,7 +490,14 @@ const BlockFilter_AndFilter$json = const { const BlockFilter_OrFilter$json = const { '1': 'OrFilter', '2': const [ - const {'1': 'filters', '3': 1, '4': 3, '5': 11, '6': '.co.topl.genus.BlockFilter', '10': 'filters'}, + const { + '1': 'filters', + '3': 1, + '4': 3, + '5': 11, + '6': '.co.topl.genus.BlockFilter', + '10': 'filters' + }, ], }; @@ -172,7 +505,14 @@ const BlockFilter_OrFilter$json = const { const BlockFilter_NotFilter$json = const { '1': 'NotFilter', '2': const [ - const {'1': 'filter', '3': 1, '4': 1, '5': 11, '6': '.co.topl.genus.BlockFilter', '10': 'filter'}, + const { + '1': 'filter', + '3': 1, + '4': 1, + '5': 11, + '6': '.co.topl.genus.BlockFilter', + '10': 'filter' + }, ], }; @@ -182,4 +522,5 @@ const BlockFilter_AllFilter$json = const { }; /// Descriptor for `BlockFilter`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List blockFilterDescriptor = $convert.base64Decode('CgtCbG9ja0ZpbHRlchJDCgxpZF9zZWxlY3Rpb24YASABKAsyHi5jby50b3BsLmdlbnVzLlN0cmluZ1NlbGVjdGlvbkgAUgtpZFNlbGVjdGlvbhJQChNwYXJlbnRfaWRfc2VsZWN0aW9uGAIgASgLMh4uY28udG9wbC5nZW51cy5TdHJpbmdTZWxlY3Rpb25IAFIRcGFyZW50SWRTZWxlY3Rpb24SRQoPdGltZXN0YW1wX3JhbmdlGAMgASgLMhouY28udG9wbC5nZW51cy5OdW1iZXJSYW5nZUgAUg50aW1lc3RhbXBSYW5nZRJpCiBnZW5lcmF0b3JfYm94X3Rva2VuX3ZhbHVlX2ZpbHRlchgEIAEoCzIfLmNvLnRvcGwuZ2VudXMuVG9rZW5WYWx1ZUZpbHRlckgAUhxnZW5lcmF0b3JCb3hUb2tlblZhbHVlRmlsdGVyElIKFHB1YmxpY19rZXlfc2VsZWN0aW9uGAUgASgLMh4uY28udG9wbC5nZW51cy5TdHJpbmdTZWxlY3Rpb25IAFIScHVibGljS2V5U2VsZWN0aW9uEj8KDGhlaWdodF9yYW5nZRgGIAEoCzIaLmNvLnRvcGwuZ2VudXMuTnVtYmVyUmFuZ2VIAFILaGVpZ2h0UmFuZ2USSwoQaGVpZ2h0X3NlbGVjdGlvbhgHIAEoCzIeLmNvLnRvcGwuZ2VudXMuTnVtYmVyU2VsZWN0aW9uSABSD2hlaWdodFNlbGVjdGlvbhJHChBkaWZmaWN1bHR5X3JhbmdlGAggASgLMhouY28udG9wbC5nZW51cy5OdW1iZXJSYW5nZUgAUg9kaWZmaWN1bHR5UmFuZ2USTQoRdmVyc2lvbl9zZWxlY3Rpb24YCSABKAsyHi5jby50b3BsLmdlbnVzLk51bWJlclNlbGVjdGlvbkgAUhB2ZXJzaW9uU2VsZWN0aW9uElAKFW51bV90cmFuc2FjdGlvbl9yYW5nZRgKIAEoCzIaLmNvLnRvcGwuZ2VudXMuTnVtYmVyUmFuZ2VIAFITbnVtVHJhbnNhY3Rpb25SYW5nZRI4CgNhbmQYDyABKAsyJC5jby50b3BsLmdlbnVzLkJsb2NrRmlsdGVyLkFuZEZpbHRlckgAUgNhbmQSNQoCb3IYECABKAsyIy5jby50b3BsLmdlbnVzLkJsb2NrRmlsdGVyLk9yRmlsdGVySABSAm9yEjgKA25vdBgRIAEoCzIkLmNvLnRvcGwuZ2VudXMuQmxvY2tGaWx0ZXIuTm90RmlsdGVySABSA25vdBI4CgNhbGwYEiABKAsyJC5jby50b3BsLmdlbnVzLkJsb2NrRmlsdGVyLkFsbEZpbHRlckgAUgNhbGwaQQoJQW5kRmlsdGVyEjQKB2ZpbHRlcnMYASADKAsyGi5jby50b3BsLmdlbnVzLkJsb2NrRmlsdGVyUgdmaWx0ZXJzGkAKCE9yRmlsdGVyEjQKB2ZpbHRlcnMYASADKAsyGi5jby50b3BsLmdlbnVzLkJsb2NrRmlsdGVyUgdmaWx0ZXJzGj8KCU5vdEZpbHRlchIyCgZmaWx0ZXIYASABKAsyGi5jby50b3BsLmdlbnVzLkJsb2NrRmlsdGVyUgZmaWx0ZXIaCwoJQWxsRmlsdGVyQg0KC2ZpbHRlcl90eXBl'); +final $typed_data.Uint8List blockFilterDescriptor = $convert.base64Decode( + 'CgtCbG9ja0ZpbHRlchJDCgxpZF9zZWxlY3Rpb24YASABKAsyHi5jby50b3BsLmdlbnVzLlN0cmluZ1NlbGVjdGlvbkgAUgtpZFNlbGVjdGlvbhJQChNwYXJlbnRfaWRfc2VsZWN0aW9uGAIgASgLMh4uY28udG9wbC5nZW51cy5TdHJpbmdTZWxlY3Rpb25IAFIRcGFyZW50SWRTZWxlY3Rpb24SRQoPdGltZXN0YW1wX3JhbmdlGAMgASgLMhouY28udG9wbC5nZW51cy5OdW1iZXJSYW5nZUgAUg50aW1lc3RhbXBSYW5nZRJpCiBnZW5lcmF0b3JfYm94X3Rva2VuX3ZhbHVlX2ZpbHRlchgEIAEoCzIfLmNvLnRvcGwuZ2VudXMuVG9rZW5WYWx1ZUZpbHRlckgAUhxnZW5lcmF0b3JCb3hUb2tlblZhbHVlRmlsdGVyElIKFHB1YmxpY19rZXlfc2VsZWN0aW9uGAUgASgLMh4uY28udG9wbC5nZW51cy5TdHJpbmdTZWxlY3Rpb25IAFIScHVibGljS2V5U2VsZWN0aW9uEj8KDGhlaWdodF9yYW5nZRgGIAEoCzIaLmNvLnRvcGwuZ2VudXMuTnVtYmVyUmFuZ2VIAFILaGVpZ2h0UmFuZ2USSwoQaGVpZ2h0X3NlbGVjdGlvbhgHIAEoCzIeLmNvLnRvcGwuZ2VudXMuTnVtYmVyU2VsZWN0aW9uSABSD2hlaWdodFNlbGVjdGlvbhJHChBkaWZmaWN1bHR5X3JhbmdlGAggASgLMhouY28udG9wbC5nZW51cy5OdW1iZXJSYW5nZUgAUg9kaWZmaWN1bHR5UmFuZ2USTQoRdmVyc2lvbl9zZWxlY3Rpb24YCSABKAsyHi5jby50b3BsLmdlbnVzLk51bWJlclNlbGVjdGlvbkgAUhB2ZXJzaW9uU2VsZWN0aW9uElAKFW51bV90cmFuc2FjdGlvbl9yYW5nZRgKIAEoCzIaLmNvLnRvcGwuZ2VudXMuTnVtYmVyUmFuZ2VIAFITbnVtVHJhbnNhY3Rpb25SYW5nZRI4CgNhbmQYDyABKAsyJC5jby50b3BsLmdlbnVzLkJsb2NrRmlsdGVyLkFuZEZpbHRlckgAUgNhbmQSNQoCb3IYECABKAsyIy5jby50b3BsLmdlbnVzLkJsb2NrRmlsdGVyLk9yRmlsdGVySABSAm9yEjgKA25vdBgRIAEoCzIkLmNvLnRvcGwuZ2VudXMuQmxvY2tGaWx0ZXIuTm90RmlsdGVySABSA25vdBI4CgNhbGwYEiABKAsyJC5jby50b3BsLmdlbnVzLkJsb2NrRmlsdGVyLkFsbEZpbHRlckgAUgNhbGwaQQoJQW5kRmlsdGVyEjQKB2ZpbHRlcnMYASADKAsyGi5jby50b3BsLmdlbnVzLkJsb2NrRmlsdGVyUgdmaWx0ZXJzGkAKCE9yRmlsdGVyEjQKB2ZpbHRlcnMYASADKAsyGi5jby50b3BsLmdlbnVzLkJsb2NrRmlsdGVyUgdmaWx0ZXJzGj8KCU5vdEZpbHRlchIyCgZmaWx0ZXIYASABKAsyGi5jby50b3BsLmdlbnVzLkJsb2NrRmlsdGVyUgZmaWx0ZXIaCwoJQWxsRmlsdGVyQg0KC2ZpbHRlcl90eXBl'); diff --git a/lib/genus/generated/services_types.pb.dart b/lib/genus/generated/services_types.pb.dart index 95911845..a954cea0 100644 --- a/lib/genus/generated/services_types.pb.dart +++ b/lib/genus/generated/services_types.pb.dart @@ -5,26 +5,36 @@ // @dart = 2.12 // ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name +// Dart imports: import 'dart:core' as $core; +// Package imports: import 'package:protobuf/protobuf.dart' as $pb; class Paging extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'Paging', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'Paging', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) ..a<$core.int>( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'pageNumber', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'pageNumber', $pb.PbFieldType.OU3, ) ..a<$core.int>( 2, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'pageSize', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'pageSize', $pb.PbFieldType.OU3, ) ..hasRequiredFields = false; @@ -43,9 +53,11 @@ class Paging extends $pb.GeneratedMessage { } return _result; } - factory Paging.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory Paging.fromBuffer($core.List<$core.int> i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); - factory Paging.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory Paging.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -59,14 +71,16 @@ class Paging extends $pb.GeneratedMessage { 'Will be removed in next major version', ) Paging copyWith(void Function(Paging) updates) => - super.copyWith((message) => updates(message as Paging)) as Paging; // ignore: deprecated_member_use + super.copyWith((message) => updates(message as Paging)) + as Paging; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static Paging create() => Paging._(); Paging createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') - static Paging getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static Paging getDefault() => + _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static Paging? _defaultInstance; @$pb.TagNumber(1) diff --git a/lib/genus/generated/services_types.pbenum.dart b/lib/genus/generated/services_types.pbenum.dart index f1c28728..7998c993 100644 --- a/lib/genus/generated/services_types.pbenum.dart +++ b/lib/genus/generated/services_types.pbenum.dart @@ -4,4 +4,3 @@ // // @dart = 2.12 // ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name - diff --git a/lib/genus/generated/services_types.pbjson.dart b/lib/genus/generated/services_types.pbjson.dart index 7847a65f..db9e68cc 100644 --- a/lib/genus/generated/services_types.pbjson.dart +++ b/lib/genus/generated/services_types.pbjson.dart @@ -5,9 +5,11 @@ // @dart = 2.12 // ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,deprecated_member_use_from_same_package,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name -import 'dart:core' as $core; +// Dart imports: import 'dart:convert' as $convert; +import 'dart:core' as $core; import 'dart:typed_data' as $typed_data; + @$core.Deprecated('Use pagingDescriptor instead') const Paging$json = const { '1': 'Paging', @@ -18,4 +20,5 @@ const Paging$json = const { }; /// Descriptor for `Paging`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List pagingDescriptor = $convert.base64Decode('CgZQYWdpbmcSHwoLcGFnZV9udW1iZXIYASABKA1SCnBhZ2VOdW1iZXISGwoJcGFnZV9zaXplGAIgASgNUghwYWdlU2l6ZQ=='); +final $typed_data.Uint8List pagingDescriptor = $convert.base64Decode( + 'CgZQYWdpbmcSHwoLcGFnZV9udW1iZXIYASABKA1SCnBhZ2VOdW1iZXISGwoJcGFnZV9zaXplGAIgASgNUghwYWdlU2l6ZQ=='); diff --git a/lib/genus/generated/transactions_query.pb.dart b/lib/genus/generated/transactions_query.pb.dart index 89906d4d..dd1174b6 100644 --- a/lib/genus/generated/transactions_query.pb.dart +++ b/lib/genus/generated/transactions_query.pb.dart @@ -5,23 +5,34 @@ // @dart = 2.12 // ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name +// Dart imports: import 'dart:core' as $core; +// Package imports: import 'package:protobuf/protobuf.dart' as $pb; +// Project imports: import 'filters.pb.dart' as $4; import 'services_types.pb.dart' as $5; import 'types.pb.dart' as $6; class TransactionSorting_Height extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'TransactionSorting.Height', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'TransactionSorting.Height', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) - ..aOB(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'descending') + ..aOB( + 1, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'descending') ..hasRequiredFields = false; TransactionSorting_Height._() : super(); @@ -39,30 +50,34 @@ class TransactionSorting_Height extends $pb.GeneratedMessage { $pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY, ]) => create()..mergeFromBuffer(i, r); - factory TransactionSorting_Height.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory TransactionSorting_Height.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version', ) - TransactionSorting_Height clone() => TransactionSorting_Height()..mergeFromMessage(this); + TransactionSorting_Height clone() => + TransactionSorting_Height()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version', ) - TransactionSorting_Height copyWith(void Function(TransactionSorting_Height) updates) => + TransactionSorting_Height copyWith( + void Function(TransactionSorting_Height) updates) => super.copyWith((message) => updates(message as TransactionSorting_Height)) as TransactionSorting_Height; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static TransactionSorting_Height create() => TransactionSorting_Height._(); TransactionSorting_Height createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static TransactionSorting_Height getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static TransactionSorting_Height getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static TransactionSorting_Height? _defaultInstance; @$pb.TagNumber(1) @@ -80,13 +95,21 @@ class TransactionSorting_Height extends $pb.GeneratedMessage { class TransactionSorting_Fee extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'TransactionSorting.Fee', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'TransactionSorting.Fee', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) - ..aOB(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'descending') + ..aOB( + 1, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'descending') ..hasRequiredFields = false; TransactionSorting_Fee._() : super(); @@ -104,30 +127,34 @@ class TransactionSorting_Fee extends $pb.GeneratedMessage { $pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY, ]) => create()..mergeFromBuffer(i, r); - factory TransactionSorting_Fee.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory TransactionSorting_Fee.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version', ) - TransactionSorting_Fee clone() => TransactionSorting_Fee()..mergeFromMessage(this); + TransactionSorting_Fee clone() => + TransactionSorting_Fee()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version', ) - TransactionSorting_Fee copyWith(void Function(TransactionSorting_Fee) updates) => + TransactionSorting_Fee copyWith( + void Function(TransactionSorting_Fee) updates) => super.copyWith((message) => updates(message as TransactionSorting_Fee)) as TransactionSorting_Fee; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static TransactionSorting_Fee create() => TransactionSorting_Fee._(); TransactionSorting_Fee createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static TransactionSorting_Fee getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static TransactionSorting_Fee getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static TransactionSorting_Fee? _defaultInstance; @$pb.TagNumber(1) @@ -145,13 +172,21 @@ class TransactionSorting_Fee extends $pb.GeneratedMessage { class TransactionSorting_Timestamp extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'TransactionSorting.Timestamp', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'TransactionSorting.Timestamp', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) - ..aOB(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'descending') + ..aOB( + 1, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'descending') ..hasRequiredFields = false; TransactionSorting_Timestamp._() : super(); @@ -179,23 +214,28 @@ class TransactionSorting_Timestamp extends $pb.GeneratedMessage { 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version', ) - TransactionSorting_Timestamp clone() => TransactionSorting_Timestamp()..mergeFromMessage(this); + TransactionSorting_Timestamp clone() => + TransactionSorting_Timestamp()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version', ) - TransactionSorting_Timestamp copyWith(void Function(TransactionSorting_Timestamp) updates) => - super.copyWith((message) => updates(message as TransactionSorting_Timestamp)) + TransactionSorting_Timestamp copyWith( + void Function(TransactionSorting_Timestamp) updates) => + super.copyWith( + (message) => updates(message as TransactionSorting_Timestamp)) as TransactionSorting_Timestamp; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') - static TransactionSorting_Timestamp create() => TransactionSorting_Timestamp._(); + static TransactionSorting_Timestamp create() => + TransactionSorting_Timestamp._(); TransactionSorting_Timestamp createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static TransactionSorting_Timestamp getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static TransactionSorting_Timestamp getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static TransactionSorting_Timestamp? _defaultInstance; @$pb.TagNumber(1) @@ -214,33 +254,44 @@ class TransactionSorting_Timestamp extends $pb.GeneratedMessage { enum TransactionSorting_SortBy { height, fee, timestamp, notSet } class TransactionSorting extends $pb.GeneratedMessage { - static const $core.Map<$core.int, TransactionSorting_SortBy> _TransactionSorting_SortByByTag = { + static const $core.Map<$core.int, TransactionSorting_SortBy> + _TransactionSorting_SortByByTag = { 1: TransactionSorting_SortBy.height, 2: TransactionSorting_SortBy.fee, 3: TransactionSorting_SortBy.timestamp, 0: TransactionSorting_SortBy.notSet }; static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'TransactionSorting', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'TransactionSorting', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) ..oo(0, [1, 2, 3]) ..aOM( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'height', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'height', subBuilder: TransactionSorting_Height.create, ) ..aOM( 2, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'fee', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'fee', subBuilder: TransactionSorting_Fee.create, ) ..aOM( 3, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'timestamp', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'timestamp', subBuilder: TransactionSorting_Timestamp.create, ) ..hasRequiredFields = false; @@ -268,7 +319,8 @@ class TransactionSorting extends $pb.GeneratedMessage { $pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY, ]) => create()..mergeFromBuffer(i, r); - factory TransactionSorting.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory TransactionSorting.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -288,13 +340,15 @@ class TransactionSorting extends $pb.GeneratedMessage { @$core.pragma('dart2js:noInline') static TransactionSorting create() => TransactionSorting._(); TransactionSorting createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static TransactionSorting getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static TransactionSorting getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static TransactionSorting? _defaultInstance; - TransactionSorting_SortBy whichSortBy() => _TransactionSorting_SortByByTag[$_whichOneof(0)]!; + TransactionSorting_SortBy whichSortBy() => + _TransactionSorting_SortByByTag[$_whichOneof(0)]!; void clearSortBy() => clearField($_whichOneof(0)); @$pb.TagNumber(1) @@ -342,30 +396,42 @@ class TransactionSorting extends $pb.GeneratedMessage { class QueryTxsReq extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'QueryTxsReq', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'QueryTxsReq', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) ..aOM<$4.TransactionFilter>( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'filter', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'filter', subBuilder: $4.TransactionFilter.create, ) ..aOM( 2, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'sorting', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'sorting', subBuilder: TransactionSorting.create, ) ..a<$core.int>( 3, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'confirmationDepth', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'confirmationDepth', $pb.PbFieldType.OU3, ) ..aOM<$5.Paging>( 4, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'pagingOptions', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'pagingOptions', subBuilder: $5.Paging.create, ) ..hasRequiredFields = false; @@ -392,9 +458,11 @@ class QueryTxsReq extends $pb.GeneratedMessage { } return _result; } - factory QueryTxsReq.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory QueryTxsReq.fromBuffer($core.List<$core.int> i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); - factory QueryTxsReq.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory QueryTxsReq.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -408,14 +476,16 @@ class QueryTxsReq extends $pb.GeneratedMessage { 'Will be removed in next major version', ) QueryTxsReq copyWith(void Function(QueryTxsReq) updates) => - super.copyWith((message) => updates(message as QueryTxsReq)) as QueryTxsReq; // ignore: deprecated_member_use + super.copyWith((message) => updates(message as QueryTxsReq)) + as QueryTxsReq; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static QueryTxsReq create() => QueryTxsReq._(); QueryTxsReq createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') - static QueryTxsReq getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static QueryTxsReq getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static QueryTxsReq? _defaultInstance; @$pb.TagNumber(1) @@ -475,15 +545,21 @@ class QueryTxsReq extends $pb.GeneratedMessage { class QueryTxsRes_Success extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'QueryTxsRes.Success', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'QueryTxsRes.Success', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) ..pc<$6.Transaction>( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'transactions', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'transactions', $pb.PbFieldType.PM, subBuilder: $6.Transaction.create, ) @@ -504,7 +580,8 @@ class QueryTxsRes_Success extends $pb.GeneratedMessage { $pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY, ]) => create()..mergeFromBuffer(i, r); - factory QueryTxsRes_Success.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory QueryTxsRes_Success.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -524,36 +601,59 @@ class QueryTxsRes_Success extends $pb.GeneratedMessage { @$core.pragma('dart2js:noInline') static QueryTxsRes_Success create() => QueryTxsRes_Success._(); QueryTxsRes_Success createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static QueryTxsRes_Success getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static QueryTxsRes_Success getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static QueryTxsRes_Success? _defaultInstance; @$pb.TagNumber(1) $core.List<$6.Transaction> get transactions => $_getList(0); } -enum QueryTxsRes_Failure_Reason { dataStoreConnectionError, queryTimeout, invalidQuery, notSet } +enum QueryTxsRes_Failure_Reason { + dataStoreConnectionError, + queryTimeout, + invalidQuery, + notSet +} class QueryTxsRes_Failure extends $pb.GeneratedMessage { - static const $core.Map<$core.int, QueryTxsRes_Failure_Reason> _QueryTxsRes_Failure_ReasonByTag = { + static const $core.Map<$core.int, QueryTxsRes_Failure_Reason> + _QueryTxsRes_Failure_ReasonByTag = { 1: QueryTxsRes_Failure_Reason.dataStoreConnectionError, 2: QueryTxsRes_Failure_Reason.queryTimeout, 3: QueryTxsRes_Failure_Reason.invalidQuery, 0: QueryTxsRes_Failure_Reason.notSet }; static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'QueryTxsRes.Failure', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'QueryTxsRes.Failure', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) ..oo(0, [1, 2, 3]) - ..aOS(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'dataStoreConnectionError') - ..aOS(2, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'queryTimeout') - ..aOS(3, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'invalidQuery') + ..aOS( + 1, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'dataStoreConnectionError') + ..aOS( + 2, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'queryTimeout') + ..aOS( + 3, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'invalidQuery') ..hasRequiredFields = false; QueryTxsRes_Failure._() : super(); @@ -579,7 +679,8 @@ class QueryTxsRes_Failure extends $pb.GeneratedMessage { $pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY, ]) => create()..mergeFromBuffer(i, r); - factory QueryTxsRes_Failure.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory QueryTxsRes_Failure.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -599,13 +700,15 @@ class QueryTxsRes_Failure extends $pb.GeneratedMessage { @$core.pragma('dart2js:noInline') static QueryTxsRes_Failure create() => QueryTxsRes_Failure._(); QueryTxsRes_Failure createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static QueryTxsRes_Failure getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static QueryTxsRes_Failure getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static QueryTxsRes_Failure? _defaultInstance; - QueryTxsRes_Failure_Reason whichReason() => _QueryTxsRes_Failure_ReasonByTag[$_whichOneof(0)]!; + QueryTxsRes_Failure_Reason whichReason() => + _QueryTxsRes_Failure_ReasonByTag[$_whichOneof(0)]!; void clearReason() => clearField($_whichOneof(0)); @$pb.TagNumber(1) @@ -648,27 +751,36 @@ class QueryTxsRes_Failure extends $pb.GeneratedMessage { enum QueryTxsRes_Result { success, failure, notSet } class QueryTxsRes extends $pb.GeneratedMessage { - static const $core.Map<$core.int, QueryTxsRes_Result> _QueryTxsRes_ResultByTag = { + static const $core.Map<$core.int, QueryTxsRes_Result> + _QueryTxsRes_ResultByTag = { 1: QueryTxsRes_Result.success, 2: QueryTxsRes_Result.failure, 0: QueryTxsRes_Result.notSet }; static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'QueryTxsRes', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'QueryTxsRes', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) ..oo(0, [1, 2]) ..aOM( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'success', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'success', subBuilder: QueryTxsRes_Success.create, ) ..aOM( 2, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'failure', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'failure', subBuilder: QueryTxsRes_Failure.create, ) ..hasRequiredFields = false; @@ -687,9 +799,11 @@ class QueryTxsRes extends $pb.GeneratedMessage { } return _result; } - factory QueryTxsRes.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory QueryTxsRes.fromBuffer($core.List<$core.int> i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); - factory QueryTxsRes.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory QueryTxsRes.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -703,17 +817,20 @@ class QueryTxsRes extends $pb.GeneratedMessage { 'Will be removed in next major version', ) QueryTxsRes copyWith(void Function(QueryTxsRes) updates) => - super.copyWith((message) => updates(message as QueryTxsRes)) as QueryTxsRes; // ignore: deprecated_member_use + super.copyWith((message) => updates(message as QueryTxsRes)) + as QueryTxsRes; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static QueryTxsRes create() => QueryTxsRes._(); QueryTxsRes createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') - static QueryTxsRes getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static QueryTxsRes getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static QueryTxsRes? _defaultInstance; - QueryTxsRes_Result whichResult() => _QueryTxsRes_ResultByTag[$_whichOneof(0)]!; + QueryTxsRes_Result whichResult() => + _QueryTxsRes_ResultByTag[$_whichOneof(0)]!; void clearResult() => clearField($_whichOneof(0)); @$pb.TagNumber(1) @@ -747,25 +864,35 @@ class QueryTxsRes extends $pb.GeneratedMessage { class TxsQueryStreamReq extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'TxsQueryStreamReq', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'TxsQueryStreamReq', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) ..aOM<$4.TransactionFilter>( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'filter', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'filter', subBuilder: $4.TransactionFilter.create, ) ..a<$core.int>( 2, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'confirmationDepth', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'confirmationDepth', $pb.PbFieldType.OU3, ) ..aOM( 4, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'sorting', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'sorting', subBuilder: TransactionSorting.create, ) ..hasRequiredFields = false; @@ -793,7 +920,8 @@ class TxsQueryStreamReq extends $pb.GeneratedMessage { $pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY, ]) => create()..mergeFromBuffer(i, r); - factory TxsQueryStreamReq.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory TxsQueryStreamReq.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -813,10 +941,11 @@ class TxsQueryStreamReq extends $pb.GeneratedMessage { @$core.pragma('dart2js:noInline') static TxsQueryStreamReq create() => TxsQueryStreamReq._(); TxsQueryStreamReq createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static TxsQueryStreamReq getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static TxsQueryStreamReq getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static TxsQueryStreamReq? _defaultInstance; @$pb.TagNumber(1) @@ -860,24 +989,41 @@ class TxsQueryStreamReq extends $pb.GeneratedMessage { TransactionSorting ensureSorting() => $_ensure(2); } -enum TxsQueryStreamRes_Failure_Reason { dataStoreConnectionError, invalidQuery, notSet } +enum TxsQueryStreamRes_Failure_Reason { + dataStoreConnectionError, + invalidQuery, + notSet +} class TxsQueryStreamRes_Failure extends $pb.GeneratedMessage { - static const $core.Map<$core.int, TxsQueryStreamRes_Failure_Reason> _TxsQueryStreamRes_Failure_ReasonByTag = { + static const $core.Map<$core.int, TxsQueryStreamRes_Failure_Reason> + _TxsQueryStreamRes_Failure_ReasonByTag = { 1: TxsQueryStreamRes_Failure_Reason.dataStoreConnectionError, 2: TxsQueryStreamRes_Failure_Reason.invalidQuery, 0: TxsQueryStreamRes_Failure_Reason.notSet }; static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'TxsQueryStreamRes.Failure', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'TxsQueryStreamRes.Failure', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) ..oo(0, [1, 2]) - ..aOS(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'dataStoreConnectionError') - ..aOS(2, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'invalidQuery') + ..aOS( + 1, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'dataStoreConnectionError') + ..aOS( + 2, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'invalidQuery') ..hasRequiredFields = false; TxsQueryStreamRes_Failure._() : super(); @@ -899,33 +1045,38 @@ class TxsQueryStreamRes_Failure extends $pb.GeneratedMessage { $pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY, ]) => create()..mergeFromBuffer(i, r); - factory TxsQueryStreamRes_Failure.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory TxsQueryStreamRes_Failure.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version', ) - TxsQueryStreamRes_Failure clone() => TxsQueryStreamRes_Failure()..mergeFromMessage(this); + TxsQueryStreamRes_Failure clone() => + TxsQueryStreamRes_Failure()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version', ) - TxsQueryStreamRes_Failure copyWith(void Function(TxsQueryStreamRes_Failure) updates) => + TxsQueryStreamRes_Failure copyWith( + void Function(TxsQueryStreamRes_Failure) updates) => super.copyWith((message) => updates(message as TxsQueryStreamRes_Failure)) as TxsQueryStreamRes_Failure; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static TxsQueryStreamRes_Failure create() => TxsQueryStreamRes_Failure._(); TxsQueryStreamRes_Failure createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static TxsQueryStreamRes_Failure getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static TxsQueryStreamRes_Failure getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static TxsQueryStreamRes_Failure? _defaultInstance; - TxsQueryStreamRes_Failure_Reason whichReason() => _TxsQueryStreamRes_Failure_ReasonByTag[$_whichOneof(0)]!; + TxsQueryStreamRes_Failure_Reason whichReason() => + _TxsQueryStreamRes_Failure_ReasonByTag[$_whichOneof(0)]!; void clearReason() => clearField($_whichOneof(0)); @$pb.TagNumber(1) @@ -956,15 +1107,20 @@ class TxsQueryStreamRes_Failure extends $pb.GeneratedMessage { enum TxsQueryStreamRes_Result { tx, failure, notSet } class TxsQueryStreamRes extends $pb.GeneratedMessage { - static const $core.Map<$core.int, TxsQueryStreamRes_Result> _TxsQueryStreamRes_ResultByTag = { + static const $core.Map<$core.int, TxsQueryStreamRes_Result> + _TxsQueryStreamRes_ResultByTag = { 1: TxsQueryStreamRes_Result.tx, 2: TxsQueryStreamRes_Result.failure, 0: TxsQueryStreamRes_Result.notSet }; static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'TxsQueryStreamRes', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'TxsQueryStreamRes', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) @@ -976,7 +1132,9 @@ class TxsQueryStreamRes extends $pb.GeneratedMessage { ) ..aOM( 2, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'failure', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'failure', subBuilder: TxsQueryStreamRes_Failure.create, ) ..hasRequiredFields = false; @@ -1000,7 +1158,8 @@ class TxsQueryStreamRes extends $pb.GeneratedMessage { $pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY, ]) => create()..mergeFromBuffer(i, r); - factory TxsQueryStreamRes.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory TxsQueryStreamRes.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -1020,13 +1179,15 @@ class TxsQueryStreamRes extends $pb.GeneratedMessage { @$core.pragma('dart2js:noInline') static TxsQueryStreamRes create() => TxsQueryStreamRes._(); TxsQueryStreamRes createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static TxsQueryStreamRes getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static TxsQueryStreamRes getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static TxsQueryStreamRes? _defaultInstance; - TxsQueryStreamRes_Result whichResult() => _TxsQueryStreamRes_ResultByTag[$_whichOneof(0)]!; + TxsQueryStreamRes_Result whichResult() => + _TxsQueryStreamRes_ResultByTag[$_whichOneof(0)]!; void clearResult() => clearField($_whichOneof(0)); @$pb.TagNumber(1) diff --git a/lib/genus/generated/transactions_query.pbenum.dart b/lib/genus/generated/transactions_query.pbenum.dart index 93d1c1e4..e348b39f 100644 --- a/lib/genus/generated/transactions_query.pbenum.dart +++ b/lib/genus/generated/transactions_query.pbenum.dart @@ -4,4 +4,3 @@ // // @dart = 2.12 // ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name - diff --git a/lib/genus/generated/transactions_query.pbgrpc.dart b/lib/genus/generated/transactions_query.pbgrpc.dart index 1955c2d8..681aa6fd 100644 --- a/lib/genus/generated/transactions_query.pbgrpc.dart +++ b/lib/genus/generated/transactions_query.pbgrpc.dart @@ -5,12 +5,16 @@ // @dart = 2.12 // ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name +// Dart imports: import 'dart:async' as $async; - import 'dart:core' as $core; +// Package imports: import 'package:grpc/service_api.dart' as $grpc; + +// Project imports: import 'transactions_query.pb.dart' as $0; + export 'transactions_query.pb.dart'; class TransactionsQueryClient extends $grpc.Client { @@ -19,7 +23,8 @@ class TransactionsQueryClient extends $grpc.Client { ($0.QueryTxsReq value) => value.writeToBuffer(), ($core.List<$core.int> value) => $0.QueryTxsRes.fromBuffer(value), ); - static final _$queryStreamed = $grpc.ClientMethod<$0.TxsQueryStreamReq, $0.TxsQueryStreamRes>( + static final _$queryStreamed = + $grpc.ClientMethod<$0.TxsQueryStreamReq, $0.TxsQueryStreamRes>( '/co.topl.genus.services.TransactionsQuery/QueryStreamed', ($0.TxsQueryStreamReq value) => value.writeToBuffer(), ($core.List<$core.int> value) => $0.TxsQueryStreamRes.fromBuffer(value), diff --git a/lib/genus/generated/transactions_query.pbjson.dart b/lib/genus/generated/transactions_query.pbjson.dart index 82be5b98..e33f1be4 100644 --- a/lib/genus/generated/transactions_query.pbjson.dart +++ b/lib/genus/generated/transactions_query.pbjson.dart @@ -5,18 +5,48 @@ // @dart = 2.12 // ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,deprecated_member_use_from_same_package,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name -import 'dart:core' as $core; +// Dart imports: import 'dart:convert' as $convert; +import 'dart:core' as $core; import 'dart:typed_data' as $typed_data; + @$core.Deprecated('Use transactionSortingDescriptor instead') const TransactionSorting$json = const { '1': 'TransactionSorting', '2': const [ - const {'1': 'height', '3': 1, '4': 1, '5': 11, '6': '.co.topl.genus.services.TransactionSorting.Height', '9': 0, '10': 'height'}, - const {'1': 'fee', '3': 2, '4': 1, '5': 11, '6': '.co.topl.genus.services.TransactionSorting.Fee', '9': 0, '10': 'fee'}, - const {'1': 'timestamp', '3': 3, '4': 1, '5': 11, '6': '.co.topl.genus.services.TransactionSorting.Timestamp', '9': 0, '10': 'timestamp'}, + const { + '1': 'height', + '3': 1, + '4': 1, + '5': 11, + '6': '.co.topl.genus.services.TransactionSorting.Height', + '9': 0, + '10': 'height' + }, + const { + '1': 'fee', + '3': 2, + '4': 1, + '5': 11, + '6': '.co.topl.genus.services.TransactionSorting.Fee', + '9': 0, + '10': 'fee' + }, + const { + '1': 'timestamp', + '3': 3, + '4': 1, + '5': 11, + '6': '.co.topl.genus.services.TransactionSorting.Timestamp', + '9': 0, + '10': 'timestamp' + }, + ], + '3': const [ + TransactionSorting_Height$json, + TransactionSorting_Fee$json, + TransactionSorting_Timestamp$json ], - '3': const [TransactionSorting_Height$json, TransactionSorting_Fee$json, TransactionSorting_Timestamp$json], '8': const [ const {'1': 'sort_by'}, ], @@ -47,26 +77,71 @@ const TransactionSorting_Timestamp$json = const { }; /// Descriptor for `TransactionSorting`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List transactionSortingDescriptor = $convert.base64Decode('ChJUcmFuc2FjdGlvblNvcnRpbmcSSwoGaGVpZ2h0GAEgASgLMjEuY28udG9wbC5nZW51cy5zZXJ2aWNlcy5UcmFuc2FjdGlvblNvcnRpbmcuSGVpZ2h0SABSBmhlaWdodBJCCgNmZWUYAiABKAsyLi5jby50b3BsLmdlbnVzLnNlcnZpY2VzLlRyYW5zYWN0aW9uU29ydGluZy5GZWVIAFIDZmVlElQKCXRpbWVzdGFtcBgDIAEoCzI0LmNvLnRvcGwuZ2VudXMuc2VydmljZXMuVHJhbnNhY3Rpb25Tb3J0aW5nLlRpbWVzdGFtcEgAUgl0aW1lc3RhbXAaKAoGSGVpZ2h0Eh4KCmRlc2NlbmRpbmcYASABKAhSCmRlc2NlbmRpbmcaJQoDRmVlEh4KCmRlc2NlbmRpbmcYASABKAhSCmRlc2NlbmRpbmcaKwoJVGltZXN0YW1wEh4KCmRlc2NlbmRpbmcYASABKAhSCmRlc2NlbmRpbmdCCQoHc29ydF9ieQ=='); +final $typed_data.Uint8List transactionSortingDescriptor = $convert.base64Decode( + 'ChJUcmFuc2FjdGlvblNvcnRpbmcSSwoGaGVpZ2h0GAEgASgLMjEuY28udG9wbC5nZW51cy5zZXJ2aWNlcy5UcmFuc2FjdGlvblNvcnRpbmcuSGVpZ2h0SABSBmhlaWdodBJCCgNmZWUYAiABKAsyLi5jby50b3BsLmdlbnVzLnNlcnZpY2VzLlRyYW5zYWN0aW9uU29ydGluZy5GZWVIAFIDZmVlElQKCXRpbWVzdGFtcBgDIAEoCzI0LmNvLnRvcGwuZ2VudXMuc2VydmljZXMuVHJhbnNhY3Rpb25Tb3J0aW5nLlRpbWVzdGFtcEgAUgl0aW1lc3RhbXAaKAoGSGVpZ2h0Eh4KCmRlc2NlbmRpbmcYASABKAhSCmRlc2NlbmRpbmcaJQoDRmVlEh4KCmRlc2NlbmRpbmcYASABKAhSCmRlc2NlbmRpbmcaKwoJVGltZXN0YW1wEh4KCmRlc2NlbmRpbmcYASABKAhSCmRlc2NlbmRpbmdCCQoHc29ydF9ieQ=='); @$core.Deprecated('Use queryTxsReqDescriptor instead') const QueryTxsReq$json = const { '1': 'QueryTxsReq', '2': const [ - const {'1': 'filter', '3': 1, '4': 1, '5': 11, '6': '.co.topl.genus.TransactionFilter', '10': 'filter'}, - const {'1': 'sorting', '3': 2, '4': 1, '5': 11, '6': '.co.topl.genus.services.TransactionSorting', '10': 'sorting'}, - const {'1': 'confirmation_depth', '3': 3, '4': 1, '5': 13, '10': 'confirmationDepth'}, - const {'1': 'paging_options', '3': 4, '4': 1, '5': 11, '6': '.co.topl.genus.services.Paging', '10': 'pagingOptions'}, + const { + '1': 'filter', + '3': 1, + '4': 1, + '5': 11, + '6': '.co.topl.genus.TransactionFilter', + '10': 'filter' + }, + const { + '1': 'sorting', + '3': 2, + '4': 1, + '5': 11, + '6': '.co.topl.genus.services.TransactionSorting', + '10': 'sorting' + }, + const { + '1': 'confirmation_depth', + '3': 3, + '4': 1, + '5': 13, + '10': 'confirmationDepth' + }, + const { + '1': 'paging_options', + '3': 4, + '4': 1, + '5': 11, + '6': '.co.topl.genus.services.Paging', + '10': 'pagingOptions' + }, ], }; /// Descriptor for `QueryTxsReq`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List queryTxsReqDescriptor = $convert.base64Decode('CgtRdWVyeVR4c1JlcRI4CgZmaWx0ZXIYASABKAsyIC5jby50b3BsLmdlbnVzLlRyYW5zYWN0aW9uRmlsdGVyUgZmaWx0ZXISRAoHc29ydGluZxgCIAEoCzIqLmNvLnRvcGwuZ2VudXMuc2VydmljZXMuVHJhbnNhY3Rpb25Tb3J0aW5nUgdzb3J0aW5nEi0KEmNvbmZpcm1hdGlvbl9kZXB0aBgDIAEoDVIRY29uZmlybWF0aW9uRGVwdGgSRQoOcGFnaW5nX29wdGlvbnMYBCABKAsyHi5jby50b3BsLmdlbnVzLnNlcnZpY2VzLlBhZ2luZ1INcGFnaW5nT3B0aW9ucw=='); +final $typed_data.Uint8List queryTxsReqDescriptor = $convert.base64Decode( + 'CgtRdWVyeVR4c1JlcRI4CgZmaWx0ZXIYASABKAsyIC5jby50b3BsLmdlbnVzLlRyYW5zYWN0aW9uRmlsdGVyUgZmaWx0ZXISRAoHc29ydGluZxgCIAEoCzIqLmNvLnRvcGwuZ2VudXMuc2VydmljZXMuVHJhbnNhY3Rpb25Tb3J0aW5nUgdzb3J0aW5nEi0KEmNvbmZpcm1hdGlvbl9kZXB0aBgDIAEoDVIRY29uZmlybWF0aW9uRGVwdGgSRQoOcGFnaW5nX29wdGlvbnMYBCABKAsyHi5jby50b3BsLmdlbnVzLnNlcnZpY2VzLlBhZ2luZ1INcGFnaW5nT3B0aW9ucw=='); @$core.Deprecated('Use queryTxsResDescriptor instead') const QueryTxsRes$json = const { '1': 'QueryTxsRes', '2': const [ - const {'1': 'success', '3': 1, '4': 1, '5': 11, '6': '.co.topl.genus.services.QueryTxsRes.Success', '9': 0, '10': 'success'}, - const {'1': 'failure', '3': 2, '4': 1, '5': 11, '6': '.co.topl.genus.services.QueryTxsRes.Failure', '9': 0, '10': 'failure'}, + const { + '1': 'success', + '3': 1, + '4': 1, + '5': 11, + '6': '.co.topl.genus.services.QueryTxsRes.Success', + '9': 0, + '10': 'success' + }, + const { + '1': 'failure', + '3': 2, + '4': 1, + '5': 11, + '6': '.co.topl.genus.services.QueryTxsRes.Failure', + '9': 0, + '10': 'failure' + }, ], '3': const [QueryTxsRes_Success$json, QueryTxsRes_Failure$json], '8': const [ @@ -78,7 +153,14 @@ const QueryTxsRes$json = const { const QueryTxsRes_Success$json = const { '1': 'Success', '2': const [ - const {'1': 'transactions', '3': 1, '4': 3, '5': 11, '6': '.co.topl.genus.Transaction', '10': 'transactions'}, + const { + '1': 'transactions', + '3': 1, + '4': 3, + '5': 11, + '6': '.co.topl.genus.Transaction', + '10': 'transactions' + }, ], }; @@ -86,9 +168,30 @@ const QueryTxsRes_Success$json = const { const QueryTxsRes_Failure$json = const { '1': 'Failure', '2': const [ - const {'1': 'data_store_connection_error', '3': 1, '4': 1, '5': 9, '9': 0, '10': 'dataStoreConnectionError'}, - const {'1': 'query_timeout', '3': 2, '4': 1, '5': 9, '9': 0, '10': 'queryTimeout'}, - const {'1': 'invalid_query', '3': 3, '4': 1, '5': 9, '9': 0, '10': 'invalidQuery'}, + const { + '1': 'data_store_connection_error', + '3': 1, + '4': 1, + '5': 9, + '9': 0, + '10': 'dataStoreConnectionError' + }, + const { + '1': 'query_timeout', + '3': 2, + '4': 1, + '5': 9, + '9': 0, + '10': 'queryTimeout' + }, + const { + '1': 'invalid_query', + '3': 3, + '4': 1, + '5': 9, + '9': 0, + '10': 'invalidQuery' + }, ], '8': const [ const {'1': 'reason'}, @@ -96,25 +199,63 @@ const QueryTxsRes_Failure$json = const { }; /// Descriptor for `QueryTxsRes`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List queryTxsResDescriptor = $convert.base64Decode('CgtRdWVyeVR4c1JlcxJHCgdzdWNjZXNzGAEgASgLMisuY28udG9wbC5nZW51cy5zZXJ2aWNlcy5RdWVyeVR4c1Jlcy5TdWNjZXNzSABSB3N1Y2Nlc3MSRwoHZmFpbHVyZRgCIAEoCzIrLmNvLnRvcGwuZ2VudXMuc2VydmljZXMuUXVlcnlUeHNSZXMuRmFpbHVyZUgAUgdmYWlsdXJlGkkKB1N1Y2Nlc3MSPgoMdHJhbnNhY3Rpb25zGAEgAygLMhouY28udG9wbC5nZW51cy5UcmFuc2FjdGlvblIMdHJhbnNhY3Rpb25zGqIBCgdGYWlsdXJlEj8KG2RhdGFfc3RvcmVfY29ubmVjdGlvbl9lcnJvchgBIAEoCUgAUhhkYXRhU3RvcmVDb25uZWN0aW9uRXJyb3ISJQoNcXVlcnlfdGltZW91dBgCIAEoCUgAUgxxdWVyeVRpbWVvdXQSJQoNaW52YWxpZF9xdWVyeRgDIAEoCUgAUgxpbnZhbGlkUXVlcnlCCAoGcmVhc29uQggKBnJlc3VsdA=='); +final $typed_data.Uint8List queryTxsResDescriptor = $convert.base64Decode( + 'CgtRdWVyeVR4c1JlcxJHCgdzdWNjZXNzGAEgASgLMisuY28udG9wbC5nZW51cy5zZXJ2aWNlcy5RdWVyeVR4c1Jlcy5TdWNjZXNzSABSB3N1Y2Nlc3MSRwoHZmFpbHVyZRgCIAEoCzIrLmNvLnRvcGwuZ2VudXMuc2VydmljZXMuUXVlcnlUeHNSZXMuRmFpbHVyZUgAUgdmYWlsdXJlGkkKB1N1Y2Nlc3MSPgoMdHJhbnNhY3Rpb25zGAEgAygLMhouY28udG9wbC5nZW51cy5UcmFuc2FjdGlvblIMdHJhbnNhY3Rpb25zGqIBCgdGYWlsdXJlEj8KG2RhdGFfc3RvcmVfY29ubmVjdGlvbl9lcnJvchgBIAEoCUgAUhhkYXRhU3RvcmVDb25uZWN0aW9uRXJyb3ISJQoNcXVlcnlfdGltZW91dBgCIAEoCUgAUgxxdWVyeVRpbWVvdXQSJQoNaW52YWxpZF9xdWVyeRgDIAEoCUgAUgxpbnZhbGlkUXVlcnlCCAoGcmVhc29uQggKBnJlc3VsdA=='); @$core.Deprecated('Use txsQueryStreamReqDescriptor instead') const TxsQueryStreamReq$json = const { '1': 'TxsQueryStreamReq', '2': const [ - const {'1': 'filter', '3': 1, '4': 1, '5': 11, '6': '.co.topl.genus.TransactionFilter', '10': 'filter'}, - const {'1': 'sorting', '3': 4, '4': 1, '5': 11, '6': '.co.topl.genus.services.TransactionSorting', '10': 'sorting'}, - const {'1': 'confirmation_depth', '3': 2, '4': 1, '5': 13, '10': 'confirmationDepth'}, + const { + '1': 'filter', + '3': 1, + '4': 1, + '5': 11, + '6': '.co.topl.genus.TransactionFilter', + '10': 'filter' + }, + const { + '1': 'sorting', + '3': 4, + '4': 1, + '5': 11, + '6': '.co.topl.genus.services.TransactionSorting', + '10': 'sorting' + }, + const { + '1': 'confirmation_depth', + '3': 2, + '4': 1, + '5': 13, + '10': 'confirmationDepth' + }, ], }; /// Descriptor for `TxsQueryStreamReq`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List txsQueryStreamReqDescriptor = $convert.base64Decode('ChFUeHNRdWVyeVN0cmVhbVJlcRI4CgZmaWx0ZXIYASABKAsyIC5jby50b3BsLmdlbnVzLlRyYW5zYWN0aW9uRmlsdGVyUgZmaWx0ZXISRAoHc29ydGluZxgEIAEoCzIqLmNvLnRvcGwuZ2VudXMuc2VydmljZXMuVHJhbnNhY3Rpb25Tb3J0aW5nUgdzb3J0aW5nEi0KEmNvbmZpcm1hdGlvbl9kZXB0aBgCIAEoDVIRY29uZmlybWF0aW9uRGVwdGg='); +final $typed_data.Uint8List txsQueryStreamReqDescriptor = $convert.base64Decode( + 'ChFUeHNRdWVyeVN0cmVhbVJlcRI4CgZmaWx0ZXIYASABKAsyIC5jby50b3BsLmdlbnVzLlRyYW5zYWN0aW9uRmlsdGVyUgZmaWx0ZXISRAoHc29ydGluZxgEIAEoCzIqLmNvLnRvcGwuZ2VudXMuc2VydmljZXMuVHJhbnNhY3Rpb25Tb3J0aW5nUgdzb3J0aW5nEi0KEmNvbmZpcm1hdGlvbl9kZXB0aBgCIAEoDVIRY29uZmlybWF0aW9uRGVwdGg='); @$core.Deprecated('Use txsQueryStreamResDescriptor instead') const TxsQueryStreamRes$json = const { '1': 'TxsQueryStreamRes', '2': const [ - const {'1': 'tx', '3': 1, '4': 1, '5': 11, '6': '.co.topl.genus.Transaction', '9': 0, '10': 'tx'}, - const {'1': 'failure', '3': 2, '4': 1, '5': 11, '6': '.co.topl.genus.services.TxsQueryStreamRes.Failure', '9': 0, '10': 'failure'}, + const { + '1': 'tx', + '3': 1, + '4': 1, + '5': 11, + '6': '.co.topl.genus.Transaction', + '9': 0, + '10': 'tx' + }, + const { + '1': 'failure', + '3': 2, + '4': 1, + '5': 11, + '6': '.co.topl.genus.services.TxsQueryStreamRes.Failure', + '9': 0, + '10': 'failure' + }, ], '3': const [TxsQueryStreamRes_Failure$json], '8': const [ @@ -126,8 +267,22 @@ const TxsQueryStreamRes$json = const { const TxsQueryStreamRes_Failure$json = const { '1': 'Failure', '2': const [ - const {'1': 'data_store_connection_error', '3': 1, '4': 1, '5': 9, '9': 0, '10': 'dataStoreConnectionError'}, - const {'1': 'invalid_query', '3': 2, '4': 1, '5': 9, '9': 0, '10': 'invalidQuery'}, + const { + '1': 'data_store_connection_error', + '3': 1, + '4': 1, + '5': 9, + '9': 0, + '10': 'dataStoreConnectionError' + }, + const { + '1': 'invalid_query', + '3': 2, + '4': 1, + '5': 9, + '9': 0, + '10': 'invalidQuery' + }, ], '8': const [ const {'1': 'reason'}, @@ -135,4 +290,5 @@ const TxsQueryStreamRes_Failure$json = const { }; /// Descriptor for `TxsQueryStreamRes`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List txsQueryStreamResDescriptor = $convert.base64Decode('ChFUeHNRdWVyeVN0cmVhbVJlcxIsCgJ0eBgBIAEoCzIaLmNvLnRvcGwuZ2VudXMuVHJhbnNhY3Rpb25IAFICdHgSTQoHZmFpbHVyZRgCIAEoCzIxLmNvLnRvcGwuZ2VudXMuc2VydmljZXMuVHhzUXVlcnlTdHJlYW1SZXMuRmFpbHVyZUgAUgdmYWlsdXJlGnsKB0ZhaWx1cmUSPwobZGF0YV9zdG9yZV9jb25uZWN0aW9uX2Vycm9yGAEgASgJSABSGGRhdGFTdG9yZUNvbm5lY3Rpb25FcnJvchIlCg1pbnZhbGlkX3F1ZXJ5GAIgASgJSABSDGludmFsaWRRdWVyeUIICgZyZWFzb25CCAoGcmVzdWx0'); +final $typed_data.Uint8List txsQueryStreamResDescriptor = $convert.base64Decode( + 'ChFUeHNRdWVyeVN0cmVhbVJlcxIsCgJ0eBgBIAEoCzIaLmNvLnRvcGwuZ2VudXMuVHJhbnNhY3Rpb25IAFICdHgSTQoHZmFpbHVyZRgCIAEoCzIxLmNvLnRvcGwuZ2VudXMuc2VydmljZXMuVHhzUXVlcnlTdHJlYW1SZXMuRmFpbHVyZUgAUgdmYWlsdXJlGnsKB0ZhaWx1cmUSPwobZGF0YV9zdG9yZV9jb25uZWN0aW9uX2Vycm9yGAEgASgJSABSGGRhdGFTdG9yZUNvbm5lY3Rpb25FcnJvchIlCg1pbnZhbGlkX3F1ZXJ5GAIgASgJSABSDGludmFsaWRRdWVyeUIICgZyZWFzb25CCAoGcmVzdWx0'); diff --git a/lib/genus/generated/transactions_subscription.pb.dart b/lib/genus/generated/transactions_subscription.pb.dart index b377aeb2..aa0117f0 100644 --- a/lib/genus/generated/transactions_subscription.pb.dart +++ b/lib/genus/generated/transactions_subscription.pb.dart @@ -5,36 +5,49 @@ // @dart = 2.12 // ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name +// Dart imports: import 'dart:core' as $core; +// Package imports: import 'package:fixnum/fixnum.dart' as $fixnum; import 'package:protobuf/protobuf.dart' as $pb; +// Project imports: import 'filters.pb.dart' as $4; import 'types.pb.dart' as $6; class CreateTxsSubscriptionReq extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'CreateTxsSubscriptionReq', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'CreateTxsSubscriptionReq', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) ..aOM<$4.TransactionFilter>( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'filter', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'filter', subBuilder: $4.TransactionFilter.create, ) ..a<$fixnum.Int64>( 2, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'startHeight', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'startHeight', $pb.PbFieldType.OU6, defaultOrMaker: $fixnum.Int64.ZERO, ) ..a<$core.int>( 3, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'confirmationDepth', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'confirmationDepth', $pb.PbFieldType.OU3, ) ..hasRequiredFields = false; @@ -62,30 +75,34 @@ class CreateTxsSubscriptionReq extends $pb.GeneratedMessage { $pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY, ]) => create()..mergeFromBuffer(i, r); - factory CreateTxsSubscriptionReq.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory CreateTxsSubscriptionReq.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version', ) - CreateTxsSubscriptionReq clone() => CreateTxsSubscriptionReq()..mergeFromMessage(this); + CreateTxsSubscriptionReq clone() => + CreateTxsSubscriptionReq()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version', ) - CreateTxsSubscriptionReq copyWith(void Function(CreateTxsSubscriptionReq) updates) => + CreateTxsSubscriptionReq copyWith( + void Function(CreateTxsSubscriptionReq) updates) => super.copyWith((message) => updates(message as CreateTxsSubscriptionReq)) as CreateTxsSubscriptionReq; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static CreateTxsSubscriptionReq create() => CreateTxsSubscriptionReq._(); CreateTxsSubscriptionReq createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static CreateTxsSubscriptionReq getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static CreateTxsSubscriptionReq getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static CreateTxsSubscriptionReq? _defaultInstance; @$pb.TagNumber(1) @@ -127,24 +144,41 @@ class CreateTxsSubscriptionReq extends $pb.GeneratedMessage { void clearConfirmationDepth() => clearField(3); } -enum TxsSubscriptionRes_Failure_Reason { invalidRequest, dataConnectionError, notSet } +enum TxsSubscriptionRes_Failure_Reason { + invalidRequest, + dataConnectionError, + notSet +} class TxsSubscriptionRes_Failure extends $pb.GeneratedMessage { - static const $core.Map<$core.int, TxsSubscriptionRes_Failure_Reason> _TxsSubscriptionRes_Failure_ReasonByTag = { + static const $core.Map<$core.int, TxsSubscriptionRes_Failure_Reason> + _TxsSubscriptionRes_Failure_ReasonByTag = { 1: TxsSubscriptionRes_Failure_Reason.invalidRequest, 2: TxsSubscriptionRes_Failure_Reason.dataConnectionError, 0: TxsSubscriptionRes_Failure_Reason.notSet }; static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'TxsSubscriptionRes.Failure', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'TxsSubscriptionRes.Failure', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) ..oo(0, [1, 2]) - ..aOS(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'invalidRequest') - ..aOS(2, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'dataConnectionError') + ..aOS( + 1, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'invalidRequest') + ..aOS( + 2, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'dataConnectionError') ..hasRequiredFields = false; TxsSubscriptionRes_Failure._() : super(); @@ -176,26 +210,31 @@ class TxsSubscriptionRes_Failure extends $pb.GeneratedMessage { 'Use [GeneratedMessageGenericExtensions.deepCopy] instead. ' 'Will be removed in next major version', ) - TxsSubscriptionRes_Failure clone() => TxsSubscriptionRes_Failure()..mergeFromMessage(this); + TxsSubscriptionRes_Failure clone() => + TxsSubscriptionRes_Failure()..mergeFromMessage(this); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' 'Use [GeneratedMessageGenericExtensions.rebuild] instead. ' 'Will be removed in next major version', ) - TxsSubscriptionRes_Failure copyWith(void Function(TxsSubscriptionRes_Failure) updates) => - super.copyWith((message) => updates(message as TxsSubscriptionRes_Failure)) + TxsSubscriptionRes_Failure copyWith( + void Function(TxsSubscriptionRes_Failure) updates) => + super.copyWith( + (message) => updates(message as TxsSubscriptionRes_Failure)) as TxsSubscriptionRes_Failure; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static TxsSubscriptionRes_Failure create() => TxsSubscriptionRes_Failure._(); TxsSubscriptionRes_Failure createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static TxsSubscriptionRes_Failure getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static TxsSubscriptionRes_Failure getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static TxsSubscriptionRes_Failure? _defaultInstance; - TxsSubscriptionRes_Failure_Reason whichReason() => _TxsSubscriptionRes_Failure_ReasonByTag[$_whichOneof(0)]!; + TxsSubscriptionRes_Failure_Reason whichReason() => + _TxsSubscriptionRes_Failure_ReasonByTag[$_whichOneof(0)]!; void clearReason() => clearField($_whichOneof(0)); @$pb.TagNumber(1) @@ -226,27 +265,36 @@ class TxsSubscriptionRes_Failure extends $pb.GeneratedMessage { enum TxsSubscriptionRes_Result { success, failure, notSet } class TxsSubscriptionRes extends $pb.GeneratedMessage { - static const $core.Map<$core.int, TxsSubscriptionRes_Result> _TxsSubscriptionRes_ResultByTag = { + static const $core.Map<$core.int, TxsSubscriptionRes_Result> + _TxsSubscriptionRes_ResultByTag = { 1: TxsSubscriptionRes_Result.success, 2: TxsSubscriptionRes_Result.failure, 0: TxsSubscriptionRes_Result.notSet }; static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'TxsSubscriptionRes', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'TxsSubscriptionRes', package: const $pb.PackageName( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus.services', + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus.services', ), createEmptyInstance: create, ) ..oo(0, [1, 2]) ..aOM<$6.Transaction>( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'success', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'success', subBuilder: $6.Transaction.create, ) ..aOM( 2, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'failure', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'failure', subBuilder: TxsSubscriptionRes_Failure.create, ) ..hasRequiredFields = false; @@ -270,7 +318,8 @@ class TxsSubscriptionRes extends $pb.GeneratedMessage { $pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY, ]) => create()..mergeFromBuffer(i, r); - factory TxsSubscriptionRes.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory TxsSubscriptionRes.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -290,13 +339,15 @@ class TxsSubscriptionRes extends $pb.GeneratedMessage { @$core.pragma('dart2js:noInline') static TxsSubscriptionRes create() => TxsSubscriptionRes._(); TxsSubscriptionRes createEmptyInstance() => create(); - static $pb.PbList createRepeated() => $pb.PbList(); + static $pb.PbList createRepeated() => + $pb.PbList(); @$core.pragma('dart2js:noInline') - static TxsSubscriptionRes getDefault() => - _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static TxsSubscriptionRes getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static TxsSubscriptionRes? _defaultInstance; - TxsSubscriptionRes_Result whichResult() => _TxsSubscriptionRes_ResultByTag[$_whichOneof(0)]!; + TxsSubscriptionRes_Result whichResult() => + _TxsSubscriptionRes_ResultByTag[$_whichOneof(0)]!; void clearResult() => clearField($_whichOneof(0)); @$pb.TagNumber(1) diff --git a/lib/genus/generated/transactions_subscription.pbenum.dart b/lib/genus/generated/transactions_subscription.pbenum.dart index 1805fd92..27d5b188 100644 --- a/lib/genus/generated/transactions_subscription.pbenum.dart +++ b/lib/genus/generated/transactions_subscription.pbenum.dart @@ -4,4 +4,3 @@ // // @dart = 2.12 // ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name - diff --git a/lib/genus/generated/transactions_subscription.pbgrpc.dart b/lib/genus/generated/transactions_subscription.pbgrpc.dart index bef8b66e..2fab154c 100644 --- a/lib/genus/generated/transactions_subscription.pbgrpc.dart +++ b/lib/genus/generated/transactions_subscription.pbgrpc.dart @@ -5,16 +5,21 @@ // @dart = 2.12 // ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name +// Dart imports: import 'dart:async' as $async; - import 'dart:core' as $core; +// Package imports: import 'package:grpc/service_api.dart' as $grpc; + +// Project imports: import 'transactions_subscription.pb.dart' as $2; + export 'transactions_subscription.pb.dart'; class TransactionsSubscriptionClient extends $grpc.Client { - static final _$create = $grpc.ClientMethod<$2.CreateTxsSubscriptionReq, $2.TxsSubscriptionRes>( + static final _$create = + $grpc.ClientMethod<$2.CreateTxsSubscriptionReq, $2.TxsSubscriptionRes>( '/co.topl.genus.services.TransactionsSubscription/Create', ($2.CreateTxsSubscriptionReq value) => value.writeToBuffer(), ($core.List<$core.int> value) => $2.TxsSubscriptionRes.fromBuffer(value), @@ -48,7 +53,8 @@ abstract class TransactionsSubscriptionServiceBase extends $grpc.Service { create_Pre, false, true, - ($core.List<$core.int> value) => $2.CreateTxsSubscriptionReq.fromBuffer(value), + ($core.List<$core.int> value) => + $2.CreateTxsSubscriptionReq.fromBuffer(value), ($2.TxsSubscriptionRes value) => value.writeToBuffer(), ), ); diff --git a/lib/genus/generated/transactions_subscription.pbjson.dart b/lib/genus/generated/transactions_subscription.pbjson.dart index f1e1afcb..69ae8e26 100644 --- a/lib/genus/generated/transactions_subscription.pbjson.dart +++ b/lib/genus/generated/transactions_subscription.pbjson.dart @@ -5,27 +5,60 @@ // @dart = 2.12 // ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,deprecated_member_use_from_same_package,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name -import 'dart:core' as $core; +// Dart imports: import 'dart:convert' as $convert; +import 'dart:core' as $core; import 'dart:typed_data' as $typed_data; + @$core.Deprecated('Use createTxsSubscriptionReqDescriptor instead') const CreateTxsSubscriptionReq$json = const { '1': 'CreateTxsSubscriptionReq', '2': const [ - const {'1': 'filter', '3': 1, '4': 1, '5': 11, '6': '.co.topl.genus.TransactionFilter', '10': 'filter'}, + const { + '1': 'filter', + '3': 1, + '4': 1, + '5': 11, + '6': '.co.topl.genus.TransactionFilter', + '10': 'filter' + }, const {'1': 'start_height', '3': 2, '4': 1, '5': 4, '10': 'startHeight'}, - const {'1': 'confirmation_depth', '3': 3, '4': 1, '5': 13, '10': 'confirmationDepth'}, + const { + '1': 'confirmation_depth', + '3': 3, + '4': 1, + '5': 13, + '10': 'confirmationDepth' + }, ], }; /// Descriptor for `CreateTxsSubscriptionReq`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List createTxsSubscriptionReqDescriptor = $convert.base64Decode('ChhDcmVhdGVUeHNTdWJzY3JpcHRpb25SZXESOAoGZmlsdGVyGAEgASgLMiAuY28udG9wbC5nZW51cy5UcmFuc2FjdGlvbkZpbHRlclIGZmlsdGVyEiEKDHN0YXJ0X2hlaWdodBgCIAEoBFILc3RhcnRIZWlnaHQSLQoSY29uZmlybWF0aW9uX2RlcHRoGAMgASgNUhFjb25maXJtYXRpb25EZXB0aA=='); +final $typed_data.Uint8List createTxsSubscriptionReqDescriptor = + $convert.base64Decode( + 'ChhDcmVhdGVUeHNTdWJzY3JpcHRpb25SZXESOAoGZmlsdGVyGAEgASgLMiAuY28udG9wbC5nZW51cy5UcmFuc2FjdGlvbkZpbHRlclIGZmlsdGVyEiEKDHN0YXJ0X2hlaWdodBgCIAEoBFILc3RhcnRIZWlnaHQSLQoSY29uZmlybWF0aW9uX2RlcHRoGAMgASgNUhFjb25maXJtYXRpb25EZXB0aA=='); @$core.Deprecated('Use txsSubscriptionResDescriptor instead') const TxsSubscriptionRes$json = const { '1': 'TxsSubscriptionRes', '2': const [ - const {'1': 'success', '3': 1, '4': 1, '5': 11, '6': '.co.topl.genus.Transaction', '9': 0, '10': 'success'}, - const {'1': 'failure', '3': 2, '4': 1, '5': 11, '6': '.co.topl.genus.services.TxsSubscriptionRes.Failure', '9': 0, '10': 'failure'}, + const { + '1': 'success', + '3': 1, + '4': 1, + '5': 11, + '6': '.co.topl.genus.Transaction', + '9': 0, + '10': 'success' + }, + const { + '1': 'failure', + '3': 2, + '4': 1, + '5': 11, + '6': '.co.topl.genus.services.TxsSubscriptionRes.Failure', + '9': 0, + '10': 'failure' + }, ], '3': const [TxsSubscriptionRes_Failure$json], '8': const [ @@ -37,8 +70,22 @@ const TxsSubscriptionRes$json = const { const TxsSubscriptionRes_Failure$json = const { '1': 'Failure', '2': const [ - const {'1': 'invalid_request', '3': 1, '4': 1, '5': 9, '9': 0, '10': 'invalidRequest'}, - const {'1': 'data_connection_error', '3': 2, '4': 1, '5': 9, '9': 0, '10': 'dataConnectionError'}, + const { + '1': 'invalid_request', + '3': 1, + '4': 1, + '5': 9, + '9': 0, + '10': 'invalidRequest' + }, + const { + '1': 'data_connection_error', + '3': 2, + '4': 1, + '5': 9, + '9': 0, + '10': 'dataConnectionError' + }, ], '8': const [ const {'1': 'reason'}, @@ -46,4 +93,5 @@ const TxsSubscriptionRes_Failure$json = const { }; /// Descriptor for `TxsSubscriptionRes`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List txsSubscriptionResDescriptor = $convert.base64Decode('ChJUeHNTdWJzY3JpcHRpb25SZXMSNgoHc3VjY2VzcxgBIAEoCzIaLmNvLnRvcGwuZ2VudXMuVHJhbnNhY3Rpb25IAFIHc3VjY2VzcxJOCgdmYWlsdXJlGAIgASgLMjIuY28udG9wbC5nZW51cy5zZXJ2aWNlcy5UeHNTdWJzY3JpcHRpb25SZXMuRmFpbHVyZUgAUgdmYWlsdXJlGnQKB0ZhaWx1cmUSKQoPaW52YWxpZF9yZXF1ZXN0GAEgASgJSABSDmludmFsaWRSZXF1ZXN0EjQKFWRhdGFfY29ubmVjdGlvbl9lcnJvchgCIAEoCUgAUhNkYXRhQ29ubmVjdGlvbkVycm9yQggKBnJlYXNvbkIICgZyZXN1bHQ='); +final $typed_data.Uint8List txsSubscriptionResDescriptor = $convert.base64Decode( + 'ChJUeHNTdWJzY3JpcHRpb25SZXMSNgoHc3VjY2VzcxgBIAEoCzIaLmNvLnRvcGwuZ2VudXMuVHJhbnNhY3Rpb25IAFIHc3VjY2VzcxJOCgdmYWlsdXJlGAIgASgLMjIuY28udG9wbC5nZW51cy5zZXJ2aWNlcy5UeHNTdWJzY3JpcHRpb25SZXMuRmFpbHVyZUgAUgdmYWlsdXJlGnQKB0ZhaWx1cmUSKQoPaW52YWxpZF9yZXF1ZXN0GAEgASgJSABSDmludmFsaWRSZXF1ZXN0EjQKFWRhdGFfY29ubmVjdGlvbl9lcnJvchgCIAEoCUgAUhNkYXRhQ29ubmVjdGlvbkVycm9yQggKBnJlYXNvbkIICgZyZXN1bHQ='); diff --git a/lib/genus/generated/types.pb.dart b/lib/genus/generated/types.pb.dart index f0d2fb10..2e350a1f 100644 --- a/lib/genus/generated/types.pb.dart +++ b/lib/genus/generated/types.pb.dart @@ -5,20 +5,34 @@ // @dart = 2.12 // ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name +// Dart imports: import 'dart:core' as $core; +// Package imports: import 'package:fixnum/fixnum.dart' as $fixnum; import 'package:protobuf/protobuf.dart' as $pb; class Attestation extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'Attestation', - package: - const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus'), + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'Attestation', + package: const $pb.PackageName( + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus'), createEmptyInstance: create, ) - ..aOS(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'publicKey') - ..aOS(2, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'signature') + ..aOS( + 1, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'publicKey') + ..aOS( + 2, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'signature') ..hasRequiredFields = false; Attestation._() : super(); @@ -35,9 +49,11 @@ class Attestation extends $pb.GeneratedMessage { } return _result; } - factory Attestation.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory Attestation.fromBuffer($core.List<$core.int> i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); - factory Attestation.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory Attestation.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -51,14 +67,16 @@ class Attestation extends $pb.GeneratedMessage { 'Will be removed in next major version', ) Attestation copyWith(void Function(Attestation) updates) => - super.copyWith((message) => updates(message as Attestation)) as Attestation; // ignore: deprecated_member_use + super.copyWith((message) => updates(message as Attestation)) + as Attestation; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static Attestation create() => Attestation._(); Attestation createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') - static Attestation getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static Attestation getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static Attestation? _defaultInstance; @$pb.TagNumber(1) @@ -88,12 +106,20 @@ class Attestation extends $pb.GeneratedMessage { class SimpleValue extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'SimpleValue', - package: - const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus'), + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'SimpleValue', + package: const $pb.PackageName( + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus'), createEmptyInstance: create, ) - ..aOS(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'quantity') + ..aOS( + 1, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'quantity') ..hasRequiredFields = false; SimpleValue._() : super(); @@ -106,9 +132,11 @@ class SimpleValue extends $pb.GeneratedMessage { } return _result; } - factory SimpleValue.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory SimpleValue.fromBuffer($core.List<$core.int> i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); - factory SimpleValue.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory SimpleValue.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -122,14 +150,16 @@ class SimpleValue extends $pb.GeneratedMessage { 'Will be removed in next major version', ) SimpleValue copyWith(void Function(SimpleValue) updates) => - super.copyWith((message) => updates(message as SimpleValue)) as SimpleValue; // ignore: deprecated_member_use + super.copyWith((message) => updates(message as SimpleValue)) + as SimpleValue; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static SimpleValue create() => SimpleValue._(); SimpleValue createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') - static SimpleValue getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static SimpleValue getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static SimpleValue? _defaultInstance; @$pb.TagNumber(1) @@ -147,15 +177,35 @@ class SimpleValue extends $pb.GeneratedMessage { class AssetValue extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'AssetValue', - package: - const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus'), + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'AssetValue', + package: const $pb.PackageName( + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus'), createEmptyInstance: create, ) - ..aOS(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'code') - ..aOS(2, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'quantity') - ..aOS(3, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'securityRoot') - ..aOS(4, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'metadata') + ..aOS( + 1, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'code') + ..aOS( + 2, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'quantity') + ..aOS( + 3, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'securityRoot') + ..aOS( + 4, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'metadata') ..hasRequiredFields = false; AssetValue._() : super(); @@ -180,9 +230,11 @@ class AssetValue extends $pb.GeneratedMessage { } return _result; } - factory AssetValue.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory AssetValue.fromBuffer($core.List<$core.int> i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); - factory AssetValue.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory AssetValue.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -196,14 +248,16 @@ class AssetValue extends $pb.GeneratedMessage { 'Will be removed in next major version', ) AssetValue copyWith(void Function(AssetValue) updates) => - super.copyWith((message) => updates(message as AssetValue)) as AssetValue; // ignore: deprecated_member_use + super.copyWith((message) => updates(message as AssetValue)) + as AssetValue; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static AssetValue create() => AssetValue._(); AssetValue createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') - static AssetValue getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static AssetValue getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static AssetValue? _defaultInstance; @$pb.TagNumber(1) @@ -264,20 +318,28 @@ class TokenValue extends $pb.GeneratedMessage { 0: TokenValue_Value.notSet }; static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'TokenValue', - package: - const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus'), + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'TokenValue', + package: const $pb.PackageName( + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus'), createEmptyInstance: create, ) ..oo(0, [1, 2]) ..aOM( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'simple', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'simple', subBuilder: SimpleValue.create, ) ..aOM( 2, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'asset', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'asset', subBuilder: AssetValue.create, ) ..hasRequiredFields = false; @@ -296,9 +358,11 @@ class TokenValue extends $pb.GeneratedMessage { } return _result; } - factory TokenValue.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory TokenValue.fromBuffer($core.List<$core.int> i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); - factory TokenValue.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory TokenValue.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -312,14 +376,16 @@ class TokenValue extends $pb.GeneratedMessage { 'Will be removed in next major version', ) TokenValue copyWith(void Function(TokenValue) updates) => - super.copyWith((message) => updates(message as TokenValue)) as TokenValue; // ignore: deprecated_member_use + super.copyWith((message) => updates(message as TokenValue)) + as TokenValue; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static TokenValue create() => TokenValue._(); TokenValue createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') - static TokenValue getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static TokenValue getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static TokenValue? _defaultInstance; TokenValue_Value whichValue() => _TokenValue_ValueByTag[$_whichOneof(0)]!; @@ -356,18 +422,40 @@ class TokenValue extends $pb.GeneratedMessage { class TokenBox extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'TokenBox', - package: - const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus'), + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'TokenBox', + package: const $pb.PackageName( + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus'), createEmptyInstance: create, ) - ..aOS(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'boxType') - ..aOS(2, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'id') - ..aOS(3, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'nonce') - ..aOS(4, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'evidence') + ..aOS( + 1, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'boxType') + ..aOS( + 2, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'id') + ..aOS( + 3, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'nonce') + ..aOS( + 4, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'evidence') ..aOM( 5, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'value', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'value', subBuilder: TokenValue.create, ) ..hasRequiredFields = false; @@ -398,9 +486,13 @@ class TokenBox extends $pb.GeneratedMessage { } return _result; } - factory TokenBox.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory TokenBox.fromBuffer($core.List<$core.int> i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); - factory TokenBox.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory TokenBox.fromJson( + $core.String i, [ + $pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY, + ]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -414,14 +506,16 @@ class TokenBox extends $pb.GeneratedMessage { 'Will be removed in next major version', ) TokenBox copyWith(void Function(TokenBox) updates) => - super.copyWith((message) => updates(message as TokenBox)) as TokenBox; // ignore: deprecated_member_use + super.copyWith((message) => updates(message as TokenBox)) + as TokenBox; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static TokenBox create() => TokenBox._(); TokenBox createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') - static TokenBox getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static TokenBox getDefault() => + _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static TokenBox? _defaultInstance; @$pb.TagNumber(1) @@ -489,13 +583,25 @@ class TokenBox extends $pb.GeneratedMessage { class InputBox extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'InputBox', - package: - const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus'), + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'InputBox', + package: const $pb.PackageName( + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus'), createEmptyInstance: create, ) - ..aOS(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'address') - ..aOS(2, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'nonce') + ..aOS( + 1, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'address') + ..aOS( + 2, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'nonce') ..hasRequiredFields = false; InputBox._() : super(); @@ -512,9 +618,11 @@ class InputBox extends $pb.GeneratedMessage { } return _result; } - factory InputBox.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory InputBox.fromBuffer($core.List<$core.int> i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); - factory InputBox.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory InputBox.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -528,14 +636,16 @@ class InputBox extends $pb.GeneratedMessage { 'Will be removed in next major version', ) InputBox copyWith(void Function(InputBox) updates) => - super.copyWith((message) => updates(message as InputBox)) as InputBox; // ignore: deprecated_member_use + super.copyWith((message) => updates(message as InputBox)) + as InputBox; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static InputBox create() => InputBox._(); InputBox createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') - static InputBox getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static InputBox getDefault() => + _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static InputBox? _defaultInstance; @$pb.TagNumber(1) @@ -565,15 +675,25 @@ class InputBox extends $pb.GeneratedMessage { class OutputBox extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'OutputBox', - package: - const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus'), + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'OutputBox', + package: const $pb.PackageName( + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus'), createEmptyInstance: create, ) - ..aOS(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'address') + ..aOS( + 1, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'address') ..aOM( 2, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'value', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'value', subBuilder: TokenValue.create, ) ..hasRequiredFields = false; @@ -592,9 +712,11 @@ class OutputBox extends $pb.GeneratedMessage { } return _result; } - factory OutputBox.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory OutputBox.fromBuffer($core.List<$core.int> i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); - factory OutputBox.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory OutputBox.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -608,14 +730,16 @@ class OutputBox extends $pb.GeneratedMessage { 'Will be removed in next major version', ) OutputBox copyWith(void Function(OutputBox) updates) => - super.copyWith((message) => updates(message as OutputBox)) as OutputBox; // ignore: deprecated_member_use + super.copyWith((message) => updates(message as OutputBox)) + as OutputBox; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static OutputBox create() => OutputBox._(); OutputBox createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') - static OutputBox getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static OutputBox getDefault() => + _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static OutputBox? _defaultInstance; @$pb.TagNumber(1) @@ -647,14 +771,20 @@ class OutputBox extends $pb.GeneratedMessage { class BlockHeight extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'BlockHeight', - package: - const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus'), + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'BlockHeight', + package: const $pb.PackageName( + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus'), createEmptyInstance: create, ) ..a<$fixnum.Int64>( 1, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'value', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'value', $pb.PbFieldType.OU6, defaultOrMaker: $fixnum.Int64.ZERO, ) @@ -670,9 +800,11 @@ class BlockHeight extends $pb.GeneratedMessage { } return _result; } - factory BlockHeight.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory BlockHeight.fromBuffer($core.List<$core.int> i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); - factory BlockHeight.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory BlockHeight.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -686,14 +818,16 @@ class BlockHeight extends $pb.GeneratedMessage { 'Will be removed in next major version', ) BlockHeight copyWith(void Function(BlockHeight) updates) => - super.copyWith((message) => updates(message as BlockHeight)) as BlockHeight; // ignore: deprecated_member_use + super.copyWith((message) => updates(message as BlockHeight)) + as BlockHeight; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static BlockHeight create() => BlockHeight._(); BlockHeight createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') - static BlockHeight getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static BlockHeight getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static BlockHeight? _defaultInstance; @$pb.TagNumber(1) @@ -711,47 +845,97 @@ class BlockHeight extends $pb.GeneratedMessage { class Transaction extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'Transaction', - package: - const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus'), + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'Transaction', + package: const $pb.PackageName( + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus'), createEmptyInstance: create, ) - ..aOS(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'txType') - ..aOS(2, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'timestamp') + ..aOS( + 1, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'txType') + ..aOS( + 2, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'timestamp') ..pc( 3, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'signatures', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'signatures', $pb.PbFieldType.PM, subBuilder: Attestation.create, ) ..pc( 4, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'newBoxes', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'newBoxes', $pb.PbFieldType.PM, subBuilder: TokenBox.create, ) - ..aOS(5, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'data') + ..aOS( + 5, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'data') ..pc( 6, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'inputs', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'inputs', $pb.PbFieldType.PM, subBuilder: InputBox.create, ) - ..aOB(7, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'minting') - ..aOS(8, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'txId') - ..pPS(9, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'boxesToRemove') - ..aOS(10, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'fee') + ..aOB( + 7, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'minting') + ..aOS( + 8, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'txId') + ..pPS( + 9, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'boxesToRemove') + ..aOS( + 10, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'fee') ..pc( 11, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'outputs', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'outputs', $pb.PbFieldType.PM, subBuilder: OutputBox.create, ) - ..aOS(12, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'propositionType') - ..aOS(13, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'blockId') + ..aOS( + 12, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'propositionType') + ..aOS( + 13, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'blockId') ..a<$fixnum.Int64>( 14, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'blockHeight', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'blockHeight', $pb.PbFieldType.OU6, defaultOrMaker: $fixnum.Int64.ZERO, ) @@ -819,9 +1003,11 @@ class Transaction extends $pb.GeneratedMessage { } return _result; } - factory Transaction.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory Transaction.fromBuffer($core.List<$core.int> i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); - factory Transaction.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory Transaction.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -835,14 +1021,16 @@ class Transaction extends $pb.GeneratedMessage { 'Will be removed in next major version', ) Transaction copyWith(void Function(Transaction) updates) => - super.copyWith((message) => updates(message as Transaction)) as Transaction; // ignore: deprecated_member_use + super.copyWith((message) => updates(message as Transaction)) + as Transaction; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static Transaction create() => Transaction._(); Transaction createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') - static Transaction getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static Transaction getDefault() => _defaultInstance ??= + $pb.GeneratedMessage.$_defaultFor(create); static Transaction? _defaultInstance; @$pb.TagNumber(1) @@ -971,38 +1159,82 @@ class Transaction extends $pb.GeneratedMessage { class Block extends $pb.GeneratedMessage { static final $pb.BuilderInfo _i = $pb.BuilderInfo( - const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'Block', - package: - const $pb.PackageName(const $core.bool.fromEnvironment('protobuf.omit_message_names') ? '' : 'co.topl.genus'), + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'Block', + package: const $pb.PackageName( + const $core.bool.fromEnvironment('protobuf.omit_message_names') + ? '' + : 'co.topl.genus'), createEmptyInstance: create, ) - ..aOS(1, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'id') - ..aOS(2, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'parentId') - ..aOS(3, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'timestamp') + ..aOS( + 1, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'id') + ..aOS( + 2, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'parentId') + ..aOS( + 3, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'timestamp') ..aOM( 4, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'generator', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'generator', subBuilder: TokenBox.create, ) - ..aOS(5, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'publicKey') - ..aOS(6, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'signature') + ..aOS( + 5, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'publicKey') + ..aOS( + 6, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'signature') ..a<$fixnum.Int64>( 7, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'height', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'height', $pb.PbFieldType.OU6, defaultOrMaker: $fixnum.Int64.ZERO, ) - ..aOS(8, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'difficulty') - ..aOS(9, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'txRoot') - ..aOS(10, const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'bloomFilter') + ..aOS( + 8, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'difficulty') + ..aOS( + 9, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'txRoot') + ..aOS( + 10, + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'bloomFilter') ..a<$core.int>( 11, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'version', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'version', $pb.PbFieldType.OU3, ) ..a<$core.int>( 12, - const $core.bool.fromEnvironment('protobuf.omit_field_names') ? '' : 'numTransactions', + const $core.bool.fromEnvironment('protobuf.omit_field_names') + ? '' + : 'numTransactions', $pb.PbFieldType.OU3, ) ..hasRequiredFields = false; @@ -1061,9 +1293,11 @@ class Block extends $pb.GeneratedMessage { } return _result; } - factory Block.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory Block.fromBuffer($core.List<$core.int> i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); - factory Block.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => + factory Block.fromJson($core.String i, + [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); @$core.Deprecated( 'Using this can add significant overhead to your binary. ' @@ -1077,14 +1311,16 @@ class Block extends $pb.GeneratedMessage { 'Will be removed in next major version', ) Block copyWith(void Function(Block) updates) => - super.copyWith((message) => updates(message as Block)) as Block; // ignore: deprecated_member_use + super.copyWith((message) => updates(message as Block)) + as Block; // ignore: deprecated_member_use $pb.BuilderInfo get info_ => _i; @$core.pragma('dart2js:noInline') static Block create() => Block._(); Block createEmptyInstance() => create(); static $pb.PbList createRepeated() => $pb.PbList(); @$core.pragma('dart2js:noInline') - static Block getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); + static Block getDefault() => + _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor(create); static Block? _defaultInstance; @$pb.TagNumber(1) diff --git a/lib/genus/generated/types.pbenum.dart b/lib/genus/generated/types.pbenum.dart index 8ed9e20b..aac01541 100644 --- a/lib/genus/generated/types.pbenum.dart +++ b/lib/genus/generated/types.pbenum.dart @@ -4,4 +4,3 @@ // // @dart = 2.12 // ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name - diff --git a/lib/genus/generated/types.pbjson.dart b/lib/genus/generated/types.pbjson.dart index 970a3c71..a38926d3 100644 --- a/lib/genus/generated/types.pbjson.dart +++ b/lib/genus/generated/types.pbjson.dart @@ -5,9 +5,11 @@ // @dart = 2.12 // ignore_for_file: annotate_overrides,camel_case_types,constant_identifier_names,deprecated_member_use_from_same_package,directives_ordering,library_prefixes,non_constant_identifier_names,prefer_final_fields,return_of_invalid_type,unnecessary_const,unnecessary_import,unnecessary_this,unused_import,unused_shown_name -import 'dart:core' as $core; +// Dart imports: import 'dart:convert' as $convert; +import 'dart:core' as $core; import 'dart:typed_data' as $typed_data; + @$core.Deprecated('Use attestationDescriptor instead') const Attestation$json = const { '1': 'Attestation', @@ -18,7 +20,8 @@ const Attestation$json = const { }; /// Descriptor for `Attestation`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List attestationDescriptor = $convert.base64Decode('CgtBdHRlc3RhdGlvbhIdCgpwdWJsaWNfa2V5GAEgASgJUglwdWJsaWNLZXkSHAoJc2lnbmF0dXJlGAIgASgJUglzaWduYXR1cmU='); +final $typed_data.Uint8List attestationDescriptor = $convert.base64Decode( + 'CgtBdHRlc3RhdGlvbhIdCgpwdWJsaWNfa2V5GAEgASgJUglwdWJsaWNLZXkSHAoJc2lnbmF0dXJlGAIgASgJUglzaWduYXR1cmU='); @$core.Deprecated('Use simpleValueDescriptor instead') const SimpleValue$json = const { '1': 'SimpleValue', @@ -28,7 +31,8 @@ const SimpleValue$json = const { }; /// Descriptor for `SimpleValue`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List simpleValueDescriptor = $convert.base64Decode('CgtTaW1wbGVWYWx1ZRIaCghxdWFudGl0eRgBIAEoCVIIcXVhbnRpdHk='); +final $typed_data.Uint8List simpleValueDescriptor = $convert + .base64Decode('CgtTaW1wbGVWYWx1ZRIaCghxdWFudGl0eRgBIAEoCVIIcXVhbnRpdHk='); @$core.Deprecated('Use assetValueDescriptor instead') const AssetValue$json = const { '1': 'AssetValue', @@ -41,13 +45,30 @@ const AssetValue$json = const { }; /// Descriptor for `AssetValue`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List assetValueDescriptor = $convert.base64Decode('CgpBc3NldFZhbHVlEhIKBGNvZGUYASABKAlSBGNvZGUSGgoIcXVhbnRpdHkYAiABKAlSCHF1YW50aXR5EiMKDXNlY3VyaXR5X3Jvb3QYAyABKAlSDHNlY3VyaXR5Um9vdBIaCghtZXRhZGF0YRgEIAEoCVIIbWV0YWRhdGE='); +final $typed_data.Uint8List assetValueDescriptor = $convert.base64Decode( + 'CgpBc3NldFZhbHVlEhIKBGNvZGUYASABKAlSBGNvZGUSGgoIcXVhbnRpdHkYAiABKAlSCHF1YW50aXR5EiMKDXNlY3VyaXR5X3Jvb3QYAyABKAlSDHNlY3VyaXR5Um9vdBIaCghtZXRhZGF0YRgEIAEoCVIIbWV0YWRhdGE='); @$core.Deprecated('Use tokenValueDescriptor instead') const TokenValue$json = const { '1': 'TokenValue', '2': const [ - const {'1': 'simple', '3': 1, '4': 1, '5': 11, '6': '.co.topl.genus.SimpleValue', '9': 0, '10': 'simple'}, - const {'1': 'asset', '3': 2, '4': 1, '5': 11, '6': '.co.topl.genus.AssetValue', '9': 0, '10': 'asset'}, + const { + '1': 'simple', + '3': 1, + '4': 1, + '5': 11, + '6': '.co.topl.genus.SimpleValue', + '9': 0, + '10': 'simple' + }, + const { + '1': 'asset', + '3': 2, + '4': 1, + '5': 11, + '6': '.co.topl.genus.AssetValue', + '9': 0, + '10': 'asset' + }, ], '8': const [ const {'1': 'value'}, @@ -55,7 +76,8 @@ const TokenValue$json = const { }; /// Descriptor for `TokenValue`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List tokenValueDescriptor = $convert.base64Decode('CgpUb2tlblZhbHVlEjQKBnNpbXBsZRgBIAEoCzIaLmNvLnRvcGwuZ2VudXMuU2ltcGxlVmFsdWVIAFIGc2ltcGxlEjEKBWFzc2V0GAIgASgLMhkuY28udG9wbC5nZW51cy5Bc3NldFZhbHVlSABSBWFzc2V0QgcKBXZhbHVl'); +final $typed_data.Uint8List tokenValueDescriptor = $convert.base64Decode( + 'CgpUb2tlblZhbHVlEjQKBnNpbXBsZRgBIAEoCzIaLmNvLnRvcGwuZ2VudXMuU2ltcGxlVmFsdWVIAFIGc2ltcGxlEjEKBWFzc2V0GAIgASgLMhkuY28udG9wbC5nZW51cy5Bc3NldFZhbHVlSABSBWFzc2V0QgcKBXZhbHVl'); @$core.Deprecated('Use tokenBoxDescriptor instead') const TokenBox$json = const { '1': 'TokenBox', @@ -64,12 +86,20 @@ const TokenBox$json = const { const {'1': 'id', '3': 2, '4': 1, '5': 9, '10': 'id'}, const {'1': 'nonce', '3': 3, '4': 1, '5': 9, '10': 'nonce'}, const {'1': 'evidence', '3': 4, '4': 1, '5': 9, '10': 'evidence'}, - const {'1': 'value', '3': 5, '4': 1, '5': 11, '6': '.co.topl.genus.TokenValue', '10': 'value'}, + const { + '1': 'value', + '3': 5, + '4': 1, + '5': 11, + '6': '.co.topl.genus.TokenValue', + '10': 'value' + }, ], }; /// Descriptor for `TokenBox`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List tokenBoxDescriptor = $convert.base64Decode('CghUb2tlbkJveBIZCghib3hfdHlwZRgBIAEoCVIHYm94VHlwZRIOCgJpZBgCIAEoCVICaWQSFAoFbm9uY2UYAyABKAlSBW5vbmNlEhoKCGV2aWRlbmNlGAQgASgJUghldmlkZW5jZRIvCgV2YWx1ZRgFIAEoCzIZLmNvLnRvcGwuZ2VudXMuVG9rZW5WYWx1ZVIFdmFsdWU='); +final $typed_data.Uint8List tokenBoxDescriptor = $convert.base64Decode( + 'CghUb2tlbkJveBIZCghib3hfdHlwZRgBIAEoCVIHYm94VHlwZRIOCgJpZBgCIAEoCVICaWQSFAoFbm9uY2UYAyABKAlSBW5vbmNlEhoKCGV2aWRlbmNlGAQgASgJUghldmlkZW5jZRIvCgV2YWx1ZRgFIAEoCzIZLmNvLnRvcGwuZ2VudXMuVG9rZW5WYWx1ZVIFdmFsdWU='); @$core.Deprecated('Use inputBoxDescriptor instead') const InputBox$json = const { '1': 'InputBox', @@ -80,18 +110,27 @@ const InputBox$json = const { }; /// Descriptor for `InputBox`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List inputBoxDescriptor = $convert.base64Decode('CghJbnB1dEJveBIYCgdhZGRyZXNzGAEgASgJUgdhZGRyZXNzEhQKBW5vbmNlGAIgASgJUgVub25jZQ=='); +final $typed_data.Uint8List inputBoxDescriptor = $convert.base64Decode( + 'CghJbnB1dEJveBIYCgdhZGRyZXNzGAEgASgJUgdhZGRyZXNzEhQKBW5vbmNlGAIgASgJUgVub25jZQ=='); @$core.Deprecated('Use outputBoxDescriptor instead') const OutputBox$json = const { '1': 'OutputBox', '2': const [ const {'1': 'address', '3': 1, '4': 1, '5': 9, '10': 'address'}, - const {'1': 'value', '3': 2, '4': 1, '5': 11, '6': '.co.topl.genus.TokenValue', '10': 'value'}, + const { + '1': 'value', + '3': 2, + '4': 1, + '5': 11, + '6': '.co.topl.genus.TokenValue', + '10': 'value' + }, ], }; /// Descriptor for `OutputBox`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List outputBoxDescriptor = $convert.base64Decode('CglPdXRwdXRCb3gSGAoHYWRkcmVzcxgBIAEoCVIHYWRkcmVzcxIvCgV2YWx1ZRgCIAEoCzIZLmNvLnRvcGwuZ2VudXMuVG9rZW5WYWx1ZVIFdmFsdWU='); +final $typed_data.Uint8List outputBoxDescriptor = $convert.base64Decode( + 'CglPdXRwdXRCb3gSGAoHYWRkcmVzcxgBIAEoCVIHYWRkcmVzcxIvCgV2YWx1ZRgCIAEoCzIZLmNvLnRvcGwuZ2VudXMuVG9rZW5WYWx1ZVIFdmFsdWU='); @$core.Deprecated('Use blockHeightDescriptor instead') const BlockHeight$json = const { '1': 'BlockHeight', @@ -101,30 +140,72 @@ const BlockHeight$json = const { }; /// Descriptor for `BlockHeight`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List blockHeightDescriptor = $convert.base64Decode('CgtCbG9ja0hlaWdodBIUCgV2YWx1ZRgBIAEoBFIFdmFsdWU='); +final $typed_data.Uint8List blockHeightDescriptor = + $convert.base64Decode('CgtCbG9ja0hlaWdodBIUCgV2YWx1ZRgBIAEoBFIFdmFsdWU='); @$core.Deprecated('Use transactionDescriptor instead') const Transaction$json = const { '1': 'Transaction', '2': const [ const {'1': 'tx_type', '3': 1, '4': 1, '5': 9, '10': 'txType'}, const {'1': 'timestamp', '3': 2, '4': 1, '5': 9, '10': 'timestamp'}, - const {'1': 'signatures', '3': 3, '4': 3, '5': 11, '6': '.co.topl.genus.Attestation', '10': 'signatures'}, - const {'1': 'new_boxes', '3': 4, '4': 3, '5': 11, '6': '.co.topl.genus.TokenBox', '10': 'newBoxes'}, + const { + '1': 'signatures', + '3': 3, + '4': 3, + '5': 11, + '6': '.co.topl.genus.Attestation', + '10': 'signatures' + }, + const { + '1': 'new_boxes', + '3': 4, + '4': 3, + '5': 11, + '6': '.co.topl.genus.TokenBox', + '10': 'newBoxes' + }, const {'1': 'data', '3': 5, '4': 1, '5': 9, '10': 'data'}, - const {'1': 'inputs', '3': 6, '4': 3, '5': 11, '6': '.co.topl.genus.InputBox', '10': 'inputs'}, + const { + '1': 'inputs', + '3': 6, + '4': 3, + '5': 11, + '6': '.co.topl.genus.InputBox', + '10': 'inputs' + }, const {'1': 'minting', '3': 7, '4': 1, '5': 8, '10': 'minting'}, const {'1': 'tx_id', '3': 8, '4': 1, '5': 9, '10': 'txId'}, - const {'1': 'boxes_to_remove', '3': 9, '4': 3, '5': 9, '10': 'boxesToRemove'}, + const { + '1': 'boxes_to_remove', + '3': 9, + '4': 3, + '5': 9, + '10': 'boxesToRemove' + }, const {'1': 'fee', '3': 10, '4': 1, '5': 9, '10': 'fee'}, - const {'1': 'outputs', '3': 11, '4': 3, '5': 11, '6': '.co.topl.genus.OutputBox', '10': 'outputs'}, - const {'1': 'proposition_type', '3': 12, '4': 1, '5': 9, '10': 'propositionType'}, + const { + '1': 'outputs', + '3': 11, + '4': 3, + '5': 11, + '6': '.co.topl.genus.OutputBox', + '10': 'outputs' + }, + const { + '1': 'proposition_type', + '3': 12, + '4': 1, + '5': 9, + '10': 'propositionType' + }, const {'1': 'block_id', '3': 13, '4': 1, '5': 9, '10': 'blockId'}, const {'1': 'block_height', '3': 14, '4': 1, '5': 4, '10': 'blockHeight'}, ], }; /// Descriptor for `Transaction`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List transactionDescriptor = $convert.base64Decode('CgtUcmFuc2FjdGlvbhIXCgd0eF90eXBlGAEgASgJUgZ0eFR5cGUSHAoJdGltZXN0YW1wGAIgASgJUgl0aW1lc3RhbXASOgoKc2lnbmF0dXJlcxgDIAMoCzIaLmNvLnRvcGwuZ2VudXMuQXR0ZXN0YXRpb25SCnNpZ25hdHVyZXMSNAoJbmV3X2JveGVzGAQgAygLMhcuY28udG9wbC5nZW51cy5Ub2tlbkJveFIIbmV3Qm94ZXMSEgoEZGF0YRgFIAEoCVIEZGF0YRIvCgZpbnB1dHMYBiADKAsyFy5jby50b3BsLmdlbnVzLklucHV0Qm94UgZpbnB1dHMSGAoHbWludGluZxgHIAEoCFIHbWludGluZxITCgV0eF9pZBgIIAEoCVIEdHhJZBImCg9ib3hlc190b19yZW1vdmUYCSADKAlSDWJveGVzVG9SZW1vdmUSEAoDZmVlGAogASgJUgNmZWUSMgoHb3V0cHV0cxgLIAMoCzIYLmNvLnRvcGwuZ2VudXMuT3V0cHV0Qm94UgdvdXRwdXRzEikKEHByb3Bvc2l0aW9uX3R5cGUYDCABKAlSD3Byb3Bvc2l0aW9uVHlwZRIZCghibG9ja19pZBgNIAEoCVIHYmxvY2tJZBIhCgxibG9ja19oZWlnaHQYDiABKARSC2Jsb2NrSGVpZ2h0'); +final $typed_data.Uint8List transactionDescriptor = $convert.base64Decode( + 'CgtUcmFuc2FjdGlvbhIXCgd0eF90eXBlGAEgASgJUgZ0eFR5cGUSHAoJdGltZXN0YW1wGAIgASgJUgl0aW1lc3RhbXASOgoKc2lnbmF0dXJlcxgDIAMoCzIaLmNvLnRvcGwuZ2VudXMuQXR0ZXN0YXRpb25SCnNpZ25hdHVyZXMSNAoJbmV3X2JveGVzGAQgAygLMhcuY28udG9wbC5nZW51cy5Ub2tlbkJveFIIbmV3Qm94ZXMSEgoEZGF0YRgFIAEoCVIEZGF0YRIvCgZpbnB1dHMYBiADKAsyFy5jby50b3BsLmdlbnVzLklucHV0Qm94UgZpbnB1dHMSGAoHbWludGluZxgHIAEoCFIHbWludGluZxITCgV0eF9pZBgIIAEoCVIEdHhJZBImCg9ib3hlc190b19yZW1vdmUYCSADKAlSDWJveGVzVG9SZW1vdmUSEAoDZmVlGAogASgJUgNmZWUSMgoHb3V0cHV0cxgLIAMoCzIYLmNvLnRvcGwuZ2VudXMuT3V0cHV0Qm94UgdvdXRwdXRzEikKEHByb3Bvc2l0aW9uX3R5cGUYDCABKAlSD3Byb3Bvc2l0aW9uVHlwZRIZCghibG9ja19pZBgNIAEoCVIHYmxvY2tJZBIhCgxibG9ja19oZWlnaHQYDiABKARSC2Jsb2NrSGVpZ2h0'); @$core.Deprecated('Use blockDescriptor instead') const Block$json = const { '1': 'Block', @@ -132,7 +213,14 @@ const Block$json = const { const {'1': 'id', '3': 1, '4': 1, '5': 9, '10': 'id'}, const {'1': 'parent_id', '3': 2, '4': 1, '5': 9, '10': 'parentId'}, const {'1': 'timestamp', '3': 3, '4': 1, '5': 9, '10': 'timestamp'}, - const {'1': 'generator', '3': 4, '4': 1, '5': 11, '6': '.co.topl.genus.TokenBox', '10': 'generator'}, + const { + '1': 'generator', + '3': 4, + '4': 1, + '5': 11, + '6': '.co.topl.genus.TokenBox', + '10': 'generator' + }, const {'1': 'public_key', '3': 5, '4': 1, '5': 9, '10': 'publicKey'}, const {'1': 'signature', '3': 6, '4': 1, '5': 9, '10': 'signature'}, const {'1': 'height', '3': 7, '4': 1, '5': 4, '10': 'height'}, @@ -140,9 +228,16 @@ const Block$json = const { const {'1': 'tx_root', '3': 9, '4': 1, '5': 9, '10': 'txRoot'}, const {'1': 'bloom_filter', '3': 10, '4': 1, '5': 9, '10': 'bloomFilter'}, const {'1': 'version', '3': 11, '4': 1, '5': 13, '10': 'version'}, - const {'1': 'num_transactions', '3': 12, '4': 1, '5': 13, '10': 'numTransactions'}, + const { + '1': 'num_transactions', + '3': 12, + '4': 1, + '5': 13, + '10': 'numTransactions' + }, ], }; /// Descriptor for `Block`. Decode as a `google.protobuf.DescriptorProto`. -final $typed_data.Uint8List blockDescriptor = $convert.base64Decode('CgVCbG9jaxIOCgJpZBgBIAEoCVICaWQSGwoJcGFyZW50X2lkGAIgASgJUghwYXJlbnRJZBIcCgl0aW1lc3RhbXAYAyABKAlSCXRpbWVzdGFtcBI1CglnZW5lcmF0b3IYBCABKAsyFy5jby50b3BsLmdlbnVzLlRva2VuQm94UglnZW5lcmF0b3ISHQoKcHVibGljX2tleRgFIAEoCVIJcHVibGljS2V5EhwKCXNpZ25hdHVyZRgGIAEoCVIJc2lnbmF0dXJlEhYKBmhlaWdodBgHIAEoBFIGaGVpZ2h0Eh4KCmRpZmZpY3VsdHkYCCABKAlSCmRpZmZpY3VsdHkSFwoHdHhfcm9vdBgJIAEoCVIGdHhSb290EiEKDGJsb29tX2ZpbHRlchgKIAEoCVILYmxvb21GaWx0ZXISGAoHdmVyc2lvbhgLIAEoDVIHdmVyc2lvbhIpChBudW1fdHJhbnNhY3Rpb25zGAwgASgNUg9udW1UcmFuc2FjdGlvbnM='); +final $typed_data.Uint8List blockDescriptor = $convert.base64Decode( + 'CgVCbG9jaxIOCgJpZBgBIAEoCVICaWQSGwoJcGFyZW50X2lkGAIgASgJUghwYXJlbnRJZBIcCgl0aW1lc3RhbXAYAyABKAlSCXRpbWVzdGFtcBI1CglnZW5lcmF0b3IYBCABKAsyFy5jby50b3BsLmdlbnVzLlRva2VuQm94UglnZW5lcmF0b3ISHQoKcHVibGljX2tleRgFIAEoCVIJcHVibGljS2V5EhwKCXNpZ25hdHVyZRgGIAEoCVIJc2lnbmF0dXJlEhYKBmhlaWdodBgHIAEoBFIGaGVpZ2h0Eh4KCmRpZmZpY3VsdHkYCCABKAlSCmRpZmZpY3VsdHkSFwoHdHhfcm9vdBgJIAEoCVIGdHhSb290EiEKDGJsb29tX2ZpbHRlchgKIAEoCVILYmxvb21GaWx0ZXISGAoHdmVyc2lvbhgLIAEoDVIHdmVyc2lvbhIpChBudW1fdHJhbnNhY3Rpb25zGAwgASgNUg9udW1UcmFuc2FjdGlvbnM='); diff --git a/lib/helpers/helper_functions.dart b/lib/helpers/helper_functions.dart index 7dbe08b9..339097eb 100644 --- a/lib/helpers/helper_functions.dart +++ b/lib/helpers/helper_functions.dart @@ -1,6 +1,13 @@ +// Flutter imports: + +// Flutter imports: +import 'package:flutter/cupertino.dart'; + +// Package imports: import 'package:brambldart/credentials.dart'; import 'package:brambldart/model.dart'; -import 'package:flutter/cupertino.dart'; + +// Project imports: import '../containers/transaction_history_container.dart'; /// @dev Function fetches all transactions diff --git a/lib/js_workers/generate_keystore_worker.dart b/lib/js_workers/generate_keystore_worker.dart index 7709f1a7..d2e4008f 100644 --- a/lib/js_workers/generate_keystore_worker.dart +++ b/lib/js_workers/generate_keystore_worker.dart @@ -3,10 +3,14 @@ @JS() library sample; +// Dart imports: import 'dart:convert'; import 'dart:html'; +// Package imports: import 'package:js/js.dart'; + +// Project imports: import 'package:ribn/repositories/onboarding_repository.dart'; @JS('self') @@ -21,7 +25,8 @@ external DedicatedWorkerGlobalScope get self; void main() { self.onMessage.listen((e) { final Map params = jsonDecode(e.data); - final Map results = const OnboardingRespository().generateKeyStore({ + final Map results = + const OnboardingRespository().generateKeyStore({ 'mnemonic': params['mnemonic'], 'password': params['password'], }); diff --git a/lib/js_workers/login_worker.dart b/lib/js_workers/login_worker.dart index 63242a20..5815b1db 100644 --- a/lib/js_workers/login_worker.dart +++ b/lib/js_workers/login_worker.dart @@ -3,11 +3,15 @@ @JS() library sample; +// Dart imports: import 'dart:convert'; import 'dart:html'; import 'dart:typed_data'; +// Package imports: import 'package:js/js.dart'; + +// Project imports: import 'package:ribn/repositories/login_repository.dart'; @JS('self') @@ -22,7 +26,8 @@ external DedicatedWorkerGlobalScope get self; void main() { self.onMessage.listen((e) { final Map params = jsonDecode(e.data); - final Uint8List toplExtendedPrvKeyUint8List = const LoginRepository().decryptKeyStore( + final Uint8List toplExtendedPrvKeyUint8List = + const LoginRepository().decryptKeyStore( { 'keyStoreJson': params['keyStoreJson'] as String, 'password': params['password'] as String, diff --git a/lib/main.dart b/lib/main.dart index 5ff882ef..629e70ed 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,9 +1,16 @@ +// Dart imports: import 'dart:async'; import 'dart:convert'; + +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: import 'package:flutter_portal/flutter_portal.dart'; import 'package:flutter_redux/flutter_redux.dart'; import 'package:redux/redux.dart'; + +// Project imports: import 'package:ribn/actions/internal_message_actions.dart'; import 'package:ribn/constants/keys.dart'; import 'package:ribn/constants/routes.dart'; @@ -11,7 +18,6 @@ import 'package:ribn/constants/rules.dart'; import 'package:ribn/models/app_state.dart'; import 'package:ribn/models/internal_message.dart'; import 'package:ribn/platform/platform.dart'; -// import 'package:ribn/platform/web/wallet.dart'; import 'package:ribn/presentation/authorize_and_sign/connect_dapp.dart'; import 'package:ribn/presentation/authorize_and_sign/review_and_sign.dart'; import 'package:ribn/presentation/enable_page.dart'; @@ -23,11 +29,12 @@ import 'package:ribn/presentation/transaction_history/service_locator/locator.da import 'package:ribn/redux.dart'; import 'package:ribn/router/root_router.dart'; +// import 'package:ribn/platform/web/wallet.dart'; + void main() async { WidgetsFlutterBinding.ensureInitialized(); - await Redux.initStore(initTestStore: false); - final AppViews currentAppView = - await PlatformUtils.instance.getCurrentAppView(); + await Redux.initStore(initTestStore: true); + final AppViews currentAppView = await PlatformUtils.instance.getCurrentAppView(); final bool needsOnboarding = Redux.store!.state.needsOnboarding(); // Open app in new tab if user needs onboarding if (currentAppView == AppViews.extension && needsOnboarding) { @@ -60,8 +67,7 @@ class RibnApp extends StatelessWidget { title: 'Ribn', navigatorObservers: [Routes.routeObserver], onGenerateRoute: rootRouter.generateRoutes, - onGenerateInitialRoutes: (initialRoute) => - onGenerateInitialRoute(initialRoute, store), + onGenerateInitialRoutes: (initialRoute) => onGenerateInitialRoute(initialRoute, store), initialRoute: getInitialRoute(store), navigatorKey: Keys.navigatorKey, ), @@ -84,12 +90,9 @@ String getInitialRoute(Store store) { //v2 else if (store.state.internalMessage?.method == InternalMethods.authorize) { return Routes.connectDApp; - } - else if (store.state.internalMessage?.method == InternalMethods.getBalance) { + } else if (store.state.internalMessage?.method == InternalMethods.getBalance) { return Routes.reviewAndSignDApp; - } - else if (store.state.internalMessage?.method == - InternalMethods.signTransaction) { + } else if (store.state.internalMessage?.method == InternalMethods.signTransaction) { return Routes.reviewAndSignDApp; } @@ -126,8 +129,7 @@ List onGenerateInitialRoute(initialRoute, Store store) { case Routes.externalSigning: return [ MaterialPageRoute( - builder: (context) => - ExternalSigningPage(store.state.internalMessage!), + builder: (context) => ExternalSigningPage(store.state.internalMessage!), settings: const RouteSettings(name: Routes.externalSigning), ) ]; @@ -168,13 +170,11 @@ Future initBgConnection(Store store) async { try { Messenger.instance.connect(); Messenger.instance.initMsgListener((String msgFromBgScript) { - final InternalMessage pendingRequest = - InternalMessage.fromJson(msgFromBgScript); + final InternalMessage pendingRequest = InternalMessage.fromJson(msgFromBgScript); store.dispatch(ReceivedInternalMsgAction(pendingRequest)); completer.complete(); }); - Messenger.instance - .sendMsg(jsonEncode({'method': InternalMethods.checkPendingRequest})); + Messenger.instance.sendMsg(jsonEncode({'method': InternalMethods.checkPendingRequest})); } catch (e) { completer.complete(); PlatformUtils.instance.closeWindow(); diff --git a/lib/middlewares/app_middleware.dart b/lib/middlewares/app_middleware.dart index 46c78ad6..13328930 100644 --- a/lib/middlewares/app_middleware.dart +++ b/lib/middlewares/app_middleware.dart @@ -1,5 +1,8 @@ +// Package imports: import 'package:redux/redux.dart'; import 'package:redux_epics/redux_epics.dart'; + +// Project imports: import 'package:ribn/middlewares/epic_middleware.dart'; import 'package:ribn/middlewares/internal_message_middleware.dart'; import 'package:ribn/middlewares/keychain_middleware.dart'; diff --git a/lib/middlewares/epic_middleware.dart b/lib/middlewares/epic_middleware.dart index 98ed1cd7..b21bd9b9 100644 --- a/lib/middlewares/epic_middleware.dart +++ b/lib/middlewares/epic_middleware.dart @@ -1,5 +1,11 @@ +// Flutter imports: import 'package:flutter/foundation.dart'; + +// Package imports: import 'package:redux_epics/redux_epics.dart'; +import 'package:rxdart/rxdart.dart'; + +// Project imports: import 'package:ribn/actions/keychain_actions.dart'; import 'package:ribn/actions/misc_actions.dart'; import 'package:ribn/actions/restore_wallet_actions.dart'; @@ -9,14 +15,16 @@ import 'package:ribn/constants/routes.dart'; import 'package:ribn/models/app_state.dart'; import 'package:ribn/repositories/misc_repository.dart'; import 'package:ribn/utils.dart'; -import 'package:rxdart/rxdart.dart'; -Epic createEpicMiddleware(MiscRepository miscRepo) => combineEpics([ +Epic createEpicMiddleware(MiscRepository miscRepo) => + combineEpics([ _persistenceTriggerEpic(), TypedEpic(_onApiError()), TypedEpic(_onPersistAppState(miscRepo)), TypedEpic(_onNavigateToRoute()), - TypedEpic(_onSuccessfullyRestoredWallet(miscRepo)), + TypedEpic( + _onSuccessfullyRestoredWallet(miscRepo), + ), ]); /// A list of all the actions that should trigger appState persistence @@ -29,7 +37,8 @@ const List persistenceTriggers = [ ]; /// If an action that exists in the list [persistenceTriggers] is received, this epic emits the [PersistAppState] action. -Epic _persistenceTriggerEpic() => (Stream actions, EpicStore store) { +Epic _persistenceTriggerEpic() => + (Stream actions, EpicStore store) { return actions .where((action) => (persistenceTriggers.contains(action.runtimeType))) .switchMap((action) => Stream.value(PersistAppState())); @@ -51,16 +60,22 @@ Epic _persistenceTriggerEpic() => (Stream actions, EpicStore< // }; /// Redirects to [Routes.error] whenever [ApiErrorAction] is received. -Stream Function(Stream, EpicStore) _onApiError() { +Stream Function(Stream, EpicStore) + _onApiError() { return (actions, store) { - return actions.switchMap((action) => Stream.value(NavigateToRoute(Routes.error, arguments: action.errorMessage))); + return actions.switchMap( + (action) => Stream.value( + NavigateToRoute(Routes.error, arguments: action.errorMessage), + ), + ); }; } /// Handles [PersistAppState] action. /// /// Persists the current [AppState] to local storage. -Stream Function(Stream, EpicStore) _onPersistAppState(MiscRepository miscRepo) { +Stream Function(Stream, EpicStore) + _onPersistAppState(MiscRepository miscRepo) { return (actions, store) { return actions.whereType().switchMap( (action) { @@ -71,7 +86,9 @@ Stream Function(Stream, EpicStore) _onPersis await miscRepo.persistAppState(store.state.toJson()); } } catch (e) { - return ApiErrorAction('Failed to persist state. Error: ${e.toString()}'); + return ApiErrorAction( + 'Failed to persist state. Error: ${e.toString()}', + ); } } @@ -84,11 +101,13 @@ Stream Function(Stream, EpicStore) _onPersis /// Handles [NavigateToRoute] by pushing [action.route] on the current navigation stack. /// /// Only supports Web platform at this time, i.e. [kIsWeb] should be True. -Stream Function(Stream, EpicStore) _onNavigateToRoute() { +Stream Function(Stream, EpicStore) + _onNavigateToRoute() { return (actions, store) { return actions.switchMap( (action) { - Keys.navigatorKey.currentState?.pushNamed(action.route, arguments: action.arguments); + Keys.navigatorKey.currentState + ?.pushNamed(action.route, arguments: action.arguments); return const Stream.empty(); }, ); @@ -100,12 +119,16 @@ Stream Function(Stream, EpicStore) _onNaviga /// /// [navigateToRoute] is selected based on whether the app is open in extension view or full page, i.e. /// user is restoring wallet during onboarding (fullpage- iew) vs from the login page (extension view). -Stream Function(Stream, EpicStore) _onSuccessfullyRestoredWallet( +Stream Function( + Stream, + EpicStore, +) _onSuccessfullyRestoredWallet( MiscRepository miscRepo, ) { return (actions, store) { return actions.switchMap((action) { - const String navigateToRoute = kIsWeb ? Routes.extensionInfo : Routes.home; + const String navigateToRoute = + kIsWeb ? Routes.extensionInfo : Routes.home; return Stream.fromIterable([ const ResetAppStateAction(), InitializeHDWalletAction( @@ -113,7 +136,8 @@ Stream Function(Stream, EpicStore false), + Keys.navigatorKey.currentState + ?.pushNamedAndRemoveUntil(navigateToRoute, (route) => false), ]); }); }; diff --git a/lib/middlewares/internal_message_middleware.dart b/lib/middlewares/internal_message_middleware.dart index 3050b68f..ccee5eb8 100644 --- a/lib/middlewares/internal_message_middleware.dart +++ b/lib/middlewares/internal_message_middleware.dart @@ -1,15 +1,26 @@ +// Package imports: import 'package:redux/redux.dart'; + +// Project imports: import 'package:ribn/actions/internal_message_actions.dart'; import 'package:ribn/models/app_state.dart'; import 'package:ribn/repositories/misc_repository.dart'; -List> createInternalMessageMiddleware(MiscRepository miscRepo) { +List> createInternalMessageMiddleware( + MiscRepository miscRepo, +) { return >[ - TypedMiddleware(_onSendInternalMsg(miscRepo)), + TypedMiddleware( + _onSendInternalMsg(miscRepo), + ), ]; } -void Function(Store store, SendInternalMsgAction action, NextDispatcher next) _onSendInternalMsg( +void Function( + Store store, + SendInternalMsgAction action, + NextDispatcher next, +) _onSendInternalMsg( MiscRepository miscRepo, ) { return (store, action, next) => miscRepo.sendInternalMessage(action.msg); diff --git a/lib/middlewares/keychain_middleware.dart b/lib/middlewares/keychain_middleware.dart index 9c926323..363611ab 100644 --- a/lib/middlewares/keychain_middleware.dart +++ b/lib/middlewares/keychain_middleware.dart @@ -1,30 +1,46 @@ +// Package imports: import 'package:brambldart/brambldart.dart'; import 'package:redux/redux.dart'; + +// Project imports: import 'package:ribn/actions/keychain_actions.dart'; import 'package:ribn/actions/misc_actions.dart'; import 'package:ribn/models/app_state.dart'; import 'package:ribn/models/ribn_address.dart'; import 'package:ribn/repositories/keychain_repository.dart'; -List> createKeychainMiddleware(KeychainRepository keyChainRepo) { +List> createKeychainMiddleware( + KeychainRepository keyChainRepo, +) { return >[ - TypedMiddleware(_onGenerateInitialAddresses(keyChainRepo)), - TypedMiddleware(_onGenerateAddress(keyChainRepo)), - TypedMiddleware(_onRefereshBalances(keyChainRepo)), + TypedMiddleware( + _onGenerateInitialAddresses(keyChainRepo), + ), + TypedMiddleware( + _onGenerateAddress(keyChainRepo), + ), + TypedMiddleware( + _onRefereshBalances(keyChainRepo), + ), ]; } /// Generates the initial addresses for each of the networks. /// /// Dispatches [UpdateNetworksWithAddressesAction] to update [RibnNetworks]s with the newly generated addreses. -void Function(Store store, GenerateInitialAddressesAction action, NextDispatcher next) - _onGenerateInitialAddresses(KeychainRepository keychainRepo) { +void Function( + Store store, + GenerateInitialAddressesAction action, + NextDispatcher next, +) _onGenerateInitialAddresses(KeychainRepository keychainRepo) { return (store, action, next) { try { final HdWallet hdWallet = store.state.keychainState.hdWallet!; final Map> networkAddresses = {}; store.state.keychainState.networks.forEach((networkName, network) { - networkAddresses[networkName] = [keychainRepo.generateAddress(hdWallet, networkId: network.networkId)]; + networkAddresses[networkName] = [ + keychainRepo.generateAddress(hdWallet, networkId: network.networkId) + ]; }); next(UpdateNetworksWithAddressesAction(networkAddresses)); } catch (e) { @@ -35,7 +51,11 @@ void Function(Store store, GenerateInitialAddressesAction action, Next /// On receiving [GenerateAddressAction] action, generates a new address and dispatches [AddAddressAction] /// to add the generated addresses under the current network. -void Function(Store store, GenerateAddressAction action, NextDispatcher next) _onGenerateAddress( +void Function( + Store store, + GenerateAddressAction action, + NextDispatcher next, +) _onGenerateAddress( KeychainRepository keychainRepo, ) { return (store, action, next) async { @@ -62,13 +82,18 @@ void Function(Store store, GenerateAddressAction action, NextDispatche /// Responds to [RefreshBalancesAction] by updating balances for the addresses in the wallet under the current network. /// /// If no addresses exist, a new address is generated. -void Function(Store store, RefreshBalancesAction action, NextDispatcher next) _onRefereshBalances( +void Function( + Store store, + RefreshBalancesAction action, + NextDispatcher next, +) _onRefereshBalances( KeychainRepository keychainRepo, ) { return (store, action, next) async { try { // get addresses in the wallet - final List currentAddresses = action.network.addresses.map((addr) => addr.toplAddress).toList(); + final List currentAddresses = + action.network.addresses.map((addr) => addr.toplAddress).toList(); // if no address in the wallet, generate a new address if (currentAddresses.isEmpty) { store.dispatch(GenerateAddressAction(0, network: action.network)); @@ -79,9 +104,12 @@ void Function(Store store, RefreshBalancesAction action, NextDispatche currentAddresses, ); // map addresses and balances - final Map addrBalanceMap = {for (Balance bal in balances) bal.address: bal}; + final Map addrBalanceMap = { + for (Balance bal in balances) bal.address: bal + }; // addresses with updated balances - final List addressesWithUpdatedBalances = action.network.addresses.map( + final List addressesWithUpdatedBalances = + action.network.addresses.map( (addr) { return addr.copyWith( balance: addrBalanceMap[addr.toplAddress.toBase58()], diff --git a/lib/middlewares/login_middleware.dart b/lib/middlewares/login_middleware.dart index b54af325..ecffdb34 100644 --- a/lib/middlewares/login_middleware.dart +++ b/lib/middlewares/login_middleware.dart @@ -1,9 +1,12 @@ +// Dart imports: import 'dart:convert'; import 'dart:typed_data'; +// Package imports: import 'package:bip_topl/bip_topl.dart'; - import 'package:redux/redux.dart'; + +// Project imports: import 'package:ribn/actions/keychain_actions.dart'; import 'package:ribn/actions/login_actions.dart'; import 'package:ribn/constants/rules.dart'; @@ -12,23 +15,34 @@ import 'package:ribn/platform/platform.dart'; import 'package:ribn/repositories/login_repository.dart'; import 'package:ribn/utils.dart'; -List> createLoginMiddleware(LoginRepository loginRepository) { +List> createLoginMiddleware( + LoginRepository loginRepository, +) { return >[ - TypedMiddleware(_verifyPassword(loginRepository)), + TypedMiddleware( + _verifyPassword(loginRepository), + ), ]; } /// Verifies that the wallet password is correct by attempting to decrypt the keystore. -void Function(Store store, AttemptLoginAction action, NextDispatcher next) _verifyPassword( +void Function( + Store store, + AttemptLoginAction action, + NextDispatcher next, +) _verifyPassword( LoginRepository loginRepository, ) { return (store, action, next) async { try { - final AppViews currAppView = await PlatformUtils.instance.getCurrentAppView(); + final AppViews currAppView = + await PlatformUtils.instance.getCurrentAppView(); // create isolate/worker to avoid hanging the UI final List result = jsonDecode( await PlatformWorkerRunner.instance.runWorker( - workerScript: currAppView == AppViews.webDebug ? '/web/workers/login_worker.js' : '/workers/login_worker.js', + workerScript: currAppView == AppViews.webDebug + ? '/web/workers/login_worker.js' + : '/workers/login_worker.js', function: loginRepository.decryptKeyStore, params: { 'keyStoreJson': store.state.keychainState.keyStoreJson, @@ -36,10 +50,12 @@ void Function(Store store, AttemptLoginAction action, NextDispatcher n }, ), ); - final Uint8List toplExtendedPrvKeyUint8List = uint8ListFromDynamic(result); + final Uint8List toplExtendedPrvKeyUint8List = + uint8ListFromDynamic(result); // if extension: key is temporarily stored in `chrome.storage.session` & session alarm created // if mobile: key is persisted securely in secure storage - if (currAppView == AppViews.extension || currAppView == AppViews.extensionTab) { + if (currAppView == AppViews.extension || + currAppView == AppViews.extensionTab) { await PlatformLocalStorage.instance.saveKeyInSessionStorage( Base58Encoder.instance.encode(toplExtendedPrvKeyUint8List), ); @@ -50,11 +66,14 @@ void Function(Store store, AttemptLoginAction action, NextDispatcher n ); } // initialize hd wallet on success - next(InitializeHDWalletAction(toplExtendedPrivateKey: toplExtendedPrvKeyUint8List)); + next( + InitializeHDWalletAction( + toplExtendedPrivateKey: toplExtendedPrvKeyUint8List, + ), + ); //Generate Initial addresses for every network next(GenerateInitialAddressesAction()); - action.completer.complete(true); } catch (e) { action.completer.complete(false); diff --git a/lib/middlewares/misc_middleware.dart b/lib/middlewares/misc_middleware.dart index fedb80ad..015fbe92 100644 --- a/lib/middlewares/misc_middleware.dart +++ b/lib/middlewares/misc_middleware.dart @@ -1,5 +1,10 @@ +// Flutter imports: import 'package:flutter/foundation.dart'; + +// Package imports: import 'package:redux/redux.dart'; + +// Project imports: import 'package:ribn/actions/misc_actions.dart'; import 'package:ribn/constants/keys.dart'; import 'package:ribn/constants/routes.dart'; @@ -8,14 +13,23 @@ import 'package:ribn/platform/platform.dart'; import 'package:ribn/repositories/login_repository.dart'; import 'package:ribn/repositories/misc_repository.dart'; -List> createMiscMiddleware(LoginRepository loginRep, MiscRepository miscRepo) { +List> createMiscMiddleware( + LoginRepository loginRep, + MiscRepository miscRepo, +) { return >[ TypedMiddleware(_onDeleteWallet(loginRep)), - TypedMiddleware(_onDownloadAsFile(miscRepo)), + TypedMiddleware( + _onDownloadAsFile(miscRepo), + ), ]; } -void Function(Store store, DeleteWalletAction action, NextDispatcher next) _onDeleteWallet( +void Function( + Store store, + DeleteWalletAction action, + NextDispatcher next, +) _onDeleteWallet( LoginRepository loginRepo, ) { return (store, action, next) async { @@ -35,7 +49,8 @@ void Function(Store store, DeleteWalletAction action, NextDispatcher n PlatformUtils.instance.closeWindow(); } else { await PlatformLocalStorage.instance.clearSecureStorage(); - await Keys.navigatorKey.currentState?.pushNamedAndRemoveUntil(Routes.welcome, (_) => false); + await Keys.navigatorKey.currentState + ?.pushNamedAndRemoveUntil(Routes.welcome, (_) => false); } } catch (e) { // Complete with false to indicate error, i.e. incorrect password was entered @@ -44,7 +59,11 @@ void Function(Store store, DeleteWalletAction action, NextDispatcher n }; } -void Function(Store store, DownloadAsFileAction action, NextDispatcher next) _onDownloadAsFile( +void Function( + Store store, + DownloadAsFileAction action, + NextDispatcher next, +) _onDownloadAsFile( MiscRepository miscRepo, ) { return (store, action, next) { diff --git a/lib/middlewares/onboarding_middleware.dart b/lib/middlewares/onboarding_middleware.dart index c2a56ece..05c5ac25 100644 --- a/lib/middlewares/onboarding_middleware.dart +++ b/lib/middlewares/onboarding_middleware.dart @@ -1,8 +1,12 @@ +// Dart imports: import 'dart:convert'; import 'dart:typed_data'; +// Package imports: import 'package:bip_topl/bip_topl.dart'; import 'package:redux/redux.dart'; + +// Project imports: import 'package:ribn/actions/keychain_actions.dart'; import 'package:ribn/actions/misc_actions.dart'; import 'package:ribn/actions/onboarding_actions.dart'; @@ -13,15 +17,25 @@ import 'package:ribn/platform/platform.dart'; import 'package:ribn/repositories/onboarding_repository.dart'; import 'package:ribn/utils.dart'; -List> createOnboardingMiddleware(OnboardingRespository onboardingRespository) { +List> createOnboardingMiddleware( + OnboardingRespository onboardingRespository, +) { return >[ - TypedMiddleware(_generateMnemonic(onboardingRespository)), - TypedMiddleware(_createPassword(onboardingRespository)), + TypedMiddleware( + _generateMnemonic(onboardingRespository), + ), + TypedMiddleware( + _createPassword(onboardingRespository), + ), ]; } /// Generates mnemonic for the user and redirects to [Routes.onboardingSteps] -void Function(Store store, GenerateMnemonicAction action, NextDispatcher next) _generateMnemonic( +void Function( + Store store, + GenerateMnemonicAction action, + NextDispatcher next, +) _generateMnemonic( OnboardingRespository onboardingRespository, ) { return (store, action, next) async { @@ -35,12 +49,17 @@ void Function(Store store, GenerateMnemonicAction action, NextDispatch } /// Generates a [KeyStore] with the provided password and initializes the HdWallet -void Function(Store store, CreatePasswordAction action, NextDispatcher next) _createPassword( +void Function( + Store store, + CreatePasswordAction action, + NextDispatcher next, +) _createPassword( OnboardingRespository onboardingRespository, ) { return (store, action, next) async { try { - final AppViews currAppView = await PlatformUtils.instance.getCurrentAppView(); + final AppViews currAppView = + await PlatformUtils.instance.getCurrentAppView(); // create isolate/worker to avoid hanging the UI final Map results = jsonDecode( await PlatformWorkerRunner.instance.runWorker( @@ -54,10 +73,12 @@ void Function(Store store, CreatePasswordAction action, NextDispatcher }, ), ); - final Uint8List toplExtendedPrvKeyUint8List = uint8ListFromDynamic(results['toplExtendedPrvKeyUint8List']); + final Uint8List toplExtendedPrvKeyUint8List = + uint8ListFromDynamic(results['toplExtendedPrvKeyUint8List']); // if extension: key is temporarily stored in `chrome.storage.session` & session alarm created // if mobile: key is persisted securely in secure storage - if (currAppView == AppViews.extension || currAppView == AppViews.extensionTab) { + if (currAppView == AppViews.extension || + currAppView == AppViews.extensionTab) { await PlatformLocalStorage.instance.saveKeyInSessionStorage( Base58Encoder.instance.encode(toplExtendedPrvKeyUint8List), ); diff --git a/lib/middlewares/restore_wallet_middleware.dart b/lib/middlewares/restore_wallet_middleware.dart index 9e1ccd17..0ea893d2 100644 --- a/lib/middlewares/restore_wallet_middleware.dart +++ b/lib/middlewares/restore_wallet_middleware.dart @@ -1,7 +1,11 @@ +// Dart imports: import 'dart:convert'; import 'dart:typed_data'; +// Package imports: import 'package:redux/redux.dart'; + +// Project imports: import 'package:ribn/actions/misc_actions.dart'; import 'package:ribn/actions/restore_wallet_actions.dart'; import 'package:ribn/constants/rules.dart'; @@ -17,8 +21,12 @@ List> createRestorewalletMiddleware( LoginRepository loginRepo, ) { return >[ - TypedMiddleware(_restoreWalletWithMnemonic(onboardingRepo)), - TypedMiddleware(_restoreWalletWithToplKey(loginRepo)), + TypedMiddleware( + _restoreWalletWithMnemonic(onboardingRepo), + ), + TypedMiddleware( + _restoreWalletWithToplKey(loginRepo), + ), ]; } @@ -26,11 +34,15 @@ List> createRestorewalletMiddleware( /// /// Uses the [action.mnemonic] and [action.password] to generate a keystore. /// Dispatches [SuccessfullyRestoredWalletAction] if successfully generated keystore, otherwise [FailedToRestoreWalletAction]. -void Function(Store store, RestoreWalletWithMnemonicAction action, NextDispatcher next) - _restoreWalletWithMnemonic(OnboardingRespository onboardingRepo) { +void Function( + Store store, + RestoreWalletWithMnemonicAction action, + NextDispatcher next, +) _restoreWalletWithMnemonic(OnboardingRespository onboardingRepo) { return (store, action, next) async { try { - final AppViews currAppView = await PlatformUtils.instance.getCurrentAppView(); + final AppViews currAppView = + await PlatformUtils.instance.getCurrentAppView(); final Map results = jsonDecode( await PlatformWorkerRunner.instance.runWorker( workerScript: currAppView == AppViews.webDebug @@ -46,7 +58,8 @@ void Function(Store store, RestoreWalletWithMnemonicAction action, Nex next( SuccessfullyRestoredWalletAction( keyStoreJson: results['keyStoreJson'], - toplExtendedPrivateKey: uint8ListFromDynamic(results['toplExtendedPrvKeyUint8List']), + toplExtendedPrivateKey: + uint8ListFromDynamic(results['toplExtendedPrvKeyUint8List']), ), ); } catch (e) { @@ -59,8 +72,11 @@ void Function(Store store, RestoreWalletWithMnemonicAction action, Nex /// /// Attempts to decrypt [action.toplKeyStoreJson] using [action.password]. /// Dispatches [SuccessfullyRestoredWalletAction] upon success, otherwise [FailedToRestoreWalletAction]. -void Function(Store store, RestoreWalletWithToplKeyAction action, NextDispatcher next) - _restoreWalletWithToplKey(LoginRepository loginRepo) { +void Function( + Store store, + RestoreWalletWithToplKeyAction action, + NextDispatcher next, +) _restoreWalletWithToplKey(LoginRepository loginRepo) { return (store, action, next) async { try { final Uint8List toplExtendedPrvKeyUint8List = loginRepo.decryptKeyStore({ diff --git a/lib/middlewares/transaction_middleware.dart b/lib/middlewares/transaction_middleware.dart index 46824963..c9589bd3 100644 --- a/lib/middlewares/transaction_middleware.dart +++ b/lib/middlewares/transaction_middleware.dart @@ -1,6 +1,11 @@ +// Dart imports: import 'dart:typed_data'; + +// Package imports: import 'package:brambldart/brambldart.dart'; import 'package:redux/redux.dart'; + +// Project imports: import 'package:ribn/actions/internal_message_actions.dart'; import 'package:ribn/actions/transaction_actions.dart'; import 'package:ribn/actions/user_details_actions.dart'; @@ -20,10 +25,16 @@ List> createTransactionMiddleware( KeychainRepository keychainRepo, ) { return >[ - TypedMiddleware(_initiateTx(transactionRepo, keychainRepo)), + TypedMiddleware( + _initiateTx(transactionRepo, keychainRepo), + ), TypedMiddleware(_createRawTx(transactionRepo)), - TypedMiddleware(_signAndBroadcastTx(transactionRepo, keychainRepo)), - TypedMiddleware(_signExternalTx(transactionRepo, keychainRepo)), + TypedMiddleware( + _signAndBroadcastTx(transactionRepo, keychainRepo), + ), + TypedMiddleware( + _signExternalTx(transactionRepo, keychainRepo), + ), ]; } @@ -31,14 +42,19 @@ List> createTransactionMiddleware( /// /// Updates the [TransferDetails] with some defaults like the sender, change, and consolidation addresses, as well as /// the current network, before dispatching [CreateRawTxAction]. -void Function(Store store, InitiateTxAction action, NextDispatcher next) _initiateTx( +void Function( + Store store, + InitiateTxAction action, + NextDispatcher next, +) _initiateTx( TransactionRepository transactionRepo, KeychainRepository keychainRepo, ) { return (store, action, next) async { try { /// The sender defaults to the first address in the list of locally stored addresses - final RibnAddress sender = store.state.keychainState.currentNetwork.addresses.first; + final RibnAddress sender = + store.state.keychainState.currentNetwork.addresses.first; final RibnNetwork currNetwork = store.state.keychainState.currentNetwork; final TransferDetails transferDetails = action.transferDetails.copyWith( senders: [sender], @@ -56,7 +72,11 @@ void Function(Store store, InitiateTxAction action, NextDispatcher nex /// Creates the rawTx and navigates to the [Routes.txReview] page. /// /// Also dispatches [ToggleLoadingRawTxAction] to stop the loading indicator. -void Function(Store store, CreateRawTxAction action, NextDispatcher next) _createRawTx( +void Function( + Store store, + CreateRawTxAction action, + NextDispatcher next, +) _createRawTx( TransactionRepository transactionRepo, ) { return (store, action, next) async { @@ -65,7 +85,8 @@ void Function(Store store, CreateRawTxAction action, NextDispatcher ne store.state.keychainState.currentNetwork.client!, action.transferDetails, ); - final TransactionReceipt transactionReceipt = result['rawTx'] as TransactionReceipt; + final TransactionReceipt transactionReceipt = + result['rawTx'] as TransactionReceipt; final Uint8List messageToSign = result['messageToSign'] as Uint8List; final TransferDetails transferDetails = action.transferDetails.copyWith( transactionReceipt: transactionReceipt, @@ -82,7 +103,11 @@ void Function(Store store, CreateRawTxAction action, NextDispatcher ne /// /// Signs and broadcasts the transactions, updates the [TransferDetails] with the txId, /// and navigates to the confirmation page. -void Function(Store store, SignAndBroadcastTxAction action, NextDispatcher next) _signAndBroadcastTx( +void Function( + Store store, + SignAndBroadcastTxAction action, + NextDispatcher next, +) _signAndBroadcastTx( TransactionRepository transactionRepo, KeychainRepository keychainRepo, ) { @@ -98,7 +123,8 @@ void Function(Store store, SignAndBroadcastTxAction action, NextDispat action.transferDetails.transactionReceipt!, action.transferDetails.messageToSign!, ); - final TransferDetails transferDetails = action.transferDetails.copyWith(transactionId: transactionId); + final TransferDetails transferDetails = + action.transferDetails.copyWith(transactionId: transactionId); /// Update the locally stored asset details if minting a new asset if (transferDetails.transferType == TransferType.mintingAsset) { @@ -118,26 +144,36 @@ void Function(Store store, SignAndBroadcastTxAction action, NextDispat }; } -void Function(Store store, SignExternalTxAction action, NextDispatcher next) _signExternalTx( +void Function( + Store store, + SignExternalTxAction action, + NextDispatcher next, +) _signExternalTx( TransactionRepository transactionRepo, KeychainRepository keychainRepo, ) { return (store, action, next) async { try { - final Map transferDetails = {}; - transferDetails['messageToSign'] = - Base58Data.validated(action.pendingRequest.data!['messageToSign'] as String).value; + transferDetails['messageToSign'] = Base58Data.validated( + action.pendingRequest.data!['messageToSign'] as String, + ).value; - final TransactionReceipt transactionReceipt = TransactionReceipt.fromJson(action.pendingRequest.data!['rawTx']); + final TransactionReceipt transactionReceipt = + TransactionReceipt.fromJson(action.pendingRequest.data!['rawTx']); transferDetails['rawTx'] = transactionReceipt; - final List rawTxSenders = transactionReceipt.from!.map((e) => e.senderAddress.toBase58()).toList(); + final List rawTxSenders = transactionReceipt.from! + .map((e) => e.senderAddress.toBase58()) + .toList(); - final List sendersInWallet = List.from(store.state.keychainState.currentNetwork.addresses) - ..retainWhere((addr) => rawTxSenders.contains(addr.toplAddress.toBase58())); + final List sendersInWallet = + List.from(store.state.keychainState.currentNetwork.addresses) + ..retainWhere( + (addr) => rawTxSenders.contains(addr.toplAddress.toBase58()), + ); if (sendersInWallet.isEmpty) { final InternalMessage response = InternalMessage( @@ -149,7 +185,6 @@ void Function(Store store, SignExternalTxAction action, NextDispatcher origin: action.pendingRequest.origin, ); next(SendInternalMsgAction(response)); - } else { final List credentials = keychainRepo.getCredentials( store.state.keychainState.hdWallet!, diff --git a/lib/models/app_state.dart b/lib/models/app_state.dart index 654e9fde..aed21b69 100644 --- a/lib/models/app_state.dart +++ b/lib/models/app_state.dart @@ -1,6 +1,10 @@ +// Dart imports: import 'dart:convert'; +// Flutter imports: import 'package:flutter/material.dart'; + +// Project imports: import 'package:ribn/models/internal_message.dart'; import 'package:ribn/models/keychain_state.dart'; import 'package:ribn/models/login_state.dart'; @@ -123,8 +127,7 @@ class AppState { String toJson() => json.encode(toMap()); - factory AppState.fromJson(String source) => - AppState.fromMap(json.decode(source)); + factory AppState.fromJson(String source) => AppState.fromMap(json.decode(source)); @override String toString() { diff --git a/lib/models/asset_details.dart b/lib/models/asset_details.dart index 396245d2..6f291661 100644 --- a/lib/models/asset_details.dart +++ b/lib/models/asset_details.dart @@ -1,3 +1,4 @@ +// Dart imports: import 'dart:convert'; /// User defined asset details. @@ -47,16 +48,21 @@ class AssetDetails { String toJson() => json.encode(toMap()); - factory AssetDetails.fromJson(String source) => AssetDetails.fromMap(json.decode(source)); + factory AssetDetails.fromJson(String source) => + AssetDetails.fromMap(json.decode(source)); @override - String toString() => 'AssetDetails(longName: $longName, icon: $icon, unit: $unit)'; + String toString() => + 'AssetDetails(longName: $longName, icon: $icon, unit: $unit)'; @override bool operator ==(Object other) { if (identical(this, other)) return true; - return other is AssetDetails && other.longName == longName && other.icon == icon && other.unit == unit; + return other is AssetDetails && + other.longName == longName && + other.icon == icon && + other.unit == unit; } @override diff --git a/lib/models/internal_message.dart b/lib/models/internal_message.dart index 14b738d3..e00b7bb8 100644 --- a/lib/models/internal_message.dart +++ b/lib/models/internal_message.dart @@ -1,5 +1,7 @@ +// Dart imports: import 'dart:convert'; +// Flutter imports: import 'package:flutter/foundation.dart'; class InternalMessage { @@ -52,7 +54,9 @@ class InternalMessage { factory InternalMessage.fromMap(Map map) { return InternalMessage( method: map['method'] as String, - data: map['data'] != null ? Map.from(map['data'] as Map) : null, + data: map['data'] != null + ? Map.from(map['data'] as Map) + : null, target: map['target'] as String, sender: map['sender'] as String, id: map['id'] as String, @@ -85,7 +89,12 @@ class InternalMessage { @override int get hashCode { - return method.hashCode ^ data.hashCode ^ target.hashCode ^ sender.hashCode ^ id.hashCode ^ origin.hashCode; + return method.hashCode ^ + data.hashCode ^ + target.hashCode ^ + sender.hashCode ^ + id.hashCode ^ + origin.hashCode; } } diff --git a/lib/models/keychain_state.dart b/lib/models/keychain_state.dart index 1e52556d..d47a0b5b 100644 --- a/lib/models/keychain_state.dart +++ b/lib/models/keychain_state.dart @@ -1,9 +1,14 @@ +// Dart imports: import 'dart:convert'; +// Flutter imports: +import 'package:flutter/foundation.dart'; + +// Package imports: import 'package:bip_topl/bip_topl.dart' as bip_topl; import 'package:brambldart/credentials.dart'; -import 'package:flutter/foundation.dart'; +// Project imports: import 'package:ribn/constants/network_utils.dart'; import 'package:ribn/constants/rules.dart'; import 'package:ribn/constants/test_data.dart'; @@ -104,7 +109,10 @@ class KeychainState { @override int get hashCode { - return keyStoreJson.hashCode ^ hdWallet.hashCode ^ networks.hashCode ^ currentNetworkName.hashCode; + return keyStoreJson.hashCode ^ + hdWallet.hashCode ^ + networks.hashCode ^ + currentNetworkName.hashCode; } KeychainState copyWith({ diff --git a/lib/models/login_state.dart b/lib/models/login_state.dart index dd73ac60..414c9176 100644 --- a/lib/models/login_state.dart +++ b/lib/models/login_state.dart @@ -1,3 +1,4 @@ +// Dart imports: import 'dart:convert'; class LoginState { @@ -40,16 +41,20 @@ class LoginState { String toJson() => json.encode(toMap()); - factory LoginState.fromJson(String source) => LoginState.fromMap(json.decode(source)); + factory LoginState.fromJson(String source) => + LoginState.fromMap(json.decode(source)); @override - String toString() => 'LoginState(isLoggedIn: $isLoggedIn, lastLogin: $lastLogin)'; + String toString() => + 'LoginState(isLoggedIn: $isLoggedIn, lastLogin: $lastLogin)'; @override bool operator ==(Object other) { if (identical(this, other)) return true; - return other is LoginState && other.isLoggedIn == isLoggedIn && other.lastLogin == lastLogin; + return other is LoginState && + other.isLoggedIn == isLoggedIn && + other.lastLogin == lastLogin; } @override diff --git a/lib/models/onboarding_state.dart b/lib/models/onboarding_state.dart index 24ad7bb6..a9003815 100644 --- a/lib/models/onboarding_state.dart +++ b/lib/models/onboarding_state.dart @@ -1,6 +1,10 @@ +// Dart imports: import 'dart:convert'; +// Flutter imports: import 'package:flutter/foundation.dart'; + +// Project imports: import 'package:ribn/constants/test_data.dart'; @immutable @@ -70,5 +74,8 @@ class OnboardingState { } @override - int get hashCode => mnemonic.hashCode ^ shuffledMnemonic.hashCode ^ userSelectedIndices.hashCode; + int get hashCode => + mnemonic.hashCode ^ + shuffledMnemonic.hashCode ^ + userSelectedIndices.hashCode; } diff --git a/lib/models/raw_tx.dart b/lib/models/raw_tx.dart index 795d7ee2..4211e42d 100644 --- a/lib/models/raw_tx.dart +++ b/lib/models/raw_tx.dart @@ -2,6 +2,7 @@ // // final rawTx = rawTxFromJson(jsonString); +// Dart imports: import 'dart:convert'; RawTx rawTxFromJson(String str) => RawTx.fromJson(json.decode(str)); diff --git a/lib/models/ribn_address.dart b/lib/models/ribn_address.dart index 6bc6bc02..9755e241 100644 --- a/lib/models/ribn_address.dart +++ b/lib/models/ribn_address.dart @@ -1,8 +1,13 @@ +// Dart imports: import 'dart:convert'; -import 'package:brambldart/brambldart.dart'; +// Flutter imports: import 'package:flutter/material.dart'; +// Package imports: +import 'package:brambldart/brambldart.dart'; + +// Project imports: import 'package:ribn/constants/rules.dart'; @immutable diff --git a/lib/models/ribn_network.dart b/lib/models/ribn_network.dart index 98dc1692..eabdb3cc 100644 --- a/lib/models/ribn_network.dart +++ b/lib/models/ribn_network.dart @@ -1,8 +1,13 @@ +// Dart imports: import 'dart:convert'; -import 'package:brambldart/brambldart.dart'; +// Flutter imports: import 'package:flutter/foundation.dart'; +// Package imports: +import 'package:brambldart/brambldart.dart'; + +// Project imports: import 'package:ribn/constants/network_utils.dart'; import 'package:ribn/constants/rules.dart'; import 'package:ribn/models/ribn_address.dart'; @@ -36,7 +41,10 @@ class RibnNetwork { this.lastCheckedTimestamp = -1, }); - factory RibnNetwork.initial({required int networkId, required String networkName}) { + factory RibnNetwork.initial({ + required int networkId, + required String networkName, + }) { return RibnNetwork( networkName: networkName, networkId: networkId, @@ -49,14 +57,14 @@ class RibnNetwork { /// Initializes [RibnNetwork] for [NetworkUtils.valhalla], [NetworkUtils.toplNet], and [NetworkUtils.private]. static Map initializeToplNetworks() { return { - NetworkUtils.valhalla: RibnNetwork.initial( - networkId: NetworkUtils.valhallaId, - networkName: NetworkUtils.valhalla, - ), NetworkUtils.toplNet: RibnNetwork.initial( networkId: NetworkUtils.toplNetId, networkName: NetworkUtils.toplNet, ), + NetworkUtils.valhalla: RibnNetwork.initial( + networkId: NetworkUtils.valhallaId, + networkName: NetworkUtils.valhalla, + ), NetworkUtils.private: RibnNetwork.initial( networkId: NetworkUtils.privateId, networkName: NetworkUtils.private, @@ -71,7 +79,10 @@ class RibnNetwork { } int getNextExternalAddressIndex() { - return addresses.lastIndexWhere((addr) => addr.changeIndex == Rules.defaultChangeIndex) + 1; + return addresses.lastIndexWhere( + (addr) => addr.changeIndex == Rules.defaultChangeIndex, + ) + + 1; } int getNextInternalAddressIndex() { @@ -90,7 +101,10 @@ class RibnNetwork { myAssets.update( asset.assetCode.serialize(), (AssetAmount currAsset) { - return AssetAmount(quantity: currAsset.quantity + assetQuantity, assetCode: asset.assetCode); + return AssetAmount( + quantity: currAsset.quantity + assetQuantity, + assetCode: asset.assetCode, + ); }, ifAbsent: () => asset, ); @@ -106,7 +120,10 @@ class RibnNetwork { /// Returns the list of all assets issued/minted by this wallet. List getAssetsIssuedByWallet() { return getAllAssetsInWallet() - .where((AssetAmount asset) => asset.assetCode.issuer.toBase58() == myWalletAddress?.toplAddress.toBase58()) + .where( + (AssetAmount asset) => + asset.assetCode.issuer.toBase58() == myWalletAddress?.toplAddress.toBase58(), + ) .toList(); } diff --git a/lib/models/transfer_details.dart b/lib/models/transfer_details.dart index a70262af..6787a019 100644 --- a/lib/models/transfer_details.dart +++ b/lib/models/transfer_details.dart @@ -1,6 +1,12 @@ -import 'dart:typed_data'; -import 'package:brambldart/brambldart.dart'; +// Dart imports: + +// Flutter imports: import 'package:flutter/foundation.dart'; + +// Package imports: +import 'package:brambldart/brambldart.dart'; + +// Project imports: import 'package:ribn/constants/rules.dart'; import 'package:ribn/models/asset_details.dart'; import 'package:ribn/models/ribn_address.dart'; diff --git a/lib/models/user_details_state.dart b/lib/models/user_details_state.dart index 6897a2ac..06281573 100644 --- a/lib/models/user_details_state.dart +++ b/lib/models/user_details_state.dart @@ -1,8 +1,12 @@ // ignore_for_file: public_member_api_docs, sort_constructors_first + +// Dart imports: import 'dart:convert'; +// Flutter imports: import 'package:flutter/foundation.dart'; +// Project imports: import 'package:ribn/models/asset_details.dart'; /// This class holds custom details about the wallet user. @@ -37,7 +41,8 @@ class UserDetailsState { Map toMap() { return { - 'assetDetails': assetDetails.map((key, value) => MapEntry(key, value.toMap())), + 'assetDetails': + assetDetails.map((key, value) => MapEntry(key, value.toMap())), 'isBiometricsEnabled': isBiometricsEnabled, }; } @@ -58,16 +63,19 @@ class UserDetailsState { String toJson() => json.encode(toMap()); - factory UserDetailsState.fromJson(String source) => UserDetailsState.fromMap(json.decode(source)); + factory UserDetailsState.fromJson(String source) => + UserDetailsState.fromMap(json.decode(source)); @override - String toString() => 'UserDetailsState(assetDetails: $assetDetails, isBiometricsEnabled: $isBiometricsEnabled)'; + String toString() => + 'UserDetailsState(assetDetails: $assetDetails, isBiometricsEnabled: $isBiometricsEnabled)'; @override bool operator ==(covariant UserDetailsState other) { if (identical(this, other)) return true; - return mapEquals(other.assetDetails, assetDetails) && other.isBiometricsEnabled == isBiometricsEnabled; + return mapEquals(other.assetDetails, assetDetails) && + other.isBiometricsEnabled == isBiometricsEnabled; } @override diff --git a/lib/platform/interfaces.dart b/lib/platform/interfaces.dart index 28874674..e7c3632b 100644 --- a/lib/platform/interfaces.dart +++ b/lib/platform/interfaces.dart @@ -1,3 +1,4 @@ +// Project imports: import 'package:ribn/constants/rules.dart'; abstract class IPlatformUtils { @@ -42,7 +43,6 @@ abstract class IWallet { String getAddress(); } - abstract class IMessenger { /// Send [msg] to the background script. void sendMsg(String msg); @@ -68,7 +68,6 @@ abstract class IPlatformLocalStorage { /// [key] should be the Base58Encoded Topl Main Key. Future saveKeyInSessionStorage(String key); - /// Mobile-only /// /// Save [key] in seucre storage for future retrievals. diff --git a/lib/platform/mobile/genus_config.dart b/lib/platform/mobile/genus_config.dart index 4ef180a8..05ce8aa0 100644 --- a/lib/platform/mobile/genus_config.dart +++ b/lib/platform/mobile/genus_config.dart @@ -1,4 +1,7 @@ +// Package imports: import 'package:grpc/grpc.dart'; + +// Project imports: import 'package:ribn/constants/network_utils.dart'; class PlatformGenusConfig { diff --git a/lib/platform/mobile/messenger.dart b/lib/platform/mobile/messenger.dart index 75ae0298..5df131b9 100644 --- a/lib/platform/mobile/messenger.dart +++ b/lib/platform/mobile/messenger.dart @@ -1,3 +1,4 @@ +// Project imports: import 'package:ribn/platform/interfaces.dart'; class Messenger implements IMessenger { diff --git a/lib/platform/mobile/storage.dart b/lib/platform/mobile/storage.dart index 2cc3e580..f5b42c5a 100644 --- a/lib/platform/mobile/storage.dart +++ b/lib/platform/mobile/storage.dart @@ -1,7 +1,11 @@ +// Dart imports: import 'dart:io'; +// Package imports: import 'package:flutter_secure_storage/flutter_secure_storage.dart'; import 'package:path_provider/path_provider.dart'; + +// Project imports: import 'package:ribn/constants/keys.dart'; import 'package:ribn/platform/interfaces.dart'; @@ -21,13 +25,17 @@ class PlatformLocalStorage implements IPlatformLocalStorage { @override Future getState() async { - final File file = File('${(await getApplicationDocumentsDirectory()).path}/app_state.json'); + final File file = File( + '${(await getApplicationDocumentsDirectory()).path}/app_state.json', + ); return await file.readAsString(); } @override Future saveState(String data) async { - final file = File('${(await getApplicationDocumentsDirectory()).path}/app_state.json'); + final file = File( + '${(await getApplicationDocumentsDirectory()).path}/app_state.json', + ); await file.writeAsString(data, flush: true); } @@ -75,5 +83,6 @@ class PlatformLocalStorage implements IPlatformLocalStorage { /// Web-only @override - Future saveKeyInSessionStorage(String key) => throw UnimplementedError(); + Future saveKeyInSessionStorage(String key) => + throw UnimplementedError(); } diff --git a/lib/platform/mobile/utils.dart b/lib/platform/mobile/utils.dart index 50aac62d..a1c9b754 100644 --- a/lib/platform/mobile/utils.dart +++ b/lib/platform/mobile/utils.dart @@ -1,3 +1,4 @@ +// Project imports: import 'package:ribn/constants/rules.dart'; import 'package:ribn/platform/interfaces.dart'; @@ -50,6 +51,7 @@ class PlatformUtils implements IPlatformUtils { Future getDAppList() { throw UnimplementedError(); } + @override Future consoleLog(dynamic item) { throw UnimplementedError(); @@ -59,5 +61,4 @@ class PlatformUtils implements IPlatformUtils { Future convertToFuture(Object jsPromise) { throw UnimplementedError(); } - } diff --git a/lib/platform/mobile/worker_runner.dart b/lib/platform/mobile/worker_runner.dart index 8eec1d6d..fabfcd31 100644 --- a/lib/platform/mobile/worker_runner.dart +++ b/lib/platform/mobile/worker_runner.dart @@ -1,6 +1,10 @@ +// Dart imports: import 'dart:convert'; +// Flutter imports: import 'package:flutter/foundation.dart'; + +// Project imports: import 'package:ribn/constants/keys.dart'; import 'package:ribn/platform/interfaces.dart'; @@ -19,7 +23,9 @@ class PlatformWorkerRunner implements IPlatformWorkerRunner { final String? workerScript, Map params = const {}, }) async { - if (function == null) throw Exception('Dart isolate requires `function` to not be null'); + if (function == null) { + throw Exception('Dart isolate requires `function` to not be null'); + } if (Keys.isTestingEnvironment) return jsonEncode(function(params)); try { return jsonEncode(await compute(function, params)); diff --git a/lib/platform/web/genus_config.dart b/lib/platform/web/genus_config.dart index 712e5346..a29a1891 100644 --- a/lib/platform/web/genus_config.dart +++ b/lib/platform/web/genus_config.dart @@ -1,7 +1,11 @@ +// Package imports: import 'package:grpc/grpc_web.dart'; -import 'package:ribn/constants/network_utils.dart'; +// Project imports: +import 'package:ribn/constants/network_utils.dart'; class PlatformGenusConfig { - static GrpcWebClientChannel channel = GrpcWebClientChannel.xhr(Uri.parse('http://${NetworkUtils.privateIP}:8099')); + static GrpcWebClientChannel channel = GrpcWebClientChannel.xhr( + Uri.parse('http://${NetworkUtils.privateIP}:8099'), + ); } diff --git a/lib/platform/web/messenger.dart b/lib/platform/web/messenger.dart index 57c57367..5b1885ed 100644 --- a/lib/platform/web/messenger.dart +++ b/lib/platform/web/messenger.dart @@ -1,7 +1,10 @@ @JS('ribn_messenger') library messenger; +// Package imports: import 'package:js/js.dart'; + +// Project imports: import 'package:ribn/platform/interfaces.dart'; @JS() @@ -22,7 +25,8 @@ class Messenger implements IMessenger { void connect() => openConnection(); @override - void initMsgListener(Function msgHandler) => addPortMessageListener(allowInterop(msgHandler)); + void initMsgListener(Function msgHandler) => + addPortMessageListener(allowInterop(msgHandler)); @override void sendMsg(String msg) => sendPortMessage(msg); diff --git a/lib/platform/web/platform_web.dart b/lib/platform/web/platform_web.dart index ee1bdfce..17eef76b 100644 --- a/lib/platform/web/platform_web.dart +++ b/lib/platform/web/platform_web.dart @@ -3,4 +3,4 @@ export 'package:ribn/platform/web/messenger.dart'; export 'package:ribn/platform/web/storage.dart'; export 'package:ribn/platform/web/utils.dart'; export 'package:ribn/platform/web/wallet.dart'; -export 'package:ribn/platform/web/worker_runner.dart'; \ No newline at end of file +export 'package:ribn/platform/web/worker_runner.dart'; diff --git a/lib/platform/web/storage.dart b/lib/platform/web/storage.dart index 3a8c8d60..1bf3d29a 100644 --- a/lib/platform/web/storage.dart +++ b/lib/platform/web/storage.dart @@ -1,11 +1,15 @@ @JS('ext_storage') library platform_storage; +// Dart imports: import 'dart:async'; import 'dart:convert'; +// Package imports: import 'package:js/js.dart'; import 'package:js/js_util.dart'; + +// Project imports: import 'package:ribn/constants/keys.dart'; import 'package:ribn/platform/interfaces.dart'; diff --git a/lib/platform/web/utils.dart b/lib/platform/web/utils.dart index acd73196..7d778119 100644 --- a/lib/platform/web/utils.dart +++ b/lib/platform/web/utils.dart @@ -3,10 +3,14 @@ @JS('ext_utils') library ext_utils; +// Dart imports: import 'dart:html'; import 'dart:js_util'; +// Package imports: import 'package:js/js.dart'; + +// Project imports: import 'package:ribn/constants/rules.dart'; import 'package:ribn/platform/interfaces.dart'; diff --git a/lib/platform/web/wallet.dart b/lib/platform/web/wallet.dart index 825901e6..c159e674 100644 --- a/lib/platform/web/wallet.dart +++ b/lib/platform/web/wallet.dart @@ -1,10 +1,12 @@ @JS() library ribn_wallet; +// Package imports: import 'package:flutter_redux/flutter_redux.dart'; import 'package:js/js.dart'; -import 'package:ribn/models/app_state.dart'; +// Project imports: +import 'package:ribn/models/app_state.dart'; import '../../constants/keys.dart'; /// Allows assigning a function to be callable from `window.functionName()` @@ -20,14 +22,12 @@ external String getBalance(void Function() f); @JS() external String getAddress(void Function() f); - void initialize() { getWalletBalance = allowInterop(_getBalance); getWalletAddress = allowInterop(_getAddress); // JavaScript code may now call `functionName()` or `window.functionName()`. } - String _getBalance() => StoreProvider.of(Keys.navigatorKey.currentContext!) .state @@ -45,4 +45,3 @@ String _getAddress() => .first .toplAddress .toBase58(); - diff --git a/lib/platform/web/worker_runner.dart b/lib/platform/web/worker_runner.dart index 803e04fe..b19f1677 100644 --- a/lib/platform/web/worker_runner.dart +++ b/lib/platform/web/worker_runner.dart @@ -1,9 +1,11 @@ // ignore_for_file: avoid_web_libraries_in_flutter +// Dart imports: import 'dart:async'; import 'dart:convert'; import 'dart:html'; +// Project imports: import 'package:ribn/platform/interfaces.dart'; class PlatformWorkerRunner implements IPlatformWorkerRunner { @@ -22,7 +24,9 @@ class PlatformWorkerRunner implements IPlatformWorkerRunner { final String? workerScript, Map params = const {}, }) { - if (workerScript == null) throw Exception('JS worker requires `workerScript` to not be null'); + if (workerScript == null) { + throw Exception('JS worker requires `workerScript` to not be null'); + } final Completer completer = Completer(); try { final Worker worker = Worker(workerScript); diff --git a/lib/presentation/asset_details/asset_detail_edit_sections/asset_icon_edit_section.dart b/lib/presentation/asset_details/asset_detail_edit_sections/asset_icon_edit_section.dart index 80ac6a80..31f21b37 100644 --- a/lib/presentation/asset_details/asset_detail_edit_sections/asset_icon_edit_section.dart +++ b/lib/presentation/asset_details/asset_detail_edit_sections/asset_icon_edit_section.dart @@ -1,13 +1,18 @@ +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: import 'package:flutter_portal/flutter_portal.dart'; import 'package:flutter_redux/flutter_redux.dart'; -import 'package:ribn/actions/user_details_actions.dart'; -import 'package:ribn/constants/ui_constants.dart'; -import 'package:ribn/models/app_state.dart'; import 'package:ribn_toolkit/constants/colors.dart'; import 'package:ribn_toolkit/constants/styles.dart'; import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; +// Project imports: +import 'package:ribn/actions/user_details_actions.dart'; +import 'package:ribn/constants/ui_constants.dart'; +import 'package:ribn/models/app_state.dart'; + /// The section for editing asset icon. /// /// The asset icon can be selected from a dropdown consisting of [UIConstants.assetIconsList]. @@ -38,7 +43,14 @@ class _AssetIconEditSectionState extends State { width: 307, decoration: const BoxDecoration( color: RibnColors.whiteBackground, - boxShadow: [BoxShadow(color: Color(0x0f000000), offset: Offset(0, 4), blurRadius: 4, spreadRadius: 0)], + boxShadow: [ + BoxShadow( + color: Color(0x0f000000), + offset: Offset(0, 4), + blurRadius: 4, + spreadRadius: 0, + ) + ], ), child: Column( crossAxisAlignment: CrossAxisAlignment.start, @@ -52,7 +64,8 @@ class _AssetIconEditSectionState extends State { buttonHeight: 33, buttonChild: Text( 'Save', - style: RibnToolkitTextStyles.btnMedium.copyWith(color: Colors.white), + style: RibnToolkitTextStyles.btnMedium + .copyWith(color: Colors.white), ), backgroundColor: RibnColors.primary, onPressed: () { @@ -71,7 +84,8 @@ class _AssetIconEditSectionState extends State { buttonHeight: 33, buttonChild: Text( 'Cancel', - style: RibnToolkitTextStyles.btnMedium.copyWith(color: RibnColors.ghostButtonText), + style: RibnToolkitTextStyles.btnMedium + .copyWith(color: RibnColors.ghostButtonText), ), backgroundColor: Colors.transparent, hoverColor: Colors.transparent, @@ -105,6 +119,13 @@ class _AssetIconEditSectionState extends State { children: UIConstants.assetIconsList .map( (icon) => PortalEntry( + portal: Image.asset( + icon, + width: 31, + ), + portalAnchor: Alignment.bottomCenter, + childAnchor: Alignment.topCenter, + visible: _selectedIcon == icon, child: MaterialButton( padding: EdgeInsets.zero, minWidth: 0, @@ -115,13 +136,6 @@ class _AssetIconEditSectionState extends State { }, child: Image.asset(icon), ), - portal: Image.asset( - icon, - width: 31, - ), - portalAnchor: Alignment.bottomCenter, - childAnchor: Alignment.topCenter, - visible: _selectedIcon == icon, ), ) .toList(), diff --git a/lib/presentation/asset_details/asset_detail_edit_sections/asset_long_name_edit_section.dart b/lib/presentation/asset_details/asset_detail_edit_sections/asset_long_name_edit_section.dart index 6058d497..08b6b55f 100644 --- a/lib/presentation/asset_details/asset_detail_edit_sections/asset_long_name_edit_section.dart +++ b/lib/presentation/asset_details/asset_detail_edit_sections/asset_long_name_edit_section.dart @@ -1,13 +1,18 @@ +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: import 'package:flutter_redux/flutter_redux.dart'; -import 'package:ribn/actions/user_details_actions.dart'; -import 'package:ribn/constants/strings.dart'; -import 'package:ribn/models/app_state.dart'; import 'package:ribn_toolkit/constants/colors.dart'; import 'package:ribn_toolkit/constants/styles.dart'; import 'package:ribn_toolkit/widgets/atoms/custom_text_field.dart'; import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; +// Project imports: +import 'package:ribn/actions/user_details_actions.dart'; +import 'package:ribn/constants/strings.dart'; +import 'package:ribn/models/app_state.dart'; + /// The section for editing asset long anme. class AssetLongNameEditSection extends StatefulWidget { /// The asset code with which the long name will be associated. @@ -27,7 +32,8 @@ class AssetLongNameEditSection extends StatefulWidget { }) : super(key: key); @override - _AssetLongNameEditSectionState createState() => _AssetLongNameEditSectionState(); + _AssetLongNameEditSectionState createState() => + _AssetLongNameEditSectionState(); } class _AssetLongNameEditSectionState extends State { @@ -53,7 +59,14 @@ class _AssetLongNameEditSectionState extends State { width: 307, decoration: const BoxDecoration( color: RibnColors.whiteBackground, - boxShadow: [BoxShadow(color: Color(0x0f000000), offset: Offset(0, 4), blurRadius: 4, spreadRadius: 0)], + boxShadow: [ + BoxShadow( + color: Color(0x0f000000), + offset: Offset(0, 4), + blurRadius: 4, + spreadRadius: 0, + ) + ], ), child: Column( crossAxisAlignment: CrossAxisAlignment.start, @@ -67,7 +80,8 @@ class _AssetLongNameEditSectionState extends State { buttonHeight: 33, buttonChild: Text( 'Save', - style: RibnToolkitTextStyles.btnMedium.copyWith(color: Colors.white), + style: RibnToolkitTextStyles.btnMedium + .copyWith(color: Colors.white), ), backgroundColor: RibnColors.primary, onPressed: () { @@ -86,7 +100,8 @@ class _AssetLongNameEditSectionState extends State { buttonHeight: 33, buttonChild: Text( 'Cancel', - style: RibnToolkitTextStyles.btnMedium.copyWith(color: RibnColors.ghostButtonText), + style: RibnToolkitTextStyles.btnMedium + .copyWith(color: RibnColors.ghostButtonText), ), backgroundColor: Colors.transparent, hoverColor: Colors.transparent, diff --git a/lib/presentation/asset_details/asset_detail_edit_sections/asset_unit_edit_section.dart b/lib/presentation/asset_details/asset_detail_edit_sections/asset_unit_edit_section.dart index e3b9f313..03c58d7f 100644 --- a/lib/presentation/asset_details/asset_detail_edit_sections/asset_unit_edit_section.dart +++ b/lib/presentation/asset_details/asset_detail_edit_sections/asset_unit_edit_section.dart @@ -1,14 +1,19 @@ +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: import 'package:flutter_redux/flutter_redux.dart'; +import 'package:ribn_toolkit/constants/colors.dart'; +import 'package:ribn_toolkit/constants/styles.dart'; +import 'package:ribn_toolkit/widgets/atoms/custom_dropdown.dart'; +import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; + +// Project imports: import 'package:ribn/actions/user_details_actions.dart'; import 'package:ribn/constants/assets.dart'; import 'package:ribn/constants/ui_constants.dart'; import 'package:ribn/models/app_state.dart'; import 'package:ribn/utils.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; -import 'package:ribn_toolkit/widgets/atoms/custom_dropdown.dart'; -import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; /// The section for editing asset unit. /// @@ -37,6 +42,7 @@ class AssetUnitEditSection extends StatefulWidget { class _AssetUnitEditSectionState extends State { /// True if the dropdown is active. bool dropdownOpened = false; + ScrollController controller = new ScrollController(); /// Assigned the new unit when selected from the dropdown. String? selectedUnit; @@ -48,13 +54,20 @@ class _AssetUnitEditSectionState extends State { width: 307, decoration: const BoxDecoration( color: RibnColors.whiteBackground, - boxShadow: [BoxShadow(color: Color(0x0f000000), offset: Offset(0, 4), blurRadius: 4, spreadRadius: 0)], + boxShadow: [ + BoxShadow( + color: Color(0x0f000000), + offset: Offset(0, 4), + blurRadius: 4, + spreadRadius: 0, + ) + ], ), child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ CustomDropDown( - dropdownChild: _buildUnitDropdownChild(), + dropdownChild: _buildUnitDropdownChild(controller), childAlignment: Alignment.bottomCenter, dropDownAlignment: Alignment.topCenter, visible: dropdownOpened, @@ -83,7 +96,8 @@ class _AssetUnitEditSectionState extends State { buttonHeight: 33, buttonChild: Text( 'Save', - style: RibnToolkitTextStyles.btnMedium.copyWith(color: Colors.white), + style: RibnToolkitTextStyles.btnMedium + .copyWith(color: Colors.white), ), backgroundColor: RibnColors.primary, onPressed: () { @@ -102,7 +116,8 @@ class _AssetUnitEditSectionState extends State { buttonHeight: 33, buttonChild: Text( 'Cancel', - style: RibnToolkitTextStyles.btnMedium.copyWith(color: RibnColors.ghostButtonText), + style: RibnToolkitTextStyles.btnMedium + .copyWith(color: RibnColors.ghostButtonText), ), backgroundColor: Colors.transparent, hoverColor: Colors.transparent, @@ -121,7 +136,7 @@ class _AssetUnitEditSectionState extends State { /// Builds the Unit dropdown widget. /// /// Allows user to select from a list of custom units, i.e. [UIConstants.assetUnitsList]. - Widget _buildUnitDropdownChild() { + Widget _buildUnitDropdownChild(ScrollController _scrollController) { return Container( width: 120, height: 135, @@ -134,8 +149,10 @@ class _AssetUnitEditSectionState extends State { context: context, removeTop: true, child: Scrollbar( + controller: _scrollController, thumbVisibility: true, child: ListView( + controller: _scrollController, padding: const EdgeInsets.all(0), children: UIConstants.assetUnitsList .map( diff --git a/lib/presentation/asset_details/asset_detail_items/asset_amount_details.dart b/lib/presentation/asset_details/asset_detail_items/asset_amount_details.dart index 65d574d3..a9af6ac5 100644 --- a/lib/presentation/asset_details/asset_detail_items/asset_amount_details.dart +++ b/lib/presentation/asset_details/asset_detail_items/asset_amount_details.dart @@ -1,4 +1,7 @@ +// Flutter imports: import 'package:flutter/material.dart'; +import 'package:ribn/presentation/asset_details/asset_detail_items/asset_column.dart'; +// Package imports: import 'package:ribn_toolkit/constants/styles.dart'; /// One of the asset details displayed on [AssetDetailsPage]. @@ -7,6 +10,7 @@ import 'package:ribn_toolkit/constants/styles.dart'; class AssetAmountDetails extends StatelessWidget { /// The total quantity of the asset. final num assetQuantity; + const AssetAmountDetails({ Key? key, required this.assetQuantity, @@ -14,17 +18,9 @@ class AssetAmountDetails extends StatelessWidget { @override Widget build(BuildContext context) { - return Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Row( - children: const [ - Text('Total Amount', style: RibnToolkitTextStyles.h4), - ], - ), - const SizedBox(height: 3), - Text(assetQuantity.toString(), style: RibnToolkitTextStyles.smallBody), - ], + return AssetColumn( + child1: Text('Amount', style: RibnToolkitTextStyles.h4), + child2: Text(assetQuantity.toString(), style: RibnToolkitTextStyles.smallBody), ); } } diff --git a/lib/presentation/asset_details/asset_detail_items/asset_code_details.dart b/lib/presentation/asset_details/asset_detail_items/asset_code_details.dart index 052487c1..89875e8e 100644 --- a/lib/presentation/asset_details/asset_detail_items/asset_code_details.dart +++ b/lib/presentation/asset_details/asset_detail_items/asset_code_details.dart @@ -1,11 +1,16 @@ +// Flutter imports: import 'package:flutter/material.dart'; -import 'package:ribn/constants/assets.dart'; -import 'package:ribn/constants/strings.dart'; -import 'package:ribn/utils.dart'; + +// Package imports: import 'package:ribn_toolkit/constants/styles.dart'; import 'package:ribn_toolkit/widgets/atoms/custom_copy_button.dart'; import 'package:ribn_toolkit/widgets/molecules/custom_tooltip.dart'; +// Project imports: +import 'package:ribn/constants/assets.dart'; +import 'package:ribn/constants/strings.dart'; +import 'package:ribn/utils.dart'; + /// One of the asset details displayed on [AssetDetailsPage]. /// /// Displays the asset code, a tooltip with more description, and a copy button. diff --git a/lib/presentation/asset_details/asset_detail_items/asset_code_short_details.dart b/lib/presentation/asset_details/asset_detail_items/asset_code_short_details.dart index 84d3f914..d141cf28 100644 --- a/lib/presentation/asset_details/asset_detail_items/asset_code_short_details.dart +++ b/lib/presentation/asset_details/asset_detail_items/asset_code_short_details.dart @@ -1,6 +1,10 @@ +// Flutter imports: import 'package:flutter/material.dart'; +// Project imports: import 'package:ribn/constants/assets.dart'; import 'package:ribn/constants/strings.dart'; +import 'package:ribn/presentation/asset_details/asset_detail_items/asset_column.dart'; +// Package imports: import 'package:ribn_toolkit/constants/styles.dart'; import 'package:ribn_toolkit/widgets/molecules/custom_tooltip.dart'; @@ -9,40 +13,51 @@ import 'package:ribn_toolkit/widgets/molecules/custom_tooltip.dart'; /// Displays the asset short name. class AssetCodeShortDetails extends StatelessWidget { final String assetShortName; + final String? currentIcon; - const AssetCodeShortDetails({ + AssetCodeShortDetails({ Key? key, required this.assetShortName, + required this.currentIcon, }) : super(key: key); @override Widget build(BuildContext context) { - return Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Row( - children: [ - const Text('Asset code · short', style: RibnToolkitTextStyles.h4), - Padding( - padding: const EdgeInsets.only(left: 4.0), - child: CustomToolTip( - offsetPositionLeftValue: 120, - borderColor: Border.all(color: const Color(0xffE9E9E9)), - toolTipIcon: Image.asset( - RibnAssets.greyHelpBubble, - width: 18, - ), - toolTipChild: const Text( - Strings.assetCodeShortInfo, - style: RibnToolkitTextStyles.toolTipTextStyle, - ), + return AssetColumn( + child1: Row( + children: [ + const Text('Asset name', style: RibnToolkitTextStyles.h4), + Padding( + padding: const EdgeInsets.only(left: 4.0), + child: CustomToolTip( + offsetPositionLeftValue: 120, + borderColor: Border.all(color: const Color(0xffE9E9E9)), + toolTipIcon: Image.asset( + RibnAssets.greyHelpBubble, + width: 20, + ), + toolTipChild: const Text( + Strings.assetCodeShortInfo, + style: RibnToolkitTextStyles.toolTipTextStyle, ), ), - ], - ), - const SizedBox(height: 3), - Text(assetShortName, style: RibnToolkitTextStyles.smallBody), - ], + ), + ], + ), + child2: Row( + children: [ + currentIcon == null + ? Image.asset(RibnAssets.undefinedIcon) + : Image.asset( + currentIcon!, + width: 31, + ), + SizedBox( + width: 5, + ), + Text(assetShortName, style: RibnToolkitTextStyles.smallBody), + ], + ), ); } } diff --git a/lib/presentation/asset_details/asset_detail_items/asset_column.dart b/lib/presentation/asset_details/asset_detail_items/asset_column.dart new file mode 100644 index 00000000..87243671 --- /dev/null +++ b/lib/presentation/asset_details/asset_detail_items/asset_column.dart @@ -0,0 +1,35 @@ +import 'package:flutter/material.dart'; + +class AssetColumn extends StatelessWidget { + final Widget child1; + final Widget child2; + const AssetColumn({ + required this.child1, + required this.child2, + Key? key, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Container( + height: 30, + child: Align( + alignment: Alignment.centerLeft, + child: child1, + ), + ), + const SizedBox(height: 3), + Container( + height: 20, + child: Align( + alignment: Alignment.centerLeft, + child: child2, + ), + ), + ], + ); + } +} diff --git a/lib/presentation/asset_details/asset_detail_items/asset_icon_details.dart b/lib/presentation/asset_details/asset_detail_items/asset_icon_details.dart deleted file mode 100644 index cd52c75b..00000000 --- a/lib/presentation/asset_details/asset_detail_items/asset_icon_details.dart +++ /dev/null @@ -1,67 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:ribn_toolkit/constants/assets.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; -import 'package:ribn_toolkit/widgets/atoms/hover_icon_button.dart'; - -/// One of the asset details displayed on [AssetDetailsPage]. -/// -/// Displays the icon that's assigned to the asset. -class AssetIconDetails extends StatelessWidget { - /// The current icon assigned to the asset. - final String? currIcon; - - /// True if this is currently being edited. - final bool editingSectionOpened; - - /// Callback for when edit button is pressed. - final VoidCallback onEditPressed; - - const AssetIconDetails({ - Key? key, - required this.currIcon, - required this.editingSectionOpened, - required this.onEditPressed, - }) : super(key: key); - - @override - Widget build(BuildContext context) { - return Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - SizedBox( - height: 30, - child: Row( - children: [ - const Text('Icon', style: RibnToolkitTextStyles.h4), - const Spacer(), - editingSectionOpened - ? const SizedBox() - : HoverIconButton( - buttonText: Text( - 'Edit', - style: RibnToolkitTextStyles.dropdownButtonStyle.copyWith(color: RibnColors.primary), - ), - buttonIcon: Image.asset(RibnAssets.editIcon), - onPressed: onEditPressed, - ), - ], - ), - ), - Padding( - padding: const EdgeInsets.only(top: 3, bottom: 5), - child: SizedBox( - width: 20, - height: 20, - child: currIcon == null - ? Image.asset(RibnAssets.undefinedIcon) - : Image.asset( - currIcon!, - width: 31, - ), - ), - ), - ], - ); - } -} diff --git a/lib/presentation/asset_details/asset_detail_items/asset_long_name_details.dart b/lib/presentation/asset_details/asset_detail_items/asset_long_name_details.dart index 182809f7..1c354dc3 100644 --- a/lib/presentation/asset_details/asset_detail_items/asset_long_name_details.dart +++ b/lib/presentation/asset_details/asset_detail_items/asset_long_name_details.dart @@ -1,14 +1,19 @@ // ignore_for_file: unused_import +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: import 'package:flutter_redux/flutter_redux.dart'; -import 'package:ribn/models/app_state.dart'; -import 'package:ribn/models/asset_details.dart'; import 'package:ribn_toolkit/constants/assets.dart'; import 'package:ribn_toolkit/constants/colors.dart'; import 'package:ribn_toolkit/constants/styles.dart'; import 'package:ribn_toolkit/widgets/atoms/hover_icon_button.dart'; +// Project imports: +import 'package:ribn/models/app_state.dart'; +import 'package:ribn/models/asset_details.dart'; + /// One of the asset details displayed on [AssetDetailsPage]. /// /// Displays the custom long name assigned to the asset. @@ -43,7 +48,8 @@ class AssetLongNameDetails extends StatelessWidget { : HoverIconButton( buttonText: Text( 'Edit', - style: RibnToolkitTextStyles.dropdownButtonStyle.copyWith(color: RibnColors.primary), + style: RibnToolkitTextStyles.dropdownButtonStyle + .copyWith(color: RibnColors.primary), ), buttonIcon: Image.asset(RibnAssets.editIcon), onPressed: onEditPressed, @@ -51,7 +57,10 @@ class AssetLongNameDetails extends StatelessWidget { ], ), const SizedBox(height: 3), - Text(currLongName ?? 'Undefined', style: RibnToolkitTextStyles.smallBody), + Text( + currLongName ?? 'Undefined', + style: RibnToolkitTextStyles.smallBody, + ), ], ); } diff --git a/lib/presentation/asset_details/asset_detail_items/asset_unit_details.dart b/lib/presentation/asset_details/asset_detail_items/asset_unit_details.dart index 05c4b223..6857de94 100644 --- a/lib/presentation/asset_details/asset_detail_items/asset_unit_details.dart +++ b/lib/presentation/asset_details/asset_detail_items/asset_unit_details.dart @@ -1,7 +1,9 @@ +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: import 'package:ribn_toolkit/constants/assets.dart'; import 'package:ribn_toolkit/constants/colors.dart'; - import 'package:ribn_toolkit/constants/styles.dart'; import 'package:ribn_toolkit/widgets/atoms/hover_icon_button.dart'; @@ -39,7 +41,8 @@ class AssetUnitDetails extends StatelessWidget { : HoverIconButton( buttonText: Text( 'Edit', - style: RibnToolkitTextStyles.dropdownButtonStyle.copyWith(color: RibnColors.primary), + style: RibnToolkitTextStyles.dropdownButtonStyle + .copyWith(color: RibnColors.primary), ), buttonIcon: Image.asset(RibnAssets.editIcon), onPressed: onEditPressed, diff --git a/lib/presentation/asset_details/asset_detail_items/issuer_address_details.dart b/lib/presentation/asset_details/asset_detail_items/issuer_address_details.dart index 931284d9..9130d7d7 100644 --- a/lib/presentation/asset_details/asset_detail_items/issuer_address_details.dart +++ b/lib/presentation/asset_details/asset_detail_items/issuer_address_details.dart @@ -1,12 +1,17 @@ +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: import 'package:flutter_svg/svg.dart'; -import 'package:ribn/constants/assets.dart'; -import 'package:ribn/constants/strings.dart'; -import 'package:ribn/utils.dart'; import 'package:ribn_toolkit/constants/styles.dart'; import 'package:ribn_toolkit/widgets/atoms/custom_copy_button.dart'; import 'package:ribn_toolkit/widgets/molecules/custom_tooltip.dart'; +// Project imports: +import 'package:ribn/constants/assets.dart'; +import 'package:ribn/constants/strings.dart'; +import 'package:ribn/utils.dart'; + class IssuerAddressDetails extends StatelessWidget { final String issuerAddress; const IssuerAddressDetails({ diff --git a/lib/presentation/asset_details/asset_detail_items/token_metadata_details.dart b/lib/presentation/asset_details/asset_detail_items/token_metadata_details.dart new file mode 100644 index 00000000..6909c18e --- /dev/null +++ b/lib/presentation/asset_details/asset_detail_items/token_metadata_details.dart @@ -0,0 +1,32 @@ +// Flutter imports: +import 'package:flutter/material.dart'; +// Package imports: +import 'package:ribn_toolkit/constants/styles.dart'; + +/// One of the asset details displayed on [AssetDetailsPage]. +/// +/// Displays the asset code, a tooltip with more description, and a copy button. +class TokenMetadataDetails extends StatelessWidget { + /// The asset code to be displayed. + final String tokenMetadata; + + const TokenMetadataDetails({ + Key? key, + required this.tokenMetadata, + }) : super(key: key); + + @override + Widget build(BuildContext context) { + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const Text('Token Metadata', style: RibnToolkitTextStyles.h4), + const SizedBox(height: 3), + Text( + tokenMetadata, + style: RibnToolkitTextStyles.smallBody, + ), + ], + ); + } +} diff --git a/lib/presentation/asset_details/asset_details_page.dart b/lib/presentation/asset_details/asset_details_page.dart index 26cda6b3..3178a76c 100644 --- a/lib/presentation/asset_details/asset_details_page.dart +++ b/lib/presentation/asset_details/asset_details_page.dart @@ -1,24 +1,25 @@ +// Flutter imports: + +// Package imports: import 'package:brambldart/brambldart.dart'; +// Flutter imports: import 'package:flutter/material.dart'; import 'package:flutter_redux/flutter_redux.dart'; +// Project imports: import 'package:ribn/constants/routes.dart'; import 'package:ribn/constants/strings.dart'; import 'package:ribn/models/app_state.dart'; import 'package:ribn/models/asset_details.dart'; -import 'package:ribn/presentation/asset_details/asset_detail_edit_sections/asset_icon_edit_section.dart'; -import 'package:ribn/presentation/asset_details/asset_detail_edit_sections/asset_long_name_edit_section.dart'; -import 'package:ribn/presentation/asset_details/asset_detail_edit_sections/asset_unit_edit_section.dart'; import 'package:ribn/presentation/asset_details/asset_detail_items/asset_amount_details.dart'; import 'package:ribn/presentation/asset_details/asset_detail_items/asset_code_details.dart'; import 'package:ribn/presentation/asset_details/asset_detail_items/asset_code_short_details.dart'; -import 'package:ribn/presentation/asset_details/asset_detail_items/asset_icon_details.dart'; -import 'package:ribn/presentation/asset_details/asset_detail_items/asset_long_name_details.dart'; -import 'package:ribn/presentation/asset_details/asset_detail_items/asset_unit_details.dart'; -import 'package:ribn/presentation/asset_details/asset_detail_items/issuer_address_details.dart'; +import 'package:ribn/presentation/asset_details/asset_detail_items/token_metadata_details.dart'; import 'package:ribn/widgets/custom_divider.dart'; import 'package:ribn_toolkit/constants/colors.dart'; import 'package:ribn_toolkit/widgets/organisms/custom_page_text_title.dart'; +import 'asset_detail_items/issuer_address_details.dart'; + /// This page presents all details associated with an asset. /// /// Also allows editing certain properties that are stored locally, @@ -31,7 +32,7 @@ class AssetDetailsPage extends StatefulWidget { final String assetCode; /// The asset short name of this [asset] (also refered to as asset code short). - final String assetShorName; + final String assetShortName; /// The quantity of this [asset] that the user has in their wallet. final num assetQuantity; @@ -43,7 +44,7 @@ class AssetDetailsPage extends StatefulWidget { Key? key, required this.asset, }) : assetCode = asset.assetCode.toString(), - assetShorName = asset.assetCode.shortName.show, + assetShortName = asset.assetCode.shortName.show, assetQuantity = asset.quantity, issuerAddress = asset.assetCode.issuer.toBase58(), super(key: key); @@ -102,6 +103,7 @@ class _AssetDetailsPageState extends State with RouteAware { // Get access to AssetDetails for this asset from the store converter: (store) => store.state.userDetailsState.assetDetails[widget.assetCode], builder: (context, assetDetails) { + print(assetDetails); return Listener( onPointerDown: (_) { if (mounted) setState(() {}); @@ -117,65 +119,67 @@ class _AssetDetailsPageState extends State with RouteAware { hideBackArrow: true, ), const SizedBox(height: 40), - Container( - padding: const EdgeInsets.symmetric(horizontal: 20, vertical: 10), - width: 309, - decoration: BoxDecoration( - borderRadius: const BorderRadius.all(Radius.circular(11.6)), - color: RibnColors.whiteBackground, - border: Border.all(color: RibnColors.lightGrey, width: 1), - boxShadow: const [ - BoxShadow( - color: RibnColors.greyShadow, - spreadRadius: 0, - blurRadius: 37.5, - offset: Offset(0, -6), - ), - ], + Padding( + padding: const EdgeInsets.symmetric( + horizontal: 15, ), - child: Column( - children: [ - // asset short name display - AssetCodeShortDetails( - assetShortName: widget.assetShorName, - ), - _buildDivider(), - // asset amount/quantity display - AssetAmountDetails(assetQuantity: widget.assetQuantity), - _buildDivider(), - // asset unit display - can be edited - AssetUnitDetails( - key: assetUnitKey, - currUnit: assetDetails?.unit, - editingSectionOpened: editingAssetUnit, - onEditPressed: () => - _onEditPressed(key: assetUnitKey, assetDetails: assetDetails), - ), - _buildDivider(), - // asset long name display - can be edited - AssetLongNameDetails( - key: assetLongNameKey, - currLongName: assetDetails?.longName, - editingSectionOpened: editingAssetLongName, - onEditPressed: () => - _onEditPressed(key: assetLongNameKey, assetDetails: assetDetails), - ), - _buildDivider(), - // asset icon display - can be edited - AssetIconDetails( - key: assetIconKey, - currIcon: assetDetails?.icon, - editingSectionOpened: editingAssetIcon, - onEditPressed: () => - _onEditPressed(key: assetIconKey, assetDetails: assetDetails), - ), - _buildDivider(), - // asset issuer address display - IssuerAddressDetails(issuerAddress: widget.issuerAddress), - _buildDivider(), - // asset code display - AssetCodeDetails(assetCode: widget.assetCode), - ], + child: Container( + padding: const EdgeInsets.symmetric( + horizontal: 20, + vertical: 10, + ), + decoration: BoxDecoration( + borderRadius: const BorderRadius.all(Radius.circular(11.6)), + color: RibnColors.whiteBackground, + border: Border.all(color: RibnColors.lightGrey, width: 1), + boxShadow: const [ + BoxShadow( + color: RibnColors.greyShadow, + spreadRadius: 0, + blurRadius: 37.5, + offset: Offset(0, -6), + ), + ], + ), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + // asset name display + Row( + crossAxisAlignment: CrossAxisAlignment.start, + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: [ + Expanded( + flex: 1, + child: AssetCodeShortDetails( + assetShortName: widget.assetShortName, + currentIcon: assetDetails?.icon, + ), + ), + SizedBox( + width: 20, + ), + Expanded( + flex: 1, + child: AssetAmountDetails(assetQuantity: widget.assetQuantity), + ), + ], + ), + _buildDivider(), + // asset issuer address display + IssuerAddressDetails( + issuerAddress: widget.issuerAddress, + ), + _buildDivider(), + // asset code display + AssetCodeDetails(assetCode: widget.assetCode), + _buildDivider(), + //TODO: Figure out how to pipe metadata in + TokenMetadataDetails( + tokenMetadata: "", + ), + ], + ), ), ), ], @@ -191,24 +195,25 @@ class _AssetDetailsPageState extends State with RouteAware { /// /// Uses the [key] provided to get the correct widget position and /// updates [editSectionOverlay] with the [editSection] provided. - void _buildEditSectionOverlay({ - required GlobalKey key, - required Widget editSection, - }) async { - final RenderBox renderbox = key.currentContext!.findRenderObject() as RenderBox; - final Offset offset = renderbox.localToGlobal(Offset.zero); - resetOverlays(); - editSectionOverlay = OverlayEntry( - builder: (context) { - return Positioned( - left: offset.dx - 20, - top: offset.dy + 22, - child: editSection, - ); - }, - ); - Overlay.of(context)!.insert(editSectionOverlay); - } + // void _buildEditSectionOverlay({ + // required GlobalKey key, + // required Widget editSection, + // }) async { + // final RenderBox renderbox = + // key.currentContext!.findRenderObject() as RenderBox; + // final Offset offset = renderbox.localToGlobal(Offset.zero); + // resetOverlays(); + // editSectionOverlay = OverlayEntry( + // builder: (context) { + // return Positioned( + // left: offset.dx - 20, + // top: offset.dy + 22, + // child: editSection, + // ); + // }, + // ); + // Overlay.of(context)!.insert(editSectionOverlay); + // } /// Removes any overlay from the screen and resets /// indicators for editing. @@ -227,49 +232,49 @@ class _AssetDetailsPageState extends State with RouteAware { /// /// Depending on the [key] passed, the state is updated and /// [_buildEditSectionOverlay] is called with the appropriate [editSection] widget. - void _onEditPressed({required Key key, required AssetDetails? assetDetails}) { - if (key == assetUnitKey) { - setState(() { - editingAssetUnit = true; - }); - _buildEditSectionOverlay( - key: assetUnitKey, - editSection: AssetUnitEditSection( - assetCode: widget.assetCode, - currentUnit: assetDetails?.unit, - onActionTaken: () => resetOverlays(resetAll: true), - ), - ); - } else if (key == assetLongNameKey) { - setState(() { - editingAssetLongName = true; - }); - _buildEditSectionOverlay( - key: assetLongNameKey, - editSection: AssetLongNameEditSection( - assetCode: widget.assetCode, - currentAssetLongName: assetDetails?.longName, - onActionTaken: () => resetOverlays(resetAll: true), - ), - ); - } else { - setState(() { - editingAssetIcon = true; - }); - _buildEditSectionOverlay( - key: assetIconKey, - editSection: AssetIconEditSection( - assetCode: widget.assetCode, - onActionTaken: () => resetOverlays(resetAll: true), - ), - ); - } - } + // void _onEditPressed({required Key key, required AssetDetails? assetDetails}) { + // if (key == assetUnitKey) { + // setState(() { + // editingAssetUnit = true; + // }); + // _buildEditSectionOverlay( + // key: assetUnitKey, + // editSection: AssetUnitEditSection( + // assetCode: widget.assetCode, + // currentUnit: assetDetails?.unit, + // onActionTaken: () => resetOverlays(resetAll: true), + // ), + // ); + // } else if (key == assetLongNameKey) { + // setState(() { + // editingAssetLongName = true; + // }); + // _buildEditSectionOverlay( + // key: assetLongNameKey, + // editSection: AssetLongNameEditSection( + // assetCode: widget.assetCode, + // currentAssetLongName: assetDetails?.longName, + // onActionTaken: () => resetOverlays(resetAll: true), + // ), + // ); + // } else { + // setState(() { + // editingAssetIcon = true; + // }); + // _buildEditSectionOverlay( + // key: assetIconKey, + // editSection: AssetIconEditSection( + // assetCode: widget.assetCode, + // onActionTaken: () => resetOverlays(resetAll: true), + // ), + // ); + // } + // } /// Builds a divider that is used to separate asset detail items on screen. Widget _buildDivider() { return const Padding( - padding: EdgeInsets.symmetric(vertical: 5), + padding: EdgeInsets.fromLTRB(0, 15, 0, 10), child: CustomDivider(), ); } diff --git a/lib/presentation/authorize_and_sign/connect_dapp.dart b/lib/presentation/authorize_and_sign/connect_dapp.dart index fdf62786..e8262857 100644 --- a/lib/presentation/authorize_and_sign/connect_dapp.dart +++ b/lib/presentation/authorize_and_sign/connect_dapp.dart @@ -1,18 +1,22 @@ +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; + +// Package imports: import 'package:flutter_redux/flutter_redux.dart'; -import 'package:ribn/actions/internal_message_actions.dart'; -import 'package:ribn/constants/assets.dart'; -import 'package:ribn/constants/strings.dart'; -import 'package:ribn/models/app_state.dart'; -import 'package:ribn/presentation/authorize_and_sign/input_dropdown_wrapper.dart'; -import 'package:ribn/presentation/transfers/bottom_review_action.dart'; import 'package:ribn_toolkit/constants/colors.dart'; import 'package:ribn_toolkit/constants/styles.dart'; import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; import 'package:ribn_toolkit/widgets/molecules/checkbox_wrappable_text.dart'; import 'package:ribn_toolkit/widgets/organisms/custom_page_text_title_with_leading_child.dart'; +// Project imports: +import 'package:ribn/actions/internal_message_actions.dart'; +import 'package:ribn/constants/assets.dart'; +import 'package:ribn/constants/strings.dart'; +import 'package:ribn/models/app_state.dart'; +import 'package:ribn/presentation/authorize_and_sign/input_dropdown_wrapper.dart'; +import 'package:ribn/presentation/transfers/bottom_review_action.dart'; import '../../models/internal_message.dart'; class ConnectDApp extends StatefulWidget { diff --git a/lib/presentation/authorize_and_sign/input_dropdown_wrapper.dart b/lib/presentation/authorize_and_sign/input_dropdown_wrapper.dart index 6e9515f1..01131750 100644 --- a/lib/presentation/authorize_and_sign/input_dropdown_wrapper.dart +++ b/lib/presentation/authorize_and_sign/input_dropdown_wrapper.dart @@ -1,11 +1,18 @@ +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: +import 'package:ribn_toolkit/widgets/molecules/input_dropdown.dart'; + +// Project imports: import 'package:ribn/constants/assets.dart'; import 'package:ribn/containers/ribn_app_bar_container.dart'; -import 'package:ribn_toolkit/widgets/molecules/input_dropdown.dart'; + // import 'package:ribn_toolkit/widgets/organisms/ribn_app_bar.dart'; /// Builds a wrapper around the AppBar from ToplToolkit to provide ViewModel & AppBarContainer -class InputDropdownWrapper extends StatefulWidget implements PreferredSizeWidget { +class InputDropdownWrapper extends StatefulWidget + implements PreferredSizeWidget { const InputDropdownWrapper({ Key? key, }) : preferredSize = const Size.fromHeight(40), diff --git a/lib/presentation/authorize_and_sign/loading_dapp.dart b/lib/presentation/authorize_and_sign/loading_dapp.dart index b34671ae..9041597c 100644 --- a/lib/presentation/authorize_and_sign/loading_dapp.dart +++ b/lib/presentation/authorize_and_sign/loading_dapp.dart @@ -1,15 +1,20 @@ - +// Dart imports: import 'dart:async'; +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: import 'package:flutter_redux/flutter_redux.dart'; +import 'package:ribn_toolkit/constants/colors.dart'; +import 'package:ribn_toolkit/widgets/molecules/animated_circle_step_loader.dart'; + +// Project imports: import 'package:ribn/actions/transaction_actions.dart'; import 'package:ribn/constants/assets.dart'; import 'package:ribn/constants/strings.dart'; import 'package:ribn/models/app_state.dart'; import 'package:ribn/models/internal_message.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/widgets/molecules/animated_circle_step_loader.dart'; class LoadingDApp extends StatefulWidget { const LoadingDApp({Key? key, required this.response}) : super(key: key); @@ -21,8 +26,6 @@ class LoadingDApp extends StatefulWidget { } class _LoadingDAppState extends State { - - @override void initState() { super.initState(); @@ -31,10 +34,8 @@ class _LoadingDAppState extends State { .dispatch(SignExternalTxAction(widget.response)); Navigator.of(context).pop(); }); - } - @override Widget build(BuildContext context) { const String mockFaviconUrl = ''; @@ -128,5 +129,4 @@ class _LoadingDAppState extends State { ), ); } - } diff --git a/lib/presentation/authorize_and_sign/review_and_sign.dart b/lib/presentation/authorize_and_sign/review_and_sign.dart index b382b250..72f6c55e 100644 --- a/lib/presentation/authorize_and_sign/review_and_sign.dart +++ b/lib/presentation/authorize_and_sign/review_and_sign.dart @@ -1,15 +1,12 @@ +// Dart imports: import 'dart:convert'; +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; + +// Package imports: import 'package:flutter_redux/flutter_redux.dart'; -import 'package:ribn/constants/assets.dart'; -import 'package:ribn/constants/strings.dart'; -import 'package:ribn/models/raw_tx.dart'; -import 'package:ribn/presentation/authorize_and_sign/input_dropdown_wrapper.dart'; -import 'package:ribn/presentation/authorize_and_sign/transaction_row_details.dart'; -import 'package:ribn/presentation/transfers/bottom_review_action.dart'; -import 'package:ribn/widgets/fee_info.dart'; import 'package:ribn_toolkit/constants/colors.dart'; import 'package:ribn_toolkit/constants/styles.dart'; import 'package:ribn_toolkit/widgets/atoms/animated_expand_button.dart'; @@ -17,6 +14,14 @@ import 'package:ribn_toolkit/widgets/atoms/custom_copy_button.dart'; import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; import 'package:ribn_toolkit/widgets/organisms/custom_page_text_title_with_leading_child.dart'; +// Project imports: +import 'package:ribn/constants/assets.dart'; +import 'package:ribn/constants/strings.dart'; +import 'package:ribn/models/raw_tx.dart'; +import 'package:ribn/presentation/authorize_and_sign/input_dropdown_wrapper.dart'; +import 'package:ribn/presentation/authorize_and_sign/transaction_row_details.dart'; +import 'package:ribn/presentation/transfers/bottom_review_action.dart'; +import 'package:ribn/widgets/fee_info.dart'; import '../../actions/internal_message_actions.dart'; import '../../constants/routes.dart'; import '../../models/app_state.dart'; @@ -39,6 +44,8 @@ class _ReviewAndSignDAppState extends State { late final String walletAddress; late final RawTx transaction; bool isExpanded = false; + + ScrollController _scrollController = ScrollController(); final TextStyle defaultTextStyle = const TextStyle( fontFamily: 'DM Sans', @@ -173,12 +180,14 @@ class _ReviewAndSignDAppState extends State { mainAxisMargin: 10, crossAxisMargin: 8, thumbVisibility: true, + controller: _scrollController, thumbColor: RibnColors.primary, thickness: 10, child: ScrollConfiguration( behavior: ScrollConfiguration.of(context) .copyWith(scrollbars: false), child: ListView.builder( + controller: _scrollController, shrinkWrap: true, primary: false, padding: const EdgeInsets.all(10), diff --git a/lib/presentation/authorize_and_sign/transaction_row_details.dart b/lib/presentation/authorize_and_sign/transaction_row_details.dart index 01cb73fe..757e8b5b 100644 --- a/lib/presentation/authorize_and_sign/transaction_row_details.dart +++ b/lib/presentation/authorize_and_sign/transaction_row_details.dart @@ -1,9 +1,14 @@ +// Flutter imports: import 'package:flutter/material.dart'; -import 'package:ribn/constants/assets.dart'; -import 'package:ribn/constants/strings.dart'; + +// Package imports: import 'package:ribn_toolkit/constants/colors.dart'; import 'package:ribn_toolkit/constants/styles.dart'; +// Project imports: +import 'package:ribn/constants/assets.dart'; +import 'package:ribn/constants/strings.dart'; + class TransactionRowDetails extends StatelessWidget { const TransactionRowDetails({ required this.quantity, @@ -61,11 +66,16 @@ class TransactionRowDetails extends StatelessWidget { Row( children: [ Image.asset( - isPolyTransfer ? RibnAssets.polyIconCircle : RibnAssets.undefinedIcon, + isPolyTransfer + ? RibnAssets.polyIconCircle + : RibnAssets.undefinedIcon, width: 23, ), const SizedBox(width: 5), - Text(isPolyTransfer ? 'POLY' : 'OTHER ASSET', style: defaultTextStyle), + Text( + isPolyTransfer ? 'POLY' : 'OTHER ASSET', + style: defaultTextStyle, + ), ], ) ], diff --git a/lib/presentation/empty_state_screen.dart b/lib/presentation/empty_state_screen.dart index aad9f08c..9e820555 100644 --- a/lib/presentation/empty_state_screen.dart +++ b/lib/presentation/empty_state_screen.dart @@ -1,5 +1,8 @@ +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; + +// Package imports: import 'package:ribn_toolkit/constants/colors.dart'; import 'package:ribn_toolkit/constants/styles.dart'; import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; @@ -10,8 +13,6 @@ class EmptyStateScreen extends StatelessWidget { final dynamic body; final String buttonOneText; final void Function() buttonOneAction; - final String buttonTwoText; - final void Function() buttonTwoAction; final dynamic mobileHeight; final dynamic desktopHeight; @@ -21,8 +22,6 @@ class EmptyStateScreen extends StatelessWidget { required this.body, required this.buttonOneText, required this.buttonOneAction, - required this.buttonTwoText, - required this.buttonTwoAction, required this.mobileHeight, required this.desktopHeight, Key? key, @@ -41,7 +40,13 @@ class EmptyStateScreen extends StatelessWidget { padding: EdgeInsets.zero, decoration: BoxDecoration( color: RibnColors.paleGreen, - boxShadow: [BoxShadow(color: RibnColors.paleGreen.withOpacity(1), blurRadius: 8, spreadRadius: 8)], + boxShadow: [ + BoxShadow( + color: RibnColors.paleGreen.withOpacity(1), + blurRadius: 8, + spreadRadius: 8, + ) + ], ), width: width - 20, height: kIsWeb ? desktopHeight : mobileHeight, @@ -74,29 +79,15 @@ class EmptyStateScreen extends StatelessWidget { ), Wrap( children: [ - LargeButton( - buttonWidth: buttonWidth, - buttonHeight: buttonHeight, - backgroundColor: RibnColors.primary, - onPressed: buttonOneAction, - buttonChild: Text( - buttonOneText, - style: RibnToolkitTextStyles.btnMedium.copyWith( - color: Colors.white, - fontWeight: FontWeight.w500, - ), - ), - ), - const SizedBox(width: 20), LargeButton( buttonWidth: buttonWidth, buttonHeight: buttonHeight, borderColor: const Color(0xff165867), backgroundColor: Colors.transparent, dropShadowColor: Colors.transparent, - onPressed: buttonTwoAction, + onPressed: buttonOneAction, buttonChild: Text( - buttonTwoText, + buttonOneText, style: RibnToolkitTextStyles.btnMedium.copyWith( color: RibnColors.primary, fontWeight: FontWeight.w500, diff --git a/lib/presentation/enable_page.dart b/lib/presentation/enable_page.dart index 7b0d9808..36489547 100644 --- a/lib/presentation/enable_page.dart +++ b/lib/presentation/enable_page.dart @@ -1,10 +1,15 @@ +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: import 'package:flutter_redux/flutter_redux.dart'; +import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; + +// Project imports: import 'package:ribn/actions/internal_message_actions.dart'; import 'package:ribn/constants/ui_constants.dart'; import 'package:ribn/models/app_state.dart'; import 'package:ribn/models/internal_message.dart'; -import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; class EnablePage extends StatelessWidget { final InternalMessage pendingRequest; @@ -49,10 +54,18 @@ class EnablePage extends StatelessWidget { sender: InternalMessage.defaultSender, data: { 'enabled': accept, - 'walletAddress': StoreProvider.of(context).state.keychainState.currentNetwork.addresses.first.toplAddress.toBase58() + 'walletAddress': StoreProvider.of(context) + .state + .keychainState + .currentNetwork + .addresses + .first + .toplAddress + .toBase58() }, ); } - StoreProvider.of(context).dispatch(SendInternalMsgAction(response)); + StoreProvider.of(context) + .dispatch(SendInternalMsgAction(response)); } } diff --git a/lib/presentation/error_section.dart b/lib/presentation/error_section.dart index b633c301..29631b50 100644 --- a/lib/presentation/error_section.dart +++ b/lib/presentation/error_section.dart @@ -1,11 +1,16 @@ +// Flutter imports: import 'package:flutter/material.dart'; -import 'package:ribn/constants/assets.dart'; -import 'package:ribn/constants/strings.dart'; + +// Package imports: import 'package:ribn_toolkit/constants/colors.dart'; import 'package:ribn_toolkit/constants/styles.dart'; import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; import 'package:url_launcher/url_launcher_string.dart'; +// Project imports: +import 'package:ribn/constants/assets.dart'; +import 'package:ribn/constants/strings.dart'; + /// A generic error section that is displayed in case of unexpected errors. class ErrorSection extends StatelessWidget { final VoidCallback onTryAgain; diff --git a/lib/presentation/external_signing_page.dart b/lib/presentation/external_signing_page.dart index bd2f4aaf..5b35acf0 100644 --- a/lib/presentation/external_signing_page.dart +++ b/lib/presentation/external_signing_page.dart @@ -1,5 +1,10 @@ +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: import 'package:flutter_redux/flutter_redux.dart'; + +// Project imports: import 'package:ribn/actions/transaction_actions.dart'; import 'package:ribn/constants/strings.dart'; import 'package:ribn/models/app_state.dart'; @@ -36,7 +41,8 @@ class _ExternalSigningPageState extends State { color: Colors.blue, child: const Text(Strings.sign), onPressed: () { - StoreProvider.of(context).dispatch(SignExternalTxAction(widget.request)); + StoreProvider.of(context) + .dispatch(SignExternalTxAction(widget.request)); }, ), ], diff --git a/lib/presentation/home/home_page.dart b/lib/presentation/home/home_page.dart index 920e1939..9e3875ee 100644 --- a/lib/presentation/home/home_page.dart +++ b/lib/presentation/home/home_page.dart @@ -1,13 +1,15 @@ +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: +import 'package:ribn_toolkit/constants/colors.dart'; +import 'package:ribn_toolkit/widgets/organisms/ribn_bottom_app_bar_v2.dart'; + +// Project imports: import 'package:ribn/constants/assets.dart'; -import 'package:ribn/constants/keys.dart'; -import 'package:ribn/constants/routes.dart'; import 'package:ribn/presentation/home/wallet_balance_page.dart'; import 'package:ribn/presentation/transaction_history/transaction_history_page.dart'; -import 'package:ribn/presentation/transfers/mint_input_page.dart'; import 'package:ribn/widgets/ribn_app_bar_wapper.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/widgets/organisms/ribn_bottom_app_bar.dart'; /// The 'home page' of Ribn. /// @@ -22,17 +24,14 @@ class HomePage extends StatefulWidget { class _HomePageState extends State with TickerProviderStateMixin { final List _pages = [ const WalletBalancePage(), - const MintInputPage(), const TxHistoryPage(), ]; final List _pageIcons = [ Image.asset(RibnAssets.walletGrey), - Image.asset(RibnAssets.circlePlus), Image.asset(RibnAssets.clockGrey) ]; final List _activePageIcons = [ Image.asset(RibnAssets.walletBlue), - Image.asset(RibnAssets.circlePlus), Image.asset(RibnAssets.clockBlue) ]; int _currPage = 0; @@ -41,7 +40,7 @@ class _HomePageState extends State with TickerProviderStateMixin { Widget build(BuildContext context) { return Scaffold( appBar: const RibnAppBarWrapper(), - bottomNavigationBar: RibnBottomAppBar( + bottomNavigationBar: RibnBottomAppBarV2( pages: _pages, currPage: _currPage, activePageIcons: _activePageIcons, @@ -56,17 +55,6 @@ class _HomePageState extends State with TickerProviderStateMixin { void setCurrentPage(key) { setState(() { _currPage = key; - - if (_currPage == 1) { - _currPage = 0; - Keys.navigatorKey.currentState?.pushNamed( - Routes.mintInput, - arguments: { - 'mintingNewAsset': true, - 'mintingToMyWallet': false, - }, - ); - } }); } } diff --git a/lib/presentation/home/wallet_balance_page.dart b/lib/presentation/home/wallet_balance_page.dart index 5d6b23d2..fe9f52b0 100644 --- a/lib/presentation/home/wallet_balance_page.dart +++ b/lib/presentation/home/wallet_balance_page.dart @@ -1,5 +1,18 @@ -import 'package:brambldart/brambldart.dart'; +// Flutter imports: + +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: +import 'package:brambldart/brambldart.dart'; +import 'package:ribn_toolkit/constants/colors.dart'; +import 'package:ribn_toolkit/constants/styles.dart'; +import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; +import 'package:ribn_toolkit/widgets/molecules/asset_card.dart'; +import 'package:ribn_toolkit/widgets/molecules/custom_tooltip.dart'; +import 'package:ribn_toolkit/widgets/molecules/wave_container.dart'; + +// Project imports: import 'package:ribn/constants/assets.dart'; import 'package:ribn/constants/keys.dart'; import 'package:ribn/constants/routes.dart'; @@ -10,12 +23,7 @@ import 'package:ribn/presentation/empty_state_screen.dart'; import 'package:ribn/presentation/error_section.dart'; import 'package:ribn/presentation/home/wallet_balance_shimmer.dart'; import 'package:ribn/utils.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; -import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; -import 'package:ribn_toolkit/widgets/molecules/asset_card.dart'; -import 'package:ribn_toolkit/widgets/molecules/custom_tooltip.dart'; -import 'package:ribn_toolkit/widgets/molecules/wave_container.dart'; + // import 'package:url_launcher/url_launcher.dart'; /// One of the 3 main pages on the home screen. @@ -69,7 +77,8 @@ class _WalletBalancePageState extends State { // refresh balances on network toggle or when new addresses are generated final bool shouldRefresh = currVm.walletExists && (prevVm?.currentNetwork.networkName != currVm.currentNetwork.networkName || - prevVm?.currentNetwork.lastCheckedTimestamp != currVm.currentNetwork.lastCheckedTimestamp || + prevVm?.currentNetwork.lastCheckedTimestamp != + currVm.currentNetwork.lastCheckedTimestamp || prevVm?.currentNetwork.addresses.length != currVm.currentNetwork.addresses.length); if (shouldRefresh) refreshBalances(currVm); }, @@ -164,7 +173,10 @@ class _WalletBalancePageState extends State { _fetchingBalances ? const CircularProgressIndicator() : _failedToFetchBalances - ? const Text('Network Failure', style: TextStyle(color: Colors.red)) + ? const Text( + 'Network Failure', + style: TextStyle(color: Colors.red), + ) : Row( mainAxisAlignment: MainAxisAlignment.center, children: [ @@ -219,16 +231,8 @@ class _WalletBalancePageState extends State { icon: RibnAssets.walletWithBorder, title: Strings.noAssetsInWallet, body: emptyStateBody, - buttonOneText: 'Mint', - buttonOneAction: () => Keys.navigatorKey.currentState?.pushNamed( - Routes.mintInput, - arguments: { - 'mintingNewAsset': true, - 'mintingToMyWallet': true, - }, - ), - buttonTwoText: 'Share', - buttonTwoAction: () async => await showReceivingAddress(), + buttonOneText: 'Share', + buttonOneAction: () async => await showReceivingAddress(), mobileHeight: MediaQuery.of(context).size.height * 0.5, desktopHeight: 258, ); @@ -282,14 +286,21 @@ class _WalletBalancePageState extends State { required Function(AssetAmount) viewAssetDetails, }) { final String assetIcon = assetDetails?.icon ?? RibnAssets.undefinedIcon; - final String assetUnit = assetDetails?.unit != null ? formatAssetUnit(assetDetails!.unit) : 'Unit'; + + final String assetUnit = + assetDetails?.unit != null ? formatAssetUnit(assetDetails!.unit) : 'Unit'; final String assetLongName = assetDetails?.longName ?? ''; final bool isMissingAssetDetails = assetIcon == RibnAssets.undefinedIcon || assetUnit == 'Unit' || assetLongName.isEmpty; + bool isNft = false; return AssetCard( + isNft: isNft, onCardPress: () => viewAssetDetails(asset), - iconImage: Image.asset(assetIcon, width: 31), + iconImage: Image.asset( + assetIcon, + width: 30, + ), shortName: Text( asset.assetCode.shortName.show.replaceAll('\x00', ''), style: RibnToolkitTextStyles.assetShortNameStyle, @@ -307,10 +318,11 @@ class _WalletBalancePageState extends State { ), missingAsstDetailsCondition: isMissingAssetDetails, assetQuantityDetails: Text( - '${asset.quantity.toString()} $assetUnit', + // ignore: dead_code + isNft ? '${asset.quantity.toString()}' : '${asset.quantity.toString()}', overflow: TextOverflow.ellipsis, style: RibnToolkitTextStyles.assetShortNameStyle.copyWith( - color: RibnColors.primary, + color: RibnColors.greyText, ), ), ); @@ -329,7 +341,10 @@ class _WalletBalancePageState extends State { buttonChild: Row( mainAxisAlignment: MainAxisAlignment.center, children: [ - Text(label, style: RibnToolkitTextStyles.h4.copyWith(color: Colors.white)), + Text( + label, + style: RibnToolkitTextStyles.h4.copyWith(color: Colors.white), + ), ], ), ), diff --git a/lib/presentation/home/wallet_balance_shimmer.dart b/lib/presentation/home/wallet_balance_shimmer.dart index cbd71f43..9c34a3d6 100644 --- a/lib/presentation/home/wallet_balance_shimmer.dart +++ b/lib/presentation/home/wallet_balance_shimmer.dart @@ -1,4 +1,7 @@ +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: import 'package:ribn_toolkit/widgets/molecules/shimmer_loader.dart'; class WalletBalanceShimmer extends StatelessWidget { diff --git a/lib/presentation/login/login_page.dart b/lib/presentation/login/login_page.dart index a2d7f12e..faa087bc 100644 --- a/lib/presentation/login/login_page.dart +++ b/lib/presentation/login/login_page.dart @@ -1,10 +1,24 @@ -import 'package:bip_topl/bip_topl.dart'; +// Flutter imports: + +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/gestures.dart'; import 'package:flutter/material.dart'; + +// Package imports: +import 'package:bip_topl/bip_topl.dart'; import 'package:flutter_redux/flutter_redux.dart'; import 'package:loader_overlay/loader_overlay.dart'; import 'package:local_auth/local_auth.dart'; +import 'package:ribn_toolkit/constants/colors.dart'; +import 'package:ribn_toolkit/constants/styles.dart'; +import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; +import 'package:ribn_toolkit/widgets/molecules/custom_tooltip.dart'; +import 'package:ribn_toolkit/widgets/molecules/password_text_field.dart'; +import 'package:ribn_toolkit/widgets/molecules/wave_container.dart'; +import 'package:url_launcher/url_launcher.dart'; + +// Project imports: import 'package:ribn/actions/keychain_actions.dart'; import 'package:ribn/constants/assets.dart'; import 'package:ribn/constants/keys.dart'; @@ -15,13 +29,6 @@ import 'package:ribn/models/app_state.dart'; import 'package:ribn/platform/platform.dart'; import 'package:ribn/presentation/onboarding/utils.dart'; import 'package:ribn/utils.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; -import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; -import 'package:ribn_toolkit/widgets/molecules/custom_tooltip.dart'; -import 'package:ribn_toolkit/widgets/molecules/password_text_field.dart'; -import 'package:ribn_toolkit/widgets/molecules/wave_container.dart'; -import 'package:url_launcher/url_launcher.dart'; /// Builds the login page. /// @@ -53,7 +60,8 @@ class _LoginPageState extends State { bool authenticated = false; try { authenticated = await authenticateWithBiometrics(_localAuthentication); - final String toplKey = (await PlatformLocalStorage.instance.getKeyFromSecureStorage())!; + final String toplKey = + (await PlatformLocalStorage.instance.getKeyFromSecureStorage())!; if (authenticated) { StoreProvider.of(context).dispatch( InitializeHDWalletAction( @@ -79,7 +87,10 @@ class _LoginPageState extends State { void _checkBiometrics(LoginViewModel vm) { if (vm.isBiometricsEnabled) { _biometricsLogin().then( - (value) => {if (_authorized) Keys.navigatorKey.currentState?.pushReplacementNamed(Routes.home)}, + (value) => { + if (_authorized) + Keys.navigatorKey.currentState?.pushReplacementNamed(Routes.home) + }, ); } } @@ -120,14 +131,19 @@ class _LoginPageState extends State { containerWidth: adaptWidth(1), waveAmplitude: 30, containerChild: Column( - mainAxisAlignment: kIsWeb ? MainAxisAlignment.start : MainAxisAlignment.spaceAround, + mainAxisAlignment: kIsWeb + ? MainAxisAlignment.start + : MainAxisAlignment.spaceAround, crossAxisAlignment: CrossAxisAlignment.center, children: [ Column( children: [ SizedBox(height: deviceTopPadding()), renderIfWeb(const SizedBox(height: 40)), - Image.asset(RibnAssets.newRibnLogo, width: kIsWeb ? 102 : 138), + Image.asset( + RibnAssets.newRibnLogo, + width: kIsWeb ? 102 : 138, + ), Text( Strings.ribnWallet, style: RibnToolkitTextStyles.h1.copyWith( @@ -166,7 +182,9 @@ class _LoginPageState extends State { ), ], ), - kIsWeb ? const SizedBox(height: 40) : const SizedBox(height: 25), + kIsWeb + ? const SizedBox(height: 40) + : const SizedBox(height: 25), LargeButton( backgroundColor: RibnColors.primary, dropShadowColor: RibnColors.whiteButtonShadow, @@ -272,7 +290,8 @@ class _LoginPageState extends State { children: [ TextSpan( text: Strings.forgotPassword, - recognizer: TapGestureRecognizer()..onTap = () => onButtonPress(), + recognizer: TapGestureRecognizer() + ..onTap = () => onButtonPress(), ) ], ), diff --git a/lib/presentation/onboarding/create_wallet/create_password_page.dart b/lib/presentation/onboarding/create_wallet/create_password_page.dart index c433c28f..183ff760 100644 --- a/lib/presentation/onboarding/create_wallet/create_password_page.dart +++ b/lib/presentation/onboarding/create_wallet/create_password_page.dart @@ -1,7 +1,17 @@ +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/gestures.dart'; import 'package:flutter/material.dart'; + +// Package imports: import 'package:loader_overlay/loader_overlay.dart'; +import 'package:ribn_toolkit/constants/colors.dart'; +import 'package:ribn_toolkit/constants/styles.dart'; +import 'package:ribn_toolkit/widgets/molecules/checkbox_wrappable_text.dart'; +import 'package:ribn_toolkit/widgets/molecules/password_text_field.dart'; +import 'package:url_launcher/url_launcher.dart'; + +// Project imports: import 'package:ribn/constants/assets.dart'; import 'package:ribn/constants/routes.dart'; import 'package:ribn/constants/strings.dart'; @@ -12,11 +22,6 @@ import 'package:ribn/presentation/onboarding/widgets/mobile_onboarding_progress_ import 'package:ribn/presentation/onboarding/widgets/onboarding_container.dart'; import 'package:ribn/presentation/onboarding/widgets/web_onboarding_app_bar.dart'; import 'package:ribn/utils.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; -import 'package:ribn_toolkit/widgets/molecules/checkbox_wrappable_text.dart'; -import 'package:ribn_toolkit/widgets/molecules/password_text_field.dart'; -import 'package:url_launcher/url_launcher.dart'; class CreatePasswordPage extends StatefulWidget { const CreatePasswordPage({Key? key}) : super(key: key); @@ -29,7 +34,8 @@ class _CreatePasswordPageState extends State { final FocusNode _newPasswordFocus = FocusNode(); final FocusNode _confirmPasswordFocus = FocusNode(); final TextEditingController _newPasswordController = TextEditingController(); - final TextEditingController _confirmPasswordController = TextEditingController(); + final TextEditingController _confirmPasswordController = + TextEditingController(); bool _termsOfUseChecked = false; bool _atLeast8Chars = false; bool _passwordsMatch = false; @@ -38,15 +44,20 @@ class _CreatePasswordPageState extends State { void initState() { [_newPasswordFocus, _newPasswordController].toList().forEach((elem) { elem.addListener(() { - if (!_newPasswordFocus.hasPrimaryFocus || _newPasswordController.text.length >= 8) { - _atLeast8Chars = _newPasswordController.text.isNotEmpty && _newPasswordController.text.length >= 8; + if (!_newPasswordFocus.hasPrimaryFocus || + _newPasswordController.text.length >= 8) { + _atLeast8Chars = _newPasswordController.text.isNotEmpty && + _newPasswordController.text.length >= 8; setState(() {}); } }); }); - [_confirmPasswordFocus, _confirmPasswordController].toList().forEach((elem) { + [_confirmPasswordFocus, _confirmPasswordController] + .toList() + .forEach((elem) { elem.addListener(() { - if (!_confirmPasswordFocus.hasPrimaryFocus || _confirmPasswordController.text == _newPasswordController.text) { + if (!_confirmPasswordFocus.hasPrimaryFocus || + _confirmPasswordController.text == _newPasswordController.text) { _passwordsMatch = _confirmPasswordController.text.isNotEmpty && _confirmPasswordController.text == _newPasswordController.text; setState(() {}); @@ -60,7 +71,8 @@ class _CreatePasswordPageState extends State { Widget build(BuildContext context) { return CreatePasswordContainer( onDidChange: (prevVm, newVm) { - if (prevVm?.keyStoreJson != newVm.keyStoreJson && newVm.passwordSuccessfullyCreated) { + if (prevVm?.keyStoreJson != newVm.keyStoreJson && + newVm.passwordSuccessfullyCreated) { context.loaderOverlay.hide(); navigateToRoute(context, Routes.walletInfoChecklist); } @@ -104,7 +116,9 @@ class _CreatePasswordPageState extends State { SizedBox(height: adaptHeight(0.02)), CheckboxWrappableText( wrapText: false, - borderColor: _termsOfUseChecked ? const Color(0xff80FF00) : RibnColors.lightGreyTitle, + borderColor: _termsOfUseChecked + ? const Color(0xff80FF00) + : RibnColors.lightGreyTitle, value: _termsOfUseChecked, onChanged: (bool? checked) { setState(() { @@ -131,7 +145,8 @@ class _CreatePasswordPageState extends State { ), recognizer: TapGestureRecognizer() ..onTap = () async { - final Uri url = Uri.parse(Strings.termsOfUseUrl); + final Uri url = + Uri.parse(Strings.termsOfUseUrl); await launchUrl(url); }, @@ -145,10 +160,14 @@ class _CreatePasswordPageState extends State { ), ), const SizedBox(height: 40), - renderIfMobile(const MobileOnboardingProgressBar(currStep: 2)), + renderIfMobile( + const MobileOnboardingProgressBar(currStep: 2), + ), ConfirmationButton( text: Strings.done, - disabled: !_atLeast8Chars || !_passwordsMatch || !_termsOfUseChecked, + disabled: !_atLeast8Chars || + !_passwordsMatch || + !_termsOfUseChecked, onPressed: () { context.loaderOverlay.show(); vm.attemptCreatePassword(_confirmPasswordController.text); @@ -197,7 +216,9 @@ class _CreatePasswordPageState extends State { Strings.atLeast8Chars, textAlign: TextAlign.left, style: RibnToolkitTextStyles.h3.copyWith( - color: !_atLeast8Chars && _newPasswordController.text.isNotEmpty ? Colors.red : Colors.white, + color: !_atLeast8Chars && _newPasswordController.text.isNotEmpty + ? Colors.red + : Colors.white, ), ), ), @@ -248,7 +269,10 @@ class _CreatePasswordPageState extends State { Strings.passwordsMustMatch, textAlign: TextAlign.left, style: RibnToolkitTextStyles.h3.copyWith( - color: !_passwordsMatch && _confirmPasswordController.text.isNotEmpty ? Colors.red : Colors.white, + color: + !_passwordsMatch && _confirmPasswordController.text.isNotEmpty + ? Colors.red + : Colors.white, ), ), ), diff --git a/lib/presentation/onboarding/create_wallet/enable_biometrics_page.dart b/lib/presentation/onboarding/create_wallet/enable_biometrics_page.dart index 943a86bf..5fea4fe8 100644 --- a/lib/presentation/onboarding/create_wallet/enable_biometrics_page.dart +++ b/lib/presentation/onboarding/create_wallet/enable_biometrics_page.dart @@ -1,10 +1,20 @@ +// Dart imports: import 'dart:io' show Platform; -import 'package:app_settings/app_settings.dart'; +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; + +// Package imports: +import 'package:app_settings/app_settings.dart'; import 'package:flutter_redux/flutter_redux.dart'; import 'package:local_auth/local_auth.dart'; +import 'package:ribn_toolkit/constants/colors.dart'; +import 'package:ribn_toolkit/constants/styles.dart'; +import 'package:ribn_toolkit/widgets/atoms/custom_icon_button.dart'; +import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; + +// Project imports: import 'package:ribn/actions/user_details_actions.dart'; import 'package:ribn/constants/assets.dart'; import 'package:ribn/constants/keys.dart'; @@ -14,10 +24,6 @@ import 'package:ribn/models/app_state.dart'; import 'package:ribn/presentation/onboarding/widgets/onboarding_container.dart'; import 'package:ribn/presentation/transfers/bottom_review_action.dart'; import 'package:ribn/utils.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; -import 'package:ribn_toolkit/widgets/atoms/custom_icon_button.dart'; -import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; class EnableBiometrics extends StatefulWidget { const EnableBiometrics({Key? key}) : super(key: key); @@ -79,8 +85,8 @@ class _EnableBiometricsState extends State { }, ), const TextButton( - child: Text('Go to settings'), onPressed: AppSettings.openSecuritySettings, + child: Text('Go to settings'), ), ], ); @@ -100,7 +106,8 @@ class _EnableBiometricsState extends State { children: [ CustomIconButton( onPressed: () { - Keys.navigatorKey.currentState?.pushNamed(Routes.walletCreated); + Keys.navigatorKey.currentState + ?.pushNamed(Routes.walletCreated); }, icon: const Icon( Icons.close, @@ -119,7 +126,9 @@ class _EnableBiometricsState extends State { Padding( padding: const EdgeInsets.only(top: 30.0, bottom: 45), child: Image.asset( - Platform.isIOS ? RibnAssets.iosBiometrics : RibnAssets.andriodBiometrics, + Platform.isIOS + ? RibnAssets.iosBiometrics + : RibnAssets.andriodBiometrics, width: 111, ), ), @@ -152,7 +161,11 @@ class _EnableBiometricsState extends State { ), onPressed: () { runBiometrics(_localAuthentication).then( - (value) => {if (_authorized) Keys.navigatorKey.currentState?.pushNamed(Routes.walletCreated)}, + (value) => { + if (_authorized) + Keys.navigatorKey.currentState + ?.pushNamed(Routes.walletCreated) + }, ); }, backgroundColor: RibnColors.primary, diff --git a/lib/presentation/onboarding/create_wallet/getting_started_page.dart b/lib/presentation/onboarding/create_wallet/getting_started_page.dart index ff40f7b1..96b22aa4 100644 --- a/lib/presentation/onboarding/create_wallet/getting_started_page.dart +++ b/lib/presentation/onboarding/create_wallet/getting_started_page.dart @@ -1,5 +1,12 @@ +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; + +// Package imports: +import 'package:ribn_toolkit/constants/colors.dart'; +import 'package:ribn_toolkit/constants/styles.dart'; + +// Project imports: import 'package:ribn/constants/assets.dart'; import 'package:ribn/constants/keys.dart'; import 'package:ribn/constants/routes.dart'; @@ -8,8 +15,6 @@ import 'package:ribn/presentation/onboarding/utils.dart'; import 'package:ribn/presentation/onboarding/widgets/confirmation_button.dart'; import 'package:ribn/presentation/onboarding/widgets/onboarding_container.dart'; import 'package:ribn/presentation/onboarding/widgets/web_onboarding_app_bar.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; class GettingStartedPage extends StatelessWidget { const GettingStartedPage({Key? key}) : super(key: key); @@ -47,7 +52,8 @@ class GettingStartedPage extends StatelessWidget { ConfirmationButton( text: Strings.okLetsGo, onPressed: () { - Keys.navigatorKey.currentState?.pushNamed(Routes.seedPhraseInfoChecklist); + Keys.navigatorKey.currentState + ?.pushNamed(Routes.seedPhraseInfoChecklist); }, ), ], diff --git a/lib/presentation/onboarding/create_wallet/seed_phrase_confirmation_page.dart b/lib/presentation/onboarding/create_wallet/seed_phrase_confirmation_page.dart index 1ffa3f9e..73949a16 100644 --- a/lib/presentation/onboarding/create_wallet/seed_phrase_confirmation_page.dart +++ b/lib/presentation/onboarding/create_wallet/seed_phrase_confirmation_page.dart @@ -1,6 +1,14 @@ +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; + +// Package imports: +import 'package:ribn_toolkit/constants/styles.dart'; +import 'package:ribn_toolkit/widgets/atoms/custom_text_field.dart'; +import 'package:ribn_toolkit/widgets/organisms/onboarding_progress_bar.dart'; + +// Project imports: import 'package:ribn/constants/assets.dart'; import 'package:ribn/constants/keys.dart'; import 'package:ribn/constants/routes.dart'; @@ -11,18 +19,17 @@ import 'package:ribn/presentation/onboarding/widgets/confirmation_button.dart'; import 'package:ribn/presentation/onboarding/widgets/onboarding_container.dart'; import 'package:ribn/presentation/onboarding/widgets/web_onboarding_app_bar.dart'; import 'package:ribn/utils.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; -import 'package:ribn_toolkit/widgets/atoms/custom_text_field.dart'; -import 'package:ribn_toolkit/widgets/organisms/onboarding_progress_bar.dart'; class SeedPhraseConfirmationPage extends StatefulWidget { const SeedPhraseConfirmationPage({Key? key}) : super(key: key); @override - State createState() => _SeedPhraseConfirmationPageState(); + State createState() => + _SeedPhraseConfirmationPageState(); } -class _SeedPhraseConfirmationPageState extends State { +class _SeedPhraseConfirmationPageState + extends State { final Map idxControllerMap = {}; final Map controllerErrorMap = {}; @@ -48,19 +55,26 @@ class _SeedPhraseConfirmationPageState extends State SizedBox( child: Text( Strings.writeDownSeedPhrase, - style: RibnToolkitTextStyles.onboardingH1.copyWith(letterSpacing: 0.5), + style: RibnToolkitTextStyles.onboardingH1 + .copyWith(letterSpacing: 0.5), textAlign: TextAlign.center, ), ), Image.asset(RibnAssets.penPaperPng, width: 70), Padding( - padding: EdgeInsets.only(top: adaptHeight(0.04), bottom: adaptHeight(0.02)), + padding: EdgeInsets.only( + top: adaptHeight(0.04), + bottom: adaptHeight(0.02), + ), child: const Text( Strings.ensureYourWordsAreCorrect, style: RibnToolkitTextStyles.onboardingH3, ), ), - _buildSeedphraseConfirmationGrid(vm.confirmeIdxs, vm.mnemonicWordsList), + _buildSeedphraseConfirmationGrid( + vm.confirmeIdxs, + vm.mnemonicWordsList, + ), const SizedBox(height: 40), renderIfMobile( const Padding( @@ -73,12 +87,14 @@ class _SeedPhraseConfirmationPageState extends State onPressed: () { // Update errors if text entered does not match mnemonic word at specified idx idxControllerMap.forEach((idx, controller) { - final bool wordsMatch = controller.text.trim() == vm.mnemonicWordsList[idx]; + final bool wordsMatch = + controller.text.trim() == vm.mnemonicWordsList[idx]; controllerErrorMap[controller] = !wordsMatch; }); setState(() {}); if (!controllerErrorMap.values.contains(true)) { - Keys.navigatorKey.currentState?.pushNamed(Routes.createPassword); + Keys.navigatorKey.currentState + ?.pushNamed(Routes.createPassword); } }, ), @@ -91,13 +107,26 @@ class _SeedPhraseConfirmationPageState extends State ); } - Widget _buildSeedphraseConfirmationGrid(List confirmIdxs, List mnemonicWordsList) { + Widget _buildSeedphraseConfirmationGrid( + List confirmIdxs, + List mnemonicWordsList, + ) { final List mobileRows = []; List webRowChildren = []; final List> webRows = []; for (int i = 0; i < confirmIdxs.length; i++) { - mobileRows.add(_buildConfirmationTextField(confirmIdxs[i], mnemonicWordsList[confirmIdxs[i]])); - webRowChildren.add(_buildConfirmationTextField(confirmIdxs[i], mnemonicWordsList[confirmIdxs[i]])); + mobileRows.add( + _buildConfirmationTextField( + confirmIdxs[i], + mnemonicWordsList[confirmIdxs[i]], + ), + ); + webRowChildren.add( + _buildConfirmationTextField( + confirmIdxs[i], + mnemonicWordsList[confirmIdxs[i]], + ), + ); if ((i + 1) % 2 == 0) { webRows.add(webRowChildren); webRowChildren = []; @@ -126,7 +155,8 @@ class _SeedPhraseConfirmationPageState extends State Widget _buildConfirmationTextField(int idx, String word) { return Padding( - padding: const EdgeInsets.symmetric(vertical: 5, horizontal: kIsWeb ? 20 : 0), + padding: + const EdgeInsets.symmetric(vertical: 5, horizontal: kIsWeb ? 20 : 0), child: Align( alignment: Alignment.centerLeft, child: Column( @@ -159,7 +189,10 @@ class _SeedPhraseConfirmationPageState extends State class LowerCaseTextFormatter extends TextInputFormatter { @override - TextEditingValue formatEditUpdate(TextEditingValue oldValue, TextEditingValue newValue) { + TextEditingValue formatEditUpdate( + TextEditingValue oldValue, + TextEditingValue newValue, + ) { return TextEditingValue( text: newValue.text.toLowerCase(), selection: newValue.selection, diff --git a/lib/presentation/onboarding/create_wallet/seed_phrase_display_page.dart b/lib/presentation/onboarding/create_wallet/seed_phrase_display_page.dart index fdc5e3d4..d1fa8819 100644 --- a/lib/presentation/onboarding/create_wallet/seed_phrase_display_page.dart +++ b/lib/presentation/onboarding/create_wallet/seed_phrase_display_page.dart @@ -1,7 +1,14 @@ +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; + +// Package imports: import 'package:flutter_redux/flutter_redux.dart'; +import 'package:ribn_toolkit/constants/colors.dart'; +import 'package:ribn_toolkit/constants/styles.dart'; + +// Project imports: import 'package:ribn/actions/misc_actions.dart'; import 'package:ribn/constants/assets.dart'; import 'package:ribn/constants/keys.dart'; @@ -14,8 +21,6 @@ import 'package:ribn/presentation/onboarding/widgets/mobile_onboarding_progress_ import 'package:ribn/presentation/onboarding/widgets/onboarding_container.dart'; import 'package:ribn/presentation/onboarding/widgets/web_onboarding_app_bar.dart'; import 'package:ribn/utils.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; class SeedPhraseDisplayPage extends StatelessWidget { const SeedPhraseDisplayPage({Key? key}) : super(key: key); @@ -40,24 +45,31 @@ class SeedPhraseDisplayPage extends StatelessWidget { child: Column( mainAxisAlignment: MainAxisAlignment.start, children: [ - kIsWeb ? const WebOnboardingAppBar(currStep: 0) : const SizedBox(), + kIsWeb + ? const WebOnboardingAppBar(currStep: 0) + : const SizedBox(), SizedBox( child: Text( Strings.writeDownSeedPhrase, - style: RibnToolkitTextStyles.onboardingH1.copyWith(letterSpacing: 0.5), + style: RibnToolkitTextStyles.onboardingH1 + .copyWith(letterSpacing: 0.5), textAlign: TextAlign.center, ), ), Image.asset(RibnAssets.penPaperPng, width: 70), Padding( - padding: EdgeInsets.symmetric(vertical: kIsWeb ? 40 : adaptHeight(0.03)), + padding: EdgeInsets.symmetric( + vertical: kIsWeb ? 40 : adaptHeight(0.03), + ), child: const Text( Strings.writeDownSeedPhraseInExactOrder, style: RibnToolkitTextStyles.onboardingH3, ), ), Container( - height: kIsWeb ? 280 : adaptHeight(isXsScreenSize ? 0.58 : 0.41), + height: kIsWeb + ? 280 + : adaptHeight(isXsScreenSize ? 0.58 : 0.41), width: kIsWeb ? 674 : adaptWidth(isXsScreenSize ? 1 : 0.9), decoration: BoxDecoration( color: RibnColors.greyText.withOpacity(0.24), @@ -75,7 +87,9 @@ class SeedPhraseDisplayPage extends StatelessWidget { alignment: Alignment.bottomRight, child: _buildButton( Strings.copy, - onPressed: () => Clipboard.setData(ClipboardData(text: seedPhrase)), + onPressed: () => Clipboard.setData( + ClipboardData(text: seedPhrase), + ), width: 19, height: 15, ), @@ -93,8 +107,13 @@ class SeedPhraseDisplayPage extends StatelessWidget { padding: const EdgeInsets.only(top: 8.0), child: _buildButton( Strings.download, - onPressed: () => StoreProvider.of(context).dispatch( - DownloadAsFileAction(Strings.seedPhraseFileName, seedPhrase), + onPressed: () => + StoreProvider.of(context) + .dispatch( + DownloadAsFileAction( + Strings.seedPhraseFileName, + seedPhrase, + ), ), width: 30, height: 23, @@ -104,11 +123,14 @@ class SeedPhraseDisplayPage extends StatelessWidget { : const SizedBox(), ), SizedBox(height: adaptHeight(0.1)), - renderIfMobile(const MobileOnboardingProgressBar(currStep: 0)), + renderIfMobile( + const MobileOnboardingProgressBar(currStep: 0), + ), ConfirmationButton( text: Strings.done, onPressed: () { - Keys.navigatorKey.currentState?.pushNamed(Routes.seedPhraseConfirm); + Keys.navigatorKey.currentState + ?.pushNamed(Routes.seedPhraseConfirm); }, ), ], @@ -161,7 +183,8 @@ class SeedPhraseDisplayPage extends StatelessWidget { width: 25, child: Text( '${idx + 1}. ', - style: RibnToolkitTextStyles.h3.copyWith(color: const Color(0xff00FFC5), letterSpacing: 0.5), + style: RibnToolkitTextStyles.h3 + .copyWith(color: const Color(0xff00FFC5), letterSpacing: 0.5), ), ), Text( @@ -179,7 +202,9 @@ class SeedPhraseDisplayPage extends StatelessWidget { required double width, required double height, }) { - final String icon = buttonText == Strings.download ? RibnAssets.downloadPng : RibnAssets.contentCopyPng; + final String icon = buttonText == Strings.download + ? RibnAssets.downloadPng + : RibnAssets.contentCopyPng; return TextButton( onPressed: onPressed, child: RichText( @@ -187,8 +212,11 @@ class SeedPhraseDisplayPage extends StatelessWidget { children: [ TextSpan( text: '$buttonText ', - style: RibnToolkitTextStyles.h3 - .copyWith(color: const Color(0xff00FFC5), letterSpacing: 0.5, height: kIsWeb ? 1 : 0), + style: RibnToolkitTextStyles.h3.copyWith( + color: const Color(0xff00FFC5), + letterSpacing: 0.5, + height: kIsWeb ? 1 : 0, + ), ), WidgetSpan( child: Padding( diff --git a/lib/presentation/onboarding/create_wallet/seed_phrase_generating_page.dart b/lib/presentation/onboarding/create_wallet/seed_phrase_generating_page.dart index cfa86c02..f16a9edd 100644 --- a/lib/presentation/onboarding/create_wallet/seed_phrase_generating_page.dart +++ b/lib/presentation/onboarding/create_wallet/seed_phrase_generating_page.dart @@ -1,6 +1,14 @@ +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; + +// Package imports: import 'package:flutter_redux/flutter_redux.dart'; +import 'package:ribn_toolkit/constants/colors.dart'; +import 'package:ribn_toolkit/constants/styles.dart'; +import 'package:ribn_toolkit/widgets/molecules/animated_circle_step_loader.dart'; + +// Project imports: import 'package:ribn/actions/onboarding_actions.dart'; import 'package:ribn/constants/assets.dart'; import 'package:ribn/constants/keys.dart'; @@ -12,16 +20,14 @@ import 'package:ribn/presentation/onboarding/widgets/confirmation_button.dart'; import 'package:ribn/presentation/onboarding/widgets/onboarding_container.dart'; import 'package:ribn/presentation/onboarding/widgets/web_onboarding_app_bar.dart'; import 'package:ribn/utils.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; -import 'package:ribn_toolkit/widgets/molecules/animated_circle_step_loader.dart'; /// This page shows a loading animation to indicate seed phrase generation. class SeedPhraseGeneratingPage extends StatefulWidget { const SeedPhraseGeneratingPage({Key? key}) : super(key: key); @override - _SeedPhraseGeneratingPageState createState() => _SeedPhraseGeneratingPageState(); + _SeedPhraseGeneratingPageState createState() => + _SeedPhraseGeneratingPageState(); } class _SeedPhraseGeneratingPageState extends State { @@ -42,7 +48,9 @@ class _SeedPhraseGeneratingPageState extends State { clipBehavior: Clip.none, child: Center( child: Column( - children: seedPhraseGenerating ? seedPhraseGeneratingSection() : seedPhraseGeneratedSection(), + children: seedPhraseGenerating + ? seedPhraseGeneratingSection() + : seedPhraseGeneratedSection(), ), ), ), @@ -73,6 +81,7 @@ class _SeedPhraseGeneratingPageState extends State { activeCircleRadius: 8, inactiveCircleRadius: 4.5, dotPadding: 8, + renderCenterIcon: false, ), SizedBox( width: descriptionBoxWidth, diff --git a/lib/presentation/onboarding/create_wallet/seed_phrase_info_checklist_page.dart b/lib/presentation/onboarding/create_wallet/seed_phrase_info_checklist_page.dart index 9595994d..93adbc1d 100644 --- a/lib/presentation/onboarding/create_wallet/seed_phrase_info_checklist_page.dart +++ b/lib/presentation/onboarding/create_wallet/seed_phrase_info_checklist_page.dart @@ -1,5 +1,13 @@ +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; + +// Package imports: +import 'package:ribn_toolkit/constants/colors.dart'; +import 'package:ribn_toolkit/constants/styles.dart'; +import 'package:ribn_toolkit/widgets/molecules/checkbox_wrappable_text.dart'; + +// Project imports: import 'package:ribn/constants/assets.dart'; import 'package:ribn/constants/keys.dart'; import 'package:ribn/constants/routes.dart'; @@ -9,19 +17,18 @@ import 'package:ribn/presentation/onboarding/widgets/confirmation_button.dart'; import 'package:ribn/presentation/onboarding/widgets/onboarding_container.dart'; import 'package:ribn/presentation/onboarding/widgets/web_onboarding_app_bar.dart'; import 'package:ribn/utils.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; -import 'package:ribn_toolkit/widgets/molecules/checkbox_wrappable_text.dart'; /// Builds checks to ensure that the user understands the importance of the seed phrase. class SeedPhraseInfoChecklistPage extends StatefulWidget { const SeedPhraseInfoChecklistPage({Key? key}) : super(key: key); @override - State createState() => _SeedPhraseInfoChecklistPageState(); + State createState() => + _SeedPhraseInfoChecklistPageState(); } -class _SeedPhraseInfoChecklistPageState extends State { +class _SeedPhraseInfoChecklistPageState + extends State { /// Checkboxes and their corresponding checked value final Map checkboxesState = { Strings.neverShareMySeedPhrase: false, @@ -51,22 +58,28 @@ class _SeedPhraseInfoChecklistPageState extends State onChecked(val ?? false, Strings.neverShareMySeedPhrase), + onChanged: (bool? val) => + onChecked(val ?? false, Strings.neverShareMySeedPhrase), ), const SizedBox(height: 40), _buildCheckboxListTile( - checked: checkboxesState[Strings.walletRecoveryUsingSeedPhrase]!, + checked: + checkboxesState[Strings.walletRecoveryUsingSeedPhrase]!, activeText: checkboxesState[Strings.neverShareMySeedPhrase]!, text: Strings.walletRecoveryUsingSeedPhrase, onChanged: checkboxesState[Strings.neverShareMySeedPhrase]! - ? (bool? val) => onChecked(val ?? false, Strings.walletRecoveryUsingSeedPhrase) + ? (bool? val) => onChecked( + val ?? false, + Strings.walletRecoveryUsingSeedPhrase, + ) : null, ), SizedBox(height: adaptHeight(0.1)), ConfirmationButton( text: Strings.iUnderstand, onPressed: () { - Keys.navigatorKey.currentState?.pushNamed(Routes.seedPhraseInstructions); + Keys.navigatorKey.currentState + ?.pushNamed(Routes.seedPhraseInstructions); }, disabled: checkboxesState.containsValue(false), ) diff --git a/lib/presentation/onboarding/create_wallet/seed_phrase_instructions_page.dart b/lib/presentation/onboarding/create_wallet/seed_phrase_instructions_page.dart index c21ca9e7..e73afe92 100644 --- a/lib/presentation/onboarding/create_wallet/seed_phrase_instructions_page.dart +++ b/lib/presentation/onboarding/create_wallet/seed_phrase_instructions_page.dart @@ -1,5 +1,12 @@ +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; + +// Package imports: +import 'package:ribn_toolkit/constants/colors.dart'; +import 'package:ribn_toolkit/constants/styles.dart'; + +// Project imports: import 'package:ribn/constants/assets.dart'; import 'package:ribn/constants/keys.dart'; import 'package:ribn/constants/routes.dart'; @@ -9,8 +16,6 @@ import 'package:ribn/presentation/onboarding/widgets/confirmation_button.dart'; import 'package:ribn/presentation/onboarding/widgets/onboarding_container.dart'; import 'package:ribn/presentation/onboarding/widgets/web_onboarding_app_bar.dart'; import 'package:ribn/utils.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; /// This page shows intructions on how to keep the seed phrase secure. class SeedPhraseInstructionsPage extends StatelessWidget { @@ -69,7 +74,8 @@ class SeedPhraseInstructionsPage extends StatelessWidget { ConfirmationButton( text: Strings.iUnderstand, onPressed: () { - Keys.navigatorKey.currentState?.pushNamed(Routes.generateSeedPhrase); + Keys.navigatorKey.currentState + ?.pushNamed(Routes.generateSeedPhrase); }, ) ], @@ -99,7 +105,10 @@ class SeedPhraseInstructionsPage extends StatelessWidget { width: width, height: height, child: Padding( - padding: EdgeInsets.only(left: iconLeftPadding, right: iconRightPadding), + padding: EdgeInsets.only( + left: iconLeftPadding, + right: iconRightPadding, + ), child: Image.asset(pngIcon, width: 30), ), ), @@ -110,7 +119,8 @@ class SeedPhraseInstructionsPage extends StatelessWidget { width: kIsWeb ? 500 : 295, child: Text( text, - textHeightBehavior: const TextHeightBehavior(applyHeightToFirstAscent: false), + textHeightBehavior: + const TextHeightBehavior(applyHeightToFirstAscent: false), style: RibnToolkitTextStyles.h3.copyWith( color: RibnColors.lightGreyTitle, fontSize: 18, diff --git a/lib/presentation/onboarding/create_wallet/select_action_page.dart b/lib/presentation/onboarding/create_wallet/select_action_page.dart index 02153c4d..47e48f76 100644 --- a/lib/presentation/onboarding/create_wallet/select_action_page.dart +++ b/lib/presentation/onboarding/create_wallet/select_action_page.dart @@ -1,6 +1,13 @@ +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; +// Package imports: +import 'package:ribn_toolkit/constants/colors.dart'; +import 'package:ribn_toolkit/constants/styles.dart'; +import 'package:ribn_toolkit/widgets/molecules/onboarding_action_button.dart'; + +// Project imports: import 'package:ribn/constants/assets.dart'; import 'package:ribn/constants/keys.dart'; import 'package:ribn/constants/routes.dart'; @@ -9,9 +16,6 @@ import 'package:ribn/presentation/onboarding/utils.dart'; import 'package:ribn/presentation/onboarding/widgets/onboarding_container.dart'; import 'package:ribn/presentation/onboarding/widgets/web_onboarding_app_bar.dart'; import 'package:ribn/utils.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; -import 'package:ribn_toolkit/widgets/molecules/onboarding_action_button.dart'; /// This page allows the user to select between creating a new wallet or importing an existing wallet. class SelectActionPage extends StatelessWidget { @@ -29,7 +33,9 @@ class SelectActionPage extends StatelessWidget { Keys.navigatorKey.currentState?.pushNamed(Routes.gettingStarted); }, ), - kIsWeb ? const SizedBox(width: 100, height: 50) : const SizedBox(height: 50), + kIsWeb + ? const SizedBox(width: 100, height: 50) + : const SizedBox(height: 50), OnboardingActionButton( backgroundColor: RibnColors.primary, icon: Image.asset(RibnAssets.importWalletPng), @@ -61,7 +67,10 @@ class SelectActionPage extends StatelessWidget { SizedBox(height: adaptHeight(0.1)), // display actionbuttons in row or column depending on platform kIsWeb - ? Row(mainAxisAlignment: MainAxisAlignment.center, children: actionButtons) + ? Row( + mainAxisAlignment: MainAxisAlignment.center, + children: actionButtons, + ) : Column(children: actionButtons), SizedBox(height: adaptHeight(0.1)), ], diff --git a/lib/presentation/onboarding/create_wallet/wallet_created_page.dart b/lib/presentation/onboarding/create_wallet/wallet_created_page.dart index 625bb151..9e69abdd 100644 --- a/lib/presentation/onboarding/create_wallet/wallet_created_page.dart +++ b/lib/presentation/onboarding/create_wallet/wallet_created_page.dart @@ -1,5 +1,13 @@ +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; + +// Package imports: +import 'package:ribn_toolkit/constants/colors.dart'; +import 'package:ribn_toolkit/constants/styles.dart'; +import 'package:ribn_toolkit/widgets/molecules/accordion.dart'; + +// Project imports: import 'package:ribn/constants/assets.dart'; import 'package:ribn/constants/keys.dart'; import 'package:ribn/constants/routes.dart'; @@ -10,9 +18,6 @@ import 'package:ribn/presentation/onboarding/widgets/mobile_onboarding_progress_ import 'package:ribn/presentation/onboarding/widgets/onboarding_container.dart'; import 'package:ribn/presentation/onboarding/widgets/web_onboarding_app_bar.dart'; import 'package:ribn/utils.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; -import 'package:ribn_toolkit/widgets/molecules/accordion.dart'; /// This page is displayed when user successfully creates their wallet. class WalletCreatedPage extends StatefulWidget { @@ -25,9 +30,11 @@ class WalletCreatedPage extends StatefulWidget { class _WalletCreatedPageState extends State { /// FAQs and their corresponding answeres final Map faqs = { - Strings.howCanIKeepMySeedPhraseSecure: Strings.howCanIKeepMySeedPhraseSecureAns, + Strings.howCanIKeepMySeedPhraseSecure: + Strings.howCanIKeepMySeedPhraseSecureAns, Strings.howIsASeedPhraseDifferent: Strings.howIsASeedPhraseDifferentAns, - Strings.howIsMySeedPhraseUnrecoverable: Strings.howIsMySeedPhraseUnrecoverableAns, + Strings.howIsMySeedPhraseUnrecoverable: + Strings.howIsMySeedPhraseUnrecoverableAns, }; @override Widget build(BuildContext context) { @@ -110,7 +117,8 @@ class _WalletCreatedPageState extends State { if (kIsWeb) { navigateToRoute(context, Routes.extensionInfo); } else { - Keys.navigatorKey.currentState?.pushNamedAndRemoveUntil(Routes.home, (_) => false); + Keys.navigatorKey.currentState + ?.pushNamedAndRemoveUntil(Routes.home, (_) => false); } }, ), diff --git a/lib/presentation/onboarding/create_wallet/wallet_info_checklist_page.dart b/lib/presentation/onboarding/create_wallet/wallet_info_checklist_page.dart index 6a65838f..aee88f87 100644 --- a/lib/presentation/onboarding/create_wallet/wallet_info_checklist_page.dart +++ b/lib/presentation/onboarding/create_wallet/wallet_info_checklist_page.dart @@ -1,6 +1,14 @@ +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; + +// Package imports: import 'package:local_auth/local_auth.dart'; +import 'package:ribn_toolkit/constants/colors.dart'; +import 'package:ribn_toolkit/constants/styles.dart'; +import 'package:ribn_toolkit/widgets/molecules/checkbox_wrappable_text.dart'; + +// Project imports: import 'package:ribn/constants/assets.dart'; import 'package:ribn/constants/keys.dart'; import 'package:ribn/constants/routes.dart'; @@ -11,15 +19,13 @@ import 'package:ribn/presentation/onboarding/widgets/mobile_onboarding_progress_ import 'package:ribn/presentation/onboarding/widgets/onboarding_container.dart'; import 'package:ribn/presentation/onboarding/widgets/web_onboarding_app_bar.dart'; import 'package:ribn/utils.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; -import 'package:ribn_toolkit/widgets/molecules/checkbox_wrappable_text.dart'; class WalletInfoChecklistPage extends StatefulWidget { const WalletInfoChecklistPage({Key? key}) : super(key: key); @override - State createState() => _WalletInfoChecklistPageState(); + State createState() => + _WalletInfoChecklistPageState(); } class _WalletInfoChecklistPageState extends State { @@ -40,9 +46,10 @@ class _WalletInfoChecklistPageState extends State { } Future runBiometrics() async { - final LocalAuthentication _localAuthentication = LocalAuthentication(); + final LocalAuthentication localAuthentication = LocalAuthentication(); - final bool isBioAuthenticationSupported = await isBiometricsAuthenticationSupported(_localAuthentication); + final bool isBioAuthenticationSupported = + await isBiometricsAuthenticationSupported(localAuthentication); setState(() { isBioSupported = isBioAuthenticationSupported ? true : false; @@ -73,15 +80,20 @@ class _WalletInfoChecklistPageState extends State { checked: checkboxesState[Strings.savedMyWalletPasswordSafely]!, activeText: true, text: Strings.savedMyWalletPasswordSafely, - onChanged: (bool? val) => onChecked(val ?? false, Strings.savedMyWalletPasswordSafely), + onChanged: (bool? val) => onChecked( + val ?? false, + Strings.savedMyWalletPasswordSafely, + ), ), SizedBox(height: adaptHeight(0.03)), _buildCheckboxListTile( checked: checkboxesState[Strings.toplCannotRecoverForMe]!, - activeText: checkboxesState[Strings.savedMyWalletPasswordSafely]!, + activeText: + checkboxesState[Strings.savedMyWalletPasswordSafely]!, text: Strings.toplCannotRecoverForMe, onChanged: checkboxesState[Strings.savedMyWalletPasswordSafely]! - ? (bool? val) => onChecked(val ?? false, Strings.toplCannotRecoverForMe) + ? (bool? val) => + onChecked(val ?? false, Strings.toplCannotRecoverForMe) : null, ), SizedBox(height: adaptHeight(0.03)), @@ -90,7 +102,10 @@ class _WalletInfoChecklistPageState extends State { activeText: checkboxesState[Strings.toplCannotRecoverForMe]!, text: Strings.spAndPasswordUnrecoverable, onChanged: checkboxesState[Strings.toplCannotRecoverForMe]! - ? (bool? val) => onChecked(val ?? false, Strings.spAndPasswordUnrecoverable) + ? (bool? val) => onChecked( + val ?? false, + Strings.spAndPasswordUnrecoverable, + ) : null, renderTooltipIcon: true, ), @@ -99,8 +114,11 @@ class _WalletInfoChecklistPageState extends State { ConfirmationButton( text: Strings.iUnderstand, onPressed: () { - Keys.navigatorKey.currentState - ?.pushNamed(isBioSupported ? Routes.onboardingEnableBiometrics : Routes.walletCreated); + Keys.navigatorKey.currentState?.pushNamed( + isBioSupported + ? Routes.onboardingEnableBiometrics + : Routes.walletCreated, + ); }, disabled: checkboxesState.containsValue(false), ) diff --git a/lib/presentation/onboarding/create_wallet/welcome_page.dart b/lib/presentation/onboarding/create_wallet/welcome_page.dart index 63711a55..9b91e2dc 100644 --- a/lib/presentation/onboarding/create_wallet/welcome_page.dart +++ b/lib/presentation/onboarding/create_wallet/welcome_page.dart @@ -1,14 +1,19 @@ +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; + +// Package imports: +import 'package:ribn_toolkit/constants/colors.dart'; +import 'package:ribn_toolkit/constants/styles.dart'; +import 'package:ribn_toolkit/widgets/molecules/wave_container.dart'; + +// Project imports: import 'package:ribn/constants/assets.dart'; import 'package:ribn/constants/keys.dart'; import 'package:ribn/constants/routes.dart'; import 'package:ribn/constants/strings.dart'; import 'package:ribn/presentation/onboarding/utils.dart'; import 'package:ribn/presentation/onboarding/widgets/confirmation_button.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; -import 'package:ribn_toolkit/widgets/molecules/wave_container.dart'; /// The initial welcome page displayed during onboarding on mobile. class WelcomePage extends StatelessWidget { @@ -39,7 +44,9 @@ class WelcomePage extends StatelessWidget { ), const SizedBox(height: 20), ConstrainedBox( - constraints: const BoxConstraints(maxWidth: kIsWeb ? double.infinity : 310), + constraints: const BoxConstraints( + maxWidth: kIsWeb ? double.infinity : 310, + ), child: Text( Strings.intro, textAlign: TextAlign.center, @@ -53,7 +60,8 @@ class WelcomePage extends StatelessWidget { ConfirmationButton( text: Strings.getStarted, onPressed: () { - Keys.navigatorKey.currentState?.pushNamed(Routes.selectAction); + Keys.navigatorKey.currentState + ?.pushNamed(Routes.selectAction); }, ), ], diff --git a/lib/presentation/onboarding/extension_info_page.dart b/lib/presentation/onboarding/extension_info_page.dart index ef87d2fc..3410807a 100644 --- a/lib/presentation/onboarding/extension_info_page.dart +++ b/lib/presentation/onboarding/extension_info_page.dart @@ -1,10 +1,15 @@ +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: import 'package:flutter_svg/svg.dart'; +import 'package:ribn_toolkit/constants/colors.dart'; +import 'package:ribn_toolkit/constants/styles.dart'; + +// Project imports: import 'package:ribn/constants/assets.dart'; import 'package:ribn/constants/strings.dart'; import 'package:ribn/presentation/onboarding/widgets/onboarding_container.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; class ExtensionInfoPage extends StatelessWidget { const ExtensionInfoPage({Key? key}) : super(key: key); @@ -64,7 +69,11 @@ class ExtensionInfoPage extends StatelessWidget { ), ), WidgetSpan( - child: SvgPicture.asset(RibnAssets.extensionIcon, height: inlineIconHeight, width: inlineIconWidth), + child: SvgPicture.asset( + RibnAssets.extensionIcon, + height: inlineIconHeight, + width: inlineIconWidth, + ), ), TextSpan( text: Strings.clickingTheIconPartThree, diff --git a/lib/presentation/onboarding/restore_wallet/create_new_wallet_password_page.dart b/lib/presentation/onboarding/restore_wallet/create_new_wallet_password_page.dart index 96661bf3..1b140026 100644 --- a/lib/presentation/onboarding/restore_wallet/create_new_wallet_password_page.dart +++ b/lib/presentation/onboarding/restore_wallet/create_new_wallet_password_page.dart @@ -1,8 +1,19 @@ +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/gestures.dart'; import 'package:flutter/material.dart'; + +// Package imports: import 'package:flutter_redux/flutter_redux.dart'; import 'package:loader_overlay/loader_overlay.dart'; +import 'package:ribn_toolkit/constants/colors.dart'; +import 'package:ribn_toolkit/constants/styles.dart'; +import 'package:ribn_toolkit/widgets/molecules/checkbox_wrappable_text.dart'; +import 'package:ribn_toolkit/widgets/molecules/password_text_field.dart'; +import 'package:ribn_toolkit/widgets/organisms/onboarding_progress_bar.dart'; +import 'package:url_launcher/url_launcher.dart'; + +// Project imports: import 'package:ribn/actions/restore_wallet_actions.dart'; import 'package:ribn/constants/strings.dart'; import 'package:ribn/models/app_state.dart'; @@ -12,12 +23,6 @@ import 'package:ribn/presentation/onboarding/widgets/onboarding_container.dart'; import 'package:ribn/presentation/onboarding/widgets/warning_section.dart'; import 'package:ribn/presentation/onboarding/widgets/web_onboarding_app_bar.dart'; import 'package:ribn/utils.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; -import 'package:ribn_toolkit/widgets/molecules/checkbox_wrappable_text.dart'; -import 'package:ribn_toolkit/widgets/molecules/password_text_field.dart'; -import 'package:ribn_toolkit/widgets/organisms/onboarding_progress_bar.dart'; -import 'package:url_launcher/url_launcher.dart'; /// Page for creating a new wallet password, when restoring wallet with a [seedPhrase]. class NewWalletPasswordPage extends StatefulWidget { @@ -36,7 +41,8 @@ class NewWalletPasswordPage extends StatefulWidget { class _NewWalletPasswordPageState extends State { /// Controllers for password textfields. final TextEditingController _newPasswordController = TextEditingController(); - final TextEditingController _confirmPasswordController = TextEditingController(); + final TextEditingController _confirmPasswordController = + TextEditingController(); /// True if the password entered is at least 8 characters. bool _atLeast8Chars = false; @@ -52,12 +58,15 @@ class _NewWalletPasswordPageState extends State { @override void initState() { // Initialize listeners for each controller. - [_newPasswordController, _confirmPasswordController].toList().forEach((controller) { + [_newPasswordController, _confirmPasswordController] + .toList() + .forEach((controller) { controller.addListener(() { setState(() { hasErrors[controller] = false; _atLeast8Chars = _newPasswordController.text.length >= 8; - _passwordsMatch = _newPasswordController.text == _confirmPasswordController.text; + _passwordsMatch = + _newPasswordController.text == _confirmPasswordController.text; }); }); }); @@ -67,7 +76,9 @@ class _NewWalletPasswordPageState extends State { @override void dispose() { // Dispose listeners for each controller. - [_newPasswordController, _confirmPasswordController].toList().forEach((controller) { + [_newPasswordController, _confirmPasswordController] + .toList() + .forEach((controller) { controller.dispose(); }); super.dispose(); @@ -84,7 +95,9 @@ class _NewWalletPasswordPageState extends State { child: Column( mainAxisSize: MainAxisSize.min, children: [ - renderIfWeb(const WebOnboardingAppBar(currStep: 1, numSteps: 2)), + renderIfWeb( + const WebOnboardingAppBar(currStep: 1, numSteps: 2), + ), const Text( Strings.restoreWallet, style: RibnToolkitTextStyles.onboardingH1, @@ -108,11 +121,15 @@ class _NewWalletPasswordPageState extends State { ), ), const SizedBox(height: 40), - renderIfMobile(const OnboardingProgressBar(numSteps: 2, currStep: 0)), + renderIfMobile( + const OnboardingProgressBar(numSteps: 2, currStep: 0), + ), const SizedBox(height: 20), ConfirmationButton( text: Strings.done, - disabled: !_atLeast8Chars || !_passwordsMatch || !_termsOfUseChecked, + disabled: !_atLeast8Chars || + !_passwordsMatch || + !_termsOfUseChecked, onPressed: () { context.loaderOverlay.show(); StoreProvider.of(context).dispatch( @@ -164,7 +181,9 @@ class _NewWalletPasswordPageState extends State { Strings.atLeast8Chars, textAlign: TextAlign.left, style: RibnToolkitTextStyles.h3.copyWith( - color: !_atLeast8Chars && _newPasswordController.text.isNotEmpty ? Colors.red : Colors.white, + color: !_atLeast8Chars && _newPasswordController.text.isNotEmpty + ? Colors.red + : Colors.white, ), ), ), @@ -214,7 +233,10 @@ class _NewWalletPasswordPageState extends State { Strings.passwordsMustMatch, textAlign: TextAlign.left, style: RibnToolkitTextStyles.h3.copyWith( - color: !_passwordsMatch && _confirmPasswordController.text.isNotEmpty ? Colors.red : Colors.white, + color: + !_passwordsMatch && _confirmPasswordController.text.isNotEmpty + ? Colors.red + : Colors.white, ), ), ), @@ -226,7 +248,9 @@ class _NewWalletPasswordPageState extends State { final url = Uri.parse(Strings.termsOfUseUrl); return CheckboxWrappableText( wrapText: false, - borderColor: _termsOfUseChecked ? const Color(0xff80FF00) : RibnColors.lightGreyTitle, + borderColor: _termsOfUseChecked + ? const Color(0xff80FF00) + : RibnColors.lightGreyTitle, value: _termsOfUseChecked, onChanged: (bool? checked) { setState(() { diff --git a/lib/presentation/onboarding/restore_wallet/enter_wallet_password_page.dart b/lib/presentation/onboarding/restore_wallet/enter_wallet_password_page.dart index 9fd8f460..cb756046 100644 --- a/lib/presentation/onboarding/restore_wallet/enter_wallet_password_page.dart +++ b/lib/presentation/onboarding/restore_wallet/enter_wallet_password_page.dart @@ -1,7 +1,16 @@ +// Dart imports: import 'dart:async'; +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: import 'package:flutter_redux/flutter_redux.dart'; +import 'package:ribn_toolkit/constants/colors.dart'; +import 'package:ribn_toolkit/constants/styles.dart'; +import 'package:ribn_toolkit/widgets/molecules/password_text_field.dart'; + +// Project imports: import 'package:ribn/actions/restore_wallet_actions.dart'; import 'package:ribn/constants/strings.dart'; import 'package:ribn/models/app_state.dart'; @@ -10,9 +19,6 @@ import 'package:ribn/presentation/onboarding/widgets/confirmation_button.dart'; import 'package:ribn/presentation/onboarding/widgets/onboarding_container.dart'; import 'package:ribn/presentation/onboarding/widgets/warning_section.dart'; import 'package:ribn/presentation/onboarding/widgets/web_onboarding_app_bar.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; -import 'package:ribn_toolkit/widgets/molecules/password_text_field.dart'; /// Allows the user to enter their wallet password to decrypt the Topl Key in [toplKeyStoreJson]. class EnterWalletPasswordPage extends StatefulWidget { @@ -24,7 +30,8 @@ class EnterWalletPasswordPage extends StatefulWidget { }) : super(key: key); @override - _EnterWalletPasswordPageState createState() => _EnterWalletPasswordPageState(); + _EnterWalletPasswordPageState createState() => + _EnterWalletPasswordPageState(); } class _EnterWalletPasswordPageState extends State { diff --git a/lib/presentation/onboarding/restore_wallet/restore_wallet_page.dart b/lib/presentation/onboarding/restore_wallet/restore_wallet_page.dart index 1eba6463..ad774ea6 100644 --- a/lib/presentation/onboarding/restore_wallet/restore_wallet_page.dart +++ b/lib/presentation/onboarding/restore_wallet/restore_wallet_page.dart @@ -1,10 +1,7 @@ import 'package:bip_topl/bip_topl.dart'; -import 'package:flutter/foundation.dart'; -import 'package:flutter/gestures.dart'; import 'package:flutter/material.dart'; import 'package:flutter_redux/flutter_redux.dart'; import 'package:ribn/actions/misc_actions.dart'; -import 'package:ribn/constants/keys.dart'; import 'package:ribn/constants/routes.dart'; import 'package:ribn/constants/strings.dart'; import 'package:ribn/models/app_state.dart'; @@ -12,11 +9,9 @@ import 'package:ribn/presentation/onboarding/utils.dart'; import 'package:ribn/presentation/onboarding/widgets/confirmation_button.dart'; import 'package:ribn/presentation/onboarding/widgets/onboarding_container.dart'; import 'package:ribn/presentation/onboarding/widgets/web_onboarding_app_bar.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; import 'package:ribn_toolkit/constants/styles.dart'; import 'package:ribn_toolkit/widgets/atoms/custom_text_field.dart'; import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; -import 'package:ribn_toolkit/widgets/atoms/peekaboo_button.dart'; import 'package:ribn_toolkit/widgets/organisms/onboarding_progress_bar.dart'; /// This page allows the user to enter a known mnemonic / seed phrase in order to restore a wallet. @@ -98,12 +93,15 @@ class _RestoreWalletPageState extends State { hasError: invalidSeedPhraseEntered, ), ), - kIsWeb ? Align(alignment: Alignment.centerLeft, child: _buildAdvancedOption()) : const SizedBox(), + + /// Hidden for RIBN-557 + // kIsWeb ? Align(alignment: Alignment.centerLeft, child: _buildAdvancedOption()) : const SizedBox(), ], ), ), adaptableSpacer(), - renderIfMobile(const OnboardingProgressBar(numSteps: 2, currStep: 0)), + renderIfMobile( + const OnboardingProgressBar(numSteps: 2, currStep: 0)), const SizedBox(height: 20), ConfirmationButton( text: Strings.next, @@ -134,35 +132,40 @@ class _RestoreWalletPageState extends State { } } - Widget _buildAdvancedOption() { - return Padding( - padding: const EdgeInsets.only(top: 5.0), - child: SizedBox( - width: maxWidth, - child: PeekabooButton( - buttonText: Text( - Strings.advancedOption, - style: RibnToolkitTextStyles.smallBody.copyWith(fontSize: 15, color: RibnColors.whiteBackground), - ), - buttonChild: Padding( - padding: const EdgeInsets.only(left: 8), - child: RichText( - text: TextSpan( - style: RibnToolkitTextStyles.body1Bold.copyWith(color: RibnColors.whiteBackground), - children: [ - const TextSpan(text: 'Use '), - TextSpan( - text: 'Topl main key file', - style: RibnToolkitTextStyles.body1Bold.copyWith(color: RibnColors.secondaryDark), - recognizer: TapGestureRecognizer() - ..onTap = () => Keys.navigatorKey.currentState?.pushNamed(Routes.restoreWithToplKey), - ), - ], - ), - ), - ), - ), - ), - ); - } + /// Hidden for RIBN-557 + // Widget _buildAdvancedOption() { + // return Padding( + // padding: const EdgeInsets.only(top: 5.0), + // child: SizedBox( + // width: maxWidth, + // child: PeekabooButton( + // buttonText: Text( + // Strings.advancedOption, + // style: RibnToolkitTextStyles.smallBody + // .copyWith(fontSize: 15, color: RibnColors.whiteBackground), + // ), + // buttonChild: Padding( + // padding: const EdgeInsets.only(left: 8), + // child: RichText( + // text: TextSpan( + // style: RibnToolkitTextStyles.body1Bold + // .copyWith(color: RibnColors.whiteBackground), + // children: [ + // const TextSpan(text: 'Use '), + // TextSpan( + // text: 'Topl main key file', + // style: RibnToolkitTextStyles.body1Bold + // .copyWith(color: RibnColors.secondaryDark), + // recognizer: TapGestureRecognizer() + // ..onTap = () => Keys.navigatorKey.currentState + // ?.pushNamed(Routes.restoreWithToplKey), + // ), + // ], + // ), + // ), + // ), + // ), + // ), + // ); + // } } diff --git a/lib/presentation/onboarding/restore_wallet/restore_with_topl_key_page.dart b/lib/presentation/onboarding/restore_wallet/restore_with_topl_key_page.dart index 6842d185..795c4bbb 100644 --- a/lib/presentation/onboarding/restore_wallet/restore_with_topl_key_page.dart +++ b/lib/presentation/onboarding/restore_wallet/restore_with_topl_key_page.dart @@ -1,8 +1,15 @@ +// Dart imports: import 'dart:convert'; -import 'package:file_picker/file_picker.dart'; +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: +import 'package:file_picker/file_picker.dart'; import 'package:flutter_redux/flutter_redux.dart'; +import 'package:ribn_toolkit/constants/styles.dart'; + +// Project imports: import 'package:ribn/actions/misc_actions.dart'; import 'package:ribn/constants/assets.dart'; import 'package:ribn/constants/routes.dart'; @@ -13,7 +20,6 @@ import 'package:ribn/presentation/onboarding/widgets/confirmation_button.dart'; import 'package:ribn/presentation/onboarding/widgets/onboarding_container.dart'; import 'package:ribn/presentation/onboarding/widgets/uploaded_file_container.dart'; import 'package:ribn/presentation/onboarding/widgets/web_onboarding_app_bar.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; /// This page allows the user to upload their Topl Main Key in order to restore a wallet. /// @@ -55,7 +61,9 @@ class _RestoreWithToplKeyPageState extends State { _buildUploadFileButton(), SizedBox( height: 150, - child: uploadedFileName.isNotEmpty ? _buildUploadedFileContainer() : const SizedBox(), + child: uploadedFileName.isNotEmpty + ? _buildUploadedFileContainer() + : const SizedBox(), ), errorUploadingFile ? const Text( @@ -107,7 +115,10 @@ class _RestoreWithToplKeyPageState extends State { ), ), const SizedBox(height: 5), - const Text(Strings.fileUploadLimit, style: RibnToolkitTextStyles.onboardingH3), + const Text( + Strings.fileUploadLimit, + style: RibnToolkitTextStyles.onboardingH3, + ), const SizedBox(height: 20), Image.asset(RibnAssets.addPlusPng, width: 70), ], @@ -115,7 +126,8 @@ class _RestoreWithToplKeyPageState extends State { ), onPressed: () async { try { - final FilePickerResult? result = await FilePicker.platform.pickFiles(); + final FilePickerResult? result = + await FilePicker.platform.pickFiles(); if (result != null) { final PlatformFile file = result.files.first; // utf8.decode the file bytes to get the file content as a string @@ -145,10 +157,15 @@ class _RestoreWithToplKeyPageState extends State { children: [ Text( 'Uploaded file', - style: RibnToolkitTextStyles.body1Bold.copyWith(color: Colors.white), + style: + RibnToolkitTextStyles.body1Bold.copyWith(color: Colors.white), ), const SizedBox(height: 5), - UploadedFileContainer(uploadedFileName: uploadedFileName, width: 484, height: 46), + UploadedFileContainer( + uploadedFileName: uploadedFileName, + width: 484, + height: 46, + ), ], ), ); diff --git a/lib/presentation/onboarding/utils.dart b/lib/presentation/onboarding/utils.dart index ca195756..66bbe696 100644 --- a/lib/presentation/onboarding/utils.dart +++ b/lib/presentation/onboarding/utils.dart @@ -1,7 +1,10 @@ +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; -Widget adaptableSpacer() => kIsWeb ? const SizedBox(height: 100) : const Spacer(); +Widget adaptableSpacer() => + kIsWeb ? const SizedBox(height: 100) : const Spacer(); Widget renderIfMobile(Widget widget) => kIsWeb ? const SizedBox() : widget; Widget renderIfWeb(Widget widget) => kIsWeb ? widget : const SizedBox(); -Widget scrollableIfWeb(Widget child) => kIsWeb ? SingleChildScrollView(child: child) : SizedBox(child: child); +Widget scrollableIfWeb(Widget child) => + kIsWeb ? SingleChildScrollView(child: child) : SizedBox(child: child); diff --git a/lib/presentation/onboarding/widgets/confirmation_button.dart b/lib/presentation/onboarding/widgets/confirmation_button.dart index 03241279..d1986e14 100644 --- a/lib/presentation/onboarding/widgets/confirmation_button.dart +++ b/lib/presentation/onboarding/widgets/confirmation_button.dart @@ -1,4 +1,7 @@ +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: import 'package:ribn_toolkit/constants/colors.dart'; import 'package:ribn_toolkit/constants/styles.dart'; import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; diff --git a/lib/presentation/onboarding/widgets/mobile_onboarding_progress_bar.dart b/lib/presentation/onboarding/widgets/mobile_onboarding_progress_bar.dart index 24d9f1ff..8c44b223 100644 --- a/lib/presentation/onboarding/widgets/mobile_onboarding_progress_bar.dart +++ b/lib/presentation/onboarding/widgets/mobile_onboarding_progress_bar.dart @@ -1,4 +1,7 @@ +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: import 'package:ribn_toolkit/widgets/organisms/onboarding_progress_bar.dart'; class MobileOnboardingProgressBar extends StatelessWidget { diff --git a/lib/presentation/onboarding/widgets/onboarding_container.dart b/lib/presentation/onboarding/widgets/onboarding_container.dart index 07ab1db2..68cf5087 100644 --- a/lib/presentation/onboarding/widgets/onboarding_container.dart +++ b/lib/presentation/onboarding/widgets/onboarding_container.dart @@ -1,5 +1,8 @@ +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; + +// Package imports: import 'package:ribn_toolkit/constants/colors.dart'; class OnboardingContainer extends StatelessWidget { @@ -14,7 +17,8 @@ class OnboardingContainer extends StatelessWidget { @override Widget build(BuildContext context) { - final double topPadding = kIsWeb ? 50 : MediaQuery.of(context).size.height * 0.12; + final double topPadding = + kIsWeb ? 50 : MediaQuery.of(context).size.height * 0.12; return Container( height: double.infinity, width: double.infinity, @@ -26,7 +30,11 @@ class OnboardingContainer extends StatelessWidget { ), ), child: Padding( - padding: EdgeInsets.only(top: topPadding, left: isXsScreenSize ? 10 : 20, right: isXsScreenSize ? 10 : 20), + padding: EdgeInsets.only( + top: topPadding, + left: isXsScreenSize ? 10 : 20, + right: isXsScreenSize ? 10 : 20, + ), child: child, ), ); diff --git a/lib/presentation/onboarding/widgets/uploaded_file_container.dart b/lib/presentation/onboarding/widgets/uploaded_file_container.dart index 43db5118..5e29a0e3 100644 --- a/lib/presentation/onboarding/widgets/uploaded_file_container.dart +++ b/lib/presentation/onboarding/widgets/uploaded_file_container.dart @@ -1,7 +1,12 @@ +// Flutter imports: import 'package:flutter/material.dart'; -import 'package:ribn/constants/assets.dart'; + +// Package imports: import 'package:ribn_toolkit/constants/styles.dart'; +// Project imports: +import 'package:ribn/constants/assets.dart'; + /// A container that displays the uploaded file name, when restoring wallet with Topl Main Key. /// class UploadedFileContainer extends StatelessWidget { @@ -40,7 +45,8 @@ class UploadedFileContainer extends StatelessWidget { const SizedBox(width: 8), Text( uploadedFileName, - style: RibnToolkitTextStyles.onboardingH3.copyWith(fontSize: 15), + style: + RibnToolkitTextStyles.onboardingH3.copyWith(fontSize: 15), ), const Spacer(), Image.asset(RibnAssets.checkCircleIcon, width: 20), diff --git a/lib/presentation/onboarding/widgets/warning_section.dart b/lib/presentation/onboarding/widgets/warning_section.dart index 349c798e..61566322 100644 --- a/lib/presentation/onboarding/widgets/warning_section.dart +++ b/lib/presentation/onboarding/widgets/warning_section.dart @@ -1,10 +1,15 @@ +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; -import 'package:ribn/constants/assets.dart'; -import 'package:ribn/constants/strings.dart'; + +// Package imports: import 'package:ribn_toolkit/constants/colors.dart'; import 'package:ribn_toolkit/constants/styles.dart'; +// Project imports: +import 'package:ribn/constants/assets.dart'; +import 'package:ribn/constants/strings.dart'; + /// A section to display important warning message when restoring wallet. class WarningSection extends StatelessWidget { const WarningSection({ @@ -56,7 +61,8 @@ class WarningSection extends StatelessWidget { Strings.restoreWalletWarning, style: kIsWeb ? RibnToolkitTextStyles.onboardingH3 - : RibnToolkitTextStyles.smallBody.copyWith(fontSize: 15, color: Colors.white), + : RibnToolkitTextStyles.smallBody + .copyWith(fontSize: 15, color: Colors.white), ), ), ), diff --git a/lib/presentation/onboarding/widgets/web_onboarding_app_bar.dart b/lib/presentation/onboarding/widgets/web_onboarding_app_bar.dart index 004e709d..55b90ade 100644 --- a/lib/presentation/onboarding/widgets/web_onboarding_app_bar.dart +++ b/lib/presentation/onboarding/widgets/web_onboarding_app_bar.dart @@ -1,4 +1,7 @@ +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: import 'package:ribn_toolkit/constants/colors.dart'; import 'package:ribn_toolkit/widgets/organisms/onboarding_progress_bar.dart'; diff --git a/lib/presentation/settings/sections/biometrics_section.dart b/lib/presentation/settings/sections/biometrics_section.dart index a7eeef53..dbbec720 100644 --- a/lib/presentation/settings/sections/biometrics_section.dart +++ b/lib/presentation/settings/sections/biometrics_section.dart @@ -1,17 +1,23 @@ -import 'dart:io'; +// Dart imports: import 'dart:io' show Platform; +import 'dart:io'; -import 'package:app_settings/app_settings.dart'; +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: +import 'package:app_settings/app_settings.dart'; import 'package:flutter_redux/flutter_redux.dart'; import 'package:local_auth/local_auth.dart'; +import 'package:ribn_toolkit/constants/styles.dart'; +import 'package:ribn_toolkit/widgets/atoms/custom_toggle.dart'; + +// Project imports: import 'package:ribn/actions/user_details_actions.dart'; import 'package:ribn/constants/assets.dart'; import 'package:ribn/constants/strings.dart'; import 'package:ribn/models/app_state.dart'; import 'package:ribn/utils.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; -import 'package:ribn_toolkit/widgets/atoms/custom_toggle.dart'; /// The section allows for users to toggle biometrics authentication on/off. class BiometricsSection extends StatefulWidget { @@ -82,8 +88,8 @@ class _BiometricsSectionState extends State { }, ), const TextButton( - child: Text('Go to settings'), onPressed: AppSettings.openSecuritySettings, + child: Text('Go to settings'), ), ], ); @@ -105,7 +111,9 @@ class _BiometricsSectionState extends State { Padding( padding: const EdgeInsets.only(left: 10), child: Image.asset( - Platform.isIOS ? RibnAssets.iosBiometricsOutline : RibnAssets.andriodBiometricsOutline, + Platform.isIOS + ? RibnAssets.iosBiometricsOutline + : RibnAssets.andriodBiometricsOutline, width: 40, ), ), diff --git a/lib/presentation/settings/sections/delete_wallet_confirmation_dialog.dart b/lib/presentation/settings/sections/delete_wallet_confirmation_dialog.dart index 6b43a0c0..3a729651 100644 --- a/lib/presentation/settings/sections/delete_wallet_confirmation_dialog.dart +++ b/lib/presentation/settings/sections/delete_wallet_confirmation_dialog.dart @@ -1,11 +1,16 @@ +// Flutter imports: import 'package:flutter/material.dart'; -import 'package:ribn/constants/strings.dart'; + +// Package imports: import 'package:ribn_toolkit/constants/colors.dart'; import 'package:ribn_toolkit/constants/styles.dart'; import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; import 'package:ribn_toolkit/widgets/molecules/custom_modal.dart'; import 'package:ribn_toolkit/widgets/molecules/password_text_field.dart'; +// Project imports: +import 'package:ribn/constants/strings.dart'; + /// The confimation dialog that is displayed before deleting the wallet. /// /// The user is prompted to enter their wallet password before confirming deletion. @@ -16,13 +21,18 @@ class DeleteWalletConfirmationDialog extends StatefulWidget { VoidCallback onIncorrectPasswordEntered, ) onConfirmDeletePressed; - const DeleteWalletConfirmationDialog({required this.onConfirmDeletePressed, Key? key}) : super(key: key); + const DeleteWalletConfirmationDialog({ + required this.onConfirmDeletePressed, + Key? key, + }) : super(key: key); @override - _DeleteWalletConfirmationDialogState createState() => _DeleteWalletConfirmationDialogState(); + _DeleteWalletConfirmationDialogState createState() => + _DeleteWalletConfirmationDialogState(); } -class _DeleteWalletConfirmationDialogState extends State { +class _DeleteWalletConfirmationDialogState + extends State { final TextEditingController _passwordController = TextEditingController(); /// True if incorrect password was entered. @@ -69,7 +79,10 @@ class _DeleteWalletConfirmationDialogState extends State canDisconnect ? - onDisconnectPressed(context) : null,), + borderColor: RibnColors.primary + .withOpacity(canDisconnect == true ? 1.0 : 0.3), + onPressed: () => + canDisconnect ? onDisconnectPressed(context) : null, + ), ), ], ), diff --git a/lib/presentation/settings/sections/disconnect_wallet_confirmation_dialog.dart b/lib/presentation/settings/sections/disconnect_wallet_confirmation_dialog.dart index 385e1cef..43681774 100644 --- a/lib/presentation/settings/sections/disconnect_wallet_confirmation_dialog.dart +++ b/lib/presentation/settings/sections/disconnect_wallet_confirmation_dialog.dart @@ -1,11 +1,16 @@ +// Flutter imports: import 'package:flutter/material.dart'; -import 'package:ribn/constants/strings.dart'; -import 'package:ribn/platform/platform.dart'; + +// Package imports: import 'package:ribn_toolkit/constants/colors.dart'; import 'package:ribn_toolkit/constants/styles.dart'; import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; import 'package:ribn_toolkit/widgets/molecules/custom_modal.dart'; +// Project imports: +import 'package:ribn/constants/strings.dart'; +import 'package:ribn/platform/platform.dart'; + /// The confirmation dialog that is displayed before disconnecting the wallet. class DisconnectWalletConfirmationDialog extends StatefulWidget { const DisconnectWalletConfirmationDialog({Key? key, required this.dApps}) @@ -20,6 +25,9 @@ class DisconnectWalletConfirmationDialog extends StatefulWidget { class _DisconnectWalletConfirmationDialogState extends State { + + ScrollController _scrollController = ScrollController(); + @override Widget build(BuildContext context) { return CustomModal.renderCustomModal( @@ -51,12 +59,14 @@ class _DisconnectWalletConfirmationDialogState mainAxisMargin: 0, crossAxisMargin: 0, thumbVisibility: true, + controller: _scrollController, thumbColor: RibnColors.primary, thickness: 10, child: ScrollConfiguration( behavior: ScrollConfiguration.of(context).copyWith(scrollbars: false), child: ListView.builder( + controller: _scrollController, shrinkWrap: true, primary: false, itemCount: widget.dApps.length, diff --git a/lib/presentation/settings/sections/export_topl_main_key_section.dart b/lib/presentation/settings/sections/export_topl_main_key_section.dart index 0c2553a0..f8f2b029 100644 --- a/lib/presentation/settings/sections/export_topl_main_key_section.dart +++ b/lib/presentation/settings/sections/export_topl_main_key_section.dart @@ -1,9 +1,14 @@ +// Flutter imports: import 'package:flutter/material.dart'; -import 'package:ribn/constants/strings.dart'; + +// Package imports: import 'package:ribn_toolkit/constants/colors.dart'; import 'package:ribn_toolkit/constants/styles.dart'; import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; +// Project imports: +import 'package:ribn/constants/strings.dart'; + /// The section that allows for downloading the Topl Main Key. class ExportToplMainKeySection extends StatelessWidget { /// Callback for when export button is pressed. diff --git a/lib/presentation/settings/sections/links_section.dart b/lib/presentation/settings/sections/links_section.dart index 189f489c..99d5c206 100644 --- a/lib/presentation/settings/sections/links_section.dart +++ b/lib/presentation/settings/sections/links_section.dart @@ -1,10 +1,15 @@ +// Flutter imports: import 'package:flutter/gestures.dart'; import 'package:flutter/material.dart'; -import 'package:ribn/constants/strings.dart'; + +// Package imports: import 'package:ribn_toolkit/constants/colors.dart'; import 'package:ribn_toolkit/constants/styles.dart'; import 'package:url_launcher/url_launcher.dart'; +// Project imports: +import 'package:ribn/constants/strings.dart'; + /// The section for displaying helpful links. class LinksSection extends StatelessWidget { const LinksSection({Key? key}) : super(key: key); @@ -31,7 +36,8 @@ class LinksSection extends StatelessWidget { RichText( text: TextSpan( text: Strings.privacyPolicy, - recognizer: TapGestureRecognizer()..onTap = () async => await launchUrl(url1), + recognizer: TapGestureRecognizer() + ..onTap = () async => await launchUrl(url1), style: linkStyle, ), ), @@ -39,7 +45,8 @@ class LinksSection extends StatelessWidget { RichText( text: TextSpan( text: Strings.termsOfUse, - recognizer: TapGestureRecognizer()..onTap = () async => await launchUrl(url2), + recognizer: TapGestureRecognizer() + ..onTap = () async => await launchUrl(url2), style: linkStyle, ), ), diff --git a/lib/presentation/settings/sections/ribn_version_section.dart b/lib/presentation/settings/sections/ribn_version_section.dart index 37f5e28c..1b6f381a 100644 --- a/lib/presentation/settings/sections/ribn_version_section.dart +++ b/lib/presentation/settings/sections/ribn_version_section.dart @@ -1,7 +1,12 @@ +// Flutter imports: import 'package:flutter/material.dart'; -import 'package:ribn/constants/strings.dart'; + +// Package imports: import 'package:ribn_toolkit/constants/styles.dart'; +// Project imports: +import 'package:ribn/constants/strings.dart'; + /// The section for displaying the current Ribn version. class RibnVersionSection extends StatelessWidget { /// The current app version. diff --git a/lib/presentation/settings/settings_page.dart b/lib/presentation/settings/settings_page.dart index c5dfb0bc..06f99053 100644 --- a/lib/presentation/settings/settings_page.dart +++ b/lib/presentation/settings/settings_page.dart @@ -1,8 +1,13 @@ - - +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; + +// Package imports: import 'package:local_auth/local_auth.dart'; +import 'package:ribn_toolkit/constants/colors.dart'; +import 'package:ribn_toolkit/widgets/organisms/custom_page_text_title.dart'; + +// Project imports: import 'package:ribn/constants/strings.dart'; import 'package:ribn/containers/settings_container.dart'; import 'package:ribn/platform/platform.dart'; @@ -12,8 +17,6 @@ import 'package:ribn/presentation/settings/sections/export_topl_main_key_section import 'package:ribn/presentation/settings/sections/links_section.dart'; import 'package:ribn/presentation/settings/sections/ribn_version_section.dart'; import 'package:ribn/utils.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/widgets/organisms/custom_page_text_title.dart'; /// The settings page of the application. class SettingsPage extends StatefulWidget { @@ -31,24 +34,30 @@ class _SettingsPageState extends State { late VoidCallback onUpdated; @override - initState() async { + initState() { if (!kIsWeb) { runBiometrics(); } else { - final List dApps = await PlatformUtils.instance.convertToFuture(PlatformUtils.instance.getDAppList()); - - setState(() async { - canDisconnect = dApps.isNotEmpty; - }); + loadDApps(); } super.initState(); } + loadDApps() async { + final List dApps = + await PlatformUtils.instance.convertToFuture(PlatformUtils.instance.getDAppList()); + await PlatformUtils.instance.consoleLog(dApps.toString()); + + setState(() { + canDisconnect = dApps.isNotEmpty; + }); + } + runBiometrics() async { - final LocalAuthentication _localAuthentication = LocalAuthentication(); + final LocalAuthentication localAuthentication = LocalAuthentication(); final bool isBioAuthenticationSupported = - await isBiometricsAuthenticationSupported(_localAuthentication); + await isBiometricsAuthenticationSupported(localAuthentication); setState(() { isBioSupported = isBioAuthenticationSupported ? true : false; @@ -57,23 +66,22 @@ class _SettingsPageState extends State { @override Widget build(BuildContext context) { - return SettingsContainer( builder: (BuildContext context, SettingsViewModel vm) { vm.canDisconnect = canDisconnect; return Scaffold( - body: SingleChildScrollView( - child: Column( - children: [ - const CustomPageTextTitle( - title: Strings.settings, - hideBackArrow: true, - ), - _buildSettingsListItems(vm, context), - ], + body: SingleChildScrollView( + child: Column( + children: [ + const CustomPageTextTitle( + title: Strings.settings, + hideBackArrow: true, + ), + _buildSettingsListItems(vm, context), + ], + ), ), - ), - ); + ); }, ); } diff --git a/lib/presentation/transaction_history/dashed_list_separator/dashed_list_separator.dart b/lib/presentation/transaction_history/dashed_list_separator/dashed_list_separator.dart index 94ef67fd..0381af29 100644 --- a/lib/presentation/transaction_history/dashed_list_separator/dashed_list_separator.dart +++ b/lib/presentation/transaction_history/dashed_list_separator/dashed_list_separator.dart @@ -1,7 +1,12 @@ +// Flutter imports: import 'package:flutter/material.dart'; class DashedListSeparator extends StatelessWidget { - const DashedListSeparator({Key? key, this.height = 1, this.color = Colors.black}) : super(key: key); + const DashedListSeparator({ + Key? key, + this.height = 1, + this.color = Colors.black, + }) : super(key: key); final double height; final Color color; @@ -14,6 +19,8 @@ class DashedListSeparator extends StatelessWidget { final dashHeight = height; final dashCount = (boxWidth / (2 * dashWidth)).floor(); return Flex( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + direction: Axis.horizontal, children: List.generate(dashCount, (_) { return SizedBox( width: dashWidth, @@ -23,8 +30,6 @@ class DashedListSeparator extends StatelessWidget { ), ); }), - mainAxisAlignment: MainAxisAlignment.spaceBetween, - direction: Axis.horizontal, ); }, ); diff --git a/lib/presentation/transaction_history/helpers/tx_history_helper_functions.dart b/lib/presentation/transaction_history/helpers/tx_history_helper_functions.dart index 6869451c..49106004 100644 --- a/lib/presentation/transaction_history/helpers/tx_history_helper_functions.dart +++ b/lib/presentation/transaction_history/helpers/tx_history_helper_functions.dart @@ -1,7 +1,13 @@ -import 'package:brambldart/model.dart'; +// Flutter imports: + +// Flutter imports: import 'package:flutter/cupertino.dart'; + +// Package imports: +import 'package:brambldart/model.dart'; import 'package:ribn_toolkit/constants/colors.dart'; +// Project imports: import '../../../containers/transaction_history_container.dart'; import '../dashed_list_separator/dashed_list_separator.dart'; import '../transaction_data_row/transaction_data_row.dart'; diff --git a/lib/presentation/transaction_history/service_locator/locator.dart b/lib/presentation/transaction_history/service_locator/locator.dart index 0cf9957d..af32685c 100644 --- a/lib/presentation/transaction_history/service_locator/locator.dart +++ b/lib/presentation/transaction_history/service_locator/locator.dart @@ -1,8 +1,10 @@ /// @dev File contains function that setups any singletons required within the app +// Package imports: import 'package:get_it/get_it.dart'; import 'package:redux/redux.dart'; +// Project imports: import '../../../models/app_state.dart'; final locator = GetIt.instance; diff --git a/lib/presentation/transaction_history/transaction_data_row/transaction_data_row.dart b/lib/presentation/transaction_history/transaction_data_row/transaction_data_row.dart index 22854a22..171a046b 100644 --- a/lib/presentation/transaction_history/transaction_data_row/transaction_data_row.dart +++ b/lib/presentation/transaction_history/transaction_data_row/transaction_data_row.dart @@ -1,16 +1,21 @@ +// Dart imports: + +// Package imports: import 'package:brambldart/model.dart'; import 'package:brambldart/utils.dart'; +// Flutter imports: import 'package:flutter/material.dart'; import 'package:flutter_redux/flutter_redux.dart'; import 'package:intl/intl.dart'; +// Project imports: import 'package:ribn/constants/assets.dart'; -import 'package:ribn/constants/keys.dart'; -import 'package:ribn/constants/routes.dart'; import 'package:ribn/models/app_state.dart'; import 'package:ribn/models/asset_details.dart'; import 'package:ribn/utils.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; -import 'package:ribn_toolkit/widgets/atoms/status_chip.dart'; +import 'package:ribn_toolkit/constants/colors.dart'; +import 'package:ribn_toolkit/widgets/molecules/ribn_activity_tile.dart'; + +import '../../../constants/routes.dart'; class TransactionDataRow extends StatefulWidget { final List assets; @@ -42,8 +47,7 @@ class _TransactionDataRowState extends State { } getBlockHeight() async { - final transactionBlockHeightNum = - int.parse('${widget.transactionReceipt.blockNumber}'); + final transactionBlockHeightNum = int.parse('${widget.transactionReceipt.blockNumber}'); final blockHeightString = await widget.blockHeight; final blockHeightNum = int.parse(blockHeightString!); final heightDifference = blockHeightNum - transactionBlockHeightNum; @@ -56,8 +60,7 @@ class _TransactionDataRowState extends State { @override Widget build(BuildContext context) { - final bool isPolyTransaction = widget.transactionReceipt.txType == - 'PolyTransfer' || + final bool isPolyTransaction = widget.transactionReceipt.txType == 'PolyTransfer' || widget.transactionReceipt.to.first.toJson()[1].runtimeType == String; final int timestampInt = widget.transactionReceipt.timestamp; final DateTime date = DateTime.fromMillisecondsSinceEpoch(timestampInt); @@ -71,24 +74,18 @@ class _TransactionDataRowState extends State { ? widget.transactionReceipt.to.first.toJson()[1] : widget.transactionReceipt.to.first.toJson()[1]['quantity']; final Sender transactionSenderAddress = widget.transactionReceipt.from![0]; - final String? fee = '${widget.transactionReceipt.fee!.quantity} nanoPOLYs'; + final String fee = '${widget.transactionReceipt.fee!.quantity} nanoPOLYs'; final Latin1Data? note = widget.transactionReceipt.data; - final String securityRoot = isPolyTransaction - ? '' - : widget.transactionReceipt.to.first.toJson()[1]['securityRoot']; + final String securityRoot = + isPolyTransaction ? '' : widget.transactionReceipt.to.first.toJson()[1]['securityRoot']; final String assetCode = isPolyTransaction ? '' - : widget.transactionReceipt.to.first - .toJson()[1]['assetCode'] - .toString(); + : widget.transactionReceipt.to.first.toJson()[1]['assetCode'].toString(); final ModifierId? blockId = widget.transactionReceipt.blockId; final BlockNum? blockNumber = widget.transactionReceipt.blockNumber; final ModifierId transactionId = widget.transactionReceipt.id; final String renderPlusOrMinusPolyTransfer = - transactionReceiverAddress == widget.myRibnWalletAddress && - isPolyTransaction - ? '+' - : '-'; + transactionReceiverAddress == widget.myRibnWalletAddress && isPolyTransaction ? '+' : '-'; final String transactionAmountForPolyTransfer = '$renderPlusOrMinusPolyTransfer$transactionQuantity'; @@ -117,103 +114,9 @@ class _TransactionDataRowState extends State { return 'Sent'; } - // Render poly specific section if poly transfer - if (isPolyTransaction) { - return GestureDetector( - onTap: () { - Keys.navigatorKey.currentState?.pushNamed( - Routes.txHistoryDetails, - arguments: { - 'isPolyTransaction': true, - 'transactionType': renderSentReceivedMintedText(), - 'timestamp': formattedDateAlternate, - 'assetDetails': {}, - 'icon': renderPolyIcon(), - 'shortName': 'POLY', - 'transactionStatus': transactionStatus, - 'transactionAmount': transactionAmountForPolyTransfer, - 'fee': fee, - 'myRibnWalletAddress': widget.myRibnWalletAddress, - 'transactionSenderAddress': transactionSenderAddress, - 'note': note, - 'blockId': blockId, - 'blockHeight': blockNumber, - 'transactionId': transactionId, - 'networkId': widget.networkId, - }, - ); - }, - child: Container( - color: Colors.transparent, - padding: const EdgeInsets.symmetric( - horizontal: 8, - vertical: 15, - ), - child: Column( - mainAxisAlignment: MainAxisAlignment.spaceEvenly, - children: [ - Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - SizedBox( - height: 40, - child: Row( - mainAxisAlignment: MainAxisAlignment.spaceAround, - children: [ - SizedBox( - width: 25, - height: 25, - child: renderPolyIcon(), - ), - Padding( - padding: const EdgeInsets.only(left: 12), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - mainAxisAlignment: MainAxisAlignment.spaceAround, - children: [ - Text( - transactionAmountForPolyTransfer, - style: RibnToolkitTextStyles.extH3 - .copyWith(fontSize: 14), - ), - Text( - 'POLY', - style: RibnToolkitTextStyles.assetLongNameStyle - .copyWith(fontSize: 11), - ), - ], - ), - ) - ], - ), - ), - SizedBox( - height: 40, - child: Column( - crossAxisAlignment: CrossAxisAlignment.end, - mainAxisAlignment: MainAxisAlignment.spaceAround, - children: [ - StatusChip(status: transactionStatus), - Text( - '${renderSentReceivedMintedText()} on $formattedDate', - style: RibnToolkitTextStyles.assetLongNameStyle - .copyWith(fontSize: 11), - ), - ], - ), - ), - ], - ), - ], - ), - ), - ); - } - return StoreConnector( // Get access to AssetDetails for this asset from the store only if not poly transaction - converter: (store) => - store.state.userDetailsState.assetDetails[assetCode], + converter: (store) => store.state.userDetailsState.assetDetails[assetCode], builder: (context, assetDetails) { final List filteredAsset = widget.assets .where( @@ -221,109 +124,62 @@ class _TransactionDataRowState extends State { ) .toList(); - return GestureDetector( + return RibnActivityTile( + tileColor: RibnColors.whiteColor, + assetIcon: isPolyTransaction ? renderPolyIcon() : renderAssetIcon(assetDetails?.icon), + assetBalance: + '${transactionAmountForAssetTransfer()} ${formatAssetUnit(assetDetails?.unit ?? 'Unit')}', + assetShortName: isPolyTransaction + ? 'POLY' + : filteredAsset.isNotEmpty + ? filteredAsset[0].assetCode.shortName.show.replaceAll('\x00', '') + : '', + transactionStatus: transactionStatus, + transactionDate: '${renderSentReceivedMintedText()} on $formattedDate', onTap: () { - Keys.navigatorKey.currentState?.pushNamed( + final Map details = { + 'isPolyTransaction': isPolyTransaction, + 'transactionType': renderSentReceivedMintedText(), + 'timestamp': formattedDateAlternate, + 'assetDetails': isPolyTransaction + ? {} + : assetDetails ?? {'unit': transactionAmountForAssetTransfer()}, + 'icon': isPolyTransaction ? renderPolyIcon() : renderAssetIcon(assetDetails?.icon), + 'shortName': isPolyTransaction + ? 'POLY' + : filteredAsset.isNotEmpty + ? filteredAsset[0].assetCode.shortName.show.replaceAll('\x00', '') + : '', + 'transactionStatus': transactionStatus, + 'transactionAmount': isPolyTransaction + ? transactionAmountForPolyTransfer + : '${transactionAmountForAssetTransfer()} ${formatAssetUnit(assetDetails?.unit ?? 'Unit')}', + 'fee': fee, + 'myRibnWalletAddress': widget.myRibnWalletAddress, + 'transactionSenderAddress': transactionSenderAddress.senderAddress.toBase58(), + 'note': note, + 'securityRoot': isPolyTransaction ? '' : securityRoot, + 'blockId': blockId.toString(), + 'blockHeight': blockNumber?.blockNum, + 'transactionId': transactionId.toString(), + 'networkId': widget.networkId, + }; + Navigator.pushNamed( + context, Routes.txHistoryDetails, - arguments: { - 'isPolyTransaction': false, - 'transactionType': renderSentReceivedMintedText(), - 'timestamp': formattedDateAlternate, - 'assetDetails': assetDetails, - 'icon': renderAssetIcon(assetDetails?.icon), - 'shortName': filteredAsset.isNotEmpty ? filteredAsset[0].assetCode.shortName.show.replaceAll('\x00', '') : 'Unknown', - 'transactionStatus': transactionStatus, - 'transactionAmount': - '${transactionAmountForAssetTransfer()} ${formatAssetUnit(assetDetails?.unit ?? 'Unit')}', - 'fee': fee, - 'myRibnWalletAddress': widget.myRibnWalletAddress, - 'transactionSenderAddress': transactionSenderAddress, - 'note': note, - 'securityRoot': securityRoot, - 'blockId': blockId, - 'blockHeight': blockNumber, - 'transactionId': transactionId, - 'networkId': widget.networkId, - }, + arguments: details, ); }, - child: Container( - color: Colors.white, - padding: const EdgeInsets.symmetric( - horizontal: 8, - vertical: 15, - ), - child: Column( - mainAxisAlignment: MainAxisAlignment.spaceEvenly, - children: [ - Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - SizedBox( - height: 40, - child: Row( - mainAxisAlignment: MainAxisAlignment.spaceAround, - children: [ - SizedBox( - width: 25, - height: 25, - child: renderAssetIcon(assetDetails?.icon), - ), - Padding( - padding: const EdgeInsets.only(left: 12), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - mainAxisAlignment: MainAxisAlignment.spaceAround, - children: [ - Text( - '${transactionAmountForAssetTransfer()} ${formatAssetUnit(assetDetails?.unit ?? 'Unit')}', - style: RibnToolkitTextStyles.extH3 - .copyWith(fontSize: 14), - ), - Text( - filteredAsset.isNotEmpty ? filteredAsset[0].assetCode.shortName.show.replaceAll('\x00', '') : 'Unknown', - style: RibnToolkitTextStyles.assetLongNameStyle.copyWith(fontSize: 11), - ), - ], - ), - ) - ], - ), - ), - SizedBox( - height: 40, - child: Column( - crossAxisAlignment: CrossAxisAlignment.end, - mainAxisAlignment: MainAxisAlignment.spaceAround, - children: [ - StatusChip(status: transactionStatus), - Text( - '${renderSentReceivedMintedText()} on $formattedDate', - style: RibnToolkitTextStyles.assetLongNameStyle - .copyWith(fontSize: 11), - ), - ], - ), - ), - ], - ), - ], - ), - ), ); }, ); } - Image renderAssetIcon(assetDetailsIcon) { - return assetDetailsIcon == null - ? Image.asset(RibnAssets.undefinedIcon) - : Image.asset( - assetDetailsIcon!, - ); + String renderAssetIcon(assetDetailsIcon) { + return assetDetailsIcon == null ? RibnAssets.undefinedIcon : assetDetailsIcon!; } - Image renderPolyIcon() { - return Image.asset(RibnAssets.polyIconCircle); + String renderPolyIcon() { + return RibnAssets.polyIconCircle; } } diff --git a/lib/presentation/transaction_history/transaction_history_details_page/transaction_history_data_tile.dart b/lib/presentation/transaction_history/transaction_history_details_page/transaction_history_data_tile.dart index afe82a9d..60c65da4 100644 --- a/lib/presentation/transaction_history/transaction_history_details_page/transaction_history_data_tile.dart +++ b/lib/presentation/transaction_history/transaction_history_details_page/transaction_history_data_tile.dart @@ -1,4 +1,7 @@ +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: import 'package:ribn_toolkit/constants/styles.dart'; class TransactionHistoryDataTile extends StatelessWidget { @@ -16,7 +19,9 @@ class TransactionHistoryDataTile extends StatelessWidget { @override Widget build(BuildContext context) { return ConstrainedBox( - constraints: reducedWidth == true ? const BoxConstraints(minWidth: 70) : const BoxConstraints(minWidth: 163), + constraints: reducedWidth == true + ? const BoxConstraints(minWidth: 70) + : const BoxConstraints(minWidth: 163), child: Column( crossAxisAlignment: CrossAxisAlignment.start, mainAxisAlignment: MainAxisAlignment.spaceAround, diff --git a/lib/presentation/transaction_history/transaction_history_details_page/transaction_history_details_page.dart b/lib/presentation/transaction_history/transaction_history_details_page/transaction_history_details_page.dart index 9f649937..18defb45 100644 --- a/lib/presentation/transaction_history/transaction_history_details_page/transaction_history_details_page.dart +++ b/lib/presentation/transaction_history/transaction_history_details_page/transaction_history_details_page.dart @@ -1,23 +1,18 @@ +// Flutter imports: import 'package:flutter/material.dart'; -import 'package:flutter_svg/flutter_svg.dart'; -import 'package:ribn/constants/assets.dart'; -import 'package:ribn/constants/rules.dart'; -import 'package:ribn/constants/strings.dart'; -import 'package:ribn/presentation/transaction_history/dashed_list_separator/dashed_list_separator.dart'; -import 'package:ribn/presentation/transaction_history/transaction_history_details_page/transaction_history_data_tile.dart'; -import 'package:ribn/utils.dart'; + +// Package imports: import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; -import 'package:ribn_toolkit/widgets/atoms/custom_copy_button.dart'; -import 'package:ribn_toolkit/widgets/atoms/status_chip.dart'; -import 'package:ribn_toolkit/widgets/organisms/custom_page_text_title.dart'; -import 'package:url_launcher/url_launcher.dart'; +import 'package:ribn_toolkit/models/transactions/ribn_activity_details_model.dart'; +import 'package:ribn_toolkit/widgets/molecules/ribn_activity_details.dart'; + +// Project imports: class TxHistoryDetailsPage extends StatefulWidget { - final Map? transactionDetails; + final RibnActivityDetailsModel ribnActivityDetailsModel; const TxHistoryDetailsPage({ - required this.transactionDetails, + required this.ribnActivityDetailsModel, Key? key, }) : super(key: key); @@ -29,10 +24,6 @@ class _TxHistoryPageDetailsState extends State { @override Widget build(BuildContext context) { final _scrollController = ScrollController(); - final dataTileTextStyle = RibnToolkitTextStyles.hintStyle.copyWith( - fontWeight: FontWeight.w400, - color: const Color(0xff727372), - ); return Scaffold( backgroundColor: RibnColors.background, @@ -41,425 +32,16 @@ class _TxHistoryPageDetailsState extends State { controller: _scrollController, child: SingleChildScrollView( controller: _scrollController, - child: Column( - children: [ - const CustomPageTextTitle( - title: Strings.transactionDetails, - hideCloseCross: true, - ), - Padding( - padding: const EdgeInsets.only(top: 20, bottom: 20), - child: Container( - width: MediaQuery.of(context).size.width - 40, - padding: const EdgeInsets.symmetric( - horizontal: 8, - vertical: 8, - ), - decoration: BoxDecoration( - borderRadius: BorderRadius.circular(11.6), - color: RibnColors.whiteBackground, - border: Border.all(color: RibnColors.lightGrey, width: 1), - boxShadow: const [ - BoxShadow( - color: RibnColors.greyShadow, - spreadRadius: 0, - blurRadius: 37.5, - offset: Offset(0, -6), - ), - ], - ), - child: Container( - color: Colors.white, - padding: const EdgeInsets.symmetric( - horizontal: 20, - vertical: 15, - ), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Row( - mainAxisAlignment: MainAxisAlignment.start, - children: [ - TransactionHistoryDataTile( - tileTitle: 'Transaction Type', - tileValue: Text( - widget.transactionDetails!['transactionType'], - style: dataTileTextStyle, - ), - ), - TransactionHistoryDataTile( - reducedWidth: true, - tileTitle: 'Timestamp', - tileValue: Text( - widget.transactionDetails!['timestamp'], - style: dataTileTextStyle, - ), - ), - ], - ), - const SizedBox( - height: 16, - ), - const DashedListSeparator(color: RibnColors.lightGreyDivider), - const SizedBox( - height: 16, - ), - Row( - mainAxisAlignment: MainAxisAlignment.start, - children: [ - TransactionHistoryDataTile( - tileTitle: 'Asset Code', - tileValue: Row( - children: [ - SizedBox( - width: 24, - height: 24, - child: widget.transactionDetails?['icon'], - ), - Padding( - padding: const EdgeInsets.only(left: 12), - child: Text( - widget.transactionDetails?['shortName'], - style: dataTileTextStyle, - ), - ), - ], - ), - ), - TransactionHistoryDataTile( - reducedWidth: true, - tileTitle: 'Amount', - tileValue: Text( - widget.transactionDetails!['transactionAmount'], - style: dataTileTextStyle, - ), - ), - ], - ), - const SizedBox( - height: 16, - ), - const DashedListSeparator(color: RibnColors.lightGreyDivider), - const SizedBox( - height: 16, - ), - Row( - mainAxisAlignment: MainAxisAlignment.start, - children: [ - TransactionHistoryDataTile( - tileTitle: 'Status', - tileValue: StatusChip( - status: widget.transactionDetails!['transactionStatus'], - ), - ), - TransactionHistoryDataTile( - reducedWidth: true, - tileTitle: 'Fee', - tileValue: Text( - widget.transactionDetails!['fee'].toString(), - style: dataTileTextStyle, - ), - ), - ], - ), - const SizedBox( - height: 16, - ), - const DashedListSeparator(color: RibnColors.lightGreyDivider), - const SizedBox( - height: 16, - ), - TransactionHistoryDataTile( - tileTitle: 'To', - tileValue: Row( - mainAxisAlignment: MainAxisAlignment.start, - children: [ - SizedBox( - width: 26, - height: 26, - child: SvgPicture.asset(RibnAssets.myFingerprint), - ), - Padding( - padding: const EdgeInsets.symmetric(horizontal: 10), - child: Text( - Strings.yourRibnWalletAddress, - style: dataTileTextStyle, - ), - ), - CustomCopyButton( - textToBeCopied: widget.transactionDetails!['myRibnWalletAddress'], - icon: Image.asset( - RibnAssets.copyIcon, - width: 20, - ), - ), - ], - ), - ), - const SizedBox( - height: 16, - ), - const DashedListSeparator(color: RibnColors.lightGreyDivider), - const SizedBox( - height: 16, - ), - TransactionHistoryDataTile( - tileTitle: 'From', - tileValue: Row( - mainAxisAlignment: MainAxisAlignment.start, - children: [ - SizedBox( - width: 26, - height: 26, - child: SvgPicture.asset(RibnAssets.recipientFingerprint), - ), - Padding( - padding: const EdgeInsets.symmetric(horizontal: 10), - child: Text( - formatAddrString(widget.transactionDetails!['transactionSenderAddress'].toString()), - style: dataTileTextStyle, - ), - ), - CustomCopyButton( - textToBeCopied: widget.transactionDetails!['transactionSenderAddress'].toString(), - icon: Image.asset( - RibnAssets.copyIcon, - width: 20, - ), - ), - ], - ), - ), - const SizedBox( - height: 16, - ), - const DashedListSeparator(color: RibnColors.lightGreyDivider), - const SizedBox( - height: 16, - ), - Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - TransactionHistoryDataTile( - tileTitle: 'Note', - tileValue: Text( - widget.transactionDetails!['note'] ?? '', - style: dataTileTextStyle, - ), - ), - ], - ), - const SizedBox( - height: 16, - ), - const DashedListSeparator(color: RibnColors.lightGreyDivider), - widget.transactionDetails!['securityRoot'] == null - ? const SizedBox() - : Column( - children: [ - const SizedBox( - height: 16, - ), - Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - TransactionHistoryDataTile( - tileTitle: 'Security Root', - tileValue: Row( - mainAxisAlignment: MainAxisAlignment.start, - children: [ - Padding( - padding: const EdgeInsets.only(right: 10), - child: Text( - formatAddrString( - widget.transactionDetails!['securityRoot'], - charsToDisplay: 4, - ), - style: dataTileTextStyle, - ), - ), - CustomCopyButton( - textToBeCopied: widget.transactionDetails!['securityRoot'], - icon: Image.asset( - RibnAssets.copyIcon, - width: 20, - ), - ), - ], - ), - ), - ], - ), - const SizedBox( - height: 16, - ), - const DashedListSeparator(color: RibnColors.lightGreyDivider), - ], - ), - const SizedBox( - height: 16, - ), - Row( - mainAxisAlignment: MainAxisAlignment.start, - children: [ - TransactionHistoryDataTile( - tileTitle: 'Block ID', - tileValue: Row( - mainAxisAlignment: MainAxisAlignment.start, - children: [ - Padding( - padding: const EdgeInsets.only(right: 10), - child: Text( - formatAddrString( - widget.transactionDetails!['blockId'].toString(), - charsToDisplay: 4, - ), - style: dataTileTextStyle, - ), - ), - CustomCopyButton( - textToBeCopied: widget.transactionDetails!['blockId'].toString(), - icon: Image.asset( - RibnAssets.copyIcon, - width: 20, - ), - ), - ], - ), - ), - TransactionHistoryDataTile( - reducedWidth: true, - tileTitle: 'Block height', - tileValue: Row( - mainAxisAlignment: MainAxisAlignment.start, - children: [ - Padding( - padding: const EdgeInsets.only(right: 10), - child: Text( - widget.transactionDetails!['blockHeight'].toString(), - style: dataTileTextStyle, - ), - ), - CustomCopyButton( - textToBeCopied: widget.transactionDetails!['blockHeight'].toString(), - icon: Image.asset( - RibnAssets.copyIcon, - width: 20, - ), - ), - ], - ), - ), - ], - ), - const SizedBox( - height: 16, - ), - const DashedListSeparator(color: RibnColors.lightGreyDivider), - const SizedBox( - height: 16, - ), - Row( - mainAxisAlignment: MainAxisAlignment.start, - children: [ - TransactionHistoryDataTile( - tileTitle: 'Transaction ID', - tileValue: Row( - mainAxisAlignment: MainAxisAlignment.start, - children: [ - Padding( - padding: const EdgeInsets.only(right: 10), - child: Text( - formatAddrString( - widget.transactionDetails!['transactionId'].toString(), - charsToDisplay: 4, - ), - style: dataTileTextStyle, - ), - ), - CustomCopyButton( - textToBeCopied: widget.transactionDetails!['transactionId'].toString(), - icon: Image.asset( - RibnAssets.copyIcon, - width: 20, - ), - ), - ], - ), - ), - TransactionHistoryDataTile( - reducedWidth: true, - tileTitle: 'View Topl Explorer', - tileValue: _buildToplExplorerLink(), - ), - ], - ), - ], - ), - ), - ), - ) - ], - ), - ), - ), - ); - } - - Image renderAssetIcon(assetDetailsIcon) { - return assetDetailsIcon == null - ? Image.asset(RibnAssets.undefinedIcon) - : Image.asset( - assetDetailsIcon!, - ); - } - - Image renderPolyIcon() { - return Image.asset(RibnAssets.polyIconCircle); - } - - /// Redirects user to the Topl Explorer - RichText _buildToplExplorerLink() { - final url = Uri.parse( - '${Rules.txDetailsRedirectUrls[widget.transactionDetails!['networkId']] ?? ''}${widget.transactionDetails!['transactionId']}', - ); - - return RichText( - text: TextSpan( - children: [ - WidgetSpan( - child: GestureDetector( - onTap: () async => await launchUrl(url), - child: Row( - mainAxisAlignment: MainAxisAlignment.center, - crossAxisAlignment: CrossAxisAlignment.center, - children: [ - Text( - 'www.topl.explorer', - style: RibnToolkitTextStyles.h4.copyWith( - fontSize: 12, - fontWeight: FontWeight.w400, - color: RibnColors.tertiary, - decoration: TextDecoration.underline, - ), - ), - const SizedBox(width: 5), - Container( - padding: const EdgeInsets.all(4), - decoration: BoxDecoration( - borderRadius: BorderRadius.circular(50), - color: const Color(0xFFF9F9F9), - ), - child: Image.asset( - RibnAssets.openInNewWindow, - width: 12, - ), - ), - ], - ), + child: RibnActivityDetails( + activityDetails: widget.ribnActivityDetailsModel, + dataTileTextStyle: const TextStyle( + fontFamily: 'DM Sans', + fontSize: 12, + color: RibnColors.hintTextColor, + fontWeight: FontWeight.normal, ), ), - ], + ), ), ); } diff --git a/lib/presentation/transaction_history/transaction_history_page.dart b/lib/presentation/transaction_history/transaction_history_page.dart index bb10248e..1d924b68 100644 --- a/lib/presentation/transaction_history/transaction_history_page.dart +++ b/lib/presentation/transaction_history/transaction_history_page.dart @@ -1,17 +1,22 @@ -import 'package:brambldart/brambldart.dart'; +// Flutter imports: + +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: +import 'package:brambldart/brambldart.dart'; import 'package:loader_overlay/loader_overlay.dart'; +import 'package:ribn_toolkit/constants/colors.dart'; +import 'package:ribn_toolkit/widgets/organisms/custom_page_dropdown_title.dart'; + +// Project imports: import 'package:ribn/constants/assets.dart'; -import 'package:ribn/constants/keys.dart'; -import 'package:ribn/constants/routes.dart'; import 'package:ribn/constants/strings.dart'; import 'package:ribn/containers/transaction_history_container.dart'; import 'package:ribn/presentation/empty_state_screen.dart'; import 'package:ribn/presentation/transaction_history/dashed_list_separator/dashed_list_separator.dart'; import 'package:ribn/presentation/transaction_history/transaction_data_row/transaction_data_row.dart'; import 'package:ribn/utils.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/widgets/organisms/custom_page_dropdown_title.dart'; class TxHistoryPage extends StatefulWidget { final Future? blockHeight; @@ -134,7 +139,11 @@ class _TxHistoryPageState extends State { ), FutureBuilder( future: fetchTxHistory( - context, vm.toplAddress, vm.networkId, vm,), + context, + vm.toplAddress, + vm.networkId, + vm, + ), builder: (context, AsyncSnapshot snapshot) { switch (snapshot.connectionState) { case ConnectionState.done: @@ -145,17 +154,8 @@ class _TxHistoryPageState extends State { icon: RibnAssets.clockWithBorder, title: Strings.noActivityToReview, body: emptyStateBody, - buttonOneText: 'Mint', - buttonOneAction: () => - Keys.navigatorKey.currentState?.pushNamed( - Routes.mintInput, - arguments: { - 'mintingNewAsset': true, - 'mintingToMyWallet': true, - }, - ), - buttonTwoText: 'Share', - buttonTwoAction: () async => + buttonOneText: 'Share', + buttonOneAction: () async => await showReceivingAddress(), mobileHeight: MediaQuery.of(context).size.height * 0.63, @@ -176,7 +176,9 @@ class _TxHistoryPageState extends State { borderRadius: BorderRadius.circular(11.6), color: RibnColors.whiteBackground, border: Border.all( - color: RibnColors.lightGrey, width: 1,), + color: RibnColors.lightGrey, + width: 1, + ), boxShadow: const [ BoxShadow( color: RibnColors.greyShadow, @@ -215,7 +217,8 @@ class _TxHistoryPageState extends State { }, separatorBuilder: (context, index) { return const DashedListSeparator( - color: RibnColors.lightGreyDivider,); + color: RibnColors.lightGreyDivider, + ); }, ), ), @@ -237,4 +240,4 @@ class _TxHistoryPageState extends State { ), ); } -} \ No newline at end of file +} diff --git a/lib/presentation/transaction_history/widgets/listeners/scroll_listener.dart b/lib/presentation/transaction_history/widgets/listeners/scroll_listener.dart index ede400c6..9f3be35b 100644 --- a/lib/presentation/transaction_history/widgets/listeners/scroll_listener.dart +++ b/lib/presentation/transaction_history/widgets/listeners/scroll_listener.dart @@ -1,3 +1,4 @@ +// Flutter imports: import 'package:flutter/cupertino.dart'; class ScrollListener extends StatefulWidget { diff --git a/lib/presentation/transaction_history/widgets/misc/keep_alive_future_builder.dart b/lib/presentation/transaction_history/widgets/misc/keep_alive_future_builder.dart index 26869269..b09e87b5 100644 --- a/lib/presentation/transaction_history/widgets/misc/keep_alive_future_builder.dart +++ b/lib/presentation/transaction_history/widgets/misc/keep_alive_future_builder.dart @@ -1,11 +1,14 @@ +// Flutter imports: import 'package:flutter/cupertino.dart'; class KeepAliveFutureBuilder extends StatefulWidget { final Future future; final AsyncWidgetBuilder builder; - const KeepAliveFutureBuilder( - {Key? key, required this.future, required this.builder,}) - : super(key: key); + const KeepAliveFutureBuilder({ + Key? key, + required this.future, + required this.builder, + }) : super(key: key); @override _KeepAliveFutureBuilderState createState() => _KeepAliveFutureBuilderState(); } diff --git a/lib/presentation/transfers/asset_transfer_page.dart b/lib/presentation/transfers/asset_transfer_page.dart index 8f8ea689..5d143f2a 100644 --- a/lib/presentation/transfers/asset_transfer_page.dart +++ b/lib/presentation/transfers/asset_transfer_page.dart @@ -1,15 +1,19 @@ +// Flutter imports: import 'package:flutter/material.dart'; -import 'package:flutter_keyboard_visibility/flutter_keyboard_visibility.dart'; + +// Package imports: import 'package:loader_overlay/loader_overlay.dart'; +import 'package:ribn_toolkit/constants/colors.dart'; +import 'package:ribn_toolkit/constants/styles.dart'; +import 'package:ribn_toolkit/widgets/molecules/sliding_segment_control.dart'; +import 'package:ribn_toolkit/widgets/organisms/custom_page_text_title.dart'; + +// Project imports: import 'package:ribn/constants/strings.dart'; import 'package:ribn/containers/asset_transfer_input_container.dart'; import 'package:ribn/containers/poly_transfer_input_container.dart'; import 'package:ribn/presentation/transfers/asset_transfer_section.dart'; import 'package:ribn/presentation/transfers/poly_transfer_section.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; -import 'package:ribn_toolkit/widgets/molecules/sliding_segment_control.dart'; -import 'package:ribn_toolkit/widgets/organisms/custom_page_text_title.dart'; /// The asset transfer input page that allows the initiation of an asset transfer. /// @@ -27,11 +31,11 @@ class _AssetTransferPageState extends State { @override void initState() { - KeyboardVisibilityController().onChange.listen((bool visible) { - setState(() { - isKeyboardVisible = visible; - }); - }); + // KeyboardVisibilityController().onChange.listen((bool visible) { + // setState(() { + // isKeyboardVisible = visible; + // }); + // }); super.initState(); } diff --git a/lib/presentation/transfers/asset_transfer_section.dart b/lib/presentation/transfers/asset_transfer_section.dart index ddd51c18..fbfb343a 100644 --- a/lib/presentation/transfers/asset_transfer_section.dart +++ b/lib/presentation/transfers/asset_transfer_section.dart @@ -1,11 +1,22 @@ -import 'package:brambldart/brambldart.dart'; +// Flutter imports: + +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; + +// Package imports: +import 'package:brambldart/brambldart.dart'; import 'package:flutter_svg/flutter_svg.dart'; import 'package:loader_overlay/loader_overlay.dart'; +import 'package:ribn_toolkit/constants/styles.dart'; +import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; +import 'package:ribn_toolkit/widgets/molecules/asset_amount_field.dart'; +import 'package:ribn_toolkit/widgets/molecules/asset_selection_field.dart'; +import 'package:ribn_toolkit/widgets/molecules/note_field.dart'; +import 'package:ribn_toolkit/widgets/molecules/recipient_field.dart'; + +// Project imports: import 'package:ribn/constants/assets.dart'; -import 'package:ribn/constants/keys.dart'; -import 'package:ribn/constants/routes.dart'; import 'package:ribn/constants/strings.dart'; import 'package:ribn/containers/asset_transfer_input_container.dart'; import 'package:ribn/presentation/empty_state_screen.dart'; @@ -15,12 +26,6 @@ import 'package:ribn/presentation/transfers/widgets/from_address_field.dart'; import 'package:ribn/utils.dart'; import 'package:ribn/widgets/address_display_container.dart'; import 'package:ribn/widgets/fee_info.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; -import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; -import 'package:ribn_toolkit/widgets/molecules/asset_amount_field.dart'; -import 'package:ribn_toolkit/widgets/molecules/asset_selection_field.dart'; -import 'package:ribn_toolkit/widgets/molecules/note_field.dart'; -import 'package:ribn_toolkit/widgets/molecules/recipient_field.dart'; /// The asset transfer input page that allows the initiation of an asset transfer. /// @@ -83,7 +88,8 @@ class _AssetTransferSectionState extends State { }); } - void disposeController(TextEditingController controller) => controller.dispose(); + void disposeController(TextEditingController controller) => + controller.dispose(); void renderBottomButton() { return WidgetsBinding.instance.addPostFrameCallback((_) { @@ -111,16 +117,8 @@ class _AssetTransferSectionState extends State { icon: RibnAssets.walletWithBorder, title: Strings.noAssetsInWallet, body: emptyStateBody, - buttonOneText: 'Mint', - buttonOneAction: () => Keys.navigatorKey.currentState?.pushNamed( - Routes.mintInput, - arguments: { - 'mintingNewAsset': true, - 'mintingToMyWallet': true, - }, - ), - buttonTwoText: 'Share', - buttonTwoAction: () async => await showReceivingAddress(), + buttonOneText: 'Share', + buttonOneAction: () async => await showReceivingAddress(), mobileHeight: MediaQuery.of(context).size.height * 0.63, desktopHeight: 258, ); @@ -139,19 +137,29 @@ class _AssetTransferSectionState extends State { AssetSelectionField( formattedSelectedAsset: { 'assetCode': _selectedAsset?.assetCode.toString(), - 'longName': widget.vm.assetDetails[_selectedAsset?.assetCode.toString()]?.longName, + 'longName': widget + .vm + .assetDetails[_selectedAsset?.assetCode.toString()] + ?.longName, 'shortName': _selectedAsset?.assetCode.shortName.show, - 'assetIcon': widget.vm.assetDetails[_selectedAsset?.assetCode.toString()]?.icon, + 'assetIcon': widget + .vm + .assetDetails[_selectedAsset?.assetCode.toString()] + ?.icon, }, formattedAsset: (asset) { return { - 'longName': widget.vm.assetDetails[asset!.assetCode.toString()]?.longName, + 'longName': widget + .vm + .assetDetails[asset!.assetCode.toString()] + ?.longName, 'shortName': asset.assetCode.shortName.show, - 'assetIcon': widget.vm.assetDetails[asset!.assetCode.toString()]?.icon, + 'assetIcon': widget + .vm.assetDetails[asset!.assetCode.toString()]?.icon, }; }, assets: widget.vm.assets, - label: Strings.youSend, + label: Strings.sending, onSelected: (AssetAmount? asset) { setState(() { _selectedAsset = asset!; @@ -175,18 +183,25 @@ class _AssetTransferSectionState extends State { setState(() { _validAmount = TransferUtils.validateAmount( amount, - widget.vm.getAssetBalance(_selectedAsset?.assetCode.toString()), + widget.vm.getAssetBalance( + _selectedAsset?.assetCode.toString(), + ), ); }); }, - selectedUnit: widget.vm.assetDetails[_selectedAsset?.assetCode.toString()]?.unit, + selectedUnit: widget + .vm + .assetDetails[_selectedAsset?.assetCode.toString()] + ?.unit, controller: _amountController, allowEditingUnit: false, onUnitSelected: (String amount) { setState(() { _validAmount = TransferUtils.validateAmount( amount, - widget.vm.getAssetBalance(_selectedAsset?.assetCode.toString()), + widget.vm.getAssetBalance( + _selectedAsset?.assetCode.toString(), + ), ); }); }, @@ -194,7 +209,8 @@ class _AssetTransferSectionState extends State { RibnAssets.chevronDownDark, width: 24, ), - maxTransferrableAmount: widget.vm.getAssetBalance(_selectedAsset?.assetCode.toString()), + maxTransferrableAmount: widget.vm + .getAssetBalance(_selectedAsset?.assetCode.toString()), ), // Displays the sender address. const FromAddressField(), @@ -210,7 +226,8 @@ class _AssetTransferSectionState extends State { if (mounted) { setState(() { if (result) { - _validRecipientAddress = _recipientController.text; + _validRecipientAddress = + _recipientController.text; _recipientController.text = ''; } else { _validRecipientAddress = ''; @@ -231,8 +248,11 @@ class _AssetTransferSectionState extends State { if (_validRecipientAddress.isNotEmpty) { _recipientController.text = _validRecipientAddress; _recipientController - ..text = _recipientController.text.substring(0, _recipientController.text.length) - ..selection = TextSelection.collapsed(offset: _recipientController.text.length); + ..text = _recipientController.text + .substring(0, _recipientController.text.length) + ..selection = TextSelection.collapsed( + offset: _recipientController.text.length, + ); } _validRecipientAddress = ''; }); @@ -257,8 +277,9 @@ class _AssetTransferSectionState extends State { } Widget _buildReviewButton(AssetTransferInputViewModel vm) { - final bool enteredValidInputs = - _validRecipientAddress.isNotEmpty && _amountController.text.isNotEmpty && _validAmount; + final bool enteredValidInputs = _validRecipientAddress.isNotEmpty && + _amountController.text.isNotEmpty && + _validAmount; return Padding( padding: const EdgeInsets.only(top: 10, bottom: 10), @@ -279,7 +300,8 @@ class _AssetTransferSectionState extends State { amount: _amountController.text, note: _noteController.text, assetCode: _selectedAsset!.assetCode, - assetDetails: vm.assetDetails[_selectedAsset!.assetCode.toString()], + assetDetails: + vm.assetDetails[_selectedAsset!.assetCode.toString()], onRawTxCreated: (bool success) async { context.loaderOverlay.hide(); // Display error dialog if failed to create raw tx diff --git a/lib/presentation/transfers/bottom_review_action.dart b/lib/presentation/transfers/bottom_review_action.dart index 1979874a..7796f31f 100644 --- a/lib/presentation/transfers/bottom_review_action.dart +++ b/lib/presentation/transfers/bottom_review_action.dart @@ -1,3 +1,4 @@ +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; @@ -36,11 +37,11 @@ class BottomReviewAction extends StatelessWidget { ), child: BottomAppBar( color: transparentBackground ? Colors.transparent : Colors.white, + elevation: 0, child: Padding( padding: const EdgeInsets.fromLTRB(20, 16, 20, kIsWeb ? 16 : 0), child: children, ), - elevation: 0, ), ), ); diff --git a/lib/presentation/transfers/mint_input_page.dart b/lib/presentation/transfers/mint_input_page.dart index 2666b224..ca7af2ef 100644 --- a/lib/presentation/transfers/mint_input_page.dart +++ b/lib/presentation/transfers/mint_input_page.dart @@ -1,9 +1,27 @@ -import 'package:brambldart/brambldart.dart'; +// Flutter imports: + +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; + +// Package imports: +import 'package:brambldart/brambldart.dart'; import 'package:flutter_keyboard_visibility/flutter_keyboard_visibility.dart'; import 'package:flutter_svg/flutter_svg.dart'; import 'package:loader_overlay/loader_overlay.dart'; +import 'package:ribn_toolkit/constants/colors.dart'; +import 'package:ribn_toolkit/constants/styles.dart'; +import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; +import 'package:ribn_toolkit/widgets/molecules/asset_amount_field.dart'; +import 'package:ribn_toolkit/widgets/molecules/asset_long_name_field.dart'; +import 'package:ribn_toolkit/widgets/molecules/asset_selection_field.dart'; +import 'package:ribn_toolkit/widgets/molecules/asset_short_name_field.dart'; +import 'package:ribn_toolkit/widgets/molecules/note_field.dart'; +import 'package:ribn_toolkit/widgets/molecules/recipient_field.dart'; +import 'package:ribn_toolkit/widgets/molecules/sliding_segment_control.dart'; +import 'package:ribn_toolkit/widgets/organisms/custom_page_text_title.dart'; + +// Project imports: import 'package:ribn/constants/assets.dart'; import 'package:ribn/constants/strings.dart'; import 'package:ribn/constants/ui_constants.dart'; @@ -16,17 +34,6 @@ import 'package:ribn/presentation/transfers/widgets/issuer_address_field.dart'; import 'package:ribn/utils.dart'; import 'package:ribn/widgets/address_display_container.dart'; import 'package:ribn/widgets/fee_info.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; -import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; -import 'package:ribn_toolkit/widgets/molecules/asset_amount_field.dart'; -import 'package:ribn_toolkit/widgets/molecules/asset_long_name_field.dart'; -import 'package:ribn_toolkit/widgets/molecules/asset_selection_field.dart'; -import 'package:ribn_toolkit/widgets/molecules/asset_short_name_field.dart'; -import 'package:ribn_toolkit/widgets/molecules/note_field.dart'; -import 'package:ribn_toolkit/widgets/molecules/recipient_field.dart'; -import 'package:ribn_toolkit/widgets/molecules/sliding_segment_control.dart'; -import 'package:ribn_toolkit/widgets/organisms/custom_page_text_title.dart'; /// The mint input page that allows the initiation of an mint asset transaction. class MintInputPage extends StatefulWidget { @@ -38,8 +45,10 @@ class MintInputPage extends StatefulWidget { class _MintInputPageState extends State { final TextEditingController _noteController = TextEditingController(); - final TextEditingController _assetLongNameController = TextEditingController(); - final TextEditingController _assetShortNameController = TextEditingController(); + final TextEditingController _assetLongNameController = + TextEditingController(); + final TextEditingController _assetShortNameController = + TextEditingController(); final TextEditingController _amountController = TextEditingController(); final TextEditingController _recipientController = TextEditingController(); late List _controllers; @@ -109,15 +118,8 @@ class _MintInputPageState extends State { icon: RibnAssets.walletWithBorder, title: Strings.noAssetsInWallet, body: emptyStateBody, - buttonOneText: 'Mint', - buttonOneAction: () => { - setState(() { - mintingNewAsset = true; - currentTabIndex = 0; - }) - }, - buttonTwoText: 'Share', - buttonTwoAction: () async => await showReceivingAddress(), + buttonOneText: 'Share', + buttonOneAction: () async => await showReceivingAddress(), mobileHeight: MediaQuery.of(context).size.height * 0.63, desktopHeight: 258, ); @@ -158,7 +160,9 @@ class _MintInputPageState extends State { ), ), // ignore: prefer_const_constructors - IssuerAddressField(width: 213), // const ignored here so that tooltip can be dismissed + IssuerAddressField( + width: 213, + ), // const ignored here so that tooltip can be dismissed // field for entering the recipient address RecipientField( controller: _recipientController, @@ -183,8 +187,11 @@ class _MintInputPageState extends State { if (_validRecipientAddress.isNotEmpty) { _recipientController.text = _validRecipientAddress; _recipientController - ..text = _recipientController.text.substring(0, _recipientController.text.length) - ..selection = TextSelection.collapsed(offset: _recipientController.text.length); + ..text = _recipientController.text + .substring(0, _recipientController.text.length) + ..selection = TextSelection.collapsed( + offset: _recipientController.text.length, + ); } _validRecipientAddress = ''; }); @@ -242,14 +249,16 @@ class _MintInputPageState extends State { padding: const EdgeInsets.symmetric(horizontal: 10), child: Text( Strings.mintAsset, - style: RibnToolkitTextStyles.btnMedium.copyWith(color: RibnColors.defaultText), + style: RibnToolkitTextStyles.btnMedium + .copyWith(color: RibnColors.defaultText), ), ), 1: Padding( padding: const EdgeInsets.symmetric(horizontal: 10), child: Text( Strings.mintExistingAsset, - style: RibnToolkitTextStyles.btnMedium.copyWith(color: RibnColors.defaultText), + style: RibnToolkitTextStyles.btnMedium + .copyWith(color: RibnColors.defaultText), ), ), }, @@ -312,13 +321,16 @@ class _MintInputPageState extends State { : AssetSelectionField( formattedSelectedAsset: { 'assetCode': _selectedAsset?.assetCode.toString(), - 'longName': vm.assetDetails[_selectedAsset?.assetCode.toString()]?.longName, + 'longName': vm + .assetDetails[_selectedAsset?.assetCode.toString()]?.longName, 'shortName': _selectedAsset?.assetCode.shortName.show, - 'assetIcon': vm.assetDetails[_selectedAsset?.assetCode.toString()]?.icon, + 'assetIcon': + vm.assetDetails[_selectedAsset?.assetCode.toString()]?.icon, }, formattedAsset: (asset) { return { - 'longName': vm.assetDetails[asset!.assetCode.toString()]?.longName, + 'longName': + vm.assetDetails[asset!.assetCode.toString()]?.longName, 'shortName': asset.assetCode.shortName.show, 'assetIcon': vm.assetDetails[asset!.assetCode.toString()]?.icon, }; @@ -327,7 +339,8 @@ class _MintInputPageState extends State { onSelected: (AssetAmount? asset) { setState(() { _selectedAsset = asset; - _selectedUnit = vm.assetDetails[asset!.assetCode.toString()]?.unit; + _selectedUnit = + vm.assetDetails[asset!.assetCode.toString()]?.unit; _assetShortNameController.text = asset.assetCode.shortName.show; }); }, diff --git a/lib/presentation/transfers/poly_transfer_section.dart b/lib/presentation/transfers/poly_transfer_section.dart index 2a73b69a..597ae405 100644 --- a/lib/presentation/transfers/poly_transfer_section.dart +++ b/lib/presentation/transfers/poly_transfer_section.dart @@ -1,8 +1,19 @@ +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; + +// Package imports: import 'package:flutter_svg/flutter_svg.dart'; import 'package:loader_overlay/loader_overlay.dart'; +import 'package:ribn_toolkit/constants/colors.dart'; +import 'package:ribn_toolkit/constants/styles.dart'; +import 'package:ribn_toolkit/widgets/atoms/custom_text_field.dart'; +import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; +import 'package:ribn_toolkit/widgets/molecules/note_field.dart'; +import 'package:ribn_toolkit/widgets/molecules/recipient_field.dart'; + +// Project imports: import 'package:ribn/constants/assets.dart'; import 'package:ribn/constants/strings.dart'; import 'package:ribn/containers/poly_transfer_input_container.dart'; @@ -13,12 +24,6 @@ import 'package:ribn/presentation/transfers/widgets/from_address_field.dart'; import 'package:ribn/utils.dart'; import 'package:ribn/widgets/address_display_container.dart'; import 'package:ribn/widgets/fee_info.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; -import 'package:ribn_toolkit/widgets/atoms/custom_text_field.dart'; -import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; -import 'package:ribn_toolkit/widgets/molecules/note_field.dart'; -import 'package:ribn_toolkit/widgets/molecules/recipient_field.dart'; /// The input page that allows initiating poly transfer transaction. /// @@ -145,8 +150,11 @@ class _PolyTransferSectionState extends State { if (_validRecipientAddress.isNotEmpty) { _recipientController.text = _validRecipientAddress; _recipientController - ..text = _recipientController.text.substring(0, _recipientController.text.length) - ..selection = TextSelection.collapsed(offset: _recipientController.text.length); + ..text = _recipientController.text + .substring(0, _recipientController.text.length) + ..selection = TextSelection.collapsed( + offset: _recipientController.text.length, + ); } _validRecipientAddress = ''; }); @@ -178,7 +186,7 @@ class _PolyTransferSectionState extends State { /// Builds the UI for indicating poly transfer. Widget _buildPolyDisplay() { return CustomInputField( - itemLabel: Strings.youSend, + itemLabel: Strings.sending, item: Container( width: 310, height: 36, @@ -229,8 +237,9 @@ class _PolyTransferSectionState extends State { } Widget _buildReviewButton(PolyTransferInputViewModel vm) { - final bool enteredValidInputs = - _validRecipientAddress.isNotEmpty && _amountController.text.isNotEmpty && _validAmount; + final bool enteredValidInputs = _validRecipientAddress.isNotEmpty && + _amountController.text.isNotEmpty && + _validAmount; return Padding( padding: const EdgeInsets.only(top: 10, bottom: 10), diff --git a/lib/presentation/transfers/transfer_utils.dart b/lib/presentation/transfers/transfer_utils.dart index 8196cfdd..a9ec6a3a 100644 --- a/lib/presentation/transfers/transfer_utils.dart +++ b/lib/presentation/transfers/transfer_utils.dart @@ -1,4 +1,7 @@ +// Flutter imports: import 'package:flutter/material.dart'; + +// Project imports: import 'package:ribn/presentation/error_section.dart'; class TransferUtils { diff --git a/lib/presentation/transfers/tx_confirmation_page.dart b/lib/presentation/transfers/tx_confirmation_page.dart index d152005c..2078f68d 100644 --- a/lib/presentation/transfers/tx_confirmation_page.dart +++ b/lib/presentation/transfers/tx_confirmation_page.dart @@ -1,4 +1,15 @@ +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: +import 'package:ribn_toolkit/constants/colors.dart'; +import 'package:ribn_toolkit/constants/styles.dart'; +import 'package:ribn_toolkit/widgets/atoms/custom_copy_button.dart'; +import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; +import 'package:ribn_toolkit/widgets/molecules/wave_container.dart'; +import 'package:url_launcher/url_launcher.dart'; + +// Project imports: import 'package:ribn/constants/assets.dart'; import 'package:ribn/constants/keys.dart'; import 'package:ribn/constants/routes.dart'; @@ -6,12 +17,6 @@ import 'package:ribn/constants/rules.dart'; import 'package:ribn/constants/strings.dart'; import 'package:ribn/models/transfer_details.dart'; import 'package:ribn/utils.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; -import 'package:ribn_toolkit/widgets/atoms/custom_copy_button.dart'; -import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; -import 'package:ribn_toolkit/widgets/molecules/wave_container.dart'; -import 'package:url_launcher/url_launcher.dart'; /// The transaction confirmation page. /// @@ -77,7 +82,9 @@ class TxConfirmationPage extends StatelessWidget { ), ), onPressed: () { - Keys.navigatorKey.currentState!.popUntil((route) => route.settings.name == Routes.home); + Keys.navigatorKey.currentState!.popUntil( + (route) => route.settings.name == Routes.home, + ); }, ), ), @@ -105,13 +112,15 @@ class TxConfirmationPage extends StatelessWidget { /// /// Different for minting asset and asset/poly transfer. Widget _buildsPageTitle() { - final String text = mintedAsset ? Strings.assetIsBeingMinted : Strings.txWasBroadcasted; + final String text = + mintedAsset ? Strings.assetIsBeingMinted : Strings.txWasBroadcasted; return SizedBox( width: 220, child: Text( text, - style: RibnToolkitTextStyles.h2.copyWith(color: RibnColors.lightGreyTitle), + style: + RibnToolkitTextStyles.h2.copyWith(color: RibnColors.lightGreyTitle), textAlign: TextAlign.center, ), ); @@ -119,7 +128,8 @@ class TxConfirmationPage extends StatelessWidget { /// Displays information about the tx that was broadcasted. Widget _buildTxInfo() { - final String txInfo = transferDetails.transferType == TransferType.polyTransfer + final String txInfo = transferDetails.transferType == + TransferType.polyTransfer ? '${transferDetails.amount} ${'POLY'}' : '${transferDetails.amount} of ${transferDetails.assetCode!.shortName.show}'; @@ -130,22 +140,31 @@ class TxConfirmationPage extends StatelessWidget { RichText( textAlign: TextAlign.center, text: TextSpan( - style: RibnToolkitTextStyles.h3.copyWith(fontWeight: FontWeight.bold, color: RibnColors.lightGreyTitle), + style: RibnToolkitTextStyles.h3.copyWith( + fontWeight: FontWeight.bold, + color: RibnColors.lightGreyTitle, + ), children: [ TextSpan( text: 'Your ', - style: - RibnToolkitTextStyles.h3.copyWith(fontWeight: FontWeight.bold, color: RibnColors.lightGreyTitle), + style: RibnToolkitTextStyles.h3.copyWith( + fontWeight: FontWeight.bold, + color: RibnColors.lightGreyTitle, + ), ), TextSpan( text: txInfo, - style: - RibnToolkitTextStyles.h3.copyWith(fontWeight: FontWeight.bold, color: RibnColors.lightGreyTitle), + style: RibnToolkitTextStyles.h3.copyWith( + fontWeight: FontWeight.bold, + color: RibnColors.lightGreyTitle, + ), ), TextSpan( text: ' was sent to the Topl blockchain.', - style: - RibnToolkitTextStyles.h3.copyWith(fontWeight: FontWeight.bold, color: RibnColors.lightGreyTitle), + style: RibnToolkitTextStyles.h3.copyWith( + fontWeight: FontWeight.bold, + color: RibnColors.lightGreyTitle, + ), ), ], ), @@ -163,7 +182,10 @@ class TxConfirmationPage extends StatelessWidget { children: [ Text( 'Transaction ID: ${formatAddrString(transferDetails.transactionId!, charsToDisplay: 4)}', - style: RibnToolkitTextStyles.h4.copyWith(fontWeight: FontWeight.w400, color: RibnColors.lightGreyTitle), + style: RibnToolkitTextStyles.h4.copyWith( + fontWeight: FontWeight.w400, + color: RibnColors.lightGreyTitle, + ), textAlign: TextAlign.center, ), const SizedBox(width: 5), @@ -197,8 +219,10 @@ class TxConfirmationPage extends StatelessWidget { children: [ Text( Strings.viewInToplExplorer, - style: - RibnToolkitTextStyles.h4.copyWith(fontWeight: FontWeight.w400, color: RibnColors.secondaryDark), + style: RibnToolkitTextStyles.h4.copyWith( + fontWeight: FontWeight.w400, + color: RibnColors.secondaryDark, + ), ), const SizedBox(width: 5), Image.asset( diff --git a/lib/presentation/transfers/tx_review_page.dart b/lib/presentation/transfers/tx_review_page.dart index 66cc1148..907a59e0 100644 --- a/lib/presentation/transfers/tx_review_page.dart +++ b/lib/presentation/transfers/tx_review_page.dart @@ -1,10 +1,22 @@ +// Dart imports: import 'dart:async'; +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; + +// Package imports: import 'package:flutter_redux/flutter_redux.dart'; import 'package:flutter_svg/svg.dart'; import 'package:loader_overlay/loader_overlay.dart'; +import 'package:ribn_toolkit/constants/assets.dart'; +import 'package:ribn_toolkit/constants/colors.dart'; +import 'package:ribn_toolkit/constants/styles.dart'; +import 'package:ribn_toolkit/widgets/atoms/custom_copy_button.dart'; +import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; +import 'package:ribn_toolkit/widgets/organisms/custom_page_text_title.dart'; + +// Project imports: import 'package:ribn/actions/transaction_actions.dart'; import 'package:ribn/constants/keys.dart'; import 'package:ribn/constants/routes.dart'; @@ -18,12 +30,6 @@ import 'package:ribn/utils.dart'; import 'package:ribn/widgets/asset_info.dart'; import 'package:ribn/widgets/custom_divider.dart'; import 'package:ribn/widgets/fee_info.dart'; -import 'package:ribn_toolkit/constants/assets.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; -import 'package:ribn_toolkit/widgets/atoms/custom_copy_button.dart'; -import 'package:ribn_toolkit/widgets/atoms/large_button.dart'; -import 'package:ribn_toolkit/widgets/organisms/custom_page_text_title.dart'; /// The transaction review page. /// @@ -63,7 +69,7 @@ class TxReviewPage extends StatelessWidget { // review box Container( width: 310, - height: 300, + height: 340, padding: const EdgeInsets.symmetric( horizontal: 19.5, vertical: 15, @@ -71,7 +77,8 @@ class TxReviewPage extends StatelessWidget { decoration: BoxDecoration( borderRadius: BorderRadius.circular(11.6), color: RibnColors.whiteBackground, - border: Border.all(color: RibnColors.lightGrey, width: 1), + border: + Border.all(color: RibnColors.lightGrey, width: 1), boxShadow: const [ BoxShadow( color: RibnColors.greyShadow, @@ -100,7 +107,10 @@ class TxReviewPage extends StatelessWidget { padding: const EdgeInsets.symmetric(vertical: 38), child: SizedBox( width: 310, - child: FeeInfo(fee: transferDetails.transactionReceipt!.fee!.getInNanopoly), + child: FeeInfo( + fee: transferDetails + .transactionReceipt!.fee!.getInNanopoly, + ), ), ), ], @@ -127,8 +137,11 @@ class TxReviewPage extends StatelessWidget { onPressed: () async { context.loaderOverlay.show(); final Completer txCompleter = Completer(); - StoreProvider.of(context).dispatch(SignAndBroadcastTxAction(transferDetails, txCompleter)); - await txCompleter.future.then((TransferDetails? transferDetails) { + StoreProvider.of(context).dispatch( + SignAndBroadcastTxAction(transferDetails, txCompleter), + ); + await txCompleter.future + .then((TransferDetails? transferDetails) { if (transferDetails != null) { Keys.navigatorKey.currentState?.pushNamed( Routes.txConfirmation, @@ -157,7 +170,8 @@ class TxReviewPage extends StatelessWidget { dropShadowColor: Colors.transparent, borderColor: RibnColors.ghostButtonText, onPressed: () { - Keys.navigatorKey.currentState!.popUntil((route) => route.settings.name == Routes.home); + Keys.navigatorKey.currentState! + .popUntil((route) => route.settings.name == Routes.home); }, ), const SizedBox(height: 13), @@ -169,7 +183,11 @@ class TxReviewPage extends StatelessWidget { } /// A helper function used to build review items on this page. - Widget _buildReviewItem({required String itemLabel, required Widget item, bool divider = true}) { + Widget _buildReviewItem({ + required String itemLabel, + required Widget item, + bool divider = true, + }) { return Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ @@ -218,7 +236,10 @@ class TxReviewPage extends StatelessWidget { Text('POLY', style: defaultTextStyle), ], ) - : AssetInfo(assetCode: transferDetails.assetCode!, assetDetails: transferDetails.assetDetails), + : AssetInfo( + assetCode: transferDetails.assetCode!, + assetDetails: transferDetails.assetDetails, + ), ], ), ); @@ -246,7 +267,8 @@ class TxReviewPage extends StatelessWidget { ), ), CustomCopyButton( - textToBeCopied: transferDetails.senders.first.toplAddress.toBase58(), + textToBeCopied: + transferDetails.senders.first.toplAddress.toBase58(), icon: Image.asset( RibnAssets.copyIcon, width: 26, @@ -279,7 +301,8 @@ class TxReviewPage extends StatelessWidget { ), ), CustomCopyButton( - textToBeCopied: transferDetails.senders.first.toplAddress.toBase58(), + textToBeCopied: + transferDetails.senders.first.toplAddress.toBase58(), icon: Image.asset( RibnAssets.copyIcon, width: 26, diff --git a/lib/presentation/transfers/widgets/custom_input_field.dart b/lib/presentation/transfers/widgets/custom_input_field.dart index 78ebc7b1..a6ed517a 100644 --- a/lib/presentation/transfers/widgets/custom_input_field.dart +++ b/lib/presentation/transfers/widgets/custom_input_field.dart @@ -1,8 +1,13 @@ +// Flutter imports: import 'package:flutter/material.dart'; -import 'package:ribn/constants/assets.dart'; + +// Package imports: import 'package:ribn_toolkit/constants/styles.dart'; import 'package:ribn_toolkit/widgets/molecules/custom_tooltip.dart'; +// Project imports: +import 'package:ribn/constants/assets.dart'; + /// A wrapper widget used for custom input fields on transfer input pages. class CustomInputField extends StatelessWidget { /// Label for the input field. diff --git a/lib/presentation/transfers/widgets/from_address_field.dart b/lib/presentation/transfers/widgets/from_address_field.dart index 3764dc22..c0965284 100644 --- a/lib/presentation/transfers/widgets/from_address_field.dart +++ b/lib/presentation/transfers/widgets/from_address_field.dart @@ -1,7 +1,13 @@ +// Flutter imports: import 'package:flutter/material.dart'; +import 'package:flutter_redux/flutter_redux.dart'; +// Project imports: import 'package:ribn/constants/strings.dart'; +import 'package:ribn/models/app_state.dart'; +import 'package:ribn/models/ribn_address.dart'; import 'package:ribn/presentation/transfers/widgets/custom_input_field.dart'; import 'package:ribn/widgets/address_display_container.dart'; +// Package imports: import 'package:ribn_toolkit/constants/assets.dart'; /// Custom display for the sender's address. @@ -12,13 +18,28 @@ class FromAddressField extends StatelessWidget { @override Widget build(BuildContext context) { - return const CustomInputField( - itemLabel: Strings.from, - item: AddressDisplayContainer( - text: Strings.yourRibnWalletAddress, - icon: RibnAssets.myFingerprint, - width: 240, + return StoreConnector( + converter: (store) => + store.state.keychainState.currentNetwork.addresses.first, + builder: (context, ribnAddress) => CustomInputField( + itemLabel: Strings.from, + item: AddressDisplayContainer( + // text: Strings.yourRibnWalletAddress, + text: toShortAddress(ribnAddress.toplAddress.toBase58()), + icon: RibnAssets.myFingerprint, + width: 160, + ), ), ); } + + String toShortAddress(String base) { + if (base.isEmpty) + throw FormatException("WalletAddress was returned as empty"); + + final start = base.substring(0, 4); + final end = base.substring(base.length - 5); + + return "$start...$end"; + } } diff --git a/lib/presentation/transfers/widgets/issuer_address_field.dart b/lib/presentation/transfers/widgets/issuer_address_field.dart index 55dd9060..8954beef 100644 --- a/lib/presentation/transfers/widgets/issuer_address_field.dart +++ b/lib/presentation/transfers/widgets/issuer_address_field.dart @@ -1,8 +1,13 @@ +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: +import 'package:ribn_toolkit/constants/assets.dart'; + +// Project imports: import 'package:ribn/constants/strings.dart'; import 'package:ribn/presentation/transfers/widgets/custom_input_field.dart'; import 'package:ribn/widgets/address_display_container.dart'; -import 'package:ribn_toolkit/constants/assets.dart'; /// Custom display for the issuer's address. /// diff --git a/lib/reducers/app_reducer.dart b/lib/reducers/app_reducer.dart index 760d48c9..431e7aca 100644 --- a/lib/reducers/app_reducer.dart +++ b/lib/reducers/app_reducer.dart @@ -1,3 +1,4 @@ +// Project imports: import 'package:ribn/actions/misc_actions.dart'; import 'package:ribn/models/app_state.dart'; import 'package:ribn/reducers/internal_message_reducer.dart'; diff --git a/lib/reducers/internal_message_reducer.dart b/lib/reducers/internal_message_reducer.dart index 93e21ac1..cb616712 100644 --- a/lib/reducers/internal_message_reducer.dart +++ b/lib/reducers/internal_message_reducer.dart @@ -1,14 +1,22 @@ +// Package imports: import 'package:redux/redux.dart'; + +// Project imports: import 'package:ribn/actions/internal_message_actions.dart'; import 'package:ribn/models/internal_message.dart'; /// Reducer responsible for updating currently pending [InternalMessage], i.e. [AppState.internalMessage]. final internalMessageReducer = combineReducers( [ - TypedReducer(_onReceivedInternalMsg), + TypedReducer( + _onReceivedInternalMsg, + ), ], ); -InternalMessage _onReceivedInternalMsg(InternalMessage? internalMessage, ReceivedInternalMsgAction action) { +InternalMessage _onReceivedInternalMsg( + InternalMessage? internalMessage, + ReceivedInternalMsgAction action, +) { return action.pendingRequest; } diff --git a/lib/reducers/keychain_reducer.dart b/lib/reducers/keychain_reducer.dart index 091902b4..fbfb841c 100644 --- a/lib/reducers/keychain_reducer.dart +++ b/lib/reducers/keychain_reducer.dart @@ -1,6 +1,9 @@ +// Package imports: import 'package:bip_topl/bip_topl.dart'; import 'package:brambldart/credentials.dart'; import 'package:redux/redux.dart'; + +// Project imports: import 'package:ribn/actions/keychain_actions.dart'; import 'package:ribn/constants/rules.dart'; import 'package:ribn/models/keychain_state.dart'; @@ -9,10 +12,16 @@ import 'package:ribn/models/ribn_network.dart'; /// Reducer responsible for updating [KeyChainState] final keychainReducer = combineReducers( [ - TypedReducer(_onHdWalletInitialization), - TypedReducer(_onNetworksUpdated), + TypedReducer( + _onHdWalletInitialization, + ), + TypedReducer( + _onNetworksUpdated, + ), TypedReducer(_onAddAddresses), - TypedReducer(_onCurrentNetworkUpdated), + TypedReducer( + _onCurrentNetworkUpdated, + ), TypedReducer(_onBalancesUpdated), ], ); @@ -20,7 +29,10 @@ final keychainReducer = combineReducers( /// Creates a new [HdWallet] upon successful login, where root = toplExtendedPrivateKey. /// /// Optionally updates the [keyStoreJson], for instance, when creating a new wallet for the first time. -KeychainState _onHdWalletInitialization(KeychainState keychainState, InitializeHDWalletAction action) { +KeychainState _onHdWalletInitialization( + KeychainState keychainState, + InitializeHDWalletAction action, +) { return keychainState.copyWith( keyStoreJson: action.keyStoreJson ?? keychainState.keyStoreJson, hdWallet: HdWallet( @@ -33,7 +45,10 @@ KeychainState _onHdWalletInitialization(KeychainState keychainState, InitializeH } /// Updates ribn networks with [action.networkAddresses]. -KeychainState _onNetworksUpdated(KeychainState keychainState, UpdateNetworksWithAddressesAction action) { +KeychainState _onNetworksUpdated( + KeychainState keychainState, + UpdateNetworksWithAddressesAction action, +) { final Map networks = Map.from(keychainState.networks); networks.forEach( (networkName, ribnNetwork) { @@ -46,7 +61,10 @@ KeychainState _onNetworksUpdated(KeychainState keychainState, UpdateNetworksWith } /// Add [action.addresses] to the list of addresses under the network specified by [action.networkName]. -KeychainState _onAddAddresses(KeychainState keychainState, AddAddressAction action) { +KeychainState _onAddAddresses( + KeychainState keychainState, + AddAddressAction action, +) { final RibnNetwork network = keychainState.networks[action.networkName]!; final RibnNetwork updatedNetwork = network.copyWith( addresses: List.from(network.addresses)..add(action.address), @@ -63,7 +81,10 @@ KeychainState _onAddAddresses(KeychainState keychainState, AddAddressAction acti /// /// More specifically, updates the [keychainState.currentNetworkName] and the [lastCheckedTimestamp] of the network associated with /// [action.networkName]. -KeychainState _onCurrentNetworkUpdated(KeychainState keychainState, UpdateCurrentNetworkAction action) { +KeychainState _onCurrentNetworkUpdated( + KeychainState keychainState, + UpdateCurrentNetworkAction action, +) { return keychainState.copyWith( currentNetworkName: action.networkName, networks: { @@ -76,7 +97,10 @@ KeychainState _onCurrentNetworkUpdated(KeychainState keychainState, UpdateCurren } /// Updates the current network with a list of addresses that have updated balances. -KeychainState _onBalancesUpdated(KeychainState keychainState, UpdateBalancesAction action) { +KeychainState _onBalancesUpdated( + KeychainState keychainState, + UpdateBalancesAction action, +) { return keychainState.copyWith( networks: { ...keychainState.networks, diff --git a/lib/reducers/login_reducer.dart b/lib/reducers/login_reducer.dart index 394e7d6e..f2f6d143 100644 --- a/lib/reducers/login_reducer.dart +++ b/lib/reducers/login_reducer.dart @@ -1,4 +1,7 @@ +// Package imports: import 'package:redux/redux.dart'; + +// Project imports: import 'package:ribn/actions/login_actions.dart'; import 'package:ribn/models/login_state.dart'; diff --git a/lib/reducers/onboarding_reducer.dart b/lib/reducers/onboarding_reducer.dart index b0190383..ee7d87a5 100644 --- a/lib/reducers/onboarding_reducer.dart +++ b/lib/reducers/onboarding_reducer.dart @@ -1,5 +1,10 @@ +// Dart imports: import 'dart:math'; + +// Package imports: import 'package:redux/redux.dart'; + +// Project imports: import 'package:ribn/actions/onboarding_actions.dart'; import 'package:ribn/models/onboarding_state.dart'; @@ -7,12 +12,17 @@ import 'package:ribn/models/onboarding_state.dart'; final onboardingReducer = combineReducers( [ TypedReducer(_onUserSelectedWord), - TypedReducer(_onMnemonicGenerated), + TypedReducer( + _onMnemonicGenerated, + ), ], ); /// Updates the mnemonic in [AppState] -OnboardingState _onMnemonicGenerated(OnboardingState onboardingState, MnemonicSuccessfullyGeneratedAction action) { +OnboardingState _onMnemonicGenerated( + OnboardingState onboardingState, + MnemonicSuccessfullyGeneratedAction action, +) { return onboardingState.copyWith( mnemonic: action.mnemonic, shuffledMnemonic: List.from(action.mnemonic.split(' '))..shuffle(Random()), @@ -20,8 +30,12 @@ OnboardingState _onMnemonicGenerated(OnboardingState onboardingState, MnemonicSu ); } -OnboardingState _onUserSelectedWord(OnboardingState onboardingState, UserSelectedWordAction action) { +OnboardingState _onUserSelectedWord( + OnboardingState onboardingState, + UserSelectedWordAction action, +) { return onboardingState.copyWith( - userSelectedIndices: List.from(onboardingState.userSelectedIndices ?? [])..add(action.idx), + userSelectedIndices: List.from(onboardingState.userSelectedIndices ?? []) + ..add(action.idx), ); } diff --git a/lib/reducers/user_details_reducer.dart b/lib/reducers/user_details_reducer.dart index 07481bad..b074c636 100644 --- a/lib/reducers/user_details_reducer.dart +++ b/lib/reducers/user_details_reducer.dart @@ -1,19 +1,30 @@ +// Package imports: import 'package:redux/redux.dart'; + +// Project imports: import 'package:ribn/actions/user_details_actions.dart'; import 'package:ribn/models/asset_details.dart'; import 'package:ribn/models/user_details_state.dart'; final userDetailsReducer = combineReducers( [ - TypedReducer(_updateAssetDetails), - TypedReducer(_updateBiometricsAction), + TypedReducer( + _updateAssetDetails, + ), + TypedReducer( + _updateBiometricsAction, + ), ], ); /// Handles [UpdateAssetDetailsAction] and updates the [assetDetails] that are stored locally, associated /// with [action.assetCode]. -UserDetailsState _updateAssetDetails(UserDetailsState userDetails, UpdateAssetDetailsAction action) { - final AssetDetails? currAssetDetails = userDetails.assetDetails[action.assetCode]; +UserDetailsState _updateAssetDetails( + UserDetailsState userDetails, + UpdateAssetDetailsAction action, +) { + final AssetDetails? currAssetDetails = + userDetails.assetDetails[action.assetCode]; return userDetails.copyWith( assetDetails: { ...userDetails.assetDetails, @@ -27,7 +38,10 @@ UserDetailsState _updateAssetDetails(UserDetailsState userDetails, UpdateAssetDe } /// Handles [UpdateBiometricsAction] and updates [isBiometricsEnabled] that is stored locally -UserDetailsState _updateBiometricsAction(UserDetailsState userDetails, UpdateBiometricsAction action) { +UserDetailsState _updateBiometricsAction( + UserDetailsState userDetails, + UpdateBiometricsAction action, +) { return userDetails.copyWith( isBiometricsEnabled: action.isBiometricsEnabled, ); diff --git a/lib/redux.dart b/lib/redux.dart index 2e2f4427..a595732d 100644 --- a/lib/redux.dart +++ b/lib/redux.dart @@ -1,7 +1,14 @@ +// Dart imports: import 'dart:async'; import 'dart:convert'; + +// Flutter imports: import 'package:flutter/foundation.dart'; + +// Package imports: import 'package:redux/redux.dart'; + +// Project imports: import 'package:ribn/middlewares/app_middleware.dart'; import 'package:ribn/models/app_state.dart'; import 'package:ribn/platform/platform.dart'; diff --git a/lib/repositories/keychain_repository.dart b/lib/repositories/keychain_repository.dart index 4fa1dd24..37545f1e 100644 --- a/lib/repositories/keychain_repository.dart +++ b/lib/repositories/keychain_repository.dart @@ -1,8 +1,13 @@ // ignore_for_file: implementation_imports + +// Dart imports: import 'dart:typed_data'; +// Package imports: import 'package:bip_topl/bip_topl.dart'; import 'package:brambldart/brambldart.dart'; + +// Project imports: import 'package:ribn/constants/rules.dart'; import 'package:ribn/models/ribn_address.dart'; @@ -21,8 +26,13 @@ class KeychainRepository { int addr = Rules.defaultAddressIndex, required int networkId, }) { - final Bip32KeyPair keyPair = hdWallet.deriveLastThreeLayers(account: account, change: change, address: addr); - final ToplAddress toplAddress = hdWallet.toBaseAddress(spend: keyPair.publicKey!, networkId: networkId); + final Bip32KeyPair keyPair = hdWallet.deriveLastThreeLayers( + account: account, + change: change, + address: addr, + ); + final ToplAddress toplAddress = + hdWallet.toBaseAddress(spend: keyPair.publicKey!, networkId: networkId); final String keyPath = getKeyPath(purpose, coinType, account, change, addr); final RibnAddress newAddress = RibnAddress( toplAddress: toplAddress, @@ -36,13 +46,27 @@ class KeychainRepository { } /// Constructs the key path, given the indices for [purpose], [coinType], [account], [change], and [address]. - String getKeyPath(int purpose, int coinType, int account, int change, int address) { + String getKeyPath( + int purpose, + int coinType, + int account, + int change, + int address, + ) { String keyPath = 'm/'; - keyPath += isHardened(purpose) ? "${purpose - Rules.hardenedOffset}'/" : '$purpose/'; - keyPath += isHardened(coinType) ? "${coinType - Rules.hardenedOffset}'/" : '$coinType/'; - keyPath += isHardened(account) ? "${account - Rules.hardenedOffset}'/" : '$account/'; - keyPath += isHardened(change) ? "${change - Rules.hardenedOffset}'/" : '$change/'; - keyPath += isHardened(address) ? "${address - Rules.hardenedOffset}'" : '$address'; + keyPath += isHardened(purpose) + ? "${purpose - Rules.hardenedOffset}'/" + : '$purpose/'; + keyPath += isHardened(coinType) + ? "${coinType - Rules.hardenedOffset}'/" + : '$coinType/'; + keyPath += isHardened(account) + ? "${account - Rules.hardenedOffset}'/" + : '$account/'; + keyPath += + isHardened(change) ? "${change - Rules.hardenedOffset}'/" : '$change/'; + keyPath += + isHardened(address) ? "${address - Rules.hardenedOffset}'" : '$address'; return keyPath; } @@ -55,7 +79,10 @@ class KeychainRepository { } /// Get corresponding crendentials of the [addresses] provided, using [hdWallet]. - List getCredentials(HdWallet hdWallet, List addresses) { + List getCredentials( + HdWallet hdWallet, + List addresses, + ) { final List creds = []; for (RibnAddress addr in addresses) { final Bip32KeyPair keyPair = hdWallet.deriveLastThreeLayers( diff --git a/lib/repositories/login_repository.dart b/lib/repositories/login_repository.dart index 4a125f64..d12448a8 100644 --- a/lib/repositories/login_repository.dart +++ b/lib/repositories/login_repository.dart @@ -1,5 +1,9 @@ // ignore_for_file: implementation_imports + +// Dart imports: import 'dart:typed_data'; + +// Package imports: import 'package:bip_topl/bip_topl.dart'; import 'package:brambldart/crypto.dart'; @@ -11,8 +15,10 @@ class LoginRepository { /// [params] must have a `keyStoreJson` and `password`. Uint8List decryptKeyStore(Map params) { const Base58Encoder base58Encoder = Base58Encoder.instance; - final KeyStore keyStore = KeyStore.fromV1Json(params['keyStoreJson'], params['password']); - final Uint8List toplExtendedPrvKeyUint8List = base58Encoder.decode(keyStore.privateKey); + final KeyStore keyStore = + KeyStore.fromV1Json(params['keyStoreJson'], params['password']); + final Uint8List toplExtendedPrvKeyUint8List = + base58Encoder.decode(keyStore.privateKey); return toplExtendedPrvKeyUint8List; } } diff --git a/lib/repositories/misc_repository.dart b/lib/repositories/misc_repository.dart index 786c8318..3a4ad4bd 100644 --- a/lib/repositories/misc_repository.dart +++ b/lib/repositories/misc_repository.dart @@ -1,3 +1,4 @@ +// Project imports: import 'package:ribn/models/internal_message.dart'; import 'package:ribn/platform/platform.dart'; diff --git a/lib/repositories/onboarding_repository.dart b/lib/repositories/onboarding_repository.dart index 36fa3d18..8fb7ab29 100644 --- a/lib/repositories/onboarding_repository.dart +++ b/lib/repositories/onboarding_repository.dart @@ -1,9 +1,14 @@ +// Dart imports: import 'dart:async'; import 'dart:math'; import 'dart:typed_data'; + +// Package imports: import 'package:bip_topl/bip_topl.dart'; import 'package:brambldart/credentials.dart'; import 'package:brambldart/crypto.dart'; + +// Project imports: import 'package:ribn/constants/rules.dart'; class OnboardingRespository { @@ -19,8 +24,10 @@ class OnboardingRespository { const Base58Encoder base58Encoder = Base58Encoder.instance; final String mnemonic = generateMnemonic(random); final Bip32KeyPair toplExtendedKeyPair = deriveToplExtendedKeys(mnemonic); - final Uint8List toplExtendedPrvKeyUint8List = Uint8List.fromList(toplExtendedKeyPair.privateKey!); - final String base58EncodedToplExtendedPrvKey = base58Encoder.encode(toplExtendedPrvKeyUint8List); + final Uint8List toplExtendedPrvKeyUint8List = + Uint8List.fromList(toplExtendedKeyPair.privateKey!); + final String base58EncodedToplExtendedPrvKey = + base58Encoder.encode(toplExtendedPrvKeyUint8List); final KeyStore keyStore = KeyStore.createNew( base58EncodedToplExtendedPrvKey, password, @@ -45,9 +52,12 @@ class OnboardingRespository { Map generateKeyStore(Map params) { const Base58Encoder base58Encoder = Base58Encoder.instance; final Random random = Random.secure(); - final Bip32KeyPair toplExtendedKeyPair = deriveToplExtendedKeys(params['mnemonic']); - final Uint8List toplExtendedPrvKeyUint8List = Uint8List.fromList(toplExtendedKeyPair.privateKey!); - final String base58EncodedToplExtendedPrvKey = base58Encoder.encode(toplExtendedPrvKeyUint8List); + final Bip32KeyPair toplExtendedKeyPair = + deriveToplExtendedKeys(params['mnemonic']); + final Uint8List toplExtendedPrvKeyUint8List = + Uint8List.fromList(toplExtendedKeyPair.privateKey!); + final String base58EncodedToplExtendedPrvKey = + base58Encoder.encode(toplExtendedPrvKeyUint8List); final KeyStore keyStore = KeyStore.createNew( base58EncodedToplExtendedPrvKey, params['password'], @@ -63,6 +73,9 @@ class OnboardingRespository { Bip32KeyPair deriveToplExtendedKeys(String mnemonic) { final HdWallet hdWallet = HdWallet.fromMnemonic(mnemonic); - return hdWallet.deriveBaseAddress(purpose: Rules.defaultPurpose, coinType: Rules.defaultCoinType); + return hdWallet.deriveBaseAddress( + purpose: Rules.defaultPurpose, + coinType: Rules.defaultCoinType, + ); } } diff --git a/lib/repositories/transaction_repository.dart b/lib/repositories/transaction_repository.dart index d66368a5..c1a4c4e2 100644 --- a/lib/repositories/transaction_repository.dart +++ b/lib/repositories/transaction_repository.dart @@ -1,12 +1,17 @@ +// Dart imports: import 'dart:typed_data'; +// Package imports: import 'package:brambldart/brambldart.dart'; -// import 'package:brambldart/src/model/box/token_value_holder.dart'; + +// Project imports: import 'package:ribn/constants/network_utils.dart'; import 'package:ribn/constants/rules.dart'; import 'package:ribn/constants/strings.dart'; import 'package:ribn/models/transfer_details.dart'; +// import 'package:brambldart/src/model/box/token_value_holder.dart'; + class TransactionRepository { const TransactionRepository(); @@ -19,8 +24,10 @@ class TransactionRepository { switch (transferDetails.transferType) { case TransferType.polyTransfer: { - final List senders = transferDetails.senders.map((e) => e.toplAddress).toList(); - final ToplAddress recipient = ToplAddress.fromBase58(transferDetails.recipient); + final List senders = + transferDetails.senders.map((e) => e.toplAddress).toList(); + final ToplAddress recipient = + ToplAddress.fromBase58(transferDetails.recipient); final PolyTransaction polyTransaction = PolyTransaction( recipients: [ SimpleRecipient( @@ -34,13 +41,17 @@ class TransactionRepository { fee: NetworkUtils.networkFees[transferDetails.networkId], data: Latin1Data.validated(transferDetails.data), ); - final Map rawTx = await client.sendRawPolyTransfer(polyTransaction: polyTransaction); + final Map rawTx = await client.sendRawPolyTransfer( + polyTransaction: polyTransaction, + ); return rawTx; } case TransferType.assetTransfer: { - final List senders = transferDetails.senders.map((e) => e.toplAddress).toList(); - final ToplAddress recipient = ToplAddress.fromBase58(transferDetails.recipient); + final List senders = + transferDetails.senders.map((e) => e.toplAddress).toList(); + final ToplAddress recipient = + ToplAddress.fromBase58(transferDetails.recipient); final AssetValue assetValue = AssetValue( transferDetails.amount, transferDetails.assetCode!, @@ -59,14 +70,17 @@ class TransactionRepository { fee: NetworkUtils.networkFees[transferDetails.networkId], data: Latin1Data.validated(transferDetails.data), ); - final Map rawTx = await client.sendRawAssetTransfer(assetTransaction: assetTransaction); + final Map rawTx = await client.sendRawAssetTransfer( + assetTransaction: assetTransaction, + ); return rawTx; } case (TransferType.mintingAsset): case (TransferType.remintingAsset): { final ToplAddress issuer = transferDetails.assetCode!.issuer; - final ToplAddress recipient = ToplAddress.fromBase58(transferDetails.recipient); + final ToplAddress recipient = + ToplAddress.fromBase58(transferDetails.recipient); final AssetValue assetValue = AssetValue( transferDetails.amount, transferDetails.assetCode!, @@ -85,7 +99,9 @@ class TransactionRepository { fee: NetworkUtils.networkFees[transferDetails.networkId], data: Latin1Data.validated(transferDetails.data), ); - final Map rawTx = await client.sendRawAssetTransfer(assetTransaction: assetTransaction); + final Map rawTx = await client.sendRawAssetTransfer( + assetTransaction: assetTransaction, + ); return rawTx; } default: @@ -107,7 +123,10 @@ class TransactionRepository { ); } - Future broadcastTx(BramblClient client, TransactionReceipt signedTx) async { + Future broadcastTx( + BramblClient client, + TransactionReceipt signedTx, + ) async { return await client.sendSignedTransaction(signedTx); } diff --git a/lib/router/root_router.dart b/lib/router/root_router.dart index b0a44bdd..095dfd20 100644 --- a/lib/router/root_router.dart +++ b/lib/router/root_router.dart @@ -1,8 +1,16 @@ +// Dart imports: +import 'dart:convert'; + +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; + +// Package imports: +import 'package:ribn_toolkit/models/transactions/ribn_activity_details_model.dart'; + +// Project imports: import 'package:ribn/constants/routes.dart'; import 'package:ribn/models/internal_message.dart'; -// import 'package:ribn/models/transaction_history_entry.dart'; import 'package:ribn/models/transfer_details.dart'; import 'package:ribn/presentation/asset_details/asset_details_page.dart'; import 'package:ribn/presentation/authorize_and_sign/connect_dapp.dart'; @@ -37,27 +45,40 @@ import 'package:ribn/presentation/transfers/mint_input_page.dart'; import 'package:ribn/presentation/transfers/tx_confirmation_page.dart'; import 'package:ribn/presentation/transfers/tx_review_page.dart'; +// import 'package:ribn/models/transaction_history_entry.dart'; + class RootRouter { Route generateRoutes(RouteSettings settings) { switch (settings.name) { case Routes.welcome: { - if (kIsWeb) return pageRouteNotAnimated(const WelcomePage(), settings); + if (kIsWeb) { + return pageRouteNotAnimated(const WelcomePage(), settings); + } return pageRoute(const WelcomePage(), settings); } case Routes.selectAction: { - if (kIsWeb) return pageRouteNotAnimated(const SelectActionPage(), settings); + if (kIsWeb) { + return pageRouteNotAnimated(const SelectActionPage(), settings); + } return pageRoute(const SelectActionPage(), settings); } case Routes.gettingStarted: { - if (kIsWeb) return pageRouteNotAnimated(const GettingStartedPage(), settings); + if (kIsWeb) { + return pageRouteNotAnimated(const GettingStartedPage(), settings); + } return pageRoute(const GettingStartedPage(), settings); } case Routes.seedPhraseInfoChecklist: { - if (kIsWeb) return pageRouteNotAnimated(const SeedPhraseInfoChecklistPage(), settings); + if (kIsWeb) { + return pageRouteNotAnimated( + const SeedPhraseInfoChecklistPage(), + settings, + ); + } return pageRoute( const SeedPhraseInfoChecklistPage(), settings, @@ -65,37 +86,66 @@ class RootRouter { } case Routes.seedPhraseInstructions: { - if (kIsWeb) return pageRouteNotAnimated(const SeedPhraseInstructionsPage(), settings); + if (kIsWeb) { + return pageRouteNotAnimated( + const SeedPhraseInstructionsPage(), + settings, + ); + } return pageRoute(const SeedPhraseInstructionsPage(), settings); } case Routes.generateSeedPhrase: { - if (kIsWeb) return pageRouteNotAnimated(const SeedPhraseGeneratingPage(), settings); + if (kIsWeb) { + return pageRouteNotAnimated( + const SeedPhraseGeneratingPage(), + settings, + ); + } return pageRoute(const SeedPhraseGeneratingPage(), settings); } case Routes.displaySeedphrase: { - if (kIsWeb) return pageRouteNotAnimated(const SeedPhraseDisplayPage(), settings); + if (kIsWeb) { + return pageRouteNotAnimated( + const SeedPhraseDisplayPage(), + settings, + ); + } return pageRoute(const SeedPhraseDisplayPage(), settings); } case Routes.seedPhraseConfirm: { - if (kIsWeb) return pageRouteNotAnimated(const SeedPhraseConfirmationPage(), settings); + if (kIsWeb) { + return pageRouteNotAnimated( + const SeedPhraseConfirmationPage(), + settings, + ); + } return pageRoute(const SeedPhraseConfirmationPage(), settings); } case Routes.walletInfoChecklist: { - if (kIsWeb) return pageRouteNotAnimated(const WalletInfoChecklistPage(), settings); + if (kIsWeb) { + return pageRouteNotAnimated( + const WalletInfoChecklistPage(), + settings, + ); + } return pageRoute(const WalletInfoChecklistPage(), settings); } case Routes.createPassword: { - if (kIsWeb) return pageRouteNotAnimated(const CreatePasswordPage(), settings); + if (kIsWeb) { + return pageRouteNotAnimated(const CreatePasswordPage(), settings); + } return pageRoute(const CreatePasswordPage(), settings); } case Routes.extensionInfo: { - if (kIsWeb) return pageRouteNotAnimated(const ExtensionInfoPage(), settings); + if (kIsWeb) { + return pageRouteNotAnimated(const ExtensionInfoPage(), settings); + } return pageRoute(const ExtensionInfoPage(), settings); } case Routes.login: @@ -105,7 +155,9 @@ class RootRouter { } case Routes.walletCreated: { - if (kIsWeb) return pageRouteNotAnimated(const WalletCreatedPage(), settings); + if (kIsWeb) { + return pageRouteNotAnimated(const WalletCreatedPage(), settings); + } return pageRoute(const WalletCreatedPage(), settings); } case Routes.home: @@ -115,17 +167,26 @@ class RootRouter { } case Routes.assetsTransferInput: { - if (kIsWeb) return pageRouteNotAnimated(const AssetTransferPage(), settings); + if (kIsWeb) { + return pageRouteNotAnimated(const AssetTransferPage(), settings); + } return pageRouteNotAnimated(const AssetTransferPage(), settings); } case Routes.restoreWallet: { - if (kIsWeb) return pageRouteNotAnimated(const RestoreWalletPage(), settings); + if (kIsWeb) { + return pageRouteNotAnimated(const RestoreWalletPage(), settings); + } return pageRoute(const RestoreWalletPage(), settings); } case Routes.restoreWithToplKey: { - if (kIsWeb) return pageRouteNotAnimated(const RestoreWithToplKeyPage(), settings); + if (kIsWeb) { + return pageRouteNotAnimated( + const RestoreWithToplKeyPage(), + settings, + ); + } return pageRoute(const RestoreWithToplKeyPage(), settings); } case Routes.restoreWalletNewPassword: @@ -148,13 +209,20 @@ class RootRouter { } case Routes.onboardingEnableBiometrics: { - if (kIsWeb) return pageRouteNotAnimated(const EnableBiometrics(), settings); + if (kIsWeb) { + return pageRouteNotAnimated(const EnableBiometrics(), settings); + } return pageRoute(const EnableBiometrics(), settings); } case Routes.enterWalletPassword: { final String keyStoreJson = settings.arguments as String; - if (kIsWeb) return pageRouteNotAnimated(EnterWalletPasswordPage(toplKeyStoreJson: keyStoreJson), settings); + if (kIsWeb) { + return pageRouteNotAnimated( + EnterWalletPasswordPage(toplKeyStoreJson: keyStoreJson), + settings, + ); + } return pageRoute( EnterWalletPasswordPage(toplKeyStoreJson: keyStoreJson), settings, @@ -162,30 +230,66 @@ class RootRouter { } case Routes.txReview: { - final TransferDetails transferDetails = settings.arguments as TransferDetails; + final TransferDetails transferDetails = + settings.arguments as TransferDetails; - if (kIsWeb) return pageRouteNotAnimated(TxReviewPage(transferDetails: transferDetails), settings); - return pageRoute(TxReviewPage(transferDetails: transferDetails), settings); + if (kIsWeb) { + return pageRouteNotAnimated( + TxReviewPage(transferDetails: transferDetails), + settings, + ); + } + return pageRoute( + TxReviewPage(transferDetails: transferDetails), + settings, + ); } case Routes.txConfirmation: { - final TransferDetails transferDetails = settings.arguments as TransferDetails; - if (kIsWeb) return pageRouteNotAnimated(TxConfirmationPage(transferDetails: transferDetails), settings); - return pageRoute(TxConfirmationPage(transferDetails: transferDetails), settings); + final TransferDetails transferDetails = + settings.arguments as TransferDetails; + if (kIsWeb) { + return pageRouteNotAnimated( + TxConfirmationPage(transferDetails: transferDetails), + settings, + ); + } + return pageRoute( + TxConfirmationPage(transferDetails: transferDetails), + settings, + ); } case Routes.mintInput: { - if (kIsWeb) return pageRouteNotAnimated(const MintInputPage(), settings); + if (kIsWeb) { + return pageRouteNotAnimated(const MintInputPage(), settings); + } return pageRoute( const MintInputPage(), settings, ); } + case Routes.txHistoryDetails: + final Map transactionDetailsMap = settings.arguments as Map; + final RibnActivityDetailsModel transactionDetails = + RibnActivityDetailsModel.fromJson( + jsonEncode(transactionDetailsMap), + ); + { + return pageRoute( + TxHistoryDetailsPage(ribnActivityDetailsModel: transactionDetails), + settings, + ); + } case Routes.assetDetails: { - final Map assetDetailsPageArgs = settings.arguments as Map; + final Map assetDetailsPageArgs = + settings.arguments as Map; if (kIsWeb) { - return pageRouteNotAnimated(AssetDetailsPage(asset: assetDetailsPageArgs['assetAmount']!), settings); + return pageRouteNotAnimated( + AssetDetailsPage(asset: assetDetailsPageArgs['assetAmount']!), + settings, + ); } return pageRoute( AssetDetailsPage(asset: assetDetailsPageArgs['assetAmount']!), @@ -196,62 +300,77 @@ class RootRouter { { return pageRoute(const TxHistoryPage(), settings); } - case Routes.txHistoryDetails: - final Map? transactionDetails = settings.arguments as Map; - { - return pageRoute( - TxHistoryDetailsPage( - transactionDetails: transactionDetails, - ), - settings, - ); - } case Routes.settings: { - if (kIsWeb) return pageRouteNotAnimated(const SettingsPage(), settings); + if (kIsWeb) { + return pageRouteNotAnimated(const SettingsPage(), settings); + } return pageRoute(const SettingsPage(), settings); } case Routes.enable: { - final InternalMessage pendingRequest = settings.arguments as InternalMessage; - if (kIsWeb) return pageRouteNotAnimated(EnablePage(pendingRequest), settings); + final InternalMessage pendingRequest = + settings.arguments as InternalMessage; + if (kIsWeb) { + return pageRouteNotAnimated(EnablePage(pendingRequest), settings); + } return pageRoute(EnablePage(pendingRequest), settings); } case Routes.externalSigning: { - final InternalMessage pendingRequest = settings.arguments as InternalMessage; - if (kIsWeb) return pageRouteNotAnimated(ExternalSigningPage(pendingRequest), settings); + final InternalMessage pendingRequest = + settings.arguments as InternalMessage; + if (kIsWeb) { + return pageRouteNotAnimated( + ExternalSigningPage(pendingRequest), + settings, + ); + } return pageRoute(ExternalSigningPage(pendingRequest), settings); } case Routes.error: { - final String errorMessage = (settings.arguments ?? 'Unknown error occurred') as String; + final String errorMessage = + (settings.arguments ?? 'Unknown error occurred') as String; return errorRoute(errorMsg: errorMessage); } case Routes.connectDApp: { - final InternalMessage pendingRequest = settings.arguments as InternalMessage; + final InternalMessage pendingRequest = + settings.arguments as InternalMessage; return pageRouteNotAnimated(ConnectDApp(pendingRequest), settings); } case Routes.reviewAndSignDApp: { - final InternalMessage pendingRequest = settings.arguments as InternalMessage; - if (kIsWeb) return pageRouteNotAnimated(ReviewAndSignDApp(pendingRequest), settings); + final InternalMessage pendingRequest = + settings.arguments as InternalMessage; + if (kIsWeb) { + return pageRouteNotAnimated( + ReviewAndSignDApp(pendingRequest), + settings, + ); + } return pageRoute(ReviewAndSignDApp(pendingRequest), settings); } case Routes.loadingDApp: { - final InternalMessage response = settings.arguments as InternalMessage; - return pageRouteNotAnimated(LoadingDApp(response: response), settings); + final InternalMessage response = + settings.arguments as InternalMessage; + return pageRouteNotAnimated( + LoadingDApp(response: response), + settings, + ); } default: return errorRoute(); } } - Route errorRoute({String errorMsg = 'Unknown error occurred'}) { + Route errorRoute({ + String errorMsg = 'Unknown error occurred', + }) { return MaterialPageRoute( builder: (context) { return Center( @@ -273,7 +392,10 @@ class RootRouter { } /// Builds a page route without an animation. - Route pageRouteNotAnimated(Widget page, RouteSettings settings) { + Route pageRouteNotAnimated( + Widget page, + RouteSettings settings, + ) { return PageRouteBuilder( settings: settings, pageBuilder: (context, animation, secondaryAnimation) => page, diff --git a/lib/utils.dart b/lib/utils.dart index c4d5484b..1ab37cbb 100644 --- a/lib/utils.dart +++ b/lib/utils.dart @@ -1,12 +1,21 @@ -import 'dart:typed_data'; +// Dart imports: import 'dart:ui'; -import 'package:barcode_widget/barcode_widget.dart'; -import 'package:brambldart/utils.dart'; +// Flutter imports: import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; + +// Package imports: +import 'package:barcode_widget/barcode_widget.dart'; +import 'package:brambldart/utils.dart'; import 'package:flutter_redux/flutter_redux.dart'; import 'package:local_auth/local_auth.dart'; +import 'package:ribn_toolkit/constants/colors.dart'; +import 'package:ribn_toolkit/constants/styles.dart'; +import 'package:ribn_toolkit/widgets/atoms/custom_copy_button.dart'; +import 'package:ribn_toolkit/widgets/molecules/custom_modal.dart'; + +// Project imports: import 'package:ribn/actions/misc_actions.dart'; import 'package:ribn/constants/assets.dart'; import 'package:ribn/constants/keys.dart'; @@ -16,10 +25,6 @@ import 'package:ribn/models/app_state.dart'; import 'package:ribn/models/ribn_address.dart'; import 'package:ribn/platform/platform.dart'; import 'package:ribn/widgets/custom_divider.dart'; -import 'package:ribn_toolkit/constants/colors.dart'; -import 'package:ribn_toolkit/constants/styles.dart'; -import 'package:ribn_toolkit/widgets/atoms/custom_copy_button.dart'; -import 'package:ribn_toolkit/widgets/molecules/custom_modal.dart'; /// Formats an address string to only dispaly its first and last 10 characters. String formatAddrString(String addr, {int charsToDisplay = 10}) { @@ -56,7 +61,8 @@ void validateRecipientAddress({ } Future isBiometricsAuthenticationSupported( - LocalAuthentication auth,) async { + LocalAuthentication auth, +) async { final bool canCheckBiometrics = await auth.canCheckBiometrics; final bool isDeviceSupported = await auth.isDeviceSupported(); @@ -64,7 +70,8 @@ Future isBiometricsAuthenticationSupported( } Future isBiometricsAuthenticationEnrolled( - LocalAuthentication auth,) async { + LocalAuthentication auth, +) async { final bool canCheckBiometrics = await auth.canCheckBiometrics; final bool isDeviceSupported = await auth.isDeviceSupported(); final List enrolledBiometrics = await auth.getAvailableBiometrics(); @@ -203,4 +210,4 @@ final emptyStateBody = RichText( TextSpan(text: Strings.emptyStateBody.substring(31, 111)), ], ), -); \ No newline at end of file +); diff --git a/lib/widgets/address_display_container.dart b/lib/widgets/address_display_container.dart index 1bcae604..45a63edc 100644 --- a/lib/widgets/address_display_container.dart +++ b/lib/widgets/address_display_container.dart @@ -1,10 +1,15 @@ +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: import 'package:flutter_redux/flutter_redux.dart'; import 'package:flutter_svg/flutter_svg.dart'; +import 'package:ribn_toolkit/widgets/atoms/rounded_copy_text_field.dart'; + +// Project imports: import 'package:ribn/constants/assets.dart'; import 'package:ribn/models/app_state.dart'; import 'package:ribn/models/ribn_address.dart'; -import 'package:ribn_toolkit/widgets/atoms/rounded_copy_text_field.dart'; class AddressDisplayContainer extends StatefulWidget { const AddressDisplayContainer({ @@ -18,14 +23,16 @@ class AddressDisplayContainer extends StatefulWidget { final double width; @override - State createState() => _AddressDisplayContainerState(); + State createState() => + _AddressDisplayContainerState(); } class _AddressDisplayContainerState extends State { @override Widget build(BuildContext context) { return StoreConnector( - converter: (store) => store.state.keychainState.currentNetwork.addresses.first, + converter: (store) => + store.state.keychainState.currentNetwork.addresses.first, builder: (context, ribnAddress) => RoundedCopyTextField( text: widget.text, icon: SvgPicture.asset(widget.icon), diff --git a/lib/widgets/asset_info.dart b/lib/widgets/asset_info.dart index 0073d035..597eb3c3 100644 --- a/lib/widgets/asset_info.dart +++ b/lib/widgets/asset_info.dart @@ -1,9 +1,16 @@ -import 'package:brambldart/model.dart'; +// Flutter imports: + +// Flutter imports: import 'package:flutter/material.dart'; -import 'package:ribn/models/asset_details.dart'; + +// Package imports: +import 'package:brambldart/model.dart'; import 'package:ribn_toolkit/constants/assets.dart'; import 'package:ribn_toolkit/constants/colors.dart'; +// Project imports: +import 'package:ribn/models/asset_details.dart'; + /// A custom display for asset information. class AssetInfo extends StatelessWidget { /// AssetCode for which information needs to be displayed. diff --git a/lib/widgets/custom_divider.dart b/lib/widgets/custom_divider.dart index 8817bb33..6e39760c 100644 --- a/lib/widgets/custom_divider.dart +++ b/lib/widgets/custom_divider.dart @@ -1,3 +1,4 @@ +// Flutter imports: import 'package:flutter/material.dart'; /// A custom divider used to separate items in a list. diff --git a/lib/widgets/custom_page_title.dart b/lib/widgets/custom_page_title.dart index 52ff0be7..de060dcf 100644 --- a/lib/widgets/custom_page_title.dart +++ b/lib/widgets/custom_page_title.dart @@ -1,4 +1,7 @@ +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: import 'package:ribn_toolkit/constants/styles.dart'; import 'package:ribn_toolkit/widgets/atoms/custom_icon_button.dart'; @@ -6,7 +9,12 @@ import 'package:ribn_toolkit/widgets/atoms/custom_icon_button.dart'; /// /// Used during the transfer flows. class CustomPageTitle extends StatelessWidget { - const CustomPageTitle({required this.title, this.top = 5, this.left = 10, Key? key}) : super(key: key); + const CustomPageTitle({ + required this.title, + this.top = 5, + this.left = 10, + Key? key, + }) : super(key: key); final String title; final double top; final double left; diff --git a/lib/widgets/fee_info.dart b/lib/widgets/fee_info.dart index f7aff945..9a418039 100644 --- a/lib/widgets/fee_info.dart +++ b/lib/widgets/fee_info.dart @@ -1,8 +1,13 @@ +// Flutter imports: import 'package:flutter/material.dart'; -import 'package:ribn/constants/strings.dart'; + +// Package imports: import 'package:ribn_toolkit/constants/colors.dart'; import 'package:ribn_toolkit/constants/styles.dart'; +// Project imports: +import 'package:ribn/constants/strings.dart'; + /// A widget that displays the fee info during the transfer flows in Ribn. class FeeInfo extends StatelessWidget { const FeeInfo({required this.fee, Key? key}) : super(key: key); @@ -20,16 +25,32 @@ class FeeInfo extends StatelessWidget { const SizedBox( height: 5, ), - Text( - '$fee POLY', - style: const TextStyle( - fontFamily: 'DM Sans', - fontSize: 11, - color: RibnColors.primary, - fontWeight: FontWeight.w600, + Row(children: [ + Text( + '$fee POLY', + style: const TextStyle( + fontFamily: 'DM Sans', + fontSize: 11, + color: RibnColors.primary, + fontWeight: FontWeight.w600, + ), ), - ), + // Spacer(), + // Text('${convertPolyToUsd(fee)} USD', + // style: const TextStyle( + // fontFamily: 'DM Sans', + // fontSize: 11, + // color: RibnColors.greyText, + // fontWeight: FontWeight.w600, + // ), + // ), + ],) ], ); } + + // Mock function + // String convertPolyToUsd(num poly){ + // return (poly * 0.15).toStringAsFixed(2); + // } } diff --git a/lib/widgets/ribn_app_bar_wapper.dart b/lib/widgets/ribn_app_bar_wapper.dart index 6a3ef5a3..cdab31e5 100644 --- a/lib/widgets/ribn_app_bar_wapper.dart +++ b/lib/widgets/ribn_app_bar_wapper.dart @@ -1,7 +1,12 @@ +// Flutter imports: import 'package:flutter/material.dart'; + +// Package imports: +import 'package:ribn_toolkit/widgets/organisms/ribn_app_bar.dart'; + +// Project imports: import 'package:ribn/constants/assets.dart'; import 'package:ribn/containers/ribn_app_bar_container.dart'; -import 'package:ribn_toolkit/widgets/organisms/ribn_app_bar.dart'; /// Builds a wrapper around the AppBar from ToplToolkit to provide ViewModel & AppBarContainer class RibnAppBarWrapper extends StatefulWidget implements PreferredSizeWidget { diff --git a/macos/.gitignore b/macos/.gitignore new file mode 100644 index 00000000..746adbb6 --- /dev/null +++ b/macos/.gitignore @@ -0,0 +1,7 @@ +# Flutter-related +**/Flutter/ephemeral/ +**/Pods/ + +# Xcode-related +**/dgph +**/xcuserdata/ diff --git a/macos/Flutter/Flutter-Debug.xcconfig b/macos/Flutter/Flutter-Debug.xcconfig new file mode 100644 index 00000000..4b81f9b2 --- /dev/null +++ b/macos/Flutter/Flutter-Debug.xcconfig @@ -0,0 +1,2 @@ +#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig" +#include "ephemeral/Flutter-Generated.xcconfig" diff --git a/macos/Flutter/Flutter-Release.xcconfig b/macos/Flutter/Flutter-Release.xcconfig new file mode 100644 index 00000000..5caa9d15 --- /dev/null +++ b/macos/Flutter/Flutter-Release.xcconfig @@ -0,0 +1,2 @@ +#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig" +#include "ephemeral/Flutter-Generated.xcconfig" diff --git a/macos/Podfile b/macos/Podfile new file mode 100644 index 00000000..fe733905 --- /dev/null +++ b/macos/Podfile @@ -0,0 +1,40 @@ +platform :osx, '10.13' + +# CocoaPods analytics sends network stats synchronously affecting flutter build latency. +ENV['COCOAPODS_DISABLE_STATS'] = 'true' + +project 'Runner', { + 'Debug' => :debug, + 'Profile' => :release, + 'Release' => :release, +} + +def flutter_root + generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'ephemeral', 'Flutter-Generated.xcconfig'), __FILE__) + unless File.exist?(generated_xcode_build_settings_path) + raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure \"flutter pub get\" is executed first" + end + + File.foreach(generated_xcode_build_settings_path) do |line| + matches = line.match(/FLUTTER_ROOT\=(.*)/) + return matches[1].strip if matches + end + raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Flutter-Generated.xcconfig, then run \"flutter pub get\"" +end + +require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root) + +flutter_macos_podfile_setup + +target 'Runner' do + use_frameworks! + use_modular_headers! + + flutter_install_all_macos_pods File.dirname(File.realpath(__FILE__)) +end + +post_install do |installer| + installer.pods_project.targets.each do |target| + flutter_additional_macos_build_settings(target) + end +end diff --git a/macos/Podfile.lock b/macos/Podfile.lock new file mode 100644 index 00000000..20df0bc4 --- /dev/null +++ b/macos/Podfile.lock @@ -0,0 +1,34 @@ +PODS: + - flutter_secure_storage_macos (6.1.1): + - FlutterMacOS + - FlutterMacOS (1.0.0) + - path_provider_macos (0.0.1): + - FlutterMacOS + - url_launcher_macos (0.0.1): + - FlutterMacOS + +DEPENDENCIES: + - flutter_secure_storage_macos (from `Flutter/ephemeral/.symlinks/plugins/flutter_secure_storage_macos/macos`) + - FlutterMacOS (from `Flutter/ephemeral`) + - path_provider_macos (from `Flutter/ephemeral/.symlinks/plugins/path_provider_macos/macos`) + - url_launcher_macos (from `Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos`) + +EXTERNAL SOURCES: + flutter_secure_storage_macos: + :path: Flutter/ephemeral/.symlinks/plugins/flutter_secure_storage_macos/macos + FlutterMacOS: + :path: Flutter/ephemeral + path_provider_macos: + :path: Flutter/ephemeral/.symlinks/plugins/path_provider_macos/macos + url_launcher_macos: + :path: Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos + +SPEC CHECKSUMS: + flutter_secure_storage_macos: 75c8cadfdba05ca007c0fa4ea0c16e5cf85e521b + FlutterMacOS: ae6af50a8ea7d6103d888583d46bd8328a7e9811 + path_provider_macos: 3c0c3b4b0d4a76d2bf989a913c2de869c5641a19 + url_launcher_macos: 597e05b8e514239626bcf4a850fcf9ef5c856ec3 + +PODFILE CHECKSUM: a884f6dd3f7494f3892ee6c81feea3a3abbf9153 + +COCOAPODS: 1.11.2 diff --git a/macos/Pods/Local Podspecs/FlutterMacOS.podspec.json b/macos/Pods/Local Podspecs/FlutterMacOS.podspec.json new file mode 100644 index 00000000..0ef94a8f --- /dev/null +++ b/macos/Pods/Local Podspecs/FlutterMacOS.podspec.json @@ -0,0 +1,20 @@ +{ + "name": "FlutterMacOS", + "version": "1.0.0", + "summary": "A UI toolkit for beautiful and fast apps.", + "homepage": "https://flutter.dev", + "license": { + "type": "BSD" + }, + "authors": { + "Flutter Dev Team": "flutter-dev@googlegroups.com" + }, + "source": { + "git": "https://github.com/flutter/engine", + "tag": "1.0.0" + }, + "platforms": { + "osx": "10.11" + }, + "vendored_frameworks": "path/to/nothing" +} diff --git a/macos/Pods/Local Podspecs/flutter_secure_storage_macos.podspec.json b/macos/Pods/Local Podspecs/flutter_secure_storage_macos.podspec.json new file mode 100644 index 00000000..6842eafd --- /dev/null +++ b/macos/Pods/Local Podspecs/flutter_secure_storage_macos.podspec.json @@ -0,0 +1,30 @@ +{ + "name": "flutter_secure_storage_macos", + "version": "6.1.1", + "summary": "Flutter Secure Storage", + "description": "Flutter Secure Storage Plugin for MacOs", + "homepage": "https://github.com/mogol/flutter_secure_storage", + "license": { + "file": "../LICENSE" + }, + "authors": { + "German Saprykin": "saprykin.h@gmail.com" + }, + "source": { + "path": "." + }, + "source_files": "Classes/**/*", + "dependencies": { + "FlutterMacOS": [ + + ] + }, + "platforms": { + "osx": "10.13" + }, + "pod_target_xcconfig": { + "DEFINES_MODULE": "YES" + }, + "swift_versions": "5.0", + "swift_version": "5.0" +} diff --git a/macos/Pods/Local Podspecs/path_provider_macos.podspec.json b/macos/Pods/Local Podspecs/path_provider_macos.podspec.json new file mode 100644 index 00000000..929e8aa0 --- /dev/null +++ b/macos/Pods/Local Podspecs/path_provider_macos.podspec.json @@ -0,0 +1,28 @@ +{ + "name": "path_provider_macos", + "version": "0.0.1", + "summary": "A macOS implementation of the path_provider plugin.", + "description": "A macOS implementation of the Flutter plugin for getting commonly used locations on the filesystem.", + "homepage": "https://github.com/flutter/plugins/tree/main/packages/path_provider/path_provider_macos", + "license": { + "type": "BSD", + "file": "../LICENSE" + }, + "authors": { + "Flutter Dev Team": "flutter-dev@googlegroups.com" + }, + "source": { + "http": "https://github.com/flutter/plugins/tree/master/packages/path_provider/path_provider_macos" + }, + "source_files": "Classes/**/*", + "dependencies": { + "FlutterMacOS": [ + + ] + }, + "platforms": { + "osx": "10.11" + }, + "swift_versions": "5.0", + "swift_version": "5.0" +} diff --git a/macos/Pods/Local Podspecs/url_launcher_macos.podspec.json b/macos/Pods/Local Podspecs/url_launcher_macos.podspec.json new file mode 100644 index 00000000..c753eb39 --- /dev/null +++ b/macos/Pods/Local Podspecs/url_launcher_macos.podspec.json @@ -0,0 +1,31 @@ +{ + "name": "url_launcher_macos", + "version": "0.0.1", + "summary": "Flutter macos plugin for launching a URL.", + "description": "A macOS implementation of the url_launcher plugin.", + "homepage": "https://github.com/flutter/plugins/tree/main/packages/url_launcher/url_launcher_macos", + "license": { + "type": "BSD", + "file": "../LICENSE" + }, + "authors": { + "Flutter Team": "flutter-dev@googlegroups.com" + }, + "source": { + "http": "https://github.com/flutter/plugins/tree/master/packages/url_launcher/url_launcher_macos" + }, + "source_files": "Classes/**/*", + "dependencies": { + "FlutterMacOS": [ + + ] + }, + "platforms": { + "osx": "10.11" + }, + "pod_target_xcconfig": { + "DEFINES_MODULE": "YES" + }, + "swift_versions": "5.0", + "swift_version": "5.0" +} diff --git a/macos/Pods/Pods.xcodeproj/project.pbxproj b/macos/Pods/Pods.xcodeproj/project.pbxproj new file mode 100644 index 00000000..e017a73d --- /dev/null +++ b/macos/Pods/Pods.xcodeproj/project.pbxproj @@ -0,0 +1,1954 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 51; + objects = { + +/* Begin PBXAggregateTarget section */ + CA272E8348BAB4CE0B0C804FB7B818C4 /* FlutterMacOS */ = { + isa = PBXAggregateTarget; + buildConfigurationList = 624022EE1C2EAB1C3CC38699E1368C5F /* Build configuration list for PBXAggregateTarget "FlutterMacOS" */; + buildPhases = ( + ); + dependencies = ( + ); + name = FlutterMacOS; + }; +/* End PBXAggregateTarget section */ + +/* Begin PBXBuildFile section */ + 04F262806ACBAEC17E1C53DE8C6A911B /* Pods-Runner-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 96BF45FBE2BC9AD7B2D7E56D01B5EE46 /* Pods-Runner-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 0CC76DC3E677E08C603B1E29BF9EE9E8 /* FlutterSecureStoragePlugin.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBC53873F1DBAAE87A8A7206AEB2F06F /* FlutterSecureStoragePlugin.swift */; }; + 138888B78B98CCDBD2E3786FCCBD42E5 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C1430F003D39D9906881A6AC724B7931 /* Cocoa.framework */; }; + 26412FA729F5E92C44C391333E96E7AE /* FlutterSecureStorage.swift in Sources */ = {isa = PBXBuildFile; fileRef = AEE81A29099CDDD07E040CC29DACFE8F /* FlutterSecureStorage.swift */; }; + 2A501D5122F0B6F8D1B3EEAE7738E032 /* PathProviderPlugin.swift in Sources */ = {isa = PBXBuildFile; fileRef = E13D362BF4FA67B41738CDC72835F196 /* PathProviderPlugin.swift */; }; + 476F0D5CB687F14D57196B1D4B02D79F /* url_launcher_macos-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A07D316059EDF7B54ADEB916FDA4A4AF /* url_launcher_macos-dummy.m */; }; + 5974AB4940BA058B6B2FBEEB3435B31E /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C1430F003D39D9906881A6AC724B7931 /* Cocoa.framework */; }; + 7828518A41264D5F059DBDE5DE296481 /* flutter_secure_storage_macos-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 8D2C458EFE45E16E14C5DBCB194FA24F /* flutter_secure_storage_macos-dummy.m */; }; + 8914129D147FB754530D7D6CC334C652 /* flutter_secure_storage_macos-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = CD02FABD655231169DC1F9C78A1641CF /* flutter_secure_storage_macos-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 96269E78C25A7C0F26292736279B5257 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C1430F003D39D9906881A6AC724B7931 /* Cocoa.framework */; }; + A5C29EF528710035ACC8A13E86E0290C /* url_launcher_macos-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 1225794C47E92C60D983A6F5F0A57F50 /* url_launcher_macos-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + A66ACEAE4C602B5ABF229330A0BF50E1 /* UrlLauncherPlugin.swift in Sources */ = {isa = PBXBuildFile; fileRef = F6A5BB74085C1FB84C07F88B5A35F2B1 /* UrlLauncherPlugin.swift */; }; + BB40CC612BA0BE9FD9E7F984CBFAA81F /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C1430F003D39D9906881A6AC724B7931 /* Cocoa.framework */; }; + C003F87BD7DAD6677F130E0C0532A941 /* path_provider_macos-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = C4F480D26E9ADEFDF3161B58562E6C79 /* path_provider_macos-dummy.m */; }; + E8276E3BE3BD7B9E8C1EDB584EF42AE8 /* path_provider_macos-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 98533D18E621C8C7FBA0BE7DE6D7388C /* path_provider_macos-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + F6CF8E00009A362AEA00905A835A4A1B /* Pods-Runner-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 7B3C932BD54DBB963102A89E0F9E3948 /* Pods-Runner-dummy.m */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 0C1D437E9855CAC8B53946DFF82A5430 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = CA272E8348BAB4CE0B0C804FB7B818C4; + remoteInfo = FlutterMacOS; + }; + 0D354CF229CB7A63DEA62B0E36013691 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = EF59DE143C0B7645A532B75D0696C617; + remoteInfo = flutter_secure_storage_macos; + }; + 52748F0177F94F9C347ECB90F84F8F92 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 2BAA54CCA2AE7F6D5A99F3FF42E3978E; + remoteInfo = path_provider_macos; + }; + AE64389F28ACB590C878F98FD8F49F61 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = CA272E8348BAB4CE0B0C804FB7B818C4; + remoteInfo = FlutterMacOS; + }; + BEA30A708C8887F730B88A64BECD4460 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = CA272E8348BAB4CE0B0C804FB7B818C4; + remoteInfo = FlutterMacOS; + }; + E405FED70DCBD03CE74B957980C29DF0 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = CA272E8348BAB4CE0B0C804FB7B818C4; + remoteInfo = FlutterMacOS; + }; + F54919626F480D91525C2E4AF4B54DDB /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 18785DB831C0FA5904C6F1414D53CB5B; + remoteInfo = url_launcher_macos; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXFileReference section */ + 004C72511474FA217D0A55140820EA11 /* path_provider_macos.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = path_provider_macos.modulemap; sourceTree = ""; }; + 02DBB06AA7275A98D79207FAB6047353 /* path_provider_macos-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "path_provider_macos-Info.plist"; sourceTree = ""; }; + 0CD1F675769093388F3E9B538367E65F /* flutter_secure_storage_macos-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "flutter_secure_storage_macos-prefix.pch"; sourceTree = ""; }; + 11AC064D24FCA6AC2037C52161A400CB /* FlutterMacOS.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = FlutterMacOS.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 1225794C47E92C60D983A6F5F0A57F50 /* url_launcher_macos-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "url_launcher_macos-umbrella.h"; sourceTree = ""; }; + 1AE394EAA6BF3BD8DDB408CDF71F80F6 /* flutter_secure_storage_macos-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "flutter_secure_storage_macos-Info.plist"; sourceTree = ""; }; + 2FDD189AEDD33DE6DF0D67677CD72864 /* flutter_secure_storage_macos.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = flutter_secure_storage_macos.release.xcconfig; sourceTree = ""; }; + 317C26B9A7CEDD34ADE8F37FAAB7AC20 /* Pods-Runner-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Runner-frameworks.sh"; sourceTree = ""; }; + 3D2E859C9735B2CD05E263A4C1A34337 /* flutter_secure_storage_macos.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; name = flutter_secure_storage_macos.podspec; path = "../../../../../../../../../../../.pub-cache/hosted/pub.dartlang.org/flutter_secure_storage_macos-2.0.1/macos/flutter_secure_storage_macos.podspec"; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 3D4DAF4A6E6E255A603E96C42A283A0A /* flutter_secure_storage_macos.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = flutter_secure_storage_macos.modulemap; sourceTree = ""; }; + 4E8A86C7916744B1E466910D58561D04 /* url_launcher_macos.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = url_launcher_macos.modulemap; sourceTree = ""; }; + 500D2C47F29B2CDC3B9FB8672CAC4470 /* path_provider_macos.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = path_provider_macos.release.xcconfig; sourceTree = ""; }; + 51825CD8F0558EFA53D9510F0E5BFA16 /* Pods-Runner-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Runner-Info.plist"; sourceTree = ""; }; + 543CD40B7B68B20C42393CB9E02BBEFB /* FlutterMacOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = FlutterMacOS.release.xcconfig; sourceTree = ""; }; + 581AEC0F2FC4877861D18E64311F5DEE /* url_launcher_macos.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = url_launcher_macos.debug.xcconfig; sourceTree = ""; }; + 669E8F25E1897672BDB80B7EB784DA24 /* Pods-Runner */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = "Pods-Runner"; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 6EC5388155A76A54784ED0EB69A192FA /* flutter_secure_storage_macos.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = flutter_secure_storage_macos.debug.xcconfig; sourceTree = ""; }; + 7B3C932BD54DBB963102A89E0F9E3948 /* Pods-Runner-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Runner-dummy.m"; sourceTree = ""; }; + 7E9C441CD6F5A490A3B5EB163986BEA8 /* FlutterMacOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = FlutterMacOS.debug.xcconfig; sourceTree = ""; }; + 7F9D5480EA05C0D5C6A693A81AB2DF33 /* path_provider_macos */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = path_provider_macos; path = path_provider_macos.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 7FA1606CBEFA0238A50F4B3FF012BE6E /* url_launcher_macos.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = url_launcher_macos.release.xcconfig; sourceTree = ""; }; + 8402B2776BE1829E1A88B9EFC5D40D1C /* url_launcher_macos-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "url_launcher_macos-prefix.pch"; sourceTree = ""; }; + 8D2C458EFE45E16E14C5DBCB194FA24F /* flutter_secure_storage_macos-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "flutter_secure_storage_macos-dummy.m"; sourceTree = ""; }; + 8D8090F9AA00F92DD0A299F87CDE33DD /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; name = LICENSE; path = "../../../../../../../../../../../.pub-cache/hosted/pub.dartlang.org/path_provider_macos-2.0.6/LICENSE"; sourceTree = ""; }; + 954809D0DB2822A9581D77BF2CB5A92E /* path_provider_macos.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = path_provider_macos.debug.xcconfig; sourceTree = ""; }; + 96BF45FBE2BC9AD7B2D7E56D01B5EE46 /* Pods-Runner-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Runner-umbrella.h"; sourceTree = ""; }; + 97C9DEFC0E1F258D20F913546F1350B3 /* path_provider_macos.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; name = path_provider_macos.podspec; path = "../../../../../../../../../../../.pub-cache/hosted/pub.dartlang.org/path_provider_macos-2.0.6/macos/path_provider_macos.podspec"; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 98533D18E621C8C7FBA0BE7DE6D7388C /* path_provider_macos-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "path_provider_macos-umbrella.h"; sourceTree = ""; }; + 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 9F79F8269DC34AC56BB3D1D9652C0D86 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Runner.profile.xcconfig"; sourceTree = ""; }; + A07D316059EDF7B54ADEB916FDA4A4AF /* url_launcher_macos-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "url_launcher_macos-dummy.m"; sourceTree = ""; }; + A0F3E400D2177625730CEDF85BE8294C /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; name = LICENSE; path = "../../../../../../../../../../../.pub-cache/hosted/pub.dartlang.org/url_launcher_macos-3.0.1/LICENSE"; sourceTree = ""; }; + A5DEDDCD541825388ACA7A6AF69E4553 /* flutter_secure_storage_macos */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = flutter_secure_storage_macos; path = flutter_secure_storage_macos.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + AEE81A29099CDDD07E040CC29DACFE8F /* FlutterSecureStorage.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FlutterSecureStorage.swift; path = "../../../../../../../../../../../../.pub-cache/hosted/pub.dartlang.org/flutter_secure_storage_macos-2.0.1/macos/Classes/FlutterSecureStorage.swift"; sourceTree = ""; }; + BFA2252866A706F062D1167ABEA67A0D /* url_launcher_macos.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; name = url_launcher_macos.podspec; path = "../../../../../../../../../../../.pub-cache/hosted/pub.dartlang.org/url_launcher_macos-3.0.1/macos/url_launcher_macos.podspec"; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + C0C9A074EEF12F27AC2F536567F9FAE1 /* url_launcher_macos */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = url_launcher_macos; path = url_launcher_macos.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + C1430F003D39D9906881A6AC724B7931 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/Cocoa.framework; sourceTree = DEVELOPER_DIR; }; + C19DBE3DA61F3C83EA2C1EA5D1E09AA4 /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; name = LICENSE; path = "../../../../../../../../../../../.pub-cache/hosted/pub.dartlang.org/flutter_secure_storage_macos-2.0.1/LICENSE"; sourceTree = ""; }; + C4F480D26E9ADEFDF3161B58562E6C79 /* path_provider_macos-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "path_provider_macos-dummy.m"; sourceTree = ""; }; + C6EA98402A94995D022D330B64B5203D /* Pods-Runner-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Runner-acknowledgements.markdown"; sourceTree = ""; }; + CD02FABD655231169DC1F9C78A1641CF /* flutter_secure_storage_macos-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "flutter_secure_storage_macos-umbrella.h"; sourceTree = ""; }; + CDAECCF4B5E08124ED410F09FD5A5DF9 /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Runner.debug.xcconfig"; sourceTree = ""; }; + CFDBB770316C515D623F4805E0D2E737 /* url_launcher_macos-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "url_launcher_macos-Info.plist"; sourceTree = ""; }; + D2FA70CA298C392CB8332ADEEDD1CE85 /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Runner.release.xcconfig"; sourceTree = ""; }; + D6B7066893A5D0EDD99AA0CEAE706858 /* path_provider_macos-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "path_provider_macos-prefix.pch"; sourceTree = ""; }; + D9F2B4CB813B4BDC4D164C6E0868930A /* Pods-Runner-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Runner-acknowledgements.plist"; sourceTree = ""; }; + DBC53873F1DBAAE87A8A7206AEB2F06F /* FlutterSecureStoragePlugin.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FlutterSecureStoragePlugin.swift; path = "../../../../../../../../../../../../.pub-cache/hosted/pub.dartlang.org/flutter_secure_storage_macos-2.0.1/macos/Classes/FlutterSecureStoragePlugin.swift"; sourceTree = ""; }; + E13D362BF4FA67B41738CDC72835F196 /* PathProviderPlugin.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PathProviderPlugin.swift; path = "../../../../../../../../../../../../.pub-cache/hosted/pub.dartlang.org/path_provider_macos-2.0.6/macos/Classes/PathProviderPlugin.swift"; sourceTree = ""; }; + F49C32B3B8CF59AB437BFD7314674868 /* Pods-Runner.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-Runner.modulemap"; sourceTree = ""; }; + F6A5BB74085C1FB84C07F88B5A35F2B1 /* UrlLauncherPlugin.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UrlLauncherPlugin.swift; path = "../../../../../../../../../../../../.pub-cache/hosted/pub.dartlang.org/url_launcher_macos-3.0.1/macos/Classes/UrlLauncherPlugin.swift"; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 41B85E246AF8F92D7A0EA583A79E2AB1 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BB40CC612BA0BE9FD9E7F984CBFAA81F /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + A6B16972686765E334D5D612BB3C6559 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 96269E78C25A7C0F26292736279B5257 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + CF4A71D84DAC9E43A203256284619022 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 138888B78B98CCDBD2E3786FCCBD42E5 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + D56A9A3A61D8ED5DE53AC7D14E890E58 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 5974AB4940BA058B6B2FBEEB3435B31E /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 03B1A03C00635C2F67586CBBE565D83C /* Pod */ = { + isa = PBXGroup; + children = ( + 11AC064D24FCA6AC2037C52161A400CB /* FlutterMacOS.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + 0F1B7B6D39D43D2875E57C723F01243C /* Support Files */ = { + isa = PBXGroup; + children = ( + 004C72511474FA217D0A55140820EA11 /* path_provider_macos.modulemap */, + C4F480D26E9ADEFDF3161B58562E6C79 /* path_provider_macos-dummy.m */, + 02DBB06AA7275A98D79207FAB6047353 /* path_provider_macos-Info.plist */, + D6B7066893A5D0EDD99AA0CEAE706858 /* path_provider_macos-prefix.pch */, + 98533D18E621C8C7FBA0BE7DE6D7388C /* path_provider_macos-umbrella.h */, + 954809D0DB2822A9581D77BF2CB5A92E /* path_provider_macos.debug.xcconfig */, + 500D2C47F29B2CDC3B9FB8672CAC4470 /* path_provider_macos.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../../../../Pods/Target Support Files/path_provider_macos"; + sourceTree = ""; + }; + 1344B92ED4B519C94CD14601A68D1DB7 /* .. */ = { + isa = PBXGroup; + children = ( + 798B8B22E3D5A6B74C3F2C5661A65EAC /* .. */, + ); + name = ..; + path = ..; + sourceTree = ""; + }; + 1FC964AF55F7558C5D8BE5C87D07F2C8 /* topl */ = { + isa = PBXGroup; + children = ( + 51FD314B2CA2136920CB2D12DA902CBF /* ribn */, + ); + name = topl; + path = topl; + sourceTree = ""; + }; + 20B44C0DE0F749BA8DF7BCB25A3032D8 /* flutter_secure_storage_macos */ = { + isa = PBXGroup; + children = ( + B0A3273B303B9B0334CA3DFD470C68EB /* .. */, + C103C5CA903A73B39A42A93A6C29C8BD /* Pod */, + 51476BFB0C6A1AFB40D0B2341B4F3AF1 /* Support Files */, + ); + name = flutter_secure_storage_macos; + path = ../Flutter/ephemeral/.symlinks/plugins/flutter_secure_storage_macos/macos; + sourceTree = ""; + }; + 22A23AC83C1F80D3FAFE29C2A1EE8133 /* url_launcher_macos */ = { + isa = PBXGroup; + children = ( + A554FED8381887BFA9F71D8D3B2BF626 /* .. */, + 755635B3FFAE7AE70E23F4F2853C47FE /* Pod */, + AFEF3CB199032E62B211CA99DAC85BEA /* Support Files */, + ); + name = url_launcher_macos; + path = ../Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos; + sourceTree = ""; + }; + 2C1CC4072A829F3C9590F4CAB5D74421 /* Products */ = { + isa = PBXGroup; + children = ( + A5DEDDCD541825388ACA7A6AF69E4553 /* flutter_secure_storage_macos */, + 7F9D5480EA05C0D5C6A693A81AB2DF33 /* path_provider_macos */, + 669E8F25E1897672BDB80B7EB784DA24 /* Pods-Runner */, + C0C9A074EEF12F27AC2F536567F9FAE1 /* url_launcher_macos */, + ); + name = Products; + sourceTree = ""; + }; + 3DFB252990DC577A8E3A81CEFCFE9E44 /* plugins */ = { + isa = PBXGroup; + children = ( + DC7F0B2F792742B7A74D33CD2AFA0978 /* path_provider_macos */, + ); + name = plugins; + path = plugins; + sourceTree = ""; + }; + 3FD3736FF43D47D5E473B63A476B74B4 /* .. */ = { + isa = PBXGroup; + children = ( + 53F32789C7208FA27D84502A6D0C5233 /* .. */, + ); + name = ..; + path = ..; + sourceTree = ""; + }; + 409446EF064384C08C82DA541F2045D0 /* .. */ = { + isa = PBXGroup; + children = ( + 4A435A11404A555F514DA91CC44EB1E3 /* .. */, + ); + name = ..; + path = ..; + sourceTree = ""; + }; + 42179AF68A8C5BF5973045A3EBD442B9 /* .. */ = { + isa = PBXGroup; + children = ( + 1344B92ED4B519C94CD14601A68D1DB7 /* .. */, + ); + name = ..; + path = ..; + sourceTree = ""; + }; + 49273D0A95EB3C19185B461B974D49E1 /* .. */ = { + isa = PBXGroup; + children = ( + 9B9A30A7C39B91B9A27A94985D0B7626 /* .. */, + ); + name = ..; + path = ..; + sourceTree = ""; + }; + 4A435A11404A555F514DA91CC44EB1E3 /* .. */ = { + isa = PBXGroup; + children = ( + 8203EB02572B76AA38493FFFF9290F19 /* .. */, + ); + name = ..; + path = ..; + sourceTree = ""; + }; + 4A89751CBC3981916061AF69A1877628 /* .. */ = { + isa = PBXGroup; + children = ( + 3FD3736FF43D47D5E473B63A476B74B4 /* .. */, + ); + name = ..; + path = ..; + sourceTree = ""; + }; + 4ADE49965336FB7794555166CB7961E1 /* .symlinks */ = { + isa = PBXGroup; + children = ( + 7343FF60424D1DF8354A2691ABE9503C /* plugins */, + ); + name = .symlinks; + path = .symlinks; + sourceTree = ""; + }; + 4BC29C8A37971260A0E1978788604B3B /* Documents */ = { + isa = PBXGroup; + children = ( + DD34EC3E1AC7850D8A90BD8BDC615252 /* programming */, + ); + name = Documents; + path = Documents; + sourceTree = ""; + }; + 4C4B9BB753315CC1658A18DA9DABEBF7 /* Classes */ = { + isa = PBXGroup; + children = ( + E13D362BF4FA67B41738CDC72835F196 /* PathProviderPlugin.swift */, + ); + name = Classes; + path = Classes; + sourceTree = ""; + }; + 4EE9C3899DD2AF593E54B2CCB6B7F7A8 /* .. */ = { + isa = PBXGroup; + children = ( + 4A89751CBC3981916061AF69A1877628 /* .. */, + ); + name = ..; + path = ..; + sourceTree = ""; + }; + 50E45A60010A0BA1C77936670C3F4B0B /* .. */ = { + isa = PBXGroup; + children = ( + 409446EF064384C08C82DA541F2045D0 /* .. */, + ); + name = ..; + path = "../../../../../../../../../../../.pub-cache/hosted/pub.dartlang.org/path_provider_macos-2.0.6/macos"; + sourceTree = ""; + }; + 51476BFB0C6A1AFB40D0B2341B4F3AF1 /* Support Files */ = { + isa = PBXGroup; + children = ( + 3D4DAF4A6E6E255A603E96C42A283A0A /* flutter_secure_storage_macos.modulemap */, + 8D2C458EFE45E16E14C5DBCB194FA24F /* flutter_secure_storage_macos-dummy.m */, + 1AE394EAA6BF3BD8DDB408CDF71F80F6 /* flutter_secure_storage_macos-Info.plist */, + 0CD1F675769093388F3E9B538367E65F /* flutter_secure_storage_macos-prefix.pch */, + CD02FABD655231169DC1F9C78A1641CF /* flutter_secure_storage_macos-umbrella.h */, + 6EC5388155A76A54784ED0EB69A192FA /* flutter_secure_storage_macos.debug.xcconfig */, + 2FDD189AEDD33DE6DF0D67677CD72864 /* flutter_secure_storage_macos.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../../../../Pods/Target Support Files/flutter_secure_storage_macos"; + sourceTree = ""; + }; + 51FD314B2CA2136920CB2D12DA902CBF /* ribn */ = { + isa = PBXGroup; + children = ( + 9BBF88474BD8D18393397A3B8AE7A2B3 /* macos */, + ); + name = ribn; + path = ribn; + sourceTree = ""; + }; + 53F32789C7208FA27D84502A6D0C5233 /* .. */ = { + isa = PBXGroup; + children = ( + 6368C6C9442CC819EEE3217308537009 /* .. */, + ); + name = ..; + path = ..; + sourceTree = ""; + }; + 5946987356D5BD335DD58618BAEC079A /* Development Pods */ = { + isa = PBXGroup; + children = ( + 20B44C0DE0F749BA8DF7BCB25A3032D8 /* flutter_secure_storage_macos */, + DFE66EE3B896F996CB65340B7C265798 /* FlutterMacOS */, + A8AD43CC3FB9A66EF734AF29AE585730 /* path_provider_macos */, + 22A23AC83C1F80D3FAFE29C2A1EE8133 /* url_launcher_macos */, + ); + name = "Development Pods"; + sourceTree = ""; + }; + 6368C6C9442CC819EEE3217308537009 /* .. */ = { + isa = PBXGroup; + children = ( + 4BC29C8A37971260A0E1978788604B3B /* Documents */, + ); + name = ..; + path = ..; + sourceTree = ""; + }; + 64C0F7FBC9637CC2715E99D482280CEC /* ephemeral */ = { + isa = PBXGroup; + children = ( + 4ADE49965336FB7794555166CB7961E1 /* .symlinks */, + ); + name = ephemeral; + path = ephemeral; + sourceTree = ""; + }; + 6AAF20F4A148AEAAA55C2104BD100729 /* Flutter */ = { + isa = PBXGroup; + children = ( + DE5D6B7B90DD6B5241C31DEA450E9DDE /* ephemeral */, + ); + name = Flutter; + path = Flutter; + sourceTree = ""; + }; + 6CC24824941CDC7C41A20DD11AB0C5FB /* url_launcher_macos */ = { + isa = PBXGroup; + children = ( + 7125A95DCDBC799C68A3858D799280AF /* macos */, + ); + name = url_launcher_macos; + path = url_launcher_macos; + sourceTree = ""; + }; + 6F19199C650DB70FA1BAEA03DC52D115 /* .symlinks */ = { + isa = PBXGroup; + children = ( + 3DFB252990DC577A8E3A81CEFCFE9E44 /* plugins */, + ); + name = .symlinks; + path = .symlinks; + sourceTree = ""; + }; + 70E56CC642948ACE1734A782B1024C57 /* .symlinks */ = { + isa = PBXGroup; + children = ( + CAC1D5B4DAD8862CEAE64BA2A64BD60B /* plugins */, + ); + name = .symlinks; + path = .symlinks; + sourceTree = ""; + }; + 7125A95DCDBC799C68A3858D799280AF /* macos */ = { + isa = PBXGroup; + children = ( + DE40EF809118DC8D48D59C6162C191BC /* Classes */, + ); + name = macos; + path = macos; + sourceTree = ""; + }; + 71B30341524BCE88D46B0E43B756C441 /* Flutter */ = { + isa = PBXGroup; + children = ( + 9B78047DEB256BCB67FB4EE1C4C6F71E /* ephemeral */, + ); + name = Flutter; + path = Flutter; + sourceTree = ""; + }; + 71E8DA8D4670EB4D31EEE39D861E9D7C /* .. */ = { + isa = PBXGroup; + children = ( + 89F0CD641906FC7DFC3834D220FEB9DF /* Documents */, + ); + name = ..; + path = ..; + sourceTree = ""; + }; + 7343FF60424D1DF8354A2691ABE9503C /* plugins */ = { + isa = PBXGroup; + children = ( + 6CC24824941CDC7C41A20DD11AB0C5FB /* url_launcher_macos */, + ); + name = plugins; + path = plugins; + sourceTree = ""; + }; + 755635B3FFAE7AE70E23F4F2853C47FE /* Pod */ = { + isa = PBXGroup; + children = ( + A0F3E400D2177625730CEDF85BE8294C /* LICENSE */, + BFA2252866A706F062D1167ABEA67A0D /* url_launcher_macos.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + 791C6E4B424AF06279F8918FA67B8ED6 /* Targets Support Files */ = { + isa = PBXGroup; + children = ( + 7B0D67477903E1EB8D6A9F9AF51BC5CC /* Pods-Runner */, + ); + name = "Targets Support Files"; + sourceTree = ""; + }; + 798B8B22E3D5A6B74C3F2C5661A65EAC /* .. */ = { + isa = PBXGroup; + children = ( + 86C440E06910061F484CA73EF61C5FC6 /* Documents */, + ); + name = ..; + path = ..; + sourceTree = ""; + }; + 7B0D67477903E1EB8D6A9F9AF51BC5CC /* Pods-Runner */ = { + isa = PBXGroup; + children = ( + F49C32B3B8CF59AB437BFD7314674868 /* Pods-Runner.modulemap */, + C6EA98402A94995D022D330B64B5203D /* Pods-Runner-acknowledgements.markdown */, + D9F2B4CB813B4BDC4D164C6E0868930A /* Pods-Runner-acknowledgements.plist */, + 7B3C932BD54DBB963102A89E0F9E3948 /* Pods-Runner-dummy.m */, + 317C26B9A7CEDD34ADE8F37FAAB7AC20 /* Pods-Runner-frameworks.sh */, + 51825CD8F0558EFA53D9510F0E5BFA16 /* Pods-Runner-Info.plist */, + 96BF45FBE2BC9AD7B2D7E56D01B5EE46 /* Pods-Runner-umbrella.h */, + CDAECCF4B5E08124ED410F09FD5A5DF9 /* Pods-Runner.debug.xcconfig */, + 9F79F8269DC34AC56BB3D1D9652C0D86 /* Pods-Runner.profile.xcconfig */, + D2FA70CA298C392CB8332ADEEDD1CE85 /* Pods-Runner.release.xcconfig */, + ); + name = "Pods-Runner"; + path = "Target Support Files/Pods-Runner"; + sourceTree = ""; + }; + 8203EB02572B76AA38493FFFF9290F19 /* .. */ = { + isa = PBXGroup; + children = ( + F1E59DF774362873462D7F7918641981 /* .. */, + ); + name = ..; + path = ..; + sourceTree = ""; + }; + 86C440E06910061F484CA73EF61C5FC6 /* Documents */ = { + isa = PBXGroup; + children = ( + DF65E27E5F1B541BA77A7EBDA8BB6399 /* programming */, + ); + name = Documents; + path = Documents; + sourceTree = ""; + }; + 89F0CD641906FC7DFC3834D220FEB9DF /* Documents */ = { + isa = PBXGroup; + children = ( + CDDE980D6CA2A82A538E06AC03663335 /* programming */, + ); + name = Documents; + path = Documents; + sourceTree = ""; + }; + 8CAB0620A844514F0AB163F5CFEF518A /* topl */ = { + isa = PBXGroup; + children = ( + F1BC03C29924EA678EDFE7D74C9EB249 /* ribn */, + ); + name = topl; + path = topl; + sourceTree = ""; + }; + 9B78047DEB256BCB67FB4EE1C4C6F71E /* ephemeral */ = { + isa = PBXGroup; + children = ( + 6F19199C650DB70FA1BAEA03DC52D115 /* .symlinks */, + ); + name = ephemeral; + path = ephemeral; + sourceTree = ""; + }; + 9B9A30A7C39B91B9A27A94985D0B7626 /* .. */ = { + isa = PBXGroup; + children = ( + 42179AF68A8C5BF5973045A3EBD442B9 /* .. */, + ); + name = ..; + path = ..; + sourceTree = ""; + }; + 9BBF88474BD8D18393397A3B8AE7A2B3 /* macos */ = { + isa = PBXGroup; + children = ( + C338903B9433CCBD78AEBEB2962C9611 /* Flutter */, + ); + name = macos; + path = macos; + sourceTree = ""; + }; + A447B7E349453E0821D04E4C42B0B396 /* Pod */ = { + isa = PBXGroup; + children = ( + 8D8090F9AA00F92DD0A299F87CDE33DD /* LICENSE */, + 97C9DEFC0E1F258D20F913546F1350B3 /* path_provider_macos.podspec */, + ); + name = Pod; + sourceTree = ""; + }; + A554FED8381887BFA9F71D8D3B2BF626 /* .. */ = { + isa = PBXGroup; + children = ( + 4EE9C3899DD2AF593E54B2CCB6B7F7A8 /* .. */, + ); + name = ..; + path = "../../../../../../../../../../../.pub-cache/hosted/pub.dartlang.org/url_launcher_macos-3.0.1/macos"; + sourceTree = ""; + }; + A8AD43CC3FB9A66EF734AF29AE585730 /* path_provider_macos */ = { + isa = PBXGroup; + children = ( + 50E45A60010A0BA1C77936670C3F4B0B /* .. */, + A447B7E349453E0821D04E4C42B0B396 /* Pod */, + 0F1B7B6D39D43D2875E57C723F01243C /* Support Files */, + ); + name = path_provider_macos; + path = ../Flutter/ephemeral/.symlinks/plugins/path_provider_macos/macos; + sourceTree = ""; + }; + AFEF3CB199032E62B211CA99DAC85BEA /* Support Files */ = { + isa = PBXGroup; + children = ( + 4E8A86C7916744B1E466910D58561D04 /* url_launcher_macos.modulemap */, + A07D316059EDF7B54ADEB916FDA4A4AF /* url_launcher_macos-dummy.m */, + CFDBB770316C515D623F4805E0D2E737 /* url_launcher_macos-Info.plist */, + 8402B2776BE1829E1A88B9EFC5D40D1C /* url_launcher_macos-prefix.pch */, + 1225794C47E92C60D983A6F5F0A57F50 /* url_launcher_macos-umbrella.h */, + 581AEC0F2FC4877861D18E64311F5DEE /* url_launcher_macos.debug.xcconfig */, + 7FA1606CBEFA0238A50F4B3FF012BE6E /* url_launcher_macos.release.xcconfig */, + ); + name = "Support Files"; + path = "../../../../../../Pods/Target Support Files/url_launcher_macos"; + sourceTree = ""; + }; + B0A3273B303B9B0334CA3DFD470C68EB /* .. */ = { + isa = PBXGroup; + children = ( + 49273D0A95EB3C19185B461B974D49E1 /* .. */, + ); + name = ..; + path = "../../../../../../../../../../../.pub-cache/hosted/pub.dartlang.org/flutter_secure_storage_macos-2.0.1/macos"; + sourceTree = ""; + }; + B9FBB2D1A0B7B58889B4F6E2EAA79A55 /* topl */ = { + isa = PBXGroup; + children = ( + DDCBC432E0F332293EEE4770EF9ED439 /* ribn */, + ); + name = topl; + path = topl; + sourceTree = ""; + }; + BA694E173184D2B8D06336A898CE36E1 /* macos */ = { + isa = PBXGroup; + children = ( + 6AAF20F4A148AEAAA55C2104BD100729 /* Flutter */, + ); + name = macos; + path = macos; + sourceTree = ""; + }; + BAA7BF99BFF3E29CBF908EABA653C8C6 /* macos */ = { + isa = PBXGroup; + children = ( + 71B30341524BCE88D46B0E43B756C441 /* Flutter */, + ); + name = macos; + path = macos; + sourceTree = ""; + }; + BB817E3531F95AD7FB887E5E6286C38F /* Classes */ = { + isa = PBXGroup; + children = ( + AEE81A29099CDDD07E040CC29DACFE8F /* FlutterSecureStorage.swift */, + DBC53873F1DBAAE87A8A7206AEB2F06F /* FlutterSecureStoragePlugin.swift */, + ); + name = Classes; + path = Classes; + sourceTree = ""; + }; + C103C5CA903A73B39A42A93A6C29C8BD /* Pod */ = { + isa = PBXGroup; + children = ( + 3D2E859C9735B2CD05E263A4C1A34337 /* flutter_secure_storage_macos.podspec */, + C19DBE3DA61F3C83EA2C1EA5D1E09AA4 /* LICENSE */, + ); + name = Pod; + sourceTree = ""; + }; + C338903B9433CCBD78AEBEB2962C9611 /* Flutter */ = { + isa = PBXGroup; + children = ( + 64C0F7FBC9637CC2715E99D482280CEC /* ephemeral */, + ); + name = Flutter; + path = Flutter; + sourceTree = ""; + }; + CAC1D5B4DAD8862CEAE64BA2A64BD60B /* plugins */ = { + isa = PBXGroup; + children = ( + DCE89FD7D18229CB0E04B291931B7466 /* flutter_secure_storage_macos */, + ); + name = plugins; + path = plugins; + sourceTree = ""; + }; + CDDE980D6CA2A82A538E06AC03663335 /* programming */ = { + isa = PBXGroup; + children = ( + B9FBB2D1A0B7B58889B4F6E2EAA79A55 /* topl */, + ); + name = programming; + path = programming; + sourceTree = ""; + }; + CE45D19F5FC50D284F776C55594A6FCD /* macos */ = { + isa = PBXGroup; + children = ( + 4C4B9BB753315CC1658A18DA9DABEBF7 /* Classes */, + ); + name = macos; + path = macos; + sourceTree = ""; + }; + CF1408CF629C7361332E53B88F7BD30C = { + isa = PBXGroup; + children = ( + 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */, + 5946987356D5BD335DD58618BAEC079A /* Development Pods */, + E0A1E60606E0BF6E2E10F1F01350DFE8 /* Frameworks */, + 2C1CC4072A829F3C9590F4CAB5D74421 /* Products */, + 791C6E4B424AF06279F8918FA67B8ED6 /* Targets Support Files */, + ); + sourceTree = ""; + }; + CFBB34A53CEAC9E33BED4C6497D94079 /* macos */ = { + isa = PBXGroup; + children = ( + BB817E3531F95AD7FB887E5E6286C38F /* Classes */, + ); + name = macos; + path = macos; + sourceTree = ""; + }; + DC7F0B2F792742B7A74D33CD2AFA0978 /* path_provider_macos */ = { + isa = PBXGroup; + children = ( + CE45D19F5FC50D284F776C55594A6FCD /* macos */, + ); + name = path_provider_macos; + path = path_provider_macos; + sourceTree = ""; + }; + DCE89FD7D18229CB0E04B291931B7466 /* flutter_secure_storage_macos */ = { + isa = PBXGroup; + children = ( + CFBB34A53CEAC9E33BED4C6497D94079 /* macos */, + ); + name = flutter_secure_storage_macos; + path = flutter_secure_storage_macos; + sourceTree = ""; + }; + DD34EC3E1AC7850D8A90BD8BDC615252 /* programming */ = { + isa = PBXGroup; + children = ( + 1FC964AF55F7558C5D8BE5C87D07F2C8 /* topl */, + ); + name = programming; + path = programming; + sourceTree = ""; + }; + DDCBC432E0F332293EEE4770EF9ED439 /* ribn */ = { + isa = PBXGroup; + children = ( + BAA7BF99BFF3E29CBF908EABA653C8C6 /* macos */, + ); + name = ribn; + path = ribn; + sourceTree = ""; + }; + DE40EF809118DC8D48D59C6162C191BC /* Classes */ = { + isa = PBXGroup; + children = ( + F6A5BB74085C1FB84C07F88B5A35F2B1 /* UrlLauncherPlugin.swift */, + ); + name = Classes; + path = Classes; + sourceTree = ""; + }; + DE5D6B7B90DD6B5241C31DEA450E9DDE /* ephemeral */ = { + isa = PBXGroup; + children = ( + 70E56CC642948ACE1734A782B1024C57 /* .symlinks */, + ); + name = ephemeral; + path = ephemeral; + sourceTree = ""; + }; + DF65E27E5F1B541BA77A7EBDA8BB6399 /* programming */ = { + isa = PBXGroup; + children = ( + 8CAB0620A844514F0AB163F5CFEF518A /* topl */, + ); + name = programming; + path = programming; + sourceTree = ""; + }; + DFE66EE3B896F996CB65340B7C265798 /* FlutterMacOS */ = { + isa = PBXGroup; + children = ( + 03B1A03C00635C2F67586CBBE565D83C /* Pod */, + E5D3C46FD450AFCACF4478571A1B8D7F /* Support Files */, + ); + name = FlutterMacOS; + path = ../Flutter/ephemeral; + sourceTree = ""; + }; + E0A1E60606E0BF6E2E10F1F01350DFE8 /* Frameworks */ = { + isa = PBXGroup; + children = ( + E2A8756CA1FF5258A0344D53C5C60EC1 /* OS X */, + ); + name = Frameworks; + sourceTree = ""; + }; + E2A8756CA1FF5258A0344D53C5C60EC1 /* OS X */ = { + isa = PBXGroup; + children = ( + C1430F003D39D9906881A6AC724B7931 /* Cocoa.framework */, + ); + name = "OS X"; + sourceTree = ""; + }; + E5D3C46FD450AFCACF4478571A1B8D7F /* Support Files */ = { + isa = PBXGroup; + children = ( + 7E9C441CD6F5A490A3B5EB163986BEA8 /* FlutterMacOS.debug.xcconfig */, + 543CD40B7B68B20C42393CB9E02BBEFB /* FlutterMacOS.release.xcconfig */, + ); + name = "Support Files"; + path = "../../Pods/Target Support Files/FlutterMacOS"; + sourceTree = ""; + }; + F1BC03C29924EA678EDFE7D74C9EB249 /* ribn */ = { + isa = PBXGroup; + children = ( + BA694E173184D2B8D06336A898CE36E1 /* macos */, + ); + name = ribn; + path = ribn; + sourceTree = ""; + }; + F1E59DF774362873462D7F7918641981 /* .. */ = { + isa = PBXGroup; + children = ( + 71E8DA8D4670EB4D31EEE39D861E9D7C /* .. */, + ); + name = ..; + path = ..; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXHeadersBuildPhase section */ + 1C5B928D76AD10390672C24B9BB5CF79 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 04F262806ACBAEC17E1C53DE8C6A911B /* Pods-Runner-umbrella.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 44203A8D9315841E5BD59667FEB52DC9 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + A5C29EF528710035ACC8A13E86E0290C /* url_launcher_macos-umbrella.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 4E11294E5A055119B49C7B0560525719 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 8914129D147FB754530D7D6CC334C652 /* flutter_secure_storage_macos-umbrella.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + D5C96F6F43468F7C3D08587B4789FE9B /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + E8276E3BE3BD7B9E8C1EDB584EF42AE8 /* path_provider_macos-umbrella.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXHeadersBuildPhase section */ + +/* Begin PBXNativeTarget section */ + 18785DB831C0FA5904C6F1414D53CB5B /* url_launcher_macos */ = { + isa = PBXNativeTarget; + buildConfigurationList = 9332D559B16603BBE95A11F1BE6EF91E /* Build configuration list for PBXNativeTarget "url_launcher_macos" */; + buildPhases = ( + 44203A8D9315841E5BD59667FEB52DC9 /* Headers */, + DD2374A354E0105102553A9BDC8DF930 /* Sources */, + D56A9A3A61D8ED5DE53AC7D14E890E58 /* Frameworks */, + F9751B47AE12BC293B9256A09BCAA242 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 018E1BC8C12C4E9188A445595B4FED5D /* PBXTargetDependency */, + ); + name = url_launcher_macos; + productName = url_launcher_macos; + productReference = C0C9A074EEF12F27AC2F536567F9FAE1 /* url_launcher_macos */; + productType = "com.apple.product-type.framework"; + }; + 2BAA54CCA2AE7F6D5A99F3FF42E3978E /* path_provider_macos */ = { + isa = PBXNativeTarget; + buildConfigurationList = A0DF7AA6F6CA6054BAD1A7E5627430D6 /* Build configuration list for PBXNativeTarget "path_provider_macos" */; + buildPhases = ( + D5C96F6F43468F7C3D08587B4789FE9B /* Headers */, + 0F9FFF79BCC6D8549F02980ADE4298AC /* Sources */, + 41B85E246AF8F92D7A0EA583A79E2AB1 /* Frameworks */, + 0AF197F3376024FCADD07886AB5C9CF4 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 1B3B0E7FECB3687581F8568DDA623975 /* PBXTargetDependency */, + ); + name = path_provider_macos; + productName = path_provider_macos; + productReference = 7F9D5480EA05C0D5C6A693A81AB2DF33 /* path_provider_macos */; + productType = "com.apple.product-type.framework"; + }; + 8B74B458B450D74B75744B87BD747314 /* Pods-Runner */ = { + isa = PBXNativeTarget; + buildConfigurationList = 17B54811FD87CAE78A421A0A833E601A /* Build configuration list for PBXNativeTarget "Pods-Runner" */; + buildPhases = ( + 1C5B928D76AD10390672C24B9BB5CF79 /* Headers */, + E2BB1314E9274F85B69970F8DB7D3061 /* Sources */, + CF4A71D84DAC9E43A203256284619022 /* Frameworks */, + A8E3C3D730C4D60B5BD56EDBC887C77A /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 465C9643EC79810494350825244CB0B5 /* PBXTargetDependency */, + 64928145E97FBC6CF7B84D69BCD409B3 /* PBXTargetDependency */, + C83A9C2745D91413AABAEC6DA46115FE /* PBXTargetDependency */, + 1A9D27133CE48E99FD2D4CA5B5B71215 /* PBXTargetDependency */, + ); + name = "Pods-Runner"; + productName = Pods_Runner; + productReference = 669E8F25E1897672BDB80B7EB784DA24 /* Pods-Runner */; + productType = "com.apple.product-type.framework"; + }; + EF59DE143C0B7645A532B75D0696C617 /* flutter_secure_storage_macos */ = { + isa = PBXNativeTarget; + buildConfigurationList = 2D2449E5B360DBB3C49F6456AA347CCF /* Build configuration list for PBXNativeTarget "flutter_secure_storage_macos" */; + buildPhases = ( + 4E11294E5A055119B49C7B0560525719 /* Headers */, + 35518E9CB911AF0E4A969058BA9624DC /* Sources */, + A6B16972686765E334D5D612BB3C6559 /* Frameworks */, + AFC83B9D547DD5A0470174DD1D00E20A /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 3E0F029273C0FF314A0CFF38D12F5C81 /* PBXTargetDependency */, + ); + name = flutter_secure_storage_macos; + productName = flutter_secure_storage_macos; + productReference = A5DEDDCD541825388ACA7A6AF69E4553 /* flutter_secure_storage_macos */; + productType = "com.apple.product-type.framework"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + BFDFE7DC352907FC980B868725387E98 /* Project object */ = { + isa = PBXProject; + attributes = { + LastSwiftUpdateCheck = 1240; + LastUpgradeCheck = 1240; + }; + buildConfigurationList = 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */; + compatibilityVersion = "Xcode 10.0"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + Base, + en, + ); + mainGroup = CF1408CF629C7361332E53B88F7BD30C; + productRefGroup = 2C1CC4072A829F3C9590F4CAB5D74421 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + EF59DE143C0B7645A532B75D0696C617 /* flutter_secure_storage_macos */, + CA272E8348BAB4CE0B0C804FB7B818C4 /* FlutterMacOS */, + 2BAA54CCA2AE7F6D5A99F3FF42E3978E /* path_provider_macos */, + 8B74B458B450D74B75744B87BD747314 /* Pods-Runner */, + 18785DB831C0FA5904C6F1414D53CB5B /* url_launcher_macos */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 0AF197F3376024FCADD07886AB5C9CF4 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + A8E3C3D730C4D60B5BD56EDBC887C77A /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + AFC83B9D547DD5A0470174DD1D00E20A /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + F9751B47AE12BC293B9256A09BCAA242 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 0F9FFF79BCC6D8549F02980ADE4298AC /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + C003F87BD7DAD6677F130E0C0532A941 /* path_provider_macos-dummy.m in Sources */, + 2A501D5122F0B6F8D1B3EEAE7738E032 /* PathProviderPlugin.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 35518E9CB911AF0E4A969058BA9624DC /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 7828518A41264D5F059DBDE5DE296481 /* flutter_secure_storage_macos-dummy.m in Sources */, + 26412FA729F5E92C44C391333E96E7AE /* FlutterSecureStorage.swift in Sources */, + 0CC76DC3E677E08C603B1E29BF9EE9E8 /* FlutterSecureStoragePlugin.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DD2374A354E0105102553A9BDC8DF930 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 476F0D5CB687F14D57196B1D4B02D79F /* url_launcher_macos-dummy.m in Sources */, + A66ACEAE4C602B5ABF229330A0BF50E1 /* UrlLauncherPlugin.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + E2BB1314E9274F85B69970F8DB7D3061 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + F6CF8E00009A362AEA00905A835A4A1B /* Pods-Runner-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 018E1BC8C12C4E9188A445595B4FED5D /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = FlutterMacOS; + target = CA272E8348BAB4CE0B0C804FB7B818C4 /* FlutterMacOS */; + targetProxy = AE64389F28ACB590C878F98FD8F49F61 /* PBXContainerItemProxy */; + }; + 1A9D27133CE48E99FD2D4CA5B5B71215 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = url_launcher_macos; + target = 18785DB831C0FA5904C6F1414D53CB5B /* url_launcher_macos */; + targetProxy = F54919626F480D91525C2E4AF4B54DDB /* PBXContainerItemProxy */; + }; + 1B3B0E7FECB3687581F8568DDA623975 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = FlutterMacOS; + target = CA272E8348BAB4CE0B0C804FB7B818C4 /* FlutterMacOS */; + targetProxy = E405FED70DCBD03CE74B957980C29DF0 /* PBXContainerItemProxy */; + }; + 3E0F029273C0FF314A0CFF38D12F5C81 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = FlutterMacOS; + target = CA272E8348BAB4CE0B0C804FB7B818C4 /* FlutterMacOS */; + targetProxy = BEA30A708C8887F730B88A64BECD4460 /* PBXContainerItemProxy */; + }; + 465C9643EC79810494350825244CB0B5 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = FlutterMacOS; + target = CA272E8348BAB4CE0B0C804FB7B818C4 /* FlutterMacOS */; + targetProxy = 0C1D437E9855CAC8B53946DFF82A5430 /* PBXContainerItemProxy */; + }; + 64928145E97FBC6CF7B84D69BCD409B3 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = flutter_secure_storage_macos; + target = EF59DE143C0B7645A532B75D0696C617 /* flutter_secure_storage_macos */; + targetProxy = 0D354CF229CB7A63DEA62B0E36013691 /* PBXContainerItemProxy */; + }; + C83A9C2745D91413AABAEC6DA46115FE /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = path_provider_macos; + target = 2BAA54CCA2AE7F6D5A99F3FF42E3978E /* path_provider_macos */; + targetProxy = 52748F0177F94F9C347ECB90F84F8F92 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin XCBuildConfiguration section */ + 01CA8CB45A96B26C663B5F95A5AE6736 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_PREPROCESSOR_DEFINITIONS = ( + "POD_CONFIGURATION_PROFILE=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.13; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + PRODUCT_NAME = "$(TARGET_NAME)"; + STRIP_INSTALLED_PRODUCT = NO; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + SWIFT_VERSION = 5.0; + SYMROOT = "${SRCROOT}/../build"; + }; + name = Profile; + }; + 21738F435DD59F5AD64D93A70F1561DA /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 2FDD189AEDD33DE6DF0D67677CD72864 /* flutter_secure_storage_macos.release.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGNING_ALLOWED = NO; + CODE_SIGNING_REQUIRED = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "\"/Users/kalervohyyppa/FlutterDev/flutter/bin/cache/artifacts/engine/darwin-x64-release\"", + "$(inherited)", + ); + GCC_PREFIX_HEADER = "Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + "@loader_path/Frameworks", + ); + MACOSX_DEPLOYMENT_TARGET = 10.13; + MODULEMAP_FILE = "Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos.modulemap"; + PRODUCT_MODULE_NAME = flutter_secure_storage_macos; + PRODUCT_NAME = flutter_secure_storage_macos; + SDKROOT = macosx; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Profile; + }; + 3090F4A125CF2639AF0D3EAE187F5C23 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 543CD40B7B68B20C42393CB9E02BBEFB /* FlutterMacOS.release.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + CLANG_ENABLE_OBJC_WEAK = NO; + COMBINE_HIDPI_IMAGES = YES; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + ); + MACOSX_DEPLOYMENT_TARGET = 10.11; + SDKROOT = macosx; + }; + name = Release; + }; + 3AAAB56EC938E385A1D004212AEEA983 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 581AEC0F2FC4877861D18E64311F5DEE /* url_launcher_macos.debug.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGNING_ALLOWED = NO; + CODE_SIGNING_REQUIRED = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "\"/Users/kalervohyyppa/FlutterDev/flutter/bin/cache/artifacts/engine/darwin-x64\"", + "$(inherited)", + ); + GCC_PREFIX_HEADER = "Target Support Files/url_launcher_macos/url_launcher_macos-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/url_launcher_macos/url_launcher_macos-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + "@loader_path/Frameworks", + ); + MACOSX_DEPLOYMENT_TARGET = 10.11; + MODULEMAP_FILE = "Target Support Files/url_launcher_macos/url_launcher_macos.modulemap"; + PRODUCT_MODULE_NAME = url_launcher_macos; + PRODUCT_NAME = url_launcher_macos; + SDKROOT = macosx; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + 4AABE67B16E0D36E94CC728786F6F488 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7E9C441CD6F5A490A3B5EB163986BEA8 /* FlutterMacOS.debug.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + CLANG_ENABLE_OBJC_WEAK = NO; + COMBINE_HIDPI_IMAGES = YES; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + ); + MACOSX_DEPLOYMENT_TARGET = 10.11; + SDKROOT = macosx; + }; + name = Debug; + }; + 55E91BA8FE92F738C6090C7774B9929E /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 500D2C47F29B2CDC3B9FB8672CAC4470 /* path_provider_macos.release.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGNING_ALLOWED = NO; + CODE_SIGNING_REQUIRED = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "\"/Users/kalervohyyppa/FlutterDev/flutter/bin/cache/artifacts/engine/darwin-x64-release\"", + "$(inherited)", + ); + GCC_PREFIX_HEADER = "Target Support Files/path_provider_macos/path_provider_macos-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/path_provider_macos/path_provider_macos-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + "@loader_path/Frameworks", + ); + MACOSX_DEPLOYMENT_TARGET = 10.11; + MODULEMAP_FILE = "Target Support Files/path_provider_macos/path_provider_macos.modulemap"; + PRODUCT_MODULE_NAME = path_provider_macos; + PRODUCT_NAME = path_provider_macos; + SDKROOT = macosx; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + 5E1B68257BEE163323DAFCCE0225FEA6 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7FA1606CBEFA0238A50F4B3FF012BE6E /* url_launcher_macos.release.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGNING_ALLOWED = NO; + CODE_SIGNING_REQUIRED = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "\"/Users/kalervohyyppa/FlutterDev/flutter/bin/cache/artifacts/engine/darwin-x64-release\"", + "$(inherited)", + ); + GCC_PREFIX_HEADER = "Target Support Files/url_launcher_macos/url_launcher_macos-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/url_launcher_macos/url_launcher_macos-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + "@loader_path/Frameworks", + ); + MACOSX_DEPLOYMENT_TARGET = 10.11; + MODULEMAP_FILE = "Target Support Files/url_launcher_macos/url_launcher_macos.modulemap"; + PRODUCT_MODULE_NAME = url_launcher_macos; + PRODUCT_NAME = url_launcher_macos; + SDKROOT = macosx; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + 7599BD86FD28576C20F8B9B6B5ACBEC9 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "POD_CONFIGURATION_DEBUG=1", + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.13; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + ONLY_ACTIVE_ARCH = YES; + PRODUCT_NAME = "$(TARGET_NAME)"; + STRIP_INSTALLED_PRODUCT = NO; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + SYMROOT = "${SRCROOT}/../build"; + }; + name = Debug; + }; + 7E8C68E9E0E89290E27FC97D7F8D30F3 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 2FDD189AEDD33DE6DF0D67677CD72864 /* flutter_secure_storage_macos.release.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGNING_ALLOWED = NO; + CODE_SIGNING_REQUIRED = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "\"/Users/kalervohyyppa/FlutterDev/flutter/bin/cache/artifacts/engine/darwin-x64-release\"", + "$(inherited)", + ); + GCC_PREFIX_HEADER = "Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + "@loader_path/Frameworks", + ); + MACOSX_DEPLOYMENT_TARGET = 10.13; + MODULEMAP_FILE = "Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos.modulemap"; + PRODUCT_MODULE_NAME = flutter_secure_storage_macos; + PRODUCT_NAME = flutter_secure_storage_macos; + SDKROOT = macosx; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + A7255637A97AA6EFDE365638417BA808 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = CDAECCF4B5E08124ED410F09FD5A5DF9 /* Pods-Runner.debug.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGNING_ALLOWED = NO; + CODE_SIGNING_REQUIRED = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "\"/Users/kalervohyyppa/FlutterDev/flutter/bin/cache/artifacts/engine/darwin-x64\"", + "$(inherited)", + ); + INFOPLIST_FILE = "Target Support Files/Pods-Runner/Pods-Runner-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + "@loader_path/Frameworks", + ); + MACH_O_TYPE = staticlib; + MACOSX_DEPLOYMENT_TARGET = 10.13; + MODULEMAP_FILE = "Target Support Files/Pods-Runner/Pods-Runner.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = macosx; + SKIP_INSTALL = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + B67254087C17E8918B69F741BAFAEBD8 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 954809D0DB2822A9581D77BF2CB5A92E /* path_provider_macos.debug.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGNING_ALLOWED = NO; + CODE_SIGNING_REQUIRED = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "\"/Users/kalervohyyppa/FlutterDev/flutter/bin/cache/artifacts/engine/darwin-x64\"", + "$(inherited)", + ); + GCC_PREFIX_HEADER = "Target Support Files/path_provider_macos/path_provider_macos-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/path_provider_macos/path_provider_macos-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + "@loader_path/Frameworks", + ); + MACOSX_DEPLOYMENT_TARGET = 10.11; + MODULEMAP_FILE = "Target Support Files/path_provider_macos/path_provider_macos.modulemap"; + PRODUCT_MODULE_NAME = path_provider_macos; + PRODUCT_NAME = path_provider_macos; + SDKROOT = macosx; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + B79D484A3FE24410FB59DB35EC00B3D7 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 6EC5388155A76A54784ED0EB69A192FA /* flutter_secure_storage_macos.debug.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGNING_ALLOWED = NO; + CODE_SIGNING_REQUIRED = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "\"/Users/kalervohyyppa/FlutterDev/flutter/bin/cache/artifacts/engine/darwin-x64\"", + "$(inherited)", + ); + GCC_PREFIX_HEADER = "Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + "@loader_path/Frameworks", + ); + MACOSX_DEPLOYMENT_TARGET = 10.13; + MODULEMAP_FILE = "Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos.modulemap"; + PRODUCT_MODULE_NAME = flutter_secure_storage_macos; + PRODUCT_NAME = flutter_secure_storage_macos; + SDKROOT = macosx; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + B8DEF8145783F51A780846D45A8E53E3 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 543CD40B7B68B20C42393CB9E02BBEFB /* FlutterMacOS.release.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + CLANG_ENABLE_OBJC_WEAK = NO; + COMBINE_HIDPI_IMAGES = YES; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + ); + MACOSX_DEPLOYMENT_TARGET = 10.11; + SDKROOT = macosx; + }; + name = Profile; + }; + BB173B8BCD8C6A8667D5805DB4D0BB3E /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 500D2C47F29B2CDC3B9FB8672CAC4470 /* path_provider_macos.release.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGNING_ALLOWED = NO; + CODE_SIGNING_REQUIRED = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "\"/Users/kalervohyyppa/FlutterDev/flutter/bin/cache/artifacts/engine/darwin-x64-release\"", + "$(inherited)", + ); + GCC_PREFIX_HEADER = "Target Support Files/path_provider_macos/path_provider_macos-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/path_provider_macos/path_provider_macos-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + "@loader_path/Frameworks", + ); + MACOSX_DEPLOYMENT_TARGET = 10.11; + MODULEMAP_FILE = "Target Support Files/path_provider_macos/path_provider_macos.modulemap"; + PRODUCT_MODULE_NAME = path_provider_macos; + PRODUCT_NAME = path_provider_macos; + SDKROOT = macosx; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Profile; + }; + C0AB89DB0533D8E2B9201FA6579824B7 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_PREPROCESSOR_DEFINITIONS = ( + "POD_CONFIGURATION_RELEASE=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.13; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + PRODUCT_NAME = "$(TARGET_NAME)"; + STRIP_INSTALLED_PRODUCT = NO; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + SWIFT_VERSION = 5.0; + SYMROOT = "${SRCROOT}/../build"; + }; + name = Release; + }; + C3F373EA23A6EA25A552038F56D2DBF7 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7FA1606CBEFA0238A50F4B3FF012BE6E /* url_launcher_macos.release.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGNING_ALLOWED = NO; + CODE_SIGNING_REQUIRED = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "\"/Users/kalervohyyppa/FlutterDev/flutter/bin/cache/artifacts/engine/darwin-x64-release\"", + "$(inherited)", + ); + GCC_PREFIX_HEADER = "Target Support Files/url_launcher_macos/url_launcher_macos-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/url_launcher_macos/url_launcher_macos-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + "@loader_path/Frameworks", + ); + MACOSX_DEPLOYMENT_TARGET = 10.11; + MODULEMAP_FILE = "Target Support Files/url_launcher_macos/url_launcher_macos.modulemap"; + PRODUCT_MODULE_NAME = url_launcher_macos; + PRODUCT_NAME = url_launcher_macos; + SDKROOT = macosx; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Profile; + }; + E7AD878EB899F13CEDD24333E5CCC2E2 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = D2FA70CA298C392CB8332ADEEDD1CE85 /* Pods-Runner.release.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGNING_ALLOWED = NO; + CODE_SIGNING_REQUIRED = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "\"/Users/kalervohyyppa/FlutterDev/flutter/bin/cache/artifacts/engine/darwin-x64-release\"", + "$(inherited)", + ); + INFOPLIST_FILE = "Target Support Files/Pods-Runner/Pods-Runner-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + "@loader_path/Frameworks", + ); + MACH_O_TYPE = staticlib; + MACOSX_DEPLOYMENT_TARGET = 10.13; + MODULEMAP_FILE = "Target Support Files/Pods-Runner/Pods-Runner.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = macosx; + SKIP_INSTALL = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + F2FA45ADD9371269C0FCAEE5E05E266E /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9F79F8269DC34AC56BB3D1D9652C0D86 /* Pods-Runner.profile.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGNING_ALLOWED = NO; + CODE_SIGNING_REQUIRED = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "\"/Users/kalervohyyppa/FlutterDev/flutter/bin/cache/artifacts/engine/darwin-x64-release\"", + "$(inherited)", + ); + INFOPLIST_FILE = "Target Support Files/Pods-Runner/Pods-Runner-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + "@loader_path/Frameworks", + ); + MACH_O_TYPE = staticlib; + MACOSX_DEPLOYMENT_TARGET = 10.13; + MODULEMAP_FILE = "Target Support Files/Pods-Runner/Pods-Runner.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = macosx; + SKIP_INSTALL = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Profile; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 17B54811FD87CAE78A421A0A833E601A /* Build configuration list for PBXNativeTarget "Pods-Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + A7255637A97AA6EFDE365638417BA808 /* Debug */, + F2FA45ADD9371269C0FCAEE5E05E266E /* Profile */, + E7AD878EB899F13CEDD24333E5CCC2E2 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 2D2449E5B360DBB3C49F6456AA347CCF /* Build configuration list for PBXNativeTarget "flutter_secure_storage_macos" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + B79D484A3FE24410FB59DB35EC00B3D7 /* Debug */, + 21738F435DD59F5AD64D93A70F1561DA /* Profile */, + 7E8C68E9E0E89290E27FC97D7F8D30F3 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 7599BD86FD28576C20F8B9B6B5ACBEC9 /* Debug */, + 01CA8CB45A96B26C663B5F95A5AE6736 /* Profile */, + C0AB89DB0533D8E2B9201FA6579824B7 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 624022EE1C2EAB1C3CC38699E1368C5F /* Build configuration list for PBXAggregateTarget "FlutterMacOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 4AABE67B16E0D36E94CC728786F6F488 /* Debug */, + B8DEF8145783F51A780846D45A8E53E3 /* Profile */, + 3090F4A125CF2639AF0D3EAE187F5C23 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 9332D559B16603BBE95A11F1BE6EF91E /* Build configuration list for PBXNativeTarget "url_launcher_macos" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 3AAAB56EC938E385A1D004212AEEA983 /* Debug */, + C3F373EA23A6EA25A552038F56D2DBF7 /* Profile */, + 5E1B68257BEE163323DAFCCE0225FEA6 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + A0DF7AA6F6CA6054BAD1A7E5627430D6 /* Build configuration list for PBXNativeTarget "path_provider_macos" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + B67254087C17E8918B69F741BAFAEBD8 /* Debug */, + BB173B8BCD8C6A8667D5805DB4D0BB3E /* Profile */, + 55E91BA8FE92F738C6090C7774B9929E /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = BFDFE7DC352907FC980B868725387E98 /* Project object */; +} diff --git a/macos/Pods/Pods.xcodeproj/xcuserdata/kalervohyyppa.xcuserdatad/xcschemes/FlutterMacOS.xcscheme b/macos/Pods/Pods.xcodeproj/xcuserdata/kalervohyyppa.xcuserdatad/xcschemes/FlutterMacOS.xcscheme new file mode 100644 index 00000000..e79d22b2 --- /dev/null +++ b/macos/Pods/Pods.xcodeproj/xcuserdata/kalervohyyppa.xcuserdatad/xcschemes/FlutterMacOS.xcscheme @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/macos/Pods/Pods.xcodeproj/xcuserdata/kalervohyyppa.xcuserdatad/xcschemes/Pods-Runner.xcscheme b/macos/Pods/Pods.xcodeproj/xcuserdata/kalervohyyppa.xcuserdatad/xcschemes/Pods-Runner.xcscheme new file mode 100644 index 00000000..2121e03c --- /dev/null +++ b/macos/Pods/Pods.xcodeproj/xcuserdata/kalervohyyppa.xcuserdatad/xcschemes/Pods-Runner.xcscheme @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/macos/Pods/Pods.xcodeproj/xcuserdata/kalervohyyppa.xcuserdatad/xcschemes/flutter_secure_storage_macos.xcscheme b/macos/Pods/Pods.xcodeproj/xcuserdata/kalervohyyppa.xcuserdatad/xcschemes/flutter_secure_storage_macos.xcscheme new file mode 100644 index 00000000..c8a1550f --- /dev/null +++ b/macos/Pods/Pods.xcodeproj/xcuserdata/kalervohyyppa.xcuserdatad/xcschemes/flutter_secure_storage_macos.xcscheme @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/macos/Pods/Pods.xcodeproj/xcuserdata/kalervohyyppa.xcuserdatad/xcschemes/path_provider_macos.xcscheme b/macos/Pods/Pods.xcodeproj/xcuserdata/kalervohyyppa.xcuserdatad/xcschemes/path_provider_macos.xcscheme new file mode 100644 index 00000000..4b8f043a --- /dev/null +++ b/macos/Pods/Pods.xcodeproj/xcuserdata/kalervohyyppa.xcuserdatad/xcschemes/path_provider_macos.xcscheme @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/macos/Pods/Pods.xcodeproj/xcuserdata/kalervohyyppa.xcuserdatad/xcschemes/url_launcher_macos.xcscheme b/macos/Pods/Pods.xcodeproj/xcuserdata/kalervohyyppa.xcuserdatad/xcschemes/url_launcher_macos.xcscheme new file mode 100644 index 00000000..6093625f --- /dev/null +++ b/macos/Pods/Pods.xcodeproj/xcuserdata/kalervohyyppa.xcuserdatad/xcschemes/url_launcher_macos.xcscheme @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/macos/Pods/Pods.xcodeproj/xcuserdata/kalervohyyppa.xcuserdatad/xcschemes/xcschememanagement.plist b/macos/Pods/Pods.xcodeproj/xcuserdata/kalervohyyppa.xcuserdatad/xcschemes/xcschememanagement.plist new file mode 100644 index 00000000..b4d48cf7 --- /dev/null +++ b/macos/Pods/Pods.xcodeproj/xcuserdata/kalervohyyppa.xcuserdatad/xcschemes/xcschememanagement.plist @@ -0,0 +1,46 @@ + + + + + SchemeUserState + + FlutterMacOS.xcscheme + + isShown + + orderHint + 2 + + Pods-Runner.xcscheme + + isShown + + orderHint + 4 + + flutter_secure_storage_macos.xcscheme + + isShown + + orderHint + 1 + + path_provider_macos.xcscheme + + isShown + + orderHint + 3 + + url_launcher_macos.xcscheme + + isShown + + orderHint + 5 + + + SuppressBuildableAutocreation + + + diff --git a/macos/Pods/Target Support Files/FlutterMacOS/FlutterMacOS.debug.xcconfig b/macos/Pods/Target Support Files/FlutterMacOS/FlutterMacOS.debug.xcconfig new file mode 100644 index 00000000..cf765c3d --- /dev/null +++ b/macos/Pods/Target Support Files/FlutterMacOS/FlutterMacOS.debug.xcconfig @@ -0,0 +1,12 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +CODE_SIGN_IDENTITY = +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/FlutterMacOS +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT} +PODS_TARGET_SRCROOT = ${PODS_ROOT}/../Flutter/ephemeral +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} +SKIP_INSTALL = YES +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/macos/Pods/Target Support Files/FlutterMacOS/FlutterMacOS.release.xcconfig b/macos/Pods/Target Support Files/FlutterMacOS/FlutterMacOS.release.xcconfig new file mode 100644 index 00000000..cf765c3d --- /dev/null +++ b/macos/Pods/Target Support Files/FlutterMacOS/FlutterMacOS.release.xcconfig @@ -0,0 +1,12 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +CODE_SIGN_IDENTITY = +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/FlutterMacOS +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT} +PODS_TARGET_SRCROOT = ${PODS_ROOT}/../Flutter/ephemeral +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} +SKIP_INSTALL = YES +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-Info.plist b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-Info.plist new file mode 100644 index 00000000..2243fe6e --- /dev/null +++ b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-acknowledgements.markdown b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-acknowledgements.markdown new file mode 100644 index 00000000..cf7dc0b2 --- /dev/null +++ b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-acknowledgements.markdown @@ -0,0 +1,93 @@ +# Acknowledgements +This application makes use of the following third party libraries: + +## flutter_secure_storage_macos + +BSD 3-Clause License + +Copyright 2017 German Saprykin +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +## path_provider_macos + +Copyright 2013 The Flutter Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google Inc. nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +## url_launcher_macos + +Copyright 2013 The Flutter Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google Inc. nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Generated by CocoaPods - https://cocoapods.org diff --git a/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-acknowledgements.plist b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-acknowledgements.plist new file mode 100644 index 00000000..7722137e --- /dev/null +++ b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-acknowledgements.plist @@ -0,0 +1,135 @@ + + + + + PreferenceSpecifiers + + + FooterText + This application makes use of the following third party libraries: + Title + Acknowledgements + Type + PSGroupSpecifier + + + FooterText + BSD 3-Clause License + +Copyright 2017 German Saprykin +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + Title + flutter_secure_storage_macos + Type + PSGroupSpecifier + + + FooterText + Copyright 2013 The Flutter Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google Inc. nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + License + BSD + Title + path_provider_macos + Type + PSGroupSpecifier + + + FooterText + Copyright 2013 The Flutter Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google Inc. nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + License + BSD + Title + url_launcher_macos + Type + PSGroupSpecifier + + + FooterText + Generated by CocoaPods - https://cocoapods.org + Title + + Type + PSGroupSpecifier + + + StringsTable + Acknowledgements + Title + Acknowledgements + + diff --git a/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-dummy.m b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-dummy.m new file mode 100644 index 00000000..0b73bc1c --- /dev/null +++ b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_Pods_Runner : NSObject +@end +@implementation PodsDummy_Pods_Runner +@end diff --git a/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-frameworks-Debug-input-files.xcfilelist b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-frameworks-Debug-input-files.xcfilelist new file mode 100644 index 00000000..70afd7e1 --- /dev/null +++ b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-frameworks-Debug-input-files.xcfilelist @@ -0,0 +1,4 @@ +${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh +${BUILT_PRODUCTS_DIR}/flutter_secure_storage_macos/flutter_secure_storage_macos.framework +${BUILT_PRODUCTS_DIR}/path_provider_macos/path_provider_macos.framework +${BUILT_PRODUCTS_DIR}/url_launcher_macos/url_launcher_macos.framework \ No newline at end of file diff --git a/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-frameworks-Debug-output-files.xcfilelist b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-frameworks-Debug-output-files.xcfilelist new file mode 100644 index 00000000..aaa5e101 --- /dev/null +++ b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-frameworks-Debug-output-files.xcfilelist @@ -0,0 +1,3 @@ +${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/flutter_secure_storage_macos.framework +${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/path_provider_macos.framework +${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/url_launcher_macos.framework \ No newline at end of file diff --git a/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-frameworks-Profile-input-files.xcfilelist b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-frameworks-Profile-input-files.xcfilelist new file mode 100644 index 00000000..70afd7e1 --- /dev/null +++ b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-frameworks-Profile-input-files.xcfilelist @@ -0,0 +1,4 @@ +${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh +${BUILT_PRODUCTS_DIR}/flutter_secure_storage_macos/flutter_secure_storage_macos.framework +${BUILT_PRODUCTS_DIR}/path_provider_macos/path_provider_macos.framework +${BUILT_PRODUCTS_DIR}/url_launcher_macos/url_launcher_macos.framework \ No newline at end of file diff --git a/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-frameworks-Profile-output-files.xcfilelist b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-frameworks-Profile-output-files.xcfilelist new file mode 100644 index 00000000..aaa5e101 --- /dev/null +++ b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-frameworks-Profile-output-files.xcfilelist @@ -0,0 +1,3 @@ +${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/flutter_secure_storage_macos.framework +${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/path_provider_macos.framework +${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/url_launcher_macos.framework \ No newline at end of file diff --git a/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-frameworks-Release-input-files.xcfilelist b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-frameworks-Release-input-files.xcfilelist new file mode 100644 index 00000000..70afd7e1 --- /dev/null +++ b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-frameworks-Release-input-files.xcfilelist @@ -0,0 +1,4 @@ +${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh +${BUILT_PRODUCTS_DIR}/flutter_secure_storage_macos/flutter_secure_storage_macos.framework +${BUILT_PRODUCTS_DIR}/path_provider_macos/path_provider_macos.framework +${BUILT_PRODUCTS_DIR}/url_launcher_macos/url_launcher_macos.framework \ No newline at end of file diff --git a/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-frameworks-Release-output-files.xcfilelist b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-frameworks-Release-output-files.xcfilelist new file mode 100644 index 00000000..aaa5e101 --- /dev/null +++ b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-frameworks-Release-output-files.xcfilelist @@ -0,0 +1,3 @@ +${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/flutter_secure_storage_macos.framework +${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/path_provider_macos.framework +${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/url_launcher_macos.framework \ No newline at end of file diff --git a/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh new file mode 100755 index 00000000..4d179299 --- /dev/null +++ b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh @@ -0,0 +1,195 @@ +#!/bin/sh +set -e +set -u +set -o pipefail + +function on_error { + echo "$(realpath -mq "${0}"):$1: error: Unexpected failure" +} +trap 'on_error $LINENO' ERR + +if [ -z ${FRAMEWORKS_FOLDER_PATH+x} ]; then + # If FRAMEWORKS_FOLDER_PATH is not set, then there's nowhere for us to copy + # frameworks to, so exit 0 (signalling the script phase was successful). + exit 0 +fi + +echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" +mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + +COCOAPODS_PARALLEL_CODE_SIGN="${COCOAPODS_PARALLEL_CODE_SIGN:-false}" +SWIFT_STDLIB_PATH="${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" +BCSYMBOLMAP_DIR="BCSymbolMaps" + + +# This protects against multiple targets copying the same framework dependency at the same time. The solution +# was originally proposed here: https://lists.samba.org/archive/rsync/2008-February/020158.html +RSYNC_PROTECT_TMP_FILES=(--filter "P .*.??????") + +# Copies and strips a vendored framework +install_framework() +{ + if [ -r "${BUILT_PRODUCTS_DIR}/$1" ]; then + local source="${BUILT_PRODUCTS_DIR}/$1" + elif [ -r "${BUILT_PRODUCTS_DIR}/$(basename "$1")" ]; then + local source="${BUILT_PRODUCTS_DIR}/$(basename "$1")" + elif [ -r "$1" ]; then + local source="$1" + fi + + local destination="${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + + if [ -L "${source}" ]; then + echo "Symlinked..." + source="$(readlink "${source}")" + fi + + if [ -d "${source}/${BCSYMBOLMAP_DIR}" ]; then + # Locate and install any .bcsymbolmaps if present, and remove them from the .framework before the framework is copied + find "${source}/${BCSYMBOLMAP_DIR}" -name "*.bcsymbolmap"|while read f; do + echo "Installing $f" + install_bcsymbolmap "$f" "$destination" + rm "$f" + done + rmdir "${source}/${BCSYMBOLMAP_DIR}" + fi + + # Use filter instead of exclude so missing patterns don't throw errors. + echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --links --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${destination}\"" + rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --links --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${destination}" + + local basename + basename="$(basename -s .framework "$1")" + binary="${destination}/${basename}.framework/${basename}" + + if ! [ -r "$binary" ]; then + binary="${destination}/${basename}" + elif [ -L "${binary}" ]; then + echo "Destination binary is symlinked..." + dirname="$(dirname "${binary}")" + binary="${dirname}/$(readlink "${binary}")" + fi + + # Strip invalid architectures so "fat" simulator / device frameworks work on device + if [[ "$(file "$binary")" == *"dynamically linked shared library"* ]]; then + strip_invalid_archs "$binary" + fi + + # Resign the code if required by the build settings to avoid unstable apps + code_sign_if_enabled "${destination}/$(basename "$1")" + + # Embed linked Swift runtime libraries. No longer necessary as of Xcode 7. + if [ "${XCODE_VERSION_MAJOR}" -lt 7 ]; then + local swift_runtime_libs + swift_runtime_libs=$(xcrun otool -LX "$binary" | grep --color=never @rpath/libswift | sed -E s/@rpath\\/\(.+dylib\).*/\\1/g | uniq -u) + for lib in $swift_runtime_libs; do + echo "rsync -auv \"${SWIFT_STDLIB_PATH}/${lib}\" \"${destination}\"" + rsync -auv "${SWIFT_STDLIB_PATH}/${lib}" "${destination}" + code_sign_if_enabled "${destination}/${lib}" + done + fi +} +# Copies and strips a vendored dSYM +install_dsym() { + local source="$1" + warn_missing_arch=${2:-true} + if [ -r "$source" ]; then + # Copy the dSYM into the targets temp dir. + echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${DERIVED_FILES_DIR}\"" + rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${DERIVED_FILES_DIR}" + + local basename + basename="$(basename -s .dSYM "$source")" + binary_name="$(ls "$source/Contents/Resources/DWARF")" + binary="${DERIVED_FILES_DIR}/${basename}.dSYM/Contents/Resources/DWARF/${binary_name}" + + # Strip invalid architectures from the dSYM. + if [[ "$(file "$binary")" == *"Mach-O "*"dSYM companion"* ]]; then + strip_invalid_archs "$binary" "$warn_missing_arch" + fi + if [[ $STRIP_BINARY_RETVAL == 0 ]]; then + # Move the stripped file into its final destination. + echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --links --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${DERIVED_FILES_DIR}/${basename}.framework.dSYM\" \"${DWARF_DSYM_FOLDER_PATH}\"" + rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --links --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${DERIVED_FILES_DIR}/${basename}.dSYM" "${DWARF_DSYM_FOLDER_PATH}" + else + # The dSYM was not stripped at all, in this case touch a fake folder so the input/output paths from Xcode do not reexecute this script because the file is missing. + mkdir -p "${DWARF_DSYM_FOLDER_PATH}" + touch "${DWARF_DSYM_FOLDER_PATH}/${basename}.dSYM" + fi + fi +} + +# Used as a return value for each invocation of `strip_invalid_archs` function. +STRIP_BINARY_RETVAL=0 + +# Strip invalid architectures +strip_invalid_archs() { + binary="$1" + warn_missing_arch=${2:-true} + # Get architectures for current target binary + binary_archs="$(lipo -info "$binary" | rev | cut -d ':' -f1 | awk '{$1=$1;print}' | rev)" + # Intersect them with the architectures we are building for + intersected_archs="$(echo ${ARCHS[@]} ${binary_archs[@]} | tr ' ' '\n' | sort | uniq -d)" + # If there are no archs supported by this binary then warn the user + if [[ -z "$intersected_archs" ]]; then + if [[ "$warn_missing_arch" == "true" ]]; then + echo "warning: [CP] Vendored binary '$binary' contains architectures ($binary_archs) none of which match the current build architectures ($ARCHS)." + fi + STRIP_BINARY_RETVAL=1 + return + fi + stripped="" + for arch in $binary_archs; do + if ! [[ "${ARCHS}" == *"$arch"* ]]; then + # Strip non-valid architectures in-place + lipo -remove "$arch" -output "$binary" "$binary" + stripped="$stripped $arch" + fi + done + if [[ "$stripped" ]]; then + echo "Stripped $binary of architectures:$stripped" + fi + STRIP_BINARY_RETVAL=0 +} + +# Copies the bcsymbolmap files of a vendored framework +install_bcsymbolmap() { + local bcsymbolmap_path="$1" + local destination="${BUILT_PRODUCTS_DIR}" + echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${bcsymbolmap_path}" "${destination}"" + rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${bcsymbolmap_path}" "${destination}" +} + +# Signs a framework with the provided identity +code_sign_if_enabled() { + if [ -n "${EXPANDED_CODE_SIGN_IDENTITY:-}" -a "${CODE_SIGNING_REQUIRED:-}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then + # Use the current code_sign_identity + echo "Code Signing $1 with Identity ${EXPANDED_CODE_SIGN_IDENTITY_NAME}" + local code_sign_cmd="/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS:-} --preserve-metadata=identifier,entitlements '$1'" + + if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then + code_sign_cmd="$code_sign_cmd &" + fi + echo "$code_sign_cmd" + eval "$code_sign_cmd" + fi +} + +if [[ "$CONFIGURATION" == "Debug" ]]; then + install_framework "${BUILT_PRODUCTS_DIR}/flutter_secure_storage_macos/flutter_secure_storage_macos.framework" + install_framework "${BUILT_PRODUCTS_DIR}/path_provider_macos/path_provider_macos.framework" + install_framework "${BUILT_PRODUCTS_DIR}/url_launcher_macos/url_launcher_macos.framework" +fi +if [[ "$CONFIGURATION" == "Profile" ]]; then + install_framework "${BUILT_PRODUCTS_DIR}/flutter_secure_storage_macos/flutter_secure_storage_macos.framework" + install_framework "${BUILT_PRODUCTS_DIR}/path_provider_macos/path_provider_macos.framework" + install_framework "${BUILT_PRODUCTS_DIR}/url_launcher_macos/url_launcher_macos.framework" +fi +if [[ "$CONFIGURATION" == "Release" ]]; then + install_framework "${BUILT_PRODUCTS_DIR}/flutter_secure_storage_macos/flutter_secure_storage_macos.framework" + install_framework "${BUILT_PRODUCTS_DIR}/path_provider_macos/path_provider_macos.framework" + install_framework "${BUILT_PRODUCTS_DIR}/url_launcher_macos/url_launcher_macos.framework" +fi +if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then + wait +fi diff --git a/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-umbrella.h b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-umbrella.h new file mode 100644 index 00000000..80f15ff2 --- /dev/null +++ b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner-umbrella.h @@ -0,0 +1,16 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + + +FOUNDATION_EXPORT double Pods_RunnerVersionNumber; +FOUNDATION_EXPORT const unsigned char Pods_RunnerVersionString[]; + diff --git a/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig new file mode 100644 index 00000000..f5cbcfe3 --- /dev/null +++ b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig @@ -0,0 +1,15 @@ +ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/flutter_secure_storage_macos" "${PODS_CONFIGURATION_BUILD_DIR}/path_provider_macos" "${PODS_CONFIGURATION_BUILD_DIR}/url_launcher_macos" +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/flutter_secure_storage_macos/flutter_secure_storage_macos.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/path_provider_macos/path_provider_macos.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/url_launcher_macos/url_launcher_macos.framework/Headers" +LD_RUNPATH_SEARCH_PATHS = $(inherited) /usr/lib/swift '@executable_path/../Frameworks' '@loader_path/Frameworks' "${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" +LIBRARY_SEARCH_PATHS = $(inherited) "${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift +OTHER_LDFLAGS = $(inherited) -framework "flutter_secure_storage_macos" -framework "path_provider_macos" -framework "url_launcher_macos" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_PODFILE_DIR_PATH = ${SRCROOT}/. +PODS_ROOT = ${SRCROOT}/Pods +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner.modulemap b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner.modulemap new file mode 100644 index 00000000..d2cf6f64 --- /dev/null +++ b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner.modulemap @@ -0,0 +1,6 @@ +framework module Pods_Runner { + umbrella header "Pods-Runner-umbrella.h" + + export * + module * { export * } +} diff --git a/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig new file mode 100644 index 00000000..f5cbcfe3 --- /dev/null +++ b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig @@ -0,0 +1,15 @@ +ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/flutter_secure_storage_macos" "${PODS_CONFIGURATION_BUILD_DIR}/path_provider_macos" "${PODS_CONFIGURATION_BUILD_DIR}/url_launcher_macos" +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/flutter_secure_storage_macos/flutter_secure_storage_macos.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/path_provider_macos/path_provider_macos.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/url_launcher_macos/url_launcher_macos.framework/Headers" +LD_RUNPATH_SEARCH_PATHS = $(inherited) /usr/lib/swift '@executable_path/../Frameworks' '@loader_path/Frameworks' "${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" +LIBRARY_SEARCH_PATHS = $(inherited) "${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift +OTHER_LDFLAGS = $(inherited) -framework "flutter_secure_storage_macos" -framework "path_provider_macos" -framework "url_launcher_macos" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_PODFILE_DIR_PATH = ${SRCROOT}/. +PODS_ROOT = ${SRCROOT}/Pods +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig new file mode 100644 index 00000000..f5cbcfe3 --- /dev/null +++ b/macos/Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig @@ -0,0 +1,15 @@ +ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/flutter_secure_storage_macos" "${PODS_CONFIGURATION_BUILD_DIR}/path_provider_macos" "${PODS_CONFIGURATION_BUILD_DIR}/url_launcher_macos" +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/flutter_secure_storage_macos/flutter_secure_storage_macos.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/path_provider_macos/path_provider_macos.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/url_launcher_macos/url_launcher_macos.framework/Headers" +LD_RUNPATH_SEARCH_PATHS = $(inherited) /usr/lib/swift '@executable_path/../Frameworks' '@loader_path/Frameworks' "${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" +LIBRARY_SEARCH_PATHS = $(inherited) "${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift +OTHER_LDFLAGS = $(inherited) -framework "flutter_secure_storage_macos" -framework "path_provider_macos" -framework "url_launcher_macos" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_PODFILE_DIR_PATH = ${SRCROOT}/. +PODS_ROOT = ${SRCROOT}/Pods +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/macos/Pods/Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos-Info.plist b/macos/Pods/Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos-Info.plist new file mode 100644 index 00000000..40211fac --- /dev/null +++ b/macos/Pods/Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 6.1.1 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/macos/Pods/Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos-dummy.m b/macos/Pods/Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos-dummy.m new file mode 100644 index 00000000..7e27d23f --- /dev/null +++ b/macos/Pods/Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_flutter_secure_storage_macos : NSObject +@end +@implementation PodsDummy_flutter_secure_storage_macos +@end diff --git a/macos/Pods/Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos-prefix.pch b/macos/Pods/Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos-prefix.pch new file mode 100644 index 00000000..082f8af2 --- /dev/null +++ b/macos/Pods/Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos-prefix.pch @@ -0,0 +1,12 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + diff --git a/macos/Pods/Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos-umbrella.h b/macos/Pods/Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos-umbrella.h new file mode 100644 index 00000000..d63ad01a --- /dev/null +++ b/macos/Pods/Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos-umbrella.h @@ -0,0 +1,16 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + + +FOUNDATION_EXPORT double flutter_secure_storage_macosVersionNumber; +FOUNDATION_EXPORT const unsigned char flutter_secure_storage_macosVersionString[]; + diff --git a/macos/Pods/Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos.debug.xcconfig b/macos/Pods/Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos.debug.xcconfig new file mode 100644 index 00000000..7dcd16db --- /dev/null +++ b/macos/Pods/Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos.debug.xcconfig @@ -0,0 +1,15 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +CODE_SIGN_IDENTITY = +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/flutter_secure_storage_macos +DEFINES_MODULE = YES +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +LIBRARY_SEARCH_PATHS = $(inherited) "${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT} +PODS_TARGET_SRCROOT = ${PODS_ROOT}/../Flutter/ephemeral/.symlinks/plugins/flutter_secure_storage_macos/macos +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} +SKIP_INSTALL = YES +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/macos/Pods/Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos.modulemap b/macos/Pods/Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos.modulemap new file mode 100644 index 00000000..4fd72ce1 --- /dev/null +++ b/macos/Pods/Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos.modulemap @@ -0,0 +1,6 @@ +framework module flutter_secure_storage_macos { + umbrella header "flutter_secure_storage_macos-umbrella.h" + + export * + module * { export * } +} diff --git a/macos/Pods/Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos.release.xcconfig b/macos/Pods/Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos.release.xcconfig new file mode 100644 index 00000000..7dcd16db --- /dev/null +++ b/macos/Pods/Target Support Files/flutter_secure_storage_macos/flutter_secure_storage_macos.release.xcconfig @@ -0,0 +1,15 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +CODE_SIGN_IDENTITY = +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/flutter_secure_storage_macos +DEFINES_MODULE = YES +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +LIBRARY_SEARCH_PATHS = $(inherited) "${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT} +PODS_TARGET_SRCROOT = ${PODS_ROOT}/../Flutter/ephemeral/.symlinks/plugins/flutter_secure_storage_macos/macos +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} +SKIP_INSTALL = YES +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/macos/Pods/Target Support Files/path_provider_macos/path_provider_macos-Info.plist b/macos/Pods/Target Support Files/path_provider_macos/path_provider_macos-Info.plist new file mode 100644 index 00000000..cba25855 --- /dev/null +++ b/macos/Pods/Target Support Files/path_provider_macos/path_provider_macos-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 0.0.1 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/macos/Pods/Target Support Files/path_provider_macos/path_provider_macos-dummy.m b/macos/Pods/Target Support Files/path_provider_macos/path_provider_macos-dummy.m new file mode 100644 index 00000000..acff6c57 --- /dev/null +++ b/macos/Pods/Target Support Files/path_provider_macos/path_provider_macos-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_path_provider_macos : NSObject +@end +@implementation PodsDummy_path_provider_macos +@end diff --git a/macos/Pods/Target Support Files/path_provider_macos/path_provider_macos-prefix.pch b/macos/Pods/Target Support Files/path_provider_macos/path_provider_macos-prefix.pch new file mode 100644 index 00000000..082f8af2 --- /dev/null +++ b/macos/Pods/Target Support Files/path_provider_macos/path_provider_macos-prefix.pch @@ -0,0 +1,12 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + diff --git a/macos/Pods/Target Support Files/path_provider_macos/path_provider_macos-umbrella.h b/macos/Pods/Target Support Files/path_provider_macos/path_provider_macos-umbrella.h new file mode 100644 index 00000000..3feb6fa2 --- /dev/null +++ b/macos/Pods/Target Support Files/path_provider_macos/path_provider_macos-umbrella.h @@ -0,0 +1,16 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + + +FOUNDATION_EXPORT double path_provider_macosVersionNumber; +FOUNDATION_EXPORT const unsigned char path_provider_macosVersionString[]; + diff --git a/macos/Pods/Target Support Files/path_provider_macos/path_provider_macos.debug.xcconfig b/macos/Pods/Target Support Files/path_provider_macos/path_provider_macos.debug.xcconfig new file mode 100644 index 00000000..82d9e9eb --- /dev/null +++ b/macos/Pods/Target Support Files/path_provider_macos/path_provider_macos.debug.xcconfig @@ -0,0 +1,14 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +CODE_SIGN_IDENTITY = +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/path_provider_macos +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +LIBRARY_SEARCH_PATHS = $(inherited) "${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT} +PODS_TARGET_SRCROOT = ${PODS_ROOT}/../Flutter/ephemeral/.symlinks/plugins/path_provider_macos/macos +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} +SKIP_INSTALL = YES +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/macos/Pods/Target Support Files/path_provider_macos/path_provider_macos.modulemap b/macos/Pods/Target Support Files/path_provider_macos/path_provider_macos.modulemap new file mode 100644 index 00000000..07ffe2b6 --- /dev/null +++ b/macos/Pods/Target Support Files/path_provider_macos/path_provider_macos.modulemap @@ -0,0 +1,6 @@ +framework module path_provider_macos { + umbrella header "path_provider_macos-umbrella.h" + + export * + module * { export * } +} diff --git a/macos/Pods/Target Support Files/path_provider_macos/path_provider_macos.release.xcconfig b/macos/Pods/Target Support Files/path_provider_macos/path_provider_macos.release.xcconfig new file mode 100644 index 00000000..82d9e9eb --- /dev/null +++ b/macos/Pods/Target Support Files/path_provider_macos/path_provider_macos.release.xcconfig @@ -0,0 +1,14 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +CODE_SIGN_IDENTITY = +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/path_provider_macos +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +LIBRARY_SEARCH_PATHS = $(inherited) "${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT} +PODS_TARGET_SRCROOT = ${PODS_ROOT}/../Flutter/ephemeral/.symlinks/plugins/path_provider_macos/macos +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} +SKIP_INSTALL = YES +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/macos/Pods/Target Support Files/url_launcher_macos/url_launcher_macos-Info.plist b/macos/Pods/Target Support Files/url_launcher_macos/url_launcher_macos-Info.plist new file mode 100644 index 00000000..cba25855 --- /dev/null +++ b/macos/Pods/Target Support Files/url_launcher_macos/url_launcher_macos-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 0.0.1 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/macos/Pods/Target Support Files/url_launcher_macos/url_launcher_macos-dummy.m b/macos/Pods/Target Support Files/url_launcher_macos/url_launcher_macos-dummy.m new file mode 100644 index 00000000..40b90f09 --- /dev/null +++ b/macos/Pods/Target Support Files/url_launcher_macos/url_launcher_macos-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_url_launcher_macos : NSObject +@end +@implementation PodsDummy_url_launcher_macos +@end diff --git a/macos/Pods/Target Support Files/url_launcher_macos/url_launcher_macos-prefix.pch b/macos/Pods/Target Support Files/url_launcher_macos/url_launcher_macos-prefix.pch new file mode 100644 index 00000000..082f8af2 --- /dev/null +++ b/macos/Pods/Target Support Files/url_launcher_macos/url_launcher_macos-prefix.pch @@ -0,0 +1,12 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + diff --git a/macos/Pods/Target Support Files/url_launcher_macos/url_launcher_macos-umbrella.h b/macos/Pods/Target Support Files/url_launcher_macos/url_launcher_macos-umbrella.h new file mode 100644 index 00000000..bcacf5a9 --- /dev/null +++ b/macos/Pods/Target Support Files/url_launcher_macos/url_launcher_macos-umbrella.h @@ -0,0 +1,16 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + + +FOUNDATION_EXPORT double url_launcher_macosVersionNumber; +FOUNDATION_EXPORT const unsigned char url_launcher_macosVersionString[]; + diff --git a/macos/Pods/Target Support Files/url_launcher_macos/url_launcher_macos.debug.xcconfig b/macos/Pods/Target Support Files/url_launcher_macos/url_launcher_macos.debug.xcconfig new file mode 100644 index 00000000..ff82eaff --- /dev/null +++ b/macos/Pods/Target Support Files/url_launcher_macos/url_launcher_macos.debug.xcconfig @@ -0,0 +1,15 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +CODE_SIGN_IDENTITY = +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/url_launcher_macos +DEFINES_MODULE = YES +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +LIBRARY_SEARCH_PATHS = $(inherited) "${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT} +PODS_TARGET_SRCROOT = ${PODS_ROOT}/../Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} +SKIP_INSTALL = YES +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/macos/Pods/Target Support Files/url_launcher_macos/url_launcher_macos.modulemap b/macos/Pods/Target Support Files/url_launcher_macos/url_launcher_macos.modulemap new file mode 100644 index 00000000..63175458 --- /dev/null +++ b/macos/Pods/Target Support Files/url_launcher_macos/url_launcher_macos.modulemap @@ -0,0 +1,6 @@ +framework module url_launcher_macos { + umbrella header "url_launcher_macos-umbrella.h" + + export * + module * { export * } +} diff --git a/macos/Pods/Target Support Files/url_launcher_macos/url_launcher_macos.release.xcconfig b/macos/Pods/Target Support Files/url_launcher_macos/url_launcher_macos.release.xcconfig new file mode 100644 index 00000000..ff82eaff --- /dev/null +++ b/macos/Pods/Target Support Files/url_launcher_macos/url_launcher_macos.release.xcconfig @@ -0,0 +1,15 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +CODE_SIGN_IDENTITY = +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/url_launcher_macos +DEFINES_MODULE = YES +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +LIBRARY_SEARCH_PATHS = $(inherited) "${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT} +PODS_TARGET_SRCROOT = ${PODS_ROOT}/../Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} +SKIP_INSTALL = YES +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/macos/Runner.xcodeproj/project.pbxproj b/macos/Runner.xcodeproj/project.pbxproj new file mode 100644 index 00000000..bc3e79eb --- /dev/null +++ b/macos/Runner.xcodeproj/project.pbxproj @@ -0,0 +1,631 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 51; + objects = { + +/* Begin PBXAggregateTarget section */ + 33CC111A2044C6BA0003C045 /* Flutter Assemble */ = { + isa = PBXAggregateTarget; + buildConfigurationList = 33CC111B2044C6BA0003C045 /* Build configuration list for PBXAggregateTarget "Flutter Assemble" */; + buildPhases = ( + 33CC111E2044C6BF0003C045 /* ShellScript */, + ); + dependencies = ( + ); + name = "Flutter Assemble"; + productName = FLX; + }; +/* End PBXAggregateTarget section */ + +/* Begin PBXBuildFile section */ + 335BBD1B22A9A15E00E9071D /* GeneratedPluginRegistrant.swift in Sources */ = {isa = PBXBuildFile; fileRef = 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */; }; + 33CC10F12044A3C60003C045 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC10F02044A3C60003C045 /* AppDelegate.swift */; }; + 33CC10F32044A3C60003C045 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F22044A3C60003C045 /* Assets.xcassets */; }; + 33CC10F62044A3C60003C045 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F42044A3C60003C045 /* MainMenu.xib */; }; + 33CC11132044BFA00003C045 /* MainFlutterWindow.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */; }; + 9E91011A7785414DA681F391 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E3CCF3E45C9200824CFDC7C8 /* Pods_Runner.framework */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 33CC111F2044C79F0003C045 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 33CC10E52044A3C60003C045 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 33CC111A2044C6BA0003C045; + remoteInfo = FLX; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 33CC110E2044A8840003C045 /* Bundle Framework */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + ); + name = "Bundle Framework"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 2F589A8836A4B35F08D8E292 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = ""; }; + 333000ED22D3DE5D00554162 /* Warnings.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Warnings.xcconfig; sourceTree = ""; }; + 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GeneratedPluginRegistrant.swift; sourceTree = ""; }; + 33CC10ED2044A3C60003C045 /* ribn.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = ribn.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 33CC10F02044A3C60003C045 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + 33CC10F22044A3C60003C045 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Assets.xcassets; path = Runner/Assets.xcassets; sourceTree = ""; }; + 33CC10F52044A3C60003C045 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = ""; }; + 33CC10F72044A3C60003C045 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Info.plist; path = Runner/Info.plist; sourceTree = ""; }; + 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MainFlutterWindow.swift; sourceTree = ""; }; + 33CEB47222A05771004F2AC0 /* Flutter-Debug.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "Flutter-Debug.xcconfig"; sourceTree = ""; }; + 33CEB47422A05771004F2AC0 /* Flutter-Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "Flutter-Release.xcconfig"; sourceTree = ""; }; + 33CEB47722A0578A004F2AC0 /* Flutter-Generated.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = "Flutter-Generated.xcconfig"; path = "ephemeral/Flutter-Generated.xcconfig"; sourceTree = ""; }; + 33E51913231747F40026EE4D /* DebugProfile.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = DebugProfile.entitlements; sourceTree = ""; }; + 33E51914231749380026EE4D /* Release.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = Release.entitlements; sourceTree = ""; }; + 33E5194F232828860026EE4D /* AppInfo.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = AppInfo.xcconfig; sourceTree = ""; }; + 472D0EF9B5AA6DB5AA4917AC /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = ""; }; + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Release.xcconfig; sourceTree = ""; }; + 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Debug.xcconfig; sourceTree = ""; }; + E3CCF3E45C9200824CFDC7C8 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + EBA1CDC88BCDFC586828817F /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 33CC10EA2044A3C60003C045 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 9E91011A7785414DA681F391 /* Pods_Runner.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 1B1893DE9973F14F70962A0B /* Pods */ = { + isa = PBXGroup; + children = ( + EBA1CDC88BCDFC586828817F /* Pods-Runner.debug.xcconfig */, + 472D0EF9B5AA6DB5AA4917AC /* Pods-Runner.release.xcconfig */, + 2F589A8836A4B35F08D8E292 /* Pods-Runner.profile.xcconfig */, + ); + path = Pods; + sourceTree = ""; + }; + 33BA886A226E78AF003329D5 /* Configs */ = { + isa = PBXGroup; + children = ( + 33E5194F232828860026EE4D /* AppInfo.xcconfig */, + 9740EEB21CF90195004384FC /* Debug.xcconfig */, + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, + 333000ED22D3DE5D00554162 /* Warnings.xcconfig */, + ); + path = Configs; + sourceTree = ""; + }; + 33CC10E42044A3C60003C045 = { + isa = PBXGroup; + children = ( + 33FAB671232836740065AC1E /* Runner */, + 33CEB47122A05771004F2AC0 /* Flutter */, + 33CC10EE2044A3C60003C045 /* Products */, + D73912EC22F37F3D000D13A0 /* Frameworks */, + 1B1893DE9973F14F70962A0B /* Pods */, + ); + sourceTree = ""; + }; + 33CC10EE2044A3C60003C045 /* Products */ = { + isa = PBXGroup; + children = ( + 33CC10ED2044A3C60003C045 /* ribn.app */, + ); + name = Products; + sourceTree = ""; + }; + 33CC11242044D66E0003C045 /* Resources */ = { + isa = PBXGroup; + children = ( + 33CC10F22044A3C60003C045 /* Assets.xcassets */, + 33CC10F42044A3C60003C045 /* MainMenu.xib */, + 33CC10F72044A3C60003C045 /* Info.plist */, + ); + name = Resources; + path = ..; + sourceTree = ""; + }; + 33CEB47122A05771004F2AC0 /* Flutter */ = { + isa = PBXGroup; + children = ( + 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */, + 33CEB47222A05771004F2AC0 /* Flutter-Debug.xcconfig */, + 33CEB47422A05771004F2AC0 /* Flutter-Release.xcconfig */, + 33CEB47722A0578A004F2AC0 /* Flutter-Generated.xcconfig */, + ); + path = Flutter; + sourceTree = ""; + }; + 33FAB671232836740065AC1E /* Runner */ = { + isa = PBXGroup; + children = ( + 33CC10F02044A3C60003C045 /* AppDelegate.swift */, + 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */, + 33E51913231747F40026EE4D /* DebugProfile.entitlements */, + 33E51914231749380026EE4D /* Release.entitlements */, + 33CC11242044D66E0003C045 /* Resources */, + 33BA886A226E78AF003329D5 /* Configs */, + ); + path = Runner; + sourceTree = ""; + }; + D73912EC22F37F3D000D13A0 /* Frameworks */ = { + isa = PBXGroup; + children = ( + E3CCF3E45C9200824CFDC7C8 /* Pods_Runner.framework */, + ); + name = Frameworks; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 33CC10EC2044A3C60003C045 /* Runner */ = { + isa = PBXNativeTarget; + buildConfigurationList = 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */; + buildPhases = ( + 0D9183B4C4320914BB88C5FE /* [CP] Check Pods Manifest.lock */, + 33CC10E92044A3C60003C045 /* Sources */, + 33CC10EA2044A3C60003C045 /* Frameworks */, + 33CC10EB2044A3C60003C045 /* Resources */, + 33CC110E2044A8840003C045 /* Bundle Framework */, + 3399D490228B24CF009A79C7 /* ShellScript */, + B8B5981410A923067E02256B /* [CP] Embed Pods Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 33CC11202044C79F0003C045 /* PBXTargetDependency */, + ); + name = Runner; + productName = Runner; + productReference = 33CC10ED2044A3C60003C045 /* ribn.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 33CC10E52044A3C60003C045 /* Project object */ = { + isa = PBXProject; + attributes = { + LastSwiftUpdateCheck = 0920; + LastUpgradeCheck = 1300; + ORGANIZATIONNAME = ""; + TargetAttributes = { + 33CC10EC2044A3C60003C045 = { + CreatedOnToolsVersion = 9.2; + LastSwiftMigration = 1100; + ProvisioningStyle = Automatic; + SystemCapabilities = { + com.apple.Sandbox = { + enabled = 1; + }; + }; + }; + 33CC111A2044C6BA0003C045 = { + CreatedOnToolsVersion = 9.2; + ProvisioningStyle = Manual; + }; + }; + }; + buildConfigurationList = 33CC10E82044A3C60003C045 /* Build configuration list for PBXProject "Runner" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 33CC10E42044A3C60003C045; + productRefGroup = 33CC10EE2044A3C60003C045 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 33CC10EC2044A3C60003C045 /* Runner */, + 33CC111A2044C6BA0003C045 /* Flutter Assemble */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 33CC10EB2044A3C60003C045 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 33CC10F32044A3C60003C045 /* Assets.xcassets in Resources */, + 33CC10F62044A3C60003C045 /* MainMenu.xib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 0D9183B4C4320914BB88C5FE /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + 3399D490228B24CF009A79C7 /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + ); + outputFileListPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "echo \"$PRODUCT_NAME.app\" > \"$PROJECT_DIR\"/Flutter/ephemeral/.app_filename && \"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh embed\n"; + }; + 33CC111E2044C6BF0003C045 /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + Flutter/ephemeral/FlutterInputs.xcfilelist, + ); + inputPaths = ( + Flutter/ephemeral/tripwire, + ); + outputFileListPaths = ( + Flutter/ephemeral/FlutterOutputs.xcfilelist, + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh && touch Flutter/ephemeral/tripwire"; + }; + B8B5981410A923067E02256B /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist", + ); + name = "[CP] Embed Pods Frameworks"; + outputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 33CC10E92044A3C60003C045 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 33CC11132044BFA00003C045 /* MainFlutterWindow.swift in Sources */, + 33CC10F12044A3C60003C045 /* AppDelegate.swift in Sources */, + 335BBD1B22A9A15E00E9071D /* GeneratedPluginRegistrant.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 33CC11202044C79F0003C045 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 33CC111A2044C6BA0003C045 /* Flutter Assemble */; + targetProxy = 33CC111F2044C79F0003C045 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + 33CC10F42044A3C60003C045 /* MainMenu.xib */ = { + isa = PBXVariantGroup; + children = ( + 33CC10F52044A3C60003C045 /* Base */, + ); + name = MainMenu.xib; + path = Runner; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 338D0CE9231458BD00FA5F75 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CODE_SIGN_IDENTITY = "-"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.13; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = macosx; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + }; + name = Profile; + }; + 338D0CEA231458BD00FA5F75 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 33E5194F232828860026EE4D /* AppInfo.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Runner/DebugProfile.entitlements; + CODE_SIGN_STYLE = Automatic; + COMBINE_HIDPI_IMAGES = YES; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + ); + PROVISIONING_PROFILE_SPECIFIER = ""; + SWIFT_VERSION = 5.0; + }; + name = Profile; + }; + 338D0CEB231458BD00FA5F75 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_STYLE = Manual; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Profile; + }; + 33CC10F92044A3C60003C045 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CODE_SIGN_IDENTITY = "-"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.13; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = macosx; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + }; + name = Debug; + }; + 33CC10FA2044A3C60003C045 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CODE_SIGN_IDENTITY = "-"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.13; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = macosx; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + }; + name = Release; + }; + 33CC10FC2044A3C60003C045 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 33E5194F232828860026EE4D /* AppInfo.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Runner/DebugProfile.entitlements; + CODE_SIGN_STYLE = Automatic; + COMBINE_HIDPI_IMAGES = YES; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + ); + PROVISIONING_PROFILE_SPECIFIER = ""; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + }; + name = Debug; + }; + 33CC10FD2044A3C60003C045 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 33E5194F232828860026EE4D /* AppInfo.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Runner/Release.entitlements; + CODE_SIGN_STYLE = Automatic; + COMBINE_HIDPI_IMAGES = YES; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + ); + PROVISIONING_PROFILE_SPECIFIER = ""; + SWIFT_VERSION = 5.0; + }; + name = Release; + }; + 33CC111C2044C6BA0003C045 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_STYLE = Manual; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Debug; + }; + 33CC111D2044C6BA0003C045 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_STYLE = Automatic; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 33CC10E82044A3C60003C045 /* Build configuration list for PBXProject "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 33CC10F92044A3C60003C045 /* Debug */, + 33CC10FA2044A3C60003C045 /* Release */, + 338D0CE9231458BD00FA5F75 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 33CC10FC2044A3C60003C045 /* Debug */, + 33CC10FD2044A3C60003C045 /* Release */, + 338D0CEA231458BD00FA5F75 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 33CC111B2044C6BA0003C045 /* Build configuration list for PBXAggregateTarget "Flutter Assemble" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 33CC111C2044C6BA0003C045 /* Debug */, + 33CC111D2044C6BA0003C045 /* Release */, + 338D0CEB231458BD00FA5F75 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 33CC10E52044A3C60003C045 /* Project object */; +} diff --git a/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 00000000..18d98100 --- /dev/null +++ b/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme new file mode 100644 index 00000000..7226c22a --- /dev/null +++ b/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -0,0 +1,87 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/macos/Runner.xcodeproj/xcuserdata/kalervohyyppa.xcuserdatad/xcschemes/xcschememanagement.plist b/macos/Runner.xcodeproj/xcuserdata/kalervohyyppa.xcuserdatad/xcschemes/xcschememanagement.plist new file mode 100644 index 00000000..ad15686c --- /dev/null +++ b/macos/Runner.xcodeproj/xcuserdata/kalervohyyppa.xcuserdatad/xcschemes/xcschememanagement.plist @@ -0,0 +1,19 @@ + + + + + SchemeUserState + + Flutter Assemble.xcscheme_^#shared#^_ + + orderHint + 6 + + Runner.xcscheme_^#shared#^_ + + orderHint + 0 + + + + diff --git a/macos/Runner.xcworkspace/contents.xcworkspacedata b/macos/Runner.xcworkspace/contents.xcworkspacedata new file mode 100644 index 00000000..21a3cc14 --- /dev/null +++ b/macos/Runner.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,10 @@ + + + + + + + diff --git a/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 00000000..18d98100 --- /dev/null +++ b/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/macos/Runner.xcworkspace/xcuserdata/kalervohyyppa.xcuserdatad/UserInterfaceState.xcuserstate b/macos/Runner.xcworkspace/xcuserdata/kalervohyyppa.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 00000000..3f89ea9f Binary files /dev/null and b/macos/Runner.xcworkspace/xcuserdata/kalervohyyppa.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/macos/Runner/AppDelegate.swift b/macos/Runner/AppDelegate.swift new file mode 100644 index 00000000..d53ef643 --- /dev/null +++ b/macos/Runner/AppDelegate.swift @@ -0,0 +1,9 @@ +import Cocoa +import FlutterMacOS + +@NSApplicationMain +class AppDelegate: FlutterAppDelegate { + override func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool { + return true + } +} diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 00000000..a2ec33f1 --- /dev/null +++ b/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,68 @@ +{ + "images" : [ + { + "size" : "16x16", + "idiom" : "mac", + "filename" : "app_icon_16.png", + "scale" : "1x" + }, + { + "size" : "16x16", + "idiom" : "mac", + "filename" : "app_icon_32.png", + "scale" : "2x" + }, + { + "size" : "32x32", + "idiom" : "mac", + "filename" : "app_icon_32.png", + "scale" : "1x" + }, + { + "size" : "32x32", + "idiom" : "mac", + "filename" : "app_icon_64.png", + "scale" : "2x" + }, + { + "size" : "128x128", + "idiom" : "mac", + "filename" : "app_icon_128.png", + "scale" : "1x" + }, + { + "size" : "128x128", + "idiom" : "mac", + "filename" : "app_icon_256.png", + "scale" : "2x" + }, + { + "size" : "256x256", + "idiom" : "mac", + "filename" : "app_icon_256.png", + "scale" : "1x" + }, + { + "size" : "256x256", + "idiom" : "mac", + "filename" : "app_icon_512.png", + "scale" : "2x" + }, + { + "size" : "512x512", + "idiom" : "mac", + "filename" : "app_icon_512.png", + "scale" : "1x" + }, + { + "size" : "512x512", + "idiom" : "mac", + "filename" : "app_icon_1024.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png new file mode 100644 index 00000000..82b6f9d9 Binary files /dev/null and b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png new file mode 100644 index 00000000..13b35eba Binary files /dev/null and b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png new file mode 100644 index 00000000..0a3f5fa4 Binary files /dev/null and b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png new file mode 100644 index 00000000..bdb57226 Binary files /dev/null and b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png new file mode 100644 index 00000000..f083318e Binary files /dev/null and b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png new file mode 100644 index 00000000..326c0e72 Binary files /dev/null and b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png new file mode 100644 index 00000000..2f1632cf Binary files /dev/null and b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png differ diff --git a/macos/Runner/Base.lproj/MainMenu.xib b/macos/Runner/Base.lproj/MainMenu.xib new file mode 100644 index 00000000..80e867a4 --- /dev/null +++ b/macos/Runner/Base.lproj/MainMenu.xib @@ -0,0 +1,343 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/macos/Runner/Configs/AppInfo.xcconfig b/macos/Runner/Configs/AppInfo.xcconfig new file mode 100644 index 00000000..6a04a091 --- /dev/null +++ b/macos/Runner/Configs/AppInfo.xcconfig @@ -0,0 +1,14 @@ +// Application-level settings for the Runner target. +// +// This may be replaced with something auto-generated from metadata (e.g., pubspec.yaml) in the +// future. If not, the values below would default to using the project name when this becomes a +// 'flutter create' template. + +// The application's name. By default this is also the title of the Flutter window. +PRODUCT_NAME = ribn + +// The application's bundle identifier +PRODUCT_BUNDLE_IDENTIFIER = co.topl.ribn + +// The copyright displayed in application information +PRODUCT_COPYRIGHT = Copyright © 2023 co.topl. All rights reserved. diff --git a/macos/Runner/Configs/Debug.xcconfig b/macos/Runner/Configs/Debug.xcconfig new file mode 100644 index 00000000..36b0fd94 --- /dev/null +++ b/macos/Runner/Configs/Debug.xcconfig @@ -0,0 +1,2 @@ +#include "../../Flutter/Flutter-Debug.xcconfig" +#include "Warnings.xcconfig" diff --git a/macos/Runner/Configs/Release.xcconfig b/macos/Runner/Configs/Release.xcconfig new file mode 100644 index 00000000..dff4f495 --- /dev/null +++ b/macos/Runner/Configs/Release.xcconfig @@ -0,0 +1,2 @@ +#include "../../Flutter/Flutter-Release.xcconfig" +#include "Warnings.xcconfig" diff --git a/macos/Runner/Configs/Warnings.xcconfig b/macos/Runner/Configs/Warnings.xcconfig new file mode 100644 index 00000000..42bcbf47 --- /dev/null +++ b/macos/Runner/Configs/Warnings.xcconfig @@ -0,0 +1,13 @@ +WARNING_CFLAGS = -Wall -Wconditional-uninitialized -Wnullable-to-nonnull-conversion -Wmissing-method-return-type -Woverlength-strings +GCC_WARN_UNDECLARED_SELECTOR = YES +CLANG_UNDEFINED_BEHAVIOR_SANITIZER_NULLABILITY = YES +CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE +CLANG_WARN__DUPLICATE_METHOD_MATCH = YES +CLANG_WARN_PRAGMA_PACK = YES +CLANG_WARN_STRICT_PROTOTYPES = YES +CLANG_WARN_COMMA = YES +GCC_WARN_STRICT_SELECTOR_MATCH = YES +CLANG_WARN_OBJC_REPEATED_USE_OF_WEAK = YES +CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES +GCC_WARN_SHADOW = YES +CLANG_WARN_UNREACHABLE_CODE = YES diff --git a/macos/Runner/DebugProfile.entitlements b/macos/Runner/DebugProfile.entitlements new file mode 100644 index 00000000..3ba6c126 --- /dev/null +++ b/macos/Runner/DebugProfile.entitlements @@ -0,0 +1,14 @@ + + + + + com.apple.security.app-sandbox + + com.apple.security.cs.allow-jit + + com.apple.security.network.client + + com.apple.security.network.server + + + diff --git a/macos/Runner/Info.plist b/macos/Runner/Info.plist new file mode 100644 index 00000000..4789daa6 --- /dev/null +++ b/macos/Runner/Info.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIconFile + + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + APPL + CFBundleShortVersionString + $(FLUTTER_BUILD_NAME) + CFBundleVersion + $(FLUTTER_BUILD_NUMBER) + LSMinimumSystemVersion + $(MACOSX_DEPLOYMENT_TARGET) + NSHumanReadableCopyright + $(PRODUCT_COPYRIGHT) + NSMainNibFile + MainMenu + NSPrincipalClass + NSApplication + + diff --git a/macos/Runner/MainFlutterWindow.swift b/macos/Runner/MainFlutterWindow.swift new file mode 100644 index 00000000..2722837e --- /dev/null +++ b/macos/Runner/MainFlutterWindow.swift @@ -0,0 +1,15 @@ +import Cocoa +import FlutterMacOS + +class MainFlutterWindow: NSWindow { + override func awakeFromNib() { + let flutterViewController = FlutterViewController.init() + let windowFrame = self.frame + self.contentViewController = flutterViewController + self.setFrame(windowFrame, display: true) + + RegisterGeneratedPlugins(registry: flutterViewController) + + super.awakeFromNib() + } +} diff --git a/macos/Runner/Release.entitlements b/macos/Runner/Release.entitlements new file mode 100644 index 00000000..7a2230dc --- /dev/null +++ b/macos/Runner/Release.entitlements @@ -0,0 +1,12 @@ + + + + + com.apple.security.app-sandbox + + com.apple.security.network.client + + com.apple.security.network.server + + + diff --git a/pubspec.lock b/pubspec.lock deleted file mode 100644 index a0d73dc0..00000000 --- a/pubspec.lock +++ /dev/null @@ -1,1299 +0,0 @@ -# Generated by pub -# See https://dart.dev/tools/pub/glossary#lockfile -packages: - _fe_analyzer_shared: - dependency: transitive - description: - name: _fe_analyzer_shared - url: "https://pub.dartlang.org" - source: hosted - version: "47.0.0" - accordion: - dependency: "direct main" - description: - name: accordion - url: "https://pub.dartlang.org" - source: hosted - version: "2.5.1" - analyzer: - dependency: transitive - description: - name: analyzer - url: "https://pub.dartlang.org" - source: hosted - version: "4.7.0" - app_settings: - dependency: "direct main" - description: - name: app_settings - url: "https://pub.dartlang.org" - source: hosted - version: "4.1.8" - archive: - dependency: transitive - description: - name: archive - url: "https://pub.dartlang.org" - source: hosted - version: "3.3.5" - args: - dependency: transitive - description: - name: args - url: "https://pub.dartlang.org" - source: hosted - version: "2.3.1" - async: - dependency: transitive - description: - name: async - url: "https://pub.dartlang.org" - source: hosted - version: "2.9.0" - back_button_interceptor: - dependency: transitive - description: - name: back_button_interceptor - url: "https://pub.dartlang.org" - source: hosted - version: "6.0.2" - barcode: - dependency: transitive - description: - name: barcode - url: "https://pub.dartlang.org" - source: hosted - version: "2.2.3" - barcode_widget: - dependency: "direct main" - description: - name: barcode_widget - url: "https://pub.dartlang.org" - source: hosted - version: "2.0.3" - bip_topl: - dependency: "direct main" - description: - name: bip_topl - url: "https://pub.dartlang.org" - source: hosted - version: "0.0.2" - boolean_selector: - dependency: transitive - description: - name: boolean_selector - url: "https://pub.dartlang.org" - source: hosted - version: "2.1.0" - brambldart: - dependency: "direct main" - description: - path: "." - ref: TSDK-133 - resolved-ref: fa1dc12f568120b60d1b2875c299a0efd9458925 - url: "https://github.com/Topl/BramblDart" - source: git - version: "0.0.1" - build: - dependency: transitive - description: - name: build - url: "https://pub.dartlang.org" - source: hosted - version: "2.3.1" - build_config: - dependency: transitive - description: - name: build_config - url: "https://pub.dartlang.org" - source: hosted - version: "1.1.1" - build_daemon: - dependency: transitive - description: - name: build_daemon - url: "https://pub.dartlang.org" - source: hosted - version: "3.1.0" - build_resolvers: - dependency: transitive - description: - name: build_resolvers - url: "https://pub.dartlang.org" - source: hosted - version: "2.0.10" - build_runner: - dependency: "direct dev" - description: - name: build_runner - url: "https://pub.dartlang.org" - source: hosted - version: "2.3.0" - build_runner_core: - dependency: transitive - description: - name: build_runner_core - url: "https://pub.dartlang.org" - source: hosted - version: "7.2.7" - built_collection: - dependency: transitive - description: - name: built_collection - url: "https://pub.dartlang.org" - source: hosted - version: "5.1.1" - built_value: - dependency: "direct main" - description: - name: built_value - url: "https://pub.dartlang.org" - source: hosted - version: "8.4.2" - built_value_generator: - dependency: "direct dev" - description: - name: built_value_generator - url: "https://pub.dartlang.org" - source: hosted - version: "8.4.2" - characters: - dependency: transitive - description: - name: characters - url: "https://pub.dartlang.org" - source: hosted - version: "1.2.1" - charcode: - dependency: transitive - description: - name: charcode - url: "https://pub.dartlang.org" - source: hosted - version: "1.3.1" - checked_yaml: - dependency: transitive - description: - name: checked_yaml - url: "https://pub.dartlang.org" - source: hosted - version: "2.0.1" - cli_pkg: - dependency: transitive - description: - name: cli_pkg - url: "https://pub.dartlang.org" - source: hosted - version: "1.7.0" - cli_util: - dependency: transitive - description: - name: cli_util - url: "https://pub.dartlang.org" - source: hosted - version: "0.3.5" - clock: - dependency: transitive - description: - name: clock - url: "https://pub.dartlang.org" - source: hosted - version: "1.1.1" - code_builder: - dependency: transitive - description: - name: code_builder - url: "https://pub.dartlang.org" - source: hosted - version: "4.3.0" - collection: - dependency: transitive - description: - name: collection - url: "https://pub.dartlang.org" - source: hosted - version: "1.16.0" - convert: - dependency: transitive - description: - name: convert - url: "https://pub.dartlang.org" - source: hosted - version: "3.1.1" - coverage: - dependency: transitive - description: - name: coverage - url: "https://pub.dartlang.org" - source: hosted - version: "1.6.1" - crypto: - dependency: transitive - description: - name: crypto - url: "https://pub.dartlang.org" - source: hosted - version: "3.0.2" - cupertino_icons: - dependency: "direct main" - description: - name: cupertino_icons - url: "https://pub.dartlang.org" - source: hosted - version: "1.0.5" - dart_style: - dependency: transitive - description: - name: dart_style - url: "https://pub.dartlang.org" - source: hosted - version: "2.2.4" - device_frame: - dependency: transitive - description: - name: device_frame - url: "https://pub.dartlang.org" - source: hosted - version: "1.1.0" - dio: - dependency: transitive - description: - name: dio - url: "https://pub.dartlang.org" - source: hosted - version: "4.0.6" - docker_process: - dependency: transitive - description: - name: docker_process - url: "https://pub.dartlang.org" - source: hosted - version: "1.3.1" - dotted_border: - dependency: "direct main" - description: - name: dotted_border - url: "https://pub.dartlang.org" - source: hosted - version: "2.0.0+3" - dropdown_button2: - dependency: transitive - description: - name: dropdown_button2 - url: "https://pub.dartlang.org" - source: hosted - version: "1.9.2" - fake_async: - dependency: transitive - description: - name: fake_async - url: "https://pub.dartlang.org" - source: hosted - version: "1.3.1" - ffi: - dependency: transitive - description: - name: ffi - url: "https://pub.dartlang.org" - source: hosted - version: "1.2.1" - file: - dependency: transitive - description: - name: file - url: "https://pub.dartlang.org" - source: hosted - version: "6.1.4" - file_picker: - dependency: "direct main" - description: - name: file_picker - url: "https://pub.dartlang.org" - source: hosted - version: "4.6.1" - fixnum: - dependency: transitive - description: - name: fixnum - url: "https://pub.dartlang.org" - source: hosted - version: "1.0.1" - flutter: - dependency: "direct main" - description: flutter - source: sdk - version: "0.0.0" - flutter_keyboard_visibility: - dependency: "direct main" - description: - name: flutter_keyboard_visibility - url: "https://pub.dartlang.org" - source: hosted - version: "5.4.0" - flutter_keyboard_visibility_linux: - dependency: transitive - description: - name: flutter_keyboard_visibility_linux - url: "https://pub.dartlang.org" - source: hosted - version: "1.0.0" - flutter_keyboard_visibility_macos: - dependency: transitive - description: - name: flutter_keyboard_visibility_macos - url: "https://pub.dartlang.org" - source: hosted - version: "1.0.0" - flutter_keyboard_visibility_platform_interface: - dependency: transitive - description: - name: flutter_keyboard_visibility_platform_interface - url: "https://pub.dartlang.org" - source: hosted - version: "2.0.0" - flutter_keyboard_visibility_web: - dependency: transitive - description: - name: flutter_keyboard_visibility_web - url: "https://pub.dartlang.org" - source: hosted - version: "2.0.0" - flutter_keyboard_visibility_windows: - dependency: transitive - description: - name: flutter_keyboard_visibility_windows - url: "https://pub.dartlang.org" - source: hosted - version: "1.0.0" - flutter_launcher_icons: - dependency: "direct dev" - description: - name: flutter_launcher_icons - url: "https://pub.dartlang.org" - source: hosted - version: "0.9.3" - flutter_lints: - dependency: "direct dev" - description: - name: flutter_lints - url: "https://pub.dartlang.org" - source: hosted - version: "1.0.4" - flutter_native_splash: - dependency: "direct main" - description: - name: flutter_native_splash - url: "https://pub.dartlang.org" - source: hosted - version: "2.2.0+1" - flutter_plugin_android_lifecycle: - dependency: transitive - description: - name: flutter_plugin_android_lifecycle - url: "https://pub.dartlang.org" - source: hosted - version: "2.0.7" - flutter_portal: - dependency: "direct main" - description: - name: flutter_portal - url: "https://pub.dartlang.org" - source: hosted - version: "0.4.0" - flutter_redux: - dependency: "direct main" - description: - name: flutter_redux - url: "https://pub.dartlang.org" - source: hosted - version: "0.10.0" - flutter_secure_storage: - dependency: "direct main" - description: - name: flutter_secure_storage - url: "https://pub.dartlang.org" - source: hosted - version: "5.1.2" - flutter_secure_storage_linux: - dependency: transitive - description: - name: flutter_secure_storage_linux - url: "https://pub.dartlang.org" - source: hosted - version: "1.1.2" - flutter_secure_storage_macos: - dependency: transitive - description: - name: flutter_secure_storage_macos - url: "https://pub.dartlang.org" - source: hosted - version: "1.1.2" - flutter_secure_storage_platform_interface: - dependency: transitive - description: - name: flutter_secure_storage_platform_interface - url: "https://pub.dartlang.org" - source: hosted - version: "1.0.1" - flutter_secure_storage_web: - dependency: transitive - description: - name: flutter_secure_storage_web - url: "https://pub.dartlang.org" - source: hosted - version: "1.1.1" - flutter_secure_storage_windows: - dependency: transitive - description: - name: flutter_secure_storage_windows - url: "https://pub.dartlang.org" - source: hosted - version: "1.1.3" - flutter_svg: - dependency: "direct main" - description: - name: flutter_svg - url: "https://pub.dartlang.org" - source: hosted - version: "1.0.3" - flutter_test: - dependency: "direct dev" - description: flutter - source: sdk - version: "0.0.0" - flutter_web_plugins: - dependency: transitive - description: flutter - source: sdk - version: "0.0.0" - freezed_annotation: - dependency: transitive - description: - name: freezed_annotation - url: "https://pub.dartlang.org" - source: hosted - version: "2.2.0" - frontend_server_client: - dependency: transitive - description: - name: frontend_server_client - url: "https://pub.dartlang.org" - source: hosted - version: "2.1.3" - get: - dependency: transitive - description: - name: get - url: "https://pub.dartlang.org" - source: hosted - version: "4.6.5" - get_it: - dependency: "direct main" - description: - name: get_it - url: "https://pub.dartlang.org" - source: hosted - version: "7.2.0" - glob: - dependency: transitive - description: - name: glob - url: "https://pub.dartlang.org" - source: hosted - version: "2.1.1" - go_router: - dependency: transitive - description: - name: go_router - url: "https://pub.dartlang.org" - source: hosted - version: "3.1.1" - google_fonts: - dependency: "direct main" - description: - name: google_fonts - url: "https://pub.dartlang.org" - source: hosted - version: "2.3.3" - googleapis_auth: - dependency: transitive - description: - name: googleapis_auth - url: "https://pub.dartlang.org" - source: hosted - version: "1.3.1" - graphs: - dependency: transitive - description: - name: graphs - url: "https://pub.dartlang.org" - source: hosted - version: "2.2.0" - grinder: - dependency: transitive - description: - name: grinder - url: "https://pub.dartlang.org" - source: hosted - version: "0.9.2" - grpc: - dependency: "direct main" - description: - name: grpc - url: "https://pub.dartlang.org" - source: hosted - version: "3.1.0" - http: - dependency: transitive - description: - name: http - url: "https://pub.dartlang.org" - source: hosted - version: "0.13.5" - http2: - dependency: transitive - description: - name: http2 - url: "https://pub.dartlang.org" - source: hosted - version: "2.0.1" - http_multi_server: - dependency: transitive - description: - name: http_multi_server - url: "https://pub.dartlang.org" - source: hosted - version: "3.2.1" - http_parser: - dependency: transitive - description: - name: http_parser - url: "https://pub.dartlang.org" - source: hosted - version: "4.0.2" - image: - dependency: transitive - description: - name: image - url: "https://pub.dartlang.org" - source: hosted - version: "3.1.3" - intl: - dependency: "direct main" - description: - name: intl - url: "https://pub.dartlang.org" - source: hosted - version: "0.17.0" - io: - dependency: transitive - description: - name: io - url: "https://pub.dartlang.org" - source: hosted - version: "1.0.3" - js: - dependency: transitive - description: - name: js - url: "https://pub.dartlang.org" - source: hosted - version: "0.6.4" - json_annotation: - dependency: transitive - description: - name: json_annotation - url: "https://pub.dartlang.org" - source: hosted - version: "4.7.0" - lazy_load_scrollview: - dependency: "direct main" - description: - name: lazy_load_scrollview - url: "https://pub.dartlang.org" - source: hosted - version: "1.3.0" - lint: - dependency: transitive - description: - name: lint - url: "https://pub.dartlang.org" - source: hosted - version: "1.10.0" - lints: - dependency: transitive - description: - name: lints - url: "https://pub.dartlang.org" - source: hosted - version: "1.0.1" - loader_overlay: - dependency: "direct main" - description: - name: loader_overlay - url: "https://pub.dartlang.org" - source: hosted - version: "2.1.0" - loading_overlay: - dependency: "direct main" - description: - name: loading_overlay - url: "https://pub.dartlang.org" - source: hosted - version: "0.3.0" - local_auth: - dependency: "direct main" - description: - name: local_auth - url: "https://pub.dartlang.org" - source: hosted - version: "2.1.2" - local_auth_android: - dependency: transitive - description: - name: local_auth_android - url: "https://pub.dartlang.org" - source: hosted - version: "1.0.16" - local_auth_ios: - dependency: transitive - description: - name: local_auth_ios - url: "https://pub.dartlang.org" - source: hosted - version: "1.0.10" - local_auth_platform_interface: - dependency: transitive - description: - name: local_auth_platform_interface - url: "https://pub.dartlang.org" - source: hosted - version: "1.0.5" - local_auth_windows: - dependency: transitive - description: - name: local_auth_windows - url: "https://pub.dartlang.org" - source: hosted - version: "1.0.4" - logging: - dependency: transitive - description: - name: logging - url: "https://pub.dartlang.org" - source: hosted - version: "1.1.0" - matcher: - dependency: transitive - description: - name: matcher - url: "https://pub.dartlang.org" - source: hosted - version: "0.12.12" - material_color_utilities: - dependency: transitive - description: - name: material_color_utilities - url: "https://pub.dartlang.org" - source: hosted - version: "0.1.5" - meta: - dependency: transitive - description: - name: meta - url: "https://pub.dartlang.org" - source: hosted - version: "1.8.0" - mime: - dependency: transitive - description: - name: mime - url: "https://pub.dartlang.org" - source: hosted - version: "1.0.3" - mockito: - dependency: "direct main" - description: - name: mockito - url: "https://pub.dartlang.org" - source: hosted - version: "5.3.2" - nested: - dependency: transitive - description: - name: nested - url: "https://pub.dartlang.org" - source: hosted - version: "1.0.0" - node_interop: - dependency: transitive - description: - name: node_interop - url: "https://pub.dartlang.org" - source: hosted - version: "2.1.0" - node_preamble: - dependency: transitive - description: - name: node_preamble - url: "https://pub.dartlang.org" - source: hosted - version: "2.0.1" - package_config: - dependency: transitive - description: - name: package_config - url: "https://pub.dartlang.org" - source: hosted - version: "2.1.0" - path: - dependency: transitive - description: - name: path - url: "https://pub.dartlang.org" - source: hosted - version: "1.8.2" - path_drawing: - dependency: transitive - description: - name: path_drawing - url: "https://pub.dartlang.org" - source: hosted - version: "1.0.1" - path_parsing: - dependency: transitive - description: - name: path_parsing - url: "https://pub.dartlang.org" - source: hosted - version: "1.0.1" - path_provider: - dependency: "direct main" - description: - name: path_provider - url: "https://pub.dartlang.org" - source: hosted - version: "2.0.11" - path_provider_android: - dependency: transitive - description: - name: path_provider_android - url: "https://pub.dartlang.org" - source: hosted - version: "2.0.22" - path_provider_ios: - dependency: transitive - description: - name: path_provider_ios - url: "https://pub.dartlang.org" - source: hosted - version: "2.0.11" - path_provider_linux: - dependency: transitive - description: - name: path_provider_linux - url: "https://pub.dartlang.org" - source: hosted - version: "2.1.7" - path_provider_macos: - dependency: transitive - description: - name: path_provider_macos - url: "https://pub.dartlang.org" - source: hosted - version: "2.0.6" - path_provider_platform_interface: - dependency: transitive - description: - name: path_provider_platform_interface - url: "https://pub.dartlang.org" - source: hosted - version: "2.0.5" - path_provider_windows: - dependency: transitive - description: - name: path_provider_windows - url: "https://pub.dartlang.org" - source: hosted - version: "2.0.7" - petitparser: - dependency: transitive - description: - name: petitparser - url: "https://pub.dartlang.org" - source: hosted - version: "5.1.0" - pinenacl: - dependency: transitive - description: - name: pinenacl - url: "https://pub.dartlang.org" - source: hosted - version: "0.3.4" - platform: - dependency: transitive - description: - name: platform - url: "https://pub.dartlang.org" - source: hosted - version: "3.1.0" - plugin_platform_interface: - dependency: transitive - description: - name: plugin_platform_interface - url: "https://pub.dartlang.org" - source: hosted - version: "2.1.3" - pointycastle: - dependency: transitive - description: - name: pointycastle - url: "https://pub.dartlang.org" - source: hosted - version: "3.6.2" - pool: - dependency: transitive - description: - name: pool - url: "https://pub.dartlang.org" - source: hosted - version: "1.5.1" - process: - dependency: transitive - description: - name: process - url: "https://pub.dartlang.org" - source: hosted - version: "4.2.4" - progress_indicators: - dependency: "direct main" - description: - name: progress_indicators - url: "https://pub.dartlang.org" - source: hosted - version: "1.0.0" - protobuf: - dependency: transitive - description: - name: protobuf - url: "https://pub.dartlang.org" - source: hosted - version: "2.1.0" - provider: - dependency: transitive - description: - name: provider - url: "https://pub.dartlang.org" - source: hosted - version: "6.0.5" - pub_semver: - dependency: transitive - description: - name: pub_semver - url: "https://pub.dartlang.org" - source: hosted - version: "2.1.3" - pubspec_parse: - dependency: transitive - description: - name: pubspec_parse - url: "https://pub.dartlang.org" - source: hosted - version: "1.2.1" - qr: - dependency: transitive - description: - name: qr - url: "https://pub.dartlang.org" - source: hosted - version: "3.0.1" - quiver: - dependency: transitive - description: - name: quiver - url: "https://pub.dartlang.org" - source: hosted - version: "3.1.0" - redux: - dependency: "direct main" - description: - name: redux - url: "https://pub.dartlang.org" - source: hosted - version: "5.0.0" - redux_epics: - dependency: "direct main" - description: - name: redux_epics - url: "https://pub.dartlang.org" - source: hosted - version: "0.15.1" - ribn_toolkit: - dependency: "direct main" - description: - path: "." - ref: "0.4-front-end" - resolved-ref: "62ba848e6d0044f39000b77fc656bd4c11e55506" - url: "https://github.com/Topl/ribn-toolkit" - source: git - version: "1.0.0+1" - rxdart: - dependency: "direct main" - description: - name: rxdart - url: "https://pub.dartlang.org" - source: hosted - version: "0.26.0" - scroll_to_index: - dependency: transitive - description: - name: scroll_to_index - url: "https://pub.dartlang.org" - source: hosted - version: "3.0.1" - shelf: - dependency: transitive - description: - name: shelf - url: "https://pub.dartlang.org" - source: hosted - version: "1.4.0" - shelf_packages_handler: - dependency: transitive - description: - name: shelf_packages_handler - url: "https://pub.dartlang.org" - source: hosted - version: "3.0.1" - shelf_static: - dependency: transitive - description: - name: shelf_static - url: "https://pub.dartlang.org" - source: hosted - version: "1.1.1" - shelf_web_socket: - dependency: transitive - description: - name: shelf_web_socket - url: "https://pub.dartlang.org" - source: hosted - version: "1.0.3" - shimmer_animation: - dependency: "direct main" - description: - name: shimmer_animation - url: "https://pub.dartlang.org" - source: hosted - version: "2.1.0+1" - sky_engine: - dependency: transitive - description: flutter - source: sdk - version: "0.0.99" - source_gen: - dependency: transitive - description: - name: source_gen - url: "https://pub.dartlang.org" - source: hosted - version: "1.2.6" - source_map_stack_trace: - dependency: transitive - description: - name: source_map_stack_trace - url: "https://pub.dartlang.org" - source: hosted - version: "2.1.1" - source_maps: - dependency: transitive - description: - name: source_maps - url: "https://pub.dartlang.org" - source: hosted - version: "0.10.11" - source_span: - dependency: transitive - description: - name: source_span - url: "https://pub.dartlang.org" - source: hosted - version: "1.9.0" - stack_trace: - dependency: transitive - description: - name: stack_trace - url: "https://pub.dartlang.org" - source: hosted - version: "1.10.0" - step_progress_indicator: - dependency: "direct main" - description: - name: step_progress_indicator - url: "https://pub.dartlang.org" - source: hosted - version: "1.0.2" - steps_indicator: - dependency: "direct main" - description: - name: steps_indicator - url: "https://pub.dartlang.org" - source: hosted - version: "1.3.0" - stream_channel: - dependency: transitive - description: - name: stream_channel - url: "https://pub.dartlang.org" - source: hosted - version: "2.1.0" - stream_transform: - dependency: transitive - description: - name: stream_transform - url: "https://pub.dartlang.org" - source: hosted - version: "2.1.0" - string_scanner: - dependency: transitive - description: - name: string_scanner - url: "https://pub.dartlang.org" - source: hosted - version: "1.1.1" - term_glyph: - dependency: transitive - description: - name: term_glyph - url: "https://pub.dartlang.org" - source: hosted - version: "1.2.1" - test: - dependency: transitive - description: - name: test - url: "https://pub.dartlang.org" - source: hosted - version: "1.21.4" - test_api: - dependency: transitive - description: - name: test_api - url: "https://pub.dartlang.org" - source: hosted - version: "0.4.12" - test_core: - dependency: transitive - description: - name: test_core - url: "https://pub.dartlang.org" - source: hosted - version: "0.4.16" - test_process: - dependency: transitive - description: - name: test_process - url: "https://pub.dartlang.org" - source: hosted - version: "2.0.3" - timing: - dependency: transitive - description: - name: timing - url: "https://pub.dartlang.org" - source: hosted - version: "1.0.0" - typed_data: - dependency: transitive - description: - name: typed_data - url: "https://pub.dartlang.org" - source: hosted - version: "1.3.1" - universal_io: - dependency: transitive - description: - name: universal_io - url: "https://pub.dartlang.org" - source: hosted - version: "2.0.4" - unorm_dart: - dependency: transitive - description: - name: unorm_dart - url: "https://pub.dartlang.org" - source: hosted - version: "0.2.0" - url_launcher: - dependency: "direct main" - description: - name: url_launcher - url: "https://pub.dartlang.org" - source: hosted - version: "6.1.7" - url_launcher_android: - dependency: transitive - description: - name: url_launcher_android - url: "https://pub.dartlang.org" - source: hosted - version: "6.0.22" - url_launcher_ios: - dependency: transitive - description: - name: url_launcher_ios - url: "https://pub.dartlang.org" - source: hosted - version: "6.0.17" - url_launcher_linux: - dependency: transitive - description: - name: url_launcher_linux - url: "https://pub.dartlang.org" - source: hosted - version: "3.0.1" - url_launcher_macos: - dependency: transitive - description: - name: url_launcher_macos - url: "https://pub.dartlang.org" - source: hosted - version: "3.0.1" - url_launcher_platform_interface: - dependency: transitive - description: - name: url_launcher_platform_interface - url: "https://pub.dartlang.org" - source: hosted - version: "2.1.1" - url_launcher_web: - dependency: transitive - description: - name: url_launcher_web - url: "https://pub.dartlang.org" - source: hosted - version: "2.0.13" - url_launcher_windows: - dependency: transitive - description: - name: url_launcher_windows - url: "https://pub.dartlang.org" - source: hosted - version: "3.0.1" - url_strategy: - dependency: "direct main" - description: - name: url_strategy - url: "https://pub.dartlang.org" - source: hosted - version: "0.2.0" - uuid: - dependency: transitive - description: - name: uuid - url: "https://pub.dartlang.org" - source: hosted - version: "3.0.7" - vector_math: - dependency: transitive - description: - name: vector_math - url: "https://pub.dartlang.org" - source: hosted - version: "2.1.2" - vm_service: - dependency: transitive - description: - name: vm_service - url: "https://pub.dartlang.org" - source: hosted - version: "9.4.0" - watcher: - dependency: transitive - description: - name: watcher - url: "https://pub.dartlang.org" - source: hosted - version: "1.0.2" - wave: - dependency: transitive - description: - name: wave - url: "https://pub.dartlang.org" - source: hosted - version: "0.2.2" - web_socket_channel: - dependency: transitive - description: - name: web_socket_channel - url: "https://pub.dartlang.org" - source: hosted - version: "2.2.0" - webkit_inspection_protocol: - dependency: transitive - description: - name: webkit_inspection_protocol - url: "https://pub.dartlang.org" - source: hosted - version: "1.2.0" - widgetbook: - dependency: transitive - description: - path: "packages/widgetbook" - ref: HEAD - resolved-ref: "45493c98c086800ced701c48f8a2a895ec8ae2a4" - url: "https://github.com/Topl/widgetbook" - source: git - version: "2.4.1" - widgetbook_annotation: - dependency: transitive - description: - name: widgetbook_annotation - url: "https://pub.dartlang.org" - source: hosted - version: "2.1.0" - widgetbook_generator: - dependency: transitive - description: - name: widgetbook_generator - url: "https://pub.dartlang.org" - source: hosted - version: "2.4.1" - widgetbook_models: - dependency: transitive - description: - name: widgetbook_models - url: "https://pub.dartlang.org" - source: hosted - version: "0.0.7" - win32: - dependency: transitive - description: - name: win32 - url: "https://pub.dartlang.org" - source: hosted - version: "2.6.1" - xdg_directories: - dependency: transitive - description: - name: xdg_directories - url: "https://pub.dartlang.org" - source: hosted - version: "0.2.0+2" - xml: - dependency: transitive - description: - name: xml - url: "https://pub.dartlang.org" - source: hosted - version: "5.4.1" - yaml: - dependency: transitive - description: - name: yaml - url: "https://pub.dartlang.org" - source: hosted - version: "3.1.1" -sdks: - dart: ">=2.18.0 <3.0.0" - flutter: ">=3.0.1" diff --git a/pubspec.yaml b/pubspec.yaml index c1039941..ed88ba53 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -32,18 +32,18 @@ dependencies: # The following adds the Cupertino Icons font to your application. # Use with the CupertinoIcons class for iOS style icons. - cupertino_icons: ^1.0.2 - mockito: ^5.0.14 - built_value: ^8.1.2 + cupertino_icons: ^1.0.5 + mockito: ^5.3.2 + built_value: ^8.4.2 flutter_redux: ^0.10.0 redux: ^5.0.0 redux_epics: ^0.15.0 - rxdart: ^0.26.0 + rxdart: ^0.27.7 step_progress_indicator: ^1.0.1 steps_indicator: ^1.3.0 bip_topl: ^0.0.2 - google_fonts: ^2.1.0 - flutter_svg: ^1.0.3 + google_fonts: ^3.0.1 + flutter_svg: ^1.0.3 dotted_border: ^2.0.0+1 accordion: ^2.1.1 progress_indicators: ^1.0.0 @@ -51,12 +51,11 @@ dependencies: barcode_widget: ^2.0.1 flutter_portal: ^0.4.0 file_picker: ^4.3.3 + import_sorter: ^4.6.0 ribn_toolkit: git: url: https://github.com/Topl/ribn-toolkit - ref: 0.4-front-end -# ribn_toolkit: -# path: ../ribn_toolkit + ref: main brambldart: git: url: https://github.com/Topl/BramblDart @@ -65,7 +64,7 @@ dependencies: shimmer_animation: ^2.1.0+1 grpc: ^3.0.2 path_provider: ^2.0.9 - flutter_secure_storage: ^5.0.2 + flutter_secure_storage: ^7.0.1 local_auth: ^2.0.0 url_strategy: ^0.2.0 flutter_native_splash: #^2.2.3+1 @@ -81,14 +80,14 @@ dev_dependencies: sdk: flutter build_runner: ^2.1.1 built_value_generator: ^8.1.2 - flutter_launcher_icons: "^0.9.3" + flutter_launcher_icons: ^0.11.0 # The "flutter_lints" package below contains a set of recommended lints to # encourage good coding practices. The lint set provided by the package is # activated in the `analysis_options.yaml` file located at the root of your # package. See that file for information about deactivating specific lint # rules and activating additional ones. - flutter_lints: ^1.0.0 + flutter_lints: ^2.0.1 # For information on the generic Dart part of this file, see the # following page: https://dart.dev/tools/pub/pubspec diff --git a/test/main_test.dart b/test/main_test.dart index 98c2e14c..98458b7a 100644 --- a/test/main_test.dart +++ b/test/main_test.dart @@ -1,5 +1,7 @@ +// Package imports: import 'package:flutter_test/flutter_test.dart'; +// Project imports: import 'middleware_test.dart' as middleware_test; import 'reducer_test.dart' as reducer_test; diff --git a/test/middleware_test.dart b/test/middleware_test.dart index cc79382c..ffaa63c7 100644 --- a/test/middleware_test.dart +++ b/test/middleware_test.dart @@ -1,10 +1,14 @@ +// Dart imports: import 'dart:async'; import 'dart:typed_data'; +// Package imports: import 'package:brambldart/brambldart.dart'; import 'package:flutter_test/flutter_test.dart'; import 'package:mockito/mockito.dart'; import 'package:redux/redux.dart'; + +// Project imports: import 'package:ribn/actions/keychain_actions.dart'; import 'package:ribn/actions/login_actions.dart'; import 'package:ribn/actions/onboarding_actions.dart'; @@ -14,7 +18,6 @@ import 'package:ribn/models/ribn_address.dart'; import 'package:ribn/redux.dart'; import 'package:ribn/repositories/login_repository.dart'; import 'package:ribn/repositories/onboarding_repository.dart'; - import 'shared_mocks.mocks.dart'; import 'test_data.dart'; @@ -30,7 +33,8 @@ void main() { final String invalidPassword = testData['invalidPassword']!; final String testKeyStore = testData['keyStoreJson']!; final RibnAddress testAddress = testData['address']; - final Uint8List testToplExtendedPrivKey = Uint8List.fromList(toList(testData['toplExtendedPrvKey']!)); + final Uint8List testToplExtendedPrivKey = + Uint8List.fromList(toList(testData['toplExtendedPrvKey']!)); late Store testStore; @@ -51,14 +55,19 @@ void main() { setUp(reset); group('Onboarding middleware', () { test('should generate mnemonic', () { - when(onboardingRepo.generateMnemonicForUser()).thenAnswer((_) => testMnemonic); + when(onboardingRepo.generateMnemonicForUser()) + .thenAnswer((_) => testMnemonic); testStore.dispatch(GenerateMnemonicAction()); verify(onboardingRepo.generateMnemonicForUser()).called(1); expect(testStore.state.onboardingState.mnemonic, testMnemonic); - expect(testStore.state.onboardingState.shuffledMnemonic, unorderedEquals(testMnemonic.split(' '))); + expect( + testStore.state.onboardingState.shuffledMnemonic, + unorderedEquals(testMnemonic.split(' ')), + ); }); test('should generate keystore and initialize hd wallet', () async { - when(onboardingRepo.generateMnemonicForUser()).thenAnswer((_) => testMnemonic); + when(onboardingRepo.generateMnemonicForUser()) + .thenAnswer((_) => testMnemonic); testStore.dispatch(GenerateMnemonicAction()); // mnemonic: captureAnyNamed('mnemonic'), // password: captureAnyNamed('password'), @@ -89,7 +98,8 @@ void main() { group('Login middleware', () { setUp(() { // generate mnemonic - when(onboardingRepo.generateMnemonicForUser()).thenAnswer((_) => testMnemonic); + when(onboardingRepo.generateMnemonicForUser()) + .thenAnswer((_) => testMnemonic); testStore.dispatch(GenerateMnemonicAction()); // generate keystore when( @@ -119,7 +129,9 @@ void main() { when( loginRepo.decryptKeyStore(argThat(isNotNull)), ).thenAnswer( - (_) => const LoginRepository().decryptKeyStore({'keyStoreJson': testKeyStore, 'password': invalidPassword}), + (_) => const LoginRepository().decryptKeyStore( + {'keyStoreJson': testKeyStore, 'password': invalidPassword}, + ), ); final Completer completer = Completer(); testStore.dispatch(AttemptLoginAction(invalidPassword, completer)); @@ -133,26 +145,41 @@ void main() { group('Keychain middleware', () { setUp(() { // generate mnemonic - when(onboardingRepo.generateMnemonicForUser()).thenAnswer((_) => testMnemonic); + when(onboardingRepo.generateMnemonicForUser()) + .thenAnswer((_) => testMnemonic); testStore.dispatch(GenerateMnemonicAction()); // generate keystore - when(onboardingRepo.generateKeyStore(argThat(isNotNull))) - .thenReturn({'keyStoreJson': testKeyStore, 'toplExtendedPrvKeyUint8List': testToplExtendedPrivKey}); + when(onboardingRepo.generateKeyStore(argThat(isNotNull))).thenReturn({ + 'keyStoreJson': testKeyStore, + 'toplExtendedPrvKeyUint8List': testToplExtendedPrivKey + }); testStore.dispatch(CreatePasswordAction(validPassword)); // login - when(loginRepo.decryptKeyStore(captureAny)).thenReturn(testToplExtendedPrivKey); + when(loginRepo.decryptKeyStore(captureAny)) + .thenReturn(testToplExtendedPrivKey); }); test('Should refresh balances', () async { const testPolys = 10000; await Future.delayed( Duration.zero, () => testStore.dispatch( - InitializeHDWalletAction(toplExtendedPrivateKey: TestData.toplExtendedPrvKeyUint8List), + InitializeHDWalletAction( + toplExtendedPrivateKey: TestData.toplExtendedPrvKeyUint8List, + ), + ), + ); + when( + keychainRepo.generateAddress( + argThat(isNotNull), + networkId: captureAnyNamed('networkId'), + ), + ).thenAnswer((_) => testAddress); + testStore.dispatch( + GenerateAddressAction( + 0, + network: testStore.state.keychainState.currentNetwork, ), ); - when(keychainRepo.generateAddress(argThat(isNotNull), networkId: captureAnyNamed('networkId'))) - .thenAnswer((_) => testAddress); - testStore.dispatch(GenerateAddressAction(0, network: testStore.state.keychainState.currentNetwork)); when(keychainRepo.getBalances(captureAny, captureAny)).thenAnswer((_) { return Future.value( (_.positionalArguments[1] as List) @@ -167,10 +194,16 @@ void main() { ); }); final Completer completer = Completer(); - testStore.dispatch(RefreshBalancesAction(completer, testStore.state.keychainState.currentNetwork)); + testStore.dispatch( + RefreshBalancesAction( + completer, + testStore.state.keychainState.currentNetwork, + ), + ); await expectLater(completer.future, completion(true)); expect( - testStore.state.keychainState.currentNetwork.addresses.first.balance.polys, + testStore + .state.keychainState.currentNetwork.addresses.first.balance.polys, PolyAmount.inNanopoly(quantity: testPolys), ); }); diff --git a/test/reducer_test.dart b/test/reducer_test.dart index 4b8b5673..ceb15a50 100644 --- a/test/reducer_test.dart +++ b/test/reducer_test.dart @@ -1,10 +1,15 @@ -import 'dart:typed_data'; +// Dart imports: +// Flutter imports: +import 'package:flutter/foundation.dart'; + +// Package imports: import 'package:bip_topl/bip_topl.dart' as bip_topl; import 'package:brambldart/brambldart.dart'; -import 'package:flutter/foundation.dart'; import 'package:flutter_test/flutter_test.dart'; import 'package:redux/redux.dart'; + +// Project imports: import 'package:ribn/actions/keychain_actions.dart'; import 'package:ribn/actions/onboarding_actions.dart'; import 'package:ribn/constants/network_utils.dart'; @@ -52,8 +57,10 @@ void main() { ), ); expect(testStore.state.keychainState.keyStoreJson, testKeyStore); - expect(testStore.state.keychainState.hdWallet!.rootVerifyKey, - hdWallet.rootVerifyKey,); + expect( + testStore.state.keychainState.hdWallet!.rootVerifyKey, + hdWallet.rootVerifyKey, + ); }); test('update network with addresses', () async { const KeychainRepository keychainRepo = KeychainRepository(); @@ -72,15 +79,18 @@ void main() { testStore.dispatch(UpdateNetworksWithAddressesAction(networkAddresses)); testStore.state.keychainState.networks.forEach((networkName, network) { listEquals( - testStore.state.keychainState.networks[networkName]!.addresses, - networkAddresses[networkName],); + testStore.state.keychainState.networks[networkName]!.addresses, + networkAddresses[networkName], + ); }); }); test('toggle network', () async { testStore.dispatch(UpdateCurrentNetworkAction(NetworkUtils.private)); - expect(testStore.state.keychainState.currentNetwork.networkName, - NetworkUtils.private,); + expect( + testStore.state.keychainState.currentNetwork.networkName, + NetworkUtils.private, + ); }); }); }); -} \ No newline at end of file +} diff --git a/test/shared_mocks.dart b/test/shared_mocks.dart index 6246689a..11dd186a 100644 --- a/test/shared_mocks.dart +++ b/test/shared_mocks.dart @@ -1,4 +1,7 @@ +// Package imports: import 'package:mockito/annotations.dart'; + +// Project imports: import 'package:ribn/models/ribn_address.dart'; import 'package:ribn/repositories/keychain_repository.dart'; import 'package:ribn/repositories/login_repository.dart'; diff --git a/test/shared_mocks.mocks.dart b/test/shared_mocks.mocks.dart index 1f4b4d3e..b8cc13e4 100644 --- a/test/shared_mocks.mocks.dart +++ b/test/shared_mocks.mocks.dart @@ -2,12 +2,16 @@ // in ribn/test/shared_mocks.dart. // Do not manually edit this file. +// Dart imports: import 'dart:async' as _i6; import 'dart:typed_data' as _i8; +// Package imports: import 'package:brambldart/brambldart.dart' as _i4; import 'package:brambldart/credentials.dart' as _i2; import 'package:mockito/mockito.dart' as _i1; + +// Project imports: import 'package:ribn/models/internal_message.dart' as _i10; import 'package:ribn/models/ribn_address.dart' as _i3; import 'package:ribn/models/transfer_details.dart' as _i13; diff --git a/test/test_data.dart b/test/test_data.dart index ebabc060..9c82ec3f 100644 --- a/test/test_data.dart +++ b/test/test_data.dart @@ -1,10 +1,14 @@ +// Package imports: import 'package:brambldart/credentials.dart'; + +// Project imports: import 'package:ribn/constants/network_utils.dart'; import 'package:ribn/constants/rules.dart'; import 'package:ribn/models/ribn_address.dart'; Map testData = { - 'mnemonic': 'napkin they pupil disorder junior tonight harsh mobile equal explain allow fancy', + 'mnemonic': + 'napkin they pupil disorder junior tonight harsh mobile equal explain allow fancy', 'rootExtendedPrvKey': '64, 152, 147, 162, 27, 218, 199, 183, 63, 203, 225, 8, 66, 19, 70, 136, 195, 167, 2, 80, 205, 2, 101, 184, 123, 4, 1, 243, 211, 71, 151, 94, 55, 233, 205, 8, 240, 57, 245, 113, 25, 135, 174, 17, 19, 89, 46, 188, 137, 86, 233, 16, 223, 41, 177, 217, 128, 221, 55, 128, 147, 74, 229, 221, 235, 233, 231, 45, 1, 34, 13, 37, 45, 17, 170, 166, 208, 154, 59, 17, 179, 13, 219, 191, 21, 64, 115, 19, 223, 133, 72, 255, 45, 171, 47, 108', 'toplExtendedPrvKey': @@ -14,10 +18,14 @@ Map testData = { 'validPassword': '12345678', 'invalidPassword': '1234567', 'address': RibnAddress( - toplAddress: ToplAddress.fromBase58('AUDxRxPtWPeejAMfEeYMYfwQ7Shk5qLw4swZkW6sek3D4FMDrQ6D'), + toplAddress: ToplAddress.fromBase58( + 'AUDxRxPtWPeejAMfEeYMYfwQ7Shk5qLw4swZkW6sek3D4FMDrQ6D', + ), addressIndex: 0, keyPath: '', - balance: Rules.initBalance('AUDxRxPtWPeejAMfEeYMYfwQ7Shk5qLw4swZkW6sek3D4FMDrQ6D'), + balance: Rules.initBalance( + 'AUDxRxPtWPeejAMfEeYMYfwQ7Shk5qLw4swZkW6sek3D4FMDrQ6D', + ), networkId: NetworkUtils.privateId, ), };