UNPKG

leaflet-component-map

Version:

```bash npm install leaflet-component-map -S ```

1,707 lines (1,430 loc) 4.21 MB
(function webpackUniversalModuleDefinition(root, factory) { if(typeof exports === 'object' && typeof module === 'object') module.exports = factory(require("vue")); else if(typeof define === 'function' && define.amd) define([], factory); else if(typeof exports === 'object') exports["leaflet-component-map"] = factory(require("vue")); else root["leaflet-component-map"] = factory(root["Vue"]); })((typeof self !== 'undefined' ? self : this), function(__WEBPACK_EXTERNAL_MODULE__9274__) { return /******/ (function() { // webpackBootstrap /******/ var __webpack_modules__ = ({ /***/ 34: /***/ (function(module, __unused_webpack_exports, __webpack_require__) { "use strict"; var isCallable = __webpack_require__(4901); module.exports = function (it) { return typeof it == 'object' ? it !== null : isCallable(it); }; /***/ }), /***/ 81: /***/ (function(module, __unused_webpack_exports, __webpack_require__) { "use strict"; var call = __webpack_require__(9565); var aCallable = __webpack_require__(9306); var anObject = __webpack_require__(8551); var tryToString = __webpack_require__(6823); var getIteratorMethod = __webpack_require__(851); var $TypeError = TypeError; module.exports = function (argument, usingIterator) { var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator; if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument)); throw new $TypeError(tryToString(argument) + ' is not iterable'); }; /***/ }), /***/ 94: /***/ (function(module, __unused_webpack_exports, __webpack_require__) { module.exports = /******/ (function(modules) { // webpackBootstrap /******/ // The module cache /******/ var installedModules = {}; /******/ /******/ // The require function /******/ function __nested_webpack_require_187__(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, __nested_webpack_require_187__); /******/ /******/ // Flag the module as loaded /******/ module.l = true; /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /******/ /******/ // expose the modules object (__webpack_modules__) /******/ __nested_webpack_require_187__.m = modules; /******/ /******/ // expose the module cache /******/ __nested_webpack_require_187__.c = installedModules; /******/ /******/ // define getter function for harmony exports /******/ __nested_webpack_require_187__.d = function(exports, name, getter) { /******/ if(!__nested_webpack_require_187__.o(exports, name)) { /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); /******/ } /******/ }; /******/ /******/ // define __esModule on exports /******/ __nested_webpack_require_187__.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 /******/ __nested_webpack_require_187__.t = function(value, mode) { /******/ if(mode & 1) value = __nested_webpack_require_187__(value); /******/ if(mode & 8) return value; /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; /******/ var ns = Object.create(null); /******/ __nested_webpack_require_187__.r(ns); /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __nested_webpack_require_187__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); /******/ return ns; /******/ }; /******/ /******/ // getDefaultExport function for compatibility with non-harmony modules /******/ __nested_webpack_require_187__.n = function(module) { /******/ var getter = module && module.__esModule ? /******/ function getDefault() { return module['default']; } : /******/ function getModuleExports() { return module; }; /******/ __nested_webpack_require_187__.d(getter, 'a', getter); /******/ return getter; /******/ }; /******/ /******/ // Object.prototype.hasOwnProperty.call /******/ __nested_webpack_require_187__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; /******/ /******/ // __webpack_public_path__ /******/ __nested_webpack_require_187__.p = "/dist/"; /******/ /******/ /******/ // Load entry module and return exports /******/ return __nested_webpack_require_187__(__nested_webpack_require_187__.s = 133); /******/ }) /************************************************************************/ /******/ ({ /***/ 133: /***/ (function(module, __nested_webpack_exports__, __nested_webpack_require_3675__) { "use strict"; __nested_webpack_require_3675__.r(__nested_webpack_exports__); // EXTERNAL MODULE: external "element-ui/lib/utils/resize-event" var resize_event_ = __nested_webpack_require_3675__(16); // EXTERNAL MODULE: external "element-ui/lib/utils/scrollbar-width" var scrollbar_width_ = __nested_webpack_require_3675__(39); var scrollbar_width_default = /*#__PURE__*/__nested_webpack_require_3675__.n(scrollbar_width_); // EXTERNAL MODULE: external "element-ui/lib/utils/util" var util_ = __nested_webpack_require_3675__(3); // EXTERNAL MODULE: external "element-ui/lib/utils/dom" var dom_ = __nested_webpack_require_3675__(2); // CONCATENATED MODULE: ./packages/scrollbar/src/util.js var BAR_MAP = { vertical: { offset: 'offsetHeight', scroll: 'scrollTop', scrollSize: 'scrollHeight', size: 'height', key: 'vertical', axis: 'Y', client: 'clientY', direction: 'top' }, horizontal: { offset: 'offsetWidth', scroll: 'scrollLeft', scrollSize: 'scrollWidth', size: 'width', key: 'horizontal', axis: 'X', client: 'clientX', direction: 'left' } }; function renderThumbStyle(_ref) { var move = _ref.move, size = _ref.size, bar = _ref.bar; var style = {}; var translate = 'translate' + bar.axis + '(' + move + '%)'; style[bar.size] = size; style.transform = translate; style.msTransform = translate; style.webkitTransform = translate; return style; }; // CONCATENATED MODULE: ./packages/scrollbar/src/bar.js /* istanbul ignore next */ /* harmony default export */ var src_bar = ({ name: 'Bar', props: { vertical: Boolean, size: String, move: Number }, computed: { bar: function bar() { return BAR_MAP[this.vertical ? 'vertical' : 'horizontal']; }, wrap: function wrap() { return this.$parent.wrap; } }, render: function render(h) { var size = this.size, move = this.move, bar = this.bar; return h( 'div', { 'class': ['el-scrollbar__bar', 'is-' + bar.key], on: { 'mousedown': this.clickTrackHandler } }, [h('div', { ref: 'thumb', 'class': 'el-scrollbar__thumb', on: { 'mousedown': this.clickThumbHandler }, style: renderThumbStyle({ size: size, move: move, bar: bar }) })] ); }, methods: { clickThumbHandler: function clickThumbHandler(e) { // prevent click event of right button if (e.ctrlKey || e.button === 2) { return; } this.startDrag(e); this[this.bar.axis] = e.currentTarget[this.bar.offset] - (e[this.bar.client] - e.currentTarget.getBoundingClientRect()[this.bar.direction]); }, clickTrackHandler: function clickTrackHandler(e) { var offset = Math.abs(e.target.getBoundingClientRect()[this.bar.direction] - e[this.bar.client]); var thumbHalf = this.$refs.thumb[this.bar.offset] / 2; var thumbPositionPercentage = (offset - thumbHalf) * 100 / this.$el[this.bar.offset]; this.wrap[this.bar.scroll] = thumbPositionPercentage * this.wrap[this.bar.scrollSize] / 100; }, startDrag: function startDrag(e) { e.stopImmediatePropagation(); this.cursorDown = true; Object(dom_["on"])(document, 'mousemove', this.mouseMoveDocumentHandler); Object(dom_["on"])(document, 'mouseup', this.mouseUpDocumentHandler); document.onselectstart = function () { return false; }; }, mouseMoveDocumentHandler: function mouseMoveDocumentHandler(e) { if (this.cursorDown === false) return; var prevPage = this[this.bar.axis]; if (!prevPage) return; var offset = (this.$el.getBoundingClientRect()[this.bar.direction] - e[this.bar.client]) * -1; var thumbClickPosition = this.$refs.thumb[this.bar.offset] - prevPage; var thumbPositionPercentage = (offset - thumbClickPosition) * 100 / this.$el[this.bar.offset]; this.wrap[this.bar.scroll] = thumbPositionPercentage * this.wrap[this.bar.scrollSize] / 100; }, mouseUpDocumentHandler: function mouseUpDocumentHandler(e) { this.cursorDown = false; this[this.bar.axis] = 0; Object(dom_["off"])(document, 'mousemove', this.mouseMoveDocumentHandler); document.onselectstart = null; } }, destroyed: function destroyed() { Object(dom_["off"])(document, 'mouseup', this.mouseUpDocumentHandler); } }); // CONCATENATED MODULE: ./packages/scrollbar/src/main.js // reference https://github.com/noeldelgado/gemini-scrollbar/blob/master/index.js /* istanbul ignore next */ /* harmony default export */ var main = ({ name: 'ElScrollbar', components: { Bar: src_bar }, props: { native: Boolean, wrapStyle: {}, wrapClass: {}, viewClass: {}, viewStyle: {}, noresize: Boolean, // 如果 container 尺寸不会发生变化,最好设置它可以优化性能 tag: { type: String, default: 'div' } }, data: function data() { return { sizeWidth: '0', sizeHeight: '0', moveX: 0, moveY: 0 }; }, computed: { wrap: function wrap() { return this.$refs.wrap; } }, render: function render(h) { var gutter = scrollbar_width_default()(); var style = this.wrapStyle; if (gutter) { var gutterWith = '-' + gutter + 'px'; var gutterStyle = 'margin-bottom: ' + gutterWith + '; margin-right: ' + gutterWith + ';'; if (Array.isArray(this.wrapStyle)) { style = Object(util_["toObject"])(this.wrapStyle); style.marginRight = style.marginBottom = gutterWith; } else if (typeof this.wrapStyle === 'string') { style += gutterStyle; } else { style = gutterStyle; } } var view = h(this.tag, { class: ['el-scrollbar__view', this.viewClass], style: this.viewStyle, ref: 'resize' }, this.$slots.default); var wrap = h( 'div', { ref: 'wrap', style: style, on: { 'scroll': this.handleScroll }, 'class': [this.wrapClass, 'el-scrollbar__wrap', gutter ? '' : 'el-scrollbar__wrap--hidden-default'] }, [[view]] ); var nodes = void 0; if (!this.native) { nodes = [wrap, h(src_bar, { attrs: { move: this.moveX, size: this.sizeWidth } }), h(src_bar, { attrs: { vertical: true, move: this.moveY, size: this.sizeHeight } })]; } else { nodes = [h( 'div', { ref: 'wrap', 'class': [this.wrapClass, 'el-scrollbar__wrap'], style: style }, [[view]] )]; } return h('div', { class: 'el-scrollbar' }, nodes); }, methods: { handleScroll: function handleScroll() { var wrap = this.wrap; this.moveY = wrap.scrollTop * 100 / wrap.clientHeight; this.moveX = wrap.scrollLeft * 100 / wrap.clientWidth; }, update: function update() { var heightPercentage = void 0, widthPercentage = void 0; var wrap = this.wrap; if (!wrap) return; heightPercentage = wrap.clientHeight * 100 / wrap.scrollHeight; widthPercentage = wrap.clientWidth * 100 / wrap.scrollWidth; this.sizeHeight = heightPercentage < 100 ? heightPercentage + '%' : ''; this.sizeWidth = widthPercentage < 100 ? widthPercentage + '%' : ''; } }, mounted: function mounted() { if (this.native) return; this.$nextTick(this.update); !this.noresize && Object(resize_event_["addResizeListener"])(this.$refs.resize, this.update); }, beforeDestroy: function beforeDestroy() { if (this.native) return; !this.noresize && Object(resize_event_["removeResizeListener"])(this.$refs.resize, this.update); } }); // CONCATENATED MODULE: ./packages/scrollbar/index.js /* istanbul ignore next */ main.install = function (Vue) { Vue.component(main.name, main); }; /* harmony default export */ var scrollbar = __nested_webpack_exports__["default"] = (main); /***/ }), /***/ 16: /***/ (function(module, exports) { module.exports = __webpack_require__(1557); /***/ }), /***/ 2: /***/ (function(module, exports) { module.exports = __webpack_require__(5870); /***/ }), /***/ 3: /***/ (function(module, exports) { module.exports = __webpack_require__(2320); /***/ }), /***/ 39: /***/ (function(module, exports) { module.exports = __webpack_require__(373); /***/ }) /******/ }); /***/ }), /***/ 116: /***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { "use strict"; var $ = __webpack_require__(6518); var call = __webpack_require__(9565); var iterate = __webpack_require__(2652); var aCallable = __webpack_require__(9306); var anObject = __webpack_require__(8551); var getIteratorDirect = __webpack_require__(1767); var iteratorClose = __webpack_require__(9539); var iteratorHelperWithoutClosingOnEarlyError = __webpack_require__(4549); var findWithoutClosingOnEarlyError = iteratorHelperWithoutClosingOnEarlyError('find', TypeError); // `Iterator.prototype.find` method // https://tc39.es/ecma262/#sec-iterator.prototype.find $({ target: 'Iterator', proto: true, real: true, forced: findWithoutClosingOnEarlyError }, { find: function find(predicate) { anObject(this); try { aCallable(predicate); } catch (error) { iteratorClose(this, 'throw', error); } if (findWithoutClosingOnEarlyError) return call(findWithoutClosingOnEarlyError, this, predicate); var record = getIteratorDirect(this); var counter = 0; return iterate(record, function (value, stop) { if (predicate(value, counter++)) return stop(value); }, { IS_RECORD: true, INTERRUPTED: true }).result; } }); /***/ }), /***/ 143: /***/ (function(__unused_webpack_module, exports) { "use strict"; exports.__esModule = true; exports["default"] = function (ref) { return { methods: { focus: function focus() { this.$refs[ref].focus(); } } }; }; ; /***/ }), /***/ 167: /***/ (function(__unused_webpack_module, exports, __webpack_require__) { "use strict"; exports.__esModule = true; var _vue = __webpack_require__(9274); var _vue2 = _interopRequireDefault(_vue); var _dom = __webpack_require__(5870); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var nodeList = []; var ctx = '@@clickoutsideContext'; var startClick = void 0; var seed = 0; !_vue2.default.prototype.$isServer && (0, _dom.on)(document, 'mousedown', function (e) { return startClick = e; }); !_vue2.default.prototype.$isServer && (0, _dom.on)(document, 'mouseup', function (e) { nodeList.forEach(function (node) { return node[ctx].documentHandler(e, startClick); }); }); function createDocumentHandler(el, binding, vnode) { return function () { var mouseup = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var mousedown = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; if (!vnode || !vnode.context || !mouseup.target || !mousedown.target || el.contains(mouseup.target) || el.contains(mousedown.target) || el === mouseup.target || vnode.context.popperElm && (vnode.context.popperElm.contains(mouseup.target) || vnode.context.popperElm.contains(mousedown.target))) return; if (binding.expression && el[ctx].methodName && vnode.context[el[ctx].methodName]) { vnode.context[el[ctx].methodName](); } else { el[ctx].bindingFn && el[ctx].bindingFn(); } }; } /** * v-clickoutside * @desc 点击元素外面才会触发的事件 * @example * ```vue * <div v-element-clickoutside="handleClose"> * ``` */ exports["default"] = { bind: function bind(el, binding, vnode) { nodeList.push(el); var id = seed++; el[ctx] = { id: id, documentHandler: createDocumentHandler(el, binding, vnode), methodName: binding.expression, bindingFn: binding.value }; }, update: function update(el, binding, vnode) { el[ctx].documentHandler = createDocumentHandler(el, binding, vnode); el[ctx].methodName = binding.expression; el[ctx].bindingFn = binding.value; }, unbind: function unbind(el) { var len = nodeList.length; for (var i = 0; i < len; i++) { if (nodeList[i][ctx].id === el[ctx].id) { nodeList.splice(i, 1); break; } } delete el[ctx]; } }; /***/ }), /***/ 283: /***/ (function(module, __unused_webpack_exports, __webpack_require__) { "use strict"; var uncurryThis = __webpack_require__(9504); var fails = __webpack_require__(9039); var isCallable = __webpack_require__(4901); var hasOwn = __webpack_require__(9297); var DESCRIPTORS = __webpack_require__(3724); var CONFIGURABLE_FUNCTION_NAME = (__webpack_require__(350).CONFIGURABLE); var inspectSource = __webpack_require__(3706); var InternalStateModule = __webpack_require__(1181); var enforceInternalState = InternalStateModule.enforce; var getInternalState = InternalStateModule.get; var $String = String; // eslint-disable-next-line es/no-object-defineproperty -- safe var defineProperty = Object.defineProperty; var stringSlice = uncurryThis(''.slice); var replace = uncurryThis(''.replace); var join = uncurryThis([].join); var CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () { return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8; }); var TEMPLATE = String(String).split('String'); var makeBuiltIn = module.exports = function (value, name, options) { if (stringSlice($String(name), 0, 7) === 'Symbol(') { name = '[' + replace($String(name), /^Symbol\(([^)]*)\).*$/, '$1') + ']'; } if (options && options.getter) name = 'get ' + name; if (options && options.setter) name = 'set ' + name; if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) { if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true }); else value.name = name; } if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) { defineProperty(value, 'length', { value: options.arity }); } try { if (options && hasOwn(options, 'constructor') && options.constructor) { if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false }); // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable } else if (value.prototype) value.prototype = undefined; } catch (error) { /* empty */ } var state = enforceInternalState(value); if (!hasOwn(state, 'source')) { state.source = join(TEMPLATE, typeof name == 'string' ? name : ''); } return value; }; // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative // eslint-disable-next-line no-extend-native -- required Function.prototype.toString = makeBuiltIn(function toString() { return isCallable(this) && getInternalState(this).source || inspectSource(this); }, 'toString'); /***/ }), /***/ 326: /***/ (function(module) { module.exports = function (it) { return typeof it === 'object' ? it !== null : typeof it === 'function'; }; /***/ }), /***/ 350: /***/ (function(module, __unused_webpack_exports, __webpack_require__) { "use strict"; var DESCRIPTORS = __webpack_require__(3724); var hasOwn = __webpack_require__(9297); var FunctionPrototype = Function.prototype; // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe var getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor; var EXISTS = hasOwn(FunctionPrototype, 'name'); // additional protection from minified / mangled / dropped function names var PROPER = EXISTS && (function something() { /* empty */ }).name === 'something'; var CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable)); module.exports = { EXISTS: EXISTS, PROPER: PROPER, CONFIGURABLE: CONFIGURABLE }; /***/ }), /***/ 373: /***/ (function(__unused_webpack_module, exports, __webpack_require__) { "use strict"; exports.__esModule = true; exports["default"] = function () { if (_vue2.default.prototype.$isServer) return 0; if (scrollBarWidth !== undefined) return scrollBarWidth; var outer = document.createElement('div'); outer.className = 'el-scrollbar__wrap'; outer.style.visibility = 'hidden'; outer.style.width = '100px'; outer.style.position = 'absolute'; outer.style.top = '-9999px'; document.body.appendChild(outer); var widthNoScroll = outer.offsetWidth; outer.style.overflow = 'scroll'; var inner = document.createElement('div'); inner.style.width = '100%'; outer.appendChild(inner); var widthWithScroll = inner.offsetWidth; outer.parentNode.removeChild(outer); scrollBarWidth = widthNoScroll - widthWithScroll; return scrollBarWidth; }; var _vue = __webpack_require__(9274); var _vue2 = _interopRequireDefault(_vue); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var scrollBarWidth = void 0; ; /***/ }), /***/ 397: /***/ (function(module, __unused_webpack_exports, __webpack_require__) { "use strict"; var getBuiltIn = __webpack_require__(7751); module.exports = getBuiltIn('document', 'documentElement'); /***/ }), /***/ 421: /***/ (function(module) { "use strict"; module.exports = {}; /***/ }), /***/ 531: /***/ (function(module, __unused_webpack_exports, __webpack_require__) { var isObject = __webpack_require__(326); module.exports = function (it) { if (!isObject(it)) throw TypeError(it + ' is not an object!'); return it; }; /***/ }), /***/ 559: /***/ (function(module, __unused_webpack_exports, __webpack_require__) { var isObject = __webpack_require__(326); var document = (__webpack_require__(6903).document); // typeof document.createElement is 'object' in old IE var is = isObject(document) && isObject(document.createElement); module.exports = function (it) { return is ? document.createElement(it) : {}; }; /***/ }), /***/ 616: /***/ (function(module, __unused_webpack_exports, __webpack_require__) { "use strict"; var fails = __webpack_require__(9039); module.exports = !fails(function () { // eslint-disable-next-line es/no-function-prototype-bind -- safe var test = (function () { /* empty */ }).bind(); // eslint-disable-next-line no-prototype-builtins -- safe return typeof test != 'function' || test.hasOwnProperty('prototype'); }); /***/ }), /***/ 679: /***/ (function(module, __unused_webpack_exports, __webpack_require__) { "use strict"; var isPrototypeOf = __webpack_require__(1625); var $TypeError = TypeError; module.exports = function (it, Prototype) { if (isPrototypeOf(Prototype, it)) return it; throw new $TypeError('Incorrect invocation'); }; /***/ }), /***/ 684: /***/ (function(module) { "use strict"; // Should throw an error on invalid iterator // https://issues.chromium.org/issues/336839115 module.exports = function (methodName, argument) { // eslint-disable-next-line es/no-iterator -- required for testing var method = typeof Iterator == 'function' && Iterator.prototype[methodName]; if (method) try { method.call({ next: null }, argument).next(); } catch (error) { return true; } }; /***/ }), /***/ 741: /***/ (function(module) { "use strict"; var ceil = Math.ceil; var floor = Math.floor; // `Math.trunc` method // https://tc39.es/ecma262/#sec-math.trunc // eslint-disable-next-line es/no-math-trunc -- safe module.exports = Math.trunc || function trunc(x) { var n = +x; return (n > 0 ? floor : ceil)(n); }; /***/ }), /***/ 757: /***/ (function(module, __unused_webpack_exports, __webpack_require__) { "use strict"; var getBuiltIn = __webpack_require__(7751); var isCallable = __webpack_require__(4901); var isPrototypeOf = __webpack_require__(1625); var USE_SYMBOL_AS_UID = __webpack_require__(7040); var $Object = Object; module.exports = USE_SYMBOL_AS_UID ? function (it) { return typeof it == 'symbol'; } : function (it) { var $Symbol = getBuiltIn('Symbol'); return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it)); }; /***/ }), /***/ 777: /***/ (function(module, __unused_webpack_exports, __webpack_require__) { "use strict"; /** * Copyright (c) 2015, Facebook, Inc. * All rights reserved. * * This source code is licensed under the BSD-style license found in the * LICENSE file in the root directory of this source tree. An additional grant * of patent rights can be found in the PATENTS file in the same directory. * * @providesModule normalizeWheel * @typechecks */ var UserAgent_DEPRECATED = __webpack_require__(8751); var isEventSupported = __webpack_require__(8125); // Reasonable defaults var PIXEL_STEP = 10; var LINE_HEIGHT = 40; var PAGE_HEIGHT = 800; /** * Mouse wheel (and 2-finger trackpad) support on the web sucks. It is * complicated, thus this doc is long and (hopefully) detailed enough to answer * your questions. * * If you need to react to the mouse wheel in a predictable way, this code is * like your bestest friend. * hugs * * * As of today, there are 4 DOM event types you can listen to: * * 'wheel' -- Chrome(31+), FF(17+), IE(9+) * 'mousewheel' -- Chrome, IE(6+), Opera, Safari * 'MozMousePixelScroll' -- FF(3.5 only!) (2010-2013) -- don't bother! * 'DOMMouseScroll' -- FF(0.9.7+) since 2003 * * So what to do? The is the best: * * normalizeWheel.getEventType(); * * In your event callback, use this code to get sane interpretation of the * deltas. This code will return an object with properties: * * spinX -- normalized spin speed (use for zoom) - x plane * spinY -- " - y plane * pixelX -- normalized distance (to pixels) - x plane * pixelY -- " - y plane * * Wheel values are provided by the browser assuming you are using the wheel to * scroll a web page by a number of lines or pixels (or pages). Values can vary * significantly on different platforms and browsers, forgetting that you can * scroll at different speeds. Some devices (like trackpads) emit more events * at smaller increments with fine granularity, and some emit massive jumps with * linear speed or acceleration. * * This code does its best to normalize the deltas for you: * * - spin is trying to normalize how far the wheel was spun (or trackpad * dragged). This is super useful for zoom support where you want to * throw away the chunky scroll steps on the PC and make those equal to * the slow and smooth tiny steps on the Mac. Key data: This code tries to * resolve a single slow step on a wheel to 1. * * - pixel is normalizing the desired scroll delta in pixel units. You'll * get the crazy differences between browsers, but at least it'll be in * pixels! * * - positive value indicates scrolling DOWN/RIGHT, negative UP/LEFT. This * should translate to positive value zooming IN, negative zooming OUT. * This matches the newer 'wheel' event. * * Why are there spinX, spinY (or pixels)? * * - spinX is a 2-finger side drag on the trackpad, and a shift + wheel turn * with a mouse. It results in side-scrolling in the browser by default. * * - spinY is what you expect -- it's the classic axis of a mouse wheel. * * - I dropped spinZ/pixelZ. It is supported by the DOM 3 'wheel' event and * probably is by browsers in conjunction with fancy 3D controllers .. but * you know. * * Implementation info: * * Examples of 'wheel' event if you scroll slowly (down) by one step with an * average mouse: * * OS X + Chrome (mouse) - 4 pixel delta (wheelDelta -120) * OS X + Safari (mouse) - N/A pixel delta (wheelDelta -12) * OS X + Firefox (mouse) - 0.1 line delta (wheelDelta N/A) * Win8 + Chrome (mouse) - 100 pixel delta (wheelDelta -120) * Win8 + Firefox (mouse) - 3 line delta (wheelDelta -120) * * On the trackpad: * * OS X + Chrome (trackpad) - 2 pixel delta (wheelDelta -6) * OS X + Firefox (trackpad) - 1 pixel delta (wheelDelta N/A) * * On other/older browsers.. it's more complicated as there can be multiple and * also missing delta values. * * The 'wheel' event is more standard: * * http://www.w3.org/TR/DOM-Level-3-Events/#events-wheelevents * * The basics is that it includes a unit, deltaMode (pixels, lines, pages), and * deltaX, deltaY and deltaZ. Some browsers provide other values to maintain * backward compatibility with older events. Those other values help us * better normalize spin speed. Example of what the browsers provide: * * | event.wheelDelta | event.detail * ------------------+------------------+-------------- * Safari v5/OS X | -120 | 0 * Safari v5/Win7 | -120 | 0 * Chrome v17/OS X | -120 | 0 * Chrome v17/Win7 | -120 | 0 * IE9/Win7 | -120 | undefined * Firefox v4/OS X | undefined | 1 * Firefox v4/Win7 | undefined | 3 * */ function normalizeWheel(/*object*/ event) /*object*/ { var sX = 0, sY = 0, // spinX, spinY pX = 0, pY = 0; // pixelX, pixelY // Legacy if ('detail' in event) { sY = event.detail; } if ('wheelDelta' in event) { sY = -event.wheelDelta / 120; } if ('wheelDeltaY' in event) { sY = -event.wheelDeltaY / 120; } if ('wheelDeltaX' in event) { sX = -event.wheelDeltaX / 120; } // side scrolling on FF with DOMMouseScroll if ( 'axis' in event && event.axis === event.HORIZONTAL_AXIS ) { sX = sY; sY = 0; } pX = sX * PIXEL_STEP; pY = sY * PIXEL_STEP; if ('deltaY' in event) { pY = event.deltaY; } if ('deltaX' in event) { pX = event.deltaX; } if ((pX || pY) && event.deltaMode) { if (event.deltaMode == 1) { // delta in LINE units pX *= LINE_HEIGHT; pY *= LINE_HEIGHT; } else { // delta in PAGE units pX *= PAGE_HEIGHT; pY *= PAGE_HEIGHT; } } // Fall-back if spin cannot be determined if (pX && !sX) { sX = (pX < 1) ? -1 : 1; } if (pY && !sY) { sY = (pY < 1) ? -1 : 1; } return { spinX : sX, spinY : sY, pixelX : pX, pixelY : pY }; } /** * The best combination if you prefer spinX + spinY normalization. It favors * the older DOMMouseScroll for Firefox, as FF does not include wheelDelta with * 'wheel' event, making spin speed determination impossible. */ normalizeWheel.getEventType = function() /*string*/ { return (UserAgent_DEPRECATED.firefox()) ? 'DOMMouseScroll' : (isEventSupported('wheel')) ? 'wheel' : 'mousewheel'; }; module.exports = normalizeWheel; /***/ }), /***/ 824: /***/ (function(module, __unused_webpack_exports, __webpack_require__) { module.exports = /******/ (function(modules) { // webpackBootstrap /******/ // The module cache /******/ var installedModules = {}; /******/ /******/ // The require function /******/ function __nested_webpack_require_187__(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, __nested_webpack_require_187__); /******/ /******/ // Flag the module as loaded /******/ module.l = true; /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /******/ /******/ // expose the modules object (__webpack_modules__) /******/ __nested_webpack_require_187__.m = modules; /******/ /******/ // expose the module cache /******/ __nested_webpack_require_187__.c = installedModules; /******/ /******/ // define getter function for harmony exports /******/ __nested_webpack_require_187__.d = function(exports, name, getter) { /******/ if(!__nested_webpack_require_187__.o(exports, name)) { /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); /******/ } /******/ }; /******/ /******/ // define __esModule on exports /******/ __nested_webpack_require_187__.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 /******/ __nested_webpack_require_187__.t = function(value, mode) { /******/ if(mode & 1) value = __nested_webpack_require_187__(value); /******/ if(mode & 8) return value; /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; /******/ var ns = Object.create(null); /******/ __nested_webpack_require_187__.r(ns); /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __nested_webpack_require_187__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); /******/ return ns; /******/ }; /******/ /******/ // getDefaultExport function for compatibility with non-harmony modules /******/ __nested_webpack_require_187__.n = function(module) { /******/ var getter = module && module.__esModule ? /******/ function getDefault() { return module['default']; } : /******/ function getModuleExports() { return module; }; /******/ __nested_webpack_require_187__.d(getter, 'a', getter); /******/ return getter; /******/ }; /******/ /******/ // Object.prototype.hasOwnProperty.call /******/ __nested_webpack_require_187__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; /******/ /******/ // __webpack_public_path__ /******/ __nested_webpack_require_187__.p = "/dist/"; /******/ /******/ /******/ // Load entry module and return exports /******/ return __nested_webpack_require_187__(__nested_webpack_require_187__.s = 87); /******/ }) /************************************************************************/ /******/ ({ /***/ 0: /***/ (function(module, __nested_webpack_exports__, __nested_webpack_require_3672__) { "use strict"; /* harmony export (binding) */ __nested_webpack_require_3672__.d(__nested_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, 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 functioal 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 } } /***/ }), /***/ 10: /***/ (function(module, exports) { module.exports = __webpack_require__(4140); /***/ }), /***/ 2: /***/ (function(module, exports) { module.exports = __webpack_require__(5870); /***/ }), /***/ 22: /***/ (function(module, exports) { module.exports = __webpack_require__(143); /***/ }), /***/ 3: /***/ (function(module, exports) { module.exports = __webpack_require__(2320); /***/ }), /***/ 30: /***/ (function(module, __nested_webpack_exports__, __nested_webpack_require_7021__) { "use strict"; /* harmony import */ var element_ui_src_utils_dom__WEBPACK_IMPORTED_MODULE_0__ = __nested_webpack_require_7021__(2); /* harmony import */ var element_ui_src_utils_dom__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__nested_webpack_require_7021__.n(element_ui_src_utils_dom__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var element_ui_src_utils_util__WEBPACK_IMPORTED_MODULE_1__ = __nested_webpack_require_7021__(3); /* harmony import */ var element_ui_src_utils_util__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__nested_webpack_require_7021__.n(element_ui_src_utils_util__WEBPACK_IMPORTED_MODULE_1__); /* harmony default export */ __nested_webpack_exports__["a"] = ({ bind: function bind(el, binding, vnode) { var interval = null; var startTime = void 0; var maxIntervals = Object(element_ui_src_utils_util__WEBPACK_IMPORTED_MODULE_1__["isMac"])() ? 100 : 200; var handler = function handler() { return vnode.context[binding.expression].apply(); }; var clear = function clear() { if (Date.now() - startTime < maxIntervals) { handler(); } clearInterval(interval); interval = null; }; Object(element_ui_src_utils_dom__WEBPACK_IMPORTED_MODULE_0__["on"])(el, 'mousedown', function (e) { if (e.button !== 0) return; startTime = Date.now(); Object(element_ui_src_utils_dom__WEBPACK_IMPORTED_MODULE_0__["once"])(document, 'mouseup', clear); clearInterval(interval); interval = setInterval(handler, maxIntervals); }); } }); /***/ }), /***/ 87: /***/ (function(module, __nested_webpack_exports__, __nested_webpack_require_8618__) { "use strict"; __nested_webpack_require_8618__.r(__nested_webpack_exports__); // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/input-number/src/input-number.vue?vue&type=template&id=42f8cf66& var render = function() { var _vm = this var _h = _vm.$createElement var _c = _vm._self._c || _h return _c( "div", { class: [ "el-input-number", _vm.inputNumberSize ? "el-input-number--" + _vm.inputNumberSize : "", { "is-disabled": _vm.inputNumberDisabled }, { "is-without-controls": !_vm.controls }, { "is-controls-right": _vm.controlsAtRight } ], on: { dragstart: function($event) { $event.preventDefault() } } }, [ _vm.controls ? _c( "span", { directives: [ { name: "repeat-click", rawName: "v-repeat-click", value: _vm.decrease, expression: "decrease" } ], staticClass: "el-input-number__decrease", class: { "is-disabled": _vm.minDisabled }, attrs: { role: "button" }, on: { keydown: function($event) { if ( !("button" in $event) && _vm._k($event.keyCode, "enter", 13, $event.key, "Enter") ) { return null } return _vm.decrease($event) } } }, [ _c("i", { class: "el-icon-" + (_vm.controlsAtRight ? "arrow-down" : "minus") }) ] ) : _vm._e(), _vm.controls ? _c( "span", { directives: [ { name: "repeat-click", rawName: "v-repeat-click", value: _vm.increase, expression: "increase" } ], staticClass: "el-input-number__increase", class: { "is-disabled": _vm.maxDisabled }, attrs: { role: "button" }, on: { keydown: function($event) { if ( !("button" in $event) && _vm._k($event.keyCode, "enter", 13, $event.key, "Enter") ) { return null } return _vm.increase($event) } } }, [ _c("i", { class: "el-icon-" + (_vm.controlsAtRight ? "arrow-up" : "plus") }) ] ) : _vm._e(), _c("el-input", { ref: "input", attrs: { value: _vm.displayValue, placeholder: _vm.placeholder, disabled: _vm.inputNumberDisabled, size: _vm.inputNumberSize, max: _vm.max, min: _vm.min, name: _vm.name, label: _vm.label }, on: { blur: _vm.handleBlur, focus: _vm.handleFocus, input: _vm.handleInput, change: _vm.handleInputChange }, nativeOn: { keydown: [ function($event) { if ( !("button" in $event) && _vm._k($event.keyCode, "up", 38, $event.key, ["Up", "ArrowUp"]) ) { return null } $event.preventDefault() return _vm.increase($event) }, function($event) { if ( !("button" in $event) && _vm._k($event.keyCode, "down", 40, $event.key, [ "Down", "ArrowDown" ]) ) { return null } $event.preventDefault() return _vm.decrease($event) } ] } }) ], 1 ) } var staticRenderFns = [] render._withStripped = true // CONCATENATED MODULE: ./packages/input-number/src/input-number.vue?vue&type=template&id=42f8cf66& // EXTERNAL MODULE: external "element-ui/lib/input" var input_ = __nested_webpack_require_8618__(10); var input_default = /*#__PURE__*/__nested_webpack_require_8618__.n(input_); // EXTERNAL MODULE: external "element-ui/lib/mixins/focus" var focus_ = __nested_webpack_require_8618__(22); var focus_default = /*#__PURE__*/__nested_webpack_require_8618__.n(focus_); // EXTERNAL MODULE: ./src/directives/repeat-click.js var repeat_click = __nested_webpack_require_8618__(30); // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/input-number/src/input-number.vue?vue&type=script&lang=js& // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // /* harmony default export */ var input_numbervue_type_script_lang_js_ = ({ name: 'ElInputNumber', mixins: [focus_default()('input')], inject: { elForm: { default: '' }, elFormItem: { default: '' } }, directives: { repeatClick: repeat_click["a" /* default */] }, components: { ElInput: input_default.a }, props: { step: { type: Number, default: 1 }, stepStrictly: { type: Boolean, default: false }, max: { type: Number, default: Infinity }, min: { type: Number, default: -Infinity }, value: {}, disabled: Boolean, size: String, controls: { type: Boolean, default: true }, controlsPosition: { type: String, default: '' }, name: String, label: String, placeholder: String, precision: { type: Number, validator: function validator(val) { return val >= 0 && val === parseInt(val, 10); } } }, data: function data() { return { currentValue: 0, userInput: null }; }, watch: { value: { immediate: true, handler: function handler(value) { var newVal = value === undefined ? value : Number(value); if (newVal !== undefined) { if (isNaN(newVal)) { return; } if (this.stepStrictly) { var stepPrecision = this.getPrecision(this.step); var precisionFactor = Math.pow(10, stepPrecision); newVal = Math.round(newVal / this.step) * precisionFactor * this.step / precisionFactor; } if (this.precision !== undefined) { newVal = this.toPrecision(newVal, this.precision); } } if (newVal >= this.max) newVal = this.max; if (newVal <= this.min) newVal = this.min; this.currentValue = newVal; this.userInput = null; this.$emit('input', newVal); } } }, computed: { minDisabled: function minDisabled() { return this._decrease(this.value, this.step) < this.min; }, maxDisabled: function maxDisabled() { return this._increase(this.value, this.step) > this.max; }, numPrecision: function numPrecision() { var value = this.value, step = this.step, getPrecision = this.getPrecision, precision = this.precision; var stepPrecision = getPrecision(step); if (precision !== undefined) { if (stepPrecision > precision) { console.warn('[Element Warn][InputNumber]precision should not be less than the decimal places of step'); } return precision; } else { return Math.max(getPrecision(value), stepPrecision); } }, controlsAtRight: function controlsAtRight() { return this.controls && this.controlsPosition === 'right'; }, _elFormItemSize: function _elFormItemSize() { return (this.elFormItem || {}).elFormItemSize; }, inputNumberSize: function inputNumberSize() { return this.size || this._elFormItemSize || (this.$ELEMENT || {}).size; }, inputNumberDisabled: function inputNumberDisabled() { return this.disabled || !!(this.elForm || {}).disabled; }, displayValue: function displayValue() { if (this.userI