This commit is contained in:
Hillel Coren 2019-10-03 11:46:57 +03:00
parent 3f8e679de9
commit 0d09dbb51b
15 changed files with 51 additions and 17 deletions

View File

@ -289,7 +289,7 @@ abstract class AppState implements Built<AppState, AppStateBuilder> {
String toString() { String toString() {
//return 'Settings: ${selectedCompanyState.company.settings}'; //return 'Settings: ${selectedCompanyState.company.settings}';
//return 'URL: ${authState.url}, ${selectedCompany.plan}'; //return 'URL: ${authState.url}, ${selectedCompany.plan}';
return 'Route: ${uiState.currentRoute}, name: ${user.firstName}/${uiState.settingsUIState.editing.user.firstName}'; return 'Route: ${uiState.currentRoute}, updatedAt: ${settingsUIState.updatedAt}';
//return 'Route: ${uiState.currentRoute}, Previous: ${uiState.previousRoute}, Layout: ${uiState.layout}, Menu: ${uiState.isMenuVisible}, History: ${uiState.isHistoryVisible}'; //return 'Route: ${uiState.currentRoute}, Previous: ${uiState.previousRoute}, Layout: ${uiState.layout}, Menu: ${uiState.isMenuVisible}, History: ${uiState.isHistoryVisible}';
} }
} }

View File

@ -17,7 +17,10 @@ class ClientPortalBuilder extends StatelessWidget {
return StoreConnector<AppState, ClientPortalVM>( return StoreConnector<AppState, ClientPortalVM>(
converter: ClientPortalVM.fromStore, converter: ClientPortalVM.fromStore,
builder: (context, viewModel) { builder: (context, viewModel) {
return ClientPortal(viewModel: viewModel); return ClientPortal(
viewModel: viewModel,
key: ValueKey(viewModel.state.settingsUIState.updatedAt),
);
}, },
); );
} }

View File

@ -59,6 +59,8 @@ class _CompanyDetailsState extends State<CompanyDetails>
@override @override
void didChangeDependencies() { void didChangeDependencies() {
print('### didChangeDependencies...');
_controllers = [ _controllers = [
_nameController, _nameController,
_idNumberController, _idNumberController,
@ -141,7 +143,6 @@ class _CompanyDetailsState extends State<CompanyDetails>
body: Form( body: Form(
key: _formKey, key: _formKey,
child: TabBarView( child: TabBarView(
key: ValueKey(viewModel.state.selectedCompany.companyKey),
controller: _controller, controller: _controller,
children: <Widget>[ children: <Widget>[
ListView( ListView(

View File

@ -17,7 +17,9 @@ class CompanyDetailsBuilder extends StatelessWidget {
return StoreConnector<AppState, CompanyDetailsVM>( return StoreConnector<AppState, CompanyDetailsVM>(
converter: CompanyDetailsVM.fromStore, converter: CompanyDetailsVM.fromStore,
builder: (context, viewModel) { builder: (context, viewModel) {
return CompanyDetails(viewModel: viewModel); return CompanyDetails(
key: ValueKey(viewModel.state.settingsUIState.updatedAt),
viewModel: viewModel);
}, },
); );
} }
@ -39,9 +41,9 @@ class CompanyDetailsVM {
state: state, state: state,
company: state.selectedCompany, company: state.selectedCompany,
onChanged: (company) => onChanged: (company) =>
store.dispatch(ResetCompanySettings(company: company)), store.dispatch(UpdateCompanySettings(company: company)),
onCancelPressed: (context) => store onCancelPressed: (context) => store
.dispatch(UpdateCompanySettings(company: state.selectedCompany)), .dispatch(ResetCompanySettings(company: state.selectedCompany)),
onSavePressed: (context) { onSavePressed: (context) {
final completer = snackBarCompleter( final completer = snackBarCompleter(
context, AppLocalization.of(context).refreshData); context, AppLocalization.of(context).refreshData);

View File

@ -13,7 +13,10 @@ class EmailSettingsBuilder extends StatelessWidget {
return StoreConnector<AppState, EmailSettingsVM>( return StoreConnector<AppState, EmailSettingsVM>(
converter: EmailSettingsVM.fromStore, converter: EmailSettingsVM.fromStore,
builder: (context, viewModel) { builder: (context, viewModel) {
return EmailSettings(viewModel: viewModel); return EmailSettings(
viewModel: viewModel,
key: ValueKey(viewModel.state.settingsUIState.updatedAt),
);
}, },
); );
} }

View File

@ -13,7 +13,10 @@ class InvoiceDesignBuilder extends StatelessWidget {
return StoreConnector<AppState, InvoiceDesignVM>( return StoreConnector<AppState, InvoiceDesignVM>(
converter: InvoiceDesignVM.fromStore, converter: InvoiceDesignVM.fromStore,
builder: (context, viewModel) { builder: (context, viewModel) {
return InvoiceDesign(viewModel: viewModel); return InvoiceDesign(
viewModel: viewModel,
key: ValueKey(viewModel.state.settingsUIState.updatedAt),
);
}, },
); );
} }

View File

@ -13,7 +13,10 @@ class InvoiceSettingsBuilder extends StatelessWidget {
return StoreConnector<AppState, InvoiceSettingsVM>( return StoreConnector<AppState, InvoiceSettingsVM>(
converter: InvoiceSettingsVM.fromStore, converter: InvoiceSettingsVM.fromStore,
builder: (context, viewModel) { builder: (context, viewModel) {
return InvoiceSettings(viewModel: viewModel); return InvoiceSettings(
viewModel: viewModel,
key: ValueKey(viewModel.state.settingsUIState.updatedAt),
);
}, },
); );
} }

View File

@ -17,7 +17,10 @@ class LocalizationBuilder extends StatelessWidget {
return StoreConnector<AppState, LocalizationSettingsVM>( return StoreConnector<AppState, LocalizationSettingsVM>(
converter: LocalizationSettingsVM.fromStore, converter: LocalizationSettingsVM.fromStore,
builder: (context, viewModel) { builder: (context, viewModel) {
return LocalizationSettings(viewModel: viewModel); return LocalizationSettings(
viewModel: viewModel,
key: ValueKey(viewModel.state.settingsUIState.updatedAt),
);
}, },
); );
} }

View File

@ -13,7 +13,10 @@ class NotificationsSettingsBuilder extends StatelessWidget {
return StoreConnector<AppState, NotificationSettingsVM>( return StoreConnector<AppState, NotificationSettingsVM>(
converter: NotificationSettingsVM.fromStore, converter: NotificationSettingsVM.fromStore,
builder: (context, viewModel) { builder: (context, viewModel) {
return NotificationSettings(viewModel: viewModel); return NotificationSettings(
viewModel: viewModel,
key: ValueKey(viewModel.state.settingsUIState.updatedAt),
);
}, },
); );
} }

View File

@ -13,7 +13,10 @@ class OnlinePaymentsBuilder extends StatelessWidget {
return StoreConnector<AppState, OnlinePaymentsVM>( return StoreConnector<AppState, OnlinePaymentsVM>(
converter: OnlinePaymentsVM.fromStore, converter: OnlinePaymentsVM.fromStore,
builder: (context, viewModel) { builder: (context, viewModel) {
return OnlinePayments(viewModel: viewModel); return OnlinePayments(
viewModel: viewModel,
key: ValueKey(viewModel.state.settingsUIState.updatedAt),
);
}, },
); );
} }

View File

@ -13,7 +13,10 @@ class ProductSettingsBuilder extends StatelessWidget {
return StoreConnector<AppState, ProductSettingsVM>( return StoreConnector<AppState, ProductSettingsVM>(
converter: ProductSettingsVM.fromStore, converter: ProductSettingsVM.fromStore,
builder: (context, viewModel) { builder: (context, viewModel) {
return ProductSettings(viewModel: viewModel); return ProductSettings(
viewModel: viewModel,
key: ValueKey(viewModel.state.settingsUIState.updatedAt),
);
}, },
); );
} }

View File

@ -30,7 +30,6 @@ class SettingsScaffold extends StatelessWidget {
return true; return true;
}, },
child: Scaffold( child: Scaffold(
key: ValueKey(state.uiState.settingsUIState.updatedAt),
body: body, body: body,
appBar: AppBar( appBar: AppBar(
automaticallyImplyLeading: isMobile(context), automaticallyImplyLeading: isMobile(context),

View File

@ -13,7 +13,10 @@ class TaxRatesBuilder extends StatelessWidget {
return StoreConnector<AppState, TaxRatesVM>( return StoreConnector<AppState, TaxRatesVM>(
converter: TaxRatesVM.fromStore, converter: TaxRatesVM.fromStore,
builder: (context, viewModel) { builder: (context, viewModel) {
return TaxRates(viewModel: viewModel); return TaxRates(
viewModel: viewModel,
key: ValueKey(viewModel.state.settingsUIState.updatedAt),
);
}, },
); );
} }

View File

@ -13,7 +13,10 @@ class TemplatesAndRemindersBuilder extends StatelessWidget {
return StoreConnector<AppState, TemplatesAndRemindersVM>( return StoreConnector<AppState, TemplatesAndRemindersVM>(
converter: TemplatesAndRemindersVM.fromStore, converter: TemplatesAndRemindersVM.fromStore,
builder: (context, viewModel) { builder: (context, viewModel) {
return TemplatesAndReminders(viewModel: viewModel); return TemplatesAndReminders(
viewModel: viewModel,
key: ValueKey(viewModel.state.settingsUIState.updatedAt),
);
}, },
); );
} }

View File

@ -17,7 +17,9 @@ class UserDetailsBuilder extends StatelessWidget {
return StoreConnector<AppState, UserDetailsVM>( return StoreConnector<AppState, UserDetailsVM>(
converter: UserDetailsVM.fromStore, converter: UserDetailsVM.fromStore,
builder: (context, viewModel) { builder: (context, viewModel) {
return UserDetails(viewModel: viewModel); return UserDetails(
key: ValueKey(viewModel.state.settingsUIState.updatedAt),
viewModel: viewModel);
}, },
); );
} }