@63pokupki/yandex-map
Advanced tools
Comparing version 0.0.3 to 0.0.4
@@ -209,3 +209,3 @@ module.exports = | ||
// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"53dfd514-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/component/YandexMap.vue?vue&type=template&id=7ff7457e& | ||
// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"306e6b8e-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/component/YandexMap.vue?vue&type=template&id=0505c617& | ||
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticStyle:{"width":"100%","height":"100%"},attrs:{"id":_vm.mapId}})} | ||
@@ -215,3 +215,3 @@ var staticRenderFns = [] | ||
// CONCATENATED MODULE: ./src/component/YandexMap.vue?vue&type=template&id=7ff7457e& | ||
// CONCATENATED MODULE: ./src/component/YandexMap.vue?vue&type=template&id=0505c617& | ||
@@ -294,2 +294,3 @@ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/component/YandexMap.vue?vue&type=script&lang=js& | ||
setMarkers() { | ||
this.map.geoObjects.removeAll(); | ||
this.objectManager = new ymaps.ObjectManager({ | ||
@@ -356,4 +357,13 @@ // Чтобы метки начали кластеризоваться, выставляем опцию. | ||
}, | ||
watch: { | ||
coordsCenter: function() { | ||
if (this.coordsCenter && this.map) { | ||
this.map.setCenter(this.coordsCenter); | ||
this.setMarkers(); | ||
} | ||
}, | ||
}, | ||
beforeDestroy() { | ||
if (this.map.geoObjects) this.map.geoObjects.removeAll(); | ||
if (this.map.geoObjects.length) this.map.geoObjects.removeAll(); | ||
}, | ||
@@ -360,0 +370,0 @@ |
@@ -218,3 +218,3 @@ (function webpackUniversalModuleDefinition(root, factory) { | ||
// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"53dfd514-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/component/YandexMap.vue?vue&type=template&id=7ff7457e& | ||
// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"306e6b8e-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/component/YandexMap.vue?vue&type=template&id=0505c617& | ||
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticStyle:{"width":"100%","height":"100%"},attrs:{"id":_vm.mapId}})} | ||
@@ -224,3 +224,3 @@ var staticRenderFns = [] | ||
// CONCATENATED MODULE: ./src/component/YandexMap.vue?vue&type=template&id=7ff7457e& | ||
// CONCATENATED MODULE: ./src/component/YandexMap.vue?vue&type=template&id=0505c617& | ||
@@ -303,2 +303,3 @@ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/component/YandexMap.vue?vue&type=script&lang=js& | ||
setMarkers() { | ||
this.map.geoObjects.removeAll(); | ||
this.objectManager = new ymaps.ObjectManager({ | ||
@@ -365,4 +366,13 @@ // Чтобы метки начали кластеризоваться, выставляем опцию. | ||
}, | ||
watch: { | ||
coordsCenter: function() { | ||
if (this.coordsCenter && this.map) { | ||
this.map.setCenter(this.coordsCenter); | ||
this.setMarkers(); | ||
} | ||
}, | ||
}, | ||
beforeDestroy() { | ||
if (this.map.geoObjects) this.map.geoObjects.removeAll(); | ||
if (this.map.geoObjects.length) this.map.geoObjects.removeAll(); | ||
}, | ||
@@ -369,0 +379,0 @@ |
@@ -1,2 +0,2 @@ | ||
(function(e,t){"object"===typeof exports&&"object"===typeof module?module.exports=t():"function"===typeof define&&define.amd?define([],t):"object"===typeof exports?exports["component"]=t():e["component"]=t()})("undefined"!==typeof self?self:this,(function(){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"===typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s="fae3")}({8875:function(e,t,r){var n,o,i;(function(r,a){o=[],n=a,i="function"===typeof n?n.apply(t,o):n,void 0===i||(e.exports=i)})("undefined"!==typeof self&&self,(function(){function e(){var t=Object.getOwnPropertyDescriptor(document,"currentScript");if(!t&&"currentScript"in document&&document.currentScript)return document.currentScript;if(t&&t.get!==e&&document.currentScript)return document.currentScript;try{throw new Error}catch(f){var r,n,o,i=/.*at [^(]*\((.*):(.+):(.+)\)$/gi,a=/@([^@]*):(\d+):(\d+)\s*$/gi,s=i.exec(f.stack)||a.exec(f.stack),c=s&&s[1]||!1,d=s&&s[2]||!1,l=document.location.href.replace(document.location.hash,""),u=document.getElementsByTagName("script");c===l&&(r=document.documentElement.outerHTML,n=new RegExp("(?:[^\\n]+?\\n){0,"+(d-2)+"}[^<]*<script>([\\d\\D]*?)<\\/script>[\\d\\D]*","i"),o=r.replace(n,"$1").trim());for(var p=0;p<u.length;p++){if("interactive"===u[p].readyState)return u[p];if(u[p].src===c)return u[p];if(c===l&&u[p].innerHTML&&u[p].innerHTML.trim()===o)return u[p]}return null}}return e}))},fae3:function(e,t,r){"use strict";if(r.r(t),r.d(t,"YandexMap",(function(){return p})),"undefined"!==typeof window){var n=window.document.currentScript,o=r("8875");n=o(),"currentScript"in document||Object.defineProperty(document,"currentScript",{get:o});var i=n&&n.src.match(/(.+\/)[^/]+\.js(\?.*)?$/);i&&(r.p=i[1])}var a=function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("div",{staticStyle:{width:"100%",height:"100%"},attrs:{id:e.mapId}})},s=[],c={name:"YandexMap",props:{markers:{type:Array,default:null},coordsCenter:{type:Array,default:null},apiKey:{type:String,default:""}},data(){return{map:null,coords:[],objectManager:null,point:null,oneMarker:null,searchControl:null,mapId:"yandex-map-"+Math.round(1e3*Math.random())}},mounted(){if(document.getElementById("yandex-maps"))this.initializeYandexMap();else{let e=document.createElement("script");e.setAttribute("src",`https://api-maps.yandex.ru/2.1/?lang=ru_RU&apikey=${this.apiKey}&mode=release&coordorder=latlong`),e.setAttribute("id","yandex-maps"),document.head.appendChild(e),e.addEventListener("load",()=>{this.initializeYandexMap()})}},methods:{async initializeYandexMap(){await ymaps.ready(),this.map=new ymaps.Map(this.mapId,{center:this.coordsCenter,zoom:10,controls:["zoomControl","fullscreenControl"]}),this.markers?this.setMarkers():(this.map.events.add("click",this.onClickMap),this.searchControl=new ymaps.control.SearchControl({options:{float:"left",floatIndex:100,noPlacemark:!1}}),this.map.controls.add(this.searchControl),this.searchControl.events.add("resultselect",this.Search)),this.$emit("InitializeYandexMap",this.map)},setMarkers(){this.objectManager=new ymaps.ObjectManager({clusterize:!0});let e=[];for(let t=0;t<this.markers.length;t++)e.push({type:"Feature",id:this.markers[t].id,geometry:{type:"Point",coordinates:[this.markers[t].latitude,this.markers[t].longitude]}});this.objectManager.add(e),this.map.geoObjects.add(this.objectManager),this.objectManager.objects.events.add(["click"],this.onClickEvent)},onClickEvent(e){let t=e.get("objectId"),r=this.objectManager.objects.getById(t).geometry.type;"Point"===r&&(this.point&&this.objectManager.objects.setObjectOptions(this.point,{preset:"islands#blueIcon"}),this.objectManager.objects.setObjectOptions(t,{preset:"islands#lightBlueIcon"}),this.$emit("ClickMarker",t),this.point=t)},onClickMap(e){let t=e.get("coords");this.oneMarker&&this.map.geoObjects.remove(this.oneMarker),this.oneMarker=new ymaps.Placemark(t),this.map.geoObjects.add(this.oneMarker),this.$emit("ClickMap",t)},Search(e){const t=this.searchControl.getResultsArray(),r=this.searchControl.getSelectedIndex(),n=t[r].properties.get("metaDataProperty.GeocoderMetaData"),o={text:n.text,addrresDetails:n.AddressDetails};this.$emit("Search",o)}},beforeDestroy(){this.map.geoObjects&&this.map.geoObjects.removeAll()}},d=c;function l(e,t,r,n,o,i,a,s){var c,d="function"===typeof e?e.options:e;if(t&&(d.render=t,d.staticRenderFns=r,d._compiled=!0),n&&(d.functional=!0),i&&(d._scopeId="data-v-"+i),a?(c=function(e){e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,e||"undefined"===typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),o&&o.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(a)},d._ssrRegister=c):o&&(c=s?function(){o.call(this,(d.functional?this.parent:this).$root.$options.shadowRoot)}:o),c)if(d.functional){d._injectStyles=c;var l=d.render;d.render=function(e,t){return c.call(t),l(e,t)}}else{var u=d.beforeCreate;d.beforeCreate=u?[].concat(u,c):[c]}return{exports:e,options:d}}var u=l(d,a,s,!1,null,null,null),p=u.exports}})})); | ||
(function(e,t){"object"===typeof exports&&"object"===typeof module?module.exports=t():"function"===typeof define&&define.amd?define([],t):"object"===typeof exports?exports["component"]=t():e["component"]=t()})("undefined"!==typeof self?self:this,(function(){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"===typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s="fae3")}({8875:function(e,t,r){var n,o,i;(function(r,a){o=[],n=a,i="function"===typeof n?n.apply(t,o):n,void 0===i||(e.exports=i)})("undefined"!==typeof self&&self,(function(){function e(){var t=Object.getOwnPropertyDescriptor(document,"currentScript");if(!t&&"currentScript"in document&&document.currentScript)return document.currentScript;if(t&&t.get!==e&&document.currentScript)return document.currentScript;try{throw new Error}catch(h){var r,n,o,i=/.*at [^(]*\((.*):(.+):(.+)\)$/gi,a=/@([^@]*):(\d+):(\d+)\s*$/gi,s=i.exec(h.stack)||a.exec(h.stack),c=s&&s[1]||!1,d=s&&s[2]||!1,l=document.location.href.replace(document.location.hash,""),u=document.getElementsByTagName("script");c===l&&(r=document.documentElement.outerHTML,n=new RegExp("(?:[^\\n]+?\\n){0,"+(d-2)+"}[^<]*<script>([\\d\\D]*?)<\\/script>[\\d\\D]*","i"),o=r.replace(n,"$1").trim());for(var p=0;p<u.length;p++){if("interactive"===u[p].readyState)return u[p];if(u[p].src===c)return u[p];if(c===l&&u[p].innerHTML&&u[p].innerHTML.trim()===o)return u[p]}return null}}return e}))},fae3:function(e,t,r){"use strict";if(r.r(t),r.d(t,"YandexMap",(function(){return p})),"undefined"!==typeof window){var n=window.document.currentScript,o=r("8875");n=o(),"currentScript"in document||Object.defineProperty(document,"currentScript",{get:o});var i=n&&n.src.match(/(.+\/)[^/]+\.js(\?.*)?$/);i&&(r.p=i[1])}var a=function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("div",{staticStyle:{width:"100%",height:"100%"},attrs:{id:e.mapId}})},s=[],c={name:"YandexMap",props:{markers:{type:Array,default:null},coordsCenter:{type:Array,default:null},apiKey:{type:String,default:""}},data(){return{map:null,coords:[],objectManager:null,point:null,oneMarker:null,searchControl:null,mapId:"yandex-map-"+Math.round(1e3*Math.random())}},mounted(){if(document.getElementById("yandex-maps"))this.initializeYandexMap();else{let e=document.createElement("script");e.setAttribute("src",`https://api-maps.yandex.ru/2.1/?lang=ru_RU&apikey=${this.apiKey}&mode=release&coordorder=latlong`),e.setAttribute("id","yandex-maps"),document.head.appendChild(e),e.addEventListener("load",()=>{this.initializeYandexMap()})}},methods:{async initializeYandexMap(){await ymaps.ready(),this.map=new ymaps.Map(this.mapId,{center:this.coordsCenter,zoom:10,controls:["zoomControl","fullscreenControl"]}),this.markers?this.setMarkers():(this.map.events.add("click",this.onClickMap),this.searchControl=new ymaps.control.SearchControl({options:{float:"left",floatIndex:100,noPlacemark:!1}}),this.map.controls.add(this.searchControl),this.searchControl.events.add("resultselect",this.Search)),this.$emit("InitializeYandexMap",this.map)},setMarkers(){this.map.geoObjects.removeAll(),this.objectManager=new ymaps.ObjectManager({clusterize:!0});let e=[];for(let t=0;t<this.markers.length;t++)e.push({type:"Feature",id:this.markers[t].id,geometry:{type:"Point",coordinates:[this.markers[t].latitude,this.markers[t].longitude]}});this.objectManager.add(e),this.map.geoObjects.add(this.objectManager),this.objectManager.objects.events.add(["click"],this.onClickEvent)},onClickEvent(e){let t=e.get("objectId"),r=this.objectManager.objects.getById(t).geometry.type;"Point"===r&&(this.point&&this.objectManager.objects.setObjectOptions(this.point,{preset:"islands#blueIcon"}),this.objectManager.objects.setObjectOptions(t,{preset:"islands#lightBlueIcon"}),this.$emit("ClickMarker",t),this.point=t)},onClickMap(e){let t=e.get("coords");this.oneMarker&&this.map.geoObjects.remove(this.oneMarker),this.oneMarker=new ymaps.Placemark(t),this.map.geoObjects.add(this.oneMarker),this.$emit("ClickMap",t)},Search(e){const t=this.searchControl.getResultsArray(),r=this.searchControl.getSelectedIndex(),n=t[r].properties.get("metaDataProperty.GeocoderMetaData"),o={text:n.text,addrresDetails:n.AddressDetails};this.$emit("Search",o)}},watch:{coordsCenter:function(){this.coordsCenter&&this.map&&(this.map.setCenter(this.coordsCenter),this.setMarkers())}},beforeDestroy(){this.map.geoObjects.length&&this.map.geoObjects.removeAll()}},d=c;function l(e,t,r,n,o,i,a,s){var c,d="function"===typeof e?e.options:e;if(t&&(d.render=t,d.staticRenderFns=r,d._compiled=!0),n&&(d.functional=!0),i&&(d._scopeId="data-v-"+i),a?(c=function(e){e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,e||"undefined"===typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),o&&o.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(a)},d._ssrRegister=c):o&&(c=s?function(){o.call(this,(d.functional?this.parent:this).$root.$options.shadowRoot)}:o),c)if(d.functional){d._injectStyles=c;var l=d.render;d.render=function(e,t){return c.call(t),l(e,t)}}else{var u=d.beforeCreate;d.beforeCreate=u?[].concat(u,c):[c]}return{exports:e,options:d}}var u=l(d,a,s,!1,null,null,null),p=u.exports}})})); | ||
//# sourceMappingURL=component.umd.min.js.map |
{ | ||
"name": "@63pokupki/yandex-map", | ||
"version": "0.0.3", | ||
"version": "0.0.4", | ||
"author": "63pokupki", | ||
@@ -5,0 +5,0 @@ "license": "BSD-3-Clause", |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
110462
914