module.exports =
/******/ (function(modules) { // webpackBootstrap
/******/ 	// The module cache
/******/ 	var installedModules = {};
/******/
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/
/******/ 		// Check if module is in cache
/******/ 		if(installedModules[moduleId]) {
/******/ 			return installedModules[moduleId].exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = installedModules[moduleId] = {
/******/ 			i: moduleId,
/******/ 			l: false,
/******/ 			exports: {}
/******/ 		};
/******/
/******/ 		// Execute the module function
/******/ 		modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ 		// Flag the module as loaded
/******/ 		module.l = true;
/******/
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/
/******/
/******/ 	// expose the modules object (__webpack_modules__)
/******/ 	__webpack_require__.m = modules;
/******/
/******/ 	// expose the module cache
/******/ 	__webpack_require__.c = installedModules;
/******/
/******/ 	// define getter function for harmony exports
/******/ 	__webpack_require__.d = function(exports, name, getter) {
/******/ 		if(!__webpack_require__.o(exports, name)) {
/******/ 			Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ 		}
/******/ 	};
/******/
/******/ 	// define __esModule on exports
/******/ 	__webpack_require__.r = function(exports) {
/******/ 		if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ 			Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ 		}
/******/ 		Object.defineProperty(exports, '__esModule', { value: true });
/******/ 	};
/******/
/******/ 	// create a fake namespace object
/******/ 	// mode & 1: value is a module id, require it
/******/ 	// mode & 2: merge all properties of value into the ns
/******/ 	// mode & 4: return value when already ns object
/******/ 	// mode & 8|1: behave like require
/******/ 	__webpack_require__.t = function(value, mode) {
/******/ 		if(mode & 1) value = __webpack_require__(value);
/******/ 		if(mode & 8) return value;
/******/ 		if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ 		var ns = Object.create(null);
/******/ 		__webpack_require__.r(ns);
/******/ 		Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ 		if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ 		return ns;
/******/ 	};
/******/
/******/ 	// getDefaultExport function for compatibility with non-harmony modules
/******/ 	__webpack_require__.n = function(module) {
/******/ 		var getter = module && module.__esModule ?
/******/ 			function getDefault() { return module['default']; } :
/******/ 			function getModuleExports() { return module; };
/******/ 		__webpack_require__.d(getter, 'a', getter);
/******/ 		return getter;
/******/ 	};
/******/
/******/ 	// Object.prototype.hasOwnProperty.call
/******/ 	__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ 	// __webpack_public_path__
/******/ 	__webpack_require__.p = "lib/mapboxgl/";
/******/
/******/
/******/ 	// Load entry module and return exports
/******/ 	return __webpack_require__(__webpack_require__.s = 705);
/******/ })
/************************************************************************/
/******/ ({

/***/ 0:
/***/ (function(module, exports) {

module.exports = require("@babel/runtime/helpers/interopRequireDefault");

/***/ }),

/***/ 1:
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */

// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.

function normalizeComponent(
  scriptExports,
  render,
  staticRenderFns,
  functionalTemplate,
  injectStyles,
  scopeId,
  moduleIdentifier /* server only */,
  shadowMode /* vue-cli only */
) {
  // Vue.extend constructor export interop
  var options =
    typeof scriptExports === 'function' ? scriptExports.options : scriptExports

  // render functions
  if (render) {
    options.render = render
    options.staticRenderFns = staticRenderFns
    options._compiled = true
  }

  // functional template
  if (functionalTemplate) {
    options.functional = true
  }

  // scopedId
  if (scopeId) {
    options._scopeId = 'data-v-' + scopeId
  }

  var hook
  if (moduleIdentifier) {
    // server build
    hook = function (context) {
      // 2.3 injection
      context =
        context || // cached call
        (this.$vnode && this.$vnode.ssrContext) || // stateful
        (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
      // 2.2 with runInNewContext: true
      if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
        context = __VUE_SSR_CONTEXT__
      }
      // inject component styles
      if (injectStyles) {
        injectStyles.call(this, context)
      }
      // register component module identifier for async chunk inferrence
      if (context && context._registeredComponents) {
        context._registeredComponents.add(moduleIdentifier)
      }
    }
    // used by ssr in case component is cached and beforeCreate
    // never gets called
    options._ssrRegister = hook
  } else if (injectStyles) {
    hook = shadowMode
      ? function () {
          injectStyles.call(
            this,
            (options.functional ? this.parent : this).$root.$options.shadowRoot
          )
        }
      : injectStyles
  }

  if (hook) {
    if (options.functional) {
      // for template-only hot-reload because in that case the render fn doesn't
      // go through the normalizer
      options._injectStyles = hook
      // register for functional component in vue file
      var originalRender = options.render
      options.render = function renderWithStyleInjection(h, context) {
        hook.call(context)
        return originalRender(h, context)
      }
    } else {
      // inject component registration as beforeCreate hook
      var existing = options.beforeCreate
      options.beforeCreate = existing ? [].concat(existing, hook) : [hook]
    }
  }

  return {
    exports: scriptExports,
    options: options
  }
}


/***/ }),

/***/ 12:
/***/ (function(module, exports) {

module.exports = require("@supermap/vue-iclient-mapboxgl/lib/_utils/util.js");

/***/ }),

/***/ 2:
/***/ (function(module, exports) {

module.exports = require("@supermap/vue-iclient-mapboxgl/lib/init.js");

/***/ }),

/***/ 23:
/***/ (function(module, exports) {

module.exports = require("lodash.isequal");

/***/ }),

/***/ 292:
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_ref_0_1_node_modules_vue_loader_lib_index_js_vue_loader_options_AnimateMarkerLayer_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(293);
/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_ref_0_1_node_modules_vue_loader_lib_index_js_vue_loader_options_AnimateMarkerLayer_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_ref_0_1_node_modules_vue_loader_lib_index_js_vue_loader_options_AnimateMarkerLayer_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__);
/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_ref_0_1_node_modules_vue_loader_lib_index_js_vue_loader_options_AnimateMarkerLayer_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_ref_0_1_node_modules_vue_loader_lib_index_js_vue_loader_options_AnimateMarkerLayer_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
 /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_ref_0_1_node_modules_vue_loader_lib_index_js_vue_loader_options_AnimateMarkerLayer_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0___default.a); 

/***/ }),

/***/ 293:
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(0);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _inheritsLoose2 = _interopRequireDefault(__webpack_require__(3));
var _vuePropertyDecorator = __webpack_require__(9);
var _mapGetter = _interopRequireDefault(__webpack_require__(7));
var _AnimateMarkerLayerViewModel = _interopRequireDefault(__webpack_require__(707));
var _BreathingApertureMarker = _interopRequireDefault(__webpack_require__(708));
var _DiffusedApertureMarker = _interopRequireDefault(__webpack_require__(709));
var _HaloRingMarker = _interopRequireDefault(__webpack_require__(710));
var _RotatingApertureMarker = _interopRequireDefault(__webpack_require__(711));
var _RotatingTextBorderMarker = _interopRequireDefault(__webpack_require__(712));
var _FluorescenceMarker = _interopRequireDefault(__webpack_require__(713));
var _lodash = _interopRequireDefault(__webpack_require__(23));
var __decorate = void 0 && (void 0).__decorate || function (decorators, target, key, desc) {
  var c = arguments.length,
    r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc,
    d;
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
  return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var AnimateMarkerLayer = /*#__PURE__*/function (_Mixins) {
  (0, _inheritsLoose2.default)(AnimateMarkerLayer, _Mixins);
  function AnimateMarkerLayer() {
    var _this;
    _this = _Mixins.apply(this, arguments) || this;
    _this.fitBounds = true;
    return _this;
  }
  var _proto = AnimateMarkerLayer.prototype;
  _proto.featuresChanged = function featuresChanged(newVal, oldVal) {
    if (this.viewModel && !(0, _lodash.default)(newVal, oldVal)) {
      this._pointFeatures = this._getPointFeatures(this.features);
      this._getMarkerElement(this._pointFeatures);
      this._markersElement.length > 0 && this.viewModel.setFeatures(this._pointFeatures, this._markersElement, !oldVal);
    }
  };
  _proto.typeChanged = function typeChanged() {
    if (this.viewModel) {
      this._pointFeatures = this._getPointFeatures(this.features);
      this._getMarkerElement(this._pointFeatures);
      this._markersElement.length > 0 && this.viewModel.setType(this._markersElement);
    }
  };
  _proto.widthChanged = function widthChanged() {
    if (this.viewModel && this.width) {
      this.marker && this.marker.setMarkersWidth(this.width);
    }
  };
  _proto.heightChanged = function heightChanged() {
    if (this.viewModel && this.height) {
      this.marker && this.marker.setMarkersHeight && this.marker.setMarkersHeight(this.height);
    }
  };
  _proto.textColorChanged = function textColorChanged() {
    if (this.viewModel && this.textColor) {
      this.marker && this.marker.setMarkersTextColor(this.textColor);
    }
  };
  _proto.textFontSizeChanged = function textFontSizeChanged() {
    if (this.viewModel && this.textFontSize) {
      this.marker && this.marker.setMarkersTextFontSize(this.textFontSize);
    }
  };
  _proto.colorsChanged = function colorsChanged() {
    if (this.viewModel && this.colors && this.colors.length && this.colors.length > 0) {
      this.marker && this.marker.setMarkersColors(this.colors);
    }
  };
  _proto.textFieldChanged = function textFieldChanged() {
    if (this.textField) {
      this.marker && this.marker.setMarkersTextField(this.textField);
    }
  };
  _proto.created = function created() {
    this._pointFeatures = this._getPointFeatures(this.features);
    this._getMarkerElement(this._pointFeatures);
    this.viewModel = new _AnimateMarkerLayerViewModel.default(this._pointFeatures, this._markersElement, this.fitBounds);
  };
  _proto.mounted = function mounted() {
    this._markersElement = [];
  };
  _proto._getMarkerElement = function _getMarkerElement(features) {
    this._markersElement = [];
    this.marker = null;
    var width = this.width,
      height = this.height,
      colors = this.colors,
      textFontSize = this.textFontSize,
      textColor = this.textColor,
      textField = this.textField;
    if (!this.features || JSON.stringify(this.features) === '{}' || !this.features.features) {
      this.viewModel && this.viewModel.removed();
      return;
    }
    if (features.features.length === 0) {
      this.viewModel && this.viewModel.removed();
      return;
    }
    switch (this.type) {
      case 'rotatingAperture':
        this.marker = new _RotatingApertureMarker.default(features, {
          width: width,
          colors: colors,
          textField: textField,
          textColor: textColor,
          textFontSize: textFontSize
        });
        break;
      case 'haloRing':
        this.marker = new _HaloRingMarker.default(features, {
          width: width,
          colors: colors,
          textField: textField,
          textColor: textColor,
          textFontSize: textFontSize
        });
        break;
      case 'breathingAperture':
        this.marker = new _BreathingApertureMarker.default(features, {
          width: width,
          colors: colors,
          textField: textField,
          textColor: textColor,
          textFontSize: textFontSize
        });
        break;
      case 'diffusedAperture':
        this.marker = new _DiffusedApertureMarker.default(features, {
          width: width,
          colors: colors,
          textField: textField,
          textColor: textColor,
          textFontSize: textFontSize
        });
        break;
      case 'rotatingTextBorder':
        this.marker = new _RotatingTextBorderMarker.default(features, {
          width: width,
          height: height,
          colors: colors,
          textField: textField,
          textColor: textColor,
          textFontSize: textFontSize
        });
        break;
      case 'fluorescence':
        this.marker = new _FluorescenceMarker.default(features, {
          width: width,
          colors: colors,
          textField: textField,
          textColor: textColor,
          textFontSize: textFontSize
        });
        break;
    }
    this.marker && (this._markersElement = this.marker.getMarkersElement());
  };
  _proto._getPointFeatures = function _getPointFeatures(features) {
    var resultFeatures = [];
    features && features.features && features.features.forEach(function (feature) {
      var geometry = feature.geometry;
      if (geometry && geometry.coordinates && geometry.coordinates.length !== 0 && geometry.type === 'Point') {
        resultFeatures.push(feature);
      }
    });
    return {
      type: 'FeatureCollection',
      features: resultFeatures
    };
  };
  _proto.render = function render() {};
  return AnimateMarkerLayer;
}((0, _vuePropertyDecorator.Mixins)(_mapGetter.default));
__decorate([(0, _vuePropertyDecorator.Prop)()], AnimateMarkerLayer.prototype, "features", void 0);
__decorate([(0, _vuePropertyDecorator.Prop)({
  default: 'breathingAperture'
})], AnimateMarkerLayer.prototype, "type", void 0);
__decorate([(0, _vuePropertyDecorator.Prop)()], AnimateMarkerLayer.prototype, "width", void 0);
__decorate([(0, _vuePropertyDecorator.Prop)()], AnimateMarkerLayer.prototype, "height", void 0);
__decorate([(0, _vuePropertyDecorator.Prop)()], AnimateMarkerLayer.prototype, "colors", void 0);
__decorate([(0, _vuePropertyDecorator.Prop)({
  default: 14
})], AnimateMarkerLayer.prototype, "textFontSize", void 0);
__decorate([(0, _vuePropertyDecorator.Prop)()], AnimateMarkerLayer.prototype, "textColor", void 0);
__decorate([(0, _vuePropertyDecorator.Prop)()], AnimateMarkerLayer.prototype, "textField", void 0);
__decorate([(0, _vuePropertyDecorator.Prop)()], AnimateMarkerLayer.prototype, "fitBounds", void 0);
__decorate([(0, _vuePropertyDecorator.Watch)('features')], AnimateMarkerLayer.prototype, "featuresChanged", null);
__decorate([(0, _vuePropertyDecorator.Watch)('type')], AnimateMarkerLayer.prototype, "typeChanged", null);
__decorate([(0, _vuePropertyDecorator.Watch)('width')], AnimateMarkerLayer.prototype, "widthChanged", null);
__decorate([(0, _vuePropertyDecorator.Watch)('height')], AnimateMarkerLayer.prototype, "heightChanged", null);
__decorate([(0, _vuePropertyDecorator.Watch)('textColor')], AnimateMarkerLayer.prototype, "textColorChanged", null);
__decorate([(0, _vuePropertyDecorator.Watch)('textFontSize')], AnimateMarkerLayer.prototype, "textFontSizeChanged", null);
__decorate([(0, _vuePropertyDecorator.Watch)('colors')], AnimateMarkerLayer.prototype, "colorsChanged", null);
__decorate([(0, _vuePropertyDecorator.Watch)('textField')], AnimateMarkerLayer.prototype, "textFieldChanged", null);
AnimateMarkerLayer = __decorate([(0, _vuePropertyDecorator.Component)({
  name: 'SmAnimateMarkerLayer'
})], AnimateMarkerLayer);
var _default = exports.default = AnimateMarkerLayer;

/***/ }),

/***/ 3:
/***/ (function(module, exports) {

module.exports = require("@babel/runtime/helpers/inheritsLoose");

/***/ }),

/***/ 34:
/***/ (function(module, exports) {

module.exports = require("@turf/bbox");

/***/ }),

/***/ 42:
/***/ (function(module, exports) {

module.exports = require("@turf/transform-scale");

/***/ }),

/***/ 49:
/***/ (function(module, exports) {

module.exports = require("colorcolor");

/***/ }),

/***/ 5:
/***/ (function(module, exports) {

module.exports = require("@supermap/vue-iclient-mapboxgl/static/libs/mapboxgl/mapbox-gl-enhance.js");

/***/ }),

/***/ 7:
/***/ (function(module, exports) {

module.exports = require("@supermap/vue-iclient-mapboxgl/lib/_mixin/map-getter.js");

/***/ }),

/***/ 705:
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(0);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _AnimateMarkerLayer = _interopRequireDefault(__webpack_require__(706));
var _init = _interopRequireDefault(__webpack_require__(2));
_AnimateMarkerLayer.default.install = function (Vue, opts) {
  (0, _init.default)(Vue, opts);
  Vue.component(_AnimateMarkerLayer.default.options ? _AnimateMarkerLayer.default.options.name : _AnimateMarkerLayer.default.name, _AnimateMarkerLayer.default);
};
var _default = exports.default = _AnimateMarkerLayer.default;

/***/ }),

/***/ 706:
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _AnimateMarkerLayer_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(292);
/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _AnimateMarkerLayer_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _AnimateMarkerLayer_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(1);
var render, staticRenderFns




/* normalize component */

var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(
  _AnimateMarkerLayer_vue_vue_type_script_lang_ts___WEBPACK_IMPORTED_MODULE_0__["default"],
  render,
  staticRenderFns,
  false,
  null,
  null,
  null
  
)

/* harmony default export */ __webpack_exports__["default"] = (component.exports);

/***/ }),

/***/ 707:
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(0);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _inheritsLoose2 = _interopRequireDefault(__webpack_require__(3));
var _mapboxGlEnhance = _interopRequireDefault(__webpack_require__(5));
var _envelope = _interopRequireDefault(__webpack_require__(87));
var _bbox = _interopRequireDefault(__webpack_require__(34));
var _transformScale = _interopRequireDefault(__webpack_require__(42));
var AnimateMarkerLayerViewModel = exports.default = /*#__PURE__*/function (_mapboxgl$Evented) {
  (0, _inheritsLoose2.default)(AnimateMarkerLayerViewModel, _mapboxgl$Evented);
  function AnimateMarkerLayerViewModel(features, markersElement, fitBounds) {
    var _this;
    if (fitBounds === void 0) {
      fitBounds = true;
    }
    _this = _mapboxgl$Evented.call(this) || this;
    _this.features = features;
    _this.markers = [];
    _this.markersElement = markersElement;
    _this.fitBounds = fitBounds;
    return _this;
  }
  var _proto = AnimateMarkerLayerViewModel.prototype;
  _proto.setMap = function setMap(mapInfo) {
    var map = mapInfo.map;
    if (!map) {
      throw new Error('map is requierd');
    }
    this.map = map;
    this.features && this._initalizeMarkerLayer();
  };
  _proto.setType = function setType(markersElement) {
    this.markersElement = markersElement;
    this._initalizeMarkerLayer();
  };
  _proto.setFeatures = function setFeatures(features, markersElement, fitBounds) {
    this.markersElement = markersElement;
    this.features = features;
    this._initalizeMarkerLayer(fitBounds);
  };
  _proto._initalizeMarkerLayer = function _initalizeMarkerLayer(fitBounds) {
    if (!this.features || JSON.stringify(this.features) === '{}') {
      return;
    }
    this.removed();
    this._createMarker(fitBounds);
  };
  _proto._createMarker = function _createMarker(fitBounds) {
    var _this2 = this;
    if (fitBounds === void 0) {
      fitBounds = true;
    }
    if (this.markersElement.length === 0 || !this.map || !this.features || !this.features.features || this.features.features.length === 0) {
      return;
    }
    this.features.features.forEach(function (point, index) {
      var coordinates = point.geometry.coordinates;
      if (coordinates) {
        var marker = new _mapboxGlEnhance.default.Marker(_this2.markersElement[index] || _this2.markersElement[0]).setLngLat(coordinates).addTo(_this2.map);
        _this2.markers.push(marker);
      }
    }, this);
    if (this.fitBounds && fitBounds) {
      var bounds = (0, _bbox.default)((0, _transformScale.default)((0, _envelope.default)(this.features), 1.7));
      this.fitBounds && this.map.fitBounds([[bounds[0], bounds[1]], [bounds[2], bounds[3]]], {
        maxZoom: 17
      });
    }
  };
  _proto.removed = function removed() {
    this.markers.length > 0 && this.markers.forEach(function (marker) {
      marker && marker.remove();
    });
    this.markers = [];
  };
  return AnimateMarkerLayerViewModel;
}(_mapboxGlEnhance.default.Evented);

/***/ }),

/***/ 708:
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(0);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _inheritsLoose2 = _interopRequireDefault(__webpack_require__(3));
var _Marker2 = _interopRequireDefault(__webpack_require__(99));
var BreathingApertureMarker = exports.default = /*#__PURE__*/function (_Marker) {
  (0, _inheritsLoose2.default)(BreathingApertureMarker, _Marker);
  function BreathingApertureMarker(features, options) {
    var _this;
    if (options === void 0) {
      options = {};
    }
    _this = _Marker.call(this, features, options) || this;
    _this.features && _this._createMarker();
    return _this;
  }
  var _proto = BreathingApertureMarker.prototype;
  _proto.setMarkersWidth = function setMarkersWidth(width) {
    this.options.width = width;
    var pulse = document.getElementsByClassName('sm-component-animate-marker__pulse');
    for (var i = 0; i < pulse.length; i++) {
      this._setBreathingApertureWidth(pulse[i].style);
    }
  };
  _proto.setMarkersColors = function setMarkersColors(colors) {
    this.options.colors = colors;
    if (colors && colors.length && colors.length > 0) {
      var dot = document.getElementsByClassName('sm-component-animate-marker__dot-point');
      for (var i = 0; i < dot.length; i++) {
        dot[i].style.background = this.options.colors[0];
      }
      var pulse = document.getElementsByClassName('sm-component-animate-marker__pulse');
      for (var _i = 0; _i < pulse.length; _i++) {
        var style = pulse[_i].style;
        style.borderColor = this.options.colors[0];
        style.boxShadow = "0 0 12px " + this.options.colors[1] + ", 0 0 20px " + this.options.colors[1] + " inset";
      }
    }
  };
  _proto._createMarker = function _createMarker() {
    var _this2 = this;
    this.features.features.forEach(function (point) {
      var markerContainer = document.createElement('div');
      markerContainer.className = 'sm-component-animate-marker--breathing-aperture';
      var dot = document.createElement('span');
      dot.className = 'sm-component-animate-marker__dot-point';
      var colors;
      if (_this2.options.colors && _this2.options.colors.length && _this2.options.colors.length > 0) {
        colors = _this2.options.colors;
      }
      colors && (dot.style.background = colors[0]);
      markerContainer.appendChild(dot);
      var childElements = _this2._createMakerElement(3, 'span', ['sm-component-animate-marker__delay', 'sm-component-animate-marker__pulse']);
      childElements.forEach(function (element) {
        if (colors) {
          element.style.borderColor = colors[0];
          element.style.boxShadow = "0 0 12px " + colors[1] + ", 0 0 20px " + colors[1] + " inset";
        }
        _this2._setBreathingApertureWidth(element.style);
        markerContainer.appendChild(element);
      });
      var nameContainer = _this2._getTextContainer(point, 'breathing-aperture-name');
      markerContainer.appendChild(nameContainer);
      _this2.markersElement.push(markerContainer);
    }, this);
  };
  _proto._setBreathingApertureWidth = function _setBreathingApertureWidth(style) {
    var width = this.options.width;
    if (width) {
      style.width = width + 'px';
      style.height = width + 'px';
      style.top = -width / 2 + 'px';
      style.left = -width / 2 + 'px';
      style.borderRadius = width / 2 + 'px';
    }
  };
  _proto._createMakerElement = function _createMakerElement(length, type, classNames) {
    var markerElements = [];
    for (var i = 1; i < length + 1; i++) {
      var element = document.createElement(type);
      element.className = classNames[0] + "-0" + i + " " + classNames[1];
      markerElements.push(element);
    }
    return markerElements;
  };
  return BreathingApertureMarker;
}(_Marker2.default);

/***/ }),

/***/ 709:
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(0);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _inheritsLoose2 = _interopRequireDefault(__webpack_require__(3));
var _Marker2 = _interopRequireDefault(__webpack_require__(99));
var DiffusedApertureMarker = exports.default = /*#__PURE__*/function (_Marker) {
  (0, _inheritsLoose2.default)(DiffusedApertureMarker, _Marker);
  function DiffusedApertureMarker(features, options) {
    var _this;
    if (options === void 0) {
      options = {};
    }
    _this = _Marker.call(this, features, options) || this;
    _this.features && _this._createMarker();
    return _this;
  }
  var _proto = DiffusedApertureMarker.prototype;
  _proto.setMarkersWidth = function setMarkersWidth(width) {
    this.options.width = width;
    var markerContainer = document.getElementsByClassName('sm-component-animate-marker--diffused-aperture');
    for (var i = 0; i < markerContainer.length; i++) {
      var style = markerContainer[i].style;
      style.setProperty('--container-width', width + 'px');
    }
  };
  _proto.setMarkersColors = function setMarkersColors(colors) {
    this.options.colors = colors;
    if (colors && colors.length && colors.length > 0) {
      var markerContainer = document.getElementsByClassName('sm-component-animate-marker--diffused-aperture');
      for (var i = 0; i < markerContainer.length; i++) {
        var style = markerContainer[i].style;
        style.setProperty('--background-color', this.options.colors[0]);
        style.setProperty('--box-shadow-color', this.options.colors[1] || this.options.colors[0]);
      }
    }
  };
  _proto._createMarker = function _createMarker() {
    var _this2 = this;
    this.features.features.forEach(function (point) {
      var markerContainer = document.createElement('div');
      markerContainer.className = 'sm-component-animate-marker--diffused-aperture';
      var wrapper = document.createElement('div');
      wrapper.className = 'sm-component-animate-marker__diffused-aperture-wrapper';
      var bg = document.createElement('div');
      bg.className = 'sm-component-animate-marker__bg';
      wrapper.appendChild(bg);
      var circle = document.createElement('div');
      circle.className = 'sm-component-animate-marker__circle';
      wrapper.appendChild(circle);
      markerContainer.appendChild(wrapper);
      var nameContainer = _this2._getTextContainer(point, 'diffused-aperture-name');
      markerContainer.appendChild(nameContainer);
      _this2.options.width && markerContainer.style.setProperty('--container-width', _this2.options.width + 'px');
      if (_this2.options.colors && _this2.options.colors.length && _this2.options.colors.length > 0) {
        markerContainer.style.setProperty('--background-color', _this2.options.colors[0]);
        markerContainer.style.setProperty('--box-shadow-color', _this2.options.colors[1] || _this2.options.colors[0]);
      }
      _this2.markersElement.push(markerContainer);
    }, this);
  };
  return DiffusedApertureMarker;
}(_Marker2.default);

/***/ }),

/***/ 710:
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(0);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _inheritsLoose2 = _interopRequireDefault(__webpack_require__(3));
var _colorcolor = _interopRequireDefault(__webpack_require__(49));
var _Marker2 = _interopRequireDefault(__webpack_require__(99));
var HaloRingMarker = exports.default = /*#__PURE__*/function (_Marker) {
  (0, _inheritsLoose2.default)(HaloRingMarker, _Marker);
  function HaloRingMarker(features, options) {
    var _this;
    if (options === void 0) {
      options = {};
    }
    _this = _Marker.call(this, features, options) || this;
    _this.features && _this._createMarker();
    return _this;
  }
  var _proto = HaloRingMarker.prototype;
  _proto.setMarkersWidth = function setMarkersWidth(width) {
    this.options.width = width;
    var markerContainer = document.getElementsByClassName('sm-component-animate-marker--halo-ring');
    for (var i = 0; i < markerContainer.length; i++) {
      var style = markerContainer[i].style;
      style.setProperty('--halo-width', this.options.width + 'px');
      style.setProperty('--halo-left', -this.options.width / 2 + 'px');
      style.setProperty('--box-shadow-width-1', this.options.width / 10 + 'px');
      style.setProperty('--box-shadow-width-2', this.options.width / 4 + 'px');
    }
  };
  _proto.setMarkersColors = function setMarkersColors(colors) {
    this.options.colors = colors;
    if (colors && colors.length && colors.length > 0) {
      var markerContainer = document.getElementsByClassName('sm-component-animate-marker--halo-ring');
      for (var i = 0; i < markerContainer.length; i++) {
        var style = markerContainer[i].style;
        style.setProperty('--color-1', this._getColorWithOpacity(this.options.colors[0], 0.3));
        style.setProperty('--color-1-transparent', this._getColorWithOpacity(this.options.colors[0], 0.1));
        style.setProperty('--color-2', this._getColorWithOpacity(this.options.colors[1], 0.3));
        style.setProperty('--color-2-transparent', this._getColorWithOpacity(this.options.colors[1], 0.1));
      }
    }
  };
  _proto._createMarker = function _createMarker() {
    var _this2 = this;
    this.features.features.forEach(function (point) {
      var markerContainer = document.createElement('div');
      markerContainer.className = 'sm-component-animate-marker--halo-ring';
      var childElements = _this2._createMakerElement(8, 'div', ['sm-component-animate-marker__ring', 'sm-component-animate-marker__halo']);
      childElements.forEach(function (element) {
        markerContainer.appendChild(element);
      });
      var nameContainer = _this2._getTextContainer(point, 'halo-ring-name');
      markerContainer.appendChild(nameContainer);
      if (_this2.options.width) {
        markerContainer.style.setProperty('--halo-width', _this2.options.width + 'px');
        markerContainer.style.setProperty('--halo-left', -_this2.options.width / 2 + 'px');
        markerContainer.style.setProperty('--box-shadow-width-1', _this2.options.width / 10 + 'px');
        markerContainer.style.setProperty('--box-shadow-width-2', _this2.options.width / 4 + 'px');
      }
      if (_this2.options.colors && _this2.options.colors.length && _this2.options.colors.length > 0) {
        markerContainer.style.setProperty('--color-1', _this2._getColorWithOpacity((0, _colorcolor.default)(_this2.options.colors[0], 'rgba', true), 0.3));
        markerContainer.style.setProperty('--color-1-transparent', _this2._getColorWithOpacity((0, _colorcolor.default)(_this2.options.colors[0], 'rgba', true), 0.1));
        markerContainer.style.setProperty('--color-2', _this2._getColorWithOpacity((0, _colorcolor.default)(_this2.options.colors[1], 'rgba', true), 0.3));
        markerContainer.style.setProperty('--color-2-transparent', _this2._getColorWithOpacity((0, _colorcolor.default)(_this2.options.colors[1], 'rgba', true), 0.1));
      }
      _this2.markersElement.push(markerContainer);
    }, this);
  };
  _proto._createMakerElement = function _createMakerElement(length, type, classNames) {
    var markerElements = [];
    for (var i = 1; i < length + 1; i++) {
      var element = document.createElement(type);
      element.className = classNames[0] + "-0" + i + " " + classNames[1];
      markerElements.push(element);
    }
    return markerElements;
  };
  return HaloRingMarker;
}(_Marker2.default);

/***/ }),

/***/ 711:
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(0);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _inheritsLoose2 = _interopRequireDefault(__webpack_require__(3));
var _Marker2 = _interopRequireDefault(__webpack_require__(99));
var RotatingApertureMarker = exports.default = /*#__PURE__*/function (_Marker) {
  (0, _inheritsLoose2.default)(RotatingApertureMarker, _Marker);
  function RotatingApertureMarker(features, options) {
    var _this;
    if (options === void 0) {
      options = {};
    }
    _this = _Marker.call(this, features, options) || this;
    _this.features && _this._createMarker();
    return _this;
  }
  var _proto = RotatingApertureMarker.prototype;
  _proto.setMarkersWidth = function setMarkersWidth(width) {
    this.options.width = width;
    if (!this.options.width || this.options.width < 40) {
      return;
    }
    var dotsMarker = document.getElementsByClassName('sm-component-animate-marker--rotating-aperture');
    for (var i = 0; i < dotsMarker.length; i++) {
      dotsMarker[i].style.setProperty('--container-width', this.options.width + "px");
      var dots1 = dotsMarker[i].children[0];
      var dots2 = dotsMarker[i].children[1];
      var dots3 = dotsMarker[i].children[2];
      dots1.setAttribute('style', this._getDotsStyleObj(this.options.width - 32));
      dots2.setAttribute('style', this._getDotsStyleObj(this.options.width - 16));
      dots3.setAttribute('style', this._getDotsStyleObj(this.options.width));
    }
  };
  _proto.setMarkersColors = function setMarkersColors(colors) {
    this.options.colors = colors;
    if (colors && colors.length && colors.length > 0) {
      var dotsMarker = document.getElementsByClassName('sm-component-animate-marker--rotating-aperture');
      for (var i = 0; i < dotsMarker.length; i++) {
        var style = dotsMarker[i].style;
        style.setProperty('--light-color', this.options.colors[1]);
        style.setProperty('--color', this.options.colors[0]);
        style.setProperty('--line-color', this._getColorWithOpacity(this.options.colors[0], 0.2));
      }
    }
  };
  _proto._createMarker = function _createMarker() {
    var _this2 = this;
    this.features.features.forEach(function (point) {
      var width = _this2.options.width && _this2.options.width >= 40 ? _this2.options.width : 50;
      var markerContainer = document.createElement('div');
      markerContainer.className = 'sm-component-animate-marker--rotating-aperture';
      var childElements = _this2._createMakerElement(3, 'div', ['sm-component-animate-marker__dots', 'sm-component-animate-marker__dots']);
      childElements.forEach(function (element, index) {
        var elementWidth;
        index === 0 && (elementWidth = width - 32);
        index === 1 && (elementWidth = width - 16);
        index === 2 && (elementWidth = width);
        element.setAttribute('style', _this2._getDotsStyleObj(elementWidth));
        markerContainer.appendChild(element);
      });
      var nameContainer = _this2._getTextContainer(point, 'rotating-aperture-name');
      markerContainer.appendChild(nameContainer);
      if (_this2.options.colors && _this2.options.colors.length && _this2.options.colors.length > 0 && _this2.options.colors[0].indexOf('rgb') > -1) {
        markerContainer.style.setProperty('--color', _this2.options.colors[0]);
        markerContainer.style.setProperty('--line-color', _this2._getColorWithOpacity(_this2.options.colors[0], 0.2));
        markerContainer.style.setProperty('--light-color', _this2.options.colors[1]);
      }
      markerContainer.style.setProperty('--container-width', width + 'px');
      _this2.markersElement.push(markerContainer);
    }, this);
  };
  _proto._createMakerElement = function _createMakerElement(length, type, classNames) {
    var markerElements = [];
    for (var i = 1; i < length + 1; i++) {
      var element = document.createElement(type);
      element.className = classNames[0] + "-0" + i + " " + classNames[1];
      markerElements.push(element);
    }
    return markerElements;
  };
  _proto._getDotsStyleObj = function _getDotsStyleObj(width) {
    return "--dots-width: " + width + "px;\n      --dots-height: " + width + "px;\n      --dots-box-shadow-x: " + (width / 2 + 6) + "px;\n      --dots-box-shadow-x-negative: -" + (width / 2 + 6) + "px;\n      --dots-box-shadow-radius1: " + (width / 2 - 2) + "px;\n      --dots-box-shadow-radius1-negative: -" + (width / 2 - 2) + "px;\n      --dots-box-shadow-radius2: " + (width / 2 - 3) + "px;\n      --dots-box-shadow-radius2-negative: -" + (width / 2 - 3) + "px;";
  };
  return RotatingApertureMarker;
}(_Marker2.default);

/***/ }),

/***/ 712:
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(0);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _inheritsLoose2 = _interopRequireDefault(__webpack_require__(3));
var _Marker2 = _interopRequireDefault(__webpack_require__(99));
var RotatingTextBorderMarker = exports.default = /*#__PURE__*/function (_Marker) {
  (0, _inheritsLoose2.default)(RotatingTextBorderMarker, _Marker);
  function RotatingTextBorderMarker(features, options) {
    var _this;
    if (options === void 0) {
      options = {};
    }
    _this = _Marker.call(this, features) || this;
    _this.options = options;
    _this.features && _this._createMarker();
    return _this;
  }
  var _proto = RotatingTextBorderMarker.prototype;
  _proto.setMarkersWidth = function setMarkersWidth(width) {
    this.options.width = width;
    this._setMarkerContainerProperty({
      '--clip-width-1': width + width / 10 + 'px',
      '--clip-width-2': width + width / 10 - 2 + 'px',
      '--boder-width': width + 'px',
      '--text-left-position': -width / 2 + 'px'
    });
  };
  _proto.setMarkersHeight = function setMarkersHeight(height) {
    this.options.height = height;
    this._setMarkerContainerProperty({
      '--clip-height-1': height + height / 10 + 'px',
      '--clip-height-2': height + height / 10 - 2 + 'px',
      '--boder-height': height + 'px'
    });
  };
  _proto.setMarkersTextField = function setMarkersTextField(textField) {
    if (!this.features || JSON.stringify(this.features) === '{}') {
      return;
    }
    this.options.textField = textField;
    var name = document.getElementsByClassName('sm-component-animate-marker__text');
    for (var i = 0; i < name.length; i++) {
      var properties = this.features.features[i] && this.features.features[i].properties;
      if (properties && properties[textField]) {
        name[i].innerHTML = properties[textField];
      } else {
        name[i].innerHTML = '';
      }
    }
  };
  _proto.setMarkersTextColor = function setMarkersTextColor(textColor) {
    this.options.textColor = textColor;
    this._setMarkerContainerProperty({
      '--text-color': textColor
    });
  };
  _proto.setMarkersTextFontSize = function setMarkersTextFontSize(textFontSize) {
    this.options.textFontSize = textFontSize;
    this._setMarkerContainerProperty({
      '--text-font-size': textFontSize + 'px'
    });
  };
  _proto.setMarkersColors = function setMarkersColors(colors) {
    this.options.colors = colors;
    if (colors && colors.length && colors.length > 0) {
      this._setMarkerContainerProperty({
        '--border-color': colors[0],
        '--box-shadow-color': colors[1]
      });
    }
  };
  _proto._createMarker = function _createMarker() {
    var _this2 = this;
    this.features.features.forEach(function (point) {
      var markerContainer = document.createElement('div');
      markerContainer.className = 'sm-component-animate-marker--text-boder';
      var border = document.createElement('div');
      border.className = 'sm-component-animate-marker__boder';
      var keys = Object.keys(point.properties);
      var name;
      if (point.properties || Object.keys(point.properties).length !== 0) {
        name = point.properties[_this2.options.textField] || point.properties[keys[0]];
      }
      var span = document.createElement('span');
      span.className = 'sm-component-animate-marker__text';
      span.innerHTML = name || '';
      border.appendChild(span);
      if (_this2.options.colors && _this2.options.colors.length && _this2.options.colors.length > 0) {
        markerContainer.style.setProperty('--border-color', _this2.options.colors[0]);
        markerContainer.style.setProperty('--box-shadow-color', _this2.options.colors[1]);
      }
      _this2.options.textColor && markerContainer.style.setProperty('--text-color', _this2.options.textColor);
      _this2.options.textFontSize && markerContainer.style.setProperty('--text-font-size', _this2.options.textFontSize + 'px');
      if (_this2.options.width) {
        markerContainer.style.setProperty('--clip-width-1', _this2.options.width + _this2.options.width / 10 + 'px');
        markerContainer.style.setProperty('--clip-width-2', _this2.options.width + _this2.options.width / 10 - 2 + 'px');
        markerContainer.style.setProperty('--boder-width', _this2.options.width + 'px');
        markerContainer.style.setProperty('--text-left-position', -_this2.options.width / 2 + 'px');
      }
      if (_this2.options.height) {
        markerContainer.style.setProperty('--clip-height-1', _this2.options.height + _this2.options.width / 10 + 'px');
        markerContainer.style.setProperty('--clip-height-2', _this2.options.height + _this2.options.width / 10 - 2 + 'px');
        markerContainer.style.setProperty('--boder-height', _this2.options.height + 'px');
      }
      if ((_this2.options.width || 100) > (_this2.options.width || 200)) {
        markerContainer.style.setProperty('--animation-name', 'clipMe2');
      } else {
        markerContainer.style.setProperty('--animation-name', 'clipMe1');
      }
      markerContainer.appendChild(border);
      _this2.markersElement.push(markerContainer);
    }, this);
  };
  _proto._setMarkerContainerProperty = function _setMarkerContainerProperty(properties) {
    var _this3 = this;
    var markerContainer = document.getElementsByClassName('sm-component-animate-marker--text-boder');
    var _loop = function _loop() {
      var style = markerContainer[i].style;
      Object.keys(properties).forEach(function (key) {
        style.setProperty(key, properties[key]);
      });
      if ((_this3.options.height || 100) > (_this3.options.width || 200)) {
        style.setProperty('--animation-name', 'clipMe2');
      } else {
        style.setProperty('--animation-name', 'clipMe1');
      }
    };
    for (var i = 0; i < markerContainer.length; i++) {
      _loop();
    }
  };
  return RotatingTextBorderMarker;
}(_Marker2.default);

/***/ }),

/***/ 713:
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(0);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _inheritsLoose2 = _interopRequireDefault(__webpack_require__(3));
var _Marker2 = _interopRequireDefault(__webpack_require__(99));
var FluorescenceMarker = exports.default = /*#__PURE__*/function (_Marker) {
  (0, _inheritsLoose2.default)(FluorescenceMarker, _Marker);
  function FluorescenceMarker(features, options) {
    var _this;
    if (options === void 0) {
      options = {};
    }
    _this = _Marker.call(this, features, options) || this;
    _this.features && _this._createMarker();
    return _this;
  }
  var _proto = FluorescenceMarker.prototype;
  _proto.setMarkersWidth = function setMarkersWidth(width) {
    this.options.width = width;
    var markerContainer = document.getElementsByClassName('sm-component-animate-marker--fluorescence');
    for (var i = 0; i < markerContainer.length; i++) {
      this._setFluorescenceWidth(markerContainer[i].style);
    }
  };
  _proto.setMarkersColors = function setMarkersColors(colors) {
    this.options.colors = colors;
    if (colors && colors.length && colors.length > 0) {
      var markerContainer = document.getElementsByClassName('sm-component-animate-marker--fluorescence');
      for (var i = 0; i < markerContainer.length; i++) {
        this._setFluorescenceColor(markerContainer[i].style);
      }
    }
  };
  _proto._createMarker = function _createMarker() {
    var _this2 = this;
    this.features.features.forEach(function (point) {
      var markerContainer = document.createElement('div');
      markerContainer.className = 'sm-component-animate-marker--fluorescence';
      var marker = document.createElement('div');
      marker.className = 'sm-component-animate-marker__fluorescence';
      markerContainer.appendChild(marker);
      var nameContainer = _this2._getTextContainer(point, 'fluorescence-name');
      markerContainer.appendChild(nameContainer);
      _this2._setFluorescenceWidth(markerContainer.style);
      _this2._setFluorescenceColor(markerContainer.style);
      _this2.markersElement.push(markerContainer);
    });
  };
  _proto._setFluorescenceWidth = function _setFluorescenceWidth(style) {
    if (this.options.width) {
      style.setProperty('--container-width', this.options.width / 3 + 'px');
      style.setProperty('--box-shadow-width', this.options.width + 'px');
    }
  };
  _proto._setFluorescenceColor = function _setFluorescenceColor(style) {
    if (this.options.colors && this.options.colors.length > 0) {
      style.setProperty('--box-shadow-color', this.options.colors[0]);
      style.setProperty('--light-color', this.options.colors[1]);
    }
  };
  return FluorescenceMarker;
}(_Marker2.default);

/***/ }),

/***/ 87:
/***/ (function(module, exports) {

module.exports = require("@turf/envelope");

/***/ }),

/***/ 9:
/***/ (function(module, exports) {

module.exports = require("vue-property-decorator");

/***/ }),

/***/ 99:
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _util = __webpack_require__(12);
var Marker = exports.default = /*#__PURE__*/function () {
  function Marker(features, options) {
    if (options === void 0) {
      options = {};
    }
    this.markersElement = [];
    this.features = features;
    this.options = options;
  }
  var _proto = Marker.prototype;
  _proto.setFeatures = function setFeatures(features) {
    this.markersElement = [];
    this.features = features;
    this.features && this._createMarker();
  };
  _proto.getMarkersElement = function getMarkersElement() {
    return this.markersElement;
  };
  _proto.setMarkersTextField = function setMarkersTextField(textField) {
    if (!this.features || JSON.stringify(this.features) === '{}') {
      return;
    }
    this.options.textField = textField;
    var name = document.getElementsByClassName('sm-component-animate-marker__name');
    for (var i = 0; i < name.length; i++) {
      var properties = this.features.features[i] && this.features.features[i].properties;
      if (properties && properties[textField]) {
        name[i].innerHTML = properties[textField];
      } else {
        name[i].innerHTML = '';
      }
    }
  };
  _proto.setMarkersTextFontSize = function setMarkersTextFontSize(textFontSize) {
    this.options.textFontSize = textFontSize;
    var pulse = document.getElementsByClassName('sm-component-animate-marker__name-container');
    for (var i = 0; i < pulse.length; i++) {
      pulse[i].style.fontSize = textFontSize + 'px';
    }
  };
  _proto.setMarkersTextColor = function setMarkersTextColor(textColor) {
    this.options.textColor = textColor;
    var pulse = document.getElementsByClassName('sm-component-animate-marker__name-container');
    for (var i = 0; i < pulse.length; i++) {
      pulse[i].style.color = textColor;
    }
  };
  _proto._getColorWithOpacity = function _getColorWithOpacity(color, opacity) {
    return (0, _util.getColorWithOpacity)(color, opacity);
  };
  _proto._getTextContainer = function _getTextContainer(point, className) {
    var name;
    if (point.properties && Object.keys(point.properties).length !== 0 && this.options.textField) {
      name = point.properties[this.options.textField];
    }
    var nameContainer = document.createElement('div');
    nameContainer.className = "sm-component-animate-marker__name-container sm-component-animate-marker__name-container--" + className;
    this.options.textColor && (nameContainer.style.color = this.options.textColor);
    this.options.textFontSize && (nameContainer.style.fontSize = this.options.textFontSize + 'px');
    var nameSpan = document.createElement('span');
    nameSpan.className = "sm-component-animate-marker__" + className + " sm-component-animate-marker__name";
    nameSpan.innerHTML = name || '';
    nameContainer.appendChild(nameSpan);
    return nameContainer;
  };
  return Marker;
}();

/***/ })

/******/ });