mirror of
https://github.com/aljazceru/breez-sdk-liquid.git
synced 2025-12-20 07:24:26 +01:00
Add Liquid SDK Event & Log stream handlers to example app (#305)
Update example app * Use defaultConfig on ConnectRequest * Update feesSat as non-null * Use payment & walletInfo streams from BreezLiquidSDK
This commit is contained in:
@@ -5,21 +5,23 @@ import 'package:flutter_breez_liquid_example/routes/home/home_page.dart';
|
||||
import 'package:flutter_breez_liquid_example/services/credentials_manager.dart';
|
||||
import 'package:flutter_breez_liquid_example/services/keychain.dart';
|
||||
import 'package:flutter_breez_liquid_example/utils/config.dart';
|
||||
import 'package:path_provider/path_provider.dart';
|
||||
|
||||
import 'services/breez_liquid_sdk.dart';
|
||||
|
||||
void main() async {
|
||||
WidgetsFlutterBinding.ensureInitialized();
|
||||
await initialize();
|
||||
final BreezLiquidSDK liquidSDK = BreezLiquidSDK();
|
||||
final credentialsManager = CredentialsManager(keyChain: KeyChain());
|
||||
final mnemonic = await credentialsManager.restoreMnemonic();
|
||||
BindingLiquidSdk? liquidSDK;
|
||||
if (mnemonic.isNotEmpty) {
|
||||
liquidSDK = await reconnect(mnemonic: mnemonic);
|
||||
reconnect(liquidSDK: liquidSDK, mnemonic: mnemonic);
|
||||
}
|
||||
runApp(App(credentialsManager: credentialsManager, liquidSDK: liquidSDK));
|
||||
}
|
||||
|
||||
Future<BindingLiquidSdk> reconnect({
|
||||
required BreezLiquidSDK liquidSDK,
|
||||
required String mnemonic,
|
||||
Network network = Network.mainnet,
|
||||
}) async {
|
||||
@@ -28,13 +30,13 @@ Future<BindingLiquidSdk> reconnect({
|
||||
config: config,
|
||||
mnemonic: mnemonic,
|
||||
);
|
||||
return await connect(req: req);
|
||||
return await liquidSDK.connect(req: req);
|
||||
}
|
||||
|
||||
class App extends StatefulWidget {
|
||||
final CredentialsManager credentialsManager;
|
||||
final BindingLiquidSdk? liquidSDK;
|
||||
const App({super.key, required this.credentialsManager, this.liquidSDK});
|
||||
final BreezLiquidSDK liquidSDK;
|
||||
const App({super.key, required this.credentialsManager, required this.liquidSDK});
|
||||
|
||||
static const title = 'Breez Liquid SDK Demo';
|
||||
|
||||
@@ -48,9 +50,15 @@ class _AppState extends State<App> {
|
||||
return MaterialApp(
|
||||
title: App.title,
|
||||
theme: ThemeData.from(colorScheme: ColorScheme.fromSeed(seedColor: Colors.white), useMaterial3: true),
|
||||
home: widget.liquidSDK == null
|
||||
? ConnectPage(credentialsManager: widget.credentialsManager)
|
||||
: HomePage(credentialsManager: widget.credentialsManager, liquidSDK: widget.liquidSDK!),
|
||||
home: widget.liquidSDK.wallet == null
|
||||
? ConnectPage(
|
||||
liquidSDK: widget.liquidSDK,
|
||||
credentialsManager: widget.credentialsManager,
|
||||
)
|
||||
: HomePage(
|
||||
credentialsManager: widget.credentialsManager,
|
||||
liquidSDK: widget.liquidSDK,
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user