mapbox-gl-vue
Advanced tools
Comparing version
552
dist/app.js
@@ -66,3 +66,3 @@ /******/ (function(modules) { // webpackBootstrap | ||
| /******/ // Load entry module and return exports | ||
| /******/ return __webpack_require__(__webpack_require__.s = 10); | ||
| /******/ return __webpack_require__(__webpack_require__.s = 6); | ||
| /******/ }) | ||
@@ -74,38 +74,83 @@ /************************************************************************/ | ||
| Vue.component('mapbox', __webpack_require__(3)); | ||
| /* styles */ | ||
| __webpack_require__(6) | ||
| var app = new Vue({ | ||
| el: '#app', | ||
| methods: { | ||
| mapLoaded: function mapLoaded(map) { | ||
| map.addLayer({ | ||
| 'id': 'points', | ||
| 'type': 'symbol', | ||
| 'source': { | ||
| 'type': 'geojson', | ||
| 'data': { | ||
| 'type': 'FeatureCollection', | ||
| 'features': [{ | ||
| 'type': 'Feature', | ||
| 'geometry': { | ||
| 'type': 'Point', | ||
| 'coordinates': [-77.03238901390978, 38.913188059745586] | ||
| }, | ||
| 'properties': { | ||
| 'title': 'Mapbox DC', | ||
| 'icon': 'monument' | ||
| } | ||
| }, { | ||
| 'type': 'Feature', | ||
| 'geometry': { | ||
| 'type': 'Point', | ||
| 'coordinates': [-122.414, 37.776] | ||
| }, | ||
| 'properties': { | ||
| 'title': 'Mapbox SF', | ||
| 'icon': 'harbor' | ||
| } | ||
| }] | ||
| } | ||
| }, | ||
| 'layout': { | ||
| 'icon-image': '{icon}-15', | ||
| 'text-field': '{title}', | ||
| 'text-font': ['Open Sans Semibold', 'Arial Unicode MS Bold'], | ||
| 'text-offset': [0, 0.6], | ||
| 'text-anchor': 'top' | ||
| } | ||
| }); | ||
| }, | ||
| mapClicked: function mapClicked(map, e) { | ||
| this.addPopUp(map, e); | ||
| }, | ||
| mapMouseMove: function mapMouseMove(map, e) { | ||
| var features = map.queryRenderedFeatures(e.point, { layers: ['points'] }); | ||
| map.getCanvas().style.cursor = features.length ? 'pointer' : ''; | ||
| }, | ||
| addPopUp: function addPopUp(map, e) { | ||
| var features = map.queryRenderedFeatures(e.point, { layers: ['points'] }); | ||
| if (!features.length) { | ||
| return; | ||
| } | ||
| var Component = __webpack_require__(4)( | ||
| /* script */ | ||
| __webpack_require__(1), | ||
| /* template */ | ||
| __webpack_require__(5), | ||
| /* scopeId */ | ||
| null, | ||
| /* cssModules */ | ||
| null | ||
| ) | ||
| Component.options.__file = "/Users/peterhegman/Sites/mapbox-gl-vue/src/components/Mapbox.vue" | ||
| if (Component.esModule && Object.keys(Component.esModule).some(function (key) {return key !== "default" && key !== "__esModule"})) {console.error("named exports are not supported in *.vue files.")} | ||
| if (Component.options.functional) {console.error("[vue-loader] Mapbox.vue: functional components are not supported with templates, they should use render functions.")} | ||
| var feature = features[0]; | ||
| /* hot reload */ | ||
| if (false) {(function () { | ||
| var hotAPI = require("vue-hot-reload-api") | ||
| hotAPI.install(require("vue"), false) | ||
| if (!hotAPI.compatible) return | ||
| module.hot.accept() | ||
| if (!module.hot.data) { | ||
| hotAPI.createRecord("data-v-0773bd0c", Component.options) | ||
| } else { | ||
| hotAPI.reload("data-v-0773bd0c", Component.options) | ||
| } | ||
| })()} | ||
| var tmp = Vue.extend({ | ||
| template: '<span @click="testMap">Test</span>', | ||
| methods: { | ||
| testMap: function testMap() { | ||
| console.log('worked'); | ||
| } | ||
| } | ||
| }); | ||
| module.exports = Component.exports | ||
| // Populate the popup and set its coordinates | ||
| // based on the feature found. | ||
| var popup = new mapboxgl.Popup().setLngLat(feature.geometry.coordinates).setHTML('<div id="vue-popup-content"></div>').addTo(map); | ||
| new tmp().$mount('#vue-popup-content'); | ||
| } | ||
| } | ||
| }); | ||
| /***/ }), | ||
| /* 1 */ | ||
| /* 1 */, | ||
| /* 2 */ | ||
| /***/ (function(module, __webpack_exports__, __webpack_require__) { | ||
@@ -435,64 +480,35 @@ | ||
| /***/ }), | ||
| /* 2 */ | ||
| /* 3 */ | ||
| /***/ (function(module, exports, __webpack_require__) { | ||
| exports = module.exports = __webpack_require__(3)(); | ||
| exports.push([module.i, "\n#map {\n\theight: 500px;\n\twidth: 100%;\n}\n", ""]); | ||
| var Component = __webpack_require__(4)( | ||
| /* script */ | ||
| __webpack_require__(2), | ||
| /* template */ | ||
| __webpack_require__(5), | ||
| /* scopeId */ | ||
| null, | ||
| /* cssModules */ | ||
| null | ||
| ) | ||
| Component.options.__file = "/Users/peterhegman/Sites/mapbox-gl-vue/src/components/Mapbox.vue" | ||
| if (Component.esModule && Object.keys(Component.esModule).some(function (key) {return key !== "default" && key !== "__esModule"})) {console.error("named exports are not supported in *.vue files.")} | ||
| if (Component.options.functional) {console.error("[vue-loader] Mapbox.vue: functional components are not supported with templates, they should use render functions.")} | ||
| /***/ }), | ||
| /* 3 */ | ||
| /***/ (function(module, exports) { | ||
| /* hot reload */ | ||
| if (false) {(function () { | ||
| var hotAPI = require("vue-hot-reload-api") | ||
| hotAPI.install(require("vue"), false) | ||
| if (!hotAPI.compatible) return | ||
| module.hot.accept() | ||
| if (!module.hot.data) { | ||
| hotAPI.createRecord("data-v-0773bd0c", Component.options) | ||
| } else { | ||
| hotAPI.reload("data-v-0773bd0c", Component.options) | ||
| } | ||
| })()} | ||
| /* | ||
| MIT License http://www.opensource.org/licenses/mit-license.php | ||
| Author Tobias Koppers @sokra | ||
| */ | ||
| // css base code, injected by the css-loader | ||
| module.exports = function() { | ||
| var list = []; | ||
| module.exports = Component.exports | ||
| // return the list of modules as css string | ||
| list.toString = function toString() { | ||
| var result = []; | ||
| for(var i = 0; i < this.length; i++) { | ||
| var item = this[i]; | ||
| if(item[2]) { | ||
| result.push("@media " + item[2] + "{" + item[1] + "}"); | ||
| } else { | ||
| result.push(item[1]); | ||
| } | ||
| } | ||
| return result.join(""); | ||
| }; | ||
| // import a list of modules into the list | ||
| list.i = function(modules, mediaQuery) { | ||
| if(typeof modules === "string") | ||
| modules = [[null, modules, ""]]; | ||
| var alreadyImportedModules = {}; | ||
| for(var i = 0; i < this.length; i++) { | ||
| var id = this[i][0]; | ||
| if(typeof id === "number") | ||
| alreadyImportedModules[id] = true; | ||
| } | ||
| for(i = 0; i < modules.length; i++) { | ||
| var item = modules[i]; | ||
| // skip already imported module | ||
| // this implementation is not 100% perfect for weird media query combinations | ||
| // when a module is imported multiple times with different media queries. | ||
| // I hope this will never occur (Hey this way we have smaller bundles) | ||
| if(typeof item[0] !== "number" || !alreadyImportedModules[item[0]]) { | ||
| if(mediaQuery && !item[2]) { | ||
| item[2] = mediaQuery; | ||
| } else if(mediaQuery) { | ||
| item[2] = "(" + item[2] + ") and (" + mediaQuery + ")"; | ||
| } | ||
| list.push(item); | ||
| } | ||
| } | ||
| }; | ||
| return list; | ||
| }; | ||
| /***/ }), | ||
@@ -578,368 +594,6 @@ /* 4 */ | ||
| // style-loader: Adds some css to the DOM by adding a <style> tag | ||
| module.exports = __webpack_require__(0); | ||
| // load the styles | ||
| var content = __webpack_require__(2); | ||
| if(typeof content === 'string') content = [[module.i, content, '']]; | ||
| if(content.locals) module.exports = content.locals; | ||
| // add the styles to the DOM | ||
| var update = __webpack_require__(7)("78f494f3", content, false); | ||
| // Hot Module Replacement | ||
| if(false) { | ||
| // When the styles change, update the <style> tags | ||
| if(!content.locals) { | ||
| module.hot.accept("!!../../node_modules/css-loader/index.js!../../node_modules/vue-loader/lib/style-compiler/index.js?{\"id\":\"data-v-0773bd0c\",\"scoped\":false,\"hasInlineConfig\":true}!../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./Mapbox.vue", function() { | ||
| var newContent = require("!!../../node_modules/css-loader/index.js!../../node_modules/vue-loader/lib/style-compiler/index.js?{\"id\":\"data-v-0773bd0c\",\"scoped\":false,\"hasInlineConfig\":true}!../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./Mapbox.vue"); | ||
| if(typeof newContent === 'string') newContent = [[module.id, newContent, '']]; | ||
| update(newContent); | ||
| }); | ||
| } | ||
| // When the module is disposed, remove the <style> tags | ||
| module.hot.dispose(function() { update(); }); | ||
| } | ||
| /***/ }), | ||
| /* 7 */ | ||
| /***/ (function(module, exports, __webpack_require__) { | ||
| /* | ||
| MIT License http://www.opensource.org/licenses/mit-license.php | ||
| Author Tobias Koppers @sokra | ||
| Modified by Evan You @yyx990803 | ||
| */ | ||
| var hasDocument = typeof document !== 'undefined' | ||
| if (typeof DEBUG !== 'undefined' && DEBUG) { | ||
| if (!hasDocument) { | ||
| throw new Error( | ||
| 'vue-style-loader cannot be used in a non-browser environment. ' + | ||
| "Use { target: 'node' } in your Webpack config to indicate a server-rendering environment." | ||
| ) } | ||
| } | ||
| var listToStyles = __webpack_require__(8) | ||
| /* | ||
| type StyleObject = { | ||
| id: number; | ||
| parts: Array<StyleObjectPart> | ||
| } | ||
| type StyleObjectPart = { | ||
| css: string; | ||
| media: string; | ||
| sourceMap: ?string | ||
| } | ||
| */ | ||
| var stylesInDom = {/* | ||
| [id: number]: { | ||
| id: number, | ||
| refs: number, | ||
| parts: Array<(obj?: StyleObjectPart) => void> | ||
| } | ||
| */} | ||
| var head = hasDocument && (document.head || document.getElementsByTagName('head')[0]) | ||
| var singletonElement = null | ||
| var singletonCounter = 0 | ||
| var isProduction = false | ||
| var noop = function () {} | ||
| // Force single-tag solution on IE6-9, which has a hard limit on the # of <style> | ||
| // tags it will allow on a page | ||
| var isOldIE = typeof navigator !== 'undefined' && /msie [6-9]\b/.test(navigator.userAgent.toLowerCase()) | ||
| module.exports = function (parentId, list, _isProduction) { | ||
| isProduction = _isProduction | ||
| var styles = listToStyles(parentId, list) | ||
| addStylesToDom(styles) | ||
| return function update (newList) { | ||
| var mayRemove = [] | ||
| for (var i = 0; i < styles.length; i++) { | ||
| var item = styles[i] | ||
| var domStyle = stylesInDom[item.id] | ||
| domStyle.refs-- | ||
| mayRemove.push(domStyle) | ||
| } | ||
| if (newList) { | ||
| styles = listToStyles(parentId, newList) | ||
| addStylesToDom(styles) | ||
| } else { | ||
| styles = [] | ||
| } | ||
| for (var i = 0; i < mayRemove.length; i++) { | ||
| var domStyle = mayRemove[i] | ||
| if (domStyle.refs === 0) { | ||
| for (var j = 0; j < domStyle.parts.length; j++) { | ||
| domStyle.parts[j]() | ||
| } | ||
| delete stylesInDom[domStyle.id] | ||
| } | ||
| } | ||
| } | ||
| } | ||
| function addStylesToDom (styles /* Array<StyleObject> */) { | ||
| for (var i = 0; i < styles.length; i++) { | ||
| var item = styles[i] | ||
| var domStyle = stylesInDom[item.id] | ||
| if (domStyle) { | ||
| domStyle.refs++ | ||
| for (var j = 0; j < domStyle.parts.length; j++) { | ||
| domStyle.parts[j](item.parts[j]) | ||
| } | ||
| for (; j < item.parts.length; j++) { | ||
| domStyle.parts.push(addStyle(item.parts[j])) | ||
| } | ||
| if (domStyle.parts.length > item.parts.length) { | ||
| domStyle.parts.length = item.parts.length | ||
| } | ||
| } else { | ||
| var parts = [] | ||
| for (var j = 0; j < item.parts.length; j++) { | ||
| parts.push(addStyle(item.parts[j])) | ||
| } | ||
| stylesInDom[item.id] = { id: item.id, refs: 1, parts: parts } | ||
| } | ||
| } | ||
| } | ||
| function createStyleElement () { | ||
| var styleElement = document.createElement('style') | ||
| styleElement.type = 'text/css' | ||
| head.appendChild(styleElement) | ||
| return styleElement | ||
| } | ||
| function addStyle (obj /* StyleObjectPart */) { | ||
| var update, remove | ||
| var styleElement = document.querySelector('style[data-vue-ssr-id~="' + obj.id + '"]') | ||
| if (styleElement) { | ||
| if (isProduction) { | ||
| // has SSR styles and in production mode. | ||
| // simply do nothing. | ||
| return noop | ||
| } else { | ||
| // has SSR styles but in dev mode. | ||
| // for some reason Chrome can't handle source map in server-rendered | ||
| // style tags - source maps in <style> only works if the style tag is | ||
| // created and inserted dynamically. So we remove the server rendered | ||
| // styles and inject new ones. | ||
| styleElement.parentNode.removeChild(styleElement) | ||
| } | ||
| } | ||
| if (isOldIE) { | ||
| // use singleton mode for IE9. | ||
| var styleIndex = singletonCounter++ | ||
| styleElement = singletonElement || (singletonElement = createStyleElement()) | ||
| update = applyToSingletonTag.bind(null, styleElement, styleIndex, false) | ||
| remove = applyToSingletonTag.bind(null, styleElement, styleIndex, true) | ||
| } else { | ||
| // use multi-style-tag mode in all other cases | ||
| styleElement = createStyleElement() | ||
| update = applyToTag.bind(null, styleElement) | ||
| remove = function () { | ||
| styleElement.parentNode.removeChild(styleElement) | ||
| } | ||
| } | ||
| update(obj) | ||
| return function updateStyle (newObj /* StyleObjectPart */) { | ||
| if (newObj) { | ||
| if (newObj.css === obj.css && | ||
| newObj.media === obj.media && | ||
| newObj.sourceMap === obj.sourceMap) { | ||
| return | ||
| } | ||
| update(obj = newObj) | ||
| } else { | ||
| remove() | ||
| } | ||
| } | ||
| } | ||
| var replaceText = (function () { | ||
| var textStore = [] | ||
| return function (index, replacement) { | ||
| textStore[index] = replacement | ||
| return textStore.filter(Boolean).join('\n') | ||
| } | ||
| })() | ||
| function applyToSingletonTag (styleElement, index, remove, obj) { | ||
| var css = remove ? '' : obj.css | ||
| if (styleElement.styleSheet) { | ||
| styleElement.styleSheet.cssText = replaceText(index, css) | ||
| } else { | ||
| var cssNode = document.createTextNode(css) | ||
| var childNodes = styleElement.childNodes | ||
| if (childNodes[index]) styleElement.removeChild(childNodes[index]) | ||
| if (childNodes.length) { | ||
| styleElement.insertBefore(cssNode, childNodes[index]) | ||
| } else { | ||
| styleElement.appendChild(cssNode) | ||
| } | ||
| } | ||
| } | ||
| function applyToTag (styleElement, obj) { | ||
| var css = obj.css | ||
| var media = obj.media | ||
| var sourceMap = obj.sourceMap | ||
| if (media) { | ||
| styleElement.setAttribute('media', media) | ||
| } | ||
| if (sourceMap) { | ||
| // https://developer.chrome.com/devtools/docs/javascript-debugging | ||
| // this makes source maps inside style tags work properly in Chrome | ||
| css += '\n/*# sourceURL=' + sourceMap.sources[0] + ' */' | ||
| // http://stackoverflow.com/a/26603875 | ||
| css += '\n/*# sourceMappingURL=data:application/json;base64,' + btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))) + ' */' | ||
| } | ||
| if (styleElement.styleSheet) { | ||
| styleElement.styleSheet.cssText = css | ||
| } else { | ||
| while (styleElement.firstChild) { | ||
| styleElement.removeChild(styleElement.firstChild) | ||
| } | ||
| styleElement.appendChild(document.createTextNode(css)) | ||
| } | ||
| } | ||
| /***/ }), | ||
| /* 8 */ | ||
| /***/ (function(module, exports) { | ||
| /** | ||
| * Translates the list format produced by css-loader into something | ||
| * easier to manipulate. | ||
| */ | ||
| module.exports = function listToStyles (parentId, list) { | ||
| var styles = [] | ||
| var newStyles = {} | ||
| for (var i = 0; i < list.length; i++) { | ||
| var item = list[i] | ||
| var id = item[0] | ||
| var css = item[1] | ||
| var media = item[2] | ||
| var sourceMap = item[3] | ||
| var part = { | ||
| id: parentId + ':' + i, | ||
| css: css, | ||
| media: media, | ||
| sourceMap: sourceMap | ||
| } | ||
| if (!newStyles[id]) { | ||
| styles.push(newStyles[id] = { id: id, parts: [part] }) | ||
| } else { | ||
| newStyles[id].parts.push(part) | ||
| } | ||
| } | ||
| return styles | ||
| } | ||
| /***/ }), | ||
| /* 9 */ | ||
| /***/ (function(module, exports, __webpack_require__) { | ||
| Vue.component('mapbox', __webpack_require__(0)); | ||
| var app = new Vue({ | ||
| el: '#app', | ||
| methods: { | ||
| mapLoaded: function mapLoaded(map) { | ||
| map.addLayer({ | ||
| 'id': 'points', | ||
| 'type': 'symbol', | ||
| 'source': { | ||
| 'type': 'geojson', | ||
| 'data': { | ||
| 'type': 'FeatureCollection', | ||
| 'features': [{ | ||
| 'type': 'Feature', | ||
| 'geometry': { | ||
| 'type': 'Point', | ||
| 'coordinates': [-77.03238901390978, 38.913188059745586] | ||
| }, | ||
| 'properties': { | ||
| 'title': 'Mapbox DC', | ||
| 'icon': 'monument' | ||
| } | ||
| }, { | ||
| 'type': 'Feature', | ||
| 'geometry': { | ||
| 'type': 'Point', | ||
| 'coordinates': [-122.414, 37.776] | ||
| }, | ||
| 'properties': { | ||
| 'title': 'Mapbox SF', | ||
| 'icon': 'harbor' | ||
| } | ||
| }] | ||
| } | ||
| }, | ||
| 'layout': { | ||
| 'icon-image': '{icon}-15', | ||
| 'text-field': '{title}', | ||
| 'text-font': ['Open Sans Semibold', 'Arial Unicode MS Bold'], | ||
| 'text-offset': [0, 0.6], | ||
| 'text-anchor': 'top' | ||
| } | ||
| }); | ||
| }, | ||
| mapClicked: function mapClicked(map, e) { | ||
| this.addPopUp(map, e); | ||
| }, | ||
| mapMouseMove: function mapMouseMove(map, e) { | ||
| var features = map.queryRenderedFeatures(e.point, { layers: ['points'] }); | ||
| map.getCanvas().style.cursor = features.length ? 'pointer' : ''; | ||
| }, | ||
| addPopUp: function addPopUp(map, e) { | ||
| var features = map.queryRenderedFeatures(e.point, { layers: ['points'] }); | ||
| if (!features.length) { | ||
| return; | ||
| } | ||
| var feature = features[0]; | ||
| var tmp = Vue.extend({ | ||
| template: '<span @click="testMap">Test</span>', | ||
| methods: { | ||
| testMap: function testMap() { | ||
| console.log('worked'); | ||
| } | ||
| } | ||
| }); | ||
| // Populate the popup and set its coordinates | ||
| // based on the feature found. | ||
| var popup = new mapboxgl.Popup().setLngLat(feature.geometry.coordinates).setHTML('<div id="vue-popup-content"></div>').addTo(map); | ||
| new tmp().$mount('#vue-popup-content'); | ||
| } | ||
| } | ||
| }); | ||
| /***/ }), | ||
| /* 10 */ | ||
| /***/ (function(module, exports, __webpack_require__) { | ||
| module.exports = __webpack_require__(9); | ||
| /***/ }) | ||
| /******/ ]); |
@@ -66,45 +66,8 @@ /******/ (function(modules) { // webpackBootstrap | ||
| /******/ // Load entry module and return exports | ||
| /******/ return __webpack_require__(__webpack_require__.s = 11); | ||
| /******/ return __webpack_require__(__webpack_require__.s = 7); | ||
| /******/ }) | ||
| /************************************************************************/ | ||
| /******/ ([ | ||
| /* 0 */ | ||
| /***/ (function(module, exports, __webpack_require__) { | ||
| /******/ ({ | ||
| /* styles */ | ||
| __webpack_require__(6) | ||
| var Component = __webpack_require__(4)( | ||
| /* script */ | ||
| __webpack_require__(1), | ||
| /* template */ | ||
| __webpack_require__(5), | ||
| /* scopeId */ | ||
| null, | ||
| /* cssModules */ | ||
| null | ||
| ) | ||
| Component.options.__file = "/Users/peterhegman/Sites/mapbox-gl-vue/src/components/Mapbox.vue" | ||
| if (Component.esModule && Object.keys(Component.esModule).some(function (key) {return key !== "default" && key !== "__esModule"})) {console.error("named exports are not supported in *.vue files.")} | ||
| if (Component.options.functional) {console.error("[vue-loader] Mapbox.vue: functional components are not supported with templates, they should use render functions.")} | ||
| /* hot reload */ | ||
| if (false) {(function () { | ||
| var hotAPI = require("vue-hot-reload-api") | ||
| hotAPI.install(require("vue"), false) | ||
| if (!hotAPI.compatible) return | ||
| module.hot.accept() | ||
| if (!module.hot.data) { | ||
| hotAPI.createRecord("data-v-0773bd0c", Component.options) | ||
| } else { | ||
| hotAPI.reload("data-v-0773bd0c", Component.options) | ||
| } | ||
| })()} | ||
| module.exports = Component.exports | ||
| /***/ }), | ||
| /* 1 */ | ||
| /***/ 1: | ||
| /***/ (function(module, __webpack_exports__, __webpack_require__) { | ||
@@ -114,4 +77,4 @@ | ||
| Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); | ||
| /* harmony default export */ __webpack_exports__["default"] = ({ | ||
| template: '<div id="map"></div>', | ||
| data: function data() { | ||
@@ -435,430 +398,11 @@ return {}; | ||
| /***/ }), | ||
| /* 2 */ | ||
| /***/ (function(module, exports, __webpack_require__) { | ||
| exports = module.exports = __webpack_require__(3)(); | ||
| exports.push([module.i, "\n#map {\n\theight: 500px;\n\twidth: 100%;\n}\n", ""]); | ||
| /***/ }), | ||
| /* 3 */ | ||
| /***/ (function(module, exports) { | ||
| /* | ||
| MIT License http://www.opensource.org/licenses/mit-license.php | ||
| Author Tobias Koppers @sokra | ||
| */ | ||
| // css base code, injected by the css-loader | ||
| module.exports = function() { | ||
| var list = []; | ||
| // return the list of modules as css string | ||
| list.toString = function toString() { | ||
| var result = []; | ||
| for(var i = 0; i < this.length; i++) { | ||
| var item = this[i]; | ||
| if(item[2]) { | ||
| result.push("@media " + item[2] + "{" + item[1] + "}"); | ||
| } else { | ||
| result.push(item[1]); | ||
| } | ||
| } | ||
| return result.join(""); | ||
| }; | ||
| // import a list of modules into the list | ||
| list.i = function(modules, mediaQuery) { | ||
| if(typeof modules === "string") | ||
| modules = [[null, modules, ""]]; | ||
| var alreadyImportedModules = {}; | ||
| for(var i = 0; i < this.length; i++) { | ||
| var id = this[i][0]; | ||
| if(typeof id === "number") | ||
| alreadyImportedModules[id] = true; | ||
| } | ||
| for(i = 0; i < modules.length; i++) { | ||
| var item = modules[i]; | ||
| // skip already imported module | ||
| // this implementation is not 100% perfect for weird media query combinations | ||
| // when a module is imported multiple times with different media queries. | ||
| // I hope this will never occur (Hey this way we have smaller bundles) | ||
| if(typeof item[0] !== "number" || !alreadyImportedModules[item[0]]) { | ||
| if(mediaQuery && !item[2]) { | ||
| item[2] = mediaQuery; | ||
| } else if(mediaQuery) { | ||
| item[2] = "(" + item[2] + ") and (" + mediaQuery + ")"; | ||
| } | ||
| list.push(item); | ||
| } | ||
| } | ||
| }; | ||
| return list; | ||
| }; | ||
| /***/ }), | ||
| /* 4 */ | ||
| /***/ (function(module, exports) { | ||
| // this module is a runtime utility for cleaner component module output and will | ||
| // be included in the final webpack user bundle | ||
| module.exports = function normalizeComponent ( | ||
| rawScriptExports, | ||
| compiledTemplate, | ||
| scopeId, | ||
| cssModules | ||
| ) { | ||
| var esModule | ||
| var scriptExports = rawScriptExports = rawScriptExports || {} | ||
| // ES6 modules interop | ||
| var type = typeof rawScriptExports.default | ||
| if (type === 'object' || type === 'function') { | ||
| esModule = rawScriptExports | ||
| scriptExports = rawScriptExports.default | ||
| } | ||
| // Vue.extend constructor export interop | ||
| var options = typeof scriptExports === 'function' | ||
| ? scriptExports.options | ||
| : scriptExports | ||
| // render functions | ||
| if (compiledTemplate) { | ||
| options.render = compiledTemplate.render | ||
| options.staticRenderFns = compiledTemplate.staticRenderFns | ||
| } | ||
| // scopedId | ||
| if (scopeId) { | ||
| options._scopeId = scopeId | ||
| } | ||
| // inject cssModules | ||
| if (cssModules) { | ||
| var computed = Object.create(options.computed || null) | ||
| Object.keys(cssModules).forEach(function (key) { | ||
| var module = cssModules[key] | ||
| computed[key] = function () { return module } | ||
| }) | ||
| options.computed = computed | ||
| } | ||
| return { | ||
| esModule: esModule, | ||
| exports: scriptExports, | ||
| options: options | ||
| } | ||
| } | ||
| /***/ }), | ||
| /* 5 */ | ||
| /***/ 7: | ||
| /***/ (function(module, exports, __webpack_require__) { | ||
| module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h; | ||
| return _c('div', { | ||
| attrs: { | ||
| "id": "map" | ||
| } | ||
| }) | ||
| },staticRenderFns: []} | ||
| module.exports.render._withStripped = true | ||
| if (false) { | ||
| module.hot.accept() | ||
| if (module.hot.data) { | ||
| require("vue-hot-reload-api").rerender("data-v-0773bd0c", module.exports) | ||
| } | ||
| } | ||
| module.exports = __webpack_require__(1); | ||
| /***/ }), | ||
| /* 6 */ | ||
| /***/ (function(module, exports, __webpack_require__) { | ||
| // style-loader: Adds some css to the DOM by adding a <style> tag | ||
| /***/ }) | ||
| // load the styles | ||
| var content = __webpack_require__(2); | ||
| if(typeof content === 'string') content = [[module.i, content, '']]; | ||
| if(content.locals) module.exports = content.locals; | ||
| // add the styles to the DOM | ||
| var update = __webpack_require__(7)("78f494f3", content, false); | ||
| // Hot Module Replacement | ||
| if(false) { | ||
| // When the styles change, update the <style> tags | ||
| if(!content.locals) { | ||
| module.hot.accept("!!../../node_modules/css-loader/index.js!../../node_modules/vue-loader/lib/style-compiler/index.js?{\"id\":\"data-v-0773bd0c\",\"scoped\":false,\"hasInlineConfig\":true}!../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./Mapbox.vue", function() { | ||
| var newContent = require("!!../../node_modules/css-loader/index.js!../../node_modules/vue-loader/lib/style-compiler/index.js?{\"id\":\"data-v-0773bd0c\",\"scoped\":false,\"hasInlineConfig\":true}!../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./Mapbox.vue"); | ||
| if(typeof newContent === 'string') newContent = [[module.id, newContent, '']]; | ||
| update(newContent); | ||
| }); | ||
| } | ||
| // When the module is disposed, remove the <style> tags | ||
| module.hot.dispose(function() { update(); }); | ||
| } | ||
| /***/ }), | ||
| /* 7 */ | ||
| /***/ (function(module, exports, __webpack_require__) { | ||
| /* | ||
| MIT License http://www.opensource.org/licenses/mit-license.php | ||
| Author Tobias Koppers @sokra | ||
| Modified by Evan You @yyx990803 | ||
| */ | ||
| var hasDocument = typeof document !== 'undefined' | ||
| if (typeof DEBUG !== 'undefined' && DEBUG) { | ||
| if (!hasDocument) { | ||
| throw new Error( | ||
| 'vue-style-loader cannot be used in a non-browser environment. ' + | ||
| "Use { target: 'node' } in your Webpack config to indicate a server-rendering environment." | ||
| ) } | ||
| } | ||
| var listToStyles = __webpack_require__(8) | ||
| /* | ||
| type StyleObject = { | ||
| id: number; | ||
| parts: Array<StyleObjectPart> | ||
| } | ||
| type StyleObjectPart = { | ||
| css: string; | ||
| media: string; | ||
| sourceMap: ?string | ||
| } | ||
| */ | ||
| var stylesInDom = {/* | ||
| [id: number]: { | ||
| id: number, | ||
| refs: number, | ||
| parts: Array<(obj?: StyleObjectPart) => void> | ||
| } | ||
| */} | ||
| var head = hasDocument && (document.head || document.getElementsByTagName('head')[0]) | ||
| var singletonElement = null | ||
| var singletonCounter = 0 | ||
| var isProduction = false | ||
| var noop = function () {} | ||
| // Force single-tag solution on IE6-9, which has a hard limit on the # of <style> | ||
| // tags it will allow on a page | ||
| var isOldIE = typeof navigator !== 'undefined' && /msie [6-9]\b/.test(navigator.userAgent.toLowerCase()) | ||
| module.exports = function (parentId, list, _isProduction) { | ||
| isProduction = _isProduction | ||
| var styles = listToStyles(parentId, list) | ||
| addStylesToDom(styles) | ||
| return function update (newList) { | ||
| var mayRemove = [] | ||
| for (var i = 0; i < styles.length; i++) { | ||
| var item = styles[i] | ||
| var domStyle = stylesInDom[item.id] | ||
| domStyle.refs-- | ||
| mayRemove.push(domStyle) | ||
| } | ||
| if (newList) { | ||
| styles = listToStyles(parentId, newList) | ||
| addStylesToDom(styles) | ||
| } else { | ||
| styles = [] | ||
| } | ||
| for (var i = 0; i < mayRemove.length; i++) { | ||
| var domStyle = mayRemove[i] | ||
| if (domStyle.refs === 0) { | ||
| for (var j = 0; j < domStyle.parts.length; j++) { | ||
| domStyle.parts[j]() | ||
| } | ||
| delete stylesInDom[domStyle.id] | ||
| } | ||
| } | ||
| } | ||
| } | ||
| function addStylesToDom (styles /* Array<StyleObject> */) { | ||
| for (var i = 0; i < styles.length; i++) { | ||
| var item = styles[i] | ||
| var domStyle = stylesInDom[item.id] | ||
| if (domStyle) { | ||
| domStyle.refs++ | ||
| for (var j = 0; j < domStyle.parts.length; j++) { | ||
| domStyle.parts[j](item.parts[j]) | ||
| } | ||
| for (; j < item.parts.length; j++) { | ||
| domStyle.parts.push(addStyle(item.parts[j])) | ||
| } | ||
| if (domStyle.parts.length > item.parts.length) { | ||
| domStyle.parts.length = item.parts.length | ||
| } | ||
| } else { | ||
| var parts = [] | ||
| for (var j = 0; j < item.parts.length; j++) { | ||
| parts.push(addStyle(item.parts[j])) | ||
| } | ||
| stylesInDom[item.id] = { id: item.id, refs: 1, parts: parts } | ||
| } | ||
| } | ||
| } | ||
| function createStyleElement () { | ||
| var styleElement = document.createElement('style') | ||
| styleElement.type = 'text/css' | ||
| head.appendChild(styleElement) | ||
| return styleElement | ||
| } | ||
| function addStyle (obj /* StyleObjectPart */) { | ||
| var update, remove | ||
| var styleElement = document.querySelector('style[data-vue-ssr-id~="' + obj.id + '"]') | ||
| if (styleElement) { | ||
| if (isProduction) { | ||
| // has SSR styles and in production mode. | ||
| // simply do nothing. | ||
| return noop | ||
| } else { | ||
| // has SSR styles but in dev mode. | ||
| // for some reason Chrome can't handle source map in server-rendered | ||
| // style tags - source maps in <style> only works if the style tag is | ||
| // created and inserted dynamically. So we remove the server rendered | ||
| // styles and inject new ones. | ||
| styleElement.parentNode.removeChild(styleElement) | ||
| } | ||
| } | ||
| if (isOldIE) { | ||
| // use singleton mode for IE9. | ||
| var styleIndex = singletonCounter++ | ||
| styleElement = singletonElement || (singletonElement = createStyleElement()) | ||
| update = applyToSingletonTag.bind(null, styleElement, styleIndex, false) | ||
| remove = applyToSingletonTag.bind(null, styleElement, styleIndex, true) | ||
| } else { | ||
| // use multi-style-tag mode in all other cases | ||
| styleElement = createStyleElement() | ||
| update = applyToTag.bind(null, styleElement) | ||
| remove = function () { | ||
| styleElement.parentNode.removeChild(styleElement) | ||
| } | ||
| } | ||
| update(obj) | ||
| return function updateStyle (newObj /* StyleObjectPart */) { | ||
| if (newObj) { | ||
| if (newObj.css === obj.css && | ||
| newObj.media === obj.media && | ||
| newObj.sourceMap === obj.sourceMap) { | ||
| return | ||
| } | ||
| update(obj = newObj) | ||
| } else { | ||
| remove() | ||
| } | ||
| } | ||
| } | ||
| var replaceText = (function () { | ||
| var textStore = [] | ||
| return function (index, replacement) { | ||
| textStore[index] = replacement | ||
| return textStore.filter(Boolean).join('\n') | ||
| } | ||
| })() | ||
| function applyToSingletonTag (styleElement, index, remove, obj) { | ||
| var css = remove ? '' : obj.css | ||
| if (styleElement.styleSheet) { | ||
| styleElement.styleSheet.cssText = replaceText(index, css) | ||
| } else { | ||
| var cssNode = document.createTextNode(css) | ||
| var childNodes = styleElement.childNodes | ||
| if (childNodes[index]) styleElement.removeChild(childNodes[index]) | ||
| if (childNodes.length) { | ||
| styleElement.insertBefore(cssNode, childNodes[index]) | ||
| } else { | ||
| styleElement.appendChild(cssNode) | ||
| } | ||
| } | ||
| } | ||
| function applyToTag (styleElement, obj) { | ||
| var css = obj.css | ||
| var media = obj.media | ||
| var sourceMap = obj.sourceMap | ||
| if (media) { | ||
| styleElement.setAttribute('media', media) | ||
| } | ||
| if (sourceMap) { | ||
| // https://developer.chrome.com/devtools/docs/javascript-debugging | ||
| // this makes source maps inside style tags work properly in Chrome | ||
| css += '\n/*# sourceURL=' + sourceMap.sources[0] + ' */' | ||
| // http://stackoverflow.com/a/26603875 | ||
| css += '\n/*# sourceMappingURL=data:application/json;base64,' + btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))) + ' */' | ||
| } | ||
| if (styleElement.styleSheet) { | ||
| styleElement.styleSheet.cssText = css | ||
| } else { | ||
| while (styleElement.firstChild) { | ||
| styleElement.removeChild(styleElement.firstChild) | ||
| } | ||
| styleElement.appendChild(document.createTextNode(css)) | ||
| } | ||
| } | ||
| /***/ }), | ||
| /* 8 */ | ||
| /***/ (function(module, exports) { | ||
| /** | ||
| * Translates the list format produced by css-loader into something | ||
| * easier to manipulate. | ||
| */ | ||
| module.exports = function listToStyles (parentId, list) { | ||
| var styles = [] | ||
| var newStyles = {} | ||
| for (var i = 0; i < list.length; i++) { | ||
| var item = list[i] | ||
| var id = item[0] | ||
| var css = item[1] | ||
| var media = item[2] | ||
| var sourceMap = item[3] | ||
| var part = { | ||
| id: parentId + ':' + i, | ||
| css: css, | ||
| media: media, | ||
| sourceMap: sourceMap | ||
| } | ||
| if (!newStyles[id]) { | ||
| styles.push(newStyles[id] = { id: id, parts: [part] }) | ||
| } else { | ||
| newStyles[id].parts.push(part) | ||
| } | ||
| } | ||
| return styles | ||
| } | ||
| /***/ }), | ||
| /* 9 */, | ||
| /* 10 */, | ||
| /* 11 */ | ||
| /***/ (function(module, exports, __webpack_require__) { | ||
| module.exports = __webpack_require__(0); | ||
| /***/ }) | ||
| /******/ ]); | ||
| /******/ }); |
| { | ||
| "name": "mapbox-gl-vue", | ||
| "version": "1.0.0", | ||
| "version": "1.0.1", | ||
| "description": "A Vue.js component for Mapbox GL js", | ||
@@ -5,0 +5,0 @@ "main": "dist/mapbox.js", |
@@ -16,2 +16,2 @@ | ||
| mix.js('src/app.js', 'dist/app.js') | ||
| .js('src/components/Mapbox.vue', 'dist/mapbox.js'); | ||
| .js('src/components/Mapbox.js', 'dist/mapbox.js'); |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
11
10%43180
-27.71%1252
-25.92%