diff --git a/lib/data/models/settings_model.dart b/lib/data/models/settings_model.dart index 3262f4d11..c3c355e0a 100644 --- a/lib/data/models/settings_model.dart +++ b/lib/data/models/settings_model.dart @@ -957,6 +957,10 @@ abstract class SettingsEntity @BuiltValueField(wireName: 'custom_sending_email') String get customSendingEmail; + @nullable + @BuiltValueField(wireName: 'accept_client_input_quote_approval') + bool get acceptPurchaseOrderNumber; + bool get hasAddress => address1 != null && address1.isNotEmpty; bool get hasLogo => companyLogo != null && companyLogo.isNotEmpty; diff --git a/lib/data/models/settings_model.g.dart b/lib/data/models/settings_model.g.dart index 754a78b1b..b47f14d52 100644 --- a/lib/data/models/settings_model.g.dart +++ b/lib/data/models/settings_model.g.dart @@ -1464,6 +1464,13 @@ class _$SettingsEntitySerializer ..add(serializers.serialize(value, specifiedType: const FullType(String))); } + value = object.acceptPurchaseOrderNumber; + if (value != null) { + result + ..add('accept_client_input_quote_approval') + ..add( + serializers.serialize(value, specifiedType: const FullType(bool))); + } return result; } @@ -2316,6 +2323,10 @@ class _$SettingsEntitySerializer result.customSendingEmail = serializers.deserialize(value, specifiedType: const FullType(String)) as String; break; + case 'accept_client_input_quote_approval': + result.acceptPurchaseOrderNumber = serializers.deserialize(value, + specifiedType: const FullType(bool)) as bool; + break; } } @@ -2817,6 +2828,8 @@ class _$SettingsEntity extends SettingsEntity { final bool showShippingAddress; @override final String customSendingEmail; + @override + final bool acceptPurchaseOrderNumber; factory _$SettingsEntity([void Function(SettingsEntityBuilder) updates]) => (new SettingsEntityBuilder()..update(updates)).build(); @@ -3029,7 +3042,8 @@ class _$SettingsEntity extends SettingsEntity { this.companyLogoSize, this.showPaidStamp, this.showShippingAddress, - this.customSendingEmail}) + this.customSendingEmail, + this.acceptPurchaseOrderNumber}) : super._(); @override @@ -3255,7 +3269,8 @@ class _$SettingsEntity extends SettingsEntity { companyLogoSize == other.companyLogoSize && showPaidStamp == other.showPaidStamp && showShippingAddress == other.showShippingAddress && - customSendingEmail == other.customSendingEmail; + customSendingEmail == other.customSendingEmail && + acceptPurchaseOrderNumber == other.acceptPurchaseOrderNumber; } int __hashCode; @@ -3279,26 +3294,26 @@ 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($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), defaultValidUntil.hashCode), companyGatewayIds.hashCode), defaultTaskRate.hashCode), sendReminders.hashCode), enablePortal.hashCode), enablePortalDashboard.hashCode), enablePortalTasks.hashCode), enableClientPortalUploads.hashCode), enableVendorPortalUploads.hashCode), emailStyle.hashCode), replyToEmail.hashCode), replyToName.hashCode), emailFromName.hashCode), bccEmail.hashCode), pdfEmailAttachment.hashCode), ublEmailAttachment.hashCode), documentEmailAttachment.hashCode), emailStyleCustom.hashCode), customMessageDashboard.hashCode), customMessageUnpaidInvoice.hashCode), customMessagePaidInvoice.hashCode), customMessageUnapprovedQuote.hashCode), autoArchiveInvoice.hashCode), autoArchiveInvoiceCancelled.hashCode), autoArchiveQuote.hashCode), autoEmailInvoice.hashCode), autoConvertQuote.hashCode), enableInclusiveTaxes.hashCode), translations.hashCode), taskNumberPattern.hashCode), taskNumberCounter.hashCode), expenseNumberPattern.hashCode), expenseNumberCounter.hashCode), recurringExpenseNumberPattern.hashCode), recurringExpenseNumberCounter.hashCode), vendorNumberPattern.hashCode), vendorNumberCounter.hashCode), ticketNumberPattern.hashCode), ticketNumberCounter.hashCode), paymentNumberPattern.hashCode), paymentNumberCounter.hashCode), projectNumberPattern.hashCode), projectNumberCounter.hashCode), invoiceNumberPattern.hashCode), invoiceNumberCounter.hashCode), recurringInvoiceNumberPattern.hashCode), recurringInvoiceNumberCounter.hashCode), quoteNumberPattern.hashCode), quoteNumberCounter.hashCode), clientNumberPattern.hashCode), clientNumberCounter.hashCode), creditNumberPattern.hashCode), creditNumberCounter.hashCode), recurringNumberPrefix.hashCode), resetCounterFrequencyId.hashCode), resetCounterDate.hashCode), counterPadding.hashCode), sharedInvoiceQuoteCounter.hashCode), sharedInvoiceCreditCounter.hashCode), defaultInvoiceTerms.hashCode), defaultQuoteTerms.hashCode), defaultQuoteFooter.hashCode), defaultCreditTerms.hashCode), defaultCreditFooter.hashCode), defaultInvoiceDesignId.hashCode), defaultQuoteDesignId.hashCode), defaultCreditDesignId.hashCode), defaultInvoiceFooter.hashCode), defaultTaxName1.hashCode), defaultTaxRate1.hashCode), defaultTaxName2.hashCode), defaultTaxRate2.hashCode), defaultTaxName3.hashCode), defaultTaxRate3.hashCode), defaultPaymentTypeId.hashCode), pdfVariables.hashCode), emailSignature.hashCode), emailSubjectInvoice.hashCode), emailSubjectQuote.hashCode), emailSubjectCredit.hashCode), emailSubjectPayment.hashCode), emailSubjectPaymentPartial.hashCode), emailBodyInvoice.hashCode), emailBodyQuote.hashCode), emailBodyCredit.hashCode), emailBodyPayment.hashCode), emailBodyPaymentPartial.hashCode), emailSubjectReminder1.hashCode), emailSubjectReminder2.hashCode), emailSubjectReminder3.hashCode), emailBodyReminder1.hashCode), emailBodyReminder2.hashCode), emailBodyReminder3.hashCode), emailSubjectCustom1.hashCode), emailBodyCustom1.hashCode), emailSubjectCustom2.hashCode), emailBodyCustom2.hashCode), emailSubjectCustom3.hashCode), emailBodyCustom3.hashCode), emailSubjectStatement.hashCode), emailBodyStatement.hashCode), emailSubjectPurchaseOrder.hashCode), emailBodyPurchaseOrder.hashCode), enablePortalPassword.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), pageLayout.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), enableReminderEndless.hashCode), numDaysReminder1.hashCode), numDaysReminder2.hashCode), numDaysReminder3.hashCode), scheduleReminder1.hashCode), scheduleReminder2.hashCode), scheduleReminder3.hashCode), endlessReminderFrequencyId.hashCode), lateFeeAmount1.hashCode), lateFeeAmount2.hashCode), lateFeeAmount3.hashCode), lateFeeAmountEndless.hashCode), lateFeePercent1.hashCode), lateFeePercent2.hashCode), lateFeePercent3.hashCode), lateFeePercentEndless.hashCode), emailSubjectReminderEndless.hashCode), emailBodyReminderEndless.hashCode), clientOnlinePaymentNotification.hashCode), clientManualPaymentNotification.hashCode), clientMarkPaidPaymentNotification.hashCode), counterNumberApplied.hashCode), emailSendingMethod.hashCode), gmailSendingUserId.hashCode), clientPortalTerms.hashCode), clientPortalPrivacy.hashCode), lockInvoices.hashCode), autoBill.hashCode), autoBillStandardInvoices.hashCode), clientPortalAllowUnderPayment.hashCode), clientPortalAllowOverPayment.hashCode), autoBillDate.hashCode), clientPortalUnderPaymentMinimum.hashCode), useCreditsPayment.hashCode), clientPortalCustomHeader.hashCode), clientPortalCustomCss.hashCode), clientPortalCustomFooter.hashCode), clientPortalCustomJs.hashCode), hideEmptyColumnsOnPdf.hashCode), entitySendTime.hashCode), clientPortalTasks.hashCode), - pageNumbering.hashCode), - pageNumberingAlignment.hashCode), - requirePurchaseOrderSignature.hashCode), - defaultPurchaseOrderTerms.hashCode), - defaultPurchaseOrderDesignId.hashCode), - defaultPurchaseOrderFooter.hashCode), - purchaseOrderNumberPattern.hashCode), - purchaseOrderNumberCounter.hashCode), - qrIban.hashCode), - besrId.hashCode), - postmarkSecret.hashCode), - mailgunSecret.hashCode), - mailgunDomain.hashCode), - emailAlignment.hashCode), - showEmailFooter.hashCode), - companyLogoSize.hashCode), - showPaidStamp.hashCode), - showShippingAddress.hashCode), - customSendingEmail.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($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), defaultValidUntil.hashCode), companyGatewayIds.hashCode), defaultTaskRate.hashCode), sendReminders.hashCode), enablePortal.hashCode), enablePortalDashboard.hashCode), enablePortalTasks.hashCode), enableClientPortalUploads.hashCode), enableVendorPortalUploads.hashCode), emailStyle.hashCode), replyToEmail.hashCode), replyToName.hashCode), emailFromName.hashCode), bccEmail.hashCode), pdfEmailAttachment.hashCode), ublEmailAttachment.hashCode), documentEmailAttachment.hashCode), emailStyleCustom.hashCode), customMessageDashboard.hashCode), customMessageUnpaidInvoice.hashCode), customMessagePaidInvoice.hashCode), customMessageUnapprovedQuote.hashCode), autoArchiveInvoice.hashCode), autoArchiveInvoiceCancelled.hashCode), autoArchiveQuote.hashCode), autoEmailInvoice.hashCode), autoConvertQuote.hashCode), enableInclusiveTaxes.hashCode), translations.hashCode), taskNumberPattern.hashCode), taskNumberCounter.hashCode), expenseNumberPattern.hashCode), expenseNumberCounter.hashCode), recurringExpenseNumberPattern.hashCode), recurringExpenseNumberCounter.hashCode), vendorNumberPattern.hashCode), vendorNumberCounter.hashCode), ticketNumberPattern.hashCode), ticketNumberCounter.hashCode), paymentNumberPattern.hashCode), paymentNumberCounter.hashCode), projectNumberPattern.hashCode), projectNumberCounter.hashCode), invoiceNumberPattern.hashCode), invoiceNumberCounter.hashCode), recurringInvoiceNumberPattern.hashCode), recurringInvoiceNumberCounter.hashCode), quoteNumberPattern.hashCode), quoteNumberCounter.hashCode), clientNumberPattern.hashCode), clientNumberCounter.hashCode), creditNumberPattern.hashCode), creditNumberCounter.hashCode), recurringNumberPrefix.hashCode), resetCounterFrequencyId.hashCode), resetCounterDate.hashCode), counterPadding.hashCode), sharedInvoiceQuoteCounter.hashCode), sharedInvoiceCreditCounter.hashCode), defaultInvoiceTerms.hashCode), defaultQuoteTerms.hashCode), defaultQuoteFooter.hashCode), defaultCreditTerms.hashCode), defaultCreditFooter.hashCode), defaultInvoiceDesignId.hashCode), defaultQuoteDesignId.hashCode), defaultCreditDesignId.hashCode), defaultInvoiceFooter.hashCode), defaultTaxName1.hashCode), defaultTaxRate1.hashCode), defaultTaxName2.hashCode), defaultTaxRate2.hashCode), defaultTaxName3.hashCode), defaultTaxRate3.hashCode), defaultPaymentTypeId.hashCode), pdfVariables.hashCode), emailSignature.hashCode), emailSubjectInvoice.hashCode), emailSubjectQuote.hashCode), emailSubjectCredit.hashCode), emailSubjectPayment.hashCode), emailSubjectPaymentPartial.hashCode), emailBodyInvoice.hashCode), emailBodyQuote.hashCode), emailBodyCredit.hashCode), emailBodyPayment.hashCode), emailBodyPaymentPartial.hashCode), emailSubjectReminder1.hashCode), emailSubjectReminder2.hashCode), emailSubjectReminder3.hashCode), emailBodyReminder1.hashCode), emailBodyReminder2.hashCode), emailBodyReminder3.hashCode), emailSubjectCustom1.hashCode), emailBodyCustom1.hashCode), emailSubjectCustom2.hashCode), emailBodyCustom2.hashCode), emailSubjectCustom3.hashCode), emailBodyCustom3.hashCode), emailSubjectStatement.hashCode), emailBodyStatement.hashCode), emailSubjectPurchaseOrder.hashCode), emailBodyPurchaseOrder.hashCode), enablePortalPassword.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), pageLayout.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), enableReminderEndless.hashCode), numDaysReminder1.hashCode), numDaysReminder2.hashCode), numDaysReminder3.hashCode), scheduleReminder1.hashCode), scheduleReminder2.hashCode), scheduleReminder3.hashCode), endlessReminderFrequencyId.hashCode), lateFeeAmount1.hashCode), lateFeeAmount2.hashCode), lateFeeAmount3.hashCode), lateFeeAmountEndless.hashCode), lateFeePercent1.hashCode), lateFeePercent2.hashCode), lateFeePercent3.hashCode), lateFeePercentEndless.hashCode), emailSubjectReminderEndless.hashCode), emailBodyReminderEndless.hashCode), clientOnlinePaymentNotification.hashCode), clientManualPaymentNotification.hashCode), clientMarkPaidPaymentNotification.hashCode), counterNumberApplied.hashCode), emailSendingMethod.hashCode), gmailSendingUserId.hashCode), clientPortalTerms.hashCode), clientPortalPrivacy.hashCode), lockInvoices.hashCode), autoBill.hashCode), autoBillStandardInvoices.hashCode), clientPortalAllowUnderPayment.hashCode), clientPortalAllowOverPayment.hashCode), autoBillDate.hashCode), clientPortalUnderPaymentMinimum.hashCode), useCreditsPayment.hashCode), clientPortalCustomHeader.hashCode), clientPortalCustomCss.hashCode), clientPortalCustomFooter.hashCode), clientPortalCustomJs.hashCode), hideEmptyColumnsOnPdf.hashCode), entitySendTime.hashCode), clientPortalTasks.hashCode), pageNumbering.hashCode), + pageNumberingAlignment.hashCode), + requirePurchaseOrderSignature.hashCode), + defaultPurchaseOrderTerms.hashCode), + defaultPurchaseOrderDesignId.hashCode), + defaultPurchaseOrderFooter.hashCode), + purchaseOrderNumberPattern.hashCode), + purchaseOrderNumberCounter.hashCode), + qrIban.hashCode), + besrId.hashCode), + postmarkSecret.hashCode), + mailgunSecret.hashCode), + mailgunDomain.hashCode), + emailAlignment.hashCode), + showEmailFooter.hashCode), + companyLogoSize.hashCode), + showPaidStamp.hashCode), + showShippingAddress.hashCode), + customSendingEmail.hashCode), + acceptPurchaseOrderNumber.hashCode)); } @override @@ -3515,7 +3530,8 @@ class _$SettingsEntity extends SettingsEntity { ..add('companyLogoSize', companyLogoSize) ..add('showPaidStamp', showPaidStamp) ..add('showShippingAddress', showShippingAddress) - ..add('customSendingEmail', customSendingEmail)) + ..add('customSendingEmail', customSendingEmail) + ..add('acceptPurchaseOrderNumber', acceptPurchaseOrderNumber)) .toString(); } } @@ -4544,6 +4560,11 @@ class SettingsEntityBuilder set customSendingEmail(String customSendingEmail) => _$this._customSendingEmail = customSendingEmail; + bool _acceptPurchaseOrderNumber; + bool get acceptPurchaseOrderNumber => _$this._acceptPurchaseOrderNumber; + set acceptPurchaseOrderNumber(bool acceptPurchaseOrderNumber) => + _$this._acceptPurchaseOrderNumber = acceptPurchaseOrderNumber; + SettingsEntityBuilder(); SettingsEntityBuilder get _$this { @@ -4757,6 +4778,7 @@ class SettingsEntityBuilder _showPaidStamp = $v.showPaidStamp; _showShippingAddress = $v.showShippingAddress; _customSendingEmail = $v.customSendingEmail; + _acceptPurchaseOrderNumber = $v.acceptPurchaseOrderNumber; _$v = null; } return this; @@ -4987,7 +5009,8 @@ class SettingsEntityBuilder companyLogoSize: companyLogoSize, showPaidStamp: showPaidStamp, showShippingAddress: showShippingAddress, - customSendingEmail: customSendingEmail); + customSendingEmail: customSendingEmail, + acceptPurchaseOrderNumber: acceptPurchaseOrderNumber); } catch (_) { String _$failedField; try { diff --git a/lib/ui/settings/client_portal.dart b/lib/ui/settings/client_portal.dart index c59bc241d..209d0f102 100644 --- a/lib/ui/settings/client_portal.dart +++ b/lib/ui/settings/client_portal.dart @@ -406,14 +406,25 @@ class _ClientPortalState extends State onChanged: (value) => viewModel.onSettingsChanged( settings.rebuild( (b) => b..enableClientPortalUploads = value))), - BoolDropdownButton( - label: localization.vendorDocumentUpload, - helpLabel: localization.vendorDocumentUploadHelp, - value: settings.enableVendorPortalUploads, - iconData: MdiIcons.upload, - onChanged: (value) => viewModel.onSettingsChanged( - settings.rebuild( - (b) => b..enableVendorPortalUploads = value))), + if (company.isModuleEnabled(EntityType.vendor)) + BoolDropdownButton( + label: localization.vendorDocumentUpload, + helpLabel: localization.vendorDocumentUploadHelp, + value: settings.enableVendorPortalUploads, + iconData: MdiIcons.upload, + onChanged: (value) => viewModel.onSettingsChanged( + settings.rebuild( + (b) => b..enableVendorPortalUploads = value))), + if (company.isModuleEnabled(EntityType.purchaseOrder) && + company.isModuleEnabled(EntityType.quote)) + BoolDropdownButton( + label: localization.acceptPurchaseOrderNumber, + helpLabel: localization.acceptPurchaseOrderNumberHelp, + value: settings.acceptPurchaseOrderNumber, + iconData: Icons.numbers, + onChanged: (value) => viewModel.onSettingsChanged( + settings.rebuild( + (b) => b..acceptPurchaseOrderNumber = value))), if (!state.settingsUIState.isFiltered) BoolDropdownButton( label: localization.storefront, diff --git a/lib/ui/settings/settings_list.dart b/lib/ui/settings/settings_list.dart index 3c7c8ef93..9e96f5b3a 100644 --- a/lib/ui/settings/settings_list.dart +++ b/lib/ui/settings/settings_list.dart @@ -548,6 +548,7 @@ class SettingsSearch extends StatelessWidget { 'domain', 'client_document_upload', 'vendor_document_upload#2022-07-06', + 'accept_purchase_order_number#2023-02-02', ], [ 'client_registration', diff --git a/lib/utils/i18n.dart b/lib/utils/i18n.dart index 89e5a77df..6a051beb8 100644 --- a/lib/utils/i18n.dart +++ b/lib/utils/i18n.dart @@ -16,6 +16,9 @@ mixin LocalizationsProvider on LocaleCodeAware { static final Map> _localizedValues = { 'en': { // STARTER: lang key - do not remove comment + 'accept_purchase_order_number': 'Accept Purchase Order Number', + 'accept_purchase_order_number_help': + 'Enable clients to provide a PO number when approving a quote', 'from_email': 'From Email', 'show_preview': 'Show Preview', 'show_paid_stamp': 'Show Paid Stamp', @@ -94386,6 +94389,14 @@ mixin LocalizationsProvider on LocaleCodeAware { _localizedValues[localeCode]['from_email'] ?? _localizedValues['en']['from_email']; + String get acceptPurchaseOrderNumber => + _localizedValues[localeCode]['accept_purchase_order_number'] ?? + _localizedValues['en']['accept_purchase_order_number']; + + String get acceptPurchaseOrderNumberHelp => + _localizedValues[localeCode]['accept_purchase_order_number_help'] ?? + _localizedValues['en']['accept_purchase_order_number_help']; + // STARTER: lang field - do not remove comment String lookup(String key) {