mirror of
https://github.com/FoggedLens/iD.git
synced 2026-02-13 09:12:52 +00:00
I've converted the improveOSM errors to use this new generic QA error structure which should allow for more general code to be used in behaviour and UI. Sidebar preview is currently broken, but will be fixed shortly.
214 lines
4.7 KiB
CSS
214 lines
4.7 KiB
CSS
|
|
/* OSM Notes and KeepRight Layers */
|
|
|
|
.kr_error-header-icon .qa_error-fill,
|
|
.layer-keepRight .qa_error .qa_error-fill,
|
|
.layer-improveOSM .qa_error .qa_error-fill {
|
|
stroke: #333;
|
|
stroke-width: 1.3px; /* NOTE: likely a better way to scale the icon stroke */
|
|
}
|
|
|
|
.note-header-icon .note-fill,
|
|
.layer-notes .note .note-fill {
|
|
color: #f30;
|
|
stroke: #333;
|
|
stroke-width: 40px;
|
|
}
|
|
.note-header-icon.new .note-fill,
|
|
.layer-notes .note.new .note-fill {
|
|
color: #fe0;
|
|
stroke: #333;
|
|
stroke-width: 40px;
|
|
}
|
|
.note-header-icon.closed .note-fill,
|
|
.layer-notes .note.closed .note-fill {
|
|
color: #5d0;
|
|
stroke: #333;
|
|
stroke-width: 40px;
|
|
}
|
|
|
|
/* slight adjustments to preset icon for note icons */
|
|
.note-header-icon .preset-icon-28 {
|
|
top: 18px;
|
|
}
|
|
.note-header-icon .note-icon-annotation {
|
|
position: absolute;
|
|
top: 22px;
|
|
left: 22px;
|
|
margin: auto;
|
|
}
|
|
.note-header-icon .note-icon-annotation .icon {
|
|
width: 15px;
|
|
height: 15px;
|
|
}
|
|
|
|
/* adjustment for error icon */
|
|
|
|
.kr_error-header-icon .preset-icon-28 {
|
|
top: auto;
|
|
left: auto;
|
|
}
|
|
|
|
.kr_error-header-icon {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
}
|
|
|
|
/* Keep Right Errors
|
|
------------------------------------------------------- */
|
|
.kr.error_type-20, /* multiple nodes on same spot */
|
|
.kr.error_type-40, /* impossible oneways */
|
|
.kr.error_type-210, /* self intersecting ways */
|
|
.kr.error_type-270, /* unusual motorway connection */
|
|
.kr.error_type-310, /* roundabout issues */
|
|
.kr.error_type-320, /* improper _link */
|
|
.kr.error_type-350 { /* improper bridge tag */
|
|
color: #ff9;
|
|
}
|
|
|
|
.kr.error_type-50 { /* almost junctions */
|
|
color: #88f;
|
|
}
|
|
|
|
.kr.error_type-60, /* deprecated tags */
|
|
.kr.error_type-70, /* tagging issues */
|
|
.kr.error_type-90, /* motorway without ref */
|
|
.kr.error_type-100, /* place of worship without religion */
|
|
.kr.error_type-110, /* poi without name */
|
|
.kr.error_type-150, /* railway crossing without tag */
|
|
.kr.error_type-220, /* misspelled tag */
|
|
.kr.error_type-380 { /* non-physical sport tag */
|
|
color: #5d0;
|
|
}
|
|
|
|
.kr.error_type-130 { /* disconnected ways */
|
|
color: #fa3;
|
|
}
|
|
|
|
.kr.error_type-170 { /* FIXME tag */
|
|
color: #ff0;
|
|
}
|
|
|
|
.kr.error_type-190 { /* intersection without junction */
|
|
color: #f33;
|
|
}
|
|
|
|
.kr.error_type-200 { /* overlapping ways */
|
|
color: #fdbf6f;
|
|
}
|
|
|
|
.kr.error_type-160, /* railway layer conflict */
|
|
.kr.error_type-230 { /* layer conflict */
|
|
color: #b60;
|
|
}
|
|
|
|
.kr.error_type-280 { /* boundary issues */
|
|
color: #5f47a0;
|
|
}
|
|
|
|
.kr.error_type-180, /* relation without type */
|
|
.kr.error_type-290 { /* turn restriction issues */
|
|
color: #ace;
|
|
}
|
|
|
|
.kr.error_type-300, /* missing maxspeed */
|
|
.kr.error_type-390 { /* missing tracktype */
|
|
color: #090;
|
|
}
|
|
|
|
.kr.error_type-360, /* language unknown */
|
|
.kr.error_type-370, /* doubled places */
|
|
.kr.error_type-410 { /* website issues */
|
|
color: #f9b;
|
|
}
|
|
|
|
.kr.error_type-120, /* way without nodes */
|
|
.kr.error_type-400 { /* geometry / turn angles */
|
|
color: #c35;
|
|
}
|
|
|
|
/* ImproveOSM Errors
|
|
------------------------------------------------------- */
|
|
|
|
.iOSM.error_type-ow { /* missing one way */
|
|
color: #1E90FF;
|
|
}
|
|
|
|
.iOSM.error_type-mr-road { /* missing road */
|
|
color: #B452CD;
|
|
}
|
|
.iOSM.error_type-mr-path { /* missing path */
|
|
color: #A0522D;
|
|
}
|
|
.iOSM.error_type-mr-parking { /* missing parking */
|
|
color: #EEEE00;
|
|
}
|
|
.iOSM.error_type-mr-both { /* missing road+parking */
|
|
color: #FFA500;
|
|
}
|
|
|
|
.iOSM.error_type-tr { /* missing turn restriction */
|
|
color: #EC1C24;
|
|
}
|
|
|
|
|
|
/* Custom Map Data (geojson, gpx, kml, vector tile) */
|
|
.layer-mapdata {
|
|
pointer-events: none;
|
|
}
|
|
|
|
.layer-mapdata path.shadow {
|
|
pointer-events: stroke;
|
|
stroke: #f6634f;
|
|
stroke-width: 16;
|
|
stroke-opacity: 0;
|
|
fill: none;
|
|
}
|
|
.layer-mapdata path.MultiPoint.shadow,
|
|
.layer-mapdata path.Point.shadow {
|
|
pointer-events: fill;
|
|
fill: #f6634f;
|
|
fill-opacity: 0;
|
|
}
|
|
.layer-mapdata path.shadow.hover:not(.selected) {
|
|
stroke-opacity: 0.4;
|
|
}
|
|
.layer-mapdata path.shadow.selected {
|
|
stroke-opacity: 0.7;
|
|
}
|
|
|
|
.layer-mapdata path.stroke {
|
|
stroke: #ff26d4;
|
|
stroke-width: 2;
|
|
fill: none;
|
|
}
|
|
|
|
.layer-mapdata path.fill {
|
|
stroke-width: 0;
|
|
stroke-opacity: 0.3;
|
|
stroke: #ff26d4;
|
|
fill: #ff26d4;
|
|
fill-opacity: 0.3;
|
|
fill-rule: evenodd;
|
|
}
|
|
|
|
.layer-mapdata text.label-halo,
|
|
.layer-mapdata text.label {
|
|
font-size: 10px;
|
|
font-weight: bold;
|
|
dominant-baseline: middle;
|
|
}
|
|
.layer-mapdata text.label {
|
|
fill: #ff26d4;
|
|
}
|
|
.layer-mapdata text.label.hover,
|
|
.layer-mapdata text.label.selected {
|
|
fill: #f6634f;
|
|
}
|
|
.layer-mapdata text.label-halo {
|
|
opacity: 0.7;
|
|
stroke: #000;
|
|
stroke-width: 5px;
|
|
stroke-miterlimit: 1;
|
|
} |