Settings
This commit is contained in:
parent
f868987df1
commit
79474c6413
|
|
@ -91,6 +91,7 @@ const String kSettingsTaxRates = 'tax_rates';
|
||||||
const String kSettingsNotifications = 'notifications';
|
const String kSettingsNotifications = 'notifications';
|
||||||
const String kSettingsProducts = 'products';
|
const String kSettingsProducts = 'products';
|
||||||
const String kSettingsImportExport = 'import_export';
|
const String kSettingsImportExport = 'import_export';
|
||||||
|
const String kSettingsDeviceSettings = 'device_settings';
|
||||||
const String kSettingsInvoiceSettings = 'invoice_settings';
|
const String kSettingsInvoiceSettings = 'invoice_settings';
|
||||||
const String kSettingsInvoiceDesign = 'invoice_design';
|
const String kSettingsInvoiceDesign = 'invoice_design';
|
||||||
const String kSettingsClientPortal = 'client_portal';
|
const String kSettingsClientPortal = 'client_portal';
|
||||||
|
|
|
||||||
|
|
@ -374,7 +374,7 @@ class DrawerTile extends StatelessWidget {
|
||||||
: title == localization.settings ? 'settings' : entityType.name;
|
: title == localization.settings ? 'settings' : entityType.name;
|
||||||
|
|
||||||
return SelectedIndicator(
|
return SelectedIndicator(
|
||||||
isSelected: uiState.containsRoute(route),
|
isSelected: uiState.currentRoute.startsWith('/$route'),
|
||||||
child: ListTile(
|
child: ListTile(
|
||||||
dense: true,
|
dense: true,
|
||||||
leading: Icon(icon, size: 22.0),
|
leading: Icon(icon, size: 22.0),
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
|
import 'package:invoiceninja_flutter/constants.dart';
|
||||||
import 'package:invoiceninja_flutter/ui/app/help_text.dart';
|
import 'package:invoiceninja_flutter/ui/app/help_text.dart';
|
||||||
import 'package:invoiceninja_flutter/ui/app/screen_imports.dart';
|
import 'package:invoiceninja_flutter/ui/app/screen_imports.dart';
|
||||||
import 'package:invoiceninja_flutter/ui/settings/company_details.dart';
|
|
||||||
import 'package:invoiceninja_flutter/ui/settings/company_details_vm.dart';
|
import 'package:invoiceninja_flutter/ui/settings/company_details_vm.dart';
|
||||||
import 'package:invoiceninja_flutter/ui/settings/user_details_vm.dart';
|
import 'package:invoiceninja_flutter/ui/settings/user_details_vm.dart';
|
||||||
import 'package:invoiceninja_flutter/utils/localization.dart';
|
import 'package:invoiceninja_flutter/utils/localization.dart';
|
||||||
|
|
@ -124,14 +124,13 @@ class SettingsScreens extends StatelessWidget {
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
final store = StoreProvider.of<AppState>(context);
|
final store = StoreProvider.of<AppState>(context);
|
||||||
final localization = AppLocalization.of(context);
|
|
||||||
final state = store.state;
|
final state = store.state;
|
||||||
final uiState = state.uiState;
|
final uiState = state.uiState;
|
||||||
final subRoute = uiState.subRoute;
|
final subRoute = uiState.subRoute;
|
||||||
|
|
||||||
int index = 0;
|
int index = 0;
|
||||||
|
|
||||||
if (subRoute == localization.userDetails) {
|
if (subRoute == kSettingsUserDetails) {
|
||||||
index = 1;
|
index = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -28,7 +28,7 @@ class CompanyDetailsVM {
|
||||||
});
|
});
|
||||||
|
|
||||||
static CompanyDetailsVM fromStore(Store<AppState> store) {
|
static CompanyDetailsVM fromStore(Store<AppState> store) {
|
||||||
final state = store.state;
|
//final state = store.state;
|
||||||
|
|
||||||
return CompanyDetailsVM(
|
return CompanyDetailsVM(
|
||||||
state: store.state,
|
state: store.state,
|
||||||
|
|
|
||||||
|
|
@ -59,6 +59,10 @@ class SettingsList extends StatelessWidget {
|
||||||
section: kSettingsImportExport,
|
section: kSettingsImportExport,
|
||||||
viewModel: viewModel,
|
viewModel: viewModel,
|
||||||
),
|
),
|
||||||
|
SettingsListTile(
|
||||||
|
section: kSettingsDeviceSettings,
|
||||||
|
viewModel: viewModel,
|
||||||
|
),
|
||||||
Container(
|
Container(
|
||||||
color: Theme.of(context).backgroundColor,
|
color: Theme.of(context).backgroundColor,
|
||||||
padding: const EdgeInsets.only(left: 15, top: 15, bottom: 15),
|
padding: const EdgeInsets.only(left: 15, top: 15, bottom: 15),
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,6 @@
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.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/ui/settings/company_details.dart';
|
|
||||||
import 'package:invoiceninja_flutter/ui/settings/user_details.dart';
|
import 'package:invoiceninja_flutter/ui/settings/user_details.dart';
|
||||||
import 'package:redux/redux.dart';
|
import 'package:redux/redux.dart';
|
||||||
import 'package:invoiceninja_flutter/redux/app/app_state.dart';
|
import 'package:invoiceninja_flutter/redux/app/app_state.dart';
|
||||||
|
|
@ -29,7 +28,7 @@ class UserDetailsVM {
|
||||||
});
|
});
|
||||||
|
|
||||||
static UserDetailsVM fromStore(Store<AppState> store) {
|
static UserDetailsVM fromStore(Store<AppState> store) {
|
||||||
final state = store.state;
|
//final state = store.state;
|
||||||
|
|
||||||
return UserDetailsVM(
|
return UserDetailsVM(
|
||||||
state: store.state,
|
state: store.state,
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@ 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': {
|
||||||
|
'device_settings': 'Device Settings',
|
||||||
'defaults': 'Defaults',
|
'defaults': 'Defaults',
|
||||||
'basic_settings': 'Basic Settings',
|
'basic_settings': 'Basic Settings',
|
||||||
'advanced_settings': 'Advanced Settings',
|
'advanced_settings': 'Advanced Settings',
|
||||||
|
|
@ -14669,6 +14670,8 @@ mixin LocalizationsProvider on LocaleCodeAware {
|
||||||
|
|
||||||
String get defaults => _localizedValues[localeCode]['defaults'];
|
String get defaults => _localizedValues[localeCode]['defaults'];
|
||||||
|
|
||||||
|
String get deviceSettings => _localizedValues[localeCode]['device_settings'];
|
||||||
|
|
||||||
String lookup(String key) {
|
String lookup(String key) {
|
||||||
final lookupKey = toSnakeCase(key);
|
final lookupKey = toSnakeCase(key);
|
||||||
return _localizedValues[localeCode][lookupKey] ??
|
return _localizedValues[localeCode][lookupKey] ??
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue