diff --git a/cyberwow/lib/controller/rpc.dart b/cyberwow/lib/controller/rpc.dart index 53b79e2..5135c77 100644 --- a/cyberwow/lib/controller/rpc.dart +++ b/cyberwow/lib/controller/rpc.dart @@ -93,6 +93,23 @@ Future getInfo() async { return rpc('get_info'); } + +Future getInfoString() async { + var response = await getInfo(); + + if (response == null) return ''; + + if (response.statusCode != 200) { + return ''; + } else { + final _getInfo = json.decode(response.body)['result']; + + JsonEncoder encoder = new JsonEncoder.withIndent(' '); + String _prettyInfo = encoder.convert(_getInfo); + return _prettyInfo; + } +} + Future offline() async { var response = await getInfo(); diff --git a/cyberwow/lib/state.dart b/cyberwow/lib/state.dart index 6ed2787..562018e 100644 --- a/cyberwow/lib/state.dart +++ b/cyberwow/lib/state.dart @@ -197,6 +197,7 @@ class SyncedState extends HookedState { Stream processOutput; bool synced = true; bool connected = true; + String daemonInfo = 'daemonInfo'; SyncedState(f, s, this.stdout, this.processOutput) : super (f, s); @@ -223,6 +224,7 @@ class SyncedState extends HookedState { // print('synced loop'); height = await rpc.height(); connected = await daemon.isConnected(); + daemonInfo = await rpc.getInfoString(); syncState(); } } diff --git a/cyberwow/lib/widget/synced.dart b/cyberwow/lib/widget/synced.dart index d385e8c..328a5e9 100644 --- a/cyberwow/lib/widget/synced.dart +++ b/cyberwow/lib/widget/synced.dart @@ -93,7 +93,37 @@ Widget summary(SyncedState state) { Widget helloPage(SyncedState state) { return Container ( - child: Text('HelloPage'), + padding: const EdgeInsets.all(10.0), + color: config.backgroundColor, + child: Align + ( + alignment: Alignment.topLeft, + child: Column + ( + mainAxisAlignment: MainAxisAlignment.center, + children: + [ + Expanded + ( + flex: 1, + child: SingleChildScrollView + ( + scrollDirection: Axis.vertical, + child: Text + ( + state.daemonInfo, + style: TextStyle + ( + fontFamily: 'RobotoMono', + fontSize: 11, + color: config.textColor, + ), + ) + ) + ) + ], + ), + ), ); } @@ -102,8 +132,8 @@ Widget pageView (SyncedState state, PageController controller) { controller: controller, children: [ - summary(state), helloPage(state), + summary(state), ], ); }