System log
This commit is contained in:
parent
c21f012f1a
commit
22cd63ac37
|
|
@ -11,6 +11,7 @@ import 'package:invoiceninja_flutter/ui/client/view/client_view_activity.dart';
|
|||
import 'package:invoiceninja_flutter/ui/client/view/client_view_details.dart';
|
||||
import 'package:invoiceninja_flutter/ui/client/view/client_view_documents.dart';
|
||||
import 'package:invoiceninja_flutter/ui/client/view/client_view_ledger.dart';
|
||||
import 'package:invoiceninja_flutter/ui/client/view/client_view_system_logs.dart';
|
||||
import 'package:invoiceninja_flutter/ui/client/view/client_view_vm.dart';
|
||||
import 'package:invoiceninja_flutter/ui/client/view/client_view_overview.dart';
|
||||
import 'package:invoiceninja_flutter/utils/localization.dart';
|
||||
|
|
@ -36,7 +37,7 @@ class _ClientViewState extends State<ClientView>
|
|||
@override
|
||||
void initState() {
|
||||
super.initState();
|
||||
_controller = TabController(vsync: this, length: 5);
|
||||
_controller = TabController(vsync: this, length: 6);
|
||||
}
|
||||
|
||||
@override
|
||||
|
|
@ -78,6 +79,9 @@ class _ClientViewState extends State<ClientView>
|
|||
Tab(
|
||||
text: localization.activity,
|
||||
),
|
||||
Tab(
|
||||
text: localization.systemLogs,
|
||||
),
|
||||
],
|
||||
),
|
||||
body: Builder(builder: (context) {
|
||||
|
|
@ -119,6 +123,13 @@ class _ClientViewState extends State<ClientView>
|
|||
key: ValueKey(viewModel.client.id),
|
||||
),
|
||||
),
|
||||
RefreshIndicator(
|
||||
onRefresh: () => viewModel.onRefreshed(context),
|
||||
child: ClientViewSystemLogs(
|
||||
viewModel: viewModel,
|
||||
key: ValueKey(viewModel.client.id),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
|
|
|
|||
|
|
@ -0,0 +1,60 @@
|
|||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:invoiceninja_flutter/ui/app/loading_indicator.dart';
|
||||
import 'package:invoiceninja_flutter/ui/client/view/client_view_vm.dart';
|
||||
|
||||
class ClientViewSystemLogs extends StatefulWidget {
|
||||
const ClientViewSystemLogs({Key key, this.viewModel}) : super(key: key);
|
||||
|
||||
final ClientViewVM viewModel;
|
||||
|
||||
@override
|
||||
_ClientViewSystemLogsState createState() => _ClientViewSystemLogsState();
|
||||
}
|
||||
|
||||
class _ClientViewSystemLogsState extends State<ClientViewSystemLogs> {
|
||||
|
||||
Map<String, bool> _isExpanded = {};
|
||||
|
||||
@override
|
||||
void didChangeDependencies() {
|
||||
if (widget.viewModel.client.isStale) {
|
||||
widget.viewModel.onRefreshed(context);
|
||||
}
|
||||
super.didChangeDependencies();
|
||||
}
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
final client = widget.viewModel.client;
|
||||
|
||||
if (client.isStale) {
|
||||
return LoadingIndicator();
|
||||
}
|
||||
|
||||
return ListView(
|
||||
children: [
|
||||
ExpansionPanelList(
|
||||
expansionCallback: (int index, bool isExpanded) {
|
||||
print('## expansionCallback - inde: $index, isExpanded: $isExpanded');
|
||||
setState(() {
|
||||
final systemLog = client.systemLogs[index];
|
||||
_isExpanded[systemLog.id] = !isExpanded;
|
||||
});
|
||||
},
|
||||
children: client.systemLogs.map((systemLog) {
|
||||
return ExpansionPanel(
|
||||
headerBuilder: (BuildContext context, bool isExpanded) {
|
||||
return Text(systemLog.userId);
|
||||
},
|
||||
isExpanded: _isExpanded[systemLog.id] == true,
|
||||
body: Container(
|
||||
child: Text(systemLog.log),
|
||||
),
|
||||
);
|
||||
}).toList(),
|
||||
),
|
||||
],
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -15,6 +15,7 @@ mixin LocalizationsProvider on LocaleCodeAware {
|
|||
static final Map<String, Map<String, String>> _localizedValues = {
|
||||
'en': {
|
||||
// STARTER: lang key - do not remove comment
|
||||
'system_logs': 'System Logs',
|
||||
'view_portal': 'View Portal',
|
||||
'copy_link': 'Copy Link',
|
||||
'token_billing': 'Token Billing',
|
||||
|
|
@ -4419,6 +4420,9 @@ mixin LocalizationsProvider on LocaleCodeAware {
|
|||
|
||||
String get viewPortal => _localizedValues[localeCode]['view_portal'] ?? '';
|
||||
|
||||
String get systemLogs => _localizedValues[localeCode]['system_logs'] ?? '';
|
||||
|
||||
|
||||
String lookup(String key) {
|
||||
final lookupKey = toSnakeCase(key);
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue