@antv/l7-component 2.9.20 → 2.9.22

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.
Files changed (53) hide show
  1. package/es/control/BaseControl.js +5 -26
  2. package/es/control/layer.js +13 -28
  3. package/es/control/logo.js +3 -4
  4. package/es/control/scale.js +6 -11
  5. package/es/control/zoom.js +3 -12
  6. package/es/css/l7.css +502 -0
  7. package/es/images/layers.png +0 -0
  8. package/es/images/layers.svg +1 -0
  9. package/es/images/logo.png +0 -0
  10. package/es/index.js +10 -10
  11. package/es/interface.js +1 -2
  12. package/es/marker-layer.js +27 -27
  13. package/es/marker.js +21 -27
  14. package/es/popup.js +16 -34
  15. package/es/utils/anchor.js +1 -2
  16. package/lib/control/BaseControl.js +100 -163
  17. package/lib/control/layer.js +248 -347
  18. package/lib/control/logo.js +52 -77
  19. package/lib/control/scale.js +112 -165
  20. package/lib/control/zoom.js +95 -143
  21. package/lib/css/l7.css +502 -0
  22. package/lib/images/layers.png +0 -0
  23. package/lib/images/layers.svg +1 -0
  24. package/lib/images/logo.png +0 -0
  25. package/lib/index.js +53 -135
  26. package/lib/interface.js +17 -2
  27. package/lib/marker-layer.js +224 -330
  28. package/lib/marker.js +271 -404
  29. package/lib/popup.js +201 -309
  30. package/lib/utils/anchor.js +54 -37
  31. package/package.json +9 -9
  32. package/es/control/BaseControl.js.map +0 -1
  33. package/es/control/layer.js.map +0 -1
  34. package/es/control/logo.js.map +0 -1
  35. package/es/control/scale.js.map +0 -1
  36. package/es/control/zoom.js.map +0 -1
  37. package/es/index.js.map +0 -1
  38. package/es/interface.js.map +0 -1
  39. package/es/marker-layer.js.map +0 -1
  40. package/es/marker.js.map +0 -1
  41. package/es/popup.js.map +0 -1
  42. package/es/utils/anchor.js.map +0 -1
  43. package/lib/control/BaseControl.js.map +0 -1
  44. package/lib/control/layer.js.map +0 -1
  45. package/lib/control/logo.js.map +0 -1
  46. package/lib/control/scale.js.map +0 -1
  47. package/lib/control/zoom.js.map +0 -1
  48. package/lib/index.js.map +0 -1
  49. package/lib/interface.js.map +0 -1
  50. package/lib/marker-layer.js.map +0 -1
  51. package/lib/marker.js.map +0 -1
  52. package/lib/popup.js.map +0 -1
  53. package/lib/utils/anchor.js.map +0 -1
@@ -1,368 +1,269 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
20
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
21
+
22
+ // src/control/layer.ts
23
+ var layer_exports = {};
24
+ __export(layer_exports, {
25
+ default: () => Layers
7
26
  });
8
- exports.default = void 0;
9
-
10
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
-
12
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
-
14
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
15
-
16
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
-
18
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
-
20
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
-
22
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
-
24
- var _l7Core = require("@antv/l7-core");
25
-
26
- var _l7Utils = require("@antv/l7-utils");
27
-
28
- var _BaseControl = _interopRequireDefault(require("./BaseControl"));
29
-
30
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
31
-
32
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
33
-
34
- var Layers = function (_Control) {
35
- (0, _inherits2.default)(Layers, _Control);
36
-
37
- var _super = _createSuper(Layers);
38
-
39
- function Layers(cfg) {
40
- var _this;
41
-
42
- (0, _classCallCheck2.default)(this, Layers);
43
- _this = _super.call(this, cfg);
44
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "layerControlInputs", void 0);
45
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "layers", void 0);
46
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "lastZIndex", void 0);
47
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handlingClick", void 0);
48
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "layersLink", void 0);
49
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "baseLayersList", void 0);
50
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "separator", void 0);
51
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "overlaysList", void 0);
52
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "form", void 0);
53
- _this.layerControlInputs = [];
54
- _this.layers = [];
55
- _this.lastZIndex = 0;
56
- _this.handlingClick = false;
57
-
58
- _this.initLayers();
59
-
60
- (0, _l7Utils.bindAll)(['checkDisabledLayers', 'onLayerChange', 'collapse', 'extend', 'expand', 'onInputClick'], (0, _assertThisInitialized2.default)(_this));
61
- return _this;
27
+ module.exports = __toCommonJS(layer_exports);
28
+ var import_l7_core = require("@antv/l7-core");
29
+ var import_l7_utils = require("@antv/l7-utils");
30
+ var import_BaseControl = __toESM(require("./BaseControl"));
31
+ var Layers = class extends import_BaseControl.default {
32
+ constructor(cfg) {
33
+ super(cfg);
34
+ this.layerControlInputs = [];
35
+ this.layers = [];
36
+ this.lastZIndex = 0;
37
+ this.handlingClick = false;
38
+ this.initLayers();
39
+ (0, import_l7_utils.bindAll)([
40
+ "checkDisabledLayers",
41
+ "onLayerChange",
42
+ "collapse",
43
+ "extend",
44
+ "expand",
45
+ "onInputClick"
46
+ ], this);
62
47
  }
63
-
64
- (0, _createClass2.default)(Layers, [{
65
- key: "getDefault",
66
- value: function getDefault() {
67
- return {
68
- collapsed: true,
69
- position: _l7Core.PositionType.TOPRIGHT,
70
- autoZIndex: true,
71
- hideSingleBase: false,
72
- sortLayers: false,
73
- name: 'layers'
74
- };
48
+ getDefault() {
49
+ return {
50
+ collapsed: true,
51
+ position: import_l7_core.PositionType.TOPRIGHT,
52
+ autoZIndex: true,
53
+ hideSingleBase: false,
54
+ sortLayers: false,
55
+ name: "layers"
56
+ };
57
+ }
58
+ onAdd() {
59
+ this.initLayout();
60
+ this.update();
61
+ this.mapsService.on("zoomend", this.checkDisabledLayers);
62
+ this.layers.forEach((layerItem) => {
63
+ layerItem.layer.on("remove", this.onLayerChange);
64
+ layerItem.layer.on("add", this.onLayerChange);
65
+ });
66
+ return this.container;
67
+ }
68
+ addVisualLayer(layer, name) {
69
+ this.addLayer(layer, name, true);
70
+ return this.mapsService ? this.update() : this;
71
+ }
72
+ expand() {
73
+ const { height } = this.renderService.getViewportSize();
74
+ import_l7_utils.DOM.addClass(this.container, "l7-control-layers-expanded");
75
+ this.form.style.height = "null";
76
+ const acceptableHeight = height - (this.container.offsetTop + 50);
77
+ if (acceptableHeight < this.form.clientHeight) {
78
+ import_l7_utils.DOM.addClass(this.form, "l7-control-layers-scrollbar");
79
+ this.form.style.height = acceptableHeight + "px";
80
+ } else {
81
+ import_l7_utils.DOM.removeClass(this.form, "l7-control-layers-scrollbar");
75
82
  }
76
- }, {
77
- key: "onAdd",
78
- value: function onAdd() {
79
- var _this2 = this;
80
-
81
- this.initLayout();
82
- this.update();
83
- this.mapsService.on('zoomend', this.checkDisabledLayers);
84
- this.layers.forEach(function (layerItem) {
85
- layerItem.layer.on('remove', _this2.onLayerChange);
86
- layerItem.layer.on('add', _this2.onLayerChange);
87
- });
88
- return this.container;
83
+ this.checkDisabledLayers();
84
+ return this;
85
+ }
86
+ collapse() {
87
+ import_l7_utils.DOM.removeClass(this.container, "l7-control-layers-expanded");
88
+ return this;
89
+ }
90
+ onRemove() {
91
+ if (!this.mapsService) {
92
+ return;
89
93
  }
90
- }, {
91
- key: "addVisualLayer",
92
- value: function addVisualLayer(layer, name) {
93
- this.addLayer(layer, name, true);
94
- return this.mapsService ? this.update() : this;
94
+ this.mapsService.off("click", this.collapse);
95
+ this.layers.forEach((layerItem) => {
96
+ layerItem.layer.off("remove", this.onLayerChange);
97
+ layerItem.layer.off("add", this.onLayerChange);
98
+ });
99
+ }
100
+ initLayout() {
101
+ const className = "l7-control-layers";
102
+ const container = this.container = import_l7_utils.DOM.create("div", className);
103
+ const { collapsed } = this.controlOption;
104
+ container.setAttribute("aria-haspopup", "true");
105
+ const form = this.form = import_l7_utils.DOM.create("form", className + "-list");
106
+ if (collapsed) {
107
+ this.mapsService.on("click", this.collapse);
108
+ container.addEventListener("mouseenter", this.expand);
109
+ container.addEventListener("mouseleave", this.collapse);
95
110
  }
96
- }, {
97
- key: "expand",
98
- value: function expand() {
99
- var _this$renderService$g = this.renderService.getViewportSize(),
100
- height = _this$renderService$g.height;
101
-
102
- _l7Utils.DOM.addClass(this.container, 'l7-control-layers-expanded');
103
-
104
- this.form.style.height = 'null';
105
- var acceptableHeight = height - (this.container.offsetTop + 50);
106
-
107
- if (acceptableHeight < this.form.clientHeight) {
108
- _l7Utils.DOM.addClass(this.form, 'l7-control-layers-scrollbar');
109
-
110
- this.form.style.height = acceptableHeight + 'px';
111
- } else {
112
- _l7Utils.DOM.removeClass(this.form, 'l7-control-layers-scrollbar');
113
- }
114
-
115
- this.checkDisabledLayers();
116
- return this;
111
+ this.layersLink = import_l7_utils.DOM.create("a", className + "-toggle", container);
112
+ const link = this.layersLink;
113
+ link.title = "Layers";
114
+ if (!collapsed) {
115
+ this.expand();
117
116
  }
118
- }, {
119
- key: "collapse",
120
- value: function collapse() {
121
- _l7Utils.DOM.removeClass(this.container, 'l7-control-layers-expanded');
122
-
117
+ this.baseLayersList = import_l7_utils.DOM.create("div", className + "-base", form);
118
+ this.separator = import_l7_utils.DOM.create("div", className + "-separator", form);
119
+ this.overlaysList = import_l7_utils.DOM.create("div", className + "-overlays", form);
120
+ container.appendChild(form);
121
+ }
122
+ initLayers() {
123
+ const { baseLayers = {}, overlayers = {} } = this.controlOption;
124
+ Object.keys(baseLayers).forEach((name, index) => {
125
+ this.addLayer(baseLayers[name], name, false);
126
+ });
127
+ Object.keys(overlayers).forEach((name, index) => {
128
+ this.addLayer(overlayers[name], name, true);
129
+ });
130
+ }
131
+ update() {
132
+ if (!this.container) {
123
133
  return this;
124
134
  }
125
- }, {
126
- key: "onRemove",
127
- value: function onRemove() {
128
- var _this3 = this;
129
-
130
- if (!this.mapsService) {
131
- return;
132
- }
133
-
134
- this.mapsService.off('click', this.collapse);
135
- this.layers.forEach(function (layerItem) {
136
- layerItem.layer.off('remove', _this3.onLayerChange);
137
- layerItem.layer.off('add', _this3.onLayerChange);
138
- });
135
+ import_l7_utils.DOM.empty(this.baseLayersList);
136
+ import_l7_utils.DOM.empty(this.overlaysList);
137
+ this.layerControlInputs = [];
138
+ let baseLayersPresent;
139
+ let overlaysPresent;
140
+ let i;
141
+ let obj;
142
+ let baseLayersCount = 0;
143
+ for (i = 0; i < this.layers.length; i++) {
144
+ obj = this.layers[i];
145
+ this.addItem(obj);
146
+ overlaysPresent = overlaysPresent || obj.overlay;
147
+ baseLayersPresent = baseLayersPresent || !obj.overlay;
148
+ baseLayersCount += !obj.overlay ? 1 : 0;
139
149
  }
140
- }, {
141
- key: "initLayout",
142
- value: function initLayout() {
143
- var className = 'l7-control-layers';
144
-
145
- var container = this.container = _l7Utils.DOM.create('div', className);
146
-
147
- var collapsed = this.controlOption.collapsed;
148
- container.setAttribute('aria-haspopup', 'true');
149
-
150
- var form = this.form = _l7Utils.DOM.create('form', className + '-list');
151
-
152
- if (collapsed) {
153
- this.mapsService.on('click', this.collapse);
154
- container.addEventListener('mouseenter', this.expand);
155
- container.addEventListener('mouseleave', this.collapse);
156
- }
157
-
158
- this.layersLink = _l7Utils.DOM.create('a', className + '-toggle', container);
159
- var link = this.layersLink;
160
- link.title = 'Layers';
161
-
162
- if (!collapsed) {
163
- this.expand();
164
- }
165
-
166
- this.baseLayersList = _l7Utils.DOM.create('div', className + '-base', form);
167
- this.separator = _l7Utils.DOM.create('div', className + '-separator', form);
168
- this.overlaysList = _l7Utils.DOM.create('div', className + '-overlays', form);
169
- container.appendChild(form);
150
+ if (this.controlOption.hideSingleBase) {
151
+ baseLayersPresent = baseLayersPresent && baseLayersCount > 1;
152
+ this.baseLayersList.style.display = baseLayersPresent ? "" : "none";
170
153
  }
171
- }, {
172
- key: "initLayers",
173
- value: function initLayers() {
174
- var _this4 = this;
175
-
176
- var _this$controlOption = this.controlOption,
177
- _this$controlOption$b = _this$controlOption.baseLayers,
178
- baseLayers = _this$controlOption$b === void 0 ? {} : _this$controlOption$b,
179
- _this$controlOption$o = _this$controlOption.overlayers,
180
- overlayers = _this$controlOption$o === void 0 ? {} : _this$controlOption$o;
181
- Object.keys(baseLayers).forEach(function (name, index) {
182
- _this4.addLayer(baseLayers[name], name, false);
183
- });
184
- Object.keys(overlayers).forEach(function (name, index) {
185
- _this4.addLayer(overlayers[name], name, true);
186
- });
187
- }
188
- }, {
189
- key: "update",
190
- value: function update() {
191
- if (!this.container) {
192
- return this;
193
- }
194
-
195
- _l7Utils.DOM.empty(this.baseLayersList);
196
-
197
- _l7Utils.DOM.empty(this.overlaysList);
198
-
199
- this.layerControlInputs = [];
200
- var baseLayersPresent;
201
- var overlaysPresent;
202
- var i;
203
- var obj;
204
- var baseLayersCount = 0;
205
-
206
- for (i = 0; i < this.layers.length; i++) {
207
- obj = this.layers[i];
208
- this.addItem(obj);
209
- overlaysPresent = overlaysPresent || obj.overlay;
210
- baseLayersPresent = baseLayersPresent || !obj.overlay;
211
- baseLayersCount += !obj.overlay ? 1 : 0;
212
- }
213
-
214
- if (this.controlOption.hideSingleBase) {
215
- baseLayersPresent = baseLayersPresent && baseLayersCount > 1;
216
- this.baseLayersList.style.display = baseLayersPresent ? '' : 'none';
154
+ this.separator.style.display = overlaysPresent && baseLayersPresent ? "" : "none";
155
+ return this;
156
+ }
157
+ checkDisabledLayers() {
158
+ const inputs = this.layerControlInputs;
159
+ let input;
160
+ let layer;
161
+ const zoom = this.mapsService.getZoom();
162
+ for (let i = inputs.length - 1; i >= 0; i--) {
163
+ input = inputs[i];
164
+ layer = this.layerService.getLayer(input.layerId);
165
+ if (layer && layer.inited) {
166
+ const minZoom = layer.getMinZoom();
167
+ const maxZoom = layer.getMaxZoom();
168
+ input.disabled = zoom < minZoom || zoom > maxZoom;
217
169
  }
218
-
219
- this.separator.style.display = overlaysPresent && baseLayersPresent ? '' : 'none';
220
- return this;
221
170
  }
222
- }, {
223
- key: "checkDisabledLayers",
224
- value: function checkDisabledLayers() {
225
- var inputs = this.layerControlInputs;
226
- var input;
227
- var layer;
228
- var zoom = this.mapsService.getZoom();
229
-
230
- for (var i = inputs.length - 1; i >= 0; i--) {
231
- input = inputs[i];
232
- layer = this.layerService.getLayer(input.layerId);
233
-
234
- if (layer && layer.inited) {
235
- var minZoom = layer.getMinZoom();
236
- var maxZoom = layer.getMaxZoom();
237
- input.disabled = zoom < minZoom || zoom > maxZoom;
238
- }
239
- }
171
+ }
172
+ addLayer(layer, name, overlay) {
173
+ if (this.mapsService) {
174
+ layer.on("add", this.onLayerChange);
175
+ layer.on("remove", this.onLayerChange);
240
176
  }
241
- }, {
242
- key: "addLayer",
243
- value: function addLayer(layer, name, overlay) {
244
- if (this.mapsService) {
245
- layer.on('add', this.onLayerChange);
246
- layer.on('remove', this.onLayerChange);
247
- }
248
-
249
- this.layers.push({
250
- layer: layer,
251
- name: name,
252
- overlay: overlay
177
+ this.layers.push({
178
+ layer,
179
+ name,
180
+ overlay
181
+ });
182
+ const { sortLayers, sortFunction, autoZIndex } = this.controlOption;
183
+ if (sortLayers) {
184
+ this.layers.sort((a, b) => {
185
+ return sortFunction(a.layer, b.layer, a.name, b.name);
253
186
  });
254
- var _this$controlOption2 = this.controlOption,
255
- sortLayers = _this$controlOption2.sortLayers,
256
- sortFunction = _this$controlOption2.sortFunction,
257
- autoZIndex = _this$controlOption2.autoZIndex;
258
-
259
- if (sortLayers) {
260
- this.layers.sort(function (a, b) {
261
- return sortFunction(a.layer, b.layer, a.name, b.name);
262
- });
263
- }
264
-
265
- if (autoZIndex && layer.setZIndex) {
266
- this.lastZIndex++;
267
- layer.setZIndex(this.lastZIndex);
268
- }
269
-
270
- this.expandIfNotCollapsed();
271
187
  }
272
- }, {
273
- key: "expandIfNotCollapsed",
274
- value: function expandIfNotCollapsed() {
275
- if (this.mapsService && !this.controlOption.collapsed) {
276
- this.expand();
277
- }
278
-
279
- return this;
188
+ if (autoZIndex && layer.setZIndex) {
189
+ this.lastZIndex++;
190
+ layer.setZIndex(this.lastZIndex);
280
191
  }
281
- }, {
282
- key: "onLayerChange",
283
- value: function onLayerChange(e) {
284
- if (!this.handlingClick) {
285
- this.update();
286
- }
287
-
288
- var obj = this.layerService.getLayer(e.target.layerId);
289
- var type = obj !== null && obj !== void 0 && obj.overlay ? e.type === 'add' ? 'overlayadd' : 'overlayremove' : e.type === 'add' ? 'baselayerchange' : null;
290
-
291
- if (type) {
292
- this.emit(type, obj);
293
- }
192
+ this.expandIfNotCollapsed();
193
+ }
194
+ expandIfNotCollapsed() {
195
+ if (this.mapsService && !this.controlOption.collapsed) {
196
+ this.expand();
294
197
  }
295
- }, {
296
- key: "createRadioElement",
297
- value: function createRadioElement(name, checked) {
298
- var radioHtml = '<input type="radio" class="l7-control-layers-selector" name="' + name + '"' + (checked ? ' checked="checked"' : '') + '/>';
299
- var radioFragment = document.createElement('div');
300
- radioFragment.innerHTML = radioHtml;
301
- return radioFragment.firstChild;
198
+ return this;
199
+ }
200
+ onLayerChange(e) {
201
+ if (!this.handlingClick) {
202
+ this.update();
302
203
  }
303
- }, {
304
- key: "addItem",
305
- value: function addItem(obj) {
306
- var label = document.createElement('label');
307
- var layer = this.layerService.getLayer(obj.layer.id);
308
- var checked = layer && layer.inited && obj.layer.isVisible();
309
- var input;
310
-
311
- if (obj.overlay) {
312
- input = document.createElement('input');
313
- input.type = 'checkbox';
314
- input.className = 'l7-control-layers-selector';
315
- input.defaultChecked = checked;
316
- } else {
317
- input = this.createRadioElement('l7-base-layers', checked);
318
- }
319
-
320
- this.layerControlInputs.push(input);
321
- input.layerId = obj.layer.id;
322
- input.addEventListener('click', this.onInputClick);
323
- var name = document.createElement('span');
324
- name.innerHTML = ' ' + obj.name;
325
- var holder = document.createElement('div');
326
- label.appendChild(holder);
327
- holder.appendChild(input);
328
- holder.appendChild(name);
329
- var container = obj.overlay ? this.overlaysList : this.baseLayersList;
330
- container.appendChild(label);
331
- this.checkDisabledLayers();
332
- return label;
204
+ const obj = this.layerService.getLayer(e.target.layerId);
205
+ const type = (obj == null ? void 0 : obj.overlay) ? e.type === "add" ? "overlayadd" : "overlayremove" : e.type === "add" ? "baselayerchange" : null;
206
+ if (type) {
207
+ this.emit(type, obj);
333
208
  }
334
- }, {
335
- key: "onInputClick",
336
- value: function onInputClick() {
337
- var inputs = this.layerControlInputs;
338
- var input;
339
- var layer;
340
- var addedLayers = [];
341
- var removedLayers = [];
342
- this.handlingClick = true;
343
-
344
- for (var i = inputs.length - 1; i >= 0; i--) {
345
- input = inputs[i];
346
- layer = this.layerService.getLayer(input.layerId);
347
-
348
- if (input.checked) {
349
- addedLayers.push(layer);
350
- } else if (!input.checked) {
351
- removedLayers.push(layer);
352
- }
209
+ }
210
+ createRadioElement(name, checked) {
211
+ const radioHtml = '<input type="radio" class="l7-control-layers-selector" name="' + name + '"' + (checked ? ' checked="checked"' : "") + "/>";
212
+ const radioFragment = document.createElement("div");
213
+ radioFragment.innerHTML = radioHtml;
214
+ return radioFragment.firstChild;
215
+ }
216
+ addItem(obj) {
217
+ const label = document.createElement("label");
218
+ const layer = this.layerService.getLayer(obj.layer.id);
219
+ const checked = layer && layer.inited && obj.layer.isVisible();
220
+ let input;
221
+ if (obj.overlay) {
222
+ input = document.createElement("input");
223
+ input.type = "checkbox";
224
+ input.className = "l7-control-layers-selector";
225
+ input.defaultChecked = checked;
226
+ } else {
227
+ input = this.createRadioElement("l7-base-layers", checked);
228
+ }
229
+ this.layerControlInputs.push(input);
230
+ input.layerId = obj.layer.id;
231
+ input.addEventListener("click", this.onInputClick);
232
+ const name = document.createElement("span");
233
+ name.innerHTML = " " + obj.name;
234
+ const holder = document.createElement("div");
235
+ label.appendChild(holder);
236
+ holder.appendChild(input);
237
+ holder.appendChild(name);
238
+ const container = obj.overlay ? this.overlaysList : this.baseLayersList;
239
+ container.appendChild(label);
240
+ this.checkDisabledLayers();
241
+ return label;
242
+ }
243
+ onInputClick() {
244
+ const inputs = this.layerControlInputs;
245
+ let input;
246
+ let layer;
247
+ const addedLayers = [];
248
+ const removedLayers = [];
249
+ this.handlingClick = true;
250
+ for (let i = inputs.length - 1; i >= 0; i--) {
251
+ input = inputs[i];
252
+ layer = this.layerService.getLayer(input.layerId);
253
+ if (input.checked) {
254
+ addedLayers.push(layer);
255
+ } else if (!input.checked) {
256
+ removedLayers.push(layer);
353
257
  }
354
-
355
- removedLayers.forEach(function (l) {
356
- l.hide();
357
- });
358
- addedLayers.forEach(function (l) {
359
- l.show();
360
- });
361
- this.handlingClick = false;
362
258
  }
363
- }]);
364
- return Layers;
365
- }(_BaseControl.default);
366
-
367
- exports.default = Layers;
368
- //# sourceMappingURL=layer.js.map
259
+ removedLayers.forEach((l) => {
260
+ l.hide();
261
+ });
262
+ addedLayers.forEach((l) => {
263
+ l.show();
264
+ });
265
+ this.handlingClick = false;
266
+ }
267
+ };
268
+ // Annotate the CommonJS export names for ESM import in node:
269
+ 0 && (module.exports = {});