Starter...

This commit is contained in:
Hillel Coren 2020-03-02 20:06:10 +02:00
parent 3d0f99c06e
commit c4418a3f6f
35 changed files with 109 additions and 39 deletions

View File

@ -36,11 +36,30 @@ abstract class CreditItemResponse
class CreditFields { class CreditFields {
static const String amount = 'amount'; static const String amount = 'amount';
static const String balance = 'balance'; static const String balance = 'balance';
static const String creditDate = 'creditDate';
static const String creditNumber = 'creditNumber';
static const String privateNotes = 'privateNotes';
static const String publicNotes = 'publicNotes';
static const String clientId = 'clientId'; static const String clientId = 'clientId';
static const String client = 'client';
static const String statusId = 'statusId';
static const String number = 'number';
static const String discount = 'discount';
static const String poNumber = 'poNumber';
static const String date = 'date';
static const String dueDate = 'dueDate';
static const String terms = 'terms';
static const String footer = 'invoiceFooter';
static const String partial = 'partial';
static const String partialDueDate = 'partialDueDate';
static const String publicNotes = 'publicNotes';
static const String privateNotes = 'privateNotes';
static const String invoiceTypeId = 'invoiceTypeId';
static const String isRecurring = 'isRecurring';
static const String frequencyId = 'frequencyId';
static const String startDate = 'startDate';
static const String endDate = 'endDate';
static const String customValue1 = 'customValue1';
static const String customValue2 = 'customValue2';
static const String customValue3 = 'customValue3';
static const String customValue4 = 'customValue4';
static const String updatedAt = 'updatedAt'; static const String updatedAt = 'updatedAt';
static const String archivedAt = 'archivedAt'; static const String archivedAt = 'archivedAt';

View File

@ -39,25 +39,30 @@ abstract class QuoteItemResponse
class QuoteFields { class QuoteFields {
static const String amount = 'amount'; static const String amount = 'amount';
static const String balance = 'balance'; static const String balance = 'balance';
static const String client = 'client';
static const String clientId = 'clientId'; static const String clientId = 'clientId';
static const String client = 'client';
static const String statusId = 'statusId'; static const String statusId = 'statusId';
static const String number = 'number'; static const String number = 'number';
static const String discount = 'discount'; static const String discount = 'discount';
static const String poNumber = 'poNumber'; static const String poNumber = 'poNumber';
static const String date = 'date'; static const String date = 'date';
static const String dueDate = 'dueDate'; static const String validUntil = 'validUntil';
static const String terms = 'terms'; static const String terms = 'terms';
static const String footer = 'invoiceFooter';
static const String partial = 'partial'; static const String partial = 'partial';
static const String partialDueDate = 'partialDueDate'; static const String partialDueDate = 'partialDueDate';
static const String publicNotes = 'publicNotes'; static const String publicNotes = 'publicNotes';
static const String privateNotes = 'privateNotes'; static const String privateNotes = 'privateNotes';
static const String quoteTypeId = 'quoteTypeId'; static const String invoiceTypeId = 'invoiceTypeId';
static const String isRecurring = 'isRecurring'; static const String isRecurring = 'isRecurring';
static const String frequencyId = 'frequencyId'; static const String frequencyId = 'frequencyId';
static const String startDate = 'startDate'; static const String startDate = 'startDate';
static const String endDate = 'endDate'; static const String endDate = 'endDate';
static const String validUntil = 'validUntil';
static const String customValue1 = 'customValue1';
static const String customValue2 = 'customValue2';
static const String customValue3 = 'customValue3';
static const String customValue4 = 'customValue4';
static const String updatedAt = 'updatedAt'; static const String updatedAt = 'updatedAt';
static const String archivedAt = 'archivedAt'; static const String archivedAt = 'archivedAt';

View File

@ -58,7 +58,7 @@ abstract class CreditUIState extends Object
implements Built<CreditUIState, CreditUIStateBuilder> { implements Built<CreditUIState, CreditUIStateBuilder> {
factory CreditUIState() { factory CreditUIState() {
return _$CreditUIState._( return _$CreditUIState._(
listUIState: ListUIState(CreditFields.name), listUIState: ListUIState(CreditFields.number),
editing: InvoiceEntity(), editing: InvoiceEntity(),
selectedId: '', selectedId: '',
); );

View File

@ -259,12 +259,6 @@ class MenuDrawer extends StatelessWidget {
entityType: EntityType.credit, entityType: EntityType.credit,
icon: getEntityIcon(EntityType.credit), icon: getEntityIcon(EntityType.credit),
title: localization.credits, title: localization.credits,
onTap: () => store.dispatch(ViewcreditList(context)),
onCreateTap: () {
navigator.pop();
store.dispatch(EditCredit(
credit: InvoiceEntity(), context: context));
},
), ),
DrawerTile( DrawerTile(

View File

@ -11,7 +11,7 @@ import 'package:invoiceninja_flutter/ui/app/help_text.dart';
import 'package:invoiceninja_flutter/ui/app/lists/list_divider.dart'; import 'package:invoiceninja_flutter/ui/app/lists/list_divider.dart';
import 'package:invoiceninja_flutter/ui/app/loading_indicator.dart'; import 'package:invoiceninja_flutter/ui/app/loading_indicator.dart';
import 'package:invoiceninja_flutter/ui/app/presenters/entity_presenter.dart'; import 'package:invoiceninja_flutter/ui/app/presenters/entity_presenter.dart';
import 'package:invoiceninja_flutter/ui/app/presenters/client_presenter.dart'; import 'file:///C:/Users/hillel/Documents/flutter-mobile/lib/ui/client/client_presenter.dart';
import 'package:invoiceninja_flutter/ui/app/tables/entity_datatable.dart'; import 'package:invoiceninja_flutter/ui/app/tables/entity_datatable.dart';
import 'package:invoiceninja_flutter/ui/client/client_list_item.dart'; import 'package:invoiceninja_flutter/ui/client/client_list_item.dart';
import 'package:invoiceninja_flutter/ui/client/client_list_vm.dart'; import 'package:invoiceninja_flutter/ui/client/client_list_vm.dart';

View File

@ -10,7 +10,7 @@ import 'package:invoiceninja_flutter/redux/app/app_actions.dart';
import 'package:invoiceninja_flutter/redux/app/app_state.dart'; import 'package:invoiceninja_flutter/redux/app/app_state.dart';
import 'package:invoiceninja_flutter/redux/client/client_actions.dart'; import 'package:invoiceninja_flutter/redux/client/client_actions.dart';
import 'package:invoiceninja_flutter/redux/client/client_selectors.dart'; import 'package:invoiceninja_flutter/redux/client/client_selectors.dart';
import 'package:invoiceninja_flutter/ui/app/presenters/client_presenter.dart'; import 'file:///C:/Users/hillel/Documents/flutter-mobile/lib/ui/client/client_presenter.dart';
import 'package:invoiceninja_flutter/ui/client/client_list.dart'; import 'package:invoiceninja_flutter/ui/client/client_list.dart';
import 'package:invoiceninja_flutter/utils/completers.dart'; import 'package:invoiceninja_flutter/utils/completers.dart';
import 'package:invoiceninja_flutter/utils/localization.dart'; import 'package:invoiceninja_flutter/utils/localization.dart';

View File

@ -35,6 +35,7 @@ class CreditListBuilder extends StatelessWidget {
class CreditListVM { class CreditListVM {
CreditListVM({ CreditListVM({
@required this.state,
@required this.userCompany, @required this.userCompany,
@required this.creditList, @required this.creditList,
@required this.creditMap, @required this.creditMap,
@ -64,6 +65,7 @@ class CreditListVM {
final state = store.state; final state = store.state;
return CreditListVM( return CreditListVM(
state: state,
userCompany: state.userCompany, userCompany: state.userCompany,
listState: state.creditListState, listState: state.creditListState,
creditList: memoizedFilteredCreditList( creditList: memoizedFilteredCreditList(
@ -91,6 +93,7 @@ class CreditListVM {
); );
} }
final AppState state;
final UserCompanyEntity userCompany; final UserCompanyEntity userCompany;
final List<String> creditList; final List<String> creditList;
final BuiltMap<String, InvoiceEntity> creditMap; final BuiltMap<String, InvoiceEntity> creditMap;

View File

@ -0,0 +1,25 @@
import 'package:flutter/material.dart';
import 'package:flutter_redux/flutter_redux.dart';
import 'package:invoiceninja_flutter/data/models/models.dart';
import 'package:invoiceninja_flutter/data/models/credit_model.dart';
import 'package:invoiceninja_flutter/redux/app/app_state.dart';
import 'package:invoiceninja_flutter/ui/app/presenters/entity_presenter.dart';
import 'package:invoiceninja_flutter/utils/formatting.dart';
class CreditPresenter extends EntityPresenter {
static List<String> getTableFields(UserCompanyEntity userCompany) {
return [
];
}
@override
Widget getField({String field, BuildContext context}) {
final state = StoreProvider.of<AppState>(context).state;
final credit = entity as InvoiceEntity;
switch (field) {
}
return super.getField(field: field, context: context);
}
}

View File

@ -13,7 +13,7 @@ import 'package:invoiceninja_flutter/ui/app/lists/list_divider.dart';
import 'package:invoiceninja_flutter/ui/app/lists/list_filter.dart'; import 'package:invoiceninja_flutter/ui/app/lists/list_filter.dart';
import 'package:invoiceninja_flutter/ui/app/loading_indicator.dart'; import 'package:invoiceninja_flutter/ui/app/loading_indicator.dart';
import 'package:invoiceninja_flutter/ui/app/presenters/entity_presenter.dart'; import 'package:invoiceninja_flutter/ui/app/presenters/entity_presenter.dart';
import 'package:invoiceninja_flutter/ui/app/presenters/expense_presenter.dart'; import 'file:///C:/Users/hillel/Documents/flutter-mobile/lib/ui/expense/expense_presenter.dart';
import 'package:invoiceninja_flutter/ui/app/tables/entity_datatable.dart'; import 'package:invoiceninja_flutter/ui/app/tables/entity_datatable.dart';
import 'package:invoiceninja_flutter/ui/expense/expense_list_item.dart'; import 'package:invoiceninja_flutter/ui/expense/expense_list_item.dart';
import 'package:invoiceninja_flutter/ui/expense/expense_list_vm.dart'; import 'package:invoiceninja_flutter/ui/expense/expense_list_vm.dart';

View File

@ -10,7 +10,7 @@ import 'package:invoiceninja_flutter/redux/app/app_state.dart';
import 'package:invoiceninja_flutter/redux/expense/expense_actions.dart'; import 'package:invoiceninja_flutter/redux/expense/expense_actions.dart';
import 'package:invoiceninja_flutter/redux/expense/expense_selectors.dart'; import 'package:invoiceninja_flutter/redux/expense/expense_selectors.dart';
import 'package:invoiceninja_flutter/redux/ui/list_ui_state.dart'; import 'package:invoiceninja_flutter/redux/ui/list_ui_state.dart';
import 'package:invoiceninja_flutter/ui/app/presenters/expense_presenter.dart'; import 'file:///C:/Users/hillel/Documents/flutter-mobile/lib/ui/expense/expense_presenter.dart';
import 'package:invoiceninja_flutter/ui/expense/expense_list.dart'; import 'package:invoiceninja_flutter/ui/expense/expense_list.dart';
import 'package:invoiceninja_flutter/utils/completers.dart'; import 'package:invoiceninja_flutter/utils/completers.dart';
import 'package:invoiceninja_flutter/utils/localization.dart'; import 'package:invoiceninja_flutter/utils/localization.dart';

View File

@ -13,7 +13,7 @@ import 'package:invoiceninja_flutter/ui/app/lists/list_divider.dart';
import 'package:invoiceninja_flutter/ui/app/lists/list_filter.dart'; import 'package:invoiceninja_flutter/ui/app/lists/list_filter.dart';
import 'package:invoiceninja_flutter/ui/app/loading_indicator.dart'; import 'package:invoiceninja_flutter/ui/app/loading_indicator.dart';
import 'package:invoiceninja_flutter/ui/app/presenters/entity_presenter.dart'; import 'package:invoiceninja_flutter/ui/app/presenters/entity_presenter.dart';
import 'package:invoiceninja_flutter/ui/app/presenters/invoice_presenter.dart'; import 'file:///C:/Users/hillel/Documents/flutter-mobile/lib/ui/invoice/invoice_presenter.dart';
import 'package:invoiceninja_flutter/ui/app/tables/entity_datatable.dart'; import 'package:invoiceninja_flutter/ui/app/tables/entity_datatable.dart';
import 'package:invoiceninja_flutter/ui/invoice/invoice_list_item.dart'; import 'package:invoiceninja_flutter/ui/invoice/invoice_list_item.dart';
import 'package:invoiceninja_flutter/ui/invoice/invoice_list_vm.dart'; import 'package:invoiceninja_flutter/ui/invoice/invoice_list_vm.dart';

View File

@ -10,7 +10,7 @@ import 'package:invoiceninja_flutter/redux/app/app_state.dart';
import 'package:invoiceninja_flutter/redux/invoice/invoice_actions.dart'; import 'package:invoiceninja_flutter/redux/invoice/invoice_actions.dart';
import 'package:invoiceninja_flutter/redux/invoice/invoice_selectors.dart'; import 'package:invoiceninja_flutter/redux/invoice/invoice_selectors.dart';
import 'package:invoiceninja_flutter/redux/ui/list_ui_state.dart'; import 'package:invoiceninja_flutter/redux/ui/list_ui_state.dart';
import 'package:invoiceninja_flutter/ui/app/presenters/invoice_presenter.dart'; import 'file:///C:/Users/hillel/Documents/flutter-mobile/lib/ui/invoice/invoice_presenter.dart';
import 'package:invoiceninja_flutter/ui/invoice/invoice_list.dart'; import 'package:invoiceninja_flutter/ui/invoice/invoice_list.dart';
import 'package:invoiceninja_flutter/utils/completers.dart'; import 'package:invoiceninja_flutter/utils/completers.dart';
import 'package:invoiceninja_flutter/utils/localization.dart'; import 'package:invoiceninja_flutter/utils/localization.dart';

View File

@ -12,7 +12,7 @@ import 'package:invoiceninja_flutter/ui/app/lists/list_divider.dart';
import 'package:invoiceninja_flutter/ui/app/lists/list_filter.dart'; import 'package:invoiceninja_flutter/ui/app/lists/list_filter.dart';
import 'package:invoiceninja_flutter/ui/app/loading_indicator.dart'; import 'package:invoiceninja_flutter/ui/app/loading_indicator.dart';
import 'package:invoiceninja_flutter/ui/app/presenters/entity_presenter.dart'; import 'package:invoiceninja_flutter/ui/app/presenters/entity_presenter.dart';
import 'package:invoiceninja_flutter/ui/app/presenters/payment_presenter.dart'; import 'file:///C:/Users/hillel/Documents/flutter-mobile/lib/ui/payment/payment_presenter.dart';
import 'package:invoiceninja_flutter/ui/app/tables/entity_datatable.dart'; import 'package:invoiceninja_flutter/ui/app/tables/entity_datatable.dart';
import 'package:invoiceninja_flutter/ui/payment/payment_list_item.dart'; import 'package:invoiceninja_flutter/ui/payment/payment_list_item.dart';
import 'package:invoiceninja_flutter/ui/payment/payment_list_vm.dart'; import 'package:invoiceninja_flutter/ui/payment/payment_list_vm.dart';

View File

@ -11,7 +11,7 @@ import 'package:invoiceninja_flutter/redux/app/app_state.dart';
import 'package:invoiceninja_flutter/redux/payment/payment_actions.dart'; import 'package:invoiceninja_flutter/redux/payment/payment_actions.dart';
import 'package:invoiceninja_flutter/redux/payment/payment_selectors.dart'; import 'package:invoiceninja_flutter/redux/payment/payment_selectors.dart';
import 'package:invoiceninja_flutter/redux/ui/list_ui_state.dart'; import 'package:invoiceninja_flutter/redux/ui/list_ui_state.dart';
import 'package:invoiceninja_flutter/ui/app/presenters/payment_presenter.dart'; import 'file:///C:/Users/hillel/Documents/flutter-mobile/lib/ui/payment/payment_presenter.dart';
import 'package:invoiceninja_flutter/ui/payment/payment_list.dart'; import 'package:invoiceninja_flutter/ui/payment/payment_list.dart';
import 'package:invoiceninja_flutter/utils/completers.dart'; import 'package:invoiceninja_flutter/utils/completers.dart';
import 'package:invoiceninja_flutter/utils/localization.dart'; import 'package:invoiceninja_flutter/utils/localization.dart';

View File

@ -11,7 +11,7 @@ import 'package:invoiceninja_flutter/ui/app/help_text.dart';
import 'package:invoiceninja_flutter/ui/app/lists/list_divider.dart'; import 'package:invoiceninja_flutter/ui/app/lists/list_divider.dart';
import 'package:invoiceninja_flutter/ui/app/loading_indicator.dart'; import 'package:invoiceninja_flutter/ui/app/loading_indicator.dart';
import 'package:invoiceninja_flutter/ui/app/presenters/entity_presenter.dart'; import 'package:invoiceninja_flutter/ui/app/presenters/entity_presenter.dart';
import 'package:invoiceninja_flutter/ui/app/presenters/product_presenter.dart'; import 'file:///C:/Users/hillel/Documents/flutter-mobile/lib/ui/product/product_presenter.dart';
import 'package:invoiceninja_flutter/ui/app/tables/entity_datatable.dart'; import 'package:invoiceninja_flutter/ui/app/tables/entity_datatable.dart';
import 'package:invoiceninja_flutter/ui/product/product_list_item.dart'; import 'package:invoiceninja_flutter/ui/product/product_list_item.dart';
import 'package:invoiceninja_flutter/ui/product/product_list_vm.dart'; import 'package:invoiceninja_flutter/ui/product/product_list_vm.dart';

View File

@ -10,7 +10,7 @@ import 'package:invoiceninja_flutter/redux/app/app_actions.dart';
import 'package:invoiceninja_flutter/redux/app/app_state.dart'; import 'package:invoiceninja_flutter/redux/app/app_state.dart';
import 'package:invoiceninja_flutter/redux/product/product_actions.dart'; import 'package:invoiceninja_flutter/redux/product/product_actions.dart';
import 'package:invoiceninja_flutter/redux/product/product_selectors.dart'; import 'package:invoiceninja_flutter/redux/product/product_selectors.dart';
import 'package:invoiceninja_flutter/ui/app/presenters/product_presenter.dart'; import 'file:///C:/Users/hillel/Documents/flutter-mobile/lib/ui/product/product_presenter.dart';
import 'package:invoiceninja_flutter/ui/product/product_list.dart'; import 'package:invoiceninja_flutter/ui/product/product_list.dart';
import 'package:invoiceninja_flutter/utils/completers.dart'; import 'package:invoiceninja_flutter/utils/completers.dart';
import 'package:invoiceninja_flutter/utils/localization.dart'; import 'package:invoiceninja_flutter/utils/localization.dart';

View File

@ -12,7 +12,7 @@ import 'package:invoiceninja_flutter/ui/app/lists/list_divider.dart';
import 'package:invoiceninja_flutter/ui/app/lists/list_filter.dart'; import 'package:invoiceninja_flutter/ui/app/lists/list_filter.dart';
import 'package:invoiceninja_flutter/ui/app/loading_indicator.dart'; import 'package:invoiceninja_flutter/ui/app/loading_indicator.dart';
import 'package:invoiceninja_flutter/ui/app/presenters/entity_presenter.dart'; import 'package:invoiceninja_flutter/ui/app/presenters/entity_presenter.dart';
import 'package:invoiceninja_flutter/ui/app/presenters/project_presenter.dart'; import 'file:///C:/Users/hillel/Documents/flutter-mobile/lib/ui/project/project_presenter.dart';
import 'package:invoiceninja_flutter/ui/app/tables/entity_datatable.dart'; import 'package:invoiceninja_flutter/ui/app/tables/entity_datatable.dart';
import 'package:invoiceninja_flutter/ui/project/project_list_item.dart'; import 'package:invoiceninja_flutter/ui/project/project_list_item.dart';
import 'package:invoiceninja_flutter/ui/project/project_list_vm.dart'; import 'package:invoiceninja_flutter/ui/project/project_list_vm.dart';

View File

@ -11,7 +11,7 @@ import 'package:invoiceninja_flutter/redux/app/app_state.dart';
import 'package:invoiceninja_flutter/redux/project/project_actions.dart'; import 'package:invoiceninja_flutter/redux/project/project_actions.dart';
import 'package:invoiceninja_flutter/redux/project/project_selectors.dart'; import 'package:invoiceninja_flutter/redux/project/project_selectors.dart';
import 'package:invoiceninja_flutter/redux/ui/list_ui_state.dart'; import 'package:invoiceninja_flutter/redux/ui/list_ui_state.dart';
import 'package:invoiceninja_flutter/ui/app/presenters/project_presenter.dart'; import 'file:///C:/Users/hillel/Documents/flutter-mobile/lib/ui/project/project_presenter.dart';
import 'package:invoiceninja_flutter/ui/project/project_list.dart'; import 'package:invoiceninja_flutter/ui/project/project_list.dart';
import 'package:invoiceninja_flutter/utils/completers.dart'; import 'package:invoiceninja_flutter/utils/completers.dart';
import 'package:invoiceninja_flutter/utils/localization.dart'; import 'package:invoiceninja_flutter/utils/localization.dart';

View File

@ -8,7 +8,7 @@ import 'package:flutter/foundation.dart';
import 'package:flutter/widgets.dart'; import 'package:flutter/widgets.dart';
import 'package:flutter_redux/flutter_redux.dart'; import 'package:flutter_redux/flutter_redux.dart';
import 'package:invoiceninja_flutter/redux/ui/list_ui_state.dart'; import 'package:invoiceninja_flutter/redux/ui/list_ui_state.dart';
import 'package:invoiceninja_flutter/ui/app/presenters/quote_presenter.dart'; import 'file:///C:/Users/hillel/Documents/flutter-mobile/lib/ui/quote/quote_presenter.dart';
import 'package:invoiceninja_flutter/ui/invoice/invoice_list.dart'; import 'package:invoiceninja_flutter/ui/invoice/invoice_list.dart';
import 'package:invoiceninja_flutter/ui/invoice/invoice_list_vm.dart'; import 'package:invoiceninja_flutter/ui/invoice/invoice_list_vm.dart';
import 'package:invoiceninja_flutter/utils/completers.dart'; import 'package:invoiceninja_flutter/utils/completers.dart';

View File

@ -14,7 +14,7 @@ class QuotePresenter extends EntityPresenter {
QuoteFields.date, QuoteFields.date,
QuoteFields.amount, QuoteFields.amount,
QuoteFields.balance, QuoteFields.balance,
QuoteFields.dueDate, QuoteFields.validUntil,
EntityFields.state, EntityFields.state,
]; ];
} }
@ -37,7 +37,7 @@ class QuotePresenter extends EntityPresenter {
return Text(formatNumber(quote.amount, context)); return Text(formatNumber(quote.amount, context));
case QuoteFields.balance: case QuoteFields.balance:
return Text(formatNumber(quote.balance, context)); return Text(formatNumber(quote.balance, context));
case QuoteFields.dueDate: case QuoteFields.validUntil:
return Text(formatDate(quote.dueDate, context)); return Text(formatDate(quote.dueDate, context));
} }

View File

@ -12,7 +12,7 @@ import 'package:invoiceninja_flutter/ui/app/lists/list_divider.dart';
import 'package:invoiceninja_flutter/ui/app/lists/list_filter.dart'; import 'package:invoiceninja_flutter/ui/app/lists/list_filter.dart';
import 'package:invoiceninja_flutter/ui/app/loading_indicator.dart'; import 'package:invoiceninja_flutter/ui/app/loading_indicator.dart';
import 'package:invoiceninja_flutter/ui/app/presenters/entity_presenter.dart'; import 'package:invoiceninja_flutter/ui/app/presenters/entity_presenter.dart';
import 'package:invoiceninja_flutter/ui/app/presenters/task_presenter.dart'; import 'file:///C:/Users/hillel/Documents/flutter-mobile/lib/ui/task/task_presenter.dart';
import 'package:invoiceninja_flutter/ui/app/tables/entity_datatable.dart'; import 'package:invoiceninja_flutter/ui/app/tables/entity_datatable.dart';
import 'package:invoiceninja_flutter/ui/task/task_list_item.dart'; import 'package:invoiceninja_flutter/ui/task/task_list_item.dart';
import 'package:invoiceninja_flutter/ui/task/task_list_vm.dart'; import 'package:invoiceninja_flutter/ui/task/task_list_vm.dart';

View File

@ -11,7 +11,7 @@ import 'package:invoiceninja_flutter/redux/app/app_state.dart';
import 'package:invoiceninja_flutter/redux/task/task_actions.dart'; import 'package:invoiceninja_flutter/redux/task/task_actions.dart';
import 'package:invoiceninja_flutter/redux/task/task_selectors.dart'; import 'package:invoiceninja_flutter/redux/task/task_selectors.dart';
import 'package:invoiceninja_flutter/redux/ui/list_ui_state.dart'; import 'package:invoiceninja_flutter/redux/ui/list_ui_state.dart';
import 'package:invoiceninja_flutter/ui/app/presenters/task_presenter.dart'; import 'file:///C:/Users/hillel/Documents/flutter-mobile/lib/ui/task/task_presenter.dart';
import 'package:invoiceninja_flutter/ui/task/task_list.dart'; import 'package:invoiceninja_flutter/ui/task/task_list.dart';
import 'package:invoiceninja_flutter/utils/completers.dart'; import 'package:invoiceninja_flutter/utils/completers.dart';
import 'package:invoiceninja_flutter/utils/localization.dart'; import 'package:invoiceninja_flutter/utils/localization.dart';

View File

@ -11,7 +11,7 @@ import 'package:invoiceninja_flutter/ui/app/help_text.dart';
import 'package:invoiceninja_flutter/ui/app/lists/list_divider.dart'; import 'package:invoiceninja_flutter/ui/app/lists/list_divider.dart';
import 'package:invoiceninja_flutter/ui/app/loading_indicator.dart'; import 'package:invoiceninja_flutter/ui/app/loading_indicator.dart';
import 'package:invoiceninja_flutter/ui/app/presenters/entity_presenter.dart'; import 'package:invoiceninja_flutter/ui/app/presenters/entity_presenter.dart';
import 'package:invoiceninja_flutter/ui/app/presenters/vendor_presenter.dart'; import 'file:///C:/Users/hillel/Documents/flutter-mobile/lib/ui/vendor/vendor_presenter.dart';
import 'package:invoiceninja_flutter/ui/app/tables/entity_datatable.dart'; import 'package:invoiceninja_flutter/ui/app/tables/entity_datatable.dart';
import 'package:invoiceninja_flutter/ui/vendor/vendor_list_item.dart'; import 'package:invoiceninja_flutter/ui/vendor/vendor_list_item.dart';
import 'package:invoiceninja_flutter/ui/vendor/vendor_list_vm.dart'; import 'package:invoiceninja_flutter/ui/vendor/vendor_list_vm.dart';

View File

@ -10,7 +10,7 @@ import 'package:invoiceninja_flutter/redux/app/app_state.dart';
import 'package:invoiceninja_flutter/redux/ui/list_ui_state.dart'; import 'package:invoiceninja_flutter/redux/ui/list_ui_state.dart';
import 'package:invoiceninja_flutter/redux/vendor/vendor_actions.dart'; import 'package:invoiceninja_flutter/redux/vendor/vendor_actions.dart';
import 'package:invoiceninja_flutter/redux/vendor/vendor_selectors.dart'; import 'package:invoiceninja_flutter/redux/vendor/vendor_selectors.dart';
import 'package:invoiceninja_flutter/ui/app/presenters/vendor_presenter.dart'; import 'file:///C:/Users/hillel/Documents/flutter-mobile/lib/ui/vendor/vendor_presenter.dart';
import 'package:invoiceninja_flutter/ui/vendor/vendor_list.dart'; import 'package:invoiceninja_flutter/ui/vendor/vendor_list.dart';
import 'package:invoiceninja_flutter/utils/completers.dart'; import 'package:invoiceninja_flutter/utils/completers.dart';
import 'package:invoiceninja_flutter/utils/localization.dart'; import 'package:invoiceninja_flutter/utils/localization.dart';

View File

@ -168,6 +168,7 @@ else
'./stubs/ui/stub/stub_list_item' './stubs/ui/stub/stub_list_item'
'./stubs/ui/stub/stub_list_vm' './stubs/ui/stub/stub_list_vm'
'./stubs/ui/stub/stub_list' './stubs/ui/stub/stub_list'
'./stubs/ui/stub/stub_presenter'
'./stubs/ui/stub/stub_screen') './stubs/ui/stub/stub_screen')
for i in "${files[@]}" for i in "${files[@]}"
@ -352,11 +353,6 @@ else
code="${code}entityType: EntityType.${module_camel},${lineBreak}" code="${code}entityType: EntityType.${module_camel},${lineBreak}"
code="${code}icon: getEntityIcon(EntityType.${module_camel}),${lineBreak}" code="${code}icon: getEntityIcon(EntityType.${module_camel}),${lineBreak}"
code="${code}title: localization.${module_camel}s,${lineBreak}" code="${code}title: localization.${module_camel}s,${lineBreak}"
code="${code}onTap: () => store.dispatch(View${module_camel}List(context)),${lineBreak}"
code="${code}onCreateTap: () {${lineBreak}"
code="${code}navigator.pop();${lineBreak}"
code="${code}store.dispatch(Edit${Module}(${lineBreak}"
code="${code}${module_camel}: ${Module}Entity(), context: context));${lineBreak}"
code="${code}},${lineBreak}" code="${code}},${lineBreak}"
code="${code}),${lineBreak}" code="${code}),${lineBreak}"
sed -i -e "s/$comment/$comment${lineBreak}$code/g" ./lib/ui/app/menu_drawer.dart sed -i -e "s/$comment/$comment${lineBreak}$code/g" ./lib/ui/app/menu_drawer.dart

View File

@ -35,6 +35,7 @@ class StubListBuilder extends StatelessWidget {
class StubListVM { class StubListVM {
StubListVM({ StubListVM({
@required this.state,
@required this.userCompany, @required this.userCompany,
@required this.stubList, @required this.stubList,
@required this.stubMap, @required this.stubMap,
@ -64,6 +65,7 @@ class StubListVM {
final state = store.state; final state = store.state;
return StubListVM( return StubListVM(
state: state,
userCompany: state.userCompany, userCompany: state.userCompany,
listState: state.stubListState, listState: state.stubListState,
stubList: memoizedFilteredStubList(state.stubState.map, stubList: memoizedFilteredStubList(state.stubState.map,
@ -93,6 +95,7 @@ class StubListVM {
); );
} }
final AppState state;
final UserCompanyEntity userCompany; final UserCompanyEntity userCompany;
final List<String> stubList; final List<String> stubList;
final BuiltMap<String, StubEntity> stubMap; final BuiltMap<String, StubEntity> stubMap;

View File

@ -0,0 +1,25 @@
import 'package:flutter/material.dart';
import 'package:flutter_redux/flutter_redux.dart';
import 'package:invoiceninja_flutter/data/models/models.dart';
import 'package:invoiceninja_flutter/data/models/stub_model.dart';
import 'package:invoiceninja_flutter/redux/app/app_state.dart';
import 'package:invoiceninja_flutter/ui/app/presenters/entity_presenter.dart';
import 'package:invoiceninja_flutter/utils/formatting.dart';
class StubPresenter extends EntityPresenter {
static List<String> getTableFields(UserCompanyEntity userCompany) {
return [
];
}
@override
Widget getField({String field, BuildContext context}) {
final state = StoreProvider.of<AppState>(context).state;
final stub = entity as InvoiceEntity;
switch (field) {
}
return super.getField(field: field, context: context);
}
}