From 016a53f8ebd25c8d3c8fcfba9ecd7361090455ca Mon Sep 17 00:00:00 2001 From: julian Date: Thu, 31 Oct 2024 23:24:18 -0600 Subject: [PATCH] get rid of a submodule! And use a poublished version of cs_monero --- .gitmodules | 3 - crypto_plugins/cs_monero | 1 - .../restore_wallet_view.dart | 7 +- lib/wallets/crypto_currency/coins/monero.dart | 5 +- .../crypto_currency/coins/wownero.dart | 10 +- .../intermediate/lib_monero_wallet.dart | 12 +- linux/flutter/generated_plugin_registrant.cc | 8 +- linux/flutter/generated_plugins.cmake | 2 +- macos/Flutter/GeneratedPluginRegistrant.swift | 4 +- pubspec.lock | 259 +++++++++++------- scripts/android/build_all.sh | 1 - scripts/android/build_all_campfire.sh | 1 - scripts/android/build_all_duo.sh | 1 - scripts/app_config/templates/pubspec.template | 46 +--- scripts/ios/build_all.sh | 1 - scripts/ios/build_all_campfire.sh | 1 - scripts/ios/build_all_duo.sh | 1 - scripts/linux/build_all.sh | 1 - scripts/linux/build_all_campfire.sh | 1 - scripts/linux/build_all_duo.sh | 1 - scripts/macos/build_all.sh | 1 - scripts/macos/build_all_campfire.sh | 1 - scripts/macos/build_all_duo.sh | 1 - scripts/windows/build_all.sh | 1 - scripts/windows/build_all_campfire.sh | 1 - scripts/windows/build_all_duo.sh | 1 - .../flutter/generated_plugin_registrant.cc | 6 +- windows/flutter/generated_plugins.cmake | 2 +- 28 files changed, 204 insertions(+), 176 deletions(-) delete mode 160000 crypto_plugins/cs_monero diff --git a/.gitmodules b/.gitmodules index 6051a5f9b..2186826df 100644 --- a/.gitmodules +++ b/.gitmodules @@ -7,6 +7,3 @@ [submodule "crypto_plugins/frostdart"] path = crypto_plugins/frostdart url = https://github.com/cypherstack/frostdart -[submodule "crypto_plugins/cs_monero"] - path = crypto_plugins/cs_monero - url = https://github.com/cypherstack/cs_monero diff --git a/crypto_plugins/cs_monero b/crypto_plugins/cs_monero deleted file mode 160000 index 8109271c5..000000000 --- a/crypto_plugins/cs_monero +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 8109271c53a62e53af3c4f612e16d720339b8999 diff --git a/lib/pages/add_wallet_views/restore_wallet_view/restore_wallet_view.dart b/lib/pages/add_wallet_views/restore_wallet_view/restore_wallet_view.dart index 984f774ab..ce2d20832 100644 --- a/lib/pages/add_wallet_views/restore_wallet_view/restore_wallet_view.dart +++ b/lib/pages/add_wallet_views/restore_wallet_view/restore_wallet_view.dart @@ -16,8 +16,9 @@ import 'dart:math'; import 'package:bip39/bip39.dart' as bip39; import 'package:bip39/src/wordlists/english.dart' as bip39wordlist; -import 'package:compat/compat.dart' as lib_monero_compat; import 'package:cs_monero/cs_monero.dart' as lib_monero; +import 'package:cs_monero/src/deprecated/get_height_by_date.dart' + as cs_monero_deprecated; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; @@ -221,12 +222,12 @@ class _RestoreWalletViewState extends ConsumerState { if (widget.restoreFromDate != null) { if (widget.coin is Monero) { - height = lib_monero_compat.getMoneroHeigthByDate( + height = cs_monero_deprecated.getMoneroHeightByDate( date: widget.restoreFromDate!, ); } if (widget.coin is Wownero) { - height = lib_monero_compat.getWowneroHeightByDate( + height = cs_monero_deprecated.getWowneroHeightByDate( date: widget.restoreFromDate!, ); } diff --git a/lib/wallets/crypto_currency/coins/monero.dart b/lib/wallets/crypto_currency/coins/monero.dart index edd389ec3..fba0e1701 100644 --- a/lib/wallets/crypto_currency/coins/monero.dart +++ b/lib/wallets/crypto_currency/coins/monero.dart @@ -1,4 +1,5 @@ -import 'package:monero/monero.dart' as monero; +import 'package:cs_monero/src/ffi_bindings/monero_wallet_bindings.dart' + as xmr_wallet_ffi; import '../../../models/node_model.dart'; import '../../../utilities/default_nodes.dart'; @@ -50,7 +51,7 @@ class Monero extends CryptonoteCurrency { bool validateAddress(String address) { switch (network) { case CryptoCurrencyNetwork.main: - return monero.Wallet_addressValid(address, 0); + return xmr_wallet_ffi.validateAddress(address, 0); default: throw Exception("Unsupported network: $network"); } diff --git a/lib/wallets/crypto_currency/coins/wownero.dart b/lib/wallets/crypto_currency/coins/wownero.dart index c894bde2e..ba68d5874 100644 --- a/lib/wallets/crypto_currency/coins/wownero.dart +++ b/lib/wallets/crypto_currency/coins/wownero.dart @@ -1,4 +1,5 @@ -import 'package:monero/wownero.dart' as wownero; +import 'package:cs_monero/src/ffi_bindings/wownero_wallet_bindings.dart' + as wow_wallet_ffi; import '../../../models/node_model.dart'; import '../../../utilities/default_nodes.dart'; @@ -48,7 +49,12 @@ class Wownero extends CryptonoteCurrency { @override bool validateAddress(String address) { - return wownero.Wallet_addressValid(address, 0); + switch (network) { + case CryptoCurrencyNetwork.main: + return wow_wallet_ffi.validateAddress(address, 0); + default: + throw Exception("Unsupported network: $network"); + } } @override diff --git a/lib/wallets/wallet/intermediate/lib_monero_wallet.dart b/lib/wallets/wallet/intermediate/lib_monero_wallet.dart index 6c08a0367..a8029baa4 100644 --- a/lib/wallets/wallet/intermediate/lib_monero_wallet.dart +++ b/lib/wallets/wallet/intermediate/lib_monero_wallet.dart @@ -291,7 +291,7 @@ abstract class LibMoneroWallet ); final wallet = await getCreatedWallet(path: path, password: password); - final height = wallet.getSyncFromBlockHeight(); + final height = wallet.getRefreshFromBlockHeight(); await info.updateRestoreHeight( newRestoreHeight: height, @@ -585,7 +585,7 @@ abstract class LibMoneroWallet Future get availableBalance async { try { return Amount( - rawValue: BigInt.from(libMoneroWallet!.getUnlockedBalance()), + rawValue: libMoneroWallet!.getUnlockedBalance(), fractionDigits: cryptoCurrency.fractionDigits, ); } catch (_) { @@ -598,7 +598,7 @@ abstract class LibMoneroWallet final full = libMoneroWallet?.getBalance(); if (full != null) { return Amount( - rawValue: BigInt.from(full), + rawValue: full, fractionDigits: cryptoCurrency.fractionDigits, ); } else { @@ -686,8 +686,8 @@ abstract class LibMoneroWallet } void onBalancesChanged({ - required int newBalance, - required int newUnlockedBalance, + required BigInt newBalance, + required BigInt newUnlockedBalance, }) { // do something? } @@ -1249,8 +1249,6 @@ abstract class LibMoneroWallet if (e.toString().contains("Incorrect unlocked balance")) { throw Exception("Insufficient balance!"); - } else if (e is lib_monero.CreationTransactionException) { - throw Exception("Insufficient funds to pay for transaction fee!"); } else { throw Exception("Transaction failed with error: $e"); } diff --git a/linux/flutter/generated_plugin_registrant.cc b/linux/flutter/generated_plugin_registrant.cc index df4b140d1..e510c39b0 100644 --- a/linux/flutter/generated_plugin_registrant.cc +++ b/linux/flutter/generated_plugin_registrant.cc @@ -6,7 +6,7 @@ #include "generated_plugin_registrant.h" -#include +``#include #include #include #include @@ -18,9 +18,9 @@ #include void fl_register_plugins(FlPluginRegistry* registry) { - g_autoptr(FlPluginRegistrar) cs_monero_flutter_libs_registrar = - fl_plugin_registry_get_registrar_for_plugin(registry, "CsMoneroFlutterLibsPlugin"); - cs_monero_flutter_libs_plugin_register_with_registrar(cs_monero_flutter_libs_registrar); + g_autoptr(FlPluginRegistrar) cs_monero_flutter_libs_linux_registrar = + fl_plugin_registry_get_registrar_for_plugin(registry, "CsMoneroFlutterLibsLinuxPlugin"); + cs_monero_flutter_libs_linux_plugin_register_with_registrar(cs_monero_flutter_libs_linux_registrar); g_autoptr(FlPluginRegistrar) desktop_drop_registrar = fl_plugin_registry_get_registrar_for_plugin(registry, "DesktopDropPlugin"); desktop_drop_plugin_register_with_registrar(desktop_drop_registrar); diff --git a/linux/flutter/generated_plugins.cmake b/linux/flutter/generated_plugins.cmake index f92bb010e..72a81025c 100644 --- a/linux/flutter/generated_plugins.cmake +++ b/linux/flutter/generated_plugins.cmake @@ -3,7 +3,7 @@ # list(APPEND FLUTTER_PLUGIN_LIST - cs_monero_flutter_libs + cs_monero_flutter_libs_linux desktop_drop devicelocale flutter_libepiccash diff --git a/macos/Flutter/GeneratedPluginRegistrant.swift b/macos/Flutter/GeneratedPluginRegistrant.swift index 5886d38ca..66db749d9 100644 --- a/macos/Flutter/GeneratedPluginRegistrant.swift +++ b/macos/Flutter/GeneratedPluginRegistrant.swift @@ -7,7 +7,7 @@ import Foundation import camera_macos import connectivity_plus -import cs_monero_flutter_libs +import cs_monero_flutter_libs_macos import desktop_drop import device_info_plus import devicelocale @@ -29,7 +29,7 @@ import window_size func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { CameraMacosPlugin.register(with: registry.registrar(forPlugin: "CameraMacosPlugin")) ConnectivityPlugin.register(with: registry.registrar(forPlugin: "ConnectivityPlugin")) - CsMoneroFlutterLibsPlugin.register(with: registry.registrar(forPlugin: "CsMoneroFlutterLibsPlugin")) + CsMoneroFlutterLibsMacosPlugin.register(with: registry.registrar(forPlugin: "CsMoneroFlutterLibsMacosPlugin")) DesktopDropPlugin.register(with: registry.registrar(forPlugin: "DesktopDropPlugin")) DeviceInfoPlusMacosPlugin.register(with: registry.registrar(forPlugin: "DeviceInfoPlusMacosPlugin")) DevicelocalePlugin.register(with: registry.registrar(forPlugin: "DevicelocalePlugin")) diff --git a/pubspec.lock b/pubspec.lock index 8ea368fa3..80a3fbd35 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -50,10 +50,10 @@ packages: dependency: transitive description: name: args - sha256: "7cf60b9f0cc88203c5a190b4cd62a99feea42759a7fa695010eb5de1c0b2252a" + sha256: bf9f5caeea8d8fe6721a9c358dd8a5c1947b27f1cfaa18b39c301273594919e6 url: "https://pub.dev" source: hosted - version: "2.5.0" + version: "2.6.0" async: dependency: "direct main" description: @@ -151,10 +151,10 @@ packages: dependency: "direct main" description: name: blockchain_utils - sha256: aebc3a32b927b34f638817c4bfdb85f86a97e6ad35f0cd962660b0c6e8d5c56b + sha256: ebb6c336ba0120de0982c50d8bc597cb494a530bd22bd462895bb5cebde405af url: "https://pub.dev" source: hosted - version: "3.3.0" + version: "3.4.0" boolean_selector: dependency: transitive description: @@ -215,10 +215,10 @@ packages: dependency: "direct dev" description: name: build_runner - sha256: dd09dd4e2b078992f42aac7f1a622f01882a8492fef08486b27ddde929c19f04 + sha256: "028819cfb90051c6b5440c7e574d1896f8037e3c96cf17aaeb054c9311cfbf4d" url: "https://pub.dev" source: hosted - version: "2.4.12" + version: "2.4.13" build_runner_core: dependency: transitive description: @@ -263,10 +263,10 @@ packages: dependency: "direct main" description: name: camera_macos - sha256: e2ac75c56560f0e86a44de839e6e7f792d786e224c653d51d0c745db80adaff8 + sha256: a0e15729caf4e7c2831b9cd964e8c2e2ea985cd816e56316be03355de44aa743 url: "https://pub.dev" source: hosted - version: "0.0.8" + version: "0.0.9" camera_platform_interface: dependency: "direct main" description: @@ -320,10 +320,10 @@ packages: dependency: transitive description: name: cli_util - sha256: c05b7406fdabc7a49a3929d4af76bcaccbbffcbcdcf185b082e1ae07da323d19 + sha256: ff6785f7e9e3c38ac98b2fb035701789de90154024a75b6cb926445e83197d1c url: "https://pub.dev" source: hosted - version: "0.4.1" + version: "0.4.2" clock: dependency: transitive description: @@ -336,10 +336,10 @@ packages: dependency: transitive description: name: code_builder - sha256: f692079e25e7869c14132d39f223f8eec9830eb76131925143b2129c4bb01b37 + sha256: "0ec10bf4a89e4c613960bf1e8b42c64127021740fb21640c29c909826a5eea3e" url: "https://pub.dev" source: hosted - version: "4.10.0" + version: "4.10.1" coinlib: dependency: "direct overridden" description: @@ -369,9 +369,11 @@ packages: compat: dependency: "direct main" description: - path: "crypto_plugins/cs_monero/compat" - relative: true - source: path + path: compat + ref: "0e5ee14486c82e5e87dd5aa184f73374a03fa184" + resolved-ref: "0e5ee14486c82e5e87dd5aa184f73374a03fa184" + url: "https://github.com/cypherstack/cs_monero" + source: git version: "1.0.0" connectivity_plus: dependency: "direct main" @@ -393,18 +395,18 @@ packages: dependency: "direct main" description: name: convert - sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592" + sha256: b30acd5944035672bc15c6b7a8b47d773e41e2f17de064350988c5d02adb1c68 url: "https://pub.dev" source: hosted - version: "3.1.1" + version: "3.1.2" coverage: dependency: transitive description: name: coverage - sha256: c1fb2dce3c0085f39dc72668e85f8e0210ec7de05345821ff58530567df345a5 + sha256: "88b0fddbe4c92910fefc09cc0248f5e7f0cd23e450ded4c28f16ab8ee8f83268" url: "https://pub.dev" source: hosted - version: "1.9.2" + version: "1.10.0" cross_file: dependency: transitive description: @@ -432,25 +434,99 @@ packages: cs_monero: dependency: "direct main" description: - path: "crypto_plugins/cs_monero/cs_monero" - relative: true - source: path - version: "1.0.0" + name: cs_monero + sha256: "631b75cea84e6d3245341f66df1e7e0d88e6b668a9dc546b9ffa61944a95c644" + url: "https://pub.dev" + source: hosted + version: "0.0.1-dev.0" cs_monero_flutter_libs: dependency: "direct main" description: - path: "crypto_plugins/cs_monero/cs_monero_flutter_libs" - relative: true - source: path - version: "1.0.0" + name: cs_monero_flutter_libs + sha256: fc7b865dbccea175d8aab1799bd7f29d87b9bb2323bb9ef4e051ab08a8631f30 + url: "https://pub.dev" + source: hosted + version: "0.0.1-dev.0" + cs_monero_flutter_libs_android: + dependency: transitive + description: + name: cs_monero_flutter_libs_android + sha256: "45166cdf24ff9cf48fd15ad7661971e17405a6bbd9f4805b3f56b8bf0ecc783b" + url: "https://pub.dev" + source: hosted + version: "0.0.1-dev.0" + cs_monero_flutter_libs_android_arm64_v8a: + dependency: transitive + description: + name: cs_monero_flutter_libs_android_arm64_v8a + sha256: "52cdbdcec29360355a4360dabbd0d4e6a77a9cda3136af47dfe91811da22a640" + url: "https://pub.dev" + source: hosted + version: "0.0.1-dev.0" + cs_monero_flutter_libs_android_armeabi_v7a: + dependency: transitive + description: + name: cs_monero_flutter_libs_android_armeabi_v7a + sha256: "8212c89cdcc6a72b6fa940527a0a1a6c745ad37f7306a4c1069e9baeec1bb94c" + url: "https://pub.dev" + source: hosted + version: "0.0.1-dev.0" + cs_monero_flutter_libs_android_x86_64: + dependency: transitive + description: + name: cs_monero_flutter_libs_android_x86_64 + sha256: "218c3f3e7f16d78aab1fd26beea2af6eb5ab8a308f7100fa9f463ba73d6c1d0a" + url: "https://pub.dev" + source: hosted + version: "0.0.1-dev.0" + cs_monero_flutter_libs_ios: + dependency: transitive + description: + name: cs_monero_flutter_libs_ios + sha256: "1655a11cb0d5935e31ea5ce3a053ace651f211469dad7899bd1627b10b7701ac" + url: "https://pub.dev" + source: hosted + version: "0.0.1-dev.0" + cs_monero_flutter_libs_linux: + dependency: transitive + description: + name: cs_monero_flutter_libs_linux + sha256: b9515686a00d9ca5c5c448a1fb0ae6f33bfc87a542b6a2f5a819336ffdbfc189 + url: "https://pub.dev" + source: hosted + version: "0.0.1-dev.0" + cs_monero_flutter_libs_macos: + dependency: transitive + description: + name: cs_monero_flutter_libs_macos + sha256: "0828b27a0fe868002e20a314e042b2861f87489b68009deb5e9f750f9a349556" + url: "https://pub.dev" + source: hosted + version: "0.0.1-dev.0" + cs_monero_flutter_libs_platform_interface: + dependency: transitive + description: + name: cs_monero_flutter_libs_platform_interface + sha256: fe9bf7e54a2c8eb4f92ef4511ed3abf16afa3b2480dc3f3eaa00673e85c9cddb + url: "https://pub.dev" + source: hosted + version: "0.0.1-dev.1" + cs_monero_flutter_libs_windows: + dependency: transitive + description: + name: cs_monero_flutter_libs_windows + sha256: "7797249ffe02086600758b12b4d01ca5537cf7e2c8b3946b734b55ad7feebc2f" + url: "https://pub.dev" + source: hosted + version: "0.0.1-dev.0" csslib: dependency: transitive description: name: csslib - sha256: "706b5707578e0c1b4b7550f64078f0a0f19dec3f50a178ffae7006b0a9ca58fb" + sha256: "09bad715f418841f976c77db72d5398dc1253c21fb9c0c7f0b0b985860b2d58e" url: "https://pub.dev" source: hosted - version: "1.0.0" + version: "1.0.2" dart_base_x: dependency: transitive description: @@ -640,10 +716,10 @@ packages: dependency: "direct main" description: name: event_bus - sha256: "44baa799834f4c803921873e7446a2add0f3efa45e101a054b1f0ab9b95f8edc" + sha256: "1a55e97923769c286d295240048fc180e7b0768902c3c2e869fe059aafa15304" url: "https://pub.dev" source: hosted - version: "2.0.0" + version: "2.0.1" fake_async: dependency: transitive description: @@ -681,10 +757,10 @@ packages: dependency: transitive description: name: fixnum - sha256: "25517a4deb0c03aa0f32fd12db525856438902d9c16536311e76cdc57b31d7d1" + sha256: b6dc7065e46c974bc7c5f143080a6764ec7a4be6da1285ececdc37be96de53be url: "https://pub.dev" source: hosted - version: "1.1.0" + version: "1.1.1" fixnum_nanodart: dependency: transitive description: @@ -755,10 +831,10 @@ packages: dependency: "direct main" description: name: flutter_local_notifications - sha256: c500d5d9e7e553f06b61877ca6b9c8b92c570a4c8db371038702e8ce57f8a50f + sha256: "674173fd3c9eda9d4c8528da2ce0ea69f161577495a9cc835a2a4ecd7eadeb35" url: "https://pub.dev" source: hosted - version: "17.2.2" + version: "17.2.4" flutter_local_notifications_linux: dependency: transitive description: @@ -787,10 +863,10 @@ packages: dependency: transitive description: name: flutter_plugin_android_lifecycle - sha256: "9ee02950848f61c4129af3d6ec84a1cfc0e47931abc746b03e7a3bc3e8ff6eda" + sha256: "9b78450b89f059e96c9ebb355fa6b3df1d6b330436e0b885fb49594c41721398" url: "https://pub.dev" source: hosted - version: "2.0.22" + version: "2.0.23" flutter_riverpod: dependency: "direct main" description: @@ -851,10 +927,10 @@ packages: dependency: "direct main" description: name: flutter_svg - sha256: "7b4ca6cf3304575fe9c8ec64813c8d02ee41d2afe60bcfe0678bcb5375d596a2" + sha256: "1b7723a814d84fb65869ea7115cdb3ee7c3be5a27a755c1ec60e049f6b9fcbb2" url: "https://pub.dev" source: hosted - version: "2.0.10+1" + version: "2.0.11" flutter_test: dependency: "direct dev" description: flutter @@ -970,10 +1046,10 @@ packages: dependency: transitive description: name: html - sha256: "3a7812d5bcd2894edf53dfaf8cd640876cf6cef50a8f238745c8b8120ea74d3a" + sha256: "1fc58edeaec4307368c60d59b7e15b9d658b57d7f3125098b6294153c75337ec" url: "https://pub.dev" source: hosted - version: "0.15.4" + version: "0.15.5" http: dependency: "direct main" description: @@ -1010,10 +1086,10 @@ packages: dependency: transitive description: name: image - sha256: "2237616a36c0d69aef7549ab439b833fb7f9fb9fc861af2cc9ac3eedddd69ca8" + sha256: f31d52537dc417fdcde36088fdf11d191026fd5e4fae742491ebd40e5a8bea7d url: "https://pub.dev" source: hosted - version: "4.2.0" + version: "4.3.0" import_sorter: dependency: "direct dev" description: @@ -1087,10 +1163,10 @@ packages: dependency: transitive description: name: json_rpc_2 - sha256: "5e469bffa23899edacb7b22787780068d650b106a21c76db3c49218ab7ca447e" + sha256: "246b321532f0e8e2ba474b4d757eaa558ae4fdd0688fdbc1e1ca9705f9b8ca0e" url: "https://pub.dev" source: hosted - version: "3.0.2" + version: "3.0.3" json_serializable: dependency: transitive description: @@ -1158,18 +1234,18 @@ packages: dependency: transitive description: name: local_auth_android - sha256: e9a3c321e94359a552b1bdd0f98f79885f2b3e27234d270f9bef5cd82b29340c + sha256: "6763aaf8965f21822624cb2fd3c03d2a8b3791037b5efb0fe4b13e110f5afc92" url: "https://pub.dev" source: hosted - version: "1.0.44" + version: "1.0.46" local_auth_darwin: dependency: transitive description: name: local_auth_darwin - sha256: "7ba5738c874ca2b910d72385d00d2bebad9d4e807612936cf5e32bc01a048c71" + sha256: "6d2950da311d26d492a89aeb247c72b4653ddc93601ea36a84924a396806d49c" url: "https://pub.dev" source: hosted - version: "1.4.0" + version: "1.4.1" local_auth_platform_interface: dependency: transitive description: @@ -1198,10 +1274,10 @@ packages: dependency: transitive description: name: logging - sha256: "623a88c9594aa774443aa3eb2d41807a48486b5613e67599fb4c41c0ad47c340" + sha256: c8245ada5f1717ed44271ed1c26b8ce85ca3228fd2ffdb75468ab01979309d61 url: "https://pub.dev" source: hosted - version: "1.2.0" + version: "1.3.0" lottie: dependency: "direct main" description: @@ -1282,15 +1358,6 @@ packages: url: "https://pub.dev" source: hosted version: "0.2.0" - monero: - dependency: transitive - description: - path: "impls/monero.dart" - ref: "614b5c731fb671d112f860fd57b5fd0c8c11e92c" - resolved-ref: "614b5c731fb671d112f860fd57b5fd0c8c11e92c" - url: "https://github.com/cypherstack/monero_c" - source: git - version: "0.0.0" mutex: dependency: "direct main" description: @@ -1327,10 +1394,10 @@ packages: dependency: "direct main" description: name: on_chain - sha256: "4040c187be82f6f6414110139f6e70fe304f23f63111c3ee60438c539b1a1dce" + sha256: "54d8117ff007b1f4a71ce8076c2a0bbfb592e5ce61ae397c68a67d70c9246a5d" url: "https://pub.dev" source: hosted - version: "4.0.1" + version: "4.3.0" package_config: dependency: transitive description: @@ -1343,10 +1410,10 @@ packages: dependency: "direct main" description: name: package_info_plus - sha256: a75164ade98cb7d24cfd0a13c6408927c6b217fa60dee5a7ff5c116a58f28918 + sha256: df3eb3e0aed5c1107bb0fdb80a8e82e778114958b1c5ac5644fb1ac9cae8a998 url: "https://pub.dev" source: hosted - version: "8.0.2" + version: "8.1.0" package_info_plus_platform_interface: dependency: transitive description: @@ -1367,26 +1434,26 @@ packages: dependency: transitive description: name: path_parsing - sha256: e3e67b1629e6f7e8100b367d3db6ba6af4b1f0bb80f64db18ef1fbabd2fa9ccf + sha256: caa17e8f0b386eb190dd5b6a3b71211c76375aa8b6ffb4465b5863d019bdb334 url: "https://pub.dev" source: hosted - version: "1.0.1" + version: "1.0.3" path_provider: dependency: "direct main" description: name: path_provider - sha256: fec0d61223fba3154d87759e3cc27fe2c8dc498f6386c6d6fc80d1afdd1bf378 + sha256: "50c5dd5b6e1aaf6fb3a78b33f6aa3afca52bf903a8a5298f53101fdaee55bbcd" url: "https://pub.dev" source: hosted - version: "2.1.4" + version: "2.1.5" path_provider_android: dependency: transitive description: name: path_provider_android - sha256: "6f01f8e37ec30b07bc424b4deabac37cacb1bc7e2e515ad74486039918a37eb7" + sha256: c464428172cb986b758c6d1724c603097febb8fb855aa265aeecc9280c294d4a url: "https://pub.dev" source: hosted - version: "2.2.10" + version: "2.2.12" path_provider_foundation: dependency: transitive description: @@ -1431,10 +1498,10 @@ packages: dependency: transitive description: name: permission_handler_android - sha256: "76e4ab092c1b240d31177bb64d2b0bea43f43d0e23541ec866151b9f7b2490fa" + sha256: "71bbecfee799e65aff7c744761a57e817e73b738fedf62ab7afd5593da21f9f1" url: "https://pub.dev" source: hosted - version: "12.0.12" + version: "12.0.13" permission_handler_apple: dependency: transitive description: @@ -1750,10 +1817,10 @@ packages: dependency: "direct main" description: name: sqlite3_flutter_libs - sha256: "62bbb4073edbcdf53f40c80775f33eea01d301b7b81417e5b3fb7395416258c1" + sha256: "7ae52b23366e5295005022e62fa093f64bfe190810223ea0ebf733a4cd140bce" url: "https://pub.dev" source: hosted - version: "0.5.24" + version: "0.5.26" stack_trace: dependency: transitive description: @@ -1929,10 +1996,10 @@ packages: dependency: transitive description: name: typed_data - sha256: facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c + sha256: f9049c039ebfeb4cf7a7104a675823cd72dba8297f264b6637062516699fa006 url: "https://pub.dev" source: hosted - version: "1.3.2" + version: "1.4.0" universal_io: dependency: transitive description: @@ -1953,18 +2020,18 @@ packages: dependency: "direct main" description: name: url_launcher - sha256: "21b704ce5fa560ea9f3b525b43601c678728ba46725bab9b01187b4831377ed3" + sha256: "9d06212b1362abc2f0f0d78e6f09f726608c74e3b9462e8368bb03314aa8d603" url: "https://pub.dev" source: hosted - version: "6.3.0" + version: "6.3.1" url_launcher_android: dependency: transitive description: name: url_launcher_android - sha256: e35a698ac302dd68e41f73250bd9517fe3ab5fa4f18fe4647a0872db61bacbab + sha256: "6fc2f56536ee873eeb867ad176ae15f304ccccc357848b351f6f0d8d4a40d193" url: "https://pub.dev" source: hosted - version: "6.3.10" + version: "6.3.14" url_launcher_ios: dependency: transitive description: @@ -1985,10 +2052,10 @@ packages: dependency: transitive description: name: url_launcher_macos - sha256: "9a1a42d5d2d95400c795b2914c36fdcb525870c752569438e4ebb09a2b5d90de" + sha256: "769549c999acdb42b8bcfa7c43d72bf79a382ca7441ab18a808e101149daf672" url: "https://pub.dev" source: hosted - version: "3.2.0" + version: "3.2.1" url_launcher_platform_interface: dependency: transitive description: @@ -2009,10 +2076,10 @@ packages: dependency: transitive description: name: url_launcher_windows - sha256: "49c10f879746271804767cb45551ec5592cdab00ee105c06dddde1a98f73b185" + sha256: "44cf3aabcedde30f2dba119a9dea3b0f2672fbe6fa96e85536251d678216b3c4" url: "https://pub.dev" source: hosted - version: "3.1.2" + version: "3.1.3" uuid: dependency: "direct main" description: @@ -2025,26 +2092,26 @@ packages: dependency: transitive description: name: vector_graphics - sha256: "32c3c684e02f9bc0afb0ae0aa653337a2fe022e8ab064bcd7ffda27a74e288e3" + sha256: "0b9149c6ddb013818075b072b9ddc1b89a5122fff1275d4648d297086b46c4f0" url: "https://pub.dev" source: hosted - version: "1.1.11+1" + version: "1.1.12" vector_graphics_codec: dependency: transitive description: name: vector_graphics_codec - sha256: c86987475f162fadff579e7320c7ddda04cd2fdeffbe1129227a85d9ac9e03da + sha256: "2430b973a4ca3c4dbc9999b62b8c719a160100dcbae5c819bae0cacce32c9cdb" url: "https://pub.dev" source: hosted - version: "1.1.11+1" + version: "1.1.12" vector_graphics_compiler: dependency: transitive description: name: vector_graphics_compiler - sha256: "12faff3f73b1741a36ca7e31b292ddeb629af819ca9efe9953b70bd63fc8cd81" + sha256: f3b9b6e4591c11394d4be4806c63e72d3a41778547b2c1e2a8a04fadcfd7d173 url: "https://pub.dev" source: hosted - version: "1.1.11+1" + version: "1.1.12" vector_math: dependency: transitive description: @@ -2162,10 +2229,10 @@ packages: dependency: "direct overridden" description: name: win32 - sha256: "68d1e89a91ed61ad9c370f9f8b6effed9ae5e0ede22a270bdfa6daf79fc2290a" + sha256: "10169d3934549017f0ae278ccb07f828f9d6ea21573bab0fb77b0e1ef0fce454" url: "https://pub.dev" source: hosted - version: "5.5.4" + version: "5.7.2" win32_registry: dependency: transitive description: @@ -2187,10 +2254,10 @@ packages: dependency: transitive description: name: xdg_directories - sha256: faea9dee56b520b55a566385b84f2e8de55e7496104adada9962e0bd11bcff1d + sha256: "7a3f37b05d989967cdddcbb571f1ea834867ae2faa29725fd085180e0883aa15" url: "https://pub.dev" source: hosted - version: "1.0.4" + version: "1.1.0" xml: dependency: transitive description: @@ -2203,10 +2270,10 @@ packages: dependency: transitive description: name: xxh3 - sha256: a92b30944a9aeb4e3d4f3c3d4ddb3c7816ca73475cd603682c4f8149690f56d7 + sha256: cbeb0e1d10f4c6bf67b650f395eac0cc689425b5efc2ba0cc3d3e069a0beaeec url: "https://pub.dev" source: hosted - version: "1.0.1" + version: "1.1.0" yaml: dependency: transitive description: diff --git a/scripts/android/build_all.sh b/scripts/android/build_all.sh index 1969da151..60aa13c6a 100755 --- a/scripts/android/build_all.sh +++ b/scripts/android/build_all.sh @@ -14,7 +14,6 @@ PLUGINS_DIR=../../crypto_plugins (cd "${PLUGINS_DIR}"/flutter_liblelantus/scripts/android && ./build_all.sh ) (cd "${PLUGINS_DIR}"/flutter_libepiccash/scripts/android && ./build_all.sh ) -(cd "${PLUGINS_DIR}"/cs_monero/tools/build_scripts && ./build_android.sh && ../copy_outputs_to_cs_monero_flutter_libs_package.sh ) set_rust_to_1720 (cd "${PLUGINS_DIR}"/frostdart/scripts/android && ./build_all.sh ) diff --git a/scripts/android/build_all_campfire.sh b/scripts/android/build_all_campfire.sh index 1969da151..60aa13c6a 100755 --- a/scripts/android/build_all_campfire.sh +++ b/scripts/android/build_all_campfire.sh @@ -14,7 +14,6 @@ PLUGINS_DIR=../../crypto_plugins (cd "${PLUGINS_DIR}"/flutter_liblelantus/scripts/android && ./build_all.sh ) (cd "${PLUGINS_DIR}"/flutter_libepiccash/scripts/android && ./build_all.sh ) -(cd "${PLUGINS_DIR}"/cs_monero/tools/build_scripts && ./build_android.sh && ../copy_outputs_to_cs_monero_flutter_libs_package.sh ) set_rust_to_1720 (cd "${PLUGINS_DIR}"/frostdart/scripts/android && ./build_all.sh ) diff --git a/scripts/android/build_all_duo.sh b/scripts/android/build_all_duo.sh index a4f7bd30f..d67e700a8 100755 --- a/scripts/android/build_all_duo.sh +++ b/scripts/android/build_all_duo.sh @@ -16,7 +16,6 @@ PLUGINS_DIR=../../crypto_plugins (cd "${PLUGINS_DIR}"/flutter_liblelantus/scripts/android && ./build_all.sh ) (cd "${PLUGINS_DIR}"/flutter_libepiccash/scripts/android && ./build_all.sh ) -(cd "${PLUGINS_DIR}"/cs_monero/tools/build_scripts && ./build_android.sh && ../copy_outputs_to_cs_monero_flutter_libs_package.sh ) set_rust_to_1720 (cd "${PLUGINS_DIR}"/frostdart/scripts/android && ./build_all.sh ) diff --git a/scripts/app_config/templates/pubspec.template b/scripts/app_config/templates/pubspec.template index 7be393840..a2f7f9533 100644 --- a/scripts/app_config/templates/pubspec.template +++ b/scripts/app_config/templates/pubspec.template @@ -13,8 +13,6 @@ description: PLACEHOLDER # https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html version: PLACEHOLDER_V+PLACEHOLDER_B -isar_version: &isar_version 3.1.8 - environment: sdk: ">=3.5.3 <4.0.0" flutter: ^3.24.3 @@ -37,14 +35,12 @@ dependencies: url: https://github.com/cypherstack/flutter_libsparkmobile.git ref: cc7b43b731e4a7906dd25d4364a08e34554cee19 - cs_monero: - path: ./crypto_plugins/cs_monero/cs_monero - + # cs_monero compat (unpublished) compat: - path: ./crypto_plugins/cs_monero/compat - - cs_monero_flutter_libs: - path: ./crypto_plugins/cs_monero/cs_monero_flutter_libs + git: + url: https://github.com/cypherstack/cs_monero + path: compat + ref: 0e5ee14486c82e5e87dd5aa184f73374a03fa184 flutter_libepiccash: path: ./crypto_plugins/flutter_libepiccash @@ -142,10 +138,10 @@ dependencies: file_picker: ^8.0.3 connectivity_plus: ^4.0.1 isar: - version: *isar_version + version: 3.1.8 hosted: https://pub.isar-community.dev/ isar_flutter_libs: # contains Isar Core - version: *isar_version + version: 3.1.8 hosted: https://pub.isar-community.dev/ dropdown_button2: ^2.1.3 string_validator: ^0.3.0 @@ -199,6 +195,8 @@ dependencies: blockchain_utils: ^3.3.0 on_chain: ^4.0.1 cbor: ^6.3.3 + cs_monero: 0.0.1-dev.0 + cs_monero_flutter_libs: 0.0.1-dev.0 dev_dependencies: flutter_test: @@ -217,7 +215,7 @@ dev_dependencies: import_sorter: ^4.6.0 flutter_lints: ^3.0.1 isar_generator: - version: *isar_version + version: 3.1.8 hosted: https://pub.isar-community.dev/ flutter_native_splash: @@ -325,30 +323,6 @@ flutter: # default themes_testing - assets/default_themes/ - # An image asset can refer to one or more resolution-specific "variants", see - # https://flutter.dev/assets-and-images/#resolution-aware. - # For details regarding adding assets from package dependencies, see - # https://flutter.dev/assets-and-images/#from-packages - # To add custom fonts to your application, add a fonts section here, - # in this "flutter" section. Each entry in this list should have a - # "family" key with the font family name, and a "fonts" key with a - # list giving the asset and other descriptors for the font. For - # example: - # fonts: - # - family: Schyler - # fonts: - # - asset: fonts/Schyler-Regular.ttf - # - asset: fonts/Schyler-Italic.ttf - # style: italic - # - family: Trajan Pro - # fonts: - # - asset: fonts/TrajanPro.ttf - # - asset: fonts/TrajanPro_Bold.ttf - # weight: 700 - # - # For details regarding fonts from package dependencies, - # see https://flutter.dev/custom-fonts/#from-packages - import_sorter: comments: false # Optional, defaults to true ignored_files: # Optional, defaults to [] diff --git a/scripts/ios/build_all.sh b/scripts/ios/build_all.sh index eafccf91b..bcb03e991 100755 --- a/scripts/ios/build_all.sh +++ b/scripts/ios/build_all.sh @@ -16,7 +16,6 @@ rustup target add x86_64-apple-ios (cd ../../crypto_plugins/flutter_liblelantus/scripts/ios && ./build_all.sh ) (cd ../../crypto_plugins/flutter_libepiccash/scripts/ios && ./build_all.sh ) -(cd ../../crypto_plugins/cs_monero/tools/build_scripts && ./build_ios.sh && ../copy_outputs_to_cs_monero_flutter_libs_package.sh ) set_rust_to_1720 (cd ../../crypto_plugins/frostdart/scripts/ios && ./build_all.sh ) diff --git a/scripts/ios/build_all_campfire.sh b/scripts/ios/build_all_campfire.sh index eafccf91b..bcb03e991 100755 --- a/scripts/ios/build_all_campfire.sh +++ b/scripts/ios/build_all_campfire.sh @@ -16,7 +16,6 @@ rustup target add x86_64-apple-ios (cd ../../crypto_plugins/flutter_liblelantus/scripts/ios && ./build_all.sh ) (cd ../../crypto_plugins/flutter_libepiccash/scripts/ios && ./build_all.sh ) -(cd ../../crypto_plugins/cs_monero/tools/build_scripts && ./build_ios.sh && ../copy_outputs_to_cs_monero_flutter_libs_package.sh ) set_rust_to_1720 (cd ../../crypto_plugins/frostdart/scripts/ios && ./build_all.sh ) diff --git a/scripts/ios/build_all_duo.sh b/scripts/ios/build_all_duo.sh index d10b4e340..89e6f4641 100755 --- a/scripts/ios/build_all_duo.sh +++ b/scripts/ios/build_all_duo.sh @@ -18,7 +18,6 @@ rustup target add x86_64-apple-ios (cd ../../crypto_plugins/flutter_liblelantus/scripts/ios && ./build_all.sh ) (cd ../../crypto_plugins/flutter_libepiccash/scripts/ios && ./build_all.sh ) -(cd ../../crypto_plugins/cs_monero/tools/build_scripts && ./build_ios.sh && ../copy_outputs_to_cs_monero_flutter_libs_package.sh ) set_rust_to_1720 (cd ../../crypto_plugins/frostdart/scripts/ios && ./build_all.sh ) diff --git a/scripts/linux/build_all.sh b/scripts/linux/build_all.sh index b78bb46a1..423646185 100755 --- a/scripts/linux/build_all.sh +++ b/scripts/linux/build_all.sh @@ -14,7 +14,6 @@ mkdir -p build ./build_secure_storage_deps.sh (cd ../../crypto_plugins/flutter_liblelantus/scripts/linux && ./build_all.sh ) (cd ../../crypto_plugins/flutter_libepiccash/scripts/linux && ./build_all.sh ) -(cd ../../crypto_plugins/cs_monero/tools/build_scripts && ./build_linux.sh && ../copy_outputs_to_cs_monero_flutter_libs_package.sh ) set_rust_to_1720 (cd ../../crypto_plugins/frostdart/scripts/linux && ./build_all.sh ) diff --git a/scripts/linux/build_all_campfire.sh b/scripts/linux/build_all_campfire.sh index c15056ead..423646185 100755 --- a/scripts/linux/build_all_campfire.sh +++ b/scripts/linux/build_all_campfire.sh @@ -14,7 +14,6 @@ mkdir -p build ./build_secure_storage_deps.sh (cd ../../crypto_plugins/flutter_liblelantus/scripts/linux && ./build_all.sh ) (cd ../../crypto_plugins/flutter_libepiccash/scripts/linux && ./build_all.sh ) -(cd ../../crypto_plugins/cs_monero/tools/build_scripts && ./build_linux.sh && ../copy_outputs_to_cs_monero_flutter_libs_package.sh ) set_rust_to_1720 (cd ../../crypto_plugins/frostdart/scripts/linux && ./build_all.sh ) diff --git a/scripts/linux/build_all_duo.sh b/scripts/linux/build_all_duo.sh index 786f10e8d..78067b478 100755 --- a/scripts/linux/build_all_duo.sh +++ b/scripts/linux/build_all_duo.sh @@ -16,7 +16,6 @@ mkdir -p build ./build_secure_storage_deps.sh & (cd ../../crypto_plugins/flutter_liblelantus/scripts/linux && ./build_all.sh ) (cd ../../crypto_plugins/flutter_libepiccash/scripts/linux && ./build_all.sh ) -(cd ../../crypto_plugins/cs_monero/tools/build_scripts && ./build_linux.sh && ../copy_outputs_to_cs_monero_flutter_libs_package.sh ) set_rust_to_1720 (cd ../../crypto_plugins/frostdart/scripts/linux && ./build_all.sh ) diff --git a/scripts/macos/build_all.sh b/scripts/macos/build_all.sh index b16a57f50..af608846f 100755 --- a/scripts/macos/build_all.sh +++ b/scripts/macos/build_all.sh @@ -8,7 +8,6 @@ set_rust_to_1671 (cd ../../crypto_plugins/flutter_liblelantus/scripts/macos && ./build_all.sh ) (cd ../../crypto_plugins/flutter_libepiccash/scripts/macos && ./build_all.sh ) -(cd ../../crypto_plugins/cs_monero/tools/build_scripts && ./build_macos.sh && ../copy_outputs_to_cs_monero_flutter_libs_package.sh ) set_rust_to_1720 (cd ../../crypto_plugins/frostdart/scripts/macos && ./build_all.sh ) diff --git a/scripts/macos/build_all_campfire.sh b/scripts/macos/build_all_campfire.sh index 5a42d97ea..af608846f 100755 --- a/scripts/macos/build_all_campfire.sh +++ b/scripts/macos/build_all_campfire.sh @@ -8,7 +8,6 @@ set_rust_to_1671 (cd ../../crypto_plugins/flutter_liblelantus/scripts/macos && ./build_all.sh ) (cd ../../crypto_plugins/flutter_libepiccash/scripts/macos && ./build_all.sh ) -(cd ../../crypto_plugins/cs_monero/tools/build_scripts && ./build_macos.sh && ../copy_outputs_to_cs_monero_flutter_libs_package.sh ) set_rust_to_1720 (cd ../../crypto_plugins/frostdart/scripts/macos && ./build_all.sh ) diff --git a/scripts/macos/build_all_duo.sh b/scripts/macos/build_all_duo.sh index fe431e058..8a53e5801 100755 --- a/scripts/macos/build_all_duo.sh +++ b/scripts/macos/build_all_duo.sh @@ -10,7 +10,6 @@ set_rust_to_1671 (cd ../../crypto_plugins/flutter_liblelantus/scripts/macos && ./build_all.sh ) (cd ../../crypto_plugins/flutter_libepiccash/scripts/macos && ./build_all.sh ) -(cd ../../crypto_plugins/cs_monero/tools/build_scripts && ./build_macos.sh && ../copy_outputs_to_cs_monero_flutter_libs_package.sh ) set_rust_to_1720 (cd ../../crypto_plugins/frostdart/scripts/macos && ./build_all.sh ) diff --git a/scripts/windows/build_all.sh b/scripts/windows/build_all.sh index 6bae6d700..191a46cc0 100755 --- a/scripts/windows/build_all.sh +++ b/scripts/windows/build_all.sh @@ -9,7 +9,6 @@ set_rust_to_1671 mkdir -p build (cd ../../crypto_plugins/flutter_libepiccash/scripts/windows && ./build_all.sh ) (cd ../../crypto_plugins/flutter_liblelantus/scripts/windows && ./build_all.sh ) -(cd ../../crypto_plugins/cs_monero/tools/build_scripts && ./build_windows.sh && ../copy_outputs_to_cs_monero_flutter_libs_package.sh ) set_rust_to_1720 (cd ../../crypto_plugins/frostdart/scripts/windows && ./build_all.sh ) diff --git a/scripts/windows/build_all_campfire.sh b/scripts/windows/build_all_campfire.sh index 6bae6d700..191a46cc0 100755 --- a/scripts/windows/build_all_campfire.sh +++ b/scripts/windows/build_all_campfire.sh @@ -9,7 +9,6 @@ set_rust_to_1671 mkdir -p build (cd ../../crypto_plugins/flutter_libepiccash/scripts/windows && ./build_all.sh ) (cd ../../crypto_plugins/flutter_liblelantus/scripts/windows && ./build_all.sh ) -(cd ../../crypto_plugins/cs_monero/tools/build_scripts && ./build_windows.sh && ../copy_outputs_to_cs_monero_flutter_libs_package.sh ) set_rust_to_1720 (cd ../../crypto_plugins/frostdart/scripts/windows && ./build_all.sh ) diff --git a/scripts/windows/build_all_duo.sh b/scripts/windows/build_all_duo.sh index 0f504efe6..3e27eff02 100755 --- a/scripts/windows/build_all_duo.sh +++ b/scripts/windows/build_all_duo.sh @@ -11,7 +11,6 @@ set_rust_to_1671 mkdir -p build (cd ../../crypto_plugins/flutter_libepiccash/scripts/windows && ./build_all.sh ) (cd ../../crypto_plugins/flutter_liblelantus/scripts/windows && ./build_all.sh ) -(cd ../../crypto_plugins/cs_monero/tools/build_scripts && ./build_windows.sh && ../copy_outputs_to_cs_monero_flutter_libs_package.sh ) set_rust_to_1720 (cd ../../crypto_plugins/frostdart/scripts/windows && ./build_all.sh ) diff --git a/windows/flutter/generated_plugin_registrant.cc b/windows/flutter/generated_plugin_registrant.cc index 36adbeb1a..74ef33c4e 100644 --- a/windows/flutter/generated_plugin_registrant.cc +++ b/windows/flutter/generated_plugin_registrant.cc @@ -8,7 +8,7 @@ #include #include -#include +#include #include #include #include @@ -26,8 +26,8 @@ void RegisterPlugins(flutter::PluginRegistry* registry) { registry->GetRegistrarForPlugin("CameraWindows")); ConnectivityPlusWindowsPluginRegisterWithRegistrar( registry->GetRegistrarForPlugin("ConnectivityPlusWindowsPlugin")); - CsMoneroFlutterLibsPluginCApiRegisterWithRegistrar( - registry->GetRegistrarForPlugin("CsMoneroFlutterLibsPluginCApi")); + CsMoneroFlutterLibsWindowsPluginCApiRegisterWithRegistrar( + registry->GetRegistrarForPlugin("CsMoneroFlutterLibsWindowsPluginCApi")); DesktopDropPluginRegisterWithRegistrar( registry->GetRegistrarForPlugin("DesktopDropPlugin")); FlutterLibepiccashPluginCApiRegisterWithRegistrar( diff --git a/windows/flutter/generated_plugins.cmake b/windows/flutter/generated_plugins.cmake index 041b049af..2f370e685 100644 --- a/windows/flutter/generated_plugins.cmake +++ b/windows/flutter/generated_plugins.cmake @@ -5,7 +5,7 @@ list(APPEND FLUTTER_PLUGIN_LIST camera_windows connectivity_plus - cs_monero_flutter_libs + cs_monero_flutter_libs_windows desktop_drop flutter_libepiccash flutter_secure_storage_windows