Settings
This commit is contained in:
parent
ac9bf2c735
commit
4dc4c624f4
|
|
@ -736,10 +736,6 @@ abstract class SettingsEntity
|
||||||
@BuiltValueField(wireName: 'invoice_labels')
|
@BuiltValueField(wireName: 'invoice_labels')
|
||||||
String get invoiceLabels;
|
String get invoiceLabels;
|
||||||
|
|
||||||
@nullable
|
|
||||||
@BuiltValueField(wireName: 'show_item_taxes')
|
|
||||||
bool get showInvoiceItemTaxes;
|
|
||||||
|
|
||||||
@nullable
|
@nullable
|
||||||
@BuiltValueField(wireName: 'tax_name1')
|
@BuiltValueField(wireName: 'tax_name1')
|
||||||
String get defaultTaxName1;
|
String get defaultTaxName1;
|
||||||
|
|
|
||||||
|
|
@ -1071,12 +1071,6 @@ class _$SettingsEntitySerializer
|
||||||
..add(serializers.serialize(object.invoiceLabels,
|
..add(serializers.serialize(object.invoiceLabels,
|
||||||
specifiedType: const FullType(String)));
|
specifiedType: const FullType(String)));
|
||||||
}
|
}
|
||||||
if (object.showInvoiceItemTaxes != null) {
|
|
||||||
result
|
|
||||||
..add('show_item_taxes')
|
|
||||||
..add(serializers.serialize(object.showInvoiceItemTaxes,
|
|
||||||
specifiedType: const FullType(bool)));
|
|
||||||
}
|
|
||||||
if (object.defaultTaxName1 != null) {
|
if (object.defaultTaxName1 != null) {
|
||||||
result
|
result
|
||||||
..add('tax_name1')
|
..add('tax_name1')
|
||||||
|
|
@ -1812,10 +1806,6 @@ class _$SettingsEntitySerializer
|
||||||
result.invoiceLabels = serializers.deserialize(value,
|
result.invoiceLabels = serializers.deserialize(value,
|
||||||
specifiedType: const FullType(String)) as String;
|
specifiedType: const FullType(String)) as String;
|
||||||
break;
|
break;
|
||||||
case 'show_item_taxes':
|
|
||||||
result.showInvoiceItemTaxes = serializers.deserialize(value,
|
|
||||||
specifiedType: const FullType(bool)) as bool;
|
|
||||||
break;
|
|
||||||
case 'tax_name1':
|
case 'tax_name1':
|
||||||
result.defaultTaxName1 = serializers.deserialize(value,
|
result.defaultTaxName1 = serializers.deserialize(value,
|
||||||
specifiedType: const FullType(String)) as String;
|
specifiedType: const FullType(String)) as String;
|
||||||
|
|
@ -3352,8 +3342,6 @@ class _$SettingsEntity extends SettingsEntity {
|
||||||
@override
|
@override
|
||||||
final String invoiceLabels;
|
final String invoiceLabels;
|
||||||
@override
|
@override
|
||||||
final bool showInvoiceItemTaxes;
|
|
||||||
@override
|
|
||||||
final String defaultTaxName1;
|
final String defaultTaxName1;
|
||||||
@override
|
@override
|
||||||
final double defaultTaxRate1;
|
final double defaultTaxRate1;
|
||||||
|
|
@ -3575,7 +3563,6 @@ class _$SettingsEntity extends SettingsEntity {
|
||||||
this.defaultQuoteDesignId,
|
this.defaultQuoteDesignId,
|
||||||
this.defaultInvoiceFooter,
|
this.defaultInvoiceFooter,
|
||||||
this.invoiceLabels,
|
this.invoiceLabels,
|
||||||
this.showInvoiceItemTaxes,
|
|
||||||
this.defaultTaxName1,
|
this.defaultTaxName1,
|
||||||
this.defaultTaxRate1,
|
this.defaultTaxRate1,
|
||||||
this.defaultTaxName2,
|
this.defaultTaxName2,
|
||||||
|
|
@ -3731,7 +3718,6 @@ class _$SettingsEntity extends SettingsEntity {
|
||||||
defaultQuoteDesignId == other.defaultQuoteDesignId &&
|
defaultQuoteDesignId == other.defaultQuoteDesignId &&
|
||||||
defaultInvoiceFooter == other.defaultInvoiceFooter &&
|
defaultInvoiceFooter == other.defaultInvoiceFooter &&
|
||||||
invoiceLabels == other.invoiceLabels &&
|
invoiceLabels == other.invoiceLabels &&
|
||||||
showInvoiceItemTaxes == other.showInvoiceItemTaxes &&
|
|
||||||
defaultTaxName1 == other.defaultTaxName1 &&
|
defaultTaxName1 == other.defaultTaxName1 &&
|
||||||
defaultTaxRate1 == other.defaultTaxRate1 &&
|
defaultTaxRate1 == other.defaultTaxRate1 &&
|
||||||
defaultTaxName2 == other.defaultTaxName2 &&
|
defaultTaxName2 == other.defaultTaxName2 &&
|
||||||
|
|
@ -3830,7 +3816,7 @@ class _$SettingsEntity extends SettingsEntity {
|
||||||
$jc(
|
$jc(
|
||||||
$jc(
|
$jc(
|
||||||
$jc(
|
$jc(
|
||||||
$jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc(0, timezoneId.hashCode), dateFormatId.hashCode), enableMilitaryTime.hashCode), languageId.hashCode), showCurrencyCode.hashCode), currencyId.hashCode), customValue1.hashCode), customValue2.hashCode), customValue3.hashCode), customValue4.hashCode), defaultPaymentTerms.hashCode), companyGatewayIds.hashCode), defaultTaskRate.hashCode), sendReminders.hashCode), showTasksInPortal.hashCode), emailStyle.hashCode), replyToEmail.hashCode), bccEmail.hashCode), pdfEmailAttachment.hashCode), ublEmailAttachment.hashCode), documentEmailAttachment.hashCode), emailStyleCustom.hashCode), customMessageDashboard.hashCode), customMessageUnpaidInvoice.hashCode), customMessagePaidInvoice.hashCode), customMessageUnapprovedQuote.hashCode), lockSentInvoices.hashCode), autoArchiveInvoice.hashCode), autoArchiveQuote.hashCode), autoEmailInvoice.hashCode), autoConvertQuote.hashCode), enableInclusiveTaxes.hashCode), translations.hashCode), taskNumberPattern.hashCode), taskNumberCounter.hashCode), expenseNumberPattern.hashCode), expenseNumberCounter.hashCode), vendorNumberPattern.hashCode), vendorNumberCounter.hashCode), ticketNumberPattern.hashCode), ticketNumberCounter.hashCode), paymentNumberPattern.hashCode), paymentNumberCounter.hashCode), invoiceNumberPattern.hashCode), invoiceNumberCounter.hashCode), quoteNumberPattern.hashCode), quoteNumberCounter.hashCode), clientNumberPattern.hashCode), clientNumberCounter.hashCode), creditNumberPattern.hashCode), creditNumberCounter.hashCode), recurringInvoiceNumberPrefix.hashCode), resetCounterFrequencyId.hashCode), resetCounterDate.hashCode), counterPadding.hashCode), sharedInvoiceQuoteCounter.hashCode), defaultInvoiceTerms.hashCode), defaultQuoteTerms.hashCode), defaultQuoteFooter.hashCode), enableInvoiceTaxes.hashCode), enableInvoiceItemTaxes.hashCode), defaultInvoiceDesignId.hashCode), defaultQuoteDesignId.hashCode), defaultInvoiceFooter.hashCode), invoiceLabels.hashCode), showInvoiceItemTaxes.hashCode), defaultTaxName1.hashCode), defaultTaxRate1.hashCode), defaultTaxName2.hashCode), defaultTaxRate2.hashCode), defaultTaxName3.hashCode), defaultTaxRate3.hashCode), defaultPaymentTypeId.hashCode), enableSecondTaxRate.hashCode), invoiceFields.hashCode), emailFooter.hashCode), emailSubjectInvoice.hashCode), emailSubjectQuote.hashCode), emailSubjectPayment.hashCode), emailBodyInvoice.hashCode), emailBodyQuote.hashCode), emailBodyPayment.hashCode), emailSubjectReminder1.hashCode), emailSubjectReminder2.hashCode), emailSubjectReminder3.hashCode), emailBodyReminder1.hashCode), emailBodyReminder2.hashCode), emailBodyReminder3.hashCode), enablePortalPassword.hashCode), sendPortalPassword.hashCode), signatureOnPdf.hashCode), enableEmailMarkup.hashCode), showAcceptInvoiceTerms.hashCode), showAcceptQuoteTerms.hashCode), requireInvoiceSignature.hashCode), requireQuoteSignature.hashCode), name.hashCode), companyLogo.hashCode), website.hashCode), address1.hashCode), address2.hashCode), city.hashCode), state.hashCode), postalCode.hashCode), phone.hashCode), email.hashCode), countryId.hashCode), vatNumber.hashCode), idNumber.hashCode), pageSize.hashCode), fontSize.hashCode), primaryColor.hashCode), secondaryColor.hashCode), primaryFont.hashCode), secondaryFont.hashCode), hidePaidToDate.hashCode), embedDocuments.hashCode), allPagesHeader.hashCode), allPagesFooter.hashCode), enableReminder1.hashCode), enableReminder2.hashCode), enableReminder3.hashCode), enableReminder4.hashCode),
|
$jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc($jc(0, timezoneId.hashCode), dateFormatId.hashCode), enableMilitaryTime.hashCode), languageId.hashCode), showCurrencyCode.hashCode), currencyId.hashCode), customValue1.hashCode), customValue2.hashCode), customValue3.hashCode), customValue4.hashCode), defaultPaymentTerms.hashCode), companyGatewayIds.hashCode), defaultTaskRate.hashCode), sendReminders.hashCode), showTasksInPortal.hashCode), emailStyle.hashCode), replyToEmail.hashCode), bccEmail.hashCode), pdfEmailAttachment.hashCode), ublEmailAttachment.hashCode), documentEmailAttachment.hashCode), emailStyleCustom.hashCode), customMessageDashboard.hashCode), customMessageUnpaidInvoice.hashCode), customMessagePaidInvoice.hashCode), customMessageUnapprovedQuote.hashCode), lockSentInvoices.hashCode), autoArchiveInvoice.hashCode), autoArchiveQuote.hashCode), autoEmailInvoice.hashCode), autoConvertQuote.hashCode), enableInclusiveTaxes.hashCode), translations.hashCode), taskNumberPattern.hashCode), taskNumberCounter.hashCode), expenseNumberPattern.hashCode), expenseNumberCounter.hashCode), vendorNumberPattern.hashCode), vendorNumberCounter.hashCode), ticketNumberPattern.hashCode), ticketNumberCounter.hashCode), paymentNumberPattern.hashCode), paymentNumberCounter.hashCode), invoiceNumberPattern.hashCode), invoiceNumberCounter.hashCode), quoteNumberPattern.hashCode), quoteNumberCounter.hashCode), clientNumberPattern.hashCode), clientNumberCounter.hashCode), creditNumberPattern.hashCode), creditNumberCounter.hashCode), recurringInvoiceNumberPrefix.hashCode), resetCounterFrequencyId.hashCode), resetCounterDate.hashCode), counterPadding.hashCode), sharedInvoiceQuoteCounter.hashCode), defaultInvoiceTerms.hashCode), defaultQuoteTerms.hashCode), defaultQuoteFooter.hashCode), enableInvoiceTaxes.hashCode), enableInvoiceItemTaxes.hashCode), defaultInvoiceDesignId.hashCode), defaultQuoteDesignId.hashCode), defaultInvoiceFooter.hashCode), invoiceLabels.hashCode), defaultTaxName1.hashCode), defaultTaxRate1.hashCode), defaultTaxName2.hashCode), defaultTaxRate2.hashCode), defaultTaxName3.hashCode), defaultTaxRate3.hashCode), defaultPaymentTypeId.hashCode), enableSecondTaxRate.hashCode), invoiceFields.hashCode), emailFooter.hashCode), emailSubjectInvoice.hashCode), emailSubjectQuote.hashCode), emailSubjectPayment.hashCode), emailBodyInvoice.hashCode), emailBodyQuote.hashCode), emailBodyPayment.hashCode), emailSubjectReminder1.hashCode), emailSubjectReminder2.hashCode), emailSubjectReminder3.hashCode), emailBodyReminder1.hashCode), emailBodyReminder2.hashCode), emailBodyReminder3.hashCode), enablePortalPassword.hashCode), sendPortalPassword.hashCode), signatureOnPdf.hashCode), enableEmailMarkup.hashCode), showAcceptInvoiceTerms.hashCode), showAcceptQuoteTerms.hashCode), requireInvoiceSignature.hashCode), requireQuoteSignature.hashCode), name.hashCode), companyLogo.hashCode), website.hashCode), address1.hashCode), address2.hashCode), city.hashCode), state.hashCode), postalCode.hashCode), phone.hashCode), email.hashCode), countryId.hashCode), vatNumber.hashCode), idNumber.hashCode), pageSize.hashCode), fontSize.hashCode), primaryColor.hashCode), secondaryColor.hashCode), primaryFont.hashCode), secondaryFont.hashCode), hidePaidToDate.hashCode), embedDocuments.hashCode), allPagesHeader.hashCode), allPagesFooter.hashCode), enableReminder1.hashCode), enableReminder2.hashCode), enableReminder3.hashCode), enableReminder4.hashCode),
|
||||||
numDaysReminder1.hashCode),
|
numDaysReminder1.hashCode),
|
||||||
numDaysReminder2.hashCode),
|
numDaysReminder2.hashCode),
|
||||||
numDaysReminder3.hashCode),
|
numDaysReminder3.hashCode),
|
||||||
|
|
@ -3920,7 +3906,6 @@ class _$SettingsEntity extends SettingsEntity {
|
||||||
..add('defaultQuoteDesignId', defaultQuoteDesignId)
|
..add('defaultQuoteDesignId', defaultQuoteDesignId)
|
||||||
..add('defaultInvoiceFooter', defaultInvoiceFooter)
|
..add('defaultInvoiceFooter', defaultInvoiceFooter)
|
||||||
..add('invoiceLabels', invoiceLabels)
|
..add('invoiceLabels', invoiceLabels)
|
||||||
..add('showInvoiceItemTaxes', showInvoiceItemTaxes)
|
|
||||||
..add('defaultTaxName1', defaultTaxName1)
|
..add('defaultTaxName1', defaultTaxName1)
|
||||||
..add('defaultTaxRate1', defaultTaxRate1)
|
..add('defaultTaxRate1', defaultTaxRate1)
|
||||||
..add('defaultTaxName2', defaultTaxName2)
|
..add('defaultTaxName2', defaultTaxName2)
|
||||||
|
|
@ -4322,11 +4307,6 @@ class SettingsEntityBuilder
|
||||||
set invoiceLabels(String invoiceLabels) =>
|
set invoiceLabels(String invoiceLabels) =>
|
||||||
_$this._invoiceLabels = invoiceLabels;
|
_$this._invoiceLabels = invoiceLabels;
|
||||||
|
|
||||||
bool _showInvoiceItemTaxes;
|
|
||||||
bool get showInvoiceItemTaxes => _$this._showInvoiceItemTaxes;
|
|
||||||
set showInvoiceItemTaxes(bool showInvoiceItemTaxes) =>
|
|
||||||
_$this._showInvoiceItemTaxes = showInvoiceItemTaxes;
|
|
||||||
|
|
||||||
String _defaultTaxName1;
|
String _defaultTaxName1;
|
||||||
String get defaultTaxName1 => _$this._defaultTaxName1;
|
String get defaultTaxName1 => _$this._defaultTaxName1;
|
||||||
set defaultTaxName1(String defaultTaxName1) =>
|
set defaultTaxName1(String defaultTaxName1) =>
|
||||||
|
|
@ -4759,7 +4739,6 @@ class SettingsEntityBuilder
|
||||||
_defaultQuoteDesignId = _$v.defaultQuoteDesignId;
|
_defaultQuoteDesignId = _$v.defaultQuoteDesignId;
|
||||||
_defaultInvoiceFooter = _$v.defaultInvoiceFooter;
|
_defaultInvoiceFooter = _$v.defaultInvoiceFooter;
|
||||||
_invoiceLabels = _$v.invoiceLabels;
|
_invoiceLabels = _$v.invoiceLabels;
|
||||||
_showInvoiceItemTaxes = _$v.showInvoiceItemTaxes;
|
|
||||||
_defaultTaxName1 = _$v.defaultTaxName1;
|
_defaultTaxName1 = _$v.defaultTaxName1;
|
||||||
_defaultTaxRate1 = _$v.defaultTaxRate1;
|
_defaultTaxRate1 = _$v.defaultTaxRate1;
|
||||||
_defaultTaxName2 = _$v.defaultTaxName2;
|
_defaultTaxName2 = _$v.defaultTaxName2;
|
||||||
|
|
@ -4925,7 +4904,6 @@ class SettingsEntityBuilder
|
||||||
defaultQuoteDesignId: defaultQuoteDesignId,
|
defaultQuoteDesignId: defaultQuoteDesignId,
|
||||||
defaultInvoiceFooter: defaultInvoiceFooter,
|
defaultInvoiceFooter: defaultInvoiceFooter,
|
||||||
invoiceLabels: invoiceLabels,
|
invoiceLabels: invoiceLabels,
|
||||||
showInvoiceItemTaxes: showInvoiceItemTaxes,
|
|
||||||
defaultTaxName1: defaultTaxName1,
|
defaultTaxName1: defaultTaxName1,
|
||||||
defaultTaxRate1: defaultTaxRate1,
|
defaultTaxRate1: defaultTaxRate1,
|
||||||
defaultTaxName2: defaultTaxName2,
|
defaultTaxName2: defaultTaxName2,
|
||||||
|
|
|
||||||
|
|
@ -79,8 +79,8 @@ class LocalizationSettingsVM {
|
||||||
|
|
||||||
final AppState state;
|
final AppState state;
|
||||||
final CompanyEntity company;
|
final CompanyEntity company;
|
||||||
final SettingsEntity settings;
|
|
||||||
final Function(CompanyEntity) onCompanyChanged;
|
final Function(CompanyEntity) onCompanyChanged;
|
||||||
|
final SettingsEntity settings;
|
||||||
final Function(SettingsEntity) onSettingsChanged;
|
final Function(SettingsEntity) onSettingsChanged;
|
||||||
final Function(BuildContext) onSavePressed;
|
final Function(BuildContext) onSavePressed;
|
||||||
final Function(BuildContext) onCancelPressed;
|
final Function(BuildContext) onCancelPressed;
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,10 @@
|
||||||
import 'package:flutter/foundation.dart';
|
import 'package:flutter/foundation.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
|
||||||
import 'package:invoiceninja_flutter/ui/app/buttons/elevated_button.dart';
|
import 'package:invoiceninja_flutter/ui/app/buttons/elevated_button.dart';
|
||||||
import 'package:invoiceninja_flutter/ui/app/form_card.dart';
|
import 'package:invoiceninja_flutter/ui/app/form_card.dart';
|
||||||
import 'package:invoiceninja_flutter/ui/app/forms/app_form.dart';
|
import 'package:invoiceninja_flutter/ui/app/forms/app_form.dart';
|
||||||
|
import 'package:invoiceninja_flutter/ui/app/forms/bool_dropdown_button.dart';
|
||||||
import 'package:invoiceninja_flutter/ui/settings/settings_scaffold.dart';
|
import 'package:invoiceninja_flutter/ui/settings/settings_scaffold.dart';
|
||||||
import 'package:invoiceninja_flutter/ui/settings/tax_settings_vm.dart';
|
import 'package:invoiceninja_flutter/ui/settings/tax_settings_vm.dart';
|
||||||
import 'package:invoiceninja_flutter/utils/localization.dart';
|
import 'package:invoiceninja_flutter/utils/localization.dart';
|
||||||
|
|
@ -26,6 +28,7 @@ class _TaxSettingsState extends State<TaxSettings> {
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
final localization = AppLocalization.of(context);
|
final localization = AppLocalization.of(context);
|
||||||
final viewModel = widget.viewModel;
|
final viewModel = widget.viewModel;
|
||||||
|
final settings = viewModel.settings;
|
||||||
|
|
||||||
return SettingsScaffold(
|
return SettingsScaffold(
|
||||||
title: localization.taxSettings,
|
title: localization.taxSettings,
|
||||||
|
|
@ -34,7 +37,29 @@ class _TaxSettingsState extends State<TaxSettings> {
|
||||||
formKey: _formKey,
|
formKey: _formKey,
|
||||||
children: <Widget>[
|
children: <Widget>[
|
||||||
FormCard(
|
FormCard(
|
||||||
children: <Widget>[],
|
children: <Widget>[
|
||||||
|
BoolDropdownButton(
|
||||||
|
iconData: FontAwesomeIcons.fileInvoice,
|
||||||
|
label: localization.invoiceTax,
|
||||||
|
value: settings.enableInvoiceTaxes,
|
||||||
|
onChanged: (value) => viewModel.onSettingsChanged(
|
||||||
|
settings.rebuild((b) => b..enableInvoiceTaxes = value)),
|
||||||
|
),
|
||||||
|
BoolDropdownButton(
|
||||||
|
iconData: FontAwesomeIcons.cubes,
|
||||||
|
label: localization.lineItemTax,
|
||||||
|
value: settings.enableInvoiceItemTaxes,
|
||||||
|
onChanged: (value) => viewModel.onSettingsChanged(
|
||||||
|
settings.rebuild((b) => b..enableInvoiceItemTaxes = value)),
|
||||||
|
),
|
||||||
|
BoolDropdownButton(
|
||||||
|
iconData: FontAwesomeIcons.percent,
|
||||||
|
label: localization.inclusiveTaxes,
|
||||||
|
value: settings.enableInclusiveTaxes,
|
||||||
|
onChanged: (value) => viewModel.onSettingsChanged(
|
||||||
|
settings.rebuild((b) => b..enableInclusiveTaxes = value)),
|
||||||
|
),
|
||||||
|
],
|
||||||
),
|
),
|
||||||
Padding(
|
Padding(
|
||||||
padding: const EdgeInsets.symmetric(horizontal: 16.0),
|
padding: const EdgeInsets.symmetric(horizontal: 16.0),
|
||||||
|
|
|
||||||
|
|
@ -32,6 +32,8 @@ class TaxSettingsVM {
|
||||||
TaxSettingsVM({
|
TaxSettingsVM({
|
||||||
@required this.state,
|
@required this.state,
|
||||||
@required this.company,
|
@required this.company,
|
||||||
|
@required this.settings,
|
||||||
|
@required this.onSettingsChanged,
|
||||||
@required this.onCompanyChanged,
|
@required this.onCompanyChanged,
|
||||||
@required this.onSavePressed,
|
@required this.onSavePressed,
|
||||||
@required this.onCancelPressed,
|
@required this.onCancelPressed,
|
||||||
|
|
@ -43,7 +45,11 @@ class TaxSettingsVM {
|
||||||
|
|
||||||
return TaxSettingsVM(
|
return TaxSettingsVM(
|
||||||
state: state,
|
state: state,
|
||||||
|
settings: state.uiState.settingsUIState.settings,
|
||||||
company: state.uiState.settingsUIState.userCompany.company,
|
company: state.uiState.settingsUIState.userCompany.company,
|
||||||
|
onSettingsChanged: (settings) {
|
||||||
|
store.dispatch(UpdateSettings(settings: settings));
|
||||||
|
},
|
||||||
onCompanyChanged: (company) =>
|
onCompanyChanged: (company) =>
|
||||||
store.dispatch(UpdateCompany(company: company)),
|
store.dispatch(UpdateCompany(company: company)),
|
||||||
onCancelPressed: (context) => store.dispatch(ResetSettings()),
|
onCancelPressed: (context) => store.dispatch(ResetSettings()),
|
||||||
|
|
@ -63,6 +69,8 @@ class TaxSettingsVM {
|
||||||
final AppState state;
|
final AppState state;
|
||||||
final Function(BuildContext) onSavePressed;
|
final Function(BuildContext) onSavePressed;
|
||||||
final Function(BuildContext) onCancelPressed;
|
final Function(BuildContext) onCancelPressed;
|
||||||
|
final SettingsEntity settings;
|
||||||
|
final Function(SettingsEntity) onSettingsChanged;
|
||||||
final CompanyEntity company;
|
final CompanyEntity company;
|
||||||
final Function(CompanyEntity) onCompanyChanged;
|
final Function(CompanyEntity) onCompanyChanged;
|
||||||
final Function(BuildContext) onConfigureRatesPressed;
|
final Function(BuildContext) onConfigureRatesPressed;
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,10 @@ abstract class LocaleCodeAware {
|
||||||
mixin LocalizationsProvider on LocaleCodeAware {
|
mixin LocalizationsProvider on LocaleCodeAware {
|
||||||
static final Map<String, Map<String, String>> _localizedValues = {
|
static final Map<String, Map<String, String>> _localizedValues = {
|
||||||
'en': {
|
'en': {
|
||||||
|
'invoice_tax': 'Invoice Tax',
|
||||||
|
'line_item_tax': 'Line Item Tax',
|
||||||
|
'inclusive_taxes': 'Inclusive Taxes',
|
||||||
|
'number_of_rates': 'Number of Rates',
|
||||||
'no_client_selected': 'No client selected',
|
'no_client_selected': 'No client selected',
|
||||||
'configure_rates': 'Configure rates',
|
'configure_rates': 'Configure rates',
|
||||||
'tax_settings': 'Tax Settings',
|
'tax_settings': 'Tax Settings',
|
||||||
|
|
@ -15494,10 +15498,19 @@ mixin LocalizationsProvider on LocaleCodeAware {
|
||||||
|
|
||||||
String get configureRates => _localizedValues[localeCode]['configure_rates'];
|
String get configureRates => _localizedValues[localeCode]['configure_rates'];
|
||||||
|
|
||||||
String get taxSettingsRates => _localizedValues[localeCode]['tax_settings_rates'];
|
String get taxSettingsRates =>
|
||||||
|
_localizedValues[localeCode]['tax_settings_rates'];
|
||||||
|
|
||||||
String get noClientSelected => _localizedValues[localeCode]['no_client_selected'];
|
String get noClientSelected =>
|
||||||
|
_localizedValues[localeCode]['no_client_selected'];
|
||||||
|
|
||||||
|
String get invoiceTax => _localizedValues[localeCode]['invoice_tax'];
|
||||||
|
|
||||||
|
String get lineItemTax => _localizedValues[localeCode]['line_item_tax'];
|
||||||
|
|
||||||
|
String get inclusiveTaxes => _localizedValues[localeCode]['inclusive_taxes'];
|
||||||
|
|
||||||
|
String get numberOfRates => _localizedValues[localeCode]['number_of_rates'];
|
||||||
|
|
||||||
String lookup(String key) {
|
String lookup(String key) {
|
||||||
final lookupKey = toSnakeCase(key);
|
final lookupKey = toSnakeCase(key);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue