@ecogis/maps-style-switcher 0.0.2 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,13 +1,15 @@
1
1
  import { IControl, Map as MapboxMap } from "mapbox-gl";
2
- export declare type EcoGisStyleDefinition = {
2
+ export type EcoGisStyleDefinition = {
3
3
  title: string;
4
4
  uri: string;
5
+ icon?: string;
6
+ useIconOnly?: boolean;
5
7
  };
6
- export declare type EcoGisStyleSwitcherOptions = {
8
+ export type EcoGisStyleSwitcherOptions = {
7
9
  defaultStyle?: string;
8
10
  eventListeners?: EcoGisStyleSwitcherEvents;
9
11
  };
10
- declare type EcoGisStyleSwitcherEvents = {
12
+ type EcoGisStyleSwitcherEvents = {
11
13
  onOpen?: (event: MouseEvent) => boolean;
12
14
  onSelect?: (event: MouseEvent) => boolean;
13
15
  onChange?: (event: MouseEvent, style: string) => boolean;
package/dist/index.js CHANGED
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EcoGisStyleSwitcherControl = void 0;
3
4
  class EcoGisStyleSwitcherControl {
4
5
  constructor(styles, options) {
5
6
  this.styles = styles || EcoGisStyleSwitcherControl.DEFAULT_STYLES;
@@ -15,49 +16,62 @@ class EcoGisStyleSwitcherControl {
15
16
  onAdd(map) {
16
17
  this.map = map;
17
18
  this.controlContainer = document.createElement("div");
18
- this.controlContainer.classList.add("ecogis-ctrl");
19
- this.controlContainer.classList.add("ecogis-ctrl-group");
19
+ this.controlContainer.classList.add("ecogis-ctrl", "ecogis-ctrl-group");
20
20
  this.mapStyleContainer = document.createElement("div");
21
+ this.mapStyleContainer.classList.add("ecogis-style-list");
21
22
  this.styleButton = document.createElement("button");
22
23
  this.styleButton.type = "button";
23
- this.mapStyleContainer.classList.add("ecogis-style-list");
24
24
  for (const style of this.styles) {
25
25
  const styleElement = document.createElement("button");
26
26
  styleElement.type = "button";
27
- styleElement.innerText = style.title;
28
- styleElement.classList.add(style.title.replace(/[^a-z0-9-]/gi, '_'));
29
27
  styleElement.dataset.uri = JSON.stringify(style.uri);
30
- styleElement.addEventListener("click", event => {
31
- const srcElement = event.srcElement;
28
+ if (style.icon) {
29
+ const iconContainer = document.createElement("span");
30
+ iconContainer.classList.add("ecogis-style-icon");
31
+ if (/\.(png|jpg|jpeg|gif|svg)$/.test(style.icon)) {
32
+ const imgElement = document.createElement("img");
33
+ imgElement.src = style.icon;
34
+ imgElement.alt = style.title;
35
+ imgElement.title = style.title;
36
+ iconContainer.appendChild(imgElement);
37
+ }
38
+ else {
39
+ iconContainer.innerHTML = style.icon;
40
+ }
41
+ styleElement.appendChild(iconContainer);
42
+ }
43
+ if (!style.useIconOnly) {
44
+ const titleSpan = document.createElement("span");
45
+ titleSpan.innerText = style.title;
46
+ titleSpan.classList.add("ecogis-style-title");
47
+ styleElement.appendChild(titleSpan);
48
+ styleElement.classList.add(style.title.replace(/[^a-z0-9-]/gi, "_"));
49
+ }
50
+ styleElement.addEventListener("click", (event) => {
51
+ var _a, _b;
52
+ const srcElement = event.currentTarget;
32
53
  this.closeModal();
33
- if (srcElement.classList.contains("active")) {
54
+ if (srcElement.classList.contains("active"))
34
55
  return;
35
- }
36
- if (this.events && this.events.onOpen && this.events.onOpen(event)) {
56
+ if (((_a = this.events) === null || _a === void 0 ? void 0 : _a.onOpen) && this.events.onOpen(event))
37
57
  return;
38
- }
39
- const style = JSON.parse(srcElement.dataset.uri);
40
- this.map.setStyle(style);
41
- const elms = this.mapStyleContainer.getElementsByClassName("active");
42
- while (elms[0]) {
43
- elms[0].classList.remove("active");
44
- }
58
+ const selectedStyle = JSON.parse(srcElement.dataset.uri);
59
+ this.map.setStyle(selectedStyle);
60
+ this.mapStyleContainer.querySelectorAll(".active").forEach(el => el.classList.remove("active"));
45
61
  srcElement.classList.add("active");
46
- if (this.events && this.events.onChange && this.events.onChange(event, style)) {
62
+ if (((_b = this.events) === null || _b === void 0 ? void 0 : _b.onChange) && this.events.onChange(event, selectedStyle))
47
63
  return;
48
- }
49
64
  });
50
65
  if (style.title === this.defaultStyle) {
51
66
  styleElement.classList.add("active");
52
67
  }
53
68
  this.mapStyleContainer.appendChild(styleElement);
54
69
  }
55
- this.styleButton.classList.add("ecogis-ctrl-icon");
56
- this.styleButton.classList.add("ecogis-style-switcher");
57
- this.styleButton.addEventListener("click", event => {
58
- if (this.events && this.events.onSelect && this.events.onSelect(event)) {
70
+ this.styleButton.classList.add("ecogis-ctrl-icon", "ecogis-style-switcher");
71
+ this.styleButton.addEventListener("click", (event) => {
72
+ var _a;
73
+ if (((_a = this.events) === null || _a === void 0 ? void 0 : _a.onSelect) && this.events.onSelect(event))
59
74
  return;
60
- }
61
75
  this.openModal();
62
76
  });
63
77
  document.addEventListener("click", this.onDocumentClick);
@@ -92,6 +106,7 @@ class EcoGisStyleSwitcherControl {
92
106
  }
93
107
  }
94
108
  }
109
+ exports.EcoGisStyleSwitcherControl = EcoGisStyleSwitcherControl;
95
110
  EcoGisStyleSwitcherControl.DEFAULT_STYLE = "Streets";
96
111
  EcoGisStyleSwitcherControl.DEFAULT_STYLES = [
97
112
  { title: "Dark", uri: "mapbox://styles/mapbox/dark-v10" },
@@ -100,5 +115,4 @@ EcoGisStyleSwitcherControl.DEFAULT_STYLES = [
100
115
  { title: "Satellite", uri: "mapbox://styles/mapbox/satellite-streets-v11" },
101
116
  { title: "Streets", uri: "mapbox://styles/mapbox/streets-v11" }
102
117
  ];
103
- exports.EcoGisStyleSwitcherControl = EcoGisStyleSwitcherControl;
104
118
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":";;AAqBA,MAAa,0BAA0B;IAmBnC,YAAY,MAAgC,EAAE,OAA6C;QAEvF,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,0BAA0B,CAAC,cAAc,CAAC;QAClE,MAAM,YAAY,GAAG,OAAM,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC;QACzG,IAAI,CAAC,YAAY,GAAG,YAAY,IAAI,0BAA0B,CAAC,aAAa,CAAC;QAC7E,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvD,IAAI,CAAC,MAAM,GAAG,OAAM,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/F,CAAC;IAEM,kBAAkB;QAErB,MAAM,eAAe,GAAG,WAAW,CAAC;QACpC,OAAO,eAAe,CAAC;IAC3B,CAAC;IAEM,KAAK,CAAC,GAAc;QAEvB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACtD,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QACnD,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;QACzD,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACvD,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QACpD,IAAI,CAAC,WAAW,CAAC,IAAI,GAAG,QAAQ,CAAC;QACjC,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;QAC1D,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAC/B;YACI,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YACtD,YAAY,CAAC,IAAI,GAAG,QAAQ,CAAC;YAC7B,YAAY,CAAC,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC;YACrC,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC;YACrE,YAAY,CAAC,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACrD,YAAY,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;gBAE3C,MAAM,UAAU,GAAG,KAAK,CAAC,UAA+B,CAAC;gBACzD,IAAI,CAAC,UAAU,EAAE,CAAC;gBAClB,IAAI,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAC3C;oBACI,OAAO;iBACV;gBACD,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAClE;oBACI,OAAO;iBACV;gBACD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,GAAI,CAAC,CAAC;gBAClD,IAAI,CAAC,GAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAC1B,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAkB,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;gBACtE,OAAO,IAAI,CAAC,CAAC,CAAC,EACd;oBACI,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;iBACtC;gBACD,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACnC,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,EAC7E;oBACI,OAAO;iBACV;YACL,CAAC,CAAC,CAAC;YACH,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC,YAAY,EACrC;gBACI,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;aACxC;YACD,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;SACpD;QACD,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QACnD,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QACxD,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;YAE/C,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EACtE;gBACI,OAAO;aACV;YACD,IAAI,CAAC,SAAS,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QAEzD,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACpD,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC1D,OAAO,IAAI,CAAC,gBAAgB,CAAC;IACjC,CAAC;IAEM,QAAQ;QAEX,IAAI,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EACjG;YACI,OAAO;SACV;QACD,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QACpE,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACpE,QAAQ,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QAC5D,IAAI,CAAC,GAAG,GAAG,SAAS,CAAC;IACzB,CAAC;IAEO,UAAU;QAEd,IAAI,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,WAAW,EAC9C;YACI,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;YAC9C,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;SAC5C;IACL,CAAC;IAEO,SAAS;QAEb,IAAI,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,WAAW,EAC9C;YACI,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;YAC/C,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;SAC3C;IACL,CAAC;IAEO,eAAe,CAAC,KAAiB;QAErC,IAAI,IAAI,CAAC,gBAAgB,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAiB,CAAC,EACrF;YACI,IAAI,CAAC,UAAU,EAAE,CAAC;SACrB;IACL,CAAC;;AAtIuB,wCAAa,GAAG,SAAS,CAAC;AAC1B,yCAAc,GAAG;IACrC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAC,iCAAiC,EAAC;IACvD,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAC,kCAAkC,EAAC;IACzD,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,EAAC,qCAAqC,EAAC;IAC/D,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,EAAC,8CAA8C,EAAC;IACzE,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAC,oCAAoC,EAAC;CAChE,CAAC;AATN,gEAyIC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ecogis/maps-style-switcher",
3
- "version": "0.0.2",
3
+ "version": "0.0.4",
4
4
  "description": "Ecogis Style Switcher",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -19,7 +19,7 @@
19
19
  },
20
20
  "devDependencies": {
21
21
  "@types/mapbox-gl": "^1.9.0",
22
- "typescript": "^3.1.3",
23
- "minimist": ">=0.2.1"
22
+ "minimist": ">=0.2.1",
23
+ "typescript": "^5.8.2"
24
24
  }
25
25
  }
package/styles.css CHANGED
@@ -1,40 +1,51 @@
1
- .ecogis-style-list
2
- {
3
- display: none;
1
+ .ecogis-style-list {
2
+ display: none;
4
3
  }
5
4
 
6
- .ecogis-ctrl-group .ecogis-style-list button
7
- {
8
- background: none;
9
- border: none;
10
- cursor: pointer;
11
- display: block;
12
- font-size: 14px;
13
- padding: 8px 8px 6px;
14
- text-align: right;
15
- width: 100%;
16
- height: auto;
5
+ .ecogis-ctrl-group .ecogis-style-list button {
6
+ background: none;
7
+ border: none;
8
+ cursor: pointer;
9
+ display: block;
10
+ font-size: 14px;
11
+ padding: 8px 8px 6px;
12
+ text-align: right;
13
+ width: 100%;
14
+ height: auto;
17
15
  }
18
16
 
19
- .ecogis-style-list button.active
20
- {
21
- font-weight: bold;
17
+ .ecogis-style-list button.active {
18
+ font-weight: bold;
22
19
  }
23
20
 
24
- .ecogis-style-list button:hover
25
- {
26
- background-color: rgba(0, 0, 0, 0.05);
21
+ .ecogis-style-list button:hover {
22
+ background-color: rgba(0, 0, 0, 0.05);
27
23
  }
28
24
 
29
- .ecogis-style-list button + button
30
- {
31
- border-top: 1px solid #ddd;
25
+ .ecogis-style-list button + button {
26
+ border-top: 1px solid #ddd;
32
27
  }
33
28
 
34
- .ecogis-style-switcher
35
- {
36
- background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iNTQuODQ5cHgiIGhlaWdodD0iNTQuODQ5cHgiIHZpZXdCb3g9IjAgMCA1NC44NDkgNTQuODQ5IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA1NC44NDkgNTQuODQ5OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PGc+PGc+PGc+PHBhdGggZD0iTTU0LjQ5NywzOS42MTRsLTEwLjM2My00LjQ5bC0xNC45MTcsNS45NjhjLTAuNTM3LDAuMjE0LTEuMTY1LDAuMzE5LTEuNzkzLDAuMzE5Yy0wLjYyNywwLTEuMjU0LTAuMTA0LTEuNzktMC4zMThsLTE0LjkyMS01Ljk2OEwwLjM1MSwzOS42MTRjLTAuNDcyLDAuMjAzLTAuNDY3LDAuNTI0LDAuMDEsMC43MTZMMjYuNTYsNTAuODFjMC40NzcsMC4xOTEsMS4yNTEsMC4xOTEsMS43MjksMEw1NC40ODgsNDAuMzNDNTQuOTY0LDQwLjEzOSw1NC45NjksMzkuODE3LDU0LjQ5NywzOS42MTR6Ii8+PHBhdGggZD0iTTU0LjQ5NywyNy41MTJsLTEwLjM2NC00LjQ5MWwtMTQuOTE2LDUuOTY2Yy0wLjUzNiwwLjIxNS0xLjE2NSwwLjMyMS0xLjc5MiwwLjMyMWMtMC42MjgsMC0xLjI1Ni0wLjEwNi0xLjc5My0wLjMyMWwtMTQuOTE4LTUuOTY2TDAuMzUxLDI3LjUxMmMtMC40NzIsMC4yMDMtMC40NjcsMC41MjMsMC4wMSwwLjcxNkwyNi41NiwzOC43MDZjMC40NzcsMC4xOSwxLjI1MSwwLjE5LDEuNzI5LDBsMjYuMTk5LTEwLjQ3OUM1NC45NjQsMjguMDM2LDU0Ljk2OSwyNy43MTYsNTQuNDk3LDI3LjUxMnoiLz48cGF0aCBkPSJNMC4zNjEsMTYuMTI1bDEzLjY2Miw1LjQ2NWwxMi41MzcsNS4wMTVjMC40NzcsMC4xOTEsMS4yNTEsMC4xOTEsMS43MjksMGwxMi41NDEtNS4wMTZsMTMuNjU4LTUuNDYzYzAuNDc3LTAuMTkxLDAuNDgtMC41MTEsMC4wMS0wLjcxNkwyOC4yNzcsNC4wNDhjLTAuNDcxLTAuMjA0LTEuMjM2LTAuMjA0LTEuNzA4LDBMMC4zNTEsMTUuNDFDLTAuMTIxLDE1LjYxNC0wLjExNiwxNS45MzUsMC4zNjEsMTYuMTI1eiIvPjwvZz48L2c+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjwvc3ZnPg==);
37
- background-position: center;
38
- background-repeat: no-repeat;
39
- background-size: 70%;
29
+ .ecogis-style-switcher {
30
+ background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iNTQuODQ5cHgiIGhlaWdodD0iNTQuODQ5cHgiIHZpZXdCb3g9IjAgMCA1NC44NDkgNTQuODQ5IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA1NC44NDkgNTQuODQ5OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PGc+PGc+PGc+PHBhdGggZD0iTTU0LjQ5NywzOS42MTRsLTEwLjM2My00LjQ5bC0xNC45MTcsNS45NjhjLTAuNTM3LDAuMjE0LTEuMTY1LDAuMzE5LTEuNzkzLDAuMzE5Yy0wLjYyNywwLTEuMjU0LTAuMTA0LTEuNzktMC4zMThsLTE0LjkyMS01Ljk2OEwwLjM1MSwzOS42MTRjLTAuNDcyLDAuMjAzLTAuNDY3LDAuNTI0LDAuMDEsMC43MTZMMjYuNTYsNTAuODFjMC40NzcsMC4xOTEsMS4yNTEsMC4xOTEsMS43MjksMEw1NC40ODgsNDAuMzNDNTQuOTY0LDQwLjEzOSw1NC45NjksMzkuODE3LDU0LjQ5NywzOS42MTR6Ii8+PHBhdGggZD0iTTU0LjQ5NywyNy41MTJsLTEwLjM2NC00LjQ5MWwtMTQuOTE2LDUuOTY2Yy0wLjUzNiwwLjIxNS0xLjE2NSwwLjMyMS0xLjc5MiwwLjMyMWMtMC42MjgsMC0xLjI1Ni0wLjEwNi0xLjc5My0wLjMyMWwtMTQuOTE4LTUuOTY2TDAuMzUxLDI3LjUxMmMtMC40NzIsMC4yMDMtMC40NjcsMC41MjMsMC4wMSwwLjcxNkwyNi41NiwzOC43MDZjMC40NzcsMC4xOSwxLjI1MSwwLjE5LDEuNzI5LDBsMjYuMTk5LTEwLjQ3OUM1NC45NjQsMjguMDM2LDU0Ljk2OSwyNy43MTYsNTQuNDk3LDI3LjUxMnoiLz48cGF0aCBkPSJNMC4zNjEsMTYuMTI1bDEzLjY2Miw1LjQ2NWwxMi41MzcsNS4wMTVjMC40NzcsMC4xOTEsMS4yNTEsMC4xOTEsMS43MjksMGwxMi41NDEtNS4wMTZsMTMuNjU4LTUuNDYzYzAuNDc3LTAuMTkxLDAuNDgtMC41MTEsMC4wMS0wLjcxNkwyOC4yNzcsNC4wNDhjLTAuNDcxLTAuMjA0LTEuMjM2LTAuMjA0LTEuNzA4LDBMMC4zNTEsMTUuNDFDLTAuMTIxLDE1LjYxNC0wLjExNiwxNS45MzUsMC4zNjEsMTYuMTI1eiIvPjwvZz48L2c+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjwvc3ZnPg==);
31
+ background-position: center;
32
+ background-repeat: no-repeat;
33
+ background-size: 70%;
34
+ }
35
+ /* update */
36
+ .ecogis-style-icon {
37
+ display: inline-block;
38
+ height: 30px;
39
+ width: 30px;
40
+ margin-right: 8px;
41
+ vertical-align: middle;
42
+ }
43
+
44
+ .ecogis-style-icon img {
45
+ max-width: 100%;
46
+ max-height: 100%;
47
+ vertical-align: middle;
48
+ }
49
+ .ecogis-style-title {
50
+ vertical-align: middle;
40
51
  }
package/tsconfig.json CHANGED
@@ -1,23 +1,20 @@
1
1
  {
2
- "compilerOptions": {
3
- "alwaysStrict": true,
4
- "baseUrl": ".",
5
- "declaration": true,
6
- "experimentalDecorators": true,
7
- "lib": [
8
- "dom",
9
- "es2017"
10
- ],
11
- "module": "commonjs",
12
- "moduleResolution": "node",
13
- "noImplicitThis": true,
14
- "noUnusedLocals": true,
15
- "outDir": "./dist/",
16
- "preserveConstEnums": true,
17
- "removeComments": true,
18
- "strictFunctionTypes": true,
19
- "strictNullChecks": true,
20
- "sourceMap": true,
21
- "target": "es6"
22
- }
23
- }
2
+ "compilerOptions": {
3
+ "alwaysStrict": true,
4
+ "baseUrl": ".",
5
+ "declaration": true,
6
+ "experimentalDecorators": true,
7
+ "lib": ["dom", "es2017"],
8
+ "module": "commonjs",
9
+ "moduleResolution": "node",
10
+ "noImplicitThis": true,
11
+ "noUnusedLocals": true,
12
+ "outDir": "./dist/",
13
+ "preserveConstEnums": true,
14
+ "removeComments": true,
15
+ "strictFunctionTypes": true,
16
+ "strictNullChecks": true,
17
+ "sourceMap": true,
18
+ "target": "es6"
19
+ }
20
+ }