Added mechanism for presets to inherit their fields and moreFields values

This commit is contained in:
Quincy Morgan
2019-01-14 18:27:50 -05:00
parent 59795e41ab
commit 78853e1dc1
140 changed files with 1265 additions and 2219 deletions
+32 -1
View File
@@ -258,11 +258,42 @@ function generatePresets(tstrings, faIcons) {
faIcons[preset.icon] = {};
}
});
presets = resolvePresetFieldInheritance(presets);
presets = _merge(presets, suggestionsToPresets(presets));
return presets;
}
// For presets without fields, use the fields of the parent preset.
// Replace "{inherit}" placeholders with the fields of the parent preset.
function resolvePresetFieldInheritance(presets) {
for (var id in presets) {
var endIndex = id.lastIndexOf('/');
if (endIndex < 0) {
continue;
}
var parentID = id.substring(0, endIndex);
var parentPreset = presets[parentID];
if (!parentPreset) {
continue;
}
var preset = presets[id];
['fields', 'moreFields'].forEach(function(fieldsKey) {
if (parentPreset[fieldsKey]) {
if (preset[fieldsKey]) {
var inheritIndex = preset[fieldsKey].indexOf('{inherit}');
if (inheritIndex >= 0) {
// replace the {inherit} placeholder with the parent preset's fields for the key
preset[fieldsKey].splice.apply(preset[fieldsKey], [inheritIndex, 1].concat(parentPreset[fieldsKey]));
}
} else {
preset[fieldsKey] = parentPreset[fieldsKey];
}
}
});
}
return presets;
}
function generateTranslations(fields, presets, tstrings) {
var translations = _cloneDeep(tstrings);
+1196 -1196
View File
File diff suppressed because it is too large Load Diff
+3 -1
View File
@@ -5,7 +5,9 @@
"shop",
"operator",
"address",
"building_area",
"building_area"
],
"moreFields": [
"opening_hours",
"payment_multi"
],
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
+2 -7
View File
@@ -1,13 +1,8 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"agrarian",
"address",
"building_area",
"opening_hours",
"payment_multi"
"{inherit}",
"agrarian"
],
"geometry": [
"point",
+1 -6
View File
@@ -1,12 +1,7 @@
{
"icon": "maki-alcohol-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi",
"{inherit}",
"drive_through"
],
"geometry": [
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-bakery",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
+2 -7
View File
@@ -1,13 +1,8 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"beauty",
"opening_hours",
"payment_multi"
"{inherit}",
"beauty"
],
"geometry": [
"point",
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-lodging",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
+1 -3
View File
@@ -5,9 +5,7 @@
"operator",
"address",
"building_area",
"service/bicycle",
"opening_hours",
"payment_multi"
"service/bicycle"
],
"geometry": [
"point",
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
+5 -7
View File
@@ -1,13 +1,11 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi",
"internet_access",
"{inherit}",
"internet_access"
],
"moreFields": [
"{inherit}",
"internet_access/fee",
"internet_access/ssid"
],
+1 -3
View File
@@ -5,9 +5,7 @@
"clothes",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
"building_area"
],
"geometry": [
"point",
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-slaughterhouse",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
+1 -3
View File
@@ -7,9 +7,7 @@
"address",
"building_area",
"second_hand",
"service/vehicle",
"opening_hours",
"payment_multi"
"service/vehicle"
],
"geometry": [
"point",
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-car",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
+1 -3
View File
@@ -5,9 +5,7 @@
"operator",
"address",
"building_area",
"service/vehicle",
"opening_hours",
"payment_multi"
"service/vehicle"
],
"geometry": [
"point",
+1 -3
View File
@@ -7,9 +7,7 @@
"address",
"building_area",
"second_hand",
"service/vehicle",
"opening_hours",
"payment_multi"
"service/vehicle"
],
"geometry": [
"point",
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
+1 -3
View File
@@ -5,9 +5,7 @@
"operator",
"address",
"building_area",
"second_hand",
"opening_hours",
"payment_multi"
"second_hand"
],
"geometry": [
"point",
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-grocery",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
+2 -7
View File
@@ -1,13 +1,8 @@
{
"icon": "maki-clothing-store",
"fields": [
"name",
"clothes",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
"{inherit}",
"clothes"
],
"geometry": [
"point",
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
@@ -1,13 +1,5 @@
{
"icon": "maki-confectionery",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-restaurant",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
@@ -1,13 +1,5 @@
{
"icon": "temaki-tools",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
+1 -3
View File
@@ -5,9 +5,7 @@
"clothes",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
"building_area"
],
"geometry": [
"point",
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-florist",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
+2 -4
View File
@@ -4,10 +4,8 @@
"name",
"operator",
"address",
"fuel_multi",
"building_area",
"opening_hours",
"payment_multi"
"fuel_multi",
"building_area"
],
"geometry": [
"point",
@@ -1,10 +1,7 @@
{
"icon": "maki-cemetery",
"fields": [
"name",
"operator",
"address",
"building_area",
"{inherit}",
"religion",
"denomination"
],
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "fas-couch",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
@@ -1,13 +1,5 @@
{
"icon": "maki-garden-centre",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-gift",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
@@ -1,13 +1,5 @@
{
"icon": "maki-hairdresser",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "temaki-tools",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "fas-blender",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-jewelry-store",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-2
View File
@@ -5,8 +5,6 @@
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi",
"levels"
],
"geometry": [
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-laundry",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "fas-key",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-7
View File
@@ -1,12 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
@@ -1,13 +1,5 @@
{
"icon": "maki-mobile-phone",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
+1 -5
View File
@@ -1,11 +1,7 @@
{
"icon": "maki-bank",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"{inherit}",
"currency_multi"
],
"geometry": [
+1 -3
View File
@@ -5,9 +5,7 @@
"brand",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
"building_area"
],
"geometry": [
"point",
@@ -5,9 +5,7 @@
"operator",
"address",
"building_area",
"service/vehicle",
"opening_hours",
"payment_multi"
"service/vehicle"
],
"geometry": [
"point",
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-music",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
@@ -1,13 +1,5 @@
{
"icon": "maki-music",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-optician",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "maki-shop",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"
-8
View File
@@ -1,13 +1,5 @@
{
"icon": "fas-paint-roller",
"fields": [
"name",
"operator",
"address",
"building_area",
"opening_hours",
"payment_multi"
],
"geometry": [
"point",
"area"

Some files were not shown because too many files have changed in this diff Show More