788 lines
25 KiB
Dart
788 lines
25 KiB
Dart
import 'package:flutter/material.dart';
|
|
import 'package:flutter/foundation.dart';
|
|
import 'package:invoiceninja_flutter/utils/colors.dart';
|
|
|
|
class Constants {
|
|
static String get hostedApiUrl =>
|
|
kReleaseMode ? kAppProductionUrl : kAppStagingUrl;
|
|
}
|
|
|
|
// TODO remove version once #46609 is fixed
|
|
const String kClientVersion = '5.0.30';
|
|
const String kMinServerVersion = '5.0.4';
|
|
|
|
const String kAppName = 'Invoice Ninja';
|
|
const String kSiteUrl = 'https://invoiceninja.com';
|
|
//const String kAppProductionUrl = 'https://invoicing.co';
|
|
const String kAppProductionUrl =
|
|
'https://staging.invoicing.co'; // TODO remove staging
|
|
const String kAppStagingUrl = 'https://staging.invoicing.co';
|
|
const String kAppDemoUrl = 'https://demo.invoiceninja.com';
|
|
const String kWhiteLabelUrl =
|
|
'https://app.invoiceninja.com/buy_now/?account_key=AsFmBAeLXF0IKf7tmi0eiyZfmWW9hxMT&product_id=3';
|
|
const String kAppPlansURL =
|
|
'https://www.invoiceninja.com/invoicing-pricing-plans/';
|
|
const String kPrivacyPolicyURL = 'https://www.invoiceninja.com/privacy-policy';
|
|
const String kTermsOfServiceURL = 'https://www.invoiceninja.com/terms';
|
|
|
|
//const String kAppleStoreUrl = 'https://itunes.apple.com/us/app/invoice-ninja/id1435514417?ls=1&mt=8';
|
|
//const String kGoogleStoreUrl = 'https://play.google.com/store/apps/details?id=com.invoiceninja.flutter';
|
|
|
|
//const String kSourceCodeBackend = 'https://github.com/invoiceninja/invoiceninja';
|
|
const String kSourceCodeBackend =
|
|
'https://github.com/invoiceninja/invoiceninja/tree/v5-stable';
|
|
const String kSourceCodeFrontend =
|
|
'https://github.com/invoiceninja/flutter-client';
|
|
const String kSourceCodeFrontendSDK = 'https://pub.dev/packages/invoiceninja';
|
|
|
|
const String kAppleStoreUrl = 'https://testflight.apple.com/join/MJ6WpaXh';
|
|
const String kGoogleStoreUrl =
|
|
'https://play.google.com/apps/testing/com.invoiceninja.app';
|
|
const String kMacOSUrl = 'http://download.invoiceninja.com/macos';
|
|
const String kLinuxUrl = 'http://download.invoiceninja.com/linux';
|
|
|
|
const String kApiDocsURL =
|
|
'https://app.swaggerhub.com/apis/invoiceninja/invoiceninja';
|
|
const String kZapierURL =
|
|
'https://zapier.com/developer/public-invite/95884/5e4368b9efb9d377dc0a0b0465b7c1a7';
|
|
|
|
const String kCapterralUrl = 'https://www.capterra.com/p/145215/Invoice-Ninja/';
|
|
const String kCronsHelpUrl =
|
|
'https://invoiceninja.github.io/selfhost.html#cron-configuration';
|
|
const String kGitHubDiffUrl =
|
|
'https://github.com/invoiceninja/invoiceninja/compare/vVERSION...v5-stable';
|
|
const String kGitHubLangUrl =
|
|
'https://github.com/invoiceninja/invoiceninja/blob/master/resources/lang/en/texts.php';
|
|
|
|
enum AppEnvironment {
|
|
hosted,
|
|
selfhosted,
|
|
demo,
|
|
staging,
|
|
develop,
|
|
}
|
|
|
|
const String kSharedPrefs = 'shared_prefs';
|
|
const String kSharedPrefAppVersion = 'app_version';
|
|
const String kSharedPrefUrl = 'url';
|
|
const String kSharedPrefToken = 'checksum';
|
|
|
|
const String kProductPlanPro = 'v1_pro_yearly';
|
|
const String kProductPlanEnterprise2 = 'v1_enterprise_2_yearly';
|
|
const String kProductPlanEnterprise5 = 'v1_enterprise_5_yearly';
|
|
const String kProductPlanEnterprise10 = 'v1_enterprise_10_yearly';
|
|
const String kProductPlanEnterprise20 = 'v1_enterprise_20_yearly';
|
|
|
|
const kProductPlans = [
|
|
kProductPlanPro,
|
|
kProductPlanEnterprise2,
|
|
kProductPlanEnterprise5,
|
|
kProductPlanEnterprise10,
|
|
kProductPlanEnterprise20,
|
|
];
|
|
|
|
const double kMobileLayoutWidth = 700;
|
|
const double kMobileDialogPadding = 12;
|
|
const double kDrawerWidth = 300;
|
|
const double kTableColumnGap = 20;
|
|
const double kTopBottomBarHeight = 50;
|
|
const double kDialogWidth = 400;
|
|
const double kDashboardPanelHeight = 525; // TODO remove this
|
|
|
|
const double kTabletLayoutWidth = 1100;
|
|
const double kTabletDialogPadding = 250;
|
|
|
|
const double kTableColumnWidthMin = 40;
|
|
const double kTableColumnWidthMax = 120;
|
|
|
|
const int kTableListWidthCutoff = 500;
|
|
const int kDefaultAnimationDuration = 500;
|
|
|
|
const int kCardTypeVisa = 1;
|
|
const int kCardTypeMasterCard = 2;
|
|
const int kCardTypeAmEx = 4;
|
|
const int kCardTypeDiners = 8;
|
|
const int kCardTypeDiscover = 16;
|
|
|
|
const String kPaymentTypeVisa = '6';
|
|
const String kPaymentTypeMasterCard = '7';
|
|
const String kPaymentTypeAmEx = '8';
|
|
const String kPaymentTypeDiners = '9';
|
|
const String kPaymentTypeDiscover = '10';
|
|
|
|
const String kPlanFree = '';
|
|
const String kPlanPro = 'pro';
|
|
const String kPlanEnterprise = 'enterprise';
|
|
const String kPlanWhiteLabel = 'white_label';
|
|
|
|
const double kGutterWidth = 16;
|
|
const double kLighterOpacity = .6;
|
|
|
|
const int kMaxNumberOfCompanies = 10;
|
|
const int kMaxNumberOfHistory = 50;
|
|
const int kMaxRecordsPerApiPage = 5000;
|
|
const int kMaxPostSeconds = 120;
|
|
const int kMillisecondsToRefreshData = 1000 * 60 * 15; // 15 minutes
|
|
const int kUpdatedAtBufferSeconds = 600;
|
|
const int kMillisecondsToRefreshActivities = 1000 * 60 * 60 * 24; // 1 day
|
|
const int kMillisecondsToRefreshStaticData = 1000 * 60 * 60 * 24; // 1 day
|
|
const int kMillisecondsToReenterPassword = 1000 * 60 * 30; // 30 minutes
|
|
const int kMillisecondsToDebounceSave = 1000 * 2; // 2 seconds
|
|
|
|
const String kLanguageEnglish = '1';
|
|
|
|
const String kCurrencyAll = '-1';
|
|
const String kCurrencyUSDollar = '1';
|
|
const String kCurrencyEuro = '3';
|
|
|
|
const String kCountryUnitedStates = '840';
|
|
|
|
const String kInvoiceStatusViewed = '-3';
|
|
const String kInvoiceStatusUnpaid = '-2';
|
|
const String kInvoiceStatusPastDue = '-1';
|
|
const String kInvoiceStatusDraft = '1';
|
|
const String kInvoiceStatusSent = '2';
|
|
const String kInvoiceStatusPartial = '3';
|
|
const String kInvoiceStatusPaid = '4';
|
|
const String kInvoiceStatusCancelled = '5';
|
|
const String kInvoiceStatusReversed = '6';
|
|
|
|
const kInvoiceStatuses = {
|
|
kInvoiceStatusPastDue: 'past_due',
|
|
kInvoiceStatusDraft: 'draft',
|
|
kInvoiceStatusSent: 'sent',
|
|
kInvoiceStatusPartial: 'partial',
|
|
kInvoiceStatusPaid: 'paid',
|
|
kInvoiceStatusCancelled: 'cancelled',
|
|
kInvoiceStatusReversed: 'reversed',
|
|
};
|
|
|
|
const String kRecurringInvoiceStatusDraft = '1';
|
|
const String kRecurringInvoiceStatusActive = '2';
|
|
const String kRecurringInvoiceStatusPaused = '3';
|
|
const String kRecurringInvoiceStatusCompleted = '4';
|
|
const String kRecurringInvoiceStatusPending = '-1';
|
|
|
|
const kRecurringInvoiceStatuses = {
|
|
kRecurringInvoiceStatusDraft: 'draft',
|
|
kRecurringInvoiceStatusActive: 'active',
|
|
kRecurringInvoiceStatusPaused: 'paused',
|
|
kRecurringInvoiceStatusCompleted: 'completed',
|
|
kRecurringInvoiceStatusPending: 'pending',
|
|
};
|
|
|
|
const String kQuoteStatusExpired = '-1';
|
|
const String kQuoteStatusDraft = '1';
|
|
const String kQuoteStatusSent = '2';
|
|
const String kQuoteStatusApproved = '3';
|
|
const String kQuoteStatusConverted = '4';
|
|
|
|
const kQuoteStatuses = {
|
|
kQuoteStatusExpired: 'expired',
|
|
kQuoteStatusDraft: 'draft',
|
|
kQuoteStatusSent: 'sent',
|
|
kQuoteStatusApproved: 'approved',
|
|
kQuoteStatusConverted: 'converted',
|
|
};
|
|
|
|
const String kCreditStatusDraft = '1';
|
|
const String kCreditStatusSent = '2';
|
|
const String kCreditStatusPartial = '3';
|
|
const String kCreditStatusApplied = '4';
|
|
|
|
const kCreditStatuses = {
|
|
kCreditStatusDraft: 'draft',
|
|
kCreditStatusSent: 'sent',
|
|
kCreditStatusPartial: 'partial',
|
|
kCreditStatusApplied: 'applied',
|
|
};
|
|
|
|
const String kGatewayTypeCreditCard = '1';
|
|
const String kGatewayTypeBankTransfer = '2';
|
|
const String kGatewayTypePayPal = '3';
|
|
const String kGatewayTypeCrypto = '4';
|
|
const String kGatewayTypeCustom = '5';
|
|
const String kGatewayTypeAlipay = '6';
|
|
const String kGatewayTypeSofort = '7';
|
|
const String kGatewayTypeApplePay = '8';
|
|
const String kGatewayTypeSEPA = '9';
|
|
const String kGatewayTypeCredit = '10';
|
|
|
|
const kGatewayTypes = {
|
|
kGatewayTypeCreditCard: 'credit_card',
|
|
kGatewayTypeBankTransfer: 'bank_transfer',
|
|
kGatewayTypePayPal: 'paypal',
|
|
kGatewayTypeCrypto: 'crypto',
|
|
kGatewayTypeCustom: 'custom',
|
|
kGatewayTypeAlipay: 'alipay',
|
|
kGatewayTypeSofort: 'sofort',
|
|
kGatewayTypeApplePay: 'apple_pay',
|
|
};
|
|
|
|
const String kNotificationChannelEmail = 'email';
|
|
const String kNotificationChannelSlack = 'slack';
|
|
|
|
const String kNotificationsAll = 'all_notifications';
|
|
const String kNotificationsAllUser = 'all_user_notifications';
|
|
const String kNotificationsPaymentSuccess = 'payment_success';
|
|
const String kNotificationsPaymentFailure = 'payment_failure';
|
|
const String kNotificationsInvoiceSent = 'invoice_sent';
|
|
const String kNotificationsInvoiceLate = 'invoice_late';
|
|
const String kNotificationsQuoteSent = 'quote_sent';
|
|
const String kNotificationsCreditSent = 'credit_sent';
|
|
const String kNotificationsQuoteViewed = 'quote_viewed';
|
|
const String kNotificationsQuoteExpired = 'quote_expired';
|
|
const String kNotificationsInvoiceViewed = 'invoice_viewed';
|
|
const String kNotificationsCreditViewed = 'credit_viewed';
|
|
const String kNotificationsQuoteApproved = 'quote_approved';
|
|
|
|
const kNotificationEvents = [
|
|
kNotificationsInvoiceSent,
|
|
kNotificationsInvoiceViewed,
|
|
kNotificationsInvoiceLate,
|
|
kNotificationsPaymentSuccess,
|
|
kNotificationsPaymentFailure,
|
|
kNotificationsQuoteSent,
|
|
kNotificationsQuoteViewed,
|
|
kNotificationsQuoteApproved,
|
|
kNotificationsQuoteExpired,
|
|
kNotificationsCreditSent,
|
|
kNotificationsCreditViewed,
|
|
];
|
|
|
|
const String kGatewayStripe = 'd14dd26a37cecc30fdd65700bfb55b23';
|
|
const String kGatewayAuthorizeNet = '3b6621f970ab18887c4f6dca78d3f8bb';
|
|
const String kGatewayCheckoutCom = '3758e7f7c6f4cecf0f4f348b9a00f456';
|
|
const String kGatewayPayPalExpress = '38f2c48af60c7dd69e04248cbb24c36e';
|
|
const String kGatewayCustom = '54faab2ab6e3223dbe848b1686490baa';
|
|
|
|
const String kClientPortalModeSubdomain = 'subdomain';
|
|
const String kClientPortalModeDomain = 'domain';
|
|
const String kClientPortalModeIFrame = 'iframe';
|
|
|
|
const String kGenerateNumberWhenSaved = 'when_saved';
|
|
const String kGenerateNumberWhenSent = 'when_sent';
|
|
//const String kNumberGeneratedWhenPaid = 'paid';
|
|
|
|
const String kDesignHeader = 'header';
|
|
const String kDesignBody = 'body';
|
|
const String kDesignFooter = 'footer';
|
|
const String kDesignProducts = 'product';
|
|
const String kDesignTasks = 'task';
|
|
const String kDesignIncludes = 'includes';
|
|
|
|
const String kEmailDesignPlain = 'plain';
|
|
const String kEmailDesignLight = 'light';
|
|
const String kEmailDesignDark = 'dark';
|
|
const String kEmailDesignCustom = 'custom';
|
|
|
|
const String kEntityStateActive = 'active';
|
|
const String kEntityStateArchived = 'archived';
|
|
const String kEntityStateDeleted = 'deleted';
|
|
|
|
const String kFieldTypeSingleLineText = 'single_line_text';
|
|
const String kFieldTypeMultiLineText = 'multi_line_text';
|
|
const String kFieldTypeDropdown = 'dropdown';
|
|
const String kFieldTypeDate = 'date';
|
|
const String kFieldTypeSwitch = 'switch';
|
|
|
|
const String kSwitchValueYes = 'yes';
|
|
const String kSwitchValueNo = 'no';
|
|
|
|
const String kTaskStatusLogged = '-1';
|
|
const String kTaskStatusRunning = '-2';
|
|
const String kTaskStatusInvoiced = '-3';
|
|
|
|
const String kMain = 'main';
|
|
const String kSettings = 'settings';
|
|
const String kDashboard = 'dashboard';
|
|
const String kReports = 'reports';
|
|
|
|
const String kAgeGroup0 = 'age_group_0';
|
|
const String kAgeGroup30 = 'age_group_30';
|
|
const String kAgeGroup60 = 'age_group_60';
|
|
const String kAgeGroup90 = 'age_group_90';
|
|
const String kAgeGroup120 = 'age_group_120';
|
|
|
|
const kAgeGroups = {
|
|
kAgeGroup0: 0,
|
|
kAgeGroup30: 30,
|
|
kAgeGroup60: 60,
|
|
kAgeGroup90: 90,
|
|
kAgeGroup120: 120,
|
|
};
|
|
|
|
const String kReminderScheduleAfterInvoiceDate = 'after_invoice_date';
|
|
const String kReminderScheduleBeforeDueDate = 'before_due_date';
|
|
const String kReminderScheduleAfterDueDate = 'after_due_date';
|
|
|
|
const String kSettingsCompanyDetails = 'company_details';
|
|
const String kSettingsPaymentTerms = 'payment_terms';
|
|
const String kSettingsPaymentTermView = 'payment_term_view';
|
|
const String kSettingsPaymentTermEdit = 'payment_term_edit';
|
|
const String kSettingsUserDetails = 'user_details';
|
|
const String kSettingsLocalization = 'localization';
|
|
const String kSettingsOnlinePayments = 'online_payments';
|
|
const String kSettingsCompanyGateways = 'company_gateways';
|
|
const String kSettingsCompanyGatewaysView = 'company_gateways_view';
|
|
const String kSettingsCompanyGatewaysEdit = 'company_gateways_edit';
|
|
const String kSettingsTaxSettings = 'tax_settings';
|
|
const String kSettingsTaxRates = 'tax_settings_rates';
|
|
const String kSettingsTaxRatesView = 'tax_settings_rates_view';
|
|
const String kSettingsTaxRatesEdit = 'tax_settings_rates_edit';
|
|
const String kSettingsIntegrations = 'integrations';
|
|
const String kSettingsProducts = 'product_settings';
|
|
const String kSettingsTasks = 'task_settings';
|
|
const String kSettingsExpenses = 'expense_settings';
|
|
const String kSettingsImportExport = 'import_export';
|
|
const String kSettingsDeviceSettings = 'device_settings';
|
|
const String kSettingsGroupSettings = 'group_settings';
|
|
const String kSettingsGroupSettingsView = 'group_settings_view';
|
|
const String kSettingsGroupSettingsEdit = 'group_settings_edit';
|
|
const String kSettingsCustomFields = 'custom_fields';
|
|
const String kSettingsCustomDesigns = 'custom_designs';
|
|
const String kSettingsCustomDesignsView = 'custom_designs_view';
|
|
const String kSettingsCustomDesignsEdit = 'custom_designs_edit';
|
|
const String kSettingsGeneratedNumbers = 'generated_numbers';
|
|
const String kSettingsWorkflowSettings = 'workflow_settings';
|
|
const String kSettingsInvoiceDesign = 'invoice_design';
|
|
const String kSettingsClientPortal = 'client_portal';
|
|
const String kSettingsBuyNowButtons = 'buy_now_buttons';
|
|
const String kSettingsEmailSettings = 'email_settings';
|
|
const String kSettingsTemplatesAndReminders = 'templates_and_reminders';
|
|
const String kSettingsCreditCardsAndBanks = 'credit_cards_and_banks';
|
|
const String kSettingsDataVisualizations = 'data_visualizations';
|
|
const String kSettingsApiTokens = 'api_tokens';
|
|
const String kSettingsUserManagement = 'user_management';
|
|
const String kSettingsUserManagementView = 'user_management_view';
|
|
const String kSettingsUserManagementEdit = 'user_management_edit';
|
|
const String kSettingsAccountManagement = 'account_management';
|
|
const String kSettingsTokens = 'tokens';
|
|
const String kSettingsTokenView = 'token_view';
|
|
const String kSettingsTokenEdit = 'token_edit';
|
|
const String kSettingsWebhooks = 'webhook';
|
|
const String kSettingsWebhookView = 'webhook_view';
|
|
const String kSettingsWebhookEdit = 'webhook_edit';
|
|
const String kSettingsExpenseCategories = 'expense_category';
|
|
const String kSettingsExpenseCategoryView = 'expense_category_view';
|
|
const String kSettingsExpenseCategoryEdit = 'expense_category_edit';
|
|
const String kSettingsTaskStatuses = 'task_status';
|
|
const String kSettingsTaskStatusView = 'task_status_view';
|
|
const String kSettingsTaskStatusEdit = 'task_status_edit';
|
|
|
|
const String kReportClient = 'client';
|
|
const String kReportCredit = 'credit';
|
|
const String kReportDocument = 'document';
|
|
const String kReportExpense = 'expense';
|
|
const String kReportInvoice = 'invoice';
|
|
const String kReportPayment = 'payment';
|
|
const String kReportProduct = 'product';
|
|
const String kReportProfitAndLoss = 'profit_and_loss';
|
|
const String kReportTask = 'task';
|
|
const String kReportTax = 'tax';
|
|
const String kReportPaymentTax = 'payment_tax';
|
|
const String kReportQuote = 'quote';
|
|
const String kReportLineItem = 'line_item';
|
|
|
|
const String kPdfFieldsClientDetails = 'client_details';
|
|
const String kPdfFieldsCompanyDetails = 'company_details';
|
|
const String kPdfFieldsCompanyAddress = 'company_address';
|
|
const String kPdfFieldsInvoiceDetails = 'invoice_details';
|
|
const String kPdfFieldsQuoteDetails = 'quote_details';
|
|
const String kPdfFieldsCreditDetails = 'credit_details';
|
|
const String kPdfFieldsProductColumns = 'product_columns';
|
|
const String kPdfFieldsTaskColumns = 'task_columns';
|
|
const String kPdfFieldsTotalFields = 'total_columns';
|
|
|
|
const String kPdfFields = '';
|
|
const String kPermissionCreateAll = 'create_all';
|
|
const String kPermissionViewAll = 'view_all';
|
|
const String kPermissionEditAll = 'edit_all';
|
|
|
|
const String kPaymentStatusUnapplied = '-1';
|
|
const String kPaymentStatusPending = '1';
|
|
const String kPaymentStatusCancelled = '2';
|
|
const String kPaymentStatusFailed = '3';
|
|
const String kPaymentStatusCompleted = '4';
|
|
const String kPaymentStatusPartiallyRefunded = '5';
|
|
const String kPaymentStatusRefunded = '6';
|
|
|
|
const kPaymentStatuses = {
|
|
kPaymentStatusUnapplied: 'unapplied',
|
|
kPaymentStatusPending: 'pending',
|
|
kPaymentStatusCancelled: 'cancelled',
|
|
kPaymentStatusFailed: 'failed',
|
|
kPaymentStatusCompleted: 'completed',
|
|
kPaymentStatusPartiallyRefunded: 'partially_refunded',
|
|
kPaymentStatusRefunded: 'refunded',
|
|
};
|
|
|
|
const String kExpenseStatusLogged = '1';
|
|
const String kExpenseStatusPending = '2';
|
|
const String kExpenseStatusInvoiced = '3';
|
|
|
|
const kExpenseStatuses = {
|
|
kExpenseStatusLogged: 'logged',
|
|
kExpenseStatusPending: 'pending',
|
|
kExpenseStatusInvoiced: 'invoiced',
|
|
};
|
|
|
|
const String kDefaultCurrencyId = '1';
|
|
const String kDefaultDateFormat = '5';
|
|
const String kDefaultAccentColor = '#0091EA';
|
|
const String kDefaultDarkSelectedColorMenu = '#1E252F';
|
|
const String kDefaultDarkSelectedColor = '#253750';
|
|
const String kDefaultDarkBorderColor = '#393A3C';
|
|
const String kDefaultLightSelectedColorMenu = '#f2faff';
|
|
const String kDefaultLightSelectedColor = '#e5f5ff';
|
|
const String kDefaultLightBorderColor = '#E7EBEE';
|
|
|
|
const String kReportGroupDay = 'day';
|
|
const String kReportGroupMonth = 'month';
|
|
const String kReportGroupYear = 'year';
|
|
|
|
const int kModuleRecurringInvoices = 1;
|
|
const int kModuleCredits = 2;
|
|
const int kModuleQuotes = 4;
|
|
const int kModuleTasks = 8;
|
|
const int kModuleExpenses = 16;
|
|
const int kModuleProjects = 32;
|
|
const int kModuleVendors = 64;
|
|
const int kModuleTickets = 128;
|
|
const int kModuleProposals = 256;
|
|
const int kModuleRecurringExpenses = 512;
|
|
const int kModuleRecurringTasks = 1024;
|
|
const int kModuleRecurringQuotes = 2048;
|
|
const int kModuleInvoices = 4096;
|
|
const int kModuleProformaInvoices = 8192;
|
|
const int kModulePurchaseOrders = 16384;
|
|
|
|
Color kColorRed = convertHexStringToColor('#8D3E3F');
|
|
Color kColorGreen = convertHexStringToColor('#407535');
|
|
|
|
const Map<int, String> kModules = {
|
|
kModuleInvoices: 'invoices',
|
|
kModuleRecurringInvoices: 'recurring_invoices',
|
|
kModuleQuotes: 'quotes',
|
|
kModuleCredits: 'credits',
|
|
kModuleProjects: 'projects',
|
|
kModuleTasks: 'tasks',
|
|
kModuleVendors: 'vendors',
|
|
kModuleExpenses: 'expenses',
|
|
//kModuleProposals: 'proposals',
|
|
//kModuleTickets: 'tickets',
|
|
//kModuleRecurringTasks: 'recurring_tasks',
|
|
//kModuleRecurringExpenses: 'recurring_expenses',
|
|
//kModuleRecurringQuotes: 'recurring_quotes',
|
|
};
|
|
|
|
class InvoiceStatusColors {
|
|
static var colors = {
|
|
kInvoiceStatusDraft: Colors.black,
|
|
kInvoiceStatusSent: convertHexStringToColor('#505F73'),
|
|
//kInvoiceStatusViewed: Colors.orange,
|
|
//kInvoiceStatusApproved: Colors.green,
|
|
kInvoiceStatusPartial: Colors.deepPurple,
|
|
kInvoiceStatusPaid: kColorGreen,
|
|
kInvoiceStatusPastDue: kColorRed,
|
|
kInvoiceStatusCancelled: convertHexStringToColor('#444444'),
|
|
kInvoiceStatusReversed: convertHexStringToColor('#444444'),
|
|
};
|
|
}
|
|
|
|
class RecurringInvoiceStatusColors {
|
|
static var colors = {
|
|
kRecurringInvoiceStatusDraft: Colors.black,
|
|
kRecurringInvoiceStatusActive: kColorGreen,
|
|
kRecurringInvoiceStatusPaused: convertHexStringToColor('#444444'),
|
|
kRecurringInvoiceStatusCompleted: kColorGreen,
|
|
kRecurringInvoiceStatusPending: convertHexStringToColor('#444444'),
|
|
};
|
|
}
|
|
|
|
class CreditStatusColors {
|
|
static var colors = {
|
|
kCreditStatusDraft: Colors.black,
|
|
kCreditStatusSent: convertHexStringToColor('#505F73'),
|
|
//kInvoiceStatusViewed: Colors.orange,
|
|
//kInvoiceStatusApproved: Colors.green,
|
|
kCreditStatusPartial: Colors.deepPurple,
|
|
kCreditStatusApplied: kColorGreen,
|
|
};
|
|
}
|
|
|
|
class QuoteStatusColors {
|
|
static var colors = {
|
|
kQuoteStatusDraft: Colors.black,
|
|
kQuoteStatusSent: convertHexStringToColor('#505F73'),
|
|
kQuoteStatusApproved: Colors.deepPurple,
|
|
kQuoteStatusConverted: kColorGreen,
|
|
kQuoteStatusExpired: kColorRed,
|
|
};
|
|
}
|
|
|
|
class PaymentStatusColors {
|
|
static var colors = {
|
|
kPaymentStatusPending: convertHexStringToColor('#505F73'),
|
|
kPaymentStatusCancelled: kColorRed,
|
|
kPaymentStatusFailed: kColorRed,
|
|
kPaymentStatusCompleted: kColorGreen,
|
|
kPaymentStatusPartiallyRefunded: Colors.purple,
|
|
kPaymentStatusRefunded: convertHexStringToColor('#8D3E3F'),
|
|
kPaymentStatusUnapplied: convertHexStringToColor('#444444'),
|
|
};
|
|
}
|
|
|
|
class ExpenseStatusColors {
|
|
static var colors = {
|
|
kExpenseStatusLogged: convertHexStringToColor('#505F73'),
|
|
kExpenseStatusPending: Colors.orange,
|
|
kExpenseStatusInvoiced: kColorGreen,
|
|
};
|
|
}
|
|
|
|
class TaskStatusColors {
|
|
static var colors = {
|
|
kTaskStatusLogged: convertHexStringToColor('#444444'),
|
|
kTaskStatusRunning: Colors.blue,
|
|
kTaskStatusInvoiced: kColorGreen,
|
|
};
|
|
}
|
|
|
|
const List<int> kPaymentTerms = [0, -1, 7, 10, 14, 15, 30, 60, 90];
|
|
|
|
const List<String> kLanguages = [
|
|
'ca',
|
|
'cs',
|
|
'da',
|
|
'de',
|
|
'el',
|
|
'en',
|
|
'en_GB',
|
|
'en_AU',
|
|
'es',
|
|
'es_ES',
|
|
'fi',
|
|
'fr',
|
|
'fr_CA',
|
|
'hr',
|
|
'it',
|
|
'ja',
|
|
'lt',
|
|
'mk_MK',
|
|
'nb_NO',
|
|
'nl',
|
|
'pl',
|
|
'pt_BR',
|
|
'pt_PT',
|
|
'ro',
|
|
'sl',
|
|
'sq',
|
|
'sr_RS',
|
|
'sv',
|
|
'th',
|
|
'tr_TR',
|
|
'bg',
|
|
];
|
|
|
|
List<String> kCustomLabels = [
|
|
'address1',
|
|
'address2',
|
|
'amount',
|
|
'balance',
|
|
'country',
|
|
'credit',
|
|
'credit_card',
|
|
'date',
|
|
'description',
|
|
'details',
|
|
'discount',
|
|
'due_date',
|
|
'email',
|
|
'from',
|
|
'hours',
|
|
'id_number',
|
|
'invoice',
|
|
'item',
|
|
'line_total',
|
|
'paid_to_date',
|
|
'payment_date',
|
|
'phone',
|
|
'po_number',
|
|
'quantity',
|
|
'quote',
|
|
'rate',
|
|
'service',
|
|
'statement',
|
|
'subtotal',
|
|
'surcharge',
|
|
'tax',
|
|
'taxes',
|
|
'terms',
|
|
'to',
|
|
'total',
|
|
'unit_cost',
|
|
'valid_until',
|
|
'vat_number',
|
|
'website',
|
|
];
|
|
|
|
const kDaysOfTheWeek = {
|
|
'0': 'sunday',
|
|
'1': 'monday',
|
|
'2': 'tuesday',
|
|
'3': 'wednesday',
|
|
'4': 'thursday',
|
|
'5': 'friday',
|
|
'6': 'saturday',
|
|
};
|
|
|
|
const kMonthsOfTheYear = {
|
|
'1': 'january',
|
|
'2': 'february',
|
|
'3': 'march',
|
|
'4': 'april',
|
|
'5': 'may',
|
|
'6': 'june',
|
|
'7': 'july',
|
|
'8': 'august',
|
|
'9': 'september',
|
|
'10': 'october',
|
|
'11': 'november',
|
|
'12': 'december',
|
|
};
|
|
|
|
const kFrequencyMonthly = '5';
|
|
|
|
const kFrequencies = {
|
|
'1': 'freq_daily',
|
|
'2': 'freq_weekly',
|
|
'3': 'freq_two_weeks',
|
|
'4': 'freq_four_weeks',
|
|
'5': 'freq_monthly',
|
|
'6': 'freq_two_months',
|
|
'7': 'freq_three_months',
|
|
'8': 'freq_four_months',
|
|
'9': 'freq_six_months',
|
|
'10': 'freq_annually',
|
|
'11': 'freq_two_years',
|
|
'12': 'freq_three_years',
|
|
};
|
|
|
|
const kPageSizes = [
|
|
'A0',
|
|
'A1',
|
|
'A2',
|
|
'A3',
|
|
'A4',
|
|
'A5',
|
|
'A6',
|
|
'A7',
|
|
'A8',
|
|
'A9',
|
|
'A10',
|
|
'B0',
|
|
'B1',
|
|
'B2',
|
|
'B3',
|
|
'B4',
|
|
'B5',
|
|
'B6',
|
|
'B7',
|
|
'B8',
|
|
'B9',
|
|
'B10',
|
|
'C0',
|
|
'C1',
|
|
'C2',
|
|
'C3',
|
|
'C4',
|
|
'C5',
|
|
'C6',
|
|
'C7',
|
|
'C8',
|
|
'C9',
|
|
'C10',
|
|
'RA0',
|
|
'RA1',
|
|
'RA2',
|
|
'RA3',
|
|
'RA4',
|
|
'SRA0',
|
|
'SRA1',
|
|
'SRA2',
|
|
'SRA3',
|
|
'SRA4',
|
|
'Executive',
|
|
'Folio',
|
|
'Legal',
|
|
'Letter',
|
|
'Tabloid',
|
|
];
|
|
|
|
const String kDrawerKey = 'drawer_key';
|
|
|
|
const String kActivityCreateClient = '1';
|
|
const String kActivityArchiveClient = '2';
|
|
const String kActivityDeleteClient = '3';
|
|
const String kActivityCreateInvoice = '4';
|
|
const String kActivityUpdateInvoice = '5';
|
|
const String kActivityEmailInvoice = '6';
|
|
const String kActivityViewInvoice = '7';
|
|
const String kActivityArchiveInvoice = '8';
|
|
const String kActivityDeleteInvoice = '9';
|
|
const String kActivityCreatePayment = '10';
|
|
const String kActivityUpdatePayment = '11';
|
|
const String kActivityArchivePayment = '12';
|
|
const String kActivityDeletePayment = '13';
|
|
const String kActivityCreateCredit = '14';
|
|
const String kActivityUpdateCredit = '15';
|
|
const String kActivityArchiveCredit = '16';
|
|
const String kActivityDeleteCredit = '17';
|
|
const String kActivityCreateQuote = '18';
|
|
const String kActivityUpdateQuote = '19';
|
|
const String kActivityEmailQuote = '20';
|
|
const String kActivityViewQuote = '21';
|
|
const String kActivityArchiveQuote = '22';
|
|
const String kActivityDeleteQuote = '23';
|
|
const String kActivityRestoreQuote = '24';
|
|
const String kActivityRestoreInvoice = '25';
|
|
const String kActivityRestoreClient = '26';
|
|
const String kActivityRestorePayment = '27';
|
|
const String kActivityRestoreCredit = '28';
|
|
const String kActivityApproveQuote = '29';
|
|
const String kActivityCreateVendor = '30';
|
|
const String kActivityArchiveVendor = '31';
|
|
const String kActivityDeleteVendor = '32';
|
|
const String kActivityRestoreVendor = '33';
|
|
const String kActivityCreateExpense = '34';
|
|
const String kActivityArchiveExpense = '35';
|
|
const String kActivityDeleteExpense = '36';
|
|
const String kActivityRestoreExpense = '37';
|
|
const String kActivityVoidedPayment = '39';
|
|
const String kActivityRefundedPayment = '40';
|
|
const String kActivityFailedPayment = '41';
|
|
const String kActivityCreateTask = '42';
|
|
const String kActivityUpdateTask = '43';
|
|
const String kActivityArchiveTask = '44';
|
|
const String kActivityDeleteTask = '45';
|
|
const String kActivityRestoreTask = '46';
|
|
const String kActivityUpdateExpense = '47';
|
|
const String kActivityCreateUser = '48';
|
|
const String kActivityUpdateUser = '49';
|
|
const String kActivityArchiveUser = '50';
|
|
const String kActivityDeleteUser = '51';
|
|
const String kActivityRestoreUser = '52';
|
|
const String kActivityMarkSentInvoice = '53';
|
|
const String kActivityPaidInvoice = '54';
|
|
const String kActivityEmailInvoiceFailed = '57';
|
|
const String kActivityReversedInvoice = '58';
|
|
const String kActivityCancelledInvoice = '59';
|
|
const String kActivityViewCredit = '60';
|
|
const String kActivityUpdateClient = '61';
|
|
const String kActivityUpdateVendor = '62';
|
|
const String kActivityEmailReminder1 = '63';
|
|
const String kActivityEmailReminder2 = '64';
|
|
const String kActivityEmailReminder3 = '65';
|
|
const String kActivityEmailReminderEndless = '66';
|