This commit is contained in:
Hillel Coren 2019-10-18 14:25:44 +03:00
parent 6a48f5a647
commit f462ebb9ed
3 changed files with 33 additions and 2 deletions

View File

@ -115,7 +115,8 @@ var memoizedGatewayList = memo1(
List<String> gatewayList(BuiltMap<String, GatewayEntity> gatewayMap) {
final list = gatewayMap.keys.toList();
list.sort((idA, idB) => gatewayMap[idA].id.compareTo(gatewayMap[idB].id));
list.sort((idA, idB) =>
gatewayMap[idA].sortOrder.compareTo(gatewayMap[idB].sortOrder));
return list;
}

View File

@ -9,6 +9,7 @@ import 'package:invoiceninja_flutter/ui/app/form_card.dart';
import 'package:invoiceninja_flutter/ui/company_gateway/edit/company_gateway_edit_vm.dart';
import 'package:invoiceninja_flutter/ui/settings/settings_scaffold.dart';
import 'package:invoiceninja_flutter/utils/localization.dart';
import 'package:invoiceninja_flutter/utils/strings.dart';
class CompanyGatewayEdit extends StatefulWidget {
const CompanyGatewayEdit({
@ -260,6 +261,10 @@ class GatewayConfigSettings extends StatelessWidget {
final state = viewModel.state;
final gateway = state.staticState.gatewayMap[companyGateway.gatewayId];
if (gateway == null) {
return SizedBox();
}
return Column(
children: gateway.parsedFields.keys
.map((field) => GatewayConfigField(
@ -324,7 +329,7 @@ class _GatewayConfigFieldState extends State<GatewayConfigField> {
return TextFormField(
controller: _textController,
decoration: InputDecoration(
labelText: widget.field,
labelText: toTitleCase(widget.field),
),
onChanged: (value) => _onChanged(),
obscureText: _obscureText(widget.field),

View File

@ -3,6 +3,31 @@ String toSnakeCase(String value) {
RegExp(r'[A-Z]'), (Match match) => '_' + match[0].toLowerCase());
}
String toSpaceCase(String value) {
return value.replaceAllMapped(
RegExp(r'[A-Z]'), (Match match) => ' ' + match[0].toLowerCase());
}
String toTitleCase(String text) {
if (text.length <= 1) {
return text.toUpperCase();
}
text = toSpaceCase(text);
final words = text.split(' ');
final capitalized = words.map((word) {
if (word == 'url') {
return 'URL';
}
final first = word.substring(0, 1).toUpperCase();
final rest = word.substring(1);
return '$first$rest';
});
return capitalized.join(' ');
}
String getFirstName(String value) {
final parts = value.split(' ');
if (parts.length > 1) {