From 76a8a83930cea7f91a72441b4e611763afa90b9c Mon Sep 17 00:00:00 2001 From: vjrj <vjrj@comunes.org> Date: Thu, 23 Mar 2023 22:07:22 +0100 Subject: [PATCH] Another hackathon --- .gitignore | 3 +- assets/translations/ca.json | 1 - assets/translations/en.json | 5 +- assets/translations/es.json | 5 +- assets/translations/fr.json | 4 +- ios/Runner/Info.plist | 1 + lib/data/models/app_state.dart | 9 +- lib/data/models/app_state.g.dart | 2 + lib/data/models/node_list_cubit.dart | 33 +- lib/data/models/node_manager.dart | 1 + lib/data/models/payment_cubit.dart | 6 +- lib/data/models/transaction.dart | 4 +- lib/data/models/transaction.g.dart | 20 +- lib/data/models/transaction_cubit.dart | 19 +- lib/g1/api.dart | 50 ++- lib/g1/transaction_parser.dart | 4 +- lib/main.dart | 25 +- lib/shared_prefs.dart | 1 - lib/ui/screens/fifth_screen.dart | 32 ++ lib/ui/screens/first_screen.dart | 149 ++++----- lib/ui/screens/fourth_screen.dart | 7 +- lib/ui/screens/pay_form.dart | 21 +- lib/ui/ui_helpers.dart | 14 +- .../widgets/fifth_screen/import_dialog.dart | 2 +- lib/ui/widgets/first_screen/credit_card.dart | 30 +- .../first_screen/pay_contact_search_page.dart | 6 +- .../fourth_screen/transaction_page.dart | 315 ++++++++++-------- .../widgets/third_screen/contacts_page.dart | 6 +- pubspec.lock | 8 + pubspec.yaml | 1 + web/favicon.ico | Bin 0 -> 149845 bytes web/favicon.png | Bin 0 -> 12142 bytes web/icons/Icon-192.png | Bin 0 -> 7911 bytes web/icons/Icon-512.png | Bin 0 -> 33909 bytes web/icons/Icon-maskable-192.png | Bin 0 -> 7911 bytes web/icons/Icon-maskable-512.png | Bin 0 -> 33909 bytes web/index.html | 71 ++++ web/manifest.json | 35 ++ 38 files changed, 547 insertions(+), 343 deletions(-) create mode 100644 web/favicon.ico create mode 100644 web/favicon.png create mode 100644 web/icons/Icon-192.png create mode 100644 web/icons/Icon-512.png create mode 100644 web/icons/Icon-maskable-192.png create mode 100644 web/icons/Icon-maskable-512.png create mode 100644 web/index.html create mode 100644 web/manifest.json diff --git a/.gitignore b/.gitignore index 603d6ca8..5615bc8b 100644 --- a/.gitignore +++ b/.gitignore @@ -43,6 +43,5 @@ app.*.map.json /android/app/debug /android/app/profile /android/app/release -web build.sh -linux/ \ No newline at end of file +linux/ diff --git a/assets/translations/ca.json b/assets/translations/ca.json index f5184ee4..a475ce92 100644 --- a/assets/translations/ca.json +++ b/assets/translations/ca.json @@ -56,7 +56,6 @@ "data_load_error": "Error en carregar les dades", "add_contact": "Afegeix el contacte", "contact_added": "Contacte afegit", - "no_transactions": "Encara no tens cap transacció", "qr-scanner-title": "Escaneja el QR d'algú", "copy_contact_key": "Copia", "nothing_found": "No s'ha trobat res", diff --git a/assets/translations/en.json b/assets/translations/en.json index 98e2c415..c44742e6 100644 --- a/assets/translations/en.json +++ b/assets/translations/en.json @@ -56,7 +56,7 @@ "data_load_error": "Error loading data", "add_contact": "Add contact", "contact_added": "Contact added", - "no_transactions": "You don't have any transaction yet", + "no_transactions": "This wallet has no balance. Start by offering your services in Äž1 markets, for example, to receive your first income.", "qr-scanner-title": "Scan the QR of someone", "copy_contact_key": "Copy", "nothing_found": "Nothing found", @@ -88,5 +88,6 @@ "please_confirm_sent_desc": "Please confirm that you wish to send {amount} Äž1 to {to}", "yes_sent": "YES, SEND IT", "receive_g1": "Receive Äž1", - "insufficient balance": "Oops, insufficient balance to pay this" + "insufficient balance": "Oops, insufficient balance to pay this", + "language_switch_title": "Select your language" } diff --git a/assets/translations/es.json b/assets/translations/es.json index 2a788d81..082d49fc 100644 --- a/assets/translations/es.json +++ b/assets/translations/es.json @@ -56,7 +56,7 @@ "data_load_error": "Error al cargar los datos", "add_contact": "Añadir contacto", "contact_added": "Contacto añadido", - "no_transactions": "No tiene todavÃa ninguna transacción", + "no_transactions": "Este monedero no tiene saldo. Empieza por ejemplo a ofrecer tus servicios en mercados Äž1 para recibir tus primeros ingresos", "qr-scanner-title": "Escanea el QR de alguien", "copy_contact_key": "Copiar", "nothing_found": "No se ha encontrado nada", @@ -87,5 +87,6 @@ "please_confirm_sent_desc": "Por favor confirma que quieres enviar {amount} Äž1 a {to}", "yes_sent": "SÃ, ENVÃALO", "receive_g1": "Recibe Junas", - "insufficient balance": "Upps, balance insuficiente para hacer este pago" + "insufficient balance": "Upps, balance insuficiente para hacer este pago", + "language_switch_title": "Selecciona tu idioma" } diff --git a/assets/translations/fr.json b/assets/translations/fr.json index 6a0f5cee..165273fc 100644 --- a/assets/translations/fr.json +++ b/assets/translations/fr.json @@ -19,7 +19,7 @@ "g1_form_pay_hint": "Entrez une description (facultatif)", "code_card_title": "Dépôt de code", "intro_1_title": "Bienvenue dans notre portefeuille Äž1!", - "intro_1_description": "Avec ce portefeuille, vous pouvez facilement et en toute sécurité stocker, envoyer et recevoir de la monnaie Äž1 (également connue sous le nom de 'Juin').", + "intro_1_description": "Avec ce portefeuille, vous pouvez facilement et en toute sécurité stocker, envoyer et recevoir de la monnaie Äž1 (également connue sous le nom de 'June').", "intro_2_title": "Une monnaie numérique libre créée par le peuple, pour le peuple", "intro_2_description": "Äž1 ne dépend d'aucun gouvernement ou entreprise et est écologique (car elle consomme peu d'énergie), transparente et équitable pour tous.", "intro_3_title": "La monnaie Äž1 fonctionne sur le réseau Duniter", @@ -63,4 +63,4 @@ "intro_some_pattern_to_export": "Motif pour importer/exporter votre portefeuille", "confirm_pattern": "Confirmer le motif", "draw_pattern": "Dessiner le motif" -} \ No newline at end of file +} diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist index 69c8dbd1..cb695055 100644 --- a/ios/Runner/Info.plist +++ b/ios/Runner/Info.plist @@ -46,6 +46,7 @@ <string>en</string> <string>es</string> <string>fr</string> + <string>ca</string> </array> <key>LSApplicationQueriesSchemes</key> <array> diff --git a/lib/data/models/app_state.dart b/lib/data/models/app_state.dart index 76c8b2ca..99d588d4 100644 --- a/lib/data/models/app_state.dart +++ b/lib/data/models/app_state.dart @@ -11,6 +11,7 @@ class AppState extends Equatable implements IsJsonSerializable<AppState> { this.introViewed = false, this.warningViewed = false, this.expertMode = false, + this.locale = 'en', }); factory AppState.fromJson(Map<String, dynamic> json) => @@ -19,16 +20,19 @@ class AppState extends Equatable implements IsJsonSerializable<AppState> { final bool introViewed; final bool warningViewed; final bool expertMode; + final String locale; AppState copyWith({ bool? introViewed, bool? warningViewed, bool? expertMode, + String? locale, }) { return AppState( introViewed: introViewed ?? this.introViewed, warningViewed: warningViewed ?? this.warningViewed, - expertMode: expertMode ?? this.expertMode); + expertMode: expertMode ?? this.expertMode, + locale: locale ?? this.locale); } @override @@ -38,5 +42,6 @@ class AppState extends Equatable implements IsJsonSerializable<AppState> { Map<String, dynamic> toJson() => _$AppStateToJson(this); @override - List<Object?> get props => <Object>[introViewed, warningViewed, expertMode]; + List<Object?> get props => + <Object>[introViewed, warningViewed, expertMode, locale]; } diff --git a/lib/data/models/app_state.g.dart b/lib/data/models/app_state.g.dart index dca06c2f..8e1120d5 100644 --- a/lib/data/models/app_state.g.dart +++ b/lib/data/models/app_state.g.dart @@ -10,10 +10,12 @@ AppState _$AppStateFromJson(Map<String, dynamic> json) => AppState( introViewed: json['introViewed'] as bool? ?? false, warningViewed: json['warningViewed'] as bool? ?? false, expertMode: json['expertMode'] as bool? ?? false, + locale: json['locale'] as String? ?? 'en', ); Map<String, dynamic> _$AppStateToJson(AppState instance) => <String, dynamic>{ 'introViewed': instance.introViewed, 'warningViewed': instance.warningViewed, 'expertMode': instance.expertMode, + 'locale': instance.locale, }; diff --git a/lib/data/models/node_list_cubit.dart b/lib/data/models/node_list_cubit.dart index 2136aea8..c6e213ac 100644 --- a/lib/data/models/node_list_cubit.dart +++ b/lib/data/models/node_list_cubit.dart @@ -6,34 +6,6 @@ import 'node_list_state.dart'; class NodeListCubit extends HydratedCubit<NodeListState> { NodeListCubit() : super(NodeListState()); - void addDuniterNode(Node node) { - if (!_find(node)) { - // Does not exists, so add it - emit(state.copyWith(duniterNodes: <Node>[...state.duniterNodes, node])); - } else { - // it exists - updateDuniterNode(node); - } - } - - bool _find(Node node) => state.duniterNodes.contains(node); - - void insertDuniterNode(Node node) { - if (!_find(node)) { - emit(state.copyWith(duniterNodes: <Node>[node, ...state.duniterNodes])); - } else { - // it exists - updateDuniterNode(node); - } - } - - void updateDuniterNode(Node updatedNode) { - final List<Node> updatedDuniterNodes = state.duniterNodes.map((Node n) { - return n.url == updatedNode.url ? updatedNode : n; - }).toList(); - emit(state.copyWith(duniterNodes: updatedDuniterNodes)); - } - void setDuniterNodes(List<Node> nodes) { emit(state.copyWith(duniterNodes: nodes)); } @@ -42,9 +14,8 @@ class NodeListCubit extends HydratedCubit<NodeListState> { emit(state.copyWith(cesiumPlusNodes: nodes)); } - void addCesiumPlusNode(Node node) { - emit(state - .copyWith(cesiumPlusNodes: <Node>[...state.cesiumPlusNodes, node])); + void setGvaNodes(List<Node> nodes) { + emit(state.copyWith(gvaNodes: nodes)); } List<Node> get duniterNodes => state.duniterNodes; diff --git a/lib/data/models/node_manager.dart b/lib/data/models/node_manager.dart index ccf9e382..4f2383e7 100644 --- a/lib/data/models/node_manager.dart +++ b/lib/data/models/node_manager.dart @@ -119,5 +119,6 @@ class NodeManagerObserver { void update(NodeManager nodeManager) { cubit.setDuniterNodes(nodeManager.duniterNodes); cubit.setCesiumPlusNodes(nodeManager.cesiumPlusNodes); + cubit.setGvaNodes(nodeManager.gvaNodes); } } diff --git a/lib/data/models/payment_cubit.dart b/lib/data/models/payment_cubit.dart index 43f04844..18481227 100644 --- a/lib/data/models/payment_cubit.dart +++ b/lib/data/models/payment_cubit.dart @@ -29,7 +29,7 @@ class PaymentCubit extends HydratedCubit<PaymentState> { void selectKeyAmount(String publicKey, double amount) { final PaymentState newState = - PaymentState(publicKey: publicKey, amount: amount); + PaymentState(publicKey: publicKey, amount: amount); emit(newState); } @@ -72,7 +72,7 @@ class PaymentCubit extends HydratedCubit<PaymentState> { emit(newState); } - void setDescription(String description) { - emit(state.copyWith(comment: description)); + void setComment(String comment) { + emit(state.copyWith(comment: comment)); } } diff --git a/lib/data/models/transaction.dart b/lib/data/models/transaction.dart index 4218a9e0..9fec0435 100644 --- a/lib/data/models/transaction.dart +++ b/lib/data/models/transaction.dart @@ -30,7 +30,7 @@ class Transaction extends Equatable { @JsonKey(fromJson: uIntFromList, toJson: uIntToList) final Uint8List? toAvatar; final String? toNick; - final int amount; + final double amount; @JsonKey(fromJson: uIntFromList, toJson: uIntToList) final Uint8List? fromAvatar; final String? fromNick; @@ -65,7 +65,7 @@ class TransactionsAndBalanceState extends Equatable { factory TransactionsAndBalanceState.fromJson(Map<String, dynamic> json) => _$TransactionsAndBalanceStateFromJson(json); final List<Transaction> transactions; - final int balance; + final double balance; final DateTime lastChecked; Map<String, dynamic> toJson() => _$TransactionsAndBalanceStateToJson(this); diff --git a/lib/data/models/transaction.g.dart b/lib/data/models/transaction.g.dart index 992e707b..62df6223 100644 --- a/lib/data/models/transaction.g.dart +++ b/lib/data/models/transaction.g.dart @@ -11,7 +11,7 @@ abstract class _$TransactionCWProxy { Transaction to(String to); - Transaction amount(int amount); + Transaction amount(double amount); Transaction comment(String comment); @@ -34,7 +34,7 @@ abstract class _$TransactionCWProxy { Transaction call({ String? from, String? to, - int? amount, + double? amount, String? comment, DateTime? time, Uint8List? toAvatar, @@ -57,7 +57,7 @@ class _$TransactionCWProxyImpl implements _$TransactionCWProxy { Transaction to(String to) => this(to: to); @override - Transaction amount(int amount) => this(amount: amount); + Transaction amount(double amount) => this(amount: amount); @override Transaction comment(String comment) => this(comment: comment); @@ -108,7 +108,7 @@ class _$TransactionCWProxyImpl implements _$TransactionCWProxy { amount: amount == const $CopyWithPlaceholder() || amount == null ? _value.amount // ignore: cast_nullable_to_non_nullable - : amount as int, + : amount as double, comment: comment == const $CopyWithPlaceholder() || comment == null ? _value.comment // ignore: cast_nullable_to_non_nullable @@ -146,7 +146,7 @@ extension $TransactionCopyWith on Transaction { abstract class _$TransactionsAndBalanceStateCWProxy { TransactionsAndBalanceState transactions(List<Transaction> transactions); - TransactionsAndBalanceState balance(int balance); + TransactionsAndBalanceState balance(double balance); TransactionsAndBalanceState lastChecked(DateTime lastChecked); @@ -158,7 +158,7 @@ abstract class _$TransactionsAndBalanceStateCWProxy { /// ```` TransactionsAndBalanceState call({ List<Transaction>? transactions, - int? balance, + double? balance, DateTime? lastChecked, }); } @@ -175,7 +175,7 @@ class _$TransactionsAndBalanceStateCWProxyImpl this(transactions: transactions); @override - TransactionsAndBalanceState balance(int balance) => this(balance: balance); + TransactionsAndBalanceState balance(double balance) => this(balance: balance); @override TransactionsAndBalanceState lastChecked(DateTime lastChecked) => @@ -203,7 +203,7 @@ class _$TransactionsAndBalanceStateCWProxyImpl balance: balance == const $CopyWithPlaceholder() || balance == null ? _value.balance // ignore: cast_nullable_to_non_nullable - : balance as int, + : balance as double, lastChecked: lastChecked == const $CopyWithPlaceholder() || lastChecked == null ? _value.lastChecked @@ -227,7 +227,7 @@ extension $TransactionsAndBalanceStateCopyWith on TransactionsAndBalanceState { Transaction _$TransactionFromJson(Map<String, dynamic> json) => Transaction( from: json['from'] as String, to: json['to'] as String, - amount: json['amount'] as int, + amount: (json['amount'] as num).toDouble(), comment: json['comment'] as String, time: DateTime.parse(json['time'] as String), toAvatar: uIntFromList(json['toAvatar'] as List<int>), @@ -255,7 +255,7 @@ TransactionsAndBalanceState _$TransactionsAndBalanceStateFromJson( transactions: (json['transactions'] as List<dynamic>) .map((e) => Transaction.fromJson(e as Map<String, dynamic>)) .toList(), - balance: json['balance'] as int, + balance: (json['balance'] as num).toDouble(), lastChecked: DateTime.parse(json['lastChecked'] as String), ); diff --git a/lib/data/models/transaction_cubit.dart b/lib/data/models/transaction_cubit.dart index 0f2ea856..6e628245 100644 --- a/lib/data/models/transaction_cubit.dart +++ b/lib/data/models/transaction_cubit.dart @@ -19,28 +19,19 @@ class TransactionsCubit extends HydratedCubit<TransactionsAndBalanceState> { final TransactionsAndBalanceState currentState = state; final List<Transaction> newTransactions = List<Transaction>.of(currentState.transactions)..add(transaction); - final int newBalance = currentState.balance + transaction.amount; + final double newBalance = currentState.balance + transaction.amount; emit(currentState.copyWith( transactions: newTransactions, balance: newBalance)); } - void updateTransactions(List<Transaction> newTransactions, int newBalance) { + void updateTransactions( + List<Transaction> newTransactions, double newBalance) { emit(state.copyWith(transactions: newTransactions, balance: newBalance)); } Future<void> fetchTransactions(NodeListCubit cubit) async { - // Future<TransactionsAndBalance> _loadTransactions(NodeListCubit cubit) async { - // carga de datos asÃncrona - // ... - // disabled, as we have to change the nodes - // https://g1.asycn.io/gva - // https://duniter.pini.fr/gva - /* Gva(node: 'https://g1.asycn.io/gva') - .balance(SharedPreferencesHelper().getPubKey()) - .then((double currentBal) => setState(() { - _balanceAmount = currentBal; - })); */ logger('Loading transactions'); + logger('GVA balance: ${gvaBalance()}'); final String txData = txDebugging ? await getTxHistory('6DrGg8cftpkgffv4Y4Lse9HSjgc8coEQor3yvMPHAnVH') : await getTxHistory(SharedPreferencesHelper().getPubKey()); @@ -61,7 +52,7 @@ class TransactionsCubit extends HydratedCubit<TransactionsAndBalanceState> { List<Transaction> get transactions => state.transactions; - int get balance => state.balance; + double get balance => state.balance; DateTime get lastChecked => state.lastChecked; } diff --git a/lib/g1/api.dart b/lib/g1/api.dart index cfe6dcf5..8773f85a 100644 --- a/lib/g1/api.dart +++ b/lib/g1/api.dart @@ -405,17 +405,11 @@ Future<http.Response> _requestWithRetry( Future<String> pay( {required String to, required double amount, String? comment}) async { - final List<Node> nodes = nodesWorkingList(NodeType.gva); - if (nodes.isNotEmpty) { - // reorder list to use others - nodes.shuffle(); - + final String output = getGvaNode(); + if (Uri.tryParse(output) != null) { + final String node = output; try { - // Reference of working proxy 'https://g1demo.comunes.net/proxy/g1v1.p2p.legal/gva/'; - final String node = - 'https://g1demo.comunes.net/proxy/${nodes.first.url.replaceFirst('https://', '').replaceFirst('http://', '')}/'; final Gva gva = Gva(node: node); - logger('Trying $node to get balance'); final CesiumWallet wallet = await SharedPreferencesHelper().getWallet(); logger('Current balance ${await gva.balance(wallet.pubkey)}'); @@ -430,11 +424,45 @@ Future<String> pay( logger('GVA replied with "$response"'); return response; } catch (e, stacktrace) { - // move logger outside main logger(e); logger(stacktrace); return "Oops! the payment failed. Something didn't work as expected"; } } - return 'Sorry: I cannot find a working node to send the transaction'; + return output; +} + +String getGvaNode() { + final List<Node> nodes = nodesWorkingList(NodeType.gva); + if (nodes.isNotEmpty) { +// reorder list to use others + nodes.shuffle(); +// Reference of working proxy 'https://g1demo.comunes.net/proxy/g1v1.p2p.legal/gva/'; + final String node = + 'https://g1demo.comunes.net/proxy/${nodes.first.url.replaceFirst('https://', '').replaceFirst('http://', '')}/'; + return node; + } else { + return 'Sorry: I cannot find a working node to send the transaction'; + } +} + +Future<double> gvaBalance() async { + final String output = getGvaNode(); + if (Uri.tryParse(output) != null) { + final String node = output; + try { + final Gva gva = Gva(node: node); + logger('Trying $node to get balance'); + final CesiumWallet wallet = await SharedPreferencesHelper().getWallet(); + final double balance = await gva.balance(wallet.pubkey); + logger('Current balance $balance'); + return balance; + } catch (e, stacktrace) { + // move logger outside main + logger(e); + logger(stacktrace); + throw Exception('Oops! failed to obtain balance'); + } + } + throw Exception('Sorry: I cannot find a working node to get your balance'); } diff --git a/lib/g1/transaction_parser.dart b/lib/g1/transaction_parser.dart index dd021a8c..cfcbdc43 100644 --- a/lib/g1/transaction_parser.dart +++ b/lib/g1/transaction_parser.dart @@ -10,14 +10,14 @@ TransactionsAndBalanceState transactionParser(String txData) { final String pubKey = parsedTxData['pubkey'] as String; final List<dynamic> listReceived = (parsedTxData['history'] as Map<String, dynamic>)['received'] as List<dynamic>; - int balance = 0; + double balance = 0; final List<Transaction> tx = <Transaction>[]; for (final dynamic receivedRaw in listReceived) { final Map<String, dynamic> received = receivedRaw as Map<String, dynamic>; final int timestamp = received['blockstampTime'] as int; final String comment = received['comment'] as String; final List<dynamic> outputs = received['outputs'] as List<dynamic>; - final int amount = int.parse((outputs[0] as String).split(':')[0]); + final double amount = double.parse((outputs[0] as String).split(':')[0]); final String? address1 = exp.firstMatch(outputs[0] as String)!.group(1); final String? address2 = exp.firstMatch(outputs[1] as String)!.group(1); if (pubKey == address1) { diff --git a/lib/main.dart b/lib/main.dart index 85cc6fb8..d24385f3 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -78,6 +78,7 @@ void main() async { Locale('en'), Locale('es'), Locale('fr'), + Locale('ca'), ], fallbackLocale: const Locale('en'), useFallbackTranslations: true, @@ -144,7 +145,8 @@ class _AppIntro extends State<AppIntro> { createPageViewModel( 'intro_${i}_title', 'intro_${i}_description', - 'assets/img/undraw_intro_$i.png'), + 'assets/img/undraw_intro_$i.png', + context), ], onDone: () => _onIntroEnd(buildContext), showSkipButton: true, @@ -169,15 +171,26 @@ class _AppIntro extends State<AppIntro> { } PageViewModel createPageViewModel( - String title, String body, String imageAsset) { + String title, String body, String imageAsset, BuildContext context) { + final ColorScheme colorScheme = Theme.of(context).colorScheme; + final TextStyle titleStyle = TextStyle( + color: colorScheme.primary, + fontWeight: FontWeight.bold, + fontSize: 24.0, + ); + final TextStyle bodyStyle = TextStyle( + color: colorScheme.onSurface, + fontSize: 18.0, + ); + return PageViewModel( title: tr(title), body: tr(body), image: Image.asset(imageAsset), - decoration: const PageDecoration( - pageColor: Colors.white, - bodyTextStyle: TextStyle(fontSize: 18), - titleTextStyle: TextStyle(fontSize: 24, fontWeight: FontWeight.bold), + decoration: PageDecoration( + titleTextStyle: titleStyle, + bodyTextStyle: bodyStyle, + pageColor: colorScheme.background, ), ); } diff --git a/lib/shared_prefs.dart b/lib/shared_prefs.dart index 20401c20..780f5612 100644 --- a/lib/shared_prefs.dart +++ b/lib/shared_prefs.dart @@ -82,7 +82,6 @@ class SharedPreferencesHelper { String getPubKey() { // At this point should exists final String? pubKey = _prefs.getString(_pubKey); - logger('Public key: $pubKey'); return pubKey!; } diff --git a/lib/ui/screens/fifth_screen.dart b/lib/ui/screens/fifth_screen.dart index 98e19794..40016920 100644 --- a/lib/ui/screens/fifth_screen.dart +++ b/lib/ui/screens/fifth_screen.dart @@ -28,6 +28,38 @@ class FifthScreen extends StatelessWidget { padding: const EdgeInsets.symmetric(horizontal: 16), physics: const BouncingScrollPhysics(), children: <Widget>[ + const SizedBox(height: 10), + DropdownButtonFormField<Locale>( + value: context.locale, + decoration: InputDecoration( + labelText: tr('language_switch_title'), + icon: const Icon(Icons.language), + border: const OutlineInputBorder(), + ), + onChanged: (Locale? newLocale) { + context.setLocale(newLocale!); + }, + items: const <DropdownMenuItem<Locale>>[ + DropdownMenuItem<Locale>( + value: Locale('ca'), + child: Text('Català '), + ), + DropdownMenuItem<Locale>( + value: Locale('en'), + child: Text('English'), + ), + DropdownMenuItem<Locale>( + value: Locale('es'), + child: Text('Español'), + ), + DropdownMenuItem<Locale>( + value: Locale('fr'), + child: Text('Français'), + ), + + // Add more DropdownMenuItem for more languages + ], + ), const TextDivider(text: 'key_tools_title'), GridView.count( physics: const NeverScrollableScrollPhysics(), diff --git a/lib/ui/screens/first_screen.dart b/lib/ui/screens/first_screen.dart index ddd1b720..74ba6f2d 100644 --- a/lib/ui/screens/first_screen.dart +++ b/lib/ui/screens/first_screen.dart @@ -3,6 +3,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import '../../data/models/app_cubit.dart'; +import '../../data/models/app_state.dart'; import '../../data/models/payment_cubit.dart'; import '../../data/models/payment_state.dart'; import '../widgets/bottom_widget.dart'; @@ -20,94 +21,66 @@ class FirstScreen extends StatefulWidget { class _FirstScreenState extends State<FirstScreen> { @override - Widget build(BuildContext context) { - WidgetsBinding.instance.addPostFrameCallback((_) async { - if (!context.read<AppCubit>().isWarningViewed) { - ScaffoldMessenger.of(context).showSnackBar( - SnackBar( - content: Text(tr('demo_desc')), - action: SnackBarAction( - label: 'OK', - onPressed: () { - ScaffoldMessenger.of(context).hideCurrentSnackBar(); - context.read<AppCubit>().warningViewed(); - }, - ), - ), - ); - } - }); - return BlocBuilder<PaymentCubit, PaymentState>( - builder: (BuildContext context, PaymentState state) => - Stack(children: <Widget>[ - Scaffold( - appBar: AppBar(title: Text(tr('credit_card_title'))), - drawer: const CardDrawer(), - body: ListView( - padding: const EdgeInsets.symmetric(horizontal: 16), - //physics: const AlwaysScrollableScrollPhysics(), - //controller: _controller, - // shrinkWrap: true, - children: <Widget>[ - CreditCard(), - const SizedBox(height: 8), - Padding( - padding: const EdgeInsets.symmetric(horizontal: 24), - child: Divider( - color: Theme.of(context) - .colorScheme - .onBackground - .withOpacity(.4), + Widget build(BuildContext context) => + BlocBuilder<AppCubit, AppState>( + builder: (BuildContext context, AppState state) { + WidgetsBinding.instance.addPostFrameCallback((_) async { + if (!state.warningViewed) { + ScaffoldMessenger.of(context).showSnackBar( + SnackBar( + content: Text(tr('demo_desc')), + action: SnackBarAction( + label: 'OK', + onPressed: () { + ScaffoldMessenger.of(context).hideCurrentSnackBar(); + context.read<AppCubit>().warningViewed(); + }, + ), + ), + ); + } + }); + return BlocBuilder<PaymentCubit, PaymentState>( + builder: (BuildContext context, PaymentState state) => + Stack(children: <Widget>[ + Scaffold( + appBar: AppBar(title: Text(tr('credit_card_title'))), + drawer: const CardDrawer(), + body: ListView( + padding: const EdgeInsets.symmetric( + horizontal: 16), + //physics: const AlwaysScrollableScrollPhysics(), + //controller: _controller, + // shrinkWrap: true, + children: <Widget>[ + CreditCard(), + const SizedBox(height: 8), + Padding( + padding: const EdgeInsets.symmetric( + horizontal: 24), + child: Divider( + color: Theme + .of(context) + .colorScheme + .onBackground + .withOpacity(.4), + ), + ), + const SizedBox(height: 10), + const PayContactSearchButton(), + const SizedBox(height: 10), + const PayForm(), + const BottomWidget() + ])), + Visibility( + visible: state.status == PaymentStatus.sending, + child: Container( + color: Colors.black.withOpacity(0.5), + child: const Center( + child: CircularProgressIndicator(), ), ), - const SizedBox(height: 10), - const PayContactSearchButton(), - const SizedBox(height: 10), - const PayForm(), - const BottomWidget() - ])), - Visibility( - visible: state.status == PaymentStatus.sending, - child: Container( - color: Colors.black.withOpacity(0.5), - child: const Center( - child: CircularProgressIndicator(), - ), - ), - ) - ])); - } + ) + ])); + }); } -/* -Scaffold( - appBar: AppBar( - leading: IconButton( - icon: Icon(Icons.menu), - onPressed: () => Scaffold.of(context).openDrawer(), - ), - title: Text('My App'), - ), - drawerEnableOpenDragGesture: true, - drawer: CustomDrawer(), - body: // ... -); - -class Screen1 extends StatelessWidget { - const Screen1({Key? key}) : super(key: key); - - @override - Widget build(BuildContext context) { - return Scaffold( - appBar: AppBar(title: Text('Screen 1')), - drawer: CustomDrawer(), - body: Center( - child: ElevatedButton( - child: Text('Open Drawer'), - onPressed: () { - Scaffold.of(context).openDrawer(); - }, - ), - ), - ); - } -} */ diff --git a/lib/ui/screens/fourth_screen.dart b/lib/ui/screens/fourth_screen.dart index 680ca6ae..7a67c4b0 100644 --- a/lib/ui/screens/fourth_screen.dart +++ b/lib/ui/screens/fourth_screen.dart @@ -1,7 +1,5 @@ -import 'package:easy_localization/easy_localization.dart'; import 'package:flutter/material.dart'; -import '../widgets/card_drawer.dart'; import '../widgets/fourth_screen/transaction_page.dart'; class FourthScreen extends StatelessWidget { @@ -9,9 +7,6 @@ class FourthScreen extends StatelessWidget { @override Widget build(BuildContext context) { - return Scaffold( - appBar: AppBar(title: Text(tr('transactions'))), - drawer: const CardDrawer(), - body: const TransactionsAndBalanceWidget()); + return const TransactionsAndBalanceWidget(); } } diff --git a/lib/ui/screens/pay_form.dart b/lib/ui/screens/pay_form.dart index 3a629950..af51e2f6 100644 --- a/lib/ui/screens/pay_form.dart +++ b/lib/ui/screens/pay_form.dart @@ -1,5 +1,6 @@ import 'package:easy_localization/easy_localization.dart'; import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import '../../data/models/payment_cubit.dart'; @@ -36,9 +37,12 @@ class _PayFormState extends State<PayForm> { const SizedBox(height: 10.0), TextField( controller: _commentController, + inputFormatters: <TextInputFormatter>[ + Iso88591TextInputFormatter() + ], onChanged: (String? value) { if (value != null) { - context.read<PaymentCubit>().setDescription(value); + context.read<PaymentCubit>().setComment(value); } }, decoration: InputDecoration( @@ -139,3 +143,18 @@ class _PayFormState extends State<PayForm> { ); } } + +class Iso88591TextInputFormatter extends TextInputFormatter { + static final RegExp _iso88591RegExp = RegExp('^[\u0000-\u00FF]*\$'); + static final RegExp _englishRegExp = RegExp('^[\u0000-\u007F]*\$'); + + @override + TextEditingValue formatEditUpdate( + TextEditingValue oldValue, TextEditingValue newValue) { + if (_englishRegExp.hasMatch(newValue.text)) { + return newValue; + } else { + return oldValue; + } + } +} diff --git a/lib/ui/ui_helpers.dart b/lib/ui/ui_helpers.dart index da2c3924..b3f5a916 100644 --- a/lib/ui/ui_helpers.dart +++ b/lib/ui/ui_helpers.dart @@ -70,8 +70,14 @@ Widget humanizePubKeyAsWidget(String pubKey) => Text( ), ); -Color tileColor(int index, [bool inverse = false]) => - (inverse ? index.isOdd : index.isEven) ? Colors.grey[200]! : Colors.white; +Color tileColor(int index, BuildContext context, [bool inverse = false]) { + final ColorScheme colorScheme = Theme.of(context).colorScheme; + final Color selectedColor = colorScheme.primary.withOpacity(0.1); + final Color unselectedColor = colorScheme.surface; + return (inverse ? index.isOdd : index.isEven) + ? selectedColor + : unselectedColor; +} String? humanizeTime(DateTime time, String locale) => timeago.format(time, locale: locale, clock: DateTime.now()); @@ -85,3 +91,7 @@ bool bigScreen(BuildContext context) => bool smallScreen(BuildContext context) => MediaQuery.of(context).size.width <= smallScreenWidth; + +String formatAmount(double amount) => amount.toStringAsFixed(2); + +String formatKAmount(double amount) => formatAmount(amount / 100); diff --git a/lib/ui/widgets/fifth_screen/import_dialog.dart b/lib/ui/widgets/fifth_screen/import_dialog.dart index b113eeef..9d4bdc89 100644 --- a/lib/ui/widgets/fifth_screen/import_dialog.dart +++ b/lib/ui/widgets/fifth_screen/import_dialog.dart @@ -75,7 +75,7 @@ class _ImportDialogState extends State<ImportDialog> { context.replaceSnackbar( content: Text( tr('wallet_imported'), - style: const TextStyle(color: Colors.blue), + style: const TextStyle(color: Colors.white), ), ); } diff --git a/lib/ui/widgets/first_screen/credit_card.dart b/lib/ui/widgets/first_screen/credit_card.dart index 07b82d03..8e3be06b 100644 --- a/lib/ui/widgets/first_screen/credit_card.dart +++ b/lib/ui/widgets/first_screen/credit_card.dart @@ -158,17 +158,25 @@ class CreditCard extends StatelessWidget { child: Padding( padding: const EdgeInsets.all(16.0), child: GestureDetector( - onTap: () => copyPublicKeyToClipboard(context), - child: Column(children: <Widget>[ - Text(tr('show_qr_to_client')), - QrImage( - data: publicKey, - size: MediaQuery.of(context).size.width * 0.8, - gapless: false, - foregroundColor: Colors.brown, - ), - ]), - )))); + onTap: () => copyPublicKeyToClipboard(context), + child: Container( + color: Theme.of(context).brightness == Brightness.dark + ? Colors.grey[900] + : Colors.grey[100], + padding: const EdgeInsets.all(16.0), + child: Column(children: <Widget>[ + Text(tr('show_qr_to_client')), + QrImage( + data: publicKey, + size: MediaQuery.of(context).size.width * 0.8, + gapless: false, + foregroundColor: Theme.of(context).brightness == + Brightness.dark + ? Colors.white + : Colors.black, + ), + ]), + ))))); }, ); } diff --git a/lib/ui/widgets/first_screen/pay_contact_search_page.dart b/lib/ui/widgets/first_screen/pay_contact_search_page.dart index c55905d9..31adea51 100644 --- a/lib/ui/widgets/first_screen/pay_contact_search_page.dart +++ b/lib/ui/widgets/first_screen/pay_contact_search_page.dart @@ -200,7 +200,7 @@ class _PayContactSearchPageState extends State<PayContactSearchPage> { return ListTile( title: Text(title), subtitle: subtitle, - tileColor: tileColor(index), + tileColor: tileColor(index, context), onTap: () { context.read<PaymentCubit>().selectUser(pubKey, contact.nick ?? contact.name, hasAvatar ? contact.avatar : null); @@ -208,8 +208,8 @@ class _PayContactSearchPageState extends State<PayContactSearchPage> { }, leading: avatar( contact.avatar, - bgColor: tileColor(index), - color: tileColor(index, true), + bgColor: tileColor(index, context), + color: tileColor(index, context, true), ), trailing: BlocBuilder<ContactsCubit, ContactsState>( builder: (BuildContext context, ContactsState state) { diff --git a/lib/ui/widgets/fourth_screen/transaction_page.dart b/lib/ui/widgets/fourth_screen/transaction_page.dart index 71375736..6a596a74 100644 --- a/lib/ui/widgets/fourth_screen/transaction_page.dart +++ b/lib/ui/widgets/fourth_screen/transaction_page.dart @@ -11,6 +11,7 @@ import '../../../data/models/transaction.dart'; import '../../../data/models/transaction_cubit.dart'; import '../../../shared_prefs.dart'; import '../../ui_helpers.dart'; +import '../card_drawer.dart'; import '../header.dart'; import '../loading_box.dart'; import '../third_screen/contacts_page.dart'; @@ -28,6 +29,9 @@ class _TransactionsAndBalanceWidgetState extends State<TransactionsAndBalanceWidget> with SingleTickerProviderStateMixin { final ScrollController _transScrollController = ScrollController(); + final DraggableScrollableController _draggableScrollableController = + DraggableScrollableController(); + late NodeListCubit nodeListCubit; late TransactionsCubit transCubit; bool isLoading = false; @@ -52,16 +56,20 @@ class _TransactionsAndBalanceWidgetState if (_transScrollController.position.pixels == _transScrollController.position.maxScrollExtent || _transScrollController.offset == 0) { - setState(() { - isLoading = true; - }); - await transCubit.fetchTransactions(nodeListCubit); - setState(() { - isLoading = false; - }); + await _refreshTransactions(); } } + Future<void> _refreshTransactions() async { + setState(() { + isLoading = true; + }); + await transCubit.fetchTransactions(nodeListCubit); + setState(() { + isLoading = false; + }); + } + @override Widget build(BuildContext context) { final String myPubKey = !txDebugging @@ -73,148 +81,181 @@ class _TransactionsAndBalanceWidgetState // TODO(vjrj): Only fetch last transactions and used persisted ones final ContactsCubit contactsCubit = context.read<ContactsCubit>(); final List<Transaction> transactions = transBalanceState.transactions; - final int balance = transBalanceState.balance; + final double balance = transBalanceState.balance; if (!isLoading) { - return Stack(children: <Widget>[ - Column(crossAxisAlignment: CrossAxisAlignment.start, children: < - Widget>[ - /* Container( + return Scaffold( + appBar: AppBar( + title: Text(tr('transactions')), + actions: <Widget>[ + IconButton( + icon: const Icon(Icons.refresh), + onPressed: () { + _refreshTransactions(); + }, + ), + if (!kReleaseMode) + IconButton( + onPressed: () { + if (_draggableScrollableController.size != null) { + _draggableScrollableController.animateTo( + 100, + duration: const Duration(milliseconds: 500), + curve: Curves.easeInOut, + ); + } + }, + icon: const Icon(Icons.savings), + ), + ], + ), + drawer: const CardDrawer(), + body: Stack(children: <Widget>[ + Column(crossAxisAlignment: CrossAxisAlignment.start, children: < + Widget>[ + /* Container( color: Theme.of(context).colorScheme.surfaceVariant, height: 90, width: double.infinity, child: const Padding( padding: EdgeInsets.symmetric(horizontal: 16), child: Header(text: 'transactions'))), */ - Expanded( - child: Padding( - padding: const EdgeInsets.fromLTRB(0, 0, 0, 50), - child: transactions.isEmpty - ? Column(children: const <Widget>[ - NoElements(text: 'no_transactions') - ]) - : ListView.builder( - physics: const AlwaysScrollableScrollPhysics(), - shrinkWrap: true, - controller: _transScrollController, - itemCount: transactions.length, - // Size of elements - // itemExtent: 100, - itemBuilder: (BuildContext context, int index) { - return Slidable( - // Specify a key if the Slidable is dismissible. - key: const ValueKey<int>(0), - // The end action pane is the one at the right or the bottom side. - endActionPane: ActionPane( - motion: const ScrollMotion(), - children: <SlidableAction>[ - SlidableAction( - onPressed: (BuildContext c) { - _addContact(transactions, index, - myPubKey, contactsCubit); - // FIXME i18n - ScaffoldMessenger.of(context) - .showSnackBar( - SnackBar( - content: Text(tr('contact_added')), - ), - ); - }, - backgroundColor: - Theme.of(context).primaryColor, - foregroundColor: Colors.white, - icon: Icons.contacts, - label: tr('add_contact'), + Expanded( + child: Padding( + padding: const EdgeInsets.fromLTRB(0, 0, 0, 50), + child: transactions.isEmpty + ? Column(children: const <Widget>[ + NoElements(text: 'no_transactions') + ]) + : ListView.builder( + physics: const AlwaysScrollableScrollPhysics(), + shrinkWrap: true, + controller: _transScrollController, + itemCount: transactions.length, + // Size of elements + // itemExtent: 100, + itemBuilder: (BuildContext context, int index) { + return Slidable( + // Specify a key if the Slidable is dismissible. + key: const ValueKey<int>(0), + // The end action pane is the one at the right or the bottom side. + endActionPane: ActionPane( + motion: const ScrollMotion(), + children: <SlidableAction>[ + SlidableAction( + onPressed: (BuildContext c) { + _addContact(transactions, index, + myPubKey, contactsCubit); + // FIXME i18n + ScaffoldMessenger.of(context) + .showSnackBar( + SnackBar( + content: + Text(tr('contact_added')), + ), + ); + }, + backgroundColor: + Theme.of(context).primaryColor, + foregroundColor: Colors.white, + icon: Icons.contacts, + label: tr('add_contact'), + ), + ], ), - ], - ), - child: ListTile( - title: Text(tr('transaction_from_to', - namedArgs: <String, String>{ - 'from': humanizeFromToPubKey( - myPubKey, transactions[index].from), - 'to': humanizeFromToPubKey( - myPubKey, transactions[index].to) - })), - subtitle: Column( - crossAxisAlignment: - CrossAxisAlignment.start, - children: <Widget>[ - if (transactions[index] - .comment - .isNotEmpty) - Text( - transactions[index].comment, - style: const TextStyle( - fontStyle: FontStyle.italic, - ), - ), - Text(humanizeTime( - transactions[index].time, - context.locale.toString())!) - ]), - tileColor: tileColor(index), - trailing: Text( - '${transactions[index].amount < 0 ? "" : "+"}${(transactions[index].amount / 100).toStringAsFixed(2)} Äž1', - style: TextStyle( - color: transactions[index].amount < 0 - ? Colors.red - : Colors.blue)), - )); - }, - )), - ) - ]), - Padding( - padding: const EdgeInsets.symmetric(horizontal: 10), - child: DraggableScrollableSheet( - initialChildSize: 0.12, - minChildSize: 0.12, - maxChildSize: 0.9, - builder: (BuildContext context, - ScrollController scrollController) => - Container( - decoration: BoxDecoration( - color: Theme.of(context).colorScheme.inversePrimary, - border: Border.all( + child: ListTile( + title: Text(tr('transaction_from_to', + namedArgs: <String, String>{ + 'from': humanizeFromToPubKey( + myPubKey, + transactions[index].from), + 'to': humanizeFromToPubKey(myPubKey, + transactions[index].to) + })), + subtitle: Column( + crossAxisAlignment: + CrossAxisAlignment.start, + children: <Widget>[ + if (transactions[index] + .comment + .isNotEmpty) + Text( + transactions[index].comment, + style: const TextStyle( + fontStyle: FontStyle.italic, + ), + ), + Text(humanizeTime( + transactions[index].time, + context.locale.toString())!) + ]), + tileColor: tileColor(index, context), + trailing: Text( + '${transactions[index].amount < 0 ? "" : "+"}${(transactions[index].amount / 100).toStringAsFixed(2)} Äž1', + style: TextStyle( + color: + transactions[index].amount < 0 + ? Colors.red + : Colors.blue)), + )); + }, + )), + ) + ]), + Padding( + padding: const EdgeInsets.symmetric(horizontal: 10), + child: DraggableScrollableSheet( + controller: _draggableScrollableController, + initialChildSize: 0.12, + minChildSize: 0.12, + maxChildSize: 0.9, + builder: (BuildContext context, + ScrollController scrollController) => + Container( + decoration: BoxDecoration( color: Theme.of(context).colorScheme.inversePrimary, - width: 3), - borderRadius: const BorderRadius.only( - topLeft: Radius.circular(8), - topRight: Radius.circular(8), - ), - ), - child: Scrollbar( - child: ListView( - controller: scrollController, - children: <Widget>[ - const Padding( - padding: EdgeInsets.symmetric(horizontal: 16), - child: Header( - text: 'balance', - // topPadding: 0, - )), - Padding( - padding: - const EdgeInsets.symmetric(vertical: 10.0), - child: Center( - child: Text( - '${(balance / 100).toStringAsFixed(2)} Äž1', - style: TextStyle( - fontSize: 36.0, - color: balance == 0 - ? Colors.lightBlue - : Colors.lightBlue, - fontWeight: FontWeight.bold), - )), + border: Border.all( + color: Theme.of(context) + .colorScheme + .inversePrimary, + width: 3), + borderRadius: const BorderRadius.only( + topLeft: Radius.circular(8), + topRight: Radius.circular(8), + ), ), - if (!kReleaseMode) TransactionChart() - /*BalanceChart( + child: Scrollbar( + child: ListView( + controller: scrollController, + children: <Widget>[ + const Padding( + padding: + EdgeInsets.symmetric(horizontal: 16), + child: Header( + text: 'balance', + // topPadding: 0, + )), + Padding( + padding: const EdgeInsets.symmetric( + vertical: 10.0), + child: Center( + child: Text( + '${formatKAmount(balance)} Äž1', + style: TextStyle( + fontSize: 36.0, + color: balance == 0 + ? Colors.lightBlue + : Colors.lightBlue, + fontWeight: FontWeight.bold), + )), + ), + if (!kReleaseMode) TransactionChart() + /*BalanceChart( transactions: .transactions),*/ - ], - )), - ))) - ]); + ], + )), + ))) + ])); } else { return const LoadingScreen(); } diff --git a/lib/ui/widgets/third_screen/contacts_page.dart b/lib/ui/widgets/third_screen/contacts_page.dart index b9589f6c..19c0bdd8 100644 --- a/lib/ui/widgets/third_screen/contacts_page.dart +++ b/lib/ui/widgets/third_screen/contacts_page.dart @@ -138,10 +138,10 @@ class _ContactsPageState extends State<ContactsPage> { : null, leading: avatar( contact.avatar, - bgColor: tileColor(index), - color: tileColor(index, true), + bgColor: tileColor(index, context), + color: tileColor(index, context, true), ), - tileColor: tileColor(index), + tileColor: tileColor(index, context), ), ); }, diff --git a/pubspec.lock b/pubspec.lock index e6a83fdc..34bcdc43 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -49,6 +49,14 @@ packages: url: "https://pub.dev" source: hosted version: "2.10.0" + backdrop: + dependency: "direct main" + description: + name: backdrop + sha256: fdef5a7c1b601a20484df607d852757ebc57f4959832ba77cde5e4d736c91900 + url: "https://pub.dev" + source: hosted + version: "0.8.1" bip32_ed25519: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index 33f80a24..b9d39b47 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -62,6 +62,7 @@ dependencies: timeago: ^3.3.0 once: ^1.5.1 pattern_lock: ^2.0.0 + backdrop: ^0.8.1 dev_dependencies: flutter_test: diff --git a/web/favicon.ico b/web/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..02c4440d0e540f7d28fa188e6a47d7c573c5c5ea GIT binary patch literal 149845 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 literal 0 HcmV?d00001 diff --git a/web/favicon.png b/web/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..bc6aa05607752193de7656dc5420aa5d5a12069a GIT binary patch literal 12142 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 Q!cPKdYZ$24sXD&+e{t-y6#xJL literal 0 HcmV?d00001 diff --git a/web/icons/Icon-192.png b/web/icons/Icon-192.png new file mode 100644 index 0000000000000000000000000000000000000000..e58fd125e0483446a22bd4fae74821fe5f38f732 GIT binary patch literal 7911 zcmZ`;byQSev>rf0Qlwky?oR3M?j9rtkZw>)q@+|@YUqXm0f|9DB%Ps$8c<=#0qK16 zTko&;$6NQFyVw2B*>S$L*ID=OonmC5NkT|Z2mk;`w6)YsFmezxh6wO5&-}Q7a*TN7 zp{%bA0JLTj-8$o9-k-T@ndk!m5u5-(Tmk@aje+8J0Dxd&0ASY%0FeCz0MPgs^%%=z zCh%NzHPrwQ|6QNIR_9=l$NpN@fdBw?!G8m5C`XD51L6m1>#O5$<B$NPcs}nkOalN+ zt=ekJW?{<*tKqpte}cD<r=#n8Iy(T*g@H8BB-tK)ntV<xloG$NMZ*3;+r^_z`nZVS zU{g<iY)mg;>i2K<{D~qx&Omu>V9~c$byaN0)&@rglh8Lj96a{c6!U%T#~tS;XKPnm zjUQ}OdV9?6SC1}=cAE~DeHD)WMV?3c)#RJqzl@hY=Aj2A&b%iCX?m0{;Ckq$W+!Gj z@G++2?u-I-h@JV8D#@L3=8?5-`sg6D3l_h;5>IML-TX2&i0PN$+|qudkY0W;>n{)v zn6K1cJ&Qk*WnAg#hX&$1^iSB=Ag`q1H`Y6b*Q^qWob+{jCP8a;YKN!2b6?UkdehyO zpCCn0uZhVvUt2_6j*&?6%c|(u;4YL_^q(;8x_o+pXBl$HUO^IASe05Cx&hM~4Ys+w z`osb9&UQs)MzhOJvpg^(90#Zva?%%{fd<*g5AzP`1saOXZ7fGJn(ZOoh^hr9FDyMk zX@4?n9cS-LX_W}?6G^)#MbDXXl=qFcxRRL^%h__>ywOFcdP&vsqb+TE7tZPl^H%F7 z@*}W|&|Wn%rcMB9HiM-FRqXKFei;(KcmD1PQo1xXNz$g}xude_Q^f+X3Ob9e*G}f( zyrmN-;zgfa;wFV^goUA^=?3gnFrLpdq1;|p5ia*ipy}<*0tj)g77~-jAlWz-By~v2 z`~$knFHa9D<gigIbf*bLoTOA!4`Q8M;V&)EzlEh-K8bm(8H{MUbGhv?@-TQVpC4r! z+$#i!x6ZYb!r!$;>;@GG&0<TxU}mB2Qrchq&2=m{wBm~pf9^x`{bf>em2H)fI?~u# zKvKKbZ7F<J@_eHf*B`*|sLq0O0FxLieWV$L0FQlc|6zt#cr36IcjVLvn<s80o@X9z zZ$@53wn$3!f?i~rbm&@cRKPn=RLw}-aFVxl`W};Q0Ha7VYtGqZ<15w>K76G20zh^y z4!@7!p=VAk+R-rQFohU<s|=+PGELqB0pI=sgvOzg!lGyJ$HK!Z`)=j|3RDA~<(n-@ zdeKH2=Fy9ms5SmB5VPbmcXyrU2cx~`GcivmGJ~`OmecBQi?J6&q!?4!!~~#Mg~=;| zD>jt<(ZkV_A4!@DH&tqITS_~Im%@s9`sZW0Q~bMwtOFeUkvlcbTe^*4Iebfcy2v#% zJH^Irz>Rhi2c1EFO8NuyV^(5zOZI^`hNqdAp8R7m<YU{1?9DrnvS!g<pyO4=QJa6s z`e>|CW7_O~hL<VG{^a`xm>^Usq(Op9Av1e#>HzYZN<r*V53*!xK6?L((mg|=JCW9X ziGgb>$#R($-bx<)XPs|u>IC~X0nL_we?D7H0vX;t6DY(x${GI<g!sX;hQse@Ui>+Y z-IkRwTE!8T3^aNRS}#iv0snGicM!HI;vT0?$FnSrMxRHWkWOB;-`OX)uL>42yRpM{ zkcQ|pEpHJMcFWLLBH?ux0QJ!kFq9l>ElpAFTDI$R=ac57Q1X3u!-1&bCwU>IhWV!S zj())vNnkD40KQgi!oO^#;q7cCvO^1*e?cG|kj@z(o-ee8>!-g>rIdPvw+9?0u`~YD zy+ugH`9`GaX`^06-M=Ftg7qKhDh=d$+aD_2acY(@=h(kk$x=3oR45$N`ri>5lld0- zrTj1_xrSa~$^?^P4f9j*g!}Eyjb|5%U#K7VXe@{)gN$11-^j>=9PQV@;0z{a>(V}2 zdBM9Jr~r(DoL?c1<IA6QDLLR3g1|Dgw=bfAU6l@%|C{C5a_9o_k}^5uOUE8|_f?Dr zV&ZT?Nqke(E?xH(UPjOp2eW)cPqJv3$t6}lBa%f-LE^ms#%3el(Nub*I-ztY<cmIy zXyYg->)rr~*SKr<tBr_sayvAb)PIXm(#Ls<KQ&1s>dDc!D%c=|izz{Ev<F^u3pdQ7 z*03r<u|_E)Eh;qdkDQmTZqP~5I?lzsCd2!_A6A2&L$hFr#D%(B9!1dWkNB3%1tlBr zF94;tihK(JS1FVe(`eOhUU+Z(7AK;7O4O4N%5-U472ENRzW%&%(9a6FaLhOKIJsvZ zEPxp8%-j+}quQoT)1Cjov>l$yR$|lM#+*gY15^dL)WfPzk-yti6|S&QxVL%!6;K@z zTcmBFLriJake^0(3lX)UBP7)c=icmkul%63ZKgzTv`{sKa`P|COp&gyi4RDIN-1^y z=Z?vrWdAgD;bqtdLH)mL-7d||5!lngW1Fb)MH>fMyX$VWnENoD$@<3EoQu|EH9+Y= z&iw~&O>x(L_?z`qw664*y>@inPIFF-To~J5-_)aaqBi7XWd3fZZ=vGkTTqwvr3A79 zYOTGV&PR6gHFUU=XrtG$p?}$^6i98bfaVG-t=-l>tAHK>CCHD~RbMx!x5zHRK=IWw z`cZ0^a|Efs82dgB-Ef|(lB$zEaWCT@rlY&3RC>x7LZBG>kk$Zw>QMRa5Iv=ktDlcj zZrFuP!VA2lXG@XvND5dY<bs@H1mn_gjYE@R>L>aJ`Um>rB9tXWAKc&Y!CC2z6j>7^ z&0))M@b<G+p;amKfzb}9$fc?8z1fb#SMEO;&J_(29-QU?sg=<}OIfaAF45ahJj}A} zbt#KJc3CKzmhPn|rAwYqsZnDa%n-TASv~Ax|LigOKDOb}s=$&617d@jA}83RmcBai z)XGxwwFSOcf#oN`#UF32z?sD9(or2z=C%V=d{vQqDQI>vYEua&!9FhNsG<D4H8-cq zqa4<_skXVtbw;ljKD}|hS0Fc+e}4tLVL*P>oPc#j*$K7m%O~I`#5N@>C&x|wP=X<c zU>h`5iJKeh!e!XBQos@#q{8Jf!DwjhB547^sK(`0)(0_{ZC5s=wYhl0*(xM(#7IIC zr_Lys#X@%81rML}R)9+n5FdXjs-oJ>dYMwg_#-mEUyp`;fj#-CLwnxBMj*OZN5MFd zfNoG|3+FJfBYp>$QxA|{6?J5({(<^2%Mj*xs!DkV^|50?Qf@`Op88Veku5~j=!=lS zk-;t<lxq<4|EyZ}n0!#5&vRXH&A(SBOEF0*#gpPy`CEUJgbSeT^$3$?!o0_&?}<v? z&1*q_c}4JaCTFx1^I%p=N?j#6&h<nqrBXp&{bo=(*+Tt_@Tg%Vh4(Q@+C0Uks=<al za{J9V(;(-P+T+h<?{d%oNuRwS&fiqCSl=U&4%jappHj6EidO%FunFAp<n%M|A+3%9 zDsAO3cK|*#Khu~T-z6COLRSE9JXhsP-O96;KKp<_qU5AYeK<J23VEer0&<x8elreD z{s~=)z4Pe5KZ}mMQhvN4cEL93Ezu_ij}#GR;!_&gB)3m$zhR)?V)oopN8RfUuSy1T z!cu60iJJ}?g3nfUyCYd}{Frh9KUGwvO)qhg(r~|>cAP9~b{ap%wf?SG2VW>X*`ZA2 zNo^$rq3H%1Q)EmReW}!noQl0<qf}&8n8O;ya8|H!H^kt|`Hilz2Ql92hAv@ZrW>-S zEtnS=oUJCKAykr*-KgO{ci<xHhH<vX>$2X-!TbKO7$yY9e>Ztpd|3AE(5n|EnJmiw zRPg9u;)O;}8{=w)BR;7SK&puyR{k4Dx)I@c{X~olo=wc<cVqbStV^ECoUuIO$*g`| zpq-{R3twGc@5p2%E#W~IK+zT?dAc>(?Ue)x+vc;Ao$s*=6>J0>%hS(k|0)p7t`&mr zy+b?qak^Y|p1z2PGrF4UcbppJ9y33E6PS>iE;L|7NLFjl(Q8l*nf{*KS~;;g8o26* z#jcrK6<QOr2IQUG@JVy@;X8gJImf4L&k4Dc=Y<<~!g$6*#fX=ifB27EKIyan!!O$9 zjnwNITMRYu07h)BuWvah%gJK@=)wOaTB%{tTHRlc=9fIY&5hp05|tyLgSCcP`p@e% z+_(m*EEdH{X~^=Mxak7Ncl8Q^Zo|S<wM8%g>Mqa-Z1b-t3LPt+0b*nD0}F^xBR>Yw z{hgQ@I|`|Dg>82f2>wEocvo6Gv<(vF+Z1zCNUVaN4v}pU%D=2;<BL4Nx<7lBQNV_G zUHl|U7z(9xyaENzEAoUlTT)s&Xcv_;$y58(Rb!dH6@HIo$`V`*cXVpT?hYim)7Os@ zmWjQ^n@I!P_&GeY&uTBe&g-T6u91)|OJ3;>elkRc>(`kRd+mVR;{UqbM^3SubTs%T zRZrPq-rxQ_|L*(uppXQ|2D!0Xbubq4o!-Z^QlfohOb&T=O$xwGP-&ly$zns;rFFVB zkO^H1l|N1a4*L*$2|3u~&_MDgalvWCT14D?hj<pLDe_7n<DB4Dig8cBjF)0bW(#Ng zIYo(=nl%3xS_G^NV|FZx<cMl6|DA8_>slS*=A7+~HzCjcGtp{Y2X*08uQ`Tp{Q5pJ z93fPznEO7Kw>%k0&8g1Hxp8|U%^wCL_sv9`ps)2(cNJdqj23CpMNu%Eo7Iv{!x$<9 zXB!_J9@7sM#+On$3_VKnZ_Ix|$o~_4$WPhZuqf47NnB0HlHT%-SoSD((9AbHdPv(k zLXq~Je>QK|t4Ye|b(D?miHa5dE#u73c8(ZB!*Y5~j#yB+8{66H`SU@Dq5?~b321)7 z)Y6}j=rNHnRdB_g$bO7T-a<G`KDZ{gRx{{C(=wcQ?SvN#^Bw)cz;MlE;SPt(WhDIP z8L9dA5;ptp`sYSsGHkrtn*{})n$<QJMAb(+0HRlA;`NB6`B^<yeZ~tftlX(@?AzN- zwJ2E<;{9iFLwS@ae*W5IB?+-Omu=<^Zsck0r;!dY@C{F^XR`Tc{^BIl-KyyVPs3oV z<E!G2%F~0|tB^)8uuVIuHKGvU+w(D7EP<jIWT!t_Ns)w(KMstumgcaY0U^A+ICJ#g zOyWL3^a0i!uj}oZy}?Rl6Q_C=e=?4-r8T8Fcm44s;Kird{mWj9ef9wJnt|&b-$}g< z9@GcD#=nr;x~fF!wlzR~{uKN4R=qK<&=0VPWrjcY-yp<bLBUu#;r@XjQjC@wp~@yW z7*$&n8CT$`Ym>Jk><777kJdPA27<A<Tz%~?yul)dNU{8W@f8^JjmPuEpf>R?-#c$G zleyWyPAg{TC)2U$U<8Y=P8ngO=nTl#+lw>TYvuvlchGSY=^ZM&v%aq;DQBH$0tN$Z z-ghK!A3v~0nM8Ok31)j_KHjjJU@qibm_6mqe`=dJ2W8n94+~%V(mS=blx85vvD>mO zp`ah)Yv>w2<oHp(#98<Eq3MF8hr~C3gmLj~wuHo2<!T*|yk;-)Zo^BJq-J$g84#Xo zyS$w4w6wW8pdVN%PKFcwr#b&5t#eB`srr?lzhx2?%+;zrxM_RacixvPkUq`vc!_FK zQWHPgIP<|9OzVmQ%FP9&q5&2<^$D6Sc-|8iMQ3x%_YKZX)@?_nztV!zWRKPLyXd4U z9|t`pQB0W|tH@&h?j`TG=oLu9C)d3CqwTKdbc>GSMc{tCw-+gg%y~s!>@>cidjy`L zOP;?WwS}kcKx2$#it~rB_ZvzBJdBOYPwJ_R#IDjx`$QT0Ds^}|@j|yEIYNoW<(15Q zWA(H66$UM048=tpsSy2OpbMRp=YbKSZMOapUl>6b?)nZx$n*@OZE9P@HJEyV<qg_L zpSb3cMJPamLbF<h1C-`OAhZ#ANfT9X9R@M?Dw{BxqR0FPd{y1ek>-r+Ib6_VuO*b1 zs4VD?p>pISx}d6>q|FdM*~dFrnAmG7)1OeSSi`T8;T}nPQd^8%BXAs+VpA|mvSjtK zLT8s*W~?ZRUbl+Lw2zBu71TX~o;|7gJ4jnEjeLbd)FCH%k@*^!cn8XWT>3u>5^pE8 z!Di~-AsNaGbkDrc3-y{eByS77EYHd1c|oZC`JQ{Sl!0AHRd02^Id5q>Gxpqm`by09 z;}vG)y3QdtJbDt!=W6&CZ+r>`>AcYpn^kx*S%OLnfZ&no@MR;8&ooOrH*>eR--HCL zvNymDCG``Rn7V%ONJ!S_vsMZWQFN<bs<fYW{(?qG@3AZThjfw1OBa}w_UtaCRn!0U z(J7%gOcSRa?$2%q@wz^c7U~BV6x+@|t;t%pZd@IpMcG2viKkBv?#bEIxkLY$EbfWd zM#j-|*o4tKQYvyaew*LUkm$Ko{t{j=|6T-ZcEZl)vL`71Q~@dDW5nbr?8oN#_3eYm zB(AXjfWu_dPJ>0prtM{ezh>oV@n5P;b27og=iw^eSQG4RIwX{HuRCl-qq=;oeo1+` z(uIBU=G;h&7BVJs;%vFII@#SQtrQZ6h1xosvR6dgUG&6XCzQC~@ET2?a`Y`O^<76L z*j8~-r2pP!UTQ7oFW9x;@YH36u|c<~?yoziySEd!NLOM*WJNJqfd45bO)Y{T793R3 za+qRzHB;_eDA8H-W@~;fRyGR;T%o%4K%KkoNu-ipM^|%9_M8|BiGF2_dJa3%prVKs zXR?tRc5t~tR|}S-24z=j4!RgBN@z<!k7P{ePstJ@Zk6n{_OhpeNU|cobn9gthA%x$ zw~>`KnJO33+TdVl^>H;$p~7ED8-}n4^;JpVU3f$Fpn_huGy7$-R_O$K#-8S+v=IMc zUMvy3tEUzHtcj+!ps9KD!MDU?F4^z^qWo2}%!Y>+1$i!k|801PODyVP<tP-9yH@$W zpAGaMe4{LJxSov?%JU`D5OP=sRYc^lUfEfUd%)xKTZ<5chd=y@9IPz-0+@s+El}Q* zPz7nyz#h<ya(lF;>pqa?BE6U8t$}FL+nt2)<(R^V1bx^8KMW3h_nRvPNG?f<9N^*t z_EaWs;<y93=pCuDh2$V)t_qSa6&=QlZyWQISc!Ejpfz4tPA~FULm+in(%8*IA~Mu6 za&juP5AA&Gw9d5a6#WcUjk<fm_wnU2)rL#FtHxlZZ+;uus$N4=2bL}W`oCG(73c}6 zSyjK|dSIRB@IKB)XP>f460q@F4uovan_PX(SbgeF)n}zDLCG(BQMjXfEjE!7WEP;} zU(lgtm0Lv5_;(J>{BCpkSrql&Focmu0$;1$T!+~GT8CV6OErIu%GiD*g>}^Ybm#WR zLB4X$-{;<~7FK-q>-qC|LWIpud`ad1<mj>?K(h;)`{J_E7@hO<!wUTn$M96Qc?(I# zvSz<}ETlh@fRWr&ks2s1)GZ8mah`(wc$ri6)(Fo~^YWvlYVckx+NalS+)}u=%&+pm zu1^O3hg|SykXMk+pZz|U<h|a&rwIqIkYjbCZV@ujh`zLsIcHh(u3ymsCpu;si>_Vi zFg$0~50bt`esClM?@(H^-4flB$7n^F%tWiu@dzK+XSeKuu(|+3Asd7`A1!D`$;DvF zKfs^RAZzNW;K+Aa(bx{P=-0IAa~efS#-!$A<P<-}5a~x0I4@V*_|u%PEhAE;h=YlX zF$EXaN8IjmW4x=EROL)e#K0y;B~yo?Lz9a2#=XxDe3s=Ps3SB@cYN|!#yn|&iI&0y z_A>AccU7?N;Pzjab!Zqz-{4>BWC_L`B=mQ3cB;Q}B?bK389_dC-o5Dw*+Pj2%gvVp zh1PLhvF>dC`kxmAhe(>~z$i&Z8b&UGAHq^QIfP{sUQzw(%Z!O1S-;YH9>}CN*j`zA zw9zA!L~>|*%jPOS+P2%WxWTom#kW(>#|7V>LJ0i6UFB2v*KMz`1lXQ`lgn!wW*eWX zAAO)0Vs0L@WO4mxp<#ot?R`bFWj<W2SH9@bnu=$6=Kp=o5zo?MU_7HcF>%PmPN2Ba z#<^~hMZ(OzWXO`N@IXQR<=1HAueUPfr&Hw~WC6p3BK3~0LEo10W9W{ki~A;S2BO5% z3SZszS)bT@1l=I?$-I&;wSN}`x*NaTin-N9b{%V3jJMs4b4x1QUvXvF0CEh=SFLe- zTYp#7r8h*EezS-#CTGH$)nn`gaOPi>Ou+)P+Qvro*2!bou98+pQ+zs!SF<7WY!4|_ z)Pv7mP}y~l$&zfM58vO{@A5zNKi%DvK+fVu5PUhe6X#jha7{gOyIdaweGzJm;7;g| zSaNZxE#4*-SqO3QCtYjIBY80CVB+hOgqMHy`6Mx05=mjOiW8LL-mJMyi?mqbCO-JX z5e<7$@jbS78;e3iAWjgrbQdEES5oT%Wf~f^i}HtEKT<S5TGylP1oTY6zKg>NZ)F^o zhj|Sti2j1+FKi8i5xXc=fw<bCCx?Shqe%CUj{^UKARBK<g2{x9XR$xgyCqd0f3%7Z z*e?0}Z`%j;$ePHhyarbow|iIq4Ft`tSQW6nLWM(akXh4=P&20aO<9%`AL?pNtH=CQ zu7qY+ntD<|*CW?GdX@8C&$DXkgAnAHmQ?VY)x!z-qQvg2*S>|a3K)BdR*+Bk<N`>b z{8PDNs&~R%(EN005s(QUjH%2Df44fVIq#yeEk+g=YtbOINf<5L{Jm`}5D)`=OnqL& zH=M<?;YBxx_1Aw}WBYnEc~#b{kYHIOBByu9kwZztVZY6~wgjF3k!DH37*Q~-J6FL^ z68HuJaXeaC6Li_#R2K)QXhu8U33HYd>6aLb`cLWD`gt1nf1|O;>5XL&rA>-V5i=M* z-rUaCM)_dPFXbW~<iDD}Twm&DOb$iNJ78+=X22JCq0ZmW1p#wI-CbJAv44kr8I}+j zEhv9)n$`tJXl7#d{>(&>bASn5rzw006JMPvF0Mm<1D({LbONF`x;L6kOCXBKd>epi zk%3wYewAFvF&a_1<=fMRus9d&1VqGf%k!>$fs><t1f>M&%=WM1>j}iIIWaN2RJ$da ze>)`l>2KCWvTyE%bqW}#W>fI4)^DB4-8gakm3}6?6IX*f!=@I&9NK@4<!1zXH@9#C zs3B_9<mSa%>HPQ5zDz8~G8%#yaj2wzk!h4GS^pPHXj!DwX(O9h7w^Hat8rfeW0=6& zeKVW~jw3T=%vtxFZkuSkD;9!@j~NqRLcQP%D(2|#Qz+y3;T(=v%{jdwk7i?{&&hA0 zV1oKIvO>`iHCBNPbke{8rpIwkjnR2);Tf23;r@~?R<h>j5`-Jd@U9_K>xk^XDS}}r zMP1am+&+<qG~+gekSiE5<xo!jg6!4mmq)f0KV>9k*H{|h&x`Dmq)6`Lh9bB-3}>-- z6q0goa(>xAf+>)HtZni>5d1>+AF6T8T^v3r%{oCeMP*<{<W!2`!_|#;3{7CuO!&D_ zMOtIno&KzIm1b9ES41>TjY{a{sW~W0f?V1rBGqix+4LNfG|XGjt-P#xyuE{tr?dG4 zEFbKOkTng>M-H__HKX0z);#GOkInziG1WrBj4XCf&PoOyYB6s3>)Z4`z+3~mQqKPB z_<>1FyQMH(vX)VnESt+#O$opB4M-8M56N8;!|eM#v3rt7NIMPSZb&98!^Ck*!Gy-Z z4>lsUFI(o|@#>{-(m#<d#E5}A#>6vg-uBZp@wViHCeEpG;cCSB|H2i~KSSVR&>z14 z2$O+H-)pG{OEBAw_fdR9P`JNowj*6I^hNzsq;9dHPZx$9<?Cd(Kr=d&Oe>;l2744) zV^nRrjOkuQypN6LrE?3DT<S@#KIh^}n@8n_=wfK#Fa<^!98wA#&M`Uy704F<Tbo<s zJH4z*_TGHv?UvYH)y%3fzWIUiJ6;g1ee6RAV))^;Yx_@b({`d==Fgfa{=2@ovehOW zb4KtK2gDYGS@O7xvUj+WO~#5EB^$0Q1P`5Z)2Vch%`L_sxjw?#-Rra6eQwnJ)Fe#3 zZ&@OMD<cbd*VTA)*)Nu615nU;L|!r+Xw8&?_ye!p5@S5OTk6cYZNlujmmTtGJp~<f z*iZ9`f$`sK{JqH*drVepT0^>f)VrzH*YX01=Q2d_=mqXpA>q6xM4vChpTSA8d~=w{ z(~d|?bP97ddO<s8l@3fhuRaI@g`<ZELBt$18q(NzwCU)VCoN`%@uA8Bai~Fhw7a?b zfJQfAHPZ9;Rf4%?@dAjgn)87rIRw?6N*<hy>F06;saplPIS0ARx(2vo1VB_+R7^k^ zb4!_tNXv@I$cjtx2@A^#3(ttC68#?qke{0;F#P{lDD%1L!YI)F=fTtu7!>Lp;0_24 i4HfkC^$v7(_IDTb3-BmBl&8lm0%)rns5PlLz4;$Pw?i5L literal 0 HcmV?d00001 diff --git a/web/icons/Icon-512.png b/web/icons/Icon-512.png new file mode 100644 index 0000000000000000000000000000000000000000..c0f49fdf9aa9f6154a36525aca939ce1d54d103d GIT binary patch literal 33909 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 EKdzrW#{d8T literal 0 HcmV?d00001 diff --git a/web/icons/Icon-maskable-192.png b/web/icons/Icon-maskable-192.png new file mode 100644 index 0000000000000000000000000000000000000000..74464e32bcd52b0f6cf8c8f84c4045b31a10c81b GIT binary patch literal 7911 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 literal 0 HcmV?d00001 diff --git a/web/icons/Icon-maskable-512.png b/web/icons/Icon-maskable-512.png new file mode 100644 index 0000000000000000000000000000000000000000..63122823a15081454802ffe5434054073033bf79 GIT binary patch literal 33909 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�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 F{tsN0Jud(N literal 0 HcmV?d00001 diff --git a/web/index.html b/web/index.html new file mode 100644 index 00000000..583fb498 --- /dev/null +++ b/web/index.html @@ -0,0 +1,71 @@ +<!DOCTYPE html> +<html> +<head> + <!-- + If you are serving your web app in a path other than the root, change the + href value below to reflect the base path you are serving from. + + The path provided below has to start and end with a slash "/" in order for + it to work correctly. + + For more details: + * https://developer.mozilla.org/en-US/docs/Web/HTML/Element/base + + This is a placeholder for base href that will be replaced by the value of + the `--base-href` argument provided to `flutter build`. + --> + <base href="$FLUTTER_BASE_HREF"> + + <meta charset="UTF-8"> + <meta content="IE=Edge" http-equiv="X-UA-Compatible"> + <meta content="Äž1nkgo" name="description"> + + <!-- iOS meta tags & icons --> + <meta name="apple-mobile-web-app-capable" content="yes"> + <meta name="apple-mobile-web-app-status-bar-style" content="black"> + <meta name="apple-mobile-web-app-title" content="Äžinkgo"> + <link rel="apple-touch-icon" href="icons/Icon-192.png"> + + <!-- Favicon --> + <link rel="icon" type="image/png" href="favicon.png"/> + + <title>Äžinkgo</title> + <link rel="manifest" href="manifest.json"> + + <style> + #splash-container { + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + } + + </style> + <script> + // The value below is injected by flutter build, do not touch. + var serviceWorkerVersion = null; + </script> + <!-- This script adds the flutter initialization JS code --> + <script src="flutter.js" defer></script> +</head> +<body> +<div id="splash-container"> + <img alt="Logo" src="assets/img/logo.png"> +</div> + <script> + window.addEventListener('load', function(ev) { + // Download main.dart.js + _flutter.loader.loadEntrypoint({ + serviceWorker: { + serviceWorkerVersion: serviceWorkerVersion, + }, + onEntrypointLoaded: function(engineInitializer) { + engineInitializer.initializeEngine().then(function(appRunner) { + appRunner.runApp(); + }); + } + }); + }); + </script> +</body> +</html> diff --git a/web/manifest.json b/web/manifest.json new file mode 100644 index 00000000..88c69a4a --- /dev/null +++ b/web/manifest.json @@ -0,0 +1,35 @@ +{ + "name": "G1nkgo", + "short_name": "G1nkgo", + "start_url": ".", + "display": "standalone", + "background_color": "#0175C2", + "theme_color": "#0175C2", + "description": "Äž1nkgo (aka Ginkgo) is a lightweight Äž1 wallet", + "orientation": "portrait-primary", + "prefer_related_applications": false, + "icons": [ + { + "src": "icons/Icon-192.png", + "sizes": "192x192", + "type": "image/png" + }, + { + "src": "icons/Icon-512.png", + "sizes": "512x512", + "type": "image/png" + }, + { + "src": "icons/Icon-maskable-192.png", + "sizes": "192x192", + "type": "image/png", + "purpose": "maskable" + }, + { + "src": "icons/Icon-maskable-512.png", + "sizes": "512x512", + "type": "image/png", + "purpose": "maskable" + } + ] +} -- GitLab