Add helper methods

This commit is contained in:
Hillel Coren 2020-05-28 15:39:03 +03:00
parent 89074a6b58
commit 93454da43c
3 changed files with 23 additions and 6 deletions

View File

@ -1,8 +1,6 @@
import 'package:flutter/material.dart';
import 'package:flutter_redux/flutter_redux.dart';
import 'package:invoiceninja_flutter/data/models/client_model.dart';
import 'package:invoiceninja_flutter/data/models/entities.dart';
import 'package:invoiceninja_flutter/redux/app/app_state.dart';
import 'package:invoiceninja_flutter/redux/credit/credit_selectors.dart';
import 'package:invoiceninja_flutter/redux/expense/expense_selectors.dart';
import 'package:invoiceninja_flutter/redux/invoice/invoice_selectors.dart';
@ -17,7 +15,7 @@ import 'package:invoiceninja_flutter/ui/app/icon_message.dart';
import 'package:invoiceninja_flutter/ui/app/lists/list_divider.dart';
import 'package:invoiceninja_flutter/ui/client/view/client_view_vm.dart';
import 'package:invoiceninja_flutter/utils/formatting.dart';
import 'package:invoiceninja_flutter/utils/localization.dart';
import 'package:invoiceninja_flutter/utils/extensions.dart';
class ClientOverview extends StatelessWidget {
const ClientOverview({
@ -31,10 +29,10 @@ class ClientOverview extends StatelessWidget {
@override
Widget build(BuildContext context) {
final localization = AppLocalization.of(context);
final localization = context.localization;
final client = viewModel.client;
final company = viewModel.company;
final state = StoreProvider.of<AppState>(context).state;
final state = context.state;
final statics = state.staticState;
final fields = <String, String>{};
final group = client.hasGroup ? state.groupState.map[client.groupId] : null;

19
lib/utils/extensions.dart Normal file
View File

@ -0,0 +1,19 @@
import 'package:flutter/material.dart';
import 'package:redux/redux.dart';
import 'package:flutter_redux/flutter_redux.dart';
import 'package:invoiceninja_flutter/redux/app/app_state.dart';
import 'package:invoiceninja_flutter/utils/localization.dart';
extension ContextHelper on BuildContext {
AppLocalization get localization {
return AppLocalization.of(this);
}
Store<AppState> get store {
return StoreProvider.of<AppState>(this);
}
AppState get state {
return store.state;
}
}

View File

@ -6,7 +6,7 @@ homepage: https://invoiceninja.com
documentation: http://docs.invoiceninja.com
environment:
sdk: ">=2.4.0 <3.0.0"
sdk: ">=2.6.0 <3.0.0"
dependencies:
flutter: