diff --git a/lib/constants.dart b/lib/constants.dart index 015e3a215..5343931f3 100644 --- a/lib/constants.dart +++ b/lib/constants.dart @@ -394,33 +394,33 @@ 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 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 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 kSettingsTaxRatesView = 'tax_settings_rates/view'; +const String kSettingsTaxRatesEdit = 'tax_settings_rates/edit'; 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 kSettingsGroupSettingsView = 'group_settings/view'; +const String kSettingsGroupSettingsEdit = 'group_settings/edit'; const String kSettingsSubscriptions = 'subscriptions'; -const String kSettingsSubscriptionsView = 'subscriptions_view'; -const String kSettingsSubscriptionsEdit = 'subscriptions_edit'; +const String kSettingsSubscriptionsView = 'subscriptions/view'; +const String kSettingsSubscriptionsEdit = 'subscriptions/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 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'; @@ -432,21 +432,21 @@ 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 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 kSettingsTokenView = 'token/view'; +const String kSettingsTokenEdit = 'token/edit'; const String kSettingsWebhooks = 'webhook'; -const String kSettingsWebhookView = 'webhook_view'; -const String kSettingsWebhookEdit = 'webhook_edit'; +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 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 kSettingsTaskStatusView = 'task_status/view'; +const String kSettingsTaskStatusEdit = 'task_status/edit'; const List kAdvancedSettings = [ kSettingsCustomDesigns, diff --git a/lib/redux/app/app_state.dart b/lib/redux/app/app_state.dart index 86d39f9aa..9e7aad510 100644 --- a/lib/redux/app/app_state.dart +++ b/lib/redux/app/app_state.dart @@ -703,8 +703,7 @@ abstract class AppState implements Built { return settingsUIState.isChanged; } - if (uiState.currentRoute.endsWith('/edit') || - uiState.currentRoute.endsWith('_edit')) { + if (uiState.currentRoute.endsWith('/edit')) { throw 'AppState.hasChanges is not defined for ${uiState.currentRoute}'; } diff --git a/lib/redux/ui/pref_reducer.dart b/lib/redux/ui/pref_reducer.dart index b0796fa03..fb4b527a7 100644 --- a/lib/redux/ui/pref_reducer.dart +++ b/lib/redux/ui/pref_reducer.dart @@ -550,7 +550,7 @@ BuiltList _addToHistory( } if (record.entityType == EntityType.settings) { - if ((record.id ?? '').endsWith('_edit')) { + if ((record.id ?? '').endsWith('/edit')) { return list; } } diff --git a/lib/redux/ui/ui_state.dart b/lib/redux/ui/ui_state.dart index 87550fec8..7a4747d0e 100644 --- a/lib/redux/ui/ui_state.dart +++ b/lib/redux/ui/ui_state.dart @@ -200,8 +200,10 @@ abstract class UIState implements Built { String get baseSubRoute { String route = subRoute; - route = route.replaceAll('_edit', ''); - route = route.replaceAll('_view', ''); + route = route.replaceAll('/edit', ''); + route = route.replaceAll('/view', ''); + route = route.replaceAll('/pdf', ''); + route = route.replaceAll('/email', ''); return route; } @@ -218,9 +220,7 @@ abstract class UIState implements Built { } bool get isEditing => - currentRoute.endsWith('_edit') || - currentRoute.endsWith('/edit') || - currentRoute.endsWith('refund'); + currentRoute.endsWith('/edit') || currentRoute.endsWith('refund'); bool get isEmailing => currentRoute.endsWith('/email'); diff --git a/lib/ui/app/menu_drawer_vm.dart b/lib/ui/app/menu_drawer_vm.dart index 08f91b786..bb7f84449 100644 --- a/lib/ui/app/menu_drawer_vm.dart +++ b/lib/ui/app/menu_drawer_vm.dart @@ -109,12 +109,12 @@ class MenuDrawerVM { section: uiState.subRoute, force: true, )); + } - if (uiState.isEditing || uiState.isViewing) { - store.dispatch(UpdateCurrentRoute(uiState.currentRoute - .replaceFirst('_edit', '') - .replaceFirst('_view', ''))); - } + if (uiState.isEditing || uiState.isViewing) { + store.dispatch(UpdateCurrentRoute(uiState.currentRoute + .replaceFirst('/edit', '') + .replaceFirst('/view', ''))); } }); },