mirror of
https://github.com/FoggedLens/iD.git
synced 2026-02-13 17:23:02 +00:00
Fix issue where preset tag reference wouldn't load Change "Change feature" tooltip to more accurate "Change feature type"
55 lines
1.2 KiB
JavaScript
55 lines
1.2 KiB
JavaScript
import { t } from '../util/locale';
|
|
import { presetCollection } from './collection';
|
|
|
|
|
|
export function presetCategory(id, category, all) {
|
|
category = Object.assign({}, category); // shallow copy
|
|
|
|
category.id = id;
|
|
|
|
|
|
category.members = presetCollection(category.members.map(function(id) {
|
|
return all.item(id);
|
|
}));
|
|
|
|
|
|
category.geometry = category.members.collection.reduce(function(geometries, preset) {
|
|
for (var index in preset.geometry) {
|
|
var geometry = preset.geometry[index];
|
|
if (geometries.indexOf(geometry) === -1) {
|
|
geometries.push(geometry);
|
|
}
|
|
}
|
|
return geometries;
|
|
}, []);
|
|
|
|
|
|
category.matchGeometry = function(geometry) {
|
|
return category.geometry.indexOf(geometry) >= 0;
|
|
};
|
|
|
|
category.matchAllGeometry = function(geometries) {
|
|
return category.members.collection.some(function(preset) {
|
|
return preset.matchAllGeometry(geometries);
|
|
});
|
|
};
|
|
|
|
|
|
category.matchScore = function() {
|
|
return -1;
|
|
};
|
|
|
|
|
|
category.name = function() {
|
|
return t('presets.categories.' + id + '.name', {'default': id});
|
|
};
|
|
|
|
|
|
category.terms = function() {
|
|
return [];
|
|
};
|
|
|
|
|
|
return category;
|
|
}
|