From 294ce002119919c528454a08b2c1132bac1ab310 Mon Sep 17 00:00:00 2001 From: Bryan Housel Date: Mon, 15 Apr 2019 11:08:09 -0400 Subject: [PATCH] substitute 'info' for 'data' (so I can use 'info' for an info drawer) --- modules/core/validator.js | 2 +- modules/validations/almost_junction.js | 6 +++--- modules/validations/crossing_ways.js | 11 +++++++---- modules/validations/missing_role.js | 14 ++++++++------ modules/validations/outdated_tags.js | 4 ++-- modules/validations/private_data.js | 6 ++++-- test/spec/validations/almost_junction.js | 24 ++++++++++++------------ 7 files changed, 37 insertions(+), 30 deletions(-) diff --git a/modules/core/validator.js b/modules/core/validator.js index 0cc2b0a73..8c335a66b 100644 --- a/modules/core/validator.js +++ b/modules/core/validator.js @@ -337,7 +337,7 @@ export function validationIssue(attrs) { this.tooltip = attrs.tooltip; // required - localized string this.entities = attrs.entities; // optional - array of entities this.loc = attrs.loc; // optional - expect a [lon, lat] array - this.info = attrs.info; // optional - object containing arbitrary extra information + this.data = attrs.data; // optional - object containing extra data for the fixes this.fixes = attrs.fixes; // optional - array of validationIssueFix objects this.hash = attrs.hash; // optional - string to further differentiate the issue diff --git a/modules/validations/almost_junction.js b/modules/validations/almost_junction.js index 44a6051a0..7d0bf618c 100644 --- a/modules/validations/almost_junction.js +++ b/modules/validations/almost_junction.js @@ -47,8 +47,8 @@ export function validationAlmostJunction() { title: t('issues.fix.connect_features.title'), onClick: function() { var endNode = this.issue.entities[1]; - var targetEdge = this.issue.info.edge; - var crossLoc = this.issue.info.cross_loc; + var targetEdge = this.issue.data.edge; + var crossLoc = this.issue.data.cross_loc; var edgeNodes = [context.graph().entity(targetEdge[0]), context.graph().entity(targetEdge[1])]; var closestNodeInfo = geoSphericalClosestNode(edgeNodes, crossLoc); @@ -94,7 +94,7 @@ export function validationAlmostJunction() { tooltip: t('issues.almost_junction.highway-highway.tip'), entities: [entity, node, edgeHighway], loc: extendableNodeInfo.node.loc, - info: { + data: { edge: extendableNodeInfo.edge, cross_loc: extendableNodeInfo.cross_loc }, diff --git a/modules/validations/crossing_ways.js b/modules/validations/crossing_ways.js index 664d2e6ee..68f6ce295 100644 --- a/modules/validations/crossing_ways.js +++ b/modules/validations/crossing_ways.js @@ -431,8 +431,8 @@ export function validationCrossingWays() { title: t('issues.fix.connect_features.title'), onClick: function() { var loc = this.issue.loc; - var connectionTags = this.issue.info.connectionTags; - var edges = this.issue.info.edges; + var connectionTags = this.issue.data.connectionTags; + var edges = this.issue.data.edges; context.perform( function actionConnectCrossingWays(graph) { @@ -500,9 +500,12 @@ export function validationCrossingWays() { type: type, severity: 'warning', message: t('issues.crossing_ways.message', messageDict), - tooltip: t('issues.crossing_ways.'+crossingTypeID+'.tip'), + tooltip: t('issues.crossing_ways.' + crossingTypeID + '.tip'), entities: entities, - info: { edges: crossing.edges, connectionTags: connectionTags }, + data: { + edges: crossing.edges, + connectionTags: connectionTags + }, loc: crossing.crossPoint, fixes: fixes }); diff --git a/modules/validations/missing_role.js b/modules/validations/missing_role.js index c3fbeda47..ec6ff08bd 100644 --- a/modules/validations/missing_role.js +++ b/modules/validations/missing_role.js @@ -11,9 +11,8 @@ export function validationMissingRole() { var issues = []; if (entity.type === 'way') { context.graph().parentRelations(entity).forEach(function(relation) { - if (!relation.isMultipolygon()) { - return; - } + if (!relation.isMultipolygon()) return; + var member = relation.memberById(entity.id); if (member && isMissingRole(member)) { issues.push(makeIssue(entity, relation, member, context)); @@ -31,6 +30,7 @@ export function validationMissingRole() { return issues; }; + function isMissingRole(member) { return !member.role || !member.role.trim().length; } @@ -45,7 +45,9 @@ export function validationMissingRole() { }), tooltip: t('issues.missing_role.multipolygon.tip'), entities: [relation, way], - info: {member: member}, + data: { + member: member + }, fixes: [ makeAddRoleFix('inner', context), makeAddRoleFix('outer', context), @@ -54,7 +56,7 @@ export function validationMissingRole() { title: t('issues.fix.remove_from_relation.title'), onClick: function() { context.perform( - actionDeleteMember(this.issue.entities[0].id, this.issue.info.member.index), + actionDeleteMember(this.issue.entities[0].id, this.issue.data.member.index), t('operations.delete_member.annotation') ); } @@ -67,7 +69,7 @@ export function validationMissingRole() { return new validationIssueFix({ title: t('issues.fix.set_as_' + role + '.title'), onClick: function() { - var oldMember = this.issue.info.member; + var oldMember = this.issue.data.member; var member = { id: this.issue.entities[1].id, type: oldMember.type, role: role }; context.perform( actionChangeMember(this.issue.entities[0].id, member, oldMember.index), diff --git a/modules/validations/outdated_tags.js b/modules/validations/outdated_tags.js index 5f4258373..85878a61c 100644 --- a/modules/validations/outdated_tags.js +++ b/modules/validations/outdated_tags.js @@ -68,7 +68,7 @@ export function validationOutdatedTags() { message: t('issues.outdated_tags.message', { feature: utilDisplayLabel(entity, context) }), tooltip: tooltip, // t('issues.outdated_tags.tip'), entities: [entity], - info: { + data: { tagDiff: tagDiff, newTags: newTags }, @@ -78,7 +78,7 @@ export function validationOutdatedTags() { title: t('issues.fix.upgrade_tags.title'), onClick: function() { var entityID = this.issue.entities[0].id; - var newTags = this.issue.info.newTags; + var newTags = this.issue.data.newTags; context.perform( actionChangeTags(entityID, newTags), t('issues.fix.upgrade_tags.annotation') diff --git a/modules/validations/private_data.js b/modules/validations/private_data.js index 4db43d5cc..2f4150a61 100644 --- a/modules/validations/private_data.js +++ b/modules/validations/private_data.js @@ -63,7 +63,9 @@ export function validationPrivateData() { }), tooltip: t('issues.private_data.tip'), entities: [entity], - info: { privateKeys: privateKeys }, + data: { + privateKeys: privateKeys + }, fixes: [ new validationIssueFix({ auto: true, @@ -72,7 +74,7 @@ export function validationPrivateData() { onClick: function() { var entity = this.issue.entities[0]; var tags = Object.assign({}, entity.tags); // shallow copy - var privateKeys = this.issue.info.privateKeys; + var privateKeys = this.issue.data.privateKeys; for (var index in privateKeys) { delete tags[privateKeys[index]]; } diff --git a/test/spec/validations/almost_junction.js b/test/spec/validations/almost_junction.js index 80c19afef..b35342701 100644 --- a/test/spec/validations/almost_junction.js +++ b/test/spec/validations/almost_junction.js @@ -157,13 +157,13 @@ describe('iD.validations.almost_junction', function () { expect(issue.loc[0]).to.eql(22.42357); expect(issue.loc[1]).to.eql(0); - expect(issue.info.edge).to.have.lengthOf(2); - expect(issue.info.edge[0]).to.eql('n-3'); - expect(issue.info.edge[1]).to.eql('n-4'); + expect(issue.data.edge).to.have.lengthOf(2); + expect(issue.data.edge[0]).to.eql('n-3'); + expect(issue.data.edge[1]).to.eql('n-4'); - expect(issue.info.cross_loc).to.have.lengthOf(2); - expect(issue.info.cross_loc[0]).to.eql(22.42356); - expect(issue.info.cross_loc[1]).to.eql(0); + expect(issue.data.cross_loc).to.have.lengthOf(2); + expect(issue.data.cross_loc[0]).to.eql(22.42356); + expect(issue.data.cross_loc[1]).to.eql(0); expect(issue.fixes).to.have.lengthOf(2); issue.fixes[0].onClick(); @@ -186,13 +186,13 @@ describe('iD.validations.almost_junction', function () { expect(issue.loc[0]).to.eql(22.42357); expect(issue.loc[1]).to.eql(0); - expect(issue.info.edge).to.have.lengthOf(2); - expect(issue.info.edge[0]).to.eql('n-3'); - expect(issue.info.edge[1]).to.eql('n-4'); + expect(issue.data.edge).to.have.lengthOf(2); + expect(issue.data.edge[0]).to.eql('n-3'); + expect(issue.data.edge[1]).to.eql('n-4'); - expect(issue.info.cross_loc).to.have.lengthOf(2); - expect(issue.info.cross_loc[0]).to.eql(22.42356); - expect(issue.info.cross_loc[1]).to.eql(0); + expect(issue.data.cross_loc).to.have.lengthOf(2); + expect(issue.data.cross_loc[0]).to.eql(22.42356); + expect(issue.data.cross_loc[1]).to.eql(0); expect(issue.fixes).to.have.lengthOf(2); issue.fixes[1].onClick();