Merge pull request #3756 from openstreetmap/upgrade-maki

Upgrade to maki 4, fixes #3024
This commit is contained in:
Bryan Housel
2017-01-13 18:54:42 +05:30
committed by GitHub
47 changed files with 200 additions and 100 deletions
+3 -1
View File
@@ -1,5 +1,4 @@
export { wikipedia as dataWikipedia } from 'wmf-sitematrix';
export { default as dataFeatureIcons } from 'maki/www/maki-sprite.json';
export { default as dataSuggestions } from 'name-suggestion-index/name-suggestions.json';
export { dataAddressFormats } from './address-formats.json';
@@ -18,6 +17,9 @@ import { defaults } from './presets/defaults.json';
import { categories } from './presets/categories.json';
import { fields } from './presets/fields.json';
import maki from '@mapbox/maki';
export var dataFeatureIcons = maki.layouts.all.all;
export var data = {
imagery: dataImagery,
presets: {
+6
View File
@@ -9,6 +9,12 @@ en:
name: Golf Features
category-landuse:
name: Land Use Features
category-natural-area:
name: Natural Features
category-natural-line:
name: Natural Features
category-natural-point:
name: Natural Features
category-path:
name: Path Features
category-rail:
+38 -1
View File
@@ -42,7 +42,7 @@
"category-landuse": {
"geometry": "area",
"name": "Land Use Features",
"icon": "land-use",
"icon": "landuse",
"members": [
"landuse/residential",
"landuse/industrial",
@@ -56,6 +56,43 @@
"landuse/military"
]
},
"category-natural-area": {
"geometry": "area",
"name": "Natural Features",
"icon": "natural",
"members": [
"natural/water",
"natural/wood",
"natural/scrub",
"natural/wetland",
"natural/grassland",
"natural/heath",
"natural/bare_rock",
"natural/beach",
"natural/cave_entrance",
"natural/glacier"
]
},
"category-natural-line": {
"geometry": "line",
"name": "Natural Features",
"icon": "natural",
"members": [
"natural/coastline",
"natural/tree_row"
]
},
"category-natural-point": {
"geometry": "point",
"name": "Natural Features",
"icon": "natural",
"members": [
"natural/peak",
"natural/cliff",
"natural/beach",
"natural/cave_entrance"
]
},
"category-path": {
"geometry": "line",
"name": "Path Features",
+1 -1
View File
@@ -1,7 +1,7 @@
{
"geometry": "area",
"name": "Land Use Features",
"icon": "land-use",
"icon": "landuse",
"members": [
"landuse/residential",
"landuse/industrial",
+17
View File
@@ -0,0 +1,17 @@
{
"geometry": "area",
"name": "Natural Features",
"icon": "natural",
"members": [
"natural/water",
"natural/wood",
"natural/scrub",
"natural/wetland",
"natural/grassland",
"natural/heath",
"natural/bare_rock",
"natural/beach",
"natural/cave_entrance",
"natural/glacier"
]
}
@@ -0,0 +1,9 @@
{
"geometry": "line",
"name": "Natural Features",
"icon": "natural",
"members": [
"natural/coastline",
"natural/tree_row"
]
}
@@ -0,0 +1,11 @@
{
"geometry": "point",
"name": "Natural Features",
"icon": "natural",
"members": [
"natural/peak",
"natural/cliff",
"natural/beach",
"natural/cave_entrance"
]
}
+3
View File
@@ -4,6 +4,7 @@
"category-landuse",
"category-building",
"category-water-area",
"category-natural-area",
"leisure/park",
"amenity/hospital",
"amenity/place_of_worship",
@@ -17,10 +18,12 @@
"category-path",
"category-water-line",
"category-barrier",
"category-natural-line",
"power/line",
"line"
],
"point": [
"category-natural-point",
"leisure/park",
"amenity/hospital",
"amenity/place_of_worship",
+55 -50
View File
@@ -637,6 +637,7 @@
"name": "Bar"
},
"amenity/bbq": {
"icon": "bbq",
"fields": [
"covered",
"fuel"
@@ -1159,7 +1160,7 @@
"name": "Dojo / Martial Arts Academy"
},
"amenity/drinking_water": {
"icon": "water",
"icon": "drinking-water",
"geometry": [
"point"
],
@@ -1552,7 +1553,7 @@
"name": "Nightclub"
},
"amenity/parking_entrance": {
"icon": "entrance",
"icon": "entrance-alt1",
"fields": [
"access_simple",
"ref"
@@ -2315,7 +2316,7 @@
"name": "Theater"
},
"amenity/toilets": {
"icon": "toilets",
"icon": "toilet",
"fields": [
"toilets/disposal",
"operator",
@@ -2682,7 +2683,7 @@
"name": "Waste Transfer Station"
},
"amenity/water_point": {
"icon": "water",
"icon": "drinking-water",
"geometry": [
"area",
"vertex",
@@ -2733,7 +2734,7 @@
"matchScore": 0.4
},
"barrier/entrance": {
"icon": "entrance",
"icon": "entrance-alt1",
"geometry": [
"vertex"
],
@@ -2788,7 +2789,7 @@
"name": "Border Control"
},
"barrier/cattle_grid": {
"icon": "prison",
"icon": "barrier",
"geometry": [
"vertex"
],
@@ -2798,7 +2799,7 @@
"name": "Cattle Grid"
},
"barrier/city_wall": {
"icon": "prison",
"icon": "barrier",
"fields": [
"height"
],
@@ -2837,7 +2838,7 @@
"matchScore": 0.25
},
"barrier/fence": {
"icon": "prison",
"icon": "fence",
"fields": [
"fence_type",
"height"
@@ -2852,7 +2853,7 @@
"matchScore": 0.25
},
"barrier/gate": {
"icon": "prison",
"icon": "barrier",
"fields": [
"access"
],
@@ -2881,7 +2882,7 @@
"matchScore": 0.25
},
"barrier/kissing_gate": {
"icon": "prison",
"icon": "barrier",
"fields": [
"access"
],
@@ -2947,7 +2948,7 @@
"name": "Toll Booth"
},
"barrier/wall": {
"icon": "prison",
"icon": "barrier",
"fields": [
"wall",
"height"
@@ -3008,7 +3009,7 @@
"searchable": false
},
"building/entrance": {
"icon": "entrance",
"icon": "entrance-alt1",
"geometry": [
"vertex"
],
@@ -3319,7 +3320,7 @@
"name": "Hut"
},
"building/industrial": {
"icon": "industrial",
"icon": "industry",
"fields": [
"address",
"levels"
@@ -4065,7 +4066,7 @@
"name": "Painter"
},
"craft/photographer": {
"icon": "camera",
"icon": "attraction",
"fields": [
"operator",
"address",
@@ -4082,7 +4083,7 @@
"name": "Photographer"
},
"craft/photographic_laboratory": {
"icon": "camera",
"icon": "attraction",
"fields": [
"operator",
"address",
@@ -4227,7 +4228,7 @@
"name": "Sailmaker"
},
"craft/sawmill": {
"icon": "park",
"icon": "logging",
"fields": [
"operator",
"address",
@@ -4551,6 +4552,7 @@
"name": "Ambulance Station"
},
"emergency/defibrillator": {
"icon": "defibrillator",
"fields": [
"access",
"opening_hours",
@@ -4587,7 +4589,7 @@
"name": "Fire Hydrant"
},
"emergency/phone": {
"icon": "emergency-telephone",
"icon": "emergency-phone",
"fields": [
"operator"
],
@@ -4601,7 +4603,7 @@
"name": "Emergency Phone"
},
"entrance": {
"icon": "entrance",
"icon": "entrance-alt1",
"geometry": [
"vertex"
],
@@ -6002,7 +6004,7 @@
"name": "Farmyard"
},
"landuse/forest": {
"icon": "park2",
"icon": "park-alt1",
"fields": [
"leaf_type",
"leaf_cycle"
@@ -6039,7 +6041,7 @@
"name": "Grass"
},
"landuse/industrial": {
"icon": "industrial",
"icon": "industry",
"geometry": [
"area"
],
@@ -6452,7 +6454,7 @@
"name": "Training Area"
},
"landuse/orchard": {
"icon": "park2",
"icon": "park-alt1",
"fields": [
"operator",
"trees"
@@ -6778,6 +6780,7 @@
"name": "Golf Course"
},
"leisure/horse_riding": {
"icon": "horse-riding",
"fields": [
"access_simple",
"operator",
@@ -7569,7 +7572,7 @@
"name": "Storage Tank"
},
"man_made/surveillance_camera": {
"icon": "camera",
"icon": "attraction",
"geometry": [
"point"
],
@@ -7603,7 +7606,7 @@
"name": "Surveillance Camera"
},
"man_made/surveillance": {
"icon": "camera",
"icon": "attraction",
"geometry": [
"point"
],
@@ -7723,7 +7726,7 @@
"name": "Water Works"
},
"man_made/works": {
"icon": "industrial",
"icon": "industry",
"fields": [
"operator",
"address",
@@ -7825,6 +7828,7 @@
"name": "Cave Entrance"
},
"natural/cliff": {
"icon": "triangle",
"geometry": [
"point",
"vertex",
@@ -8127,7 +8131,7 @@
"name": "Wetland"
},
"natural/wood": {
"icon": "park2",
"icon": "park-alt1",
"fields": [
"leaf_type",
"leaf_cycle"
@@ -8820,7 +8824,7 @@
"name": "Minor Power Line"
},
"power/plant": {
"icon": "industrial",
"icon": "industry",
"fields": [
"operator"
],
@@ -9125,7 +9129,7 @@
"name": "Railway Station"
},
"railway/subway_entrance": {
"icon": "rail-metro",
"icon": "entrance",
"geometry": [
"point"
],
@@ -10645,7 +10649,7 @@
"name": "Medical Supply Store"
},
"shop/mobile_phone": {
"icon": "mobilephone",
"icon": "mobile-phone",
"fields": [
"operator",
"address",
@@ -10914,7 +10918,7 @@
"name": "Pet Store"
},
"shop/photo": {
"icon": "camera",
"icon": "attraction",
"fields": [
"operator",
"address",
@@ -11770,6 +11774,7 @@
"name": "Map"
},
"tourism/information/office": {
"icon": "information",
"fields": [
"operator",
"address",
@@ -41277,7 +41282,7 @@
"shop": "mobile_phone"
},
"name": "Билайн",
"icon": "mobilephone",
"icon": "mobile-phone",
"geometry": [
"point",
"area"
@@ -41296,7 +41301,7 @@
"shop": "mobile_phone"
},
"name": "ソフトバンクショップ (SoftBank shop)",
"icon": "mobilephone",
"icon": "mobile-phone",
"geometry": [
"point",
"area"
@@ -41315,7 +41320,7 @@
"shop": "mobile_phone"
},
"name": "Vodafone",
"icon": "mobilephone",
"icon": "mobile-phone",
"geometry": [
"point",
"area"
@@ -41334,7 +41339,7 @@
"shop": "mobile_phone"
},
"name": "O2",
"icon": "mobilephone",
"icon": "mobile-phone",
"geometry": [
"point",
"area"
@@ -41353,7 +41358,7 @@
"shop": "mobile_phone"
},
"name": "Carphone Warehouse",
"icon": "mobilephone",
"icon": "mobile-phone",
"geometry": [
"point",
"area"
@@ -41372,7 +41377,7 @@
"shop": "mobile_phone"
},
"name": "Orange",
"icon": "mobilephone",
"icon": "mobile-phone",
"geometry": [
"point",
"area"
@@ -41391,7 +41396,7 @@
"shop": "mobile_phone"
},
"name": "Verizon Wireless",
"icon": "mobilephone",
"icon": "mobile-phone",
"geometry": [
"point",
"area"
@@ -41410,7 +41415,7 @@
"shop": "mobile_phone"
},
"name": "Sprint",
"icon": "mobilephone",
"icon": "mobile-phone",
"geometry": [
"point",
"area"
@@ -41429,7 +41434,7 @@
"shop": "mobile_phone"
},
"name": "T-Mobile",
"icon": "mobilephone",
"icon": "mobile-phone",
"geometry": [
"point",
"area"
@@ -41448,7 +41453,7 @@
"shop": "mobile_phone"
},
"name": "МТС",
"icon": "mobilephone",
"icon": "mobile-phone",
"geometry": [
"point",
"area"
@@ -41467,7 +41472,7 @@
"shop": "mobile_phone"
},
"name": "Евросеть",
"icon": "mobilephone",
"icon": "mobile-phone",
"geometry": [
"point",
"area"
@@ -41486,7 +41491,7 @@
"shop": "mobile_phone"
},
"name": "Bell",
"icon": "mobilephone",
"icon": "mobile-phone",
"geometry": [
"point",
"area"
@@ -41505,7 +41510,7 @@
"shop": "mobile_phone"
},
"name": "The Phone House",
"icon": "mobilephone",
"icon": "mobile-phone",
"geometry": [
"point",
"area"
@@ -41524,7 +41529,7 @@
"shop": "mobile_phone"
},
"name": "SFR",
"icon": "mobilephone",
"icon": "mobile-phone",
"geometry": [
"point",
"area"
@@ -41543,7 +41548,7 @@
"shop": "mobile_phone"
},
"name": "Связной",
"icon": "mobilephone",
"icon": "mobile-phone",
"geometry": [
"point",
"area"
@@ -41562,7 +41567,7 @@
"shop": "mobile_phone"
},
"name": "Мегафон",
"icon": "mobilephone",
"icon": "mobile-phone",
"geometry": [
"point",
"area"
@@ -41581,7 +41586,7 @@
"shop": "mobile_phone"
},
"name": "AT&T",
"icon": "mobilephone",
"icon": "mobile-phone",
"geometry": [
"point",
"area"
@@ -41600,7 +41605,7 @@
"shop": "mobile_phone"
},
"name": "ドコモショップ (docomo shop)",
"icon": "mobilephone",
"icon": "mobile-phone",
"geometry": [
"point",
"area"
@@ -41619,7 +41624,7 @@
"shop": "mobile_phone"
},
"name": "au",
"icon": "mobilephone",
"icon": "mobile-phone",
"geometry": [
"point",
"area"
@@ -41638,7 +41643,7 @@
"shop": "mobile_phone"
},
"name": "Movistar",
"icon": "mobilephone",
"icon": "mobile-phone",
"geometry": [
"point",
"area"
@@ -41657,7 +41662,7 @@
"shop": "mobile_phone"
},
"name": "Bitė",
"icon": "mobilephone",
"icon": "mobile-phone",
"geometry": [
"point",
"area"
+1
View File
@@ -1,4 +1,5 @@
{
"icon": "bbq",
"fields": [
"covered",
"fuel"
@@ -1,5 +1,5 @@
{
"icon": "water",
"icon": "drinking-water",
"geometry": [
"point"
],
@@ -1,5 +1,5 @@
{
"icon": "entrance",
"icon": "entrance-alt1",
"fields": [
"access_simple",
"ref"
+1 -1
View File
@@ -1,5 +1,5 @@
{
"icon": "toilets",
"icon": "toilet",
"fields": [
"toilets/disposal",
"operator",
@@ -1,5 +1,5 @@
{
"icon": "water",
"icon": "drinking-water",
"geometry": [
"area",
"vertex",
+2 -2
View File
@@ -1,5 +1,5 @@
{
"icon": "entrance",
"icon": "entrance-alt1",
"geometry": [
"vertex"
],
@@ -8,4 +8,4 @@
},
"name": "Entrance",
"searchable": false
}
}
@@ -1,5 +1,5 @@
{
"icon": "prison",
"icon": "barrier",
"geometry": [
"vertex"
],
+1 -1
View File
@@ -1,5 +1,5 @@
{
"icon": "prison",
"icon": "barrier",
"fields": [
"height"
],
+1 -1
View File
@@ -1,5 +1,5 @@
{
"icon": "prison",
"icon": "fence",
"fields": [
"fence_type",
"height"
+1 -1
View File
@@ -1,5 +1,5 @@
{
"icon": "prison",
"icon": "barrier",
"fields": [
"access"
],
@@ -1,5 +1,5 @@
{
"icon": "prison",
"icon": "barrier",
"fields": [
"access"
],
+1 -1
View File
@@ -1,5 +1,5 @@
{
"icon": "prison",
"icon": "barrier",
"fields": [
"wall",
"height"
+1 -1
View File
@@ -1,5 +1,5 @@
{
"icon": "entrance",
"icon": "entrance-alt1",
"geometry": [
"vertex"
],
@@ -1,5 +1,5 @@
{
"icon": "industrial",
"icon": "industry",
"fields": [
"address",
"levels"
+1 -1
View File
@@ -1,5 +1,5 @@
{
"icon": "camera",
"icon": "attraction",
"fields": [
"operator",
"address",
@@ -1,5 +1,5 @@
{
"icon": "camera",
"icon": "attraction",
"fields": [
"operator",
"address",
+1 -1
View File
@@ -1,5 +1,5 @@
{
"icon": "park",
"icon": "logging",
"fields": [
"operator",
"address",
@@ -1,4 +1,5 @@
{
"icon": "defibrillator",
"fields": [
"access",
"opening_hours",
+2 -2
View File
@@ -1,5 +1,5 @@
{
"icon": "emergency-telephone",
"icon": "emergency-phone",
"fields": [
"operator"
],
@@ -11,4 +11,4 @@
"emergency": "phone"
},
"name": "Emergency Phone"
}
}
+1 -1
View File
@@ -1,5 +1,5 @@
{
"icon": "entrance",
"icon": "entrance-alt1",
"geometry": [
"vertex"
],
+1 -1
View File
@@ -1,5 +1,5 @@
{
"icon": "park2",
"icon": "park-alt1",
"fields": [
"leaf_type",
"leaf_cycle"
+1 -1
View File
@@ -1,5 +1,5 @@
{
"icon": "industrial",
"icon": "industry",
"geometry": [
"area"
],
+1 -1
View File
@@ -1,5 +1,5 @@
{
"icon": "park2",
"icon": "park-alt1",
"fields": [
"operator",
"trees"
@@ -1,4 +1,5 @@
{
"icon": "horse-riding",
"fields": [
"access_simple",
"operator",
@@ -1,5 +1,5 @@
{
"icon": "camera",
"icon": "attraction",
"geometry": [
"point"
],
@@ -1,5 +1,5 @@
{
"icon": "camera",
"icon": "attraction",
"geometry": [
"point"
],
+1 -1
View File
@@ -1,5 +1,5 @@
{
"icon": "industrial",
"icon": "industry",
"fields": [
"operator",
"address",
+1
View File
@@ -1,4 +1,5 @@
{
"icon": "triangle",
"geometry": [
"point",
"vertex",
+1 -1
View File
@@ -1,5 +1,5 @@
{
"icon": "park2",
"icon": "park-alt1",
"fields": [
"leaf_type",
"leaf_cycle"
+1 -1
View File
@@ -1,5 +1,5 @@
{
"icon": "industrial",
"icon": "industry",
"fields": [
"operator"
],
@@ -1,5 +1,5 @@
{
"icon": "rail-metro",
"icon": "entrance",
"geometry": [
"point"
],
@@ -8,4 +8,4 @@
},
"terms": [],
"name": "Subway Entrance"
}
}
+1 -1
View File
@@ -1,5 +1,5 @@
{
"icon": "mobilephone",
"icon": "mobile-phone",
"fields": [
"operator",
"address",
+1 -1
View File
@@ -1,5 +1,5 @@
{
"icon": "camera",
"icon": "attraction",
"fields": [
"operator",
"address",
@@ -1,4 +1,5 @@
{
"icon": "information",
"fields": [
"operator",
"address",
+9
View File
@@ -707,6 +707,15 @@
"category-landuse": {
"name": "Land Use Features"
},
"category-natural-area": {
"name": "Natural Features"
},
"category-natural-line": {
"name": "Natural Features"
},
"category-natural-point": {
"name": "Natural Features"
},
"category-path": {
"name": "Path Features"
},
+4 -4
View File
@@ -46,10 +46,10 @@ export function svgPoints(projection, context) {
.call(markerPath, 'stroke');
enter.append('use')
.attr('transform', 'translate(-6, -20)')
.attr('transform', 'translate(-5, -19)')
.attr('class', 'icon')
.attr('width', '12px')
.attr('height', '12px');
.attr('width', '11px')
.attr('height', '11px');
groups = groups
.merge(enter)
@@ -63,7 +63,7 @@ export function svgPoints(projection, context) {
groups.select('.icon')
.attr('xlink:href', function(entity) {
var preset = context.presets().match(entity, graph);
return (preset && preset.icon) ? '#' + preset.icon + '-12' : '';
return (preset && preset.icon) ? '#' + preset.icon + '-11' : '';
});
};
}
+4 -8
View File
@@ -18,11 +18,7 @@ export function uiPresetIcon() {
p = preset.apply(this, arguments),
geom = geometry.apply(this, arguments),
picon = p.icon || (geom === 'line' ? 'other-line' : 'marker-stroked'),
isMaki = dataFeatureIcons.hasOwnProperty(picon + '-24');
if (picon === 'dentist') {
isMaki = true; // workaround for dentist icon missing in `maki-sprite.json`
}
isMaki = dataFeatureIcons.indexOf(picon) !== -1;
function tag_classes(p) {
var s = '';
@@ -75,11 +71,11 @@ export function uiPresetIcon() {
icon.selectAll('svg')
.attr('class', function() {
return 'icon ' + picon + tag_classes(p);
return 'icon ' + picon + (isMaki ? '' : tag_classes(p));
});
icon.selectAll('use') // workaround: maki parking-24 broken?
.attr('href', '#' + picon + (isMaki ? (picon === 'parking' ? '-18' : '-24') : ''));
icon.selectAll('use')
.attr('href', '#' + picon + (isMaki ? '-15' : ''));
}
+3 -3
View File
@@ -17,7 +17,7 @@
"dist:css": "shx cat css/reset.css css/map.css css/app.css > dist/iD.css",
"dist:mapillary": "shx mkdir -p dist/mapillary-js && shx cp -R node_modules/mapillary-js/dist/* dist/mapillary-js/",
"dist:min": "uglifyjs dist/iD.js -c -m -o dist/iD.min.js",
"dist:svg:maki": "svg-sprite --symbol --symbol-dest . --symbol-sprite dist/img/maki-sprite.svg node_modules/maki/src/*.svg",
"dist:svg:maki": "svg-sprite --symbol --symbol-dest . --symbol-sprite dist/img/maki-sprite.svg node_modules/@mapbox/maki/icons/*.svg",
"dist:svg:id": "node svg/spriteify.js --svg svg/iD-sprite.src.svg --json svg/iD-sprite.json > dist/img/iD-sprite.svg",
"imagery": "node data/update_imagery",
"lint": "eslint *.js js/id test/spec modules",
@@ -38,6 +38,7 @@
"wmf-sitematrix": "0.1.3"
},
"devDependencies": {
"@mapbox/maki": "^4.0.0",
"brfs": "1.4.3",
"chai": "~3.5.0",
"d3": "4.4.1",
@@ -50,7 +51,6 @@
"js-yaml": "~3.7.0",
"jsonschema": "~1.1.0",
"json-stable-stringify": "~1.0.1",
"maki": "0.5.0",
"mapillary-js": "2.2.0",
"minimist": "~1.2.0",
"mocha": "~3.2.0",
@@ -74,7 +74,7 @@
"xmlbuilder": "~8.2.2"
},
"greenkeeper": {
"ignore": ["maki"],
"ignore": ["@mapbox/maki"],
"label": "chore-greenkeeper"
},
"engines": {