Browse Source

Merge pull request #9 from plepe/master

Sync
climbing
Igor Eliezer 4 years ago
committed by GitHub
parent
commit
64680786ca
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 81
      car_maxspeed.json
  2. 1
      coal.json
  3. 17
      emergency.json
  4. 3
      index.json
  5. 20
      lang/hu.json
  6. 12
      lang/pt-br.json
  7. 1
      memorial.json
  8. 4
      office.json
  9. 1
      oil_gas.json
  10. 4
      power_routes.json
  11. 2
      public.json
  12. 79
      railway-maxspeed.json
  13. 1
      renewables.json
  14. 13
      swimming_bathing.json
  15. 4
      tourism_services.json
  16. 30
      xmas.json

81
car_maxspeed.json

@ -16,36 +16,67 @@
},
"feature": {
"pre": [
"{% if tags.maxspeed is not defined %}",
"{% set maxspeedKmh = null %}",
"{% set maxspeed = null %}",
"{% set unit = null %}",
"{% else %}",
"",
"{% if tags.maxspeed|matches(\"^[0-9]+$\") %}",
"{% set maxspeedKmh = tags.maxspeed %}",
"{% set maxspeed = tags.maxspeed %}",
"{% set unit = \"km/h\" %}",
"{% if tags.maxspeed is defined %}",
" {% if tags.maxspeed|matches(\"^[0-9]+$\") %}",
" {% set maxspeedKmh = tags.maxspeed %}",
" {% set maxspeed = tags.maxspeed %}",
" {% set unit = \"km/h\" %}",
" {% elseif tags.maxspeed|matches( \"(^[0-9]+) mph$\") %}",
" {% set m = tags.maxspeed|matches(\"(^[0-9]+) mph$\") %}",
" {% set maxspeedKmh = m[1] * 1.60934 %}",
" {% set maxspeed = m[1] %}",
" {% set unit = \"mph\" %}",
" {% endif %}",
"{% endif %}",
"",
"",
"{% set m = tags.maxspeed|matches(\"(^[0-9]+) mph$\") %}",
"{% if m %}",
"{% set maxspeedKmh = m[1] * 1.60934 %}",
"{% set maxspeed = m[1] %}",
"{% set unit = \"mph\" %}",
"{% if attribute(tags, 'maxspeed:forward') is defined %}",
" {% if attribute(tags, 'maxspeed:forward')|matches(\"^[0-9]+$\") %}",
" {% set maxspeedFKmh = attribute(tags, 'maxspeed:forward') %}",
" {% set maxspeedF = attribute(tags, 'maxspeed:forward') %}",
" {% set unit = \"km/h\" %}",
" {% elseif attribute(tags, 'maxspeed:forward')|matches(\"^[0-9]+ mph$\") %}",
" {% set m = attribute(tags, 'maxspeed:forward')|matches(\"(^[0-9]+) mph$\") %}",
" {% set maxspeedFKmh = m[1] * 1.60934 %}",
" {% set maxspeedF = m[1] %}",
" {% set unit = \"mph\" %}",
" {% endif %}",
"{% endif %}",
"",
"{% if attribute(tags, 'maxspeed:backward') is defined %}",
" {% if attribute(tags, 'maxspeed:backward')|matches(\"^[0-9]+$\") %}",
" {% set maxspeedBKmh = attribute(tags, 'maxspeed:backward') %}",
" {% set maxspeedB = attribute(tags, 'maxspeed:backward') %}",
" {% set unit = \"km/h\" %}",
" {% elseif attribute(tags, 'maxspeed:backward')|matches(\"^[0-9]+ mph$\") %}",
" {% set m = attribute(tags, 'maxspeed:backward')|matches(\"(^[0-9]+) mph$\") %}",
" {% set maxspeedBKmh = m[1] * 1.60934 %}",
" {% set maxspeedB = m[1] %}",
" {% set unit = \"mph\" %}",
" {% endif %}",
"{% endif %}",
"",
"{% if not maxspeedKmh %}",
"{% set color = \"#404040\" %}",
"{% else %}",
"{% set color = colorInterpolate(const.colorMap, (maxspeedKmh - const.offsetColorSpeed) / const.highestColorSpeed) %}",
"{% endif %}",
"",
"{% if maxspeedFKmh %}",
"{% set colorF = colorInterpolate(const.colorMap, (maxspeedFKmh - const.offsetColorSpeed) / const.highestColorSpeed) %}",
"{% endif %}",
"",
"{% if maxspeedBKmh %}",
"{% set colorB = colorInterpolate(const.colorMap, (maxspeedBKmh - const.offsetColorSpeed) / const.highestColorSpeed) %}",
"{% endif %}"
],
"description": [
"{% if maxspeed %}",
"{% if maxspeedF or maxspeedB %}",
"<span style='color: {{ colorB }}'>{{ maxspeedB|default(trans('unknown')) }}</span> / <span style='color: {{ colorF }}'>{{ maxspeedF|default(trans('unknown')) }}</span> {{ unit }}",
"{% elseif maxspeed %}",
"<span style='color: {{ color }}'>{{ maxspeed }} {{ unit }}</span>",
"{% elseif tags.maxspeed %}",
"{{ tags.maxspeed }}",
@ -53,14 +84,32 @@
"{{ trans('unknown') }}",
"{% endif %}"
],
"markerSymbol": null,
"markerSymbol": "",
"listMarkerSymbol": "line",
"styles": "{% if maxspeedB or maxspeedF %}left,right,default{% else %}default{% endif %}",
"style": {
"width": "3",
"width": "{% if maxspeedB or maxspeedF %}0{% else %}4{% endif %}",
"color": "{{ color }}",
"text": "{{ maxspeed }} ",
"text": [
"{% if maxspeedB or maxspeedF %}",
" {% if maxspeedB %}🡸 {{ maxspeedB }} {% endif %}|{% if maxspeedF %} {{ maxspeedF }} 🡺{% endif %} ",
"{% else %}",
" {{ maxspeed }} ",
"{% endif %}"
],
"textRepeat": "1",
"textOffset": "4",
"textFontWeight": "bold"
},
"style:left": {
"width": "2",
"color": "{{ colorB|default('#404040') }}",
"offset": "-1"
},
"style:right": {
"width": "2",
"color": "{{ colorF|default('#404040') }}",
"offset": "1"
}
},
"const": {

1
coal.json

@ -4,6 +4,7 @@
"de": "Kohle",
"en": "Coal",
"fr": "Charbon",
"hu": "Kőszén",
"pt-br": "Carvão"
},
"query": {

17
emergency.json

@ -34,6 +34,7 @@
"way[amenity~\"^(fire_station|hospital|police)$\"];",
"relation[amenity~\"^(fire_station|hospital|police)$\"];",
"node[emergency~\"^(phone)$\"];",
"node[highway=emergency_access_point];",
")"
]
},
@ -45,6 +46,9 @@
"{% elseif tags.emergency %}",
"{% set key = 'emergency' %}",
"{% set value = tags.emergency %}",
"{% elseif tags.highway == 'emergency_access_point' %}",
"{% set key = 'highway' %}",
"{% set value = tags.highway %}",
"{% endif %}",
"{% set kv = key ~ \"=\" ~ value %}"
],
@ -52,16 +56,18 @@
"markerSign": [
"{% set data = const[kv] %}",
"{% if data %}",
"{{ data.sign }}",
"{{ data.sign|raw }}",
"{% endif %}"
]
],
"markerSymbol": "{{ markerPointer({ fillColor: data.background|default('#f27f6a') })|raw }}",
"listMarkerSymbol": "{{ markerCircle({ fillColor: data.background|default('#f27f6a') })|raw }}"
},
"info": [
"<table>",
"{% for value, data in const %}",
"{% if data.zoom <= map.zoom %}",
" <tr>",
" <td>{{ markerCircle({})|raw }}<div class='sign'>{{ data.sign }}</div></td>",
" <td>{{ markerCircle({ fillColor: data.background|default('#f27f6a') })|raw }}<div class='sign'>{{ data.sign|raw }}</div></td>",
" <td>{{ tagTrans(value|split('=')[0], value|split('=')[1]) }}</td>",
" </tr>",
"{% endif %}",
@ -84,6 +90,11 @@
"emergency=phone": {
"zoom": "13",
"sign": "📞"
},
"highway=emergency_access_point": {
"zoom": "13",
"sign": "<img data-src='maki:hospital?fill=white'>",
"background": "#009262"
}
}
}

3
index.json

@ -262,7 +262,8 @@
"en": "Energy",
"de": "Energie",
"pt-br": "Energia",
"fr": "Énergie"
"fr": "Énergie",
"hu": "Energiaellátás"
},
"subCategories": [
{

20
lang/hu.json

@ -9,7 +9,7 @@
"category:car_maxspeed": "Sebességkorlátozás",
"category:car_routes": "Főútvonalak",
"category:children": "Gyermekek",
"category:coal": "",
"category:coal": "Kőszén",
"category:communication": "Kommunikácó",
"category:construction": "Építési terület",
"category:craft": "Műhelyek",
@ -20,7 +20,7 @@
"category:education": "Oktatás",
"category:electric_power": "Áramellátás",
"category:emergency": "Vészhelyzet",
"category:energy": "",
"category:energy": "Energiaellátás",
"category:financial": "Pénzügyek",
"category:gastro": "Vendéglátás",
"category:gastro-smoking": "Nem dohányzó vendéglátóhelyek",
@ -32,12 +32,12 @@
"category:internet": "Internetcsatlakozás",
"category:leisure": "Szabadidő",
"category:leisure_sport_shopping": "Szabadidő, sport és vásárlás",
"category:memorial": "",
"category:memorial": "Emlékművek",
"category:military": "Katonai objektumok",
"category:mtb-routes": "Hegyikerékpáros útvonalak",
"category:natural": "Természeti képződmények",
"category:office": "",
"category:oil_gas": "",
"category:office": "Irodák, hivatalok",
"category:oil_gas": "Kőolaj, földgáz",
"category:other": "Egyéb",
"category:outdoor": "Szabadtéri tevékenységek",
"category:phone": "Telefon",
@ -45,7 +45,7 @@
"category:places_geo": "Helyek",
"category:playgrounds": "Játszóterek",
"category:post": "Posta",
"category:power_routes": "",
"category:power_routes": "Távvezetékek",
"category:pt": "Tömegközlekedési térkép",
"category:pt:routes": "Útvonalak",
"category:pt:stops": "Megállók és állomások",
@ -57,16 +57,16 @@
"category:railway-maxspeed": "Sebességkorlátozás",
"category:railway-routes": "Vasútvonalak",
"category:religion": "Vallás",
"category:renewables": "",
"category:renewables": "Megújuló energia",
"category:residential": "Lakóövezetek",
"category:resources": "Bányászat",
"category:services": "Szolgáltatások",
"category:shop": "Vásárlás",
"category:special": "Speciális",
"category:sport": "Sport",
"category:swimming_bathing": "",
"category:swimming_bathing": "Fürdőzés, úszás",
"category:tourism_attractions": "Látnivalók",
"category:tourism_services": "Turisztikai szolgáltatások",
"category:tourism_services": "Szálláshelyek, turisztikai információk",
"category:transport": "Közlekedés",
"category:transport_alternative": "Alternatív (Kerékpár, Túra)",
"category:transport_car": "Autós közlekedés",
@ -78,5 +78,5 @@
"category:water": "Vizek",
"category:wikipedia": "Wikipédia",
"category:works": "Üzemek",
"category:xmas": ""
"category:xmas": "Karácsony"
}

12
lang/pt-br.json

@ -36,7 +36,7 @@
"category:military": "Militar",
"category:mtb-routes": "Rotas de mountain bike",
"category:natural": "Formações naturais",
"category:office": "",
"category:office": "Escritórios e agências",
"category:oil_gas": "Petróleo e gás",
"category:other": "Outros",
"category:outdoor": "Atividades ao ar livre",
@ -45,12 +45,12 @@
"category:places_geo": "Lugares",
"category:playgrounds": "Parquinhos",
"category:post": "Correios",
"category:power_routes": "",
"category:power_routes": "Rotas de energia",
"category:pt": "Mapa de transporte público",
"category:pt:routes": "Rotas",
"category:pt:stops": "Paradas e estações",
"category:pt_amenities": "Equipamentos",
"category:public": "Serviços públicos",
"category:public": "Utilidade pública",
"category:railway": "Ferrovia",
"category:railway-electrification": "Eletrificação ferroviária",
"category:railway-infrastructure": "Infraestrutura ferroviária",
@ -64,9 +64,9 @@
"category:shop": "Compras",
"category:special": "Especial",
"category:sport": "Esportes",
"category:swimming_bathing": "",
"category:swimming_bathing": "Natação e banho",
"category:tourism_attractions": "Turismo",
"category:tourism_services": "Serviços de turismo",
"category:tourism_services": "Serviços turísticos",
"category:transport": "Mobilidade",
"category:transport_alternative": "Transporte alternativo",
"category:transport_car": "Tráfego individual",
@ -78,5 +78,5 @@
"category:water": "Hidrografia",
"category:wikipedia": "Wikipédia",
"category:works": "Fábricas",
"category:xmas": ""
"category:xmas": "Natal"
}

1
memorial.json

@ -4,6 +4,7 @@
"de": "Denkmäler",
"en": "Memorials",
"fr": "Mémoriaux",
"hu": "Emlékművek",
"pt-br": "Memoriais"
},
"query": {

4
office.json

@ -3,7 +3,9 @@
"name": {
"de": "Ämter, Dienst- und Geschäftsstellen",
"en": "Offices",
"fr": "Bureaux"
"fr": "Bureaux",
"hu": "Irodák, hivatalok",
"pt-br": "Escritórios e agências"
},
"query": {
"14": "nwr[office]"

1
oil_gas.json

@ -4,6 +4,7 @@
"de": "Erdöl und Erdgas",
"en": "Petroleum and natural gas",
"fr": "Pétrole et gaz naturel",
"hu": "Kőolaj, földgáz",
"pt-br": "Petróleo e gás"
},
"query": {

4
power_routes.json

@ -2,7 +2,9 @@
"type": "overpass",
"name": {
"en": "Power routes",
"fr": "Réseaux électriques"
"fr": "Réseaux électriques",
"hu": "Távvezetékek",
"pt-br": "Rotas de energia"
},
"query": {
"10": "relation[type=route][route=power]"

2
public.json

@ -13,7 +13,7 @@
"ja": "公共サービス",
"nl": "Openbare diensten",
"pt": "Serviços públicos",
"pt-br": "Serviços públicos",
"pt-br": "Utilidade pública",
"ro": "Servicii publice",
"ru": "Общественные места",
"uk": "Громадські місця"

79
railway-maxspeed.json

@ -14,36 +14,67 @@
},
"feature": {
"pre": [
"{% if tags.maxspeed is not defined %}",
"{% set maxspeedKmh = null %}",
"{% set maxspeed = null %}",
"{% set unit = null %}",
"{% else %}",
"",
"{% if tags.maxspeed|matches(\"^[0-9]+$\") %}",
"{% set maxspeedKmh = tags.maxspeed %}",
"{% set maxspeed = tags.maxspeed %}",
"{% set unit = \"km/h\" %}",
"{% if tags.maxspeed is defined %}",
" {% if tags.maxspeed|matches(\"^[0-9]+$\") %}",
" {% set maxspeedKmh = tags.maxspeed %}",
" {% set maxspeed = tags.maxspeed %}",
" {% set unit = \"km/h\" %}",
" {% elseif tags.maxspeed|matches( \"(^[0-9]+) mph$\") %}",
" {% set m = tags.maxspeed|matches(\"(^[0-9]+) mph$\") %}",
" {% set maxspeedKmh = m[1] * 1.60934 %}",
" {% set maxspeed = m[1] %}",
" {% set unit = \"mph\" %}",
" {% endif %}",
"{% endif %}",
"",
"",
"{% set m = tags.maxspeed|matches(\"(^[0-9]+) mph$\") %}",
"{% if m %}",
"{% set maxspeedKmh = m[1] * 1.60934 %}",
"{% set maxspeed = m[1] %}",
"{% set unit = \"mph\" %}",
"{% if attribute(tags, 'maxspeed:forward') is defined %}",
" {% if attribute(tags, 'maxspeed:forward')|matches(\"^[0-9]+$\") %}",
" {% set maxspeedFKmh = attribute(tags, 'maxspeed:forward') %}",
" {% set maxspeedF = attribute(tags, 'maxspeed:forward') %}",
" {% set unit = \"km/h\" %}",
" {% elseif attribute(tags, 'maxspeed:forward')|matches(\"^[0-9]+ mph$\") %}",
" {% set m = attribute(tags, 'maxspeed:forward')|matches(\"(^[0-9]+) mph$\") %}",
" {% set maxspeedFKmh = m[1] * 1.60934 %}",
" {% set maxspeedF = m[1] %}",
" {% set unit = \"mph\" %}",
" {% endif %}",
"{% endif %}",
"",
"{% if attribute(tags, 'maxspeed:backward') is defined %}",
" {% if attribute(tags, 'maxspeed:backward')|matches(\"^[0-9]+$\") %}",
" {% set maxspeedBKmh = attribute(tags, 'maxspeed:backward') %}",
" {% set maxspeedB = attribute(tags, 'maxspeed:backward') %}",
" {% set unit = \"km/h\" %}",
" {% elseif attribute(tags, 'maxspeed:backward')|matches(\"^[0-9]+ mph$\") %}",
" {% set m = attribute(tags, 'maxspeed:backward')|matches(\"(^[0-9]+) mph$\") %}",
" {% set maxspeedBKmh = m[1] * 1.60934 %}",
" {% set maxspeedB = m[1] %}",
" {% set unit = \"mph\" %}",
" {% endif %}",
"{% endif %}",
"",
"{% if not maxspeedKmh %}",
"{% set color = \"#404040\" %}",
"{% else %}",
"{% set color = colorInterpolate(const.colorMap, (maxspeedKmh - const.offsetColorSpeed) / const.highestColorSpeed) %}",
"{% endif %}",
"",
"{% if maxspeedFKmh %}",
"{% set colorF = colorInterpolate(const.colorMap, (maxspeedFKmh - const.offsetColorSpeed) / const.highestColorSpeed) %}",
"{% endif %}",
"",
"{% if maxspeedBKmh %}",
"{% set colorB = colorInterpolate(const.colorMap, (maxspeedBKmh - const.offsetColorSpeed) / const.highestColorSpeed) %}",
"{% endif %}"
],
"description": [
"{% if maxspeed %}",
"{% if maxspeedF or maxspeedB %}",
"<span style='color: {{ colorB }}'>{{ maxspeedB|default(trans('unknown')) }}</span> / <span style='color: {{ colorF }}'>{{ maxspeedF|default(trans('unknown')) }}</span> {{ unit }}",
"{% elseif maxspeed %}",
"<span style='color: {{ color }}'>{{ maxspeed }} {{ unit }}</span>",
"{% elseif tags.maxspeed %}",
"{{ tags.maxspeed }}",
@ -53,12 +84,30 @@
],
"markerSymbol": null,
"listMarkerSymbol": "line",
"styles": "{% if maxspeedB or maxspeedF %}left,right,default{% else %}default{% endif %}",
"style": {
"width": "3",
"width": "{% if maxspeedB or maxspeedF %}0{% else %}4{% endif %}",
"color": "{{ color }}",
"text": "{{ maxspeed }} ",
"text": [
"{% if maxspeedB or maxspeedF %}",
" {% if maxspeedB %}🡸 {{ maxspeedB }} {% endif %}|{% if maxspeedF %} {{ maxspeedF }} 🡺{% endif %} ",
"{% else %}",
" {{ maxspeed }} ",
"{% endif %}"
],
"textRepeat": "1",
"textOffset": "4",
"textFontWeight": "bold"
},
"style:left": {
"width": "2",
"color": "{{ colorB|default('#404040') }}",
"offset": "-1"
},
"style:right": {
"width": "2",
"color": "{{ colorF|default('#404040') }}",
"offset": "1"
}
},
"const": {

1
renewables.json

@ -4,6 +4,7 @@
"de": "Erneuerbare Energien",
"en": "Renewables",
"fr": "Énergies renouvelables",
"hu": "Megújuló energia",
"pt-br": "Renováveis"
},
"query": {

13
swimming_bathing.json

@ -3,7 +3,9 @@
"name": {
"de": "Schwimmen und Baden",
"en": "Swimming and bathing",
"fr": "Natation/Baignade/Bains"
"fr": "Natation/Baignade/Bains",
"hu": "Fürdőzés, úszás",
"pt-br": "Natação e banho"
},
"query": {
"13": [
@ -24,7 +26,7 @@
"nwr[natural~\"^(beach)\"];",
"nwr[leisure~\"^(water_park|beach_resort)$\"];",
"nwr[leisure=sports_centre][sport~\"^(|.*;)swimming(;.*|)$\"];",
"nwr[amenity=public_bath];",
"nwr[amenity~\"^(public_bath|shower)$\"];",
"nwr[tourism=spa_resort];",
"",
"nwr[leisure=swimming_pool][access!=private];",
@ -39,6 +41,9 @@
" {% set k = 'amenity' %}",
" {% set v = 'public_bath' %}",
" {% if attribute(tags, 'bath:type') %}{% set append = tagTrans('bath:type', attribute(tags, 'bath:type')) %}{% endif %}",
"{% elseif tags.amenity == 'shower' %}",
" {% set k = 'amenity' %}",
" {% set v = 'shower' %}",
"{% elseif tags.tourism == 'spa_resort' %}",
" {% set k = 'tourism' %}",
" {% set v = tags.tourism %}",
@ -129,6 +134,10 @@
"zoom": 16,
"taginfo": "leisure=sauna, sauna:type=*",
"sign": "<i class=\"fa fa-thermometer-full\" aria-hidden=\"true\"></i>"
},
"amenity=shower": {
"zoom": 16,
"sign": "🚿 "
}
}
}

4
tourism_services.json

@ -8,13 +8,13 @@
"en": "Tourism",
"et": "Turism",
"fr": "Tourisme",
"hu": "Turisztikai szolgáltatások",
"hu": "Szálláshelyek, turisztikai információk",
"it": "Turismo",
"ja": "観光",
"nl": "Toerisme",
"pl": "Turystyka",
"pt": "Turismo",
"pt-br": "Serviços de turismo",
"pt-br": "Serviços turísticos",
"ro": "Turism",
"ru": "Туризм",
"uk": "Туризм"

30
xmas.json

@ -1,11 +1,14 @@
{
"type": "overpass",
"name": {
"de": "Weihnachten",
"en": "Christmas",
"fr": "Noël"
"fr": "Noël",
"hu": "Karácsony",
"pt-br": "Natal"
},
"query": {
"14": [
"13": [
"(",
"node[\"xmas:feature\"];",
"way[\"xmas:feature\"];",
@ -14,9 +17,17 @@
]
},
"feature": {
"pre": [
"{% set isCurrent = meta.timestamp > now|date_modify('-1 month')|date('Y') %}",
"{% set bgColor = isCurrent ? '#f2756a' : 'red' %}"
],
"title": "{{ attribute(tags, \"xmas:name\")|default(trans(\"unnamed\")) }}",
"description": "{{ tagTransList(\"xmas:feature\", attribute(tags, \"xmas:feature\")) }}",
"body": [
"{% if not isCurrent %}",
"<div style='border: 1px solid red; padding: 2px; margin-bottom: 2px;'>Feature has not been updated for the current season! Please check and set the tag 'xmas:lastcheck' to the current date.</div>",
"{% endif %}",
"",
"{% if attribute(tags, 'xmas:location') %}",
"<li class='hasSymbol'>",
" <i class=\"fa fa-globe\" aria-hidden=\"true\"></i>",
@ -57,16 +68,15 @@
"</li>",
"{% endif %}"
],
"markerSign": [
"{{ attribute(const, attribute(tags, 'xmas:feature'))|raw }}",
""
]
"markerSign": "{{ attribute(const, attribute(tags, 'xmas:feature'))|raw }}",
"markerSymbol": "{{ markerPointer({\"fillColor\":bgColor})|raw }}",
"listMarkerSymbol": "{{ markerCircle({\"fillColor\":bgColor})|raw }}"
},
"const": {
"market": "<img src='maki:commercial'>",
"market": "<img data-src='maki:commercial'>",
"tree": "<i class=\"fa fa-tree\" aria-hidden=\"true\"></i>",
"shop": "<i class=\"fa fa-shopping-basket\" aria-hidden=\"true\"></i>",
"event": "<img src='maki:amusement-park'>"
"event": "<img data-src='maki:amusement-park'>"
},
"info": [
"<table>",
@ -76,6 +86,10 @@
" <td>{{ tagTrans('xmas:feature', value) }}</td>",
" </tr>",
"{% endfor %}",
" <tr>",
" <td>{{ markerCircle({\"fillColor\":\"red\"})|raw }}</td>",
" <td>outdated feature</td>",
" </tr>",
"</table>"
]
}
Loading…
Cancel
Save