diff --git a/Makefile b/Makefile
index 55691c8..e9fac26 100644
--- a/Makefile
+++ b/Makefile
@@ -23,7 +23,6 @@ JS_FILES = \
src/Compass.js \
src/Grid.js \
src/Attribution.js \
- src/Basemap.js \
src/Stylist.js \
src/end.js
@@ -31,10 +30,7 @@ JS_COMPILER = \
java -jar lib/google-compiler/compiler-20150126.jar \
--charset UTF-8
-all: mapsense.min.js mapsense.js mapsense.css
-
-mapsense.css:
- @npm run less
+all: mapsense.min.js mapsense.js
%.min.js: %.js
$(JS_COMPILER) < $^ > $@
@@ -49,6 +45,4 @@ mapsense.js: $(JS_FILES) Makefile
chmod a-w $@
clean:
- rm -rf mapsense.js mapsense.min.js mapsense.css
-
-.PHONY: mapsense.css
+ rm -rf mapsense.js mapsense.min.js
diff --git a/mapsense.css b/mapsense.css
deleted file mode 100644
index f223c7d..0000000
--- a/mapsense.css
+++ /dev/null
@@ -1,1017 +0,0 @@
-.mapsense-attribution {
- background-color: rgba(0, 0, 0, 0.5);
- color: #ccc;
- position: absolute;
- bottom: 0;
- right: 0;
- padding: 10px;
- font-size: 11px;
- font-family: sans-serif;
- line-height: 5px;
- text-decoration: none;
-}
-.mapsense-attribution a {
- color: #ccc;
- text-decoration: none;
-}
-.compass .back {
- fill: #eee;
- fill-opacity: .8;
-}
-.compass .fore {
- stroke: #999;
- stroke-width: 1.5px;
-}
-.compass rect.back.fore {
- fill: #999;
- fill-opacity: .3;
- stroke: #eee;
- stroke-width: 1px;
- shape-rendering: crispEdges;
-}
-.compass .direction {
- fill: none;
-}
-.compass .chevron {
- fill: none;
- stroke: #999;
- stroke-width: 5px;
-}
-.compass .zoom .chevron {
- stroke-width: 4px;
-}
-.compass .active .chevron,
-.compass .chevron.active {
- stroke: #fff;
-}
-.compass.active .active .direction {
- fill: #999;
-}
-path {
- vector-effect: non-scaling-stroke;
- stroke-linejoin: round;
- stroke-linecap: round;
-}
-/* zoom-dependent styling for roads & admins */
-/* general rules */
-path._undefined.none {
- fill: none;
-}
-path.landuse.other {
- fill: none;
- stroke: none;
-}
-.park {
- opacity: .3;
-}
-.water_line {
- opacity: .5;
- fill: none;
-}
-.runway {
- opacity: .7;
-}
-.rail_major,
-.rail_minor {
- stroke-dasharray: 4, 3;
-}
-.roads,
-.admin {
- fill: none;
-}
-.disputed_border,
-.state_border {
- stroke-dasharray: 8, 3;
-}
-/* admins */
-.country_border {
- stroke-width: 2;
-}
-.admin._3,
-.admin._2,
-.admin._1 {
- stroke-width: 1;
-}
-.admin._4 {
- stroke-width: 1.5;
-}
-.state_border._2 {
- stroke-width: .3;
-}
-.state_border._3,
-.state_border._4 {
- stroke-width: .5;
-}
-.state_border._8,
-.state_border._9,
-.state_border._10,
-.state_border._11 {
- stroke-width: 1.5;
- opacity: .75;
-}
-.state_border._12,
-.state_border._13,
-.state_border._14,
-.state_border._15,
-.state_border._16,
-.state_border._17 {
- stroke-width: 2;
- stroke-dasharray: 10, 4;
- opacity: .75;
-}
-/* roads */
-.ne_10m_roads._3 {
- stroke-width: 0.5;
-}
-.ne_10m_roads._4,
-.ne_10m_roads._5 {
- stroke-width: 0.75;
-}
-.ne_10m_roads._6 {
- opacity: 0.75;
-}
-.motorway._6 {
- stroke-width: .75;
-}
-.motorway._7,
-.ne_10m_roads._7 {
- stroke-width: 1;
-}
-.arterial_major._7 {
- stroke-width: .5;
-}
-/* zoom 8 */
-.ne_10m_roads._8 {
- stroke-width: 1.25;
- opacity: 0.75;
-}
-.motorway._8 {
- stroke-width: 1.25;
- opacity: 0.75;
-}
-.arterial_major._8 {
- stroke-width: .5;
- opacity: .75;
-}
-.arterial_minor._8 {
- stroke-width: 0.5;
- opacity: .5;
-}
-/* zoom 9 */
-.motorway._9 {
- stroke-width: 1.5;
-}
-.arterial_major._9 {
- stroke-width: .75;
-}
-.arterial_minor._9 {
- stroke-width: 0.5;
- opacity: .5;
-}
-/* zoom 10 */
-.motorway._10 {
- stroke-width: 1.75;
-}
-.arterial_major._10 {
- stroke-width: 1.25;
-}
-.arterial_minor._10 {
- stroke-width: 1;
-}
-.road_med._10 {
- stroke-width: .75;
-}
-/* zoom 11 */
-.motorway._11 {
- stroke-width: 3;
-}
-.arterial_major._11,
-.runway._11 {
- stroke-width: 1.75;
-}
-.arterial_minor._11 {
- stroke-width: 1.25;
-}
-.road_med._11 {
- stroke-width: 1;
-}
-.road_minor._11 {
- stroke-width: .5;
-}
-/* zoom 12 */
-.motorway._12 {
- stroke-width: 3.5;
-}
-.arterial_major._12,
-.runway._12 {
- stroke-width: 2;
-}
-.arterial_minor._12 {
- stroke-width: 1.5;
-}
-.road_med._12 {
- stroke-width: 1;
-}
-.road_minor._12 {
- stroke-width: .75;
-}
-/* zoom 13 */
-.motorway._13 {
- stroke-width: 5;
-}
-.arterial_major._13,
-.runway._13 {
- stroke-width: 3.5;
-}
-.arterial_minor._13 {
- stroke-width: 2.5;
-}
-.road_med._13 {
- stroke-width: 2;
-}
-.road_minor._13 {
- stroke-width: 1.5;
-}
-.path._13,
-.water_line._13 {
- stroke-width: 0.3;
-}
-/* zoom 14 */
-.motorway._14 {
- stroke-width: 6.5;
-}
-.arterial_major._14,
-.runway._14 {
- stroke-width: 4.75;
-}
-.arterial_minor._14 {
- stroke-width: 4.25;
-}
-.road_med._14 {
- stroke-width: 3.75;
-}
-.road_minor._14 {
- stroke-width: 2.5;
-}
-.rail_minor._14 {
- stroke-width: 1;
-}
-.rail_major._14 {
- stroke-width: 1.5;
-}
-.path._14,
-.water_line._14 {
- stroke-width: 0.75;
-}
-/* zoom 15 */
-.motorway._15 {
- stroke-width: 8.5;
-}
-.arterial_major._15,
-.runway._15 {
- stroke-width: 7;
-}
-.arterial_minor._15 {
- stroke-width: 6;
-}
-.road_med._15 {
- stroke-width: 5;
-}
-.road_minor._15 {
- stroke-width: 4;
-}
-.rail_minor._15 {
- stroke-width: 1.5;
-}
-.rail_major._15 {
- stroke-width: 1.5;
-}
-.path._15,
-.water_line._15 {
- stroke-width: 1;
-}
-/* zoom 16 */
-.motorway._16 {
- stroke-width: 12;
-}
-.arterial_major._16,
-.runway._16 {
- stroke-width: 9;
-}
-.arterial_minor._16 {
- stroke-width: 8;
-}
-.road_med._16 {
- stroke-width: 7;
-}
-.road_minor._16 {
- stroke-width: 6;
-}
-.rail_minor._16 {
- stroke-width: 1.5;
-}
-.rail_major._16 {
- stroke-width: 2;
-}
-.path._16,
-.water_line._16 {
- stroke-width: 2;
-}
-/* zoom 17 */
-.motorway._17 {
- stroke-width: 15;
-}
-.arterial_major._17,
-.runway._17 {
- stroke-width: 10;
-}
-.arterial_minor._17 {
- stroke-width: 9;
-}
-.road_med._17 {
- stroke-width: 8;
-}
-.road_minor._17 {
- stroke-width: 8;
-}
-.rail_minor._17 {
- stroke-width: 3;
- stroke-dasharray: 7, 6;
-}
-.rail_major._17 {
- stroke-width: 4;
- stroke-dasharray: 7, 6;
-}
-.path._17,
-.water_line._17 {
- stroke-width: 5;
-}
-/* zoom 18 */
-.motorway._18 {
- stroke-width: 16;
-}
-.arterial_major._18,
-.runway._18 {
- stroke-width: 10;
-}
-.arterial_minor._18 {
- stroke-width: 10;
-}
-.road_med._18 {
- stroke-width: 9;
-}
-.road_minor._18 {
- stroke-width: 8;
-}
-.rail_minor._18 {
- stroke-width: 3;
- stroke-dasharray: 7, 6;
-}
-.rail_major._18 {
- stroke-width: 4;
- stroke-dasharray: 7, 6;
-}
-.path._18,
-.water_line._18 {
- stroke-width: 5;
-}
-.mapsense-blackprint.labels {
- font-size: 18;
- fill: #999;
- font-weight: 200;
- text-transform: uppercase;
- stroke-width: .3;
- /*stroke: grey;*/
- font-stretch: expanded;
- letter-spacing: 1.5;
- font-family: "Josefin Sans";
-}
-.mapsense-blackprint.tile-background {
- fill: #141414;
-}
-.mapsense-blackprint.land {
- fill: #000000;
- stroke: #bdbcbc;
- stroke-width: 1;
-}
-.mapsense-blackprint.agriculture {
- display: none;
-}
-.mapsense-blackprint.water_polygon {
- fill: #141414;
-}
-.mapsense-blackprint.water_line {
- stroke: #323232;
- stroke-width: 1;
- opacity: .3;
- fill: none;
-}
-.mapsense-blackprint.park {
- fill: rgba(15, 15, 15, 0.3);
- stroke: none;
-}
-.mapsense-blackprint.building {
- fill: none;
- stroke: #505050;
- stroke-width: .52;
-}
-.mapsense-blackprint.school {
- fill: #0f0f0f;
- stroke: none;
-}
-.mapsense-blackprint.other {
- stroke: #323232;
-}
-.mapsense-blackprint.urban {
- fill: none;
- stroke: none;
-}
-.mapsense-blackprint.roads {
- stroke: #222;
-}
-.mapsense-blackprint.motorway,
-.mapsense-blackprint.ne_10m_roads {
- stroke: #333;
-}
-.mapsense-blackprint.country_border,
-.mapsense-blackprint.disputed_border {
- stroke: grey;
- stroke-dasharray: 3 3;
- stroke-width: 1;
- fill: none;
-}
-.mapsense-blackprint.state_border {
- stroke: grey;
- stroke-dasharray: 3 3;
- fill: none;
-}
-.mapsense-dark.labels {
- font-size: 14;
- fill: #777;
- font-weight: 600;
- text-transform: uppercase;
- stroke-width: .3;
- /*stroke: grey;*/
- font-stretch: expanded;
- letter-spacing: 1.5;
- font-family: "Josefin Sans";
-}
-.mapsense-dark.tile-background {
- fill: #3a4250;
-}
-.mapsense-dark.land {
- fill: #161619;
-}
-.mapsense-dark.agriculture {
- display: none;
-}
-.mapsense-dark.country_border,
-.mapsense-dark.disputed_border {
- stroke: #777;
-}
-.mapsense-dark.state_border {
- stroke: #777;
-}
-.mapsense-dark.water_polygon {
- fill: #3a4250;
- stroke: none;
-}
-.mapsense-dark.water_line {
- stroke: #516283;
- stroke-width: 1;
- fill: none;
-}
-.mapsense-dark.park {
- fill: #268061;
-}
-.mapsense-dark.building {
- fill: #222;
- stroke: black;
-}
-.mapsense-dark.school {
- fill: #35161e;
-}
-.mapsense-dark.other {
- fill: rgba(76, 69, 67, 0.15);
- stroke: black;
-}
-.mapsense-dark.urban {
- fill: #000000;
- stroke: none;
-}
-.mapsense-dark.ne_10m_roads {
- stroke: #7c5c2c;
-}
-.mapsense-dark.motorway {
- stroke: #7c5c2c;
-}
-.mapsense-dark.arterial_major {
- stroke: #4a472a;
-}
-.mapsense-dark.arterial_minor {
- stroke: #3c3c3c;
-}
-.mapsense-dark.road_med {
- stroke: #3c3c3c;
-}
-.mapsense-dark.road_minor {
- stroke: #323232;
-}
-.mapsense-dark.rail_major {
- stroke: #323228;
- fill: none;
-}
-.mapsense-dark.rail_minor {
- stroke: #323228;
- fill: none;
-}
-.mapsense-dark.runway {
- stroke: #333;
-}
-.mapsense-dark.path {
- stroke: #323228;
-}
-.mapsense-grayscale.labels {
- font-size: 14;
- fill: #777;
- font-weight: 600;
- text-transform: uppercase;
- stroke-width: .3;
- /*stroke: grey;*/
- font-stretch: expanded;
- letter-spacing: 1.5;
- font-family: "Josefin Sans";
-}
-.mapsense-grayscale.tile-background {
- fill: #aaa9af;
-}
-.mapsense-grayscale.land {
- fill: #e8e5e5;
- stroke: none;
-}
-.mapsense-grayscale.water_polygon {
- fill: #aaa9af;
-}
-.mapsense-grayscale.water_line {
- stroke: gray;
- stroke-width: 1;
-}
-.mapsense-grayscale.park {
- fill: #cad4ca;
-}
-.mapsense-grayscale.building {
- fill: #f0f0f0;
-}
-.mapsense-grayscale.school {
- fill: #dcdcdc;
- stroke: none;
-}
-.mapsense-grayscale.other {
- fill: #cbcbcb;
- stroke: none;
-}
-.mapsense-grayscale.urban {
- fill: none;
- stroke: none;
-}
-.mapsense-grayscale.ne_10m_roads {
- stroke: #ccc;
-}
-.mapsense-grayscale.motorway {
- stroke: #CCC;
-}
-.mapsense-grayscale.arterial_major {
- stroke: #d2d2d2;
-}
-.mapsense-grayscale.arterial_minor {
- stroke: #d7d7d7;
-}
-.mapsense-grayscale.road_med {
- stroke: #DDD;
-}
-.mapsense-grayscale.road_minor {
- stroke: #DDD;
-}
-.mapsense-grayscale.rail_major {
- stroke: lightgray;
-}
-.mapsense-grayscale.rail_minor {
- stroke: lightgray;
-}
-.mapsense-grayscale.runway {
- stroke: #f2efef;
-}
-.mapsense-grayscale.path {
- stroke: #DDD;
-}
-.mapsense-grayscale.country_border,
-.mapsense-grayscale.disputed_border {
- stroke: #BBB;
-}
-.mapsense-grayscale.state_border {
- stroke: #bbb;
-}
-.mapsense-light.labels {
- font-size: 14;
- fill: #777;
- font-weight: 600;
- text-transform: uppercase;
- stroke-width: .3;
- /*stroke: grey;*/
- font-stretch: expanded;
- letter-spacing: 1.5;
- font-family: "Josefin Sans";
-}
-.mapsense-light.tile-background {
- fill: #ffffff;
-}
-.mapsense-light.land {
- fill: #ddddda;
- stroke: none;
-}
-.mapsense-light.water_polygon {
- fill: #ffffff;
- stroke: none;
-}
-.mapsense-light.country_border,
-.mapsense-light.disputed_border {
- stroke: #aaa;
-}
-.mapsense-light.state_border {
- stroke: #aaa;
-}
-.mapsense-light.water_line {
- stroke: #c8d0df;
-}
-.mapsense-light.park {
- fill: #caceb9;
- stroke: none;
-}
-.mapsense-light.building {
- fill: #d7d6d1;
-}
-.mapsense-light.school {
- fill: #eadddb;
- stroke: none;
-}
-.mapsense-light.other {
- fill: none;
- stroke: none;
-}
-.mapsense-light.urban {
- fill: rgba(177, 135, 74, 0.07);
- stroke: none;
-}
-.mapsense-light.ne_10m_roads {
- stroke: #ededed;
-}
-.mapsense-light.motorway {
- stroke: #f6f4f3;
-}
-.mapsense-light.arterial_major {
- stroke: #f4f4ef;
-}
-.mapsense-light.arterial_minor {
- stroke: #f1eded;
-}
-.mapsense-light.road_med {
- stroke: #f6f3f3;
-}
-.mapsense-light.road_minor {
- stroke: #faf8f8;
-}
-.mapsense-light.rail_major {
- stroke: #cccccc;
-}
-.mapsense-light.rail_minor {
- stroke: #cccccc;
-}
-.mapsense-light.runway {
- stroke: #ccc;
-}
-.mapsense-light.path {
- stroke: #ccc;
-}
-.mapsense-parchment.labels {
- font-size: 14;
- fill: #777;
- font-weight: 600;
- text-transform: uppercase;
- stroke-width: .3;
- /*stroke: grey;*/
- font-stretch: expanded;
- letter-spacing: 1.5;
- font-family: "Josefin Sans";
-}
-.mapsense-parchment.tile-background {
- fill: #b8bdc1;
-}
-.mapsense-parchment.land {
- fill: #e3d6c5;
- stroke: #976f60;
- stroke-width: 1;
-}
-.mapsense-parchment.water_polygon {
- fill: #b8bdc1;
- stroke: #976f60;
- stroke-width: .5;
-}
-.mapsense-parchment.water_line {
- stroke: #b8bdc1;
-}
-.mapsense-parchment.park {
- fill: #cbbca6;
-}
-.mapsense-parchment.building {
- fill: #d4c9ba;
-}
-.mapsense-parchment.school {
- fill: rgba(90, 46, 5, 0.12);
- stroke: none;
-}
-.mapsense-parchment.other {
- fill: #e3d6c5;
- stroke: none;
-}
-.mapsense-parchment.urban {
- fill: rgba(255, 255, 255, 0.3);
- stroke: none;
-}
-.mapsense-parchment.ne_10m_roads {
- stroke: #aea295;
-}
-.mapsense-parchment.motorway {
- stroke: #aea295;
-}
-.mapsense-parchment.arterial_major {
- stroke: #d5c5b7;
-}
-.mapsense-parchment.arterial_minor {
- stroke: #cab7aa;
-}
-.mapsense-parchment.road_med {
- stroke: #d8c8bb;
-}
-.mapsense-parchment.road_minor {
- stroke: #d8c8bb;
-}
-.mapsense-parchment.rail_major {
- stroke: #bda897;
-}
-.mapsense-parchment.rail_minor {
- stroke: #bda897;
-}
-.mapsense-parchment.runway {
- stroke: #ede5d5;
-}
-.mapsense-parchment.path {
- stroke: #ede5d5;
-}
-.mapsense-parchment.country_border,
-.mapsense-parchment.disputed_border {
- stroke: #976f60;
-}
-.mapsense-parchment.state_border {
- stroke: #976f60;
-}
-.mapsense-sketch.labels {
- font-size: 14;
- fill: #777;
- font-weight: 600;
- text-transform: uppercase;
- stroke-width: .3;
- font-stretch: expanded;
- letter-spacing: 1.5;
- font-family: "Josefin Sans";
-}
-.mapsense-sketch.tile-background {
- fill: #f0f0f0;
-}
-.mapsense-sketch.land {
- fill: #ffffff;
- stroke: #bdbcbc;
- stroke-width: 1;
-}
-.mapsense-sketch.water_polygon {
- fill: #f0f0f0;
- stroke: #bdbcbc;
- stroke-width: .5;
-}
-.mapsense-sketch.water_line {
- stroke: #cccaca;
-}
-.mapsense-sketch.park {
- fill: none;
- stroke-width: .55;
- stroke: #dad8d8;
-}
-.mapsense-sketch.building {
- fill: none;
- stroke: #d4d4d4;
- stroke-width: .52;
-}
-.mapsense-sketch.school {
- fill: none;
- stroke: #dadada;
-}
-.mapsense-sketch.urban {
- fill: none;
- stroke: none;
-}
-.mapsense-sketch.ne_10m_roads {
- stroke: #eee;
-}
-.mapsense-sketch.motorway {
- stroke: #ddd;
-}
-.mapsense-sketch.arterial_major {
- stroke: #eee;
-}
-.mapsense-sketch.arterial_minor {
- stroke: #eee;
-}
-.mapsense-sketch.road_med {
- stroke: #eee;
-}
-.mapsense-sketch.road_minor {
- stroke: #f5f5f5;
-}
-.mapsense-sketch.rail_major {
- stroke: #ddd;
-}
-.mapsense-sketch.rail_minor {
- stroke: #ddd;
-}
-.mapsense-sketch.runway {
- stroke: #ddd;
-}
-.mapsense-sketch.path {
- stroke: #f5f5f5;
-}
-.mapsense-sketch.country_border,
-.mapsense-sketch.disputed_border {
- stroke: #ccc;
-}
-.mapsense-sketch.state_border {
- stroke: #ccc;
-}
-.mapsense-tron.labels {
- font-size: 14;
- fill: #888;
- font-weight: 600;
- text-transform: uppercase;
- stroke-width: .3;
- font-stretch: expanded;
- letter-spacing: 1.5;
- font-family: "Josefin Sans";
-}
-.mapsense-tron.tile-background {
- fill: #000000;
-}
-.mapsense-tron.land {
- fill: #172c3a;
- stroke: none;
-}
-.mapsense-tron.water_polygon {
- stroke: none;
- fill: black;
-}
-.mapsense-tron.country_border,
-.mapsense-tron.disputed_border {
- stroke: #666;
-}
-.mapsense-tron.state_border {
- stroke: #666;
-}
-.mapsense-tron.water_line {
- stroke: #111119;
-}
-.mapsense-tron.park {
- fill: #060a10;
-}
-.mapsense-tron.building {
- fill: #07212a;
- stroke: none;
-}
-.mapsense-tron.school {
- fill: #162532;
- stroke: none;
-}
-.mapsense-tron.other {
- fill: #11242d;
- stroke: none;
-}
-.mapsense-tron.urban {
- fill: none;
- stroke: none;
-}
-.mapsense-tron.ne_10m_roads {
- stroke: #36606f;
-}
-.mapsense-tron.motorway {
- stroke: #36606f;
-}
-.mapsense-tron.arterial_major {
- stroke: #295563;
-}
-.mapsense-tron.arterial_minor {
- stroke: #295563;
-}
-.mapsense-tron.road_med {
- stroke: #2b3e49;
-}
-.mapsense-tron.road_minor {
- stroke: #1b333a;
-}
-.mapsense-tron.rail_major {
- stroke: #1b333a;
-}
-.mapsense-tron.rail_minor {
- stroke: #1b333a;
-}
-.mapsense-tron.runway {
- stroke: #1e414c;
-}
-.mapsense-tron.path {
- stroke: #1b333a;
-}
-.mapsense-vintage.labels {
- font-size: 16;
- fill: #4c83b2;
- font-weight: 400;
- text-transform: uppercase;
- stroke-width: .3;
- stroke: grey;
- font-stretch: expanded;
- letter-spacing: 1.5;
- font-family: "Josefin Sans";
-}
-.mapsense-vintage.tile-background {
- fill: #87c8ca;
-}
-.mapsense-vintage.land {
- fill: #fffaf2;
-}
-.mapsense-vintage.water_polygon {
- fill: #87c8ca;
-}
-.mapsense-vintage.country_border,
-.mapsense-vintage.disputed_border {
- stroke: #aaa;
-}
-.mapsense-vintage.state_border {
- stroke: #aaa;
-}
-.mapsense-vintage.water_line {
- stroke: #b5e2e4;
-}
-.mapsense-vintage.park {
- fill: #c6f3bd;
- stroke: none;
-}
-.mapsense-vintage.building {
- fill: #f9ece2;
- stroke: none;
-}
-.mapsense-vintage.school {
- fill: #f0eced;
- stroke: none;
-}
-.mapsense-vintage.urban {
- fill: rgba(243, 210, 191, 0.19);
- stroke: none;
-}
-.mapsense-vintage.ne_10m_roads {
- stroke: #ffb67e;
-}
-.mapsense-vintage.motorway {
- stroke: #f6bd86;
-}
-.mapsense-vintage.arterial_major {
- stroke: #c2d7df;
-}
-.mapsense-vintage.arterial_minor {
- stroke: #cfdddb;
-}
-.mapsense-vintage.road_med {
- stroke: #dae9ea;
-}
-.mapsense-vintage.road_minor {
- stroke: #ededed;
-}
-.mapsense-vintage.rail_major {
- stroke: #c7c4c4;
-}
-.mapsense-vintage.rail_minor {
- stroke: #c7c4c4;
-}
-.mapsense-vintage.runway {
- stroke: #e1dede;
-}
-.mapsense-vintage.path {
- stroke: #e1dede;
-}
-svg.mapsense-map {
- width: 100%;
- height: 100%;
-}
diff --git a/mapsense.js b/mapsense.js
index b9bba46..1f0ce26 100644
--- a/mapsense.js
+++ b/mapsense.js
@@ -2530,83 +2530,6 @@ ms.attribution = function(html) {
return attribution.html(html);
};
-ms.basemap = function() {
- var basemap = ms.topoJson();
- var attribution = ms.attribution('©Mapsense ©OpenStreetMap');
-
- var url = "https://{S}-api.mapsense.co/universes/mapsense.earth/{Z}/{X}/{Y}.topojson?s=10&ringSpan=8";
- var apiKey;
- var style;
-
- function urlWithKey() {
- return ms.url(url + "&api-key=" + apiKey)
- .hosts(["a", "b", "c", "d"]);
- }
-
- var __map__ = basemap.map;
- basemap.map = function(x) {
- var result = __map__.apply(basemap, arguments);
- if (arguments.length)
- attribution.map(x);
- return result;
- };
-
- var __url__ = basemap.url;
- basemap.url = function(x) {
- if (!arguments.length) return url;
- url = x;
- __url__.call(basemap, urlWithKey());
- return basemap;
- };
-
- basemap.apiKey = function(x) {
- if (!arguments.length) return apiKey;
- apiKey = x;
- __url__.call(basemap, urlWithKey());
- return basemap;
- };
-
- basemap.style = function(x) {
- if (!arguments.length) return style;
-
- if (style)
- attribution.container().classList.remove(style);
-
- style = x;
-
- basemap.selection(function(s) {
- var styleClass = style ? "mapsense-" + style : "";
- var zoomClass = "_" + Math.floor(basemap.map().zoom());
- s.attr("class", function(feature) {
- var classes = [ styleClass, zoomClass ];
- if (feature.properties) {
- if (feature.properties.layer)
- classes.push(feature.properties.layer);
- if (feature.properties.sub_layer)
- classes.push(feature.properties.sub_layer);
- }
- return classes.join(" ");
- });
- });
-
- if (style)
- attribution.container().classList.add(style);
-
- return basemap;
- };
-
- basemap.on("load", function(e) {
- var g = e.tile.element;
- var tileBackground = g.querySelector(".tile-background");
- if (tileBackground && style)
- tileBackground.classList.add("mapsense-" + style);
- });
-
- basemap.style("light");
- basemap.tileBackground(true);
- basemap.clip(true);
- return basemap;
-};
ms.stylist = function() {
var attrs = [],
styles = [],
diff --git a/mapsense.min.js b/mapsense.min.js
new file mode 100644
index 0000000..243f9eb
--- /dev/null
+++ b/mapsense.min.js
@@ -0,0 +1,68 @@
+(function(){function Y(c){var b=c.indexOf(":");return 0>b?c:{space:m.ns[c.substring(0,b)],local:c.substring(b+1)}}function E(c){for(c=0;cb.row){var e=c;c=b;b=e}return{x0:c.column,y0:c.row,x1:b.column,y1:b.row,dx:b.column-c.column,dy:b.row-c.row}}function W(c,b,e,a,d){var g=Math.max(e,Math.floor(b.y0));
+a=Math.min(a,Math.ceil(b.y1));if(c.x0==b.x0&&c.y0==b.y0?c.x0+b.dy/c.dy*c.dxb.dx;gb.dy&&(e=f,f=b,b=e);f.dy>c.dy&&(e=f,f=c,c=e);b.dy>c.dy&&(e=b,b=c,c=e);f.dy&&W(c,f,a,d,g);b.dy&&W(c,b,a,d,g)}var R={version:"1.0.0"},m=R,S=
+{x:0,y:0};m.ns={svg:"http://www.w3.org/2000/svg",xlink:"http://www.w3.org/1999/xlink"};m.id=function(){var c=0;return function(){return++c}}();m.svg=function(c){return document.createElementNS(m.ns.svg,c)};m.transform=function(c,b,e,a,d,g){var f={},k,l,p;arguments.length||(c=1,b=d=e=0,a=1,g=0);f.zoomFraction=function(d){if(!arguments.length)return l;l=d;k=Math.floor(l+Math.log(Math.sqrt(c*c+b*b+e*e+a*a))/Math.LN2);p=Math.pow(2,-k);return f};f.apply=function(f){var n=Math.pow(2,-f.zoom),p=Math.pow(2,
+f.zoom-k);return{column:(c*f.column*n+e*f.row*n+d)*p,row:(b*f.column*n+a*f.row*n+g)*p,zoom:f.zoom-k}};f.unapply=function(f){var n=Math.pow(2,-f.zoom),p=Math.pow(2,f.zoom+k);return{column:(f.column*n*a-f.row*n*e-d*a+g*e)/(c*a-b*e)*p,row:(f.column*n*b-f.row*n*c-d*b+g*c)/(e*b-a*c)*p,zoom:f.zoom+k}};f.toString=function(){return"matrix("+[c*p,b*p,e*p,a*p].join(" ")+" 0 0)"};return f.zoomFraction(0)};m.cache=function(c,b){function e(a){h--;b&&b(a);delete f[a.key];if(a.next)a.next.prev=a.prev;else if(l=
+a.prev)l.next=null;if(a.prev)a.prev.next=a.next;else if(k=a.next)k.prev=null}function a(){for(var a=l;h>p&&a;a=a.prev)a.lock||e(a)}var d={},g={},f={},k=null,l=null,p=64,h=0;d.peek=function(a){return f[[a.zoom,a.column,a.row].join("/")]};d.load=function(a,d){var e=[a.zoom,a.column,a.row].join("/"),b=f[e];if(b)return b.prev&&((b.prev.next=b.next)?b.next.prev=b.prev:l=b.prev,b.prev=null,b.next=k,k=k.prev=b),b.lock=1,g[e]=b;b={key:e,column:a.column,row:a.row,zoom:a.zoom,next:k,prev:null,lock:1};c.call(null,
+b,d);g[e]=f[e]=b;k?k.prev=b:l=b;k=b;h++;return b};d.unload=function(a){if(!(a in g))return!1;var f=g[a];f.lock=0;delete g[a];f.request&&f.request.abort(!1)&&e(f);return f};d.locks=function(){return g};d.size=function(f){if(!arguments.length)return p;p=f;a();return d};d.flush=function(){a();return d};d.clear=function(){for(var a in f){var c=f[a];c.request&&c.request.abort(!1);b&&b(f[a]);c.lock&&(c.lock=0,c.element.parentNode.removeChild(c.element))}g={};f={};k=l=null;h=0;return d};return d};m.url=
+function(c){function b(d){var b=0>d.zoom?1:1<f&&(f+=b);else if(0>f||f>=b)return null;return("function"===typeof c?c(d):c).replace(/{(.)}/g,function(a,b){switch(b){case "S":return e[(Math.abs(d.zoom)+d.row+f)%e.length];case "Z":return d.zoom;case "X":return f;case "Y":return d.row;case "B":var c=m.map.coordinateLocation({row:d.row,column:f,zoom:d.zoom}),g=m.map.coordinateLocation({row:d.row+1,column:f+1,zoom:d.zoom}),n=Math.ceil(Math.log(d.zoom)/Math.LN2);return g.lat.toFixed(n)+
+","+c.lon.toFixed(n)+","+c.lat.toFixed(n)+","+g.lon.toFixed(n)}return b})}var e=[],a=!0;b.template=function(a){if(!arguments.length)return c;c=a;return b};b.hosts=function(a){if(!arguments.length)return e;e=a;return b};b.repeat=function(c){if(!arguments.length)return a;a=c;return b};return b};m.dispatch=function(c){var b={};c.on=function(e,a){for(var d=b[e]||(b[e]=[]),g=0;gh.status&&e(h),c())};h.send(null)}var h;d.push(p);c();return{abort:function(a){return b(p)?!0:a&&h?(h.abort(),!0):!1}}}var d=[],g=0;return{text:function(b,c,d){return a(b,function(a){a.responseText&&c(a.responseText)},{mimeType:d})},xml:function(b,c,d){return a(b,function(a){a.responseXML&&c(a.responseXML)},
+e({mimeType:"application/xml"},d))},json:function(b,c,d){return a(b,function(a){a.responseText&&c(JSON.parse(a.responseText))},e({mimeType:"application/json"},d))},octetStream:function(b,c,d){return a(b,function(a){a.response&&c(a.response)},e({mimeType:"application/octet-stream",responseType:"arraybuffer"},d))},image:function(a,e,l){function p(){h=document.createElement("img");h.onerror=function(){g--;c()};h.onload=function(){g--;l(h);c()};h.src=e;a.setAttributeNS(m.ns.xlink,"href",e)}var h;d.push(p);
+c();return{abort:function(a){return b(p)?!0:a&&h?(h.src="about:",!0):!1}}}}}();m.map=function(c){function b(){t&&(ht[1]&&(h=t[1]));n=h-(h=Math.round(h));r=Math.pow(2,n)}function e(){if(G){var a=45/Math.pow(2,h+n-3),b=Math.max(Math.abs(w*k.x+u*k.y),Math.abs(H*k.x+A*k.y)),c=P(B-b*a/l.y),b=P(T+b*a/l.y);p.lat=Math.max(c,Math.min(b,p.lat));c=Math.max(Math.abs(w*k.y+u*k.x),Math.abs(H*k.y+A*k.x));p.lon=Math.max(G[0].lon-c*a/l.x,Math.min(G[1].lon+c*a/l.x,p.lon))}}var a={},d,g,f=S,k=S,l={x:512,
+y:512},p={lat:37.76487,lon:-122.41948},h=12,n=0,r=1,t=[1,18],C=0,u=1,w=0,A=1,H=0,B=-180,T=180,G=[{lat:P(B),lon:-Infinity},{lat:P(T),lon:Infinity}],O=m.interact();d="string"===typeof c?document.querySelector(c):c;if(!d)throw Error("Invalid map container.");a.interact=function(b){if(!arguments.length)return O;O.map(b?a:null)};a.locationCoordinate=function(a){a=m.map.locationCoordinate(a);var b=Math.pow(2,h);a.column*=b;a.row*=b;a.zoom+=h;return a};a.coordinateLocation=m.map.coordinateLocation;a.coordinatePoint=
+function(a,b){var c=Math.pow(2,h-b.zoom),d=Math.pow(2,h-a.zoom),f=(b.column*c-a.column*d)*l.x*r,c=(b.row*c-a.row*d)*l.y*r;return{x:k.x+u*f-w*c,y:k.y+w*f+u*c}};a.pointCoordinate=function(a,b){var c=Math.pow(2,h-a.zoom),d=(b.x-k.x)/r,f=(b.y-k.y)/r;return{column:a.column*c+(A*d-H*f)/l.x,row:a.row*c+(H*d+A*f)/l.y,zoom:h}};a.locationPoint=function(a){var b=Math.pow(2,h+n-3)/45,c=(a.lon-p.lon)*b*l.x;a=(Q(p.lat)-Q(a.lat))*b*l.y;return{x:k.x+u*c-w*a,y:k.y+w*c+u*a}};a.pointLocation=function(a){var b=45/Math.pow(2,
+h+n-3),c=(a.x-k.x)*b;a=(a.y-k.y)*b;return{lon:p.lon+(A*c-H*a)/l.x,lat:P(Q(p.lat)-(H*c+A*a)/l.y)}};var x=m.svg("rect");x.setAttribute("visibility","hidden");x.setAttribute("pointer-events","all");var I=m.svg("svg");I.setAttribute("class","mapsense-map");I.appendChild(x);var F=document.createElement("div");F.style.setProperty("position","relative");F.style.setProperty("width","100%");F.style.setProperty("height","100%");F.appendChild(I);d.appendChild(F);a.container=function(){return d};a.relativeContainer=
+function(){return F};a.svgContainer=function(){return I};a.focusableParent=function(){for(var a=d;a;a=a.parentNode)if(0<=a.tabIndex)return a;return window};a.mouse=function(a){var b=(I.ownerSVGElement||I).createSVGPoint();if(0>V&&(window.scrollX||window.scrollY)){var c=document.body.appendChild(m.svg("svg"));c.style.position="absolute";c.style.top=c.style.left="0px";var d=c.getScreenCTM();V=!(d.f||d.e);document.body.removeChild(c)}V?(b.x=a.pageX,b.y=a.pageY):(b.x=a.clientX,b.y=a.clientY);return b.matrixTransform(I.getScreenCTM().inverse())};
+a.size=function(b){if(!arguments.length)return f;g=b;return a.resize()};a.resize=function(){if(g)f=g,E.remove(a);else{x.setAttribute("width","100%");x.setAttribute("height","100%");var b=x.getBBox();f={x:b.width,y:b.height};E.add(a)}x.setAttribute("width",f.x);x.setAttribute("height",f.y);k={x:f.x/2,y:f.y/2};e();a.dispatch({type:"resize"});return a};a.tileSize=function(b){if(!arguments.length)return l;l=b;a.dispatch({type:"move"});return a};a.center=function(b){if(!arguments.length)return p;p=b;e();
+a.dispatch({type:"move"});return a};a.panBy=function(b){var c=45/Math.pow(2,h+n-3),d=b.x*c;b=b.y*c;return a.center({lon:p.lon+(H*b-A*d)/l.x,lat:P(Q(p.lat)+(H*d+A*b)/l.y)})};a.centerRange=function(b){if(!arguments.length)return G;(G=b)?(B=-90G[0].lat?Q(G[1].lat):Infinity):(B=-Infinity,T=Infinity);e();a.dispatch({type:"move"});return a};a.zoom=function(c){if(!arguments.length)return h+n;h=c;b();return a.center(p)};a.zoomBy=function(c,d,f){if(2>arguments.length)return a.zoom(h+
+n+c);3>arguments.length&&(f=a.pointLocation(d));h=h+n+c;b();var e=a.locationPoint(f);return a.panBy({x:d.x-e.x,y:d.y-e.y})};a.zoomRange=function(b){if(!arguments.length)return t;t=b;return a.zoom(h+n)};a.extent=function(c){if(!arguments.length)return[a.pointLocation({x:0,y:f.y}),a.pointLocation({x:f.x,y:0})];var d=a.locationPoint(c[0]),e=a.locationPoint(c[1]),g=Math.max((e.x-d.x)/f.x,(d.y-e.y)/f.y),d=a.pointLocation({x:(d.x+e.x)/2,y:(d.y+e.y)/2});h=h+n-Math.log(g)/Math.LN2;b();return a.center(d)};
+a.angle=function(b){if(!arguments.length)return C;C=b;u=Math.cos(C);w=Math.sin(C);A=Math.cos(-C);H=Math.sin(-C);e();a.dispatch({type:"move"});return a};a.add=function(b){b.map(a);return a};a.remove=function(b){b.map(null);return a};a.dispatch=m.dispatch(a);a.interact(!0);return a.resize()};E.maps=[];E.add=function(c){for(var b=0;bd;)u[d]=u[++d];u[d]=c}}function a(a){for(var b=u[0].nextSibling;C>a;C--){r.insertBefore(u[-1],b);r.insertBefore(u[2],u[-4]);for(var c=u[2],d=2;-4c?1:1<f&&(f+=d);return{locationPoint:function(a){a=m.map.locationCoordinate(a);var b=Math.pow(2,c-a.zoom);return{x:F.x*(b*a.column-f),y:F.y*(b*a.row-e)}}}}function c(a,d,e){for(var g=v.zoom,h=2-M,k=4+M;a>m,row:e>>m,zoom:g-m}))&&l.ready){K[l.key]=f.load(q);l.proxyCount++;n.proxyRefs[l.key]=l;break}}K[n.key]=n}}function d(a){return Math.round(256*a)/256}var h=g.map(),n=h.zoom(),t=n-(n=Math.round(n)),x=h.size(),
+w=h.angle(),F=h.tileSize(),D=h.locationCoordinate(h.center());if(C!=n){Cn?a(n):C=n;for(var q=-4;2>=q;q++){var J=u[q];J.setAttribute("class","zoom"+(0>q?"":"+")+q+" zoom"+(n+q));J.setAttribute("transform","scale("+Math.pow(2,-q)+")")}}var v=h.pointCoordinate(D,S),q=h.pointCoordinate(D,{x:x.x,y:0}),n=h.pointCoordinate(D,x),h=h.pointCoordinate(D,{x:0,y:x.y}),J=D.column,L=D.row;D.column=Math.round((Math.round(F.x*D.column)+(x.x&1)/2)/F.x);D.row=Math.round((Math.round(F.y*D.row)+(x.y&1)/2)/F.y);
+var J=J-D.column,L=L-D.row,z=d(Math.pow(2,t));r.setAttribute("transform","translate("+Math.round(x.x/2-J*F.x*z)+","+Math.round(x.y/2-L*F.y*z)+")"+(w?"rotate("+w/Math.PI*180+")":"")+(t?"scale("+z+")":"")+(y?y.zoomFraction(t):""));y&&(v=y.unapply(v),q=y.unapply(q),n=y.unapply(n),h=y.unapply(h),D=y.unapply(D));var M=p?p(v.zoom)-v.zoom:0;M&&(y=Math.pow(2,M),v.column*=y,v.row*=y,q.column*=y,q.row*=y,n.column*=y,n.row*=y,h.column*=y,h.row*=y,v.zoom=q.zoom=n.zoom=h.zoom+=M);var t=f.locks(),K={},N;for(N in t)t[N].proxyCount=
+0;l&&-5M&&(x=0>v.zoom?1:1<>q<>q<=w;w++)u[w]=r.appendChild(m.svg("g"));for(w=2;1<=w;w--)u[w]=r.appendChild(m.svg("g"));u[0]=r.appendChild(m.svg("g"));g.map=function(a){if(!arguments.length)return n;
+if(n){if(n==a)return r.parentNode.appendChild(r),g;n.off("move",d).off("resize",d);r.parentNode.removeChild(r)}if(n=a)n.svgContainer().appendChild(r),g.init&&g.init(r),n.on("move",d).on("resize",d),d();return g};g.container=function(){return r};g.levels=function(){return u};g.id=function(a){if(!arguments.length)return h;h=a;r.setAttribute("id",a);return g};g.visible=function(a){if(!arguments.length)return l;(l=a)?r.removeAttribute("visibility"):r.setAttribute("visibility","hidden");n&&d();return g};
+g.transform=function(a){if(!arguments.length)return t;t=a;n&&d();return g};g.zoom=function(a){if(!arguments.length)return p;p="function"==typeof a||null==a?a:function(){return a};n&&d();return g};g.tile=function(a){if(!arguments.length)return k;k=a;n&&d();return g};g.reload=function(){f.clear();n&&d();return g};g.dispatch=m.dispatch(g);g.on("load",function(a){if(a.tile.proxyRefs){for(var b in a.tile.proxyRefs){var c=a.tile.proxyRefs[b];0>=--c.proxyCount&&f.unload(b)&&c.element.parentNode.removeChild(c.element)}delete a.tile.proxyRefs}});
+return g};m.image=function(){var c=m.layer(function(e){var a=e.element=m.svg("image"),d=c.map().tileSize();a.setAttribute("preserveAspectRatio","none");a.setAttribute("width",d.x);a.setAttribute("height",d.y);"function"==typeof b?(a.setAttribute("opacity",0),d=b(e),null!=d?e.request=m.queue.image(a,d,function(b){delete e.request;e.ready=!0;e.img=b;a.removeAttribute("opacity");c.dispatch({type:"load",tile:e})}):(e.ready=!0,c.dispatch({type:"load",tile:e}))):(e.ready=!0,null!=b&&a.setAttributeNS(m.ns.xlink,
+"href",b),c.dispatch({type:"load",tile:e}))},function(b){b.request&&b.request.abort(!0)}),b;c.url=function(e){if(!arguments.length)return b;b="string"==typeof e&&/{.}/.test(e)?m.url(e):e;return c.reload()};return c};m.geoJson=function(c){function b(a){var b={lat:0,lon:0};return function(c,d){b.lat=c[1];b.lon=c[0];var f=a(b);d.x=f.x;d.y=f.y;return f}}function e(a){return d3.geo.path().projection({stream:function(b){return{point:function(c,d){d=Math.min(89.999999,d);d=Math.max(-89.999999,d);var f=a.locationPoint({lon:c,
+lat:d});b.point(Math.round(2*f.x)/2,Math.round(2*f.y)/2)},sphere:function(){b.sphere()},lineStart:function(){b.lineStart()},lineEnd:function(){b.lineEnd()},polygonStart:function(){b.polygonStart()},polygonEnd:function(){b.polygonEnd()}}}})}function a(a,b){b(a.geometry.coordinates,a);return a}function d(a,b){for(var c=a.geometry.coordinates.length,d=[],f=0;fc.length||c.some(isNaN))return!0;var d=a.size();a.zoomBy(c[0]-a.zoom(),{x:d.x/2,y:d.y/2},{lat:Math.min(89.99999999,Math.max(-89.99999999,c[1])),lon:c[2]})},f=function(a){var b=a.center();a=a.zoom();var c=Math.max(0,Math.ceil(Math.log(a)/Math.LN2));return"#"+a.toFixed(2)+"/"+b.lat.toFixed(c)+"/"+b.lon.toFixed(c)};e.map=function(a){if(!arguments.length)return d;
+d&&(d.off("move",c),window.removeEventListener("hashchange",b,!1));if(d=a)d.on("move",c),window.addEventListener("hashchange",b,!1),location.hash?b():c();return e};e.parser=function(a){if(!arguments.length)return g;g=a;return e};e.formatter=function(a){if(!arguments.length)return f;f=a;return e};return e};m.touch=function(){function c(a){var b=-1,c=a.touches.length,d=Date.now();if(1==c&&300>d-g){var m=e.zoom();e.zoomBy(1-m+Math.floor(m),e.mouse(a.touches[0]));a.preventDefault()}g=d;f=e.zoom();for(k=
+e.angle();++bG+250&&z.panBy(q)}function e(a){if(a.shiftKey)return v={x0:z.mouse(a)},z.focusableParent().focus(),h(a)}function a(a){v&&(v.x1=z.mouse(a),L.setAttribute("x",Math.min(v.x0.x,v.x1.x)),L.setAttribute("y",Math.min(v.x0.y,v.x1.y)),L.setAttribute("width",Math.abs(v.x0.x-v.x1.x)),L.setAttribute("height",
+Math.abs(v.x0.y-v.x1.y)),L.removeAttribute("display"))}function d(a){A.setAttribute("class","compass");v&&(v.x1&&(z.extent([z.pointLocation({x:Math.min(v.x0.x,v.x1.x),y:Math.max(v.x0.y,v.x1.y)}),z.pointLocation({x:Math.max(v.x0.x,v.x1.x),y:Math.min(v.x0.y,v.x1.y)})]),L.setAttribute("display","none")),v=null);D&&(clearInterval(D),D=0)}function g(a){return function(){a?this.setAttribute("class","active"):this.removeAttribute("class");q=a}}function f(a){return function(b){A.setAttribute("class","compass active");
+var c=z.zoom();z.zoom(0>a?Math.ceil(c)-1:Math.floor(c)+1);return h(b)}}function k(a){return function(b){z.zoom(a);return h(b)}}function l(){this.setAttribute("class","active")}function p(){this.removeAttribute("class")}function h(a){a.stopPropagation();a.preventDefault();return!1}function n(a){var b=Math.SQRT1_2*B,d=.7*B,e=.2*B,f=m.svg("g"),k=f.appendChild(m.svg("path")),l=f.appendChild(m.svg("path"));k.setAttribute("class","direction");k.setAttribute("pointer-events","all");k.setAttribute("d","M0,0L"+
+b+","+b+"A"+B+","+B+" 0 0,1 "+-b+","+b+"Z");l.setAttribute("class","chevron");l.setAttribute("d","M"+e+","+(d-e)+"L0,"+d+" "+-e+","+(d-e));l.setAttribute("pointer-events","none");f.addEventListener("mousedown",c,!1);f.addEventListener("mouseover",g(a),!1);f.addEventListener("mouseout",g(null),!1);f.addEventListener("dblclick",h,!1);return f}function r(a){var b=.4*B,c=b/2,d=m.svg("g"),e=d.appendChild(m.svg("path")),g=d.appendChild(m.svg("path")),k=d.appendChild(m.svg("path")),n=d.appendChild(m.svg("path"));
+e.setAttribute("class","back");e.setAttribute("d","M"+-b+",0V"+-b+"A"+b+","+b+" 0 1,1 "+b+","+-b+"V0Z");g.setAttribute("class","direction");g.setAttribute("d",e.getAttribute("d"));k.setAttribute("class","chevron");k.setAttribute("d","M"+-c+","+-b+"H"+c+(0arguments.length?null:f});return c};c.title=function(b){a=b;return c};return c};"function"===typeof define&&define.amd?define(R):"object"===typeof module&&module.exports&&(module.exports=R);this.mapsense=R})();
diff --git a/package.json b/package.json
index f366c64..5b5dcbe 100644
--- a/package.json
+++ b/package.json
@@ -12,11 +12,5 @@
"url": "https://github.com/mapsense/mapsense.js/blob/master/LICENSE"
}
],
- "main": "mapsense.js",
- "devDependencies": {
- "less": "^2.5.0"
- },
- "scripts": {
- "less": "lessc styles/mapsense.less mapsense.css"
- }
+ "main": "mapsense.js"
}
diff --git a/src/Basemap.js b/src/Basemap.js
deleted file mode 100644
index 7f0f3ea..0000000
--- a/src/Basemap.js
+++ /dev/null
@@ -1,77 +0,0 @@
-ms.basemap = function() {
- var basemap = ms.topoJson();
- var attribution = ms.attribution('©Mapsense ©OpenStreetMap');
-
- var url = "https://{S}-api.mapsense.co/universes/mapsense.earth/{Z}/{X}/{Y}.topojson?s=10&ringSpan=8";
- var apiKey;
- var style;
-
- function urlWithKey() {
- return ms.url(url + "&api-key=" + apiKey)
- .hosts(["a", "b", "c", "d"]);
- }
-
- var __map__ = basemap.map;
- basemap.map = function(x) {
- var result = __map__.apply(basemap, arguments);
- if (arguments.length)
- attribution.map(x);
- return result;
- };
-
- var __url__ = basemap.url;
- basemap.url = function(x) {
- if (!arguments.length) return url;
- url = x;
- __url__.call(basemap, urlWithKey());
- return basemap;
- };
-
- basemap.apiKey = function(x) {
- if (!arguments.length) return apiKey;
- apiKey = x;
- __url__.call(basemap, urlWithKey());
- return basemap;
- };
-
- basemap.style = function(x) {
- if (!arguments.length) return style;
-
- if (style)
- attribution.container().classList.remove(style);
-
- style = x;
-
- basemap.selection(function(s) {
- var styleClass = style ? "mapsense-" + style : "";
- var zoomClass = "_" + Math.floor(basemap.map().zoom());
- s.attr("class", function(feature) {
- var classes = [ styleClass, zoomClass ];
- if (feature.properties) {
- if (feature.properties.layer)
- classes.push(feature.properties.layer);
- if (feature.properties.sub_layer)
- classes.push(feature.properties.sub_layer);
- }
- return classes.join(" ");
- });
- });
-
- if (style)
- attribution.container().classList.add(style);
-
- return basemap;
- };
-
- basemap.on("load", function(e) {
- var g = e.tile.element;
- var tileBackground = g.querySelector(".tile-background");
- if (tileBackground && style)
- tileBackground.classList.add("mapsense-" + style);
- });
-
- basemap.style("light");
- basemap.tileBackground(true);
- basemap.clip(true);
- return basemap;
-};
diff --git a/styles/attribution.less b/styles/attribution.less
deleted file mode 100644
index 76472c1..0000000
--- a/styles/attribution.less
+++ /dev/null
@@ -1,20 +0,0 @@
-.mapsense-attribution {
- background-color: rgba(0, 0, 0, 0.5);
- color: #ccc;
-
- position: absolute;
- bottom: 0;
- right: 0;
- padding: 10px;
-
- font-size: 11px;
- font-family: sans-serif;
- line-height: 5px;
-
- text-decoration: none;
-
- a {
- color: #ccc;
- text-decoration: none;
- }
-}
diff --git a/styles/blackprint.less b/styles/blackprint.less
deleted file mode 100644
index 2f3c229..0000000
--- a/styles/blackprint.less
+++ /dev/null
@@ -1,73 +0,0 @@
-.mapsense-blackprint {
- &.labels {
- font-size: 18;
- fill: #999;
- font-weight: 200;
- text-transform: uppercase;
- stroke-width: .3;
- /*stroke: grey;*/
- font-stretch: expanded;
- letter-spacing: 1.5;
- font-family: "Josefin Sans";
- }
-
- &.tile-background {
- fill: rgb(20,20,20);
- }
- &.land {
- fill: rgb(0,0,0);
- stroke: rgb(189, 188, 188);
- stroke-width: 1;
- }
- &.agriculture {
- display: none;
- }
-
- &.water_polygon {
- fill:rgb(20,20,20);
- }
- &.water_line {
- stroke: rgb(50, 50, 50);
- stroke-width: 1;
- opacity: .3;
- fill: none;
- }
- &.park {
- fill: rgba(15, 15, 15, .3);
- stroke: none;
- }
- &.building {
- fill: none;
- stroke: rgb(80, 80, 80);
- stroke-width: .52;
- }
- &.school {
- fill: rgb(15, 15, 15);
- stroke: none;
- }
- &.other {
- stroke: rgb(50, 50, 50);
- }
- &.urban {
- fill: none;
- stroke: none;
- }
-
- &.roads {
- stroke: #222;
- }
- &.motorway, &.ne_10m_roads {
- stroke: #333;
- }
- &.country_border, &.disputed_border {
- stroke: grey;
- stroke-dasharray: 3 3;
- stroke-width: 1;
- fill: none;
- }
- &.state_border {
- stroke: grey;
- stroke-dasharray: 3 3;
- fill: none;
- }
-}
diff --git a/styles/compass.less b/styles/compass.less
deleted file mode 100644
index 1814ee9..0000000
--- a/styles/compass.less
+++ /dev/null
@@ -1,41 +0,0 @@
-.compass {
- .back {
- fill: #eee;
- fill-opacity: .8;
- }
-
- .fore {
- stroke: #999;
- stroke-width: 1.5px;
- }
-
- rect.back.fore {
- fill: #999;
- fill-opacity: .3;
- stroke: #eee;
- stroke-width: 1px;
- shape-rendering: crispEdges;
- }
-
- .direction {
- fill: none;
- }
-
- .chevron {
- fill: none;
- stroke: #999;
- stroke-width: 5px;
- }
-
- .zoom .chevron {
- stroke-width: 4px;
- }
-
- .active .chevron, .chevron.active {
- stroke: #fff;
- }
-
- &.active .active .direction {
- fill: #999;
- }
-}
diff --git a/styles/dark.less b/styles/dark.less
deleted file mode 100644
index 24e988c..0000000
--- a/styles/dark.less
+++ /dev/null
@@ -1,88 +0,0 @@
-.mapsense-dark {
- &.labels {
- font-size: 14;
- fill: #777;
- font-weight: 600;
- text-transform: uppercase;
- stroke-width: .3;
- /*stroke: grey;*/
- font-stretch: expanded;
- letter-spacing: 1.5;
- font-family: "Josefin Sans";
- }
-
- &.tile-background {
- fill: rgb(58, 66, 80);
- }
- &.land {
- fill: rgb(22,22,25);
- }
- &.agriculture {
- display: none;
- }
- &.country_border, &.disputed_border {
- stroke: #777;
- }
- &.state_border {
- stroke: #777;
- }
- &.water_polygon {
- fill: rgb(58, 66, 80);
- stroke: none;
- }
- &.water_line {
- stroke: rgb(81, 98, 131);
- stroke-width: 1;
- fill: none;
- }
- &.park {
- fill: rgb(38, 128, 97);
- }
- &.building {
- fill: #222;
- stroke: black;
- }
- &.school {
- fill: rgb(53, 22, 30);
- }
- &.other {
- fill: rgba(76, 69, 67, 0.15);
- stroke: black;
- }
- &.urban {
- fill: rgb(0,0,0);
- stroke: none;
- }
- &.ne_10m_roads {
- stroke: rgb(124, 92, 44);
- }
- &.motorway {
- stroke: rgb(124, 92, 44);
- }
- &.arterial_major {
- stroke: rgb(74, 71, 42);
- }
- &.arterial_minor {
- stroke: rgb(60,60,60);
- }
- &.road_med {
- stroke: rgb(60,60,60);
- }
- &.road_minor {
- stroke: rgb(50,50,50);
- }
- &.rail_major {
- stroke: rgb(50,50,40);
- fill: none;
- }
- &.rail_minor {
- stroke: rgb(50,50,40);
- fill: none;
- }
- &.runway {
- stroke: #333;
- }
- &.path {
- stroke: rgb(50,50,40);
- }
-}
diff --git a/styles/grayscale.less b/styles/grayscale.less
deleted file mode 100644
index 6f769bb..0000000
--- a/styles/grayscale.less
+++ /dev/null
@@ -1,87 +0,0 @@
-.mapsense-grayscale {
- &.labels {
- font-size: 14;
- fill: #777;
- font-weight: 600;
- text-transform: uppercase;
- stroke-width: .3;
- /*stroke: grey;*/
- font-stretch: expanded;
- letter-spacing: 1.5;
- font-family: "Josefin Sans";
- }
-
- &.tile-background {
- fill: rgb(170, 169, 175);
- }
-
- &.land {
- fill: rgb(232, 229, 229);
- stroke:none;
- }
- &.water_polygon {
- fill: rgb(170, 169, 175);
- }
-
- &.water_line {
- stroke: gray;
- stroke-width: 1;
- }
-
- &.park {
- fill: rgb(202, 212, 202);
- }
- &.building {
- fill: rgb(240, 240, 240);
- }
- &.school {
- fill: rgb(220,220,220);
- stroke: none;
- }
- &.other {
- fill: rgb(203, 203, 203);
- stroke: none;
- }
- &.urban {
- fill: none;
- stroke: none;
- }
- &.ne_10m_roads {
- stroke: #ccc;
- }
- &.motorway {
- stroke: #CCC;
- }
- &.arterial_major {
- stroke: rgb(210, 210, 210);
- }
- &.arterial_minor {
- stroke: rgb(215, 215, 215);
- }
- &.road_med {
- stroke: #DDD;
- }
- &.road_minor {
- stroke: #DDD;
- }
- &.rail_major {
- stroke: lightgray;
- }
- &.rail_minor {
- stroke: lightgray;
- }
- &.runway {
- stroke: rgb(242, 239, 239);
- }
- &.path {
- stroke: #DDD;
- }
-
- &.country_border, &.disputed_border {
- stroke: #BBB;
- }
-
- &.state_border {
- stroke: #bbb;
- }
-}
diff --git a/styles/light.less b/styles/light.less
deleted file mode 100644
index 22ef438..0000000
--- a/styles/light.less
+++ /dev/null
@@ -1,88 +0,0 @@
-.mapsense-light {
- &.labels {
- font-size: 14;
- fill: #777;
- font-weight: 600;
- text-transform: uppercase;
- stroke-width: .3;
- /*stroke: grey;*/
- font-stretch: expanded;
- letter-spacing: 1.5;
- font-family: "Josefin Sans";
- }
-
- &.tile-background {
- fill: rgb(255, 255, 255);
- }
- &.land {
- fill: rgb(221, 221, 218);
- stroke: none;
- }
-
- &.water_polygon {
- fill: rgb(255, 255, 255);
- stroke: none;
- }
-
- &.country_border, &.disputed_border {
- stroke: #aaa;
- }
- &.state_border {
- stroke: #aaa;
- }
- &.water_line {
- stroke: rgb(200, 208, 223);
- }
- &.park {
- fill: rgb(202, 206, 185);
- stroke: none;
- }
- &.building {
- fill: rgb(215, 214, 209);
- }
- &.school {
- fill: rgba(234, 221, 219, 1);
- stroke: none;
- }
- &.other {
- fill: none;
- stroke: none;
- }
- &.urban {
- fill: rgba(177, 135, 74, 0.07);
- stroke: none;
- }
-
- &.ne_10m_roads {
- stroke: rgb(237, 237, 237);
- }
- &.motorway {
- stroke: rgb(246, 244, 243);
-
- }
- &.arterial_major {
- stroke: rgb(244, 244, 239);
- }
- &.arterial_minor {
- stroke: rgb(241, 237, 237);
- }
- &.road_med {
- stroke: rgb(246, 243, 243);
- }
- &.road_minor {
- stroke: rgb(250, 248, 248);
- }
-
- &.rail_major {
- stroke: #ccc
- }
- &.rail_minor {
- stroke: #ccc
- }
- &.runway {
- stroke: #ccc;
- }
- &.path {
- stroke: #ccc;
- }
-}
diff --git a/styles/mapsense.less b/styles/mapsense.less
deleted file mode 100644
index f132184..0000000
--- a/styles/mapsense.less
+++ /dev/null
@@ -1,16 +0,0 @@
-@import "attribution";
-@import "compass";
-@import "zoom-dependent-styles";
-@import "blackprint";
-@import "dark";
-@import "grayscale";
-@import "light";
-@import "parchment";
-@import "sketch";
-@import "tron";
-@import "vintage";
-
-svg.mapsense-map {
- width: 100%;
- height: 100%;
-}
diff --git a/styles/parchment.less b/styles/parchment.less
deleted file mode 100644
index 83b097f..0000000
--- a/styles/parchment.less
+++ /dev/null
@@ -1,86 +0,0 @@
-.mapsense-parchment {
- &.labels {
- font-size: 14;
- fill: #777;
- font-weight: 600;
- text-transform: uppercase;
- stroke-width: .3;
- /*stroke: grey;*/
- font-stretch: expanded;
- letter-spacing: 1.5;
- font-family: "Josefin Sans";
- }
-
- &.tile-background {
- fill: rgb(184, 189, 193);
- }
-
- &.land {
- fill: rgb(227, 214, 197);
- stroke: rgb(151, 111, 96);
- stroke-width: 1;
- }
- &.water_polygon {
- fill: rgb(184, 189, 193);
- stroke: rgb(151, 111, 96);
- stroke-width: .5;
- }
- &.water_line {
- stroke: rgb(184, 189, 193);
- }
- &.park {
- fill: rgb(203, 188, 166);
- }
- &.building {
- fill: rgb(212, 201, 186);
- }
- &.school {
- fill: rgba(90, 46, 5, 0.12);
- stroke: none;
- }
- &.other {
- fill: rgb(227, 214, 197);
- stroke: none;
- }
- &.urban {
- fill: rgba(255, 255, 255, 0.3);
- stroke: none;
- }
- &.ne_10m_roads {
- stroke: rgb(174, 162, 149);
- }
- &.motorway {
- stroke: rgb(174, 162, 149);
- }
- &.arterial_major {
- stroke: rgb(213, 197, 183);
- }
- &.arterial_minor {
- stroke: rgb(202, 183, 170);
- }
- &.road_med {
- stroke: rgb(216, 200, 187);
- }
- &.road_minor {
- stroke: rgb(216, 200, 187);
- }
- &.rail_major {
- stroke: rgb(189, 168, 151);
- }
- &.rail_minor {
- stroke: rgb(189, 168, 151);
- }
- &.runway {
- stroke: rgb(237, 229, 213);
- }
- &.path {
- stroke: rgb(237, 229, 213);
- }
-
- &.country_border, &.disputed_border {
- stroke: rgb(151, 111, 96);
- }
- &.state_border {
- stroke: rgb(151, 111, 96);
- }
-}
diff --git a/styles/sketch.less b/styles/sketch.less
deleted file mode 100644
index c606cd7..0000000
--- a/styles/sketch.less
+++ /dev/null
@@ -1,84 +0,0 @@
-.mapsense-sketch {
- &.labels {
- font-size: 14;
- fill: #777;
- font-weight: 600;
- text-transform: uppercase;
- stroke-width: .3;
- font-stretch: expanded;
- letter-spacing: 1.5;
- font-family: "Josefin Sans";
- }
-
- &.tile-background {
- fill: rgb(240, 240, 240);
- }
- &.land {
- fill: rgb(255, 255, 255);
- stroke: rgb(189, 188, 188);
- stroke-width: 1;
- }
- &.water_polygon {
- fill: rgb(240, 240, 240);
- stroke: rgb(189, 188, 188);
- stroke-width: .5;
- }
- &.water_line {
- stroke: rgb(204, 202, 202);
- }
- &.park {
- fill: none;
- stroke-width: .55;
- stroke: rgb(218, 216, 216);
- }
- &.building {
- fill: none;
- stroke: rgb(212, 212, 212);
- stroke-width: .52;
- }
- &.school {
- fill: none;
- stroke: rgb(218, 218, 218);
- }
- &.urban {
- fill: none;
- stroke: none;
- }
-
- &.ne_10m_roads {
- stroke: #eee;
- }
- &.motorway {
- stroke: #ddd;
- }
- &.arterial_major {
- stroke: #eee;
- }
- &.arterial_minor {
- stroke: #eee;
- }
- &.road_med {
- stroke: #eee;
- }
- &.road_minor {
- stroke: rgb(245, 245, 245);
- }
- &.rail_major {
- stroke: #ddd;
- }
- &.rail_minor {
- stroke: #ddd;
- }
- &.runway {
- stroke: #ddd;
- }
- &.path {
- stroke: rgb(245, 245, 245);
- }
- &.country_border, &.disputed_border {
- stroke: #ccc;
- }
- &.state_border {
- stroke: #ccc;
- }
-}
diff --git a/styles/tron.less b/styles/tron.less
deleted file mode 100644
index 05cc5f7..0000000
--- a/styles/tron.less
+++ /dev/null
@@ -1,83 +0,0 @@
-.mapsense-tron {
- &.labels {
- font-size: 14;
- fill: #888;
- font-weight: 600;
- text-transform: uppercase;
- stroke-width: .3;
- font-stretch: expanded;
- letter-spacing: 1.5;
- font-family: "Josefin Sans";
- }
-
- &.tile-background {
- fill: rgb(0, 0, 0);
- }
- &.land {
- fill: rgb(23, 44, 58);
- stroke: none;
- }
-
- &.water_polygon {
- stroke: none;
- fill: black;
- }
- &.country_border, &.disputed_border {
- stroke: #666;
- }
- &.state_border {
- stroke: #666;
- }
- &.water_line {
- stroke: rgb(17, 17, 25);
- }
- &.park {
- fill: rgb(6, 10, 16);
- }
- &.building {
- fill: rgb(7, 33, 42);
- stroke: none;
- }
- &.school {
- fill: rgb(22, 37, 50);
- stroke: none;
- }
- &.other {
- fill: rgb(17, 36, 45);
- stroke: none;
- }
- &.urban {
- fill: none;
- stroke: none;
- }
- &.ne_10m_roads {
- stroke: rgb(54, 96, 111);
- }
- &.motorway {
- stroke: rgb(54, 96, 111);
- }
- &.arterial_major {
- stroke: rgb(41, 85, 99);
- }
- &.arterial_minor {
- stroke: rgb(41, 85, 99);
- }
- &.road_med {
- stroke: rgb(43, 62, 73);
- }
- &.road_minor {
- stroke: rgb(27, 51, 58);
- }
- &.rail_major {
- stroke: rgb(27, 51, 58);
- }
- &.rail_minor {
- stroke: rgb(27, 51, 58);
- }
- &.runway {
- stroke: rgb(30, 65, 76);
- }
- &.path {
- stroke: rgb(27, 51, 58);
- }
-}
diff --git a/styles/vintage.less b/styles/vintage.less
deleted file mode 100644
index 1a17e87..0000000
--- a/styles/vintage.less
+++ /dev/null
@@ -1,80 +0,0 @@
-.mapsense-vintage {
- &.labels {
- font-size: 16;
- fill: #4c83b2;
- font-weight: 400;
- text-transform: uppercase;
- stroke-width: .3;
- stroke: grey;
- font-stretch: expanded;
- letter-spacing: 1.5;
- font-family: "Josefin Sans";
- }
-
- &.tile-background {
- fill: rgb(135, 200, 202);
- }
- &.land {
- fill: rgb(255, 250, 242);
- }
-
- &.water_polygon {
- fill: rgb(135, 200, 202);
- }
-
- &.country_border, &.disputed_border {
- stroke: #aaa;
- }
- &.state_border {
- stroke: #aaa;
- }
- &.water_line {
- stroke: rgb(181, 226, 228);
- }
- &.park {
- fill: rgb(198, 243, 189);
- stroke: none;
- }
- &.building {
- fill: rgb(249, 236, 226);
- stroke: none;
- }
- &.school {
- fill: rgb(240, 236, 237);
- stroke: none;
- }
- &.urban {
- fill: rgba(243, 210, 191, 0.19);
- stroke: none;
- }
- &.ne_10m_roads {
- stroke: rgb(255, 182, 126);
- }
- &.motorway {
- stroke: rgb(246, 189, 134);
- }
- &.arterial_major {
- stroke: rgb(194, 215, 223);
- }
- &.arterial_minor {
- stroke: rgb(207, 221, 219);
- }
- &.road_med {
- stroke: rgb(218, 233, 234);
- }
- &.road_minor {
- stroke: rgb(237, 237, 237);
- }
- &.rail_major {
- stroke: rgb(199, 196, 196);
- }
- &.rail_minor {
- stroke: rgb(199, 196, 196);
- }
- &.runway {
- stroke: rgb(225, 222, 222);
- }
- &.path {
- stroke: rgb(225, 222, 222);
- }
-}
diff --git a/styles/zoom-dependent-styles.less b/styles/zoom-dependent-styles.less
deleted file mode 100644
index d8bda83..0000000
--- a/styles/zoom-dependent-styles.less
+++ /dev/null
@@ -1,322 +0,0 @@
-path {
- vector-effect: non-scaling-stroke;
- stroke-linejoin: round;
- stroke-linecap: round;
-}
-
-/* zoom-dependent styling for roads & admins */
-/* general rules */
-path._undefined.none {
- fill: none;
-}
-
-path.landuse.other { fill: none; stroke: none; }
-
-.park {
- opacity: .3;
-}
-
-.water_line {
- opacity: .5;
- fill: none;
-}
-
-.runway {
- opacity: .7;
-}
-
-.rail_major, .rail_minor {
- stroke-dasharray: 4, 3;
-}
-
-.roads, .admin {
- fill:none;
-}
-
-.disputed_border, .state_border {
- stroke-dasharray: 8, 3;
-}
-
-/* admins */
-.country_border {
- stroke-width: 2;
-}
-
-.admin._3, .admin._2, .admin._1 {
- stroke-width: 1;
-}
-
-.admin._4 {
- stroke-width: 1.5;
-}
-
-.state_border._2 {
- stroke-width: .3;
-}
-
-.state_border._3, .state_border._4 {
- stroke-width: .5;
-}
-
-.state_border._8, .state_border._9, .state_border._10, .state_border._11 {
- stroke-width: 1.5;
- opacity: .75;
-}
-
-.state_border._12, .state_border._13, .state_border._14, .state_border._15, .state_border._16, .state_border._17 {
- stroke-width: 2;
- stroke-dasharray: 10, 4;
- opacity: .75;
-}
-
-/* roads */
-.ne_10m_roads._3 {
- stroke-width: 0.5;
-}
-.ne_10m_roads._4, .ne_10m_roads._5 {
- stroke-width: 0.75;
-}
-.ne_10m_roads._6 {
- opacity: 0.75;
-}
-.motorway._6 {
- stroke-width: .75;
-}
-.motorway._7, .ne_10m_roads._7 {
- stroke-width: 1;
-}
-.arterial_major._7 {
- stroke-width: .5;
-}
-
-/* zoom 8 */
-.ne_10m_roads._8 {
- stroke-width: 1.25;
- opacity: .75
-}
-.motorway._8 {
- stroke-width: 1.25;
- opacity: .75
-}
-.arterial_major._8 {
- stroke-width: .5;
- opacity: .75;
-}
-.arterial_minor._8 {
- stroke-width: 0.5;
- opacity: .5;
-}
-
-/* zoom 9 */
-.motorway._9 {
- stroke-width: 1.5;
-}
-.arterial_major._9 {
- stroke-width: .75;
-}
-.arterial_minor._9 {
- stroke-width: 0.5;
- opacity: .5;
-}
-
-/* zoom 10 */
-.motorway._10 {
- stroke-width: 1.75;
-}
-.arterial_major._10 {
- stroke-width: 1.25;
-}
-.arterial_minor._10 {
- stroke-width: 1;
-}
-.road_med._10 {
- stroke-width: .75;
-}
-
-/* zoom 11 */
-.motorway._11 {
- stroke-width: 3;
-}
-.arterial_major._11, .runway._11 {
- stroke-width: 1.75;
-}
-.arterial_minor._11 {
- stroke-width: 1.25;
-}
-.road_med._11 {
- stroke-width: 1;
-}
-.road_minor._11 {
- stroke-width: .5;
-}
-
-/* zoom 12 */
-.motorway._12 {
- stroke-width: 3.5;
-}
-.arterial_major._12, .runway._12 {
- stroke-width: 2;
-}
-.arterial_minor._12 {
- stroke-width: 1.5;
-}
-.road_med._12 {
- stroke-width: 1;
-}
-.road_minor._12 {
- stroke-width: .75;
-}
-
-/* zoom 13 */
-.motorway._13 {
- stroke-width: 5;
-}
-.arterial_major._13, .runway._13 {
- stroke-width: 3.5;
-}
-.arterial_minor._13 {
- stroke-width: 2.5;
-}
-.road_med._13 {
- stroke-width: 2;
-}
-.road_minor._13 {
- stroke-width: 1.5;
-}
-.path._13, .water_line._13 {
- stroke-width: 0.3;
-}
-
-/* zoom 14 */
-.motorway._14 {
- stroke-width: 6.5;
-}
-.arterial_major._14, .runway._14 {
- stroke-width: 4.75;
-}
-.arterial_minor._14 {
- stroke-width: 4.25;
-}
-.road_med._14 {
- stroke-width: 3.75;
-}
-.road_minor._14 {
- stroke-width: 2.5;
-}
-.rail_minor._14 {
- stroke-width: 1;
-}
-.rail_major._14 {
- stroke-width: 1.5;
-}
-.path._14, .water_line._14 {
- stroke-width: 0.75;
-}
-
-/* zoom 15 */
-.motorway._15 {
- stroke-width: 8.5;
-}
-.arterial_major._15, .runway._15 {
- stroke-width: 7;
-}
-.arterial_minor._15 {
- stroke-width: 6;
-}
-.road_med._15 {
- stroke-width: 5;
-}
-.road_minor._15 {
- stroke-width: 4;
-}
-.rail_minor._15 {
- stroke-width: 1.5;
-}
-.rail_major._15 {
- stroke-width: 1.5;
-}
-.path._15, .water_line._15 {
- stroke-width: 1;
-}
-
-/* zoom 16 */
-.motorway._16 {
- stroke-width: 12;
-}
-.arterial_major._16, .runway._16 {
- stroke-width: 9;
-}
-.arterial_minor._16 {
- stroke-width: 8;
-}
-.road_med._16 {
- stroke-width: 7;
-}
-.road_minor._16 {
- stroke-width: 6;
-}
-.rail_minor._16 {
- stroke-width: 1.5;
-}
-.rail_major._16 {
- stroke-width: 2;
-}
-.path._16, .water_line._16 {
- stroke-width: 2;
-}
-
-/* zoom 17 */
-.motorway._17 {
- stroke-width: 15;
-}
-.arterial_major._17, .runway._17 {
- stroke-width: 10;
-}
-.arterial_minor._17 {
- stroke-width: 9;
-}
-.road_med._17 {
- stroke-width: 8;
-}
-.road_minor._17 {
- stroke-width: 8;
-}
-.rail_minor._17 {
- stroke-width: 3;
- stroke-dasharray: 7, 6;
-}
-.rail_major._17 {
- stroke-width: 4;
- stroke-dasharray: 7, 6;
-}
-.path._17, .water_line._17 {
- stroke-width: 5;
-}
-
-/* zoom 18 */
-.motorway._18 {
- stroke-width: 16;
-}
-.arterial_major._18, .runway._18 {
- stroke-width: 10;
-}
-.arterial_minor._18 {
- stroke-width: 10;
-}
-.road_med._18 {
- stroke-width: 9;
-}
-.road_minor._18 {
- stroke-width: 8;
-}
-.rail_minor._18 {
- stroke-width: 3;
- stroke-dasharray: 7, 6;
-}
-.rail_major._18 {
- stroke-width: 4;
- stroke-dasharray: 7, 6;
-}
-.path._18, .water_line._18 {
- stroke-width: 5;
-}