From d5dfe07c71b84018159f8a7294b3809f8e8f4f1c Mon Sep 17 00:00:00 2001 From: huayifeng <461249104@qq.com> Date: Tue, 6 Aug 2019 00:37:18 +0800 Subject: [PATCH 1/8] 7-7 --- 7-7/index.html | 54 +++ 7-7/lib/fastclick.js | 841 +++++++++++++++++++++++++++++++++++++++++++ 7-7/src/index.js | 145 ++++++++ 7-7/styles/index.css | 77 ++++ 7-7/styles/reset.css | 48 +++ 5 files changed, 1165 insertions(+) create mode 100644 7-7/index.html create mode 100644 7-7/lib/fastclick.js create mode 100644 7-7/src/index.js create mode 100644 7-7/styles/index.css create mode 100644 7-7/styles/reset.css diff --git a/7-7/index.html b/7-7/index.html new file mode 100644 index 0000000..e87023e --- /dev/null +++ b/7-7/index.html @@ -0,0 +1,54 @@ + + + + + + + + + 开心一天又一天 + + +
+
+
+
+
+
+
+
+ 得分: + 1 +
+
+
+
+ + + + +
+ + + + + + + + \ No newline at end of file diff --git a/7-7/lib/fastclick.js b/7-7/lib/fastclick.js new file mode 100644 index 0000000..225ff66 --- /dev/null +++ b/7-7/lib/fastclick.js @@ -0,0 +1,841 @@ +;(function () { + 'use strict'; + + /** + * @preserve FastClick: polyfill to remove click delays on browsers with touch UIs. + * + * @codingstandard ftlabs-jsv2 + * @copyright The Financial Times Limited [All Rights Reserved] + * @license MIT License (see LICENSE.txt) + */ + + /*jslint browser:true, node:true*/ + /*global define, Event, Node*/ + + + /** + * Instantiate fast-clicking listeners on the specified layer. + * + * @constructor + * @param {Element} layer The layer to listen on + * @param {Object} [options={}] The options to override the defaults + */ + function FastClick(layer, options) { + var oldOnClick; + + options = options || {}; + + /** + * Whether a click is currently being tracked. + * + * @type boolean + */ + this.trackingClick = false; + + + /** + * Timestamp for when click tracking started. + * + * @type number + */ + this.trackingClickStart = 0; + + + /** + * The element being tracked for a click. + * + * @type EventTarget + */ + this.targetElement = null; + + + /** + * X-coordinate of touch start event. + * + * @type number + */ + this.touchStartX = 0; + + + /** + * Y-coordinate of touch start event. + * + * @type number + */ + this.touchStartY = 0; + + + /** + * ID of the last touch, retrieved from Touch.identifier. + * + * @type number + */ + this.lastTouchIdentifier = 0; + + + /** + * Touchmove boundary, beyond which a click will be cancelled. + * + * @type number + */ + this.touchBoundary = options.touchBoundary || 10; + + + /** + * The FastClick layer. + * + * @type Element + */ + this.layer = layer; + + /** + * The minimum time between tap(touchstart and touchend) events + * + * @type number + */ + this.tapDelay = options.tapDelay || 200; + + /** + * The maximum time for a tap + * + * @type number + */ + this.tapTimeout = options.tapTimeout || 700; + + if (FastClick.notNeeded(layer)) { + return; + } + + // Some old versions of Android don't have Function.prototype.bind + function bind(method, context) { + return function() { return method.apply(context, arguments); }; + } + + + var methods = ['onMouse', 'onClick', 'onTouchStart', 'onTouchMove', 'onTouchEnd', 'onTouchCancel']; + var context = this; + for (var i = 0, l = methods.length; i < l; i++) { + context[methods[i]] = bind(context[methods[i]], context); + } + + // Set up event handlers as required + if (deviceIsAndroid) { + layer.addEventListener('mouseover', this.onMouse, true); + layer.addEventListener('mousedown', this.onMouse, true); + layer.addEventListener('mouseup', this.onMouse, true); + } + + layer.addEventListener('click', this.onClick, true); + layer.addEventListener('touchstart', this.onTouchStart, false); + layer.addEventListener('touchmove', this.onTouchMove, false); + layer.addEventListener('touchend', this.onTouchEnd, false); + layer.addEventListener('touchcancel', this.onTouchCancel, false); + + // Hack is required for browsers that don't support Event#stopImmediatePropagation (e.g. Android 2) + // which is how FastClick normally stops click events bubbling to callbacks registered on the FastClick + // layer when they are cancelled. + if (!Event.prototype.stopImmediatePropagation) { + layer.removeEventListener = function(type, callback, capture) { + var rmv = Node.prototype.removeEventListener; + if (type === 'click') { + rmv.call(layer, type, callback.hijacked || callback, capture); + } else { + rmv.call(layer, type, callback, capture); + } + }; + + layer.addEventListener = function(type, callback, capture) { + var adv = Node.prototype.addEventListener; + if (type === 'click') { + adv.call(layer, type, callback.hijacked || (callback.hijacked = function(event) { + if (!event.propagationStopped) { + callback(event); + } + }), capture); + } else { + adv.call(layer, type, callback, capture); + } + }; + } + + // If a handler is already declared in the element's onclick attribute, it will be fired before + // FastClick's onClick handler. Fix this by pulling out the user-defined handler function and + // adding it as listener. + if (typeof layer.onclick === 'function') { + + // Android browser on at least 3.2 requires a new reference to the function in layer.onclick + // - the old one won't work if passed to addEventListener directly. + oldOnClick = layer.onclick; + layer.addEventListener('click', function(event) { + oldOnClick(event); + }, false); + layer.onclick = null; + } + } + + /** + * Windows Phone 8.1 fakes user agent string to look like Android and iPhone. + * + * @type boolean + */ + var deviceIsWindowsPhone = navigator.userAgent.indexOf("Windows Phone") >= 0; + + /** + * Android requires exceptions. + * + * @type boolean + */ + var deviceIsAndroid = navigator.userAgent.indexOf('Android') > 0 && !deviceIsWindowsPhone; + + + /** + * iOS requires exceptions. + * + * @type boolean + */ + var deviceIsIOS = /iP(ad|hone|od)/.test(navigator.userAgent) && !deviceIsWindowsPhone; + + + /** + * iOS 4 requires an exception for select elements. + * + * @type boolean + */ + var deviceIsIOS4 = deviceIsIOS && (/OS 4_\d(_\d)?/).test(navigator.userAgent); + + + /** + * iOS 6.0-7.* requires the target element to be manually derived + * + * @type boolean + */ + var deviceIsIOSWithBadTarget = deviceIsIOS && (/OS [6-7]_\d/).test(navigator.userAgent); + + /** + * BlackBerry requires exceptions. + * + * @type boolean + */ + var deviceIsBlackBerry10 = navigator.userAgent.indexOf('BB10') > 0; + + /** + * Determine whether a given element requires a native click. + * + * @param {EventTarget|Element} target Target DOM element + * @returns {boolean} Returns true if the element needs a native click + */ + FastClick.prototype.needsClick = function(target) { + switch (target.nodeName.toLowerCase()) { + + // Don't send a synthetic click to disabled inputs (issue #62) + case 'button': + case 'select': + case 'textarea': + if (target.disabled) { + return true; + } + + break; + case 'input': + + // File inputs need real clicks on iOS 6 due to a browser bug (issue #68) + if ((deviceIsIOS && target.type === 'file') || target.disabled) { + return true; + } + + break; + case 'label': + case 'iframe': // iOS8 homescreen apps can prevent events bubbling into frames + case 'video': + return true; + } + + return (/\bneedsclick\b/).test(target.className); + }; + + + /** + * Determine whether a given element requires a call to focus to simulate click into element. + * + * @param {EventTarget|Element} target Target DOM element + * @returns {boolean} Returns true if the element requires a call to focus to simulate native click. + */ + FastClick.prototype.needsFocus = function(target) { + switch (target.nodeName.toLowerCase()) { + case 'textarea': + return true; + case 'select': + return !deviceIsAndroid; + case 'input': + switch (target.type) { + case 'button': + case 'checkbox': + case 'file': + case 'image': + case 'radio': + case 'submit': + return false; + } + + // No point in attempting to focus disabled inputs + return !target.disabled && !target.readOnly; + default: + return (/\bneedsfocus\b/).test(target.className); + } + }; + + + /** + * Send a click event to the specified element. + * + * @param {EventTarget|Element} targetElement + * @param {Event} event + */ + FastClick.prototype.sendClick = function(targetElement, event) { + var clickEvent, touch; + + // On some Android devices activeElement needs to be blurred otherwise the synthetic click will have no effect (#24) + if (document.activeElement && document.activeElement !== targetElement) { + document.activeElement.blur(); + } + + touch = event.changedTouches[0]; + + // Synthesise a click event, with an extra attribute so it can be tracked + clickEvent = document.createEvent('MouseEvents'); + clickEvent.initMouseEvent(this.determineEventType(targetElement), true, true, window, 1, touch.screenX, touch.screenY, touch.clientX, touch.clientY, false, false, false, false, 0, null); + clickEvent.forwardedTouchEvent = true; + targetElement.dispatchEvent(clickEvent); + }; + + FastClick.prototype.determineEventType = function(targetElement) { + + //Issue #159: Android Chrome Select Box does not open with a synthetic click event + if (deviceIsAndroid && targetElement.tagName.toLowerCase() === 'select') { + return 'mousedown'; + } + + return 'click'; + }; + + + /** + * @param {EventTarget|Element} targetElement + */ + FastClick.prototype.focus = function(targetElement) { + var length; + + // Issue #160: on iOS 7, some input elements (e.g. date datetime month) throw a vague TypeError on setSelectionRange. These elements don't have an integer value for the selectionStart and selectionEnd properties, but unfortunately that can't be used for detection because accessing the properties also throws a TypeError. Just check the type instead. Filed as Apple bug #15122724. + if (deviceIsIOS && targetElement.setSelectionRange && targetElement.type.indexOf('date') !== 0 && targetElement.type !== 'time' && targetElement.type !== 'month' && targetElement.type !== 'email') { + length = targetElement.value.length; + targetElement.setSelectionRange(length, length); + } else { + targetElement.focus(); + } + }; + + + /** + * Check whether the given target element is a child of a scrollable layer and if so, set a flag on it. + * + * @param {EventTarget|Element} targetElement + */ + FastClick.prototype.updateScrollParent = function(targetElement) { + var scrollParent, parentElement; + + scrollParent = targetElement.fastClickScrollParent; + + // Attempt to discover whether the target element is contained within a scrollable layer. Re-check if the + // target element was moved to another parent. + if (!scrollParent || !scrollParent.contains(targetElement)) { + parentElement = targetElement; + do { + if (parentElement.scrollHeight > parentElement.offsetHeight) { + scrollParent = parentElement; + targetElement.fastClickScrollParent = parentElement; + break; + } + + parentElement = parentElement.parentElement; + } while (parentElement); + } + + // Always update the scroll top tracker if possible. + if (scrollParent) { + scrollParent.fastClickLastScrollTop = scrollParent.scrollTop; + } + }; + + + /** + * @param {EventTarget} targetElement + * @returns {Element|EventTarget} + */ + FastClick.prototype.getTargetElementFromEventTarget = function(eventTarget) { + + // On some older browsers (notably Safari on iOS 4.1 - see issue #56) the event target may be a text node. + if (eventTarget.nodeType === Node.TEXT_NODE) { + return eventTarget.parentNode; + } + + return eventTarget; + }; + + + /** + * On touch start, record the position and scroll offset. + * + * @param {Event} event + * @returns {boolean} + */ + FastClick.prototype.onTouchStart = function(event) { + var targetElement, touch, selection; + + // Ignore multiple touches, otherwise pinch-to-zoom is prevented if both fingers are on the FastClick element (issue #111). + if (event.targetTouches.length > 1) { + return true; + } + + targetElement = this.getTargetElementFromEventTarget(event.target); + touch = event.targetTouches[0]; + + if (deviceIsIOS) { + + // Only trusted events will deselect text on iOS (issue #49) + selection = window.getSelection(); + if (selection.rangeCount && !selection.isCollapsed) { + return true; + } + + if (!deviceIsIOS4) { + + // Weird things happen on iOS when an alert or confirm dialog is opened from a click event callback (issue #23): + // when the user next taps anywhere else on the page, new touchstart and touchend events are dispatched + // with the same identifier as the touch event that previously triggered the click that triggered the alert. + // Sadly, there is an issue on iOS 4 that causes some normal touch events to have the same identifier as an + // immediately preceeding touch event (issue #52), so this fix is unavailable on that platform. + // Issue 120: touch.identifier is 0 when Chrome dev tools 'Emulate touch events' is set with an iOS device UA string, + // which causes all touch events to be ignored. As this block only applies to iOS, and iOS identifiers are always long, + // random integers, it's safe to to continue if the identifier is 0 here. + if (touch.identifier && touch.identifier === this.lastTouchIdentifier) { + event.preventDefault(); + return false; + } + + this.lastTouchIdentifier = touch.identifier; + + // If the target element is a child of a scrollable layer (using -webkit-overflow-scrolling: touch) and: + // 1) the user does a fling scroll on the scrollable layer + // 2) the user stops the fling scroll with another tap + // then the event.target of the last 'touchend' event will be the element that was under the user's finger + // when the fling scroll was started, causing FastClick to send a click event to that layer - unless a check + // is made to ensure that a parent layer was not scrolled before sending a synthetic click (issue #42). + this.updateScrollParent(targetElement); + } + } + + this.trackingClick = true; + this.trackingClickStart = event.timeStamp; + this.targetElement = targetElement; + + this.touchStartX = touch.pageX; + this.touchStartY = touch.pageY; + + // Prevent phantom clicks on fast double-tap (issue #36) + if ((event.timeStamp - this.lastClickTime) < this.tapDelay) { + event.preventDefault(); + } + + return true; + }; + + + /** + * Based on a touchmove event object, check whether the touch has moved past a boundary since it started. + * + * @param {Event} event + * @returns {boolean} + */ + FastClick.prototype.touchHasMoved = function(event) { + var touch = event.changedTouches[0], boundary = this.touchBoundary; + + if (Math.abs(touch.pageX - this.touchStartX) > boundary || Math.abs(touch.pageY - this.touchStartY) > boundary) { + return true; + } + + return false; + }; + + + /** + * Update the last position. + * + * @param {Event} event + * @returns {boolean} + */ + FastClick.prototype.onTouchMove = function(event) { + if (!this.trackingClick) { + return true; + } + + // If the touch has moved, cancel the click tracking + if (this.targetElement !== this.getTargetElementFromEventTarget(event.target) || this.touchHasMoved(event)) { + this.trackingClick = false; + this.targetElement = null; + } + + return true; + }; + + + /** + * Attempt to find the labelled control for the given label element. + * + * @param {EventTarget|HTMLLabelElement} labelElement + * @returns {Element|null} + */ + FastClick.prototype.findControl = function(labelElement) { + + // Fast path for newer browsers supporting the HTML5 control attribute + if (labelElement.control !== undefined) { + return labelElement.control; + } + + // All browsers under test that support touch events also support the HTML5 htmlFor attribute + if (labelElement.htmlFor) { + return document.getElementById(labelElement.htmlFor); + } + + // If no for attribute exists, attempt to retrieve the first labellable descendant element + // the list of which is defined here: http://www.w3.org/TR/html5/forms.html#category-label + return labelElement.querySelector('button, input:not([type=hidden]), keygen, meter, output, progress, select, textarea'); + }; + + + /** + * On touch end, determine whether to send a click event at once. + * + * @param {Event} event + * @returns {boolean} + */ + FastClick.prototype.onTouchEnd = function(event) { + var forElement, trackingClickStart, targetTagName, scrollParent, touch, targetElement = this.targetElement; + + if (!this.trackingClick) { + return true; + } + + // Prevent phantom clicks on fast double-tap (issue #36) + if ((event.timeStamp - this.lastClickTime) < this.tapDelay) { + this.cancelNextClick = true; + return true; + } + + if ((event.timeStamp - this.trackingClickStart) > this.tapTimeout) { + return true; + } + + // Reset to prevent wrong click cancel on input (issue #156). + this.cancelNextClick = false; + + this.lastClickTime = event.timeStamp; + + trackingClickStart = this.trackingClickStart; + this.trackingClick = false; + this.trackingClickStart = 0; + + // On some iOS devices, the targetElement supplied with the event is invalid if the layer + // is performing a transition or scroll, and has to be re-detected manually. Note that + // for this to function correctly, it must be called *after* the event target is checked! + // See issue #57; also filed as rdar://13048589 . + if (deviceIsIOSWithBadTarget) { + touch = event.changedTouches[0]; + + // In certain cases arguments of elementFromPoint can be negative, so prevent setting targetElement to null + targetElement = document.elementFromPoint(touch.pageX - window.pageXOffset, touch.pageY - window.pageYOffset) || targetElement; + targetElement.fastClickScrollParent = this.targetElement.fastClickScrollParent; + } + + targetTagName = targetElement.tagName.toLowerCase(); + if (targetTagName === 'label') { + forElement = this.findControl(targetElement); + if (forElement) { + this.focus(targetElement); + if (deviceIsAndroid) { + return false; + } + + targetElement = forElement; + } + } else if (this.needsFocus(targetElement)) { + + // Case 1: If the touch started a while ago (best guess is 100ms based on tests for issue #36) then focus will be triggered anyway. Return early and unset the target element reference so that the subsequent click will be allowed through. + // Case 2: Without this exception for input elements tapped when the document is contained in an iframe, then any inputted text won't be visible even though the value attribute is updated as the user types (issue #37). + if ((event.timeStamp - trackingClickStart) > 100 || (deviceIsIOS && window.top !== window && targetTagName === 'input')) { + this.targetElement = null; + return false; + } + + this.focus(targetElement); + this.sendClick(targetElement, event); + + // Select elements need the event to go through on iOS 4, otherwise the selector menu won't open. + // Also this breaks opening selects when VoiceOver is active on iOS6, iOS7 (and possibly others) + if (!deviceIsIOS || targetTagName !== 'select') { + this.targetElement = null; + event.preventDefault(); + } + + return false; + } + + if (deviceIsIOS && !deviceIsIOS4) { + + // Don't send a synthetic click event if the target element is contained within a parent layer that was scrolled + // and this tap is being used to stop the scrolling (usually initiated by a fling - issue #42). + scrollParent = targetElement.fastClickScrollParent; + if (scrollParent && scrollParent.fastClickLastScrollTop !== scrollParent.scrollTop) { + return true; + } + } + + // Prevent the actual click from going though - unless the target node is marked as requiring + // real clicks or if it is in the allowlist in which case only non-programmatic clicks are permitted. + if (!this.needsClick(targetElement)) { + event.preventDefault(); + this.sendClick(targetElement, event); + } + + return false; + }; + + + /** + * On touch cancel, stop tracking the click. + * + * @returns {void} + */ + FastClick.prototype.onTouchCancel = function() { + this.trackingClick = false; + this.targetElement = null; + }; + + + /** + * Determine mouse events which should be permitted. + * + * @param {Event} event + * @returns {boolean} + */ + FastClick.prototype.onMouse = function(event) { + + // If a target element was never set (because a touch event was never fired) allow the event + if (!this.targetElement) { + return true; + } + + if (event.forwardedTouchEvent) { + return true; + } + + // Programmatically generated events targeting a specific element should be permitted + if (!event.cancelable) { + return true; + } + + // Derive and check the target element to see whether the mouse event needs to be permitted; + // unless explicitly enabled, prevent non-touch click events from triggering actions, + // to prevent ghost/doubleclicks. + if (!this.needsClick(this.targetElement) || this.cancelNextClick) { + + // Prevent any user-added listeners declared on FastClick element from being fired. + if (event.stopImmediatePropagation) { + event.stopImmediatePropagation(); + } else { + + // Part of the hack for browsers that don't support Event#stopImmediatePropagation (e.g. Android 2) + event.propagationStopped = true; + } + + // Cancel the event + event.stopPropagation(); + event.preventDefault(); + + return false; + } + + // If the mouse event is permitted, return true for the action to go through. + return true; + }; + + + /** + * On actual clicks, determine whether this is a touch-generated click, a click action occurring + * naturally after a delay after a touch (which needs to be cancelled to avoid duplication), or + * an actual click which should be permitted. + * + * @param {Event} event + * @returns {boolean} + */ + FastClick.prototype.onClick = function(event) { + var permitted; + + // It's possible for another FastClick-like library delivered with third-party code to fire a click event before FastClick does (issue #44). In that case, set the click-tracking flag back to false and return early. This will cause onTouchEnd to return early. + if (this.trackingClick) { + this.targetElement = null; + this.trackingClick = false; + return true; + } + + // Very odd behaviour on iOS (issue #18): if a submit element is present inside a form and the user hits enter in the iOS simulator or clicks the Go button on the pop-up OS keyboard the a kind of 'fake' click event will be triggered with the submit-type input element as the target. + if (event.target.type === 'submit' && event.detail === 0) { + return true; + } + + permitted = this.onMouse(event); + + // Only unset targetElement if the click is not permitted. This will ensure that the check for !targetElement in onMouse fails and the browser's click doesn't go through. + if (!permitted) { + this.targetElement = null; + } + + // If clicks are permitted, return true for the action to go through. + return permitted; + }; + + + /** + * Remove all FastClick's event listeners. + * + * @returns {void} + */ + FastClick.prototype.destroy = function() { + var layer = this.layer; + + if (deviceIsAndroid) { + layer.removeEventListener('mouseover', this.onMouse, true); + layer.removeEventListener('mousedown', this.onMouse, true); + layer.removeEventListener('mouseup', this.onMouse, true); + } + + layer.removeEventListener('click', this.onClick, true); + layer.removeEventListener('touchstart', this.onTouchStart, false); + layer.removeEventListener('touchmove', this.onTouchMove, false); + layer.removeEventListener('touchend', this.onTouchEnd, false); + layer.removeEventListener('touchcancel', this.onTouchCancel, false); + }; + + + /** + * Check whether FastClick is needed. + * + * @param {Element} layer The layer to listen on + */ + FastClick.notNeeded = function(layer) { + var metaViewport; + var chromeVersion; + var blackberryVersion; + var firefoxVersion; + + // Devices that don't support touch don't need FastClick + if (typeof window.ontouchstart === 'undefined') { + return true; + } + + // Chrome version - zero for other browsers + chromeVersion = +(/Chrome\/([0-9]+)/.exec(navigator.userAgent) || [,0])[1]; + + if (chromeVersion) { + + if (deviceIsAndroid) { + metaViewport = document.querySelector('meta[name=viewport]'); + + if (metaViewport) { + // Chrome on Android with user-scalable="no" doesn't need FastClick (issue #89) + if (metaViewport.content.indexOf('user-scalable=no') !== -1) { + return true; + } + // Chrome 32 and above with width=device-width or less don't need FastClick + if (chromeVersion > 31 && document.documentElement.scrollWidth <= window.outerWidth) { + return true; + } + } + + // Chrome desktop doesn't need FastClick (issue #15) + } else { + return true; + } + } + + if (deviceIsBlackBerry10) { + blackberryVersion = navigator.userAgent.match(/Version\/([0-9]*)\.([0-9]*)/); + + // BlackBerry 10.3+ does not require Fastclick library. + // https://github.com/ftlabs/fastclick/issues/251 + if (blackberryVersion[1] >= 10 && blackberryVersion[2] >= 3) { + metaViewport = document.querySelector('meta[name=viewport]'); + + if (metaViewport) { + // user-scalable=no eliminates click delay. + if (metaViewport.content.indexOf('user-scalable=no') !== -1) { + return true; + } + // width=device-width (or less than device-width) eliminates click delay. + if (document.documentElement.scrollWidth <= window.outerWidth) { + return true; + } + } + } + } + + // IE10 with -ms-touch-action: none or manipulation, which disables double-tap-to-zoom (issue #97) + if (layer.style.msTouchAction === 'none' || layer.style.touchAction === 'manipulation') { + return true; + } + + // Firefox version - zero for other browsers + firefoxVersion = +(/Firefox\/([0-9]+)/.exec(navigator.userAgent) || [,0])[1]; + + if (firefoxVersion >= 27) { + // Firefox 27+ does not have tap delay if the content is not zoomable - https://bugzilla.mozilla.org/show_bug.cgi?id=922896 + + metaViewport = document.querySelector('meta[name=viewport]'); + if (metaViewport && (metaViewport.content.indexOf('user-scalable=no') !== -1 || document.documentElement.scrollWidth <= window.outerWidth)) { + return true; + } + } + + // IE11: prefixed -ms-touch-action is no longer supported and it's recomended to use non-prefixed version + // http://msdn.microsoft.com/en-us/library/windows/apps/Hh767313.aspx + if (layer.style.touchAction === 'none' || layer.style.touchAction === 'manipulation') { + return true; + } + + return false; + }; + + + /** + * Factory method for creating a FastClick object + * + * @param {Element} layer The layer to listen on + * @param {Object} [options={}] The options to override the defaults + */ + FastClick.attach = function(layer, options) { + return new FastClick(layer, options); + }; + + + if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) { + + // AMD. Register as an anonymous module. + define(function() { + return FastClick; + }); + } else if (typeof module !== 'undefined' && module.exports) { + module.exports = FastClick.attach; + module.exports.FastClick = FastClick; + } else { + window.FastClick = FastClick; + } +}()); diff --git a/7-7/src/index.js b/7-7/src/index.js new file mode 100644 index 0000000..8ca35e8 --- /dev/null +++ b/7-7/src/index.js @@ -0,0 +1,145 @@ +$(function() { + const clientWith = document.body.clientWidth; + const leftBorder = 50; + const rightBorder = clientWith - (50+100); + let add = 40; + const speed = 40; + setInterval(function() { + let left = $('.box-tools').css('left'); + left = parseInt(left); + if(left <= leftBorder) { + add = speed; + } + if(left >= rightBorder) { + add = -speed; + } + $('.box-tools').css({ + left: left + add + 'px' + }); + }, 150); + // https://github.com/kylefox/jquery-modal + // $('#ex1').modal(); + const clientHeight = document.body.clientHeight; + let bottom = 0; + let boxCount = 1; + let version = 0; + let isAnimate = false; + let lastLeft = 120; + const colors = ['#9ACBDE', '#FDF7EB', '#FFE3B1', '#AAEBCB', '#34CFC7', '#dec650']; + const imgs = ['https://s3.qiufengh.com/2019-7-7/301565001546_.pic.jpg', 'https://s3.qiufengh.com/2019-7-7/281565001543_.pic.jpg', 'https://s3.qiufengh.com/2019-7-7/261565001541_.pic.jpg','https://s3.qiufengh.com/2019-7-7/251565001495_.pic.jpg', 'https://s3.qiufengh.com/2019-7-7/241565001494_.pic.jpg','https://s3.qiufengh.com/2019-7-7/201565001490_.pic.jpg']; + const diff = 60; + const total = 30; + let lastColor = colors[Math.floor(Math.random()*6)]; + let lastImgs = imgs[Math.floor(Math.random()*6)]; + + $('.box-tools .box-item').css({ + 'background-color': lastColor, + 'background-image': 'url('+lastImgs+')', + }) + + $('#ex2').modal(); + + setTimeout(function() { + $.modal.close(); + }, 1500); + + $('.container').click(function() { + if(!isAnimate) { + isAnimate = true; + const left = parseInt($('.box-tools').css('left')); + if(lastLeft - left > diff || lastLeft - left < -diff) { + $('#ex4').modal(); + setTimeout(function() { + location.reload(); + }, 1000); + } + lastLeft = left; + const boxItem = $('
'); + boxItem.css({ + left: left + 'px', + top: '50px', + 'background-color': lastColor, + 'background-image': 'url('+lastImgs+')', + }) + let bgColor = colors[Math.floor(Math.random()*5)]; + let nowImg = imgs[Math.floor(Math.random()*6)]; + while(bgColor === lastColor) { + bgColor = colors[Math.floor(Math.random()*5)]; + } + while(lastImgs === nowImg) { + nowImg = imgs[Math.floor(Math.random()*6)];; + } + $('.box-tools .box-item').css({ + 'background-color': bgColor, + 'background-image': 'url('+nowImg+')', + }) + lastColor = bgColor; + lastImgs = nowImg; + + $('.bottom').append(boxItem); + boxItem.animate({ + top: clientHeight - (boxCount + 1)* 100 + 'px' + }); + boxCount ++; + if(boxCount === 5) { + version++; + boxCount = 1; + $('.modal .version').text(version + 1); + $('.score-wrapper .score').text(version * 4 + boxCount); + if(version * 4 + boxCount >= total) { + $('#ex3').modal({ + showClose: false, + closeExisting: false + }); + setTimeout(function() { + location.reload(); + }, 5 *1000); + return; + } + setTimeout(function() { + $('.bottom').css({ + 'transform':'translateY(400px)', + }); + $('#ex1').modal({ + showClose: false, + closeExisting: false + }); + setTimeout(function() { + $.modal.close(); + const lastChild = $('.bottom').children(".box-item:last-child"); + lastChild.css({ + bottom: '0px', + top: 'auto' + }) + $('.bottom').empty(); + $('.bottom').addClass('bottom-none'); + $('.bottom').css({ + 'transform':'translateY(0)', + }); + $('.bottom').append(lastChild); + setTimeout(function() { + $('.bottom').removeClass('bottom-none') + isAnimate = false; + }, 100) + }, 1000); + }, 1000); + } else { + if(version * 4 + boxCount >= total) { + $('#ex3').modal({ + showClose: false, + closeExisting: false + }); + setTimeout(function() { + location.reload(); + }, 5 *1000); + return; + } + $('.score-wrapper .score').text(version * 4 + boxCount); + setTimeout(function() { + isAnimate = false; + }, 1000); + } + + } + }) +}); \ No newline at end of file diff --git a/7-7/styles/index.css b/7-7/styles/index.css new file mode 100644 index 0000000..f6416b8 --- /dev/null +++ b/7-7/styles/index.css @@ -0,0 +1,77 @@ +.container { + height: 100vh; + position: relative; +} +.top { + width: 100vw; + height: 300px; + display: flex; + justify-content: center; +} +.box-tools { + display: flex; + justify-content: center; + flex-direction: column; + align-items: center; + width: 100px; + position: absolute; + transition: left 0.5s; +} + +.box-rope { + width: 10px; + height: 50px; + background: #726b6b; +} + +.box-item { + position: absolute; + width: 100px; + height: 100px; + background: yellow; + background-size: 100%; + background-position: 50%; + background-repeat: no-repeat; + +} + +.bottom { + width: 100vw; + height: 100vh; + position: absolute; + left: 0; + top: 0; + display: flex; + justify-content: center; + transition: all 0.25s; +} + +.bottom.bottom-none { + transition: none; +} + +div.blocker { + background-color: rgba(0, 0, 0, 0.38); +} + +div.modal{ + -webkit-box-shadow: 0 0 10px #7a7a7a; + -moz-box-shadow: 0 0 10px #7a7a7a; + -o-box-shadow: 0 0 10px #7a7a7a; + -ms-box-shadow: 0 0 10px #7a7a7a; + box-shadow: 0 0 10px #7a7a7a; + text-align: center; +} + +.score-wrapper { + width: 80px; + height: 50px; + position: fixed; + left: 0; + top: 0; + display: flex; + justify-content: center; + align-items: center; + border-radius: 10px; + border: 1px solid #7a7a7a; +} \ No newline at end of file diff --git a/7-7/styles/reset.css b/7-7/styles/reset.css new file mode 100644 index 0000000..af94440 --- /dev/null +++ b/7-7/styles/reset.css @@ -0,0 +1,48 @@ +/* http://meyerweb.com/eric/tools/css/reset/ + v2.0 | 20110126 + License: none (public domain) +*/ + +html, body, div, span, applet, object, iframe, +h1, h2, h3, h4, h5, h6, p, blockquote, pre, +a, abbr, acronym, address, big, cite, code, +del, dfn, em, img, ins, kbd, q, s, samp, +small, strike, strong, sub, sup, tt, var, +b, u, i, center, +dl, dt, dd, ol, ul, li, +fieldset, form, label, legend, +table, caption, tbody, tfoot, thead, tr, th, td, +article, aside, canvas, details, embed, +figure, figcaption, footer, header, hgroup, +menu, nav, output, ruby, section, summary, +time, mark, audio, video { + margin: 0; + padding: 0; + border: 0; + font-size: 100%; + font: inherit; + vertical-align: baseline; +} +/* HTML5 display-role reset for older browsers */ +article, aside, details, figcaption, figure, +footer, header, hgroup, menu, nav, section { + display: block; +} +body { + line-height: 1; +} +ol, ul { + list-style: none; +} +blockquote, q { + quotes: none; +} +blockquote:before, blockquote:after, +q:before, q:after { + content: ''; + content: none; +} +table { + border-collapse: collapse; + border-spacing: 0; +} \ No newline at end of file From 33b4c962501ab7834be81feb951f80250b106517 Mon Sep 17 00:00:00 2001 From: huayifeng <461249104@qq.com> Date: Tue, 6 Aug 2019 00:48:36 +0800 Subject: [PATCH 2/8] fix: init --- 7-7/bg.gif | Bin 0 -> 442687 bytes 7-7/index.html | 4 ++-- 7-7/src/index.js | 3 ++- 7-7/styles/index.css | 9 ++++++--- 4 files changed, 10 insertions(+), 6 deletions(-) create mode 100644 7-7/bg.gif diff --git a/7-7/bg.gif b/7-7/bg.gif new file mode 100644 index 0000000000000000000000000000000000000000..70f33be41a0257aa72b6e924ec8175ef7ccacd0b GIT binary patch literal 442687 zcmaHRWmH?+)^=M8v_&gOTc8xz;BLiTin|97?k+`&7mB+DcMlNUB@}me3GR}QbM8I& zz2h72c=ID!d*zwWlr`7fd#^FYCB-=8O>c@_UN?Hr~&?- zxyqSz5-l`$tQzFZv0_Y=5h)Ok@1L(&UtEX)`@^=jrosmI&+S?bfZ}35TBbLz?sAu| zj2ey8#+_ndpnzVxiKDA9=yce`xmM?yMWg-hu%r|0%Di{qqIbJ_`{L;CF%MP?**c(3 z2IVjBJG9sZj-Lhgf3>6N2krqiLkJ>^%$ursrB=#?X$Ves`&o7pp^0L*pcnB z`A+$AQ?f)`?o4sxYW0DwMz_xG;)&(Vk>!eYcmQOS%toBI?l`Ky*sctAbhTNrer?`+ zcK2}R*tvZ+xvA2*|K|uEKfnG1Iu9OS23T@U`2Luv5Q^^}nHkX7fi2dQz&zWNs~0-; zYn{ecM*U%D;>mi4Ydg)WC3b_ywF`UZ306hR%ScE_S63x&ov^rRxLCf^4g5TFX3MD1 zVE^hWV(KVq9Hdt27C(O!+TGJJ+gRPHY?z{azH=xJIlH_&0S%rd)=$o#9=XBbKgJJ^ zHiRNOZ9KaTbEhXgbG$CkFO{HYE=9)Y$G#7jcPV3wKL(ANG92zMud@DZ7EO=1!LCdz zZR+|K6WcU(I`@z6E`YuJ((dBlp+{Y7M;e{`Zm{jh>Gh1kR=dIN&_N*R>3e+L3$~p! zeiSsmt^(bcg&xIBuR9HHH!i12LXLpFXZ9^k2EF?w3x7ffK?a@s$@9xzu(R^zzxHfk4Dhulw|FN5ViHKB5Vu6SoM26Kq=pdScLdCJQ+V9W;*|G&kry z6RbN@fgVM|%p=Fw)YM8sY;Md)qQ)l6C~GSWG&7fQw+AY@%PAYVTN-g0lL+t=^SW}of^0!RM+0J4 zkd?Iqw<{lsfw7Gtko#%;*E9nO@!t?fOFk08zy2WpOQ*1nJ&>3Uz)o+(#L7m@!3AJq zXJO^yq9bNzWa4CCTwGiXjLZzo%=AwPdIvXaM*~-SYX{PQ7({>$M)u~mj^;Mj#D6gw z7}_{F@{v4Q`Y#tiwuWw%Np2Q0-sh~+1?5G7so&IYCuCJM+3*drT9qx3N;(2t+~-( z;rJUSE6Xka6b^H111k|5Bd5Q}B}Mp1o(KTO=EmH{KttoFC-Ab zahMo5SvivMZ$<=cra-q_er+X|ZB;dC z{P19ZZ+B;VYjb0LZFOaNX>nnGZgysRYI0(H?9V7{WO!(BpuexTr@O1OqrI&a+S1$v zX>6#ktF5W7s;nq4D=jH5DlEtc=jG;PXJuxjr=_MOCnYAt$Ni3t`4t@%84(^9`ZFXr zDDX#szn`ys-mo< z_+3F>PF6-*N>V~xOjJZzNbs8gKOZj-Hy0-dI~ywtGZP~NfS!()hMJ0!f}D($9bbZ-klk3^u;$VIGK!Yz5n)S?J`D$m# zds^M0hLg4SXj0*_^@gg=!9*6zr6I1I4OnIqE?fpuvpZg(R1E$Isol@~tu~l0+f;Wr zAFQ{(G;GTXUv3LP`y$s&akSp|8dqEOnYE^#RSqZ=v zOT@)hSFTj&vkSV-IUpS1VK

)$T1C{usSf;C3HA@FX(+<>s~%O}9M;ZkQGzNa#>B1a zR)Pl8YkoRQFPE)>i_4rhRL#oj_j_oMoDS`80q$p8#Yf(U6s|{ZQ*hejHq)u%t=6UI zlE)qBE~*THq$G5N5DYb|%2ccrno7s#dIu-HR(vw6B&$|*X&uD*C8wGsN+G%Zeczi; zhgjt&s}g)VJQwQOt`4ddIZSgZN1C$k&;CdpIkE(zzAsG~k`$-EkdpTJSUFyH!h12L z9j5G*O>T6U{6{ANgX4ka6fdZ7vOQwj^u?xs2I4@LZW1FCz}?C+tWYTr7R? z_?_5wDI%}eLODjR*C!Q7qc^@NSl?_Us-@p-CcBK>Y^Man8+S6Jtlf7DV#{uKldk-u zs6Mn1@fGB-bZAae0tFOG9jvz>|yQ3~tz5C-H%BcI(4i2B@vjJh){n>=L-oyEn zY1G5zn2S%#)m#AV;c6pT@9}yoKkD&zt=3(MJ^A9F8Hfjx^ra!v5j$zBFmxbE#Qo4sf@6YA*WGu8&K7R)6%ErJU^8f)PSGFyO-plu2qQA z-c}{Fov$$jew1Ovbx78Cu=So7zd&A%VenhAGhB_zj|5%;* zimyNjIawhH@Y`!8-0Ycwqny2FO*XzPJ^cH;anQA|)?Vdcg5W+lYO|(E+If9<6fEqj9gtygcF4Id z$howb^Fm4!n(SPjx-Uv_oj5Z!_C88EZx0zoTEz`9_rAdc9E9h>qPrAy}XZ=(V}+CBw;bWq$qYVqW6u?$qkTsuTtL90iD=SoK4gt)@t-a zn;0G%o%$mciA@A1%uzRkrhsa79xLNi`WwWslqxfSI=cQ8$yE0u2&9h|zQQxW+2^}d znd!&7^A(SK^oLwc7EZ*DDD3yJ(}h}UlFV-YW5S3N3WK4+;I=kq`~WTcE+%ftmSX!Jyo?5B~qGBZ-fhYg&g*?3oeI)4M18QSW$KM``5SqZ~t zCZzMT1J-pl8GMJyZw}{XM(XP7he4qC3ic~g+6}$*aQoQ1g)KP_$aE>(x%zGq9(mPJ z*lzj$>U($N0>JMrj};AGe1+S~jeQjUcK`SHD=6}uPvJZcV!2<%jN6bN~)0kyKz`0D#jKor-IDc~%5oM3fvq;bRrfa!Xt zz4Q&yI2s^#o>lGw zR>eLXn8@?YO_yEPDS2+&M)A~z$+_fAKfs+~O%R5(b4mxi6}KhF2`tM&+B>awEBWSm zyz=WFmdBIGDBcZ9hMNJU$J2P1<^_({GpzN8Gj}Y$9dRr;be^ZJqpUkr?Z`3z=@=s* z%{?6>T5)Ke|EwOy2X`sITRMBZf@1L>2Q%1>d~TgD!frX0gxznp&i8|lE>vy^J$yO5 zj_J}Z07q2!@b`$jB`g8NbuYu?X)NM?%jV`}y8Q5wv-RfKr*)^$;}&}LC++)@!(}!4 z@idb6?!K@0i$rfEb>Ek+z9@;luNr*cgg6{r`3l7ht;@-)g^{CG=xEB!kVwcp!nf!oZ%hn;a#rbJ&ECc z4dDYb;X~KqBlr=coDpN{5fiQvQ;88X4H0uQ5esHNv36c?CH~xK_<5jen9*l>wPpFm zRi_jWXreCd(-U#N6LF~?b?q8;n;3Q95cN0{_3S3<#mDHET+t{R(XZU1`(H(36;N!c zM`CkX)2;m6RoD5fF5ZTsZoH!tNUo0(9Zg&q{go?*L?edGEruc~hN>}!W;TZICWgL0 z8Y=`1OC$E}&GV=A561bZPjzVnzm8OJ2`NX471@mu)A%jn_FF3Hw@l-2x!K}l1}t`oca|i5yaE>Lh)mqnOnR?QoL1Ty!C9n?M=M>O@wm4 zH=j6$Yf^%HV}j>wg7-~=@5e-cuEZa&6Fuu=KfO}C!wXd-_y6kj+zLM-hAZJWS5mx2 zQleW@a#B*NWSG;9Z=6zMHdk`4Ml$#&Vc$3LkBiDYYP?&#jfA>%8dpk+MoNuaN?lS) zLt_f0KP;o)o6I4(gDbU5GF2i!nLynXx6pKc(Y4h^^dANQ>j-erKnbm{b|QH>8Bqv&bcx!XXBUqz5CVD?`JbQ z+|qY;BS&8QmlpmIcFTCBneiq$6CIL?IhQ$*m~oI0{HT$IOOyC)E>7pQ{_(4*h?~@z zS|se-Ofv3l3e9XP_v|L>tOE`VyxVNXo=Ip1bT6-ADj<~-|72i}5xKjr&>D)_-&Ajy@# zkC*NODab*%rMhv0FSjhKDg7T4z=7_CL7|1o$%UzV5g`z7*8YNQ?!>~MsfLi`!`Ht{ zeoE_17M4K@D{hObJ{6Z<7w*?*2ojPvnZ}F zDjq3H(3~xnp39#YFh4SmA4o2lOD^ZcDh#i$1v7Bs%}Ps`H7v^(#k` zIHq}X!d-rez?3Y3(JS4|af<}1+eDlk7+ zV)InK)2jU7QHh&UiQiQDX}*%+u9E0;6){g0AzIn~cJ_Kvu~4Gl&RiAUUDZHg>JFr8 z@F%z(fnr3KQccoS%{^budsof>x#k;BjgVH2h)0cBN{vKQjnsUN%;!o94^Mz^6*X-jp{{krc>-dP&8VNyDP zlzN8!DyF75jg(s48~4&eoz;uFpwIOo9u1)>4dG1LRkfM1=$sOdKWn)50qf023yGN5pQ>`XX^=F#G zo1UPG&&_2#%^h0JT^`LnDb0ON&G$4-y}f9O(oGVYWjy_jpXVC4_kQ|Im)7PtFAX-Y zAnsb$K0`Nnpj%qd+r8#qwfr%U+`^wt$Hh%kDXC0h`nk@~r_y%Q)OtJLdVkmYs8zYw z1U(GPP3w!B^=Qe5G!Z>>{UM6}jG+BFUHb>#c3kateDr#x`)1?==t)>pdP)=Pe3O%^ z^mTMQm1jFmY6o3&2VkM&RZ}~`LOX+0O9p3a3+|6I9(lXtGKTw3M)WQrf-Vu>E-@K& zX5LO#t1QGtJ4tgKb4uGeTDSaGr>JMQcxtzLbGPO~w@^x#RCCuO*RS1>PKb21rZk4r zO1ITexAj7g?R}5^Lb*OckD+$@`F59YSc~Ui+t-8VI=%@y`rUTgeGZ;|L8*Nq2v4Y! zRj&(gx>IIL22VfZV0|WSe}ZR|Q)WV7R$qE^Uk1TIChtJed|%{!UpJSjdrDJ+On);^ zf2n8x^=N{n%s?I8K!fKXBz5qG)j$twOM!O!;fKK(?f#zB{@&&)6vjdCS>)#C!O{Dn zF@oW`gTejJE$!N=RjeKT;r$B>!(Jljej4}_yu(}CBRifWwg)d}+eY9EBggk6rv$Kb zUf88J?AjA{n+ltKHZ)6@-nmfaMmvh%U-fcW93^dZjW;nOb7c2^6qE1|_Cw2kGYnVf z55Cu*PiZixJ6PxIpmKt-iu+-b!{`0P$@{E--nER;ERNC1Hhv}?|HwDaj369$+5OY` zvA?8w+`W06Xay@zW02u+OoVSjOlN{mYn-)ZLTYj1*mIoID_N)Q1)t8O$KVS;t7I|1 z3Gu~A?T1O-#R@sTDH)xqPxNKq`BG&|hR6%r#y9F z4armBLQUSZq2lneu2Hmgu0H3M8P~;`aL|Mo;Zr_M|3aGSm_?RDY3*ySzY<5+kWFtH z9gXChi;|rKd$q^X&lU|&gj&pMmJUFrx+mk%Lv*sVbmkho<{)YFR?TzJw7HLmurm6| z>~E9!KS%q9#aU?IWISX?eCul>Tx_OaoY1Lj^;&H6f?;wkbj~8%AvOveyI$Ba3hIn5 zh|>s8rY()PEbV#K%{(m462g=Q7thlYMi!P1(w47VmPOE(9|@NM-?A=bmz~;{QOcHI zd9R?~Eu&*D`0%ZiMJ&DMUwtE2XZNkgQ&~}S%hZc(2?yGZLA2&Uzkm&&gQcN&`L5BV zuhBu*0849(k88|C>#Y3i?7Him-s{}y>%7o){-yPAkLyB28zTH0V!9g=-WyWs8#2%h zxup#S{`L3$nwZ*~s_-_KjpuaF+U1uvzdvs35^d@8ZyD-teFLnS=}t92nl={w=joyc_bXGFW^ z0GQe0)>}AMMEY(NbT@fvH}!EhooFvJazj~mCjj$zfX8MarjZt4uZ(}MoM>NX;V zAD}QBPqbPE-LF{MZ+_f|5*@U`H;c)41Pk~2mQvLtH&J|dIvx)?F%K)O_a`E^$kO-C zz1GHv4i}(@OG}3jv^v;nBR(!sEj95CnAUgT@uyP$a9(Zz$nQ?;Odh!VY zcW}&M*MiSm9)sl?$_tMdyEh48Cv@dI?+~Z=3v)P#FOyn}r|hk#oIYpVunnYgII;~K zCF*n^a9-Mf%;R&;1>2Z}p2v=Cu^jzj%Q%-1xKPx)pkJ2jc{)J|IsW|dJdo(L2YO5+ ze_?EML5F!}mI3>KI7jgIVc%ccez~$2xN_9Ha`w4$&A4)Jz4BbX@*K-l zBOLKqzT77K<)(M!B0v2>jp#1g=kx{(yXz$;nfmC8;E&fh0OOg_RpF4gu7iw{SXEA=8}L z`JO8o2LR4Z>?#!~xM(*p*3wKCD`V*AaZg%ImFu-TZ_>o?2bLO7rngv3milpKXOHA* zO~ZBks4j{&nx<{^+T1lvN^miE47z^eFqqs|4=ObOB9{ki&z=H@UTY+F54h3K*Jubh zEYeKv&s6|e6AU=;bZAA8*M+HRtfOc#CpSe!T@T)yB_80%>tmWs&Rre{X?Lz3@W z-+-EsG^{GQ$*NQ7#Q`qoW9(>w9~@+^+`lSHvyLmDRZ*AI{en!&ZH$PHt2_J>d9Kto zUhFh=epbeSbZ9>stG@S3M&vyPBC=E9v(x$a(6t!`dCsQwC@CrN_p<$5s~ec~62dA2 z$coZz7s|>?Do!e@T22=#>PE6EaklPRJ*wI^lWc0bE*G_G`aU@9>W0B=b?U}ZD(o62 z2{?6O+#+$#niBI}tOI+OtV~VvugQi7WTunHiar*yU47LUS8>sCo|ml`GEIr&&~@Lg zt=IKDnpB$xeB!#&^A%4003%0ZZx{4%OE-?fq(?VS=euk)&GhkR*Gvv$*R0yc zcRrirz@cc^`~v}g5@Pd92);Bzi1r##KX+^N}{<4eRI0)@5jl3a;-3H!G`h6Nx)?4G%8~4r&dVI=`OX5d5j%Htry0VmVtYJ`pl93$cJ&S%y;^&(->`QvFotUSWJxjp}n z`}JzCx5sT`xsQ?9;&kgDrwJcIuSuEiXUsxj;phrzNMs6rsM?v&d2QQJ-HH9*KJZE_3kFeuyzM!bDD+6PsC&_Y1+evh ztGt55RnUoHs1U+?Z-DiFr}N8gbnvGShNylL=vq!$cns(-YW7yJ=+@S)n3W@6w}kNM zo`(b)S$+K&Fv+lL_dNn56e(0_rj6Vl`=?+oDd9S&2odHE;G%b0{%)=gY7Suw8A z7)ZQoCYbrP3R7)ijUuH34R1v;p>bmq;593)|EQSQPPWAup&?^Tq?FWeyu}hn)KDXqytxz7`Y&J479^Qt~aj z!Q9qjqX@dhSG+HT%x*{{W`2jTq_`;rP<+TjQ!x|%s3`-JRmz??NMn2L{yoRlKK|LE zf5qcRalYF>ey_S#BqrTN$e~KPL<;6FwUWnT%g*z}tqO@Xio{<_RocSlCeciHqcja! zzhaW_35U5W=TP7j8q|!6q)GkxqoG`&L?}V|z$9(s{2_LdHD1+86y2?dHCNKuoad~d zo$PWn&ySA!-6FT32l@eXp`OKV#Q%>xrni^xTS|WRc2Lqt zo1c%=3R9>#$oXqD@ncXWwaR3b2f6VarC;) zRD0Nctgd4`_f#f3iY?6mdH<|$1Bc|-=8icgybZ}tU+@QcpZ{S0OqF|CLD(6tnKl~t zw0NmamY3I#?%_pXm`ROm#q|#6`0ez>HB%v>m3~U{?8tCromsEs;Y8g<00uuBQMZSm zp{?M84gK2NpKncYJnpzw+(5#Cpk*6{UrU z8o~WVWPi2haSU4X&L&%{{h44qY?tot(!E2~(S^@o7q-p!$~o4Qom94t6^f-%Id3u%XDQ56@~aK#6~Sq}%C zww~Rc{F?Zs-cBW^I{RAN?$a%gP8GpA2S$`0vn}a{Wn$cimTDgJvyaa8y@YUw1dqjC zZxa=-1Fev8mU-4#It=_i?XCVs#g!=f1G4d)2u80G~%dt=r{) z9Jf$HkHT87xXE0{%XDpP4Io`vNGBbf`79Sk(%Y=Uh>*0a`!Oato$>e&U!Jpj-`qT^ z1^4Sd?3?=BEiO9=rRY8OX81hp>UoNyE`J?B-g!7g_$*a(AzO0tSJk-M*Fn|*R)aO< zXe2OZT6rVN@AEmf`%t(rT6IT7HX6yZgSHw6E(FUSTHBChqIX{Q)k7>D^al58A*^ zR>CmhpPdz4o^2$K#BgaL*tnp70Bry%3M+3Xb#fHVkdUahh?o`M97`~jjIbnKm*fG@ z$~+lkj)-hYS50T-38azOkp;D+8I=X{UAThzj%$}zR4KQR|GYD=$u}5@IxPTAu0()Y zBvx!eRQI5}Y`#NtR>YvW+d!m6`(=g`AZ|tK$fZzsc)~f zsW&}D)s4ALo6EA-v(7ce*7pPN@80Wai#uzJYp-;8hl#tTio2JHdo+uC4vBj$hA~99MgHFPYpfBKqME3Vs=LN}hD-jjn-b8e% zECQ))I;o@sakJ-*HP2ac(4~G_NfngzZSeH}A}A*GB-f;qBrTGPCCe}E8W6DP=aZ6* zD`|*&DP6XabrLp^6O;gL}CttB(2ml78O)6JF^a^pPIkk%$Q? z@}h5RG957=$P;);jwj^YJZ1mEfV_X6d(}?+0D=VzFFD zj^CeJC46&a&QnMGCx%|JjnpW^P7kCg=M>amjuFSnU||n^!jRZ*#`@r;NCo8En+R&E z86j^`g#Kthp5Y+xR%95KzA=+8W`&(@{K4dd5welQNx=}mQaMR3gpuYtt0#tDh6XT{ z_EF?TQ7tO*v++E`LB(xR5(EuO*PwTNRu-8Y?Ckn}B_n?!GD3kh6Ym#Jalmi5bU{%uhlGOAX1oUAkf>ccjd2k*izu}A;r>WpOg$kFdf3N<#^qX_4I8=;*O8YM$_9i}ui2*1REQB&G&8~H4Yvhqk%#Kk5vrg>RSOB( zaAcSz+bi*u#u%O1f)aIYFLnF430n-s1U^-L*=Z7>x~!~Xe44mxoLUryW>z5I-pkSG zG?Y%paOK0xERa@x+K5@)l)3L*ZZ}R%T(4Ke99ALJkJ zE}GWOZw=?PoG=`11<}a*7VV+#4ht&HoXMaZ3{(i=tgf$!cZNnXZ|%2HVI@T9;`iAI6<@x{AwJ!Ww87zs`KMDTt!qhG zgzhe%rd{IF?nD0;Xlb()#W{Dx*0;-XC-9h1?}T3Oluz$WR_|O#?*gQE>7{oSp?968 zcT=i&+oE?jtarbtci~0MpGb*xt%rpDFVGXOjq((4i<;~Ei@t}|ke0pNxRMzK}EqbfU`nCycAjAfmf--vOl9c5sRyTFhi zYA66V`c`M?*Fa!MY%EM`ZY=j` zERVTKX0n2$YlL!}$%IRZ;=axzXT&n4uVxM8k=x`!S!arzalA0pi3DoFfdE`&1x%Cg zL?+)NaV4BLMCDA3b+?SzH>A8x%p$igJ#-wfO)M!)te_^Kku5nf5@q&Hz=)x)^@;L`w5<#VKIg9ojhI?Px3bJkfS0BwkJ}RQCjJ1kfXi{M zHe)Z{9WQIMAa65D_7$hoO@yM!W+)gKCTIH6(9{92;#<6~Ubf8;zYgaCDlP3q;+g|Y zo(Ef-hro^eFwK%sc8vJVQlRFkTioW0(+SSz8F2GVs3Do6xoVxM9_Fqa`zBo(Fmh=P z)!H;WNIquEe>qK`hhjTNcO4niqU_Q93;R|gc((#~Clz2>4Y0&%K~}!lE3>w&bKVJX zvIsRX)dcVVmfOSV*vYFiYm_sMdt5Hm<$lKwL=m%q$|=^%9Rv~i`C;!T5m_4ZTlS|P zq{OQRdRumnSPglvS=U-J;+mG$S%edTn#C->?Cpm?T54e)gp#T@Q&2RI%Hj*c_XpjB0(8y#Uz0;jpE;MD2uIW~;()Ft@ks zEPi_*?kpYs0$cBI?PKb}Ux0(&*w_h}SRuNp>W%8iP@o6*-{}ksHK8$ux&mrgFeIT>GO?WMa`{5+A|*QzQwkq zT(-r*J4L*W0={J4`#@=TP3IRH;9wW)0LXOUiE`i#w&A0+1Be|kA{-K-r}&f`^bC%| z`NjmT$hmB&VyKSdsK7Zk2RGKj*2+!3y{O+8~=1|h+3)kY< zbXKt8cA&f>=h#F!MYZv9rqI>0@UgN&xcCYjWk=Xf+%FNrT*}j>90go-%3PeW4xRL_ z5sogdv1EHjt=HW0LPkgDoN3o@k200ZNW8?aNr?Qacdtw^UE}m_0-$OzdRH-l>tA># z6LQu#re_G8-TU}Wrbj2c;6v;lSD1%OmYyUT-f?QMHEOb344xsbn8^RLFaFt7RH6pcuhiU86+5b9m0iGd00Hadou> zGwh%U&(Q=c?GROe`6B^&sBM(Bj;Uu)g5%V(TO;avmL4P`-zzL^yaCID0rv+2a`Zrg zax~I=I{L+XE#E3(`WB9I*n#Ci@#XH?`LR3rVP^SFea1sS$L)fPS0mVCc>4bBad3g! z#@ZL3(<@L(!g1TQskXewWc~ftwnLhLXP*51b-q_&nU^brA0pmo5cL(3CptF4AM(Za zAFuFeton|#IzzB2rAj1Dvb)3aIm8ae@-QnoyM!V?NS@~Q|0Z>-wAwu-A4+649V;wmUgHz{A$?LO_D6+NDiWY`d%=SLLTFq{j*mz55sXHas6#LW8~Ab?!`|RqDXfC?J0w;8_uODz1a&Q z{gcWoHKxlGi9|O$1w7K<-=(<7<5V==$m2CE8aLwvqshJ|z7-2WkR(yZyMdF;vm3$5 zpsE{iid}~!*kM%T;;lOui8Fre>Y^E`j(yr>PR2`Q6S8dhCL4aV2X|ee^tF?k9*4PE{xlW@74Dz+>sS4G${IFfJjxoW zk{vVxYTct3Gn#I1cbcDi7Kq9(KVfI+^xmS)AbY(@Eq+cU!EK(ON|VaiiN?dL??euw zrGVh%TQc?FS*9}ee)cH&3P||5P*!?`t65&w8G}Pr{UU<{F`Cskkg5i~K{59wcG3=} zhwX&zmnAuiUg1cT!Q7$J|P3hJT z#Xqmr{+3&b$S&oq7=8DObvw;NmwsM{%z-1(56K&{TbKid?3E%YYF7i5`0gfu3M?HQ zo^zu$&cxkCPR}M_NvFr&3x4D{b)e1g?06ojdmd0CeZ+k+uBFF!`4NkV=c*cSgm{gD z0rPTLXI)OA74fd0s@*&xFEN+LhhN~~q8A?`o)epn;6qH`EekwDP_|*Tk9aJ`rX5I7 zKzo>MT@OiRDhF^gs(;Dr+8VUCANMwI+SvvWEu?y<_tK-NA`syD z72Sxc^W#`W5PS1iOoxI_!qbXi{`;@k0aRUI-&KZ)@n&PzqqdMoM*qw$UVQN-q>(s@ z(!PZ!Mi;-H4Q@8#dRqMjzjKG>zWtSuDvwb>bU_bWRb_;=Cn>=?RWH|AWu$Yn5%&0r z2<2(zPwyYusG3`C3$vDd(0S=&8qSLHm37IUCOuTrn|4VW20;@MqfaLV{j&B|vFZ0@ zRKnB)-($wCy%yHL$ZOObBggn@kr~t9isk~Ts}Lr-C(pc@cYZO1Rwh6<-hDK3lw^&m zO6=jKV2&*u0y0-8u^1!MQLnw-tplT6p4;y)jZlb=3_nz5VU{W~ z8YzF2nX1mlZJ`olDf$yJqJRS)+Gf3aJthE=cBKwjz`RAKqvuA;I{i#Z2BRK#9CH*% zNZ$F#RWzP5 zIq8@E?SV$UlV++i#z{<+Z%<>~qE@qg(9;3&eMo$5RJGtFXpD0W zn4aE3zIbk;%DJ`-L~o@>J3lk#T$kM)sQ<@8xpr?#Q0=`QJs18_it1YqyvjY$ zin|ua>g$^WiL~y14<=fNrpnvrJ{?9)L*H@6_@+gETt{0*rfq0P_pS&aMPGd_-O%v? zS`kQS^+v|Np_Ay5F+`Yd?QQT(hK*zo!jZIS&7Md;ORW|Vei*E?!~Q}DA8Hq5SF%oU z=Gw~-XNvZr+aL~BjUwY`j)^TXCT~J}_eV6^_c;MQwW&)v64c%=)WnG&p^6Z?m_E$`}>&H9Tj27 zWQlieu@T0;MzI=BV=Zf$gO{<7F{J8yqf*=rdcVOs4$PO|dHbcTl_rbU)QB~EO$Pm; zS-!>?1j=5=6&|H)!%hRvMENaQ!-6-m*8AO6eHCzc(F-v~GFNe-udDyo&DAkW*TE^s_ftYFwvw2kX)RQ;to3J+4t7zkYwiUot!?+jRxtwR|sO+lw%xNdvzeH_HVyM|SM-NoX45^2M` z@rB{0Ps#fT;41V?i~TJy&po^n2nm@ncec>t~3o zXPvGpV~KU+)qVX0`APuIBIq%=FML5`wSw!f&N;lgwCGQr+lh^0cyNLGWon6V?=w^8 z3qo8HQb0B-I|-R0F~foo+d>DK>KeHw3Au&gGNBF;(d;XQwM9D;YLjg0P?C+fH45GA zZ7xC@^laicUl$5VD9WN3t1+NEu0t7$`_t068ou zq^vYXtn5#nBsr|Qq-=&cY$l`});S!iq?{H;oX$_ZB{`hwq+HoKTwqe3vK*dBQiirg zQ@gc=#STnwM0T)j-21UKiXKvnz;$3;&XQyxR~HFgPdcx6nn7IpSd#xVU#^fCnFwoXHjWiDc@G`M{lwr^NiZNS|YX0K+9E%q6YU9O+8~&XQam0F2adiI4fq zYmscdtxY`?il;Labs-?%yL9S;)fw41>SshWL?+sRB?VkCm5Jd>-iF}PCMq(yx_6%G z78#ut!r;9#g}FD_Jf6ZL9c%%nuq*>x)=^kN!B#yK=89nLNZ_JVh9QX|q3c&Ilsq86 z3C$;pRnaZ&C9u&H&;*b#^OjTdD(c_}q+M@Cth1?v4sW+K*wy_{HrJpsn z=?I1YyFB?*Vg-sk>hNcD--J>H{YMgo{B@~7h6O<;RKeB-!Om16-aF>Erm}Bzukt#r zDKuQc0X99`cG)EIWlJ91Tj6i=BZ%@B7dw0{O#BR`zz)Exv3MF3lp5F6TJ%)gQ$}t3zOohlhX^6!PF^b zg(-E^snEjI9_qA_!n7&sgrygN9qJ5tVa8=)`itE&9O?|Q?sPHaYzhnIkWL0=aYEni z{P34d(HXAkdPp=D*(l~u`wtAFiFvV?5kyl^MqLm|lYD8OZ*NiXh6YSRL;K8-H2ho1 zNKwfYP3clm=@v~Hyr}Gwru?y}9EG+5v$!I%&6cp(A*84(ey@t1wwk}VT8y?P=sD5a z7p5Q2Go8QCDHoUh5h8rmc_vugAVu34S=<;;3rR1AfN7h`iks?ao1w+cJ+v(&h~kzh zTIfQ(|{jWUEdY= z;O_T0)Af3n^ahn=Em8Nc6(*=s|L$q8113}d0M~X1Atjd##nTOslnhVNjVzUnY|+8s zC9q4n(JJ#UXPRFx4!Uq@Iw(LzCdFNGuBvl|X90cK?cQ$e4(*{*?7~{^pc<~=7HZQr zZj;Vy@G7g|0`IC)uBsAktJWpxey;RJFZCL07mRJ<{;l?otII;E2kgKFgzpZd?3Km= zEQIU!rZ3>CFZ-^q`?fFqzOVeoFTW-)@&Dy;-hFa=le!9o+1vHmRNSx)=Wq=x>YK_rvoRktGAFY#W2z}*vJm^Q5eG5RV(|ovvh#xS z!5Z=t}`EYVbYNbR4I32jBD=1p!09wOGeBT+g*!*EL<=wO!}6BujM@JG3`%awz-tM=LN! zpK?@>a5FpgU^}x_SMpyctV44${#tdSzN%MWb}R>V3d^(7-T!h;fA(4P0b8FDB%HKn zpEhczwra07YsYY6Q?nLhGFHbnR8uumXS8A`wgjUwUpw{=7xh(3GgCA5DQg3)Vm5Mz zEwbV@UPndSnw}t_wLOD&_>MMCGq+x6H+FBgc6T>-f46tbb!028Zv*yUkM~4dG+_rS zZXdQ%6SWdAc4KR@NK-L-7dCrSwsW}hSNFFAx3<#uF#gdqb?35Lt99yH_u2wDgEzQ? zKRAT<^icD5RnvAf+jbQ{v~ag~eCsxOb8~G^b%uvCMbGwy3vp5NcXF>dv5s+gA2d{K z81rrLffu+gd%!*`crk)EkH5H&_c)OMxR3`qjE8t%8~=7iOSUTO@kQsiM5pm6%XgD^ zbXAA*V~hBG=eL$mwrPjKar-xzZ*7DVHfK*93)nb5*R)z2fP$luE|~V1$GM!(Ii1(J zM#DE_Q#BTEbcXMC86$a~(|0G=wlz~SL{BwilQ^FjwUtYS4?msGMEX`tx};Y+rC++G zXF8^Dx~5n9M{xR9e8i{YhtBBVEfBdsM@1XI+?k(snj?6P>oOg;xz*sqsSi1>qq?r= zIs6K)BidemA0MNyS?8#z614ZGjmh_IifFn z6?1sAd$>ot_p*!ld;_-#FFGpk`Jdmqa|nZ@o;$^Ndc|M7r(68EZ-t}x`XW2`)v!7) zySpxvJZQ`Nyr257ue`^zyvw&d%)dOG=k}6^be{*jl&>;}7doNiIn5h;qSH6R zAD2vT@W|V^jpsPnH=*KJe#~FK=4pJ%|TAu@8M! zk2JOWJ<`9ujy^r@Lw)T_eWV{gr&E2p--1lXf#Y+1*SorOpEcN@k?O*N*)KoyH^1{2 zyU$B|zpp)F&%MB-K82fp>3?|LkN9uny|6oc!~1(iL;Ujr{@|xS;Tt~t<9^3${$Vrz z#J#b}lf3%zJv*~5+6KGAGL49sq$@AvXo(O#= zRl2k1OPfNS^0aEMOP#D+wRYwD)&FZ)uw%t`9Z}~j*|TfWw(UX`Zd|!@>DIhOEKXj% zd-?YD>z73wK^F)YCS1&LV#S9O|8@Kra%9Pqly({26p;(W6P1Hhp^Y zNToupK3&T6@bnIW?`#YV#~XFbk^jdXy;G08!rEJGu_1lz5y>N!Op?hZoy-vu`(m8(z$&S{ z(#kBc+)~RfxfE%}FvT3RASug~(o8Z9no-6v6Gf;!3Nr$>dU365sN8Kvxx-`AKG^ILN*p$;wJ^d6^PN(MmMUeBUC5NI>i8DiaK#;$+;Yu5_uLVd1$MtRRT)9ncsGs10Q7)7FTH!o!!5nfnfUhj1C%!Kw#lTSeHtoYDBC3=|7i|4!;&_drFIbtxcYrnS0A*w^&!RgAEwp?GyHQ#*GI)3XK^v6RV zUG&mP&q!pBOFq+2lUeTQV?^EEm}7{+d>CXy6HS@*kXNUe^@&#&zF3FMsiTpalaG1% zvzkX<`RJLK-v4>(p^v#zolKulA$&OBbUYxNzMOm@zdv7UVF*2ad-mOLAO82dtd^)@ zg(I6;wq2u*A_|d(5Ls~BpN5V#z-uupS{%xor5tjL5qN7-5loBVyfr}ycIAQ<#GnO7 z5R>@L&L{Btp7=0V!lePpU+7cezv%P156bU_F@)g^KRCPEjjVwy^If4lwmTit?uM`P zi0W=fJRTlVV-^$Q?$)O=;VF?#43dp0GDtxyRuPLF+~5|o*FYL-uOQ)wn&#?-s_~r> zbLH{C3fUMhbq!61ar~kj={QGBp-nChDj)*&Xq23c4I}=8R{j1bz_P_Hf!p#>wG4Sb zm?VlK$N!rYizZn~>r4=nmVAzNrUQ{VqD>*h&|DnGlP?pZ(O&0i<0@elhcGzKj&+n} zENMB*?4T)R9TSd&8P^JKI9NXS7(OOgNFV?RH~M`PvfC_=;t6}>q@Zd$aWWufFn%YwUH5)-5$4W7oP zp*atjs(kBY+8W>4(oeCXP9F{FOlewEo8AH-{uHP|#i_6>YFr0wNa%irFjL?4qV#TPIXaGaTV-f30qjh9u~2QRV-q;io=!_#dW)sY{&Mg zHmVYFm=Fuw#)QQ{-Ze9s~8^P9E@U<9>?FKdSRGV_-Xj2QH zN_oo|mipDNtjMfwiCbLb9v8XERqk?`>(i28%uBIzs!|CgQe)l_p9SlMS;<(v8mp7J|Q!DTyl z`ObO9^PcM%WVRsrf=4EDlKs|Ua{%nFrj+ps&m)LA%a^`HXG|*T4^NQ(zS9llofvYFj%XFnU-(U$hKsa@@7r(?Wi6*H&>=jl*`+S)+%hpa}07%nUt zm0Z|?gpch~&xIS_@s{_z>0NJo-y7fgCZ;g@md#xMo7augH%)=vDt(#fR0zjwF;2x- zIk(%L6(0D+DPD1lUmW8Z*Z8uh0b);o9L0b8!dOLKxQ%nH;Gh~z!c%$h7$ar}q=dM9 zg>iD5-yG*T*ZIzQe(l2T`sa1fwgvq*a_00rOe1(Wr-ZF&mOmYZ^P2g5kzRGHUmfdN z*Sf}qQMizQ>kCKLc3Z+8E^TAo6io)zVfe-Jh2xdoQ}1gFw_bO<-~S!&dDr_-{Vce# zqs8dY3H%7aopq&us?AQv>*5hZW4TXw?~#}Mmd#t<_WjBv)CQVB+Uwq>qf2Y$3 zy5eTPIFsMq6iP3*%iZ3d-vhtKkzfHnkl%gpe;@qCk3PD<^>?s?YwsSYSM?Xa14n~O z``Gs@-NRph``;h`R%b;z{$6quJ6~w>jukk?13aJ*?kY%9%>V=;?%+@USSkKCCI2Rn z0xQr0Cr*;g@Bhk0?}XuB8n9C$@B!T^{_5-kPY?xDPz9BZqW^@B{KiG^T#R!>a0JgM z{vxo0R!|3bkOzAZr&`eK0MG@|FYjcKYG|+qzXu67MfiNs37-%Oqj3C$kZ}SK@9F>q zk!A^#aC2_3bD|Io!%z$_kQHk0{LDq~AfXGnkd2Tq61Z;+<4_Lg5cxQd3jI&-L}>=u zunjvUO6U*}15pqs&kTo9TyhZamJVRHkPmHeQ|NCHBT*73vFEyO=*&)B^o|h&W*iz3 zeL9f^Krt{VkrYeO6f+JL(Bs);H1OT7u^ZV@bJUSjf-xTZ(I1}?2!~Mb;=mX6 z5ma2!Ao1}7NAVvU(jjee9y2lTh#?zUB_S0OR@BiI`SBq;(jx~kAnWn&M9BkSu_WW= zB*Et*F)|||@grXnCdV-Ltnu#ffu#zt00|H$adI4X5+`+1Cw)>Vhmt6Z(kPD-DU(tt zdy*)bvH*K>`(jcmrxFayQSWp?C4ccJL9rmUGABdvE4lI)$1)VjQY_07EzeRd&5|wC zvMtxrEzz=5&Jr74(E~)1D)Uk=Q}7t|PE&4jF8|l)CV5gY=Mo#0u`mx)F#&Ti!N)Nh z6EYc7G9Pm?Ba<>IlQ0+ax3&^5_tG;z6aT^qrbhD?NYgY+6E#m$HB*x{SJO3H6EMUNVKL_+bw^JArb1WP1HdvM)RokfQOVR%8x>L?RZ=6BQYY0?D-}~;GgHen4AgEg7xXLhG$n=8 zF-5UW3v)tGwLwWWRm&1pSrt}aRaRGZR*f`NZ}mYrB}y)pS2wj+f7Mrm6da#`mS=a?XL}ZCe^zLHb!f?R8d!lAwsK~{a$2L*Rj>7A zHpcpH^RSk{F6MXwTMc(-v*lR&Cq%Jl&Q%>xxfB zHc;7(PA8N>7t}5F_E|%9Z~y(aZzU{n4bxjk_FLI)9MF|*7Z+|B*Kr#cavzsxCAU0L zfojPTC=nA{!M17>lS;kyb3HdVL3eaT_cu*9CkggssnkweH+4}Va$}crXIFM>mv(QL zKW%q4q4Q>c6mV_UZ^iaasTDz8)j9L_coP*lk#~79w{Q(JIMb0+aF=>@w|cMFdb1aM zx0gHd;bp_pP5E|CM|W!*@N+%od;?Q&H8*&@@+$?lX4kiK4|7+!*M7AZfA3d+^LJSD zx6bZ0S~as~kvDbGH)PAzcbyV?xpsjSn0duFeg&6!uXcEal5nxHgLHO(H<*7p*n>M5 zgln{eeROO&H)NrgY5!AKUqMuUQ`mgTSAE;pg;lm+C3uEYQiDTShd-Eyci4w}cspUL z&W89Fh}ejW7>SQqiIbR#m)MD$7>b`*ilexRZPHdrbtxw}Hwku&r*w;rmvzDTi_0~P z$#{&3cXQLYTKUxj@PQSkVT$9JishJ&=h%+x7?1B*kMo$1_t=m77?A&1kOP^J2icGd z8IccJkrSDb7uk^;8Im7ak|UXtC)tvfxRNvZlK=QX$2T+A_==;}IaileEf`fz*^{l- zbyeAg3%E|}R$Pg6IE6uzYk8Ax8JBNamvfnyciESF8JK@rn1h*^huN5m8JVfrO5ymJ zn>msrVT)5Wb^p26cduAFZPk<`RF*lEnpL=Sy}6qoG)TpDoFn)+u{aKd*qPTkncJD2 z-`Snx8J_1^p6i*O@7bR7S(x#epP%@RO@Rbj7n_-ucOy83#Z^zCQj`UDp`Wv%gY%&k zdYYlrIbB(sr&)nLN1r#kpF5hPKiZ>18l*>Bq)VElPr8ZK8Ksd~R0CFpX_lg^wp?2} zfa$cR5qfiRI$(90nz1-w=N6|qbfrz2sE699iyEnqTB(zosh8TRn_7_HxDJ@IS{0aq zty)xLIew}7PMwmg(b!0lQ6G6*v7_Rkhg^ zhFiRUo4m){yvrNC&l``!Te#cX6x6@PyTK!TDQlLk;W)tkyT3b}!#~`^Lmb3MT*OP9 z#Q#s+#8Vu_S6szgoW)<<#bX@CXI#c>oW^h5#&aCUcU;GNoX3CM$AjFy*&E1?T+sU2Ws~_C8pWK`)yvoDb%A0(`bCbxA+{nM&%flSZ$6UUM)@?J@U7gqgJ=7)q!b3gKlU>S5oz)2w75{+U z*QK4>r`_7C9ow&6+q0e9HGSJFeZZIf(3zdkQ9ad1{m{|9*}K`#%bn2G9TL91+vi>0 z>z&^3-QM#Z-}hbL`+dkGLAHrq-LJge^}HwxUffxI;ETQBVcp*!p5G%L;wN6>E1u#n z{>?4^&F|IS5&YAelFFSu;1|BoN1ogj-pNM*<5yneS>EMa9_C+O=3}1bQ#{;Fy|xFv z>64!6m)^ty9O|Q9>ZhLStKRCb9_zDS>$g6< z2@>cN9N}@E;L9D|P2SJj9qrHE10aCw+urTp9`55_?&qHF>)!6~9`EyB@BjCn@B7~G z{~quIU+@Q?@C)DY4$>9Mc(JnzS!M8?J0Z&QXltoU-x&P_j}*>e;@dRU-*YV z@3C;_&3(%YzUQBv`CEPH2i+;zn)s)m`m5jiuOIufU;DS8`~4mgl>OMh{`J@0?Ad+x zYyad+5+Ays{oCLD-yi6f0W1h%uwajT}3A{0K6n$dM#VnmmazrOK5oTe^G+Gp5X$H2-VbyoocX&Ye6( z#yRK^=tH4E8A60Olwm}pMUyr~Dp2Xtg2Z}Sy^1xf)~#H-di@GEtk|(+%Yu!=H0sc) zX`8MkDphFQr)=v2jbk>i-o1SL`uz(yu;9Uj`~Hk5w;@rrQjs!+`k3zAxo;g3gituM z=FOZtd;SbMwCKNR6}M&VG;w9Riz!>SiyCRw(X?yZzKuJ#?%lk1(hACYacad*ArFsD ze6@0d6MH*<4n4Z`>C~%Zg>-avWTTAbqby+`;KE3+&?Av>;6W%*)@~4YS zPEMIJEcg8T`~MGMfC7#*0&;b^rjTo>fydo<1|lQ~3nL6jVgH2|UWj3apa~O6VhzrB z;C;r`m)}rv2%}+&Dz3<4i!Roriy#BZNaKt)j#Fcf9>{2;jxyr7V~{!m>0^&V8d+m= zFD}VslTJRV;Rq}gspFAUT8ZVAT4tGLBojgjW|(4*NoH@5Y)K@STdt{Qn>i|3W}I@) zNoSp9jnJVWdhV&GkbM3LXrO`)N+_XT+KFhQiZ06NOR!|gW~6RTT4WuKUW#d^nqDdl zBs=o?X`!NyN-Cfp=z`*=s;$}Y>BFm>cfYqYhp086UOUW;wE+7dQ`r$iD9?*E?>eYtJ9=AMi0SKUg>ZjBxg zLvFhA&P#8-Gj)p=jo}XJK^(foYj3~;4@~e!!i=Dcr|k;K0xflrU~Rz?PfT&a!W>LO z9gxrxM=Dc^&rEa8Hs6eM&N}bRbI(5i40O;! z4^4E@MjwrI(n>GQbkj~h4K=5xph)%9R#%Pn)mmrG_10c@4ffY!hfVg_W|xij*=ncF z_S$Z@4foq}$4&R#cGr#f-FoNE_uhW@4fx-J2Tu6lh8K?b;fg2D_~MQ;-gxAXPcC`o zlwWRn=9q7;dFPye?s@2-k1l%Yq@Qkj>X)O=y8r5~w+{R3vd2#Q?6%jA`|Y~t&in4Z zQ~rDKy$>&Z@x&i*eDcUIuYB{&Kkt0s&`%#d_10I9{q@>s&;9n^cMtyG;gA1)`Q)E( ze){OIuYUXNJMVt{@5@jB{Px$6|NZ*sfBpXc^Z&m90&su=EFb|7I6nj`(0~kFpaUBS z!3Rn(f_S@_1uuxf3~F$L9PFS6KM2AQig1J^ETIWch{6=AaD^;vp$lIK!x+kNhBU09 z4R46U9O`g~JnW$le+a}N3UP=;ETR#Qh{Pl+afwW9q7$D8#VAT~id3wk6|acJENXF! zTOPtq%5T= zPl?J@s&bXAY^5t-3Cmc@a+b8Lr7drX%UtSmm%QwyFMkQlUIKbc?uz?AD-~=Oh!3sVtgCE>r2unD^6rS)^D~w?aXL!RJ?l6Zv z>fsQ7Si~eAv5DJz;uM#7#VT$wi+B5C7t1)tG@h}I2Ycfj*LcS|?lF(0ii#i$dB{XA zvXPIBuZ-m^YkA9D?y{G^4CXM4dCX)kvzgC~<}|B$ z&1`P7o8JuQILmp?bgr|V?~La>>v_+7?z5l&4Cp`$deDR}w4o1;=tL`e(Tr}iqaO|F zNK1Osl&-X;FOBI;YyW!FobI%zKMm?oi+a?gF14vojp|gZdey9Mb(%>KWLTp@*0heb zt!I7fTH|`xy6$zZf6Z%P`#RXf9=5TCjqGA4``F5EHnX3->}We%+R&c1wX2P7YHR!2 z+s-z(zwPaCcYEC6CbziDjqY=++uZC#Vd|+ifdfoL(cfcH}3I}gM8#4FS*D~ zPV$qhJmoA$xyx7n@|MGV<}#N#&0~)9o9n#hIp_J#dk*xU3*F~L4|>suZuF!hz1kf= zy3>{Z^rc6A>is-gW*HymtuXjD{WFNcP#g6u}r~T||Z#&!H?)9dx zeeQ0jJKXDz_q*%e?tIUC-}mnKl?NX1g#WwY2Y>j&BYyFUZ+zk(&v?i?KJt{GyyYd2 z`O0Vh@|y3wwmrZ3(1U*ToG-oTO;7sMt3LItN4@J;|N7R$e)h7jee7>PZQIix_qy*r z?|;Ah;QL9RAhj?g*dB}%*=!bd;hs|V zO6P`#IEa^MiJ6Fqnuv*;=!u;Oikv8lpE!!4NQ$Ruim51nVmJbm2#K%gim@1pvj~f{ z`2TK|h>N+Xi@V5+z37X-2#mofjKfHb#b}Jjh>XdojLXQ3&FGBJ2#wJwjnhbt)o6{^ zh>h8(joZkL-RO}lQzkdIoXpt z>61YTltcNGMJbdVI`IJowl~XB|RT-66NtIY>m08J^Tj`Zr3ICQ| z8J1rumSstnXE~N>X_jh`!Im(zi%A+{yqdf|wKPsd_N~F~}q(@q$Ns6RPs-#WIq)(cdPAa8P zN~Ke3rB#ZhSGt~A%B5P`rC;i$VG5>W8k=HjreunyXR4-Y%BDd2jc*F4aVn>CN~d*d zr+12{d8(&-%BOwmr+*5lfhwqjN~ncusE3NEiK?iJ%BYR%sE-P%kt(T^N~x7&Gu_~*xO8=|1YOA-3tGTMH zyUMG*>Z`vBtidX*!%D2hYOKeKtjVgZ%gU_H>a5QStaE`juHh=K<4UgOYOd#suIZ|->&mX}>aOn!ukk9c^GdJvYOnW-ulcI4`^vBV>aYK5 zudtvC5D*D^!UqR?u!1lSkpKa@01E&Mu@Nh=6Pt|#D+maSu^F4Of)EM1K(QYSvLP$7 zx(EvpaIqT82Ro3lDvPpw009pRr?Nl-GE1{FYqK?rvp1`=Im@#<>$5!zv_C7fK})nl zYqUj+v`4G7Nz1fL>$FV^wNERxQA@Q`YqeF2wO6aPS;JV~3$|Y?wqZ-QV{5i$ zi?(O0wrR_@OREc!kg|MG2yr{NEGxHhOSgHevW3vGYx}fq3%Gt8xPvRWg-f`HYq*Jv zxQnZ}jmx-?>$s5%xsxlol}ovo`?Ihx4tKk^dh5A$%ekRDx8nc{lxw-Ci@B+bx~r?Y zt;@Qv>$%7qmz0)hbWeW>}0KA~9y}lc~*((Ud8@bdgzSTRv z!4qu36^y|btic(~!5i$s9Sp)BEW#m7!Xs?LC5*x+timbG!Yk~;EeyjiEWC{#Z^qjS8T&M zOuss;#h*J4ODqfei^XGX#br#!XKco4jK*uM#%;{TZ|uf#499aU#}hmbU5v+E%*Ep% z#&t}`f9%JB49J5l$c0SEhiu4+jL3_u$bx*sdc4Jvyu-lT!$KU!jEu>RoXMN4$(_u} zpX|w@49cS{$}9ZHlAOn=49R>@$wN%auUyKoEdR@~Ov|%u%e9Qlx2(&pkjj(1%34ed zLww1(Ow77m%*SlZ$&Ad)tjx{K%m=IszO2gAEX{nN3w`X&+5F7f%+1^E&D{*n-z?5( ze6iHr%jYb=-|NG&FwX59&hPBb@eI%NEYI~!#}ELzDyz?NyU+d1&;RVt0S(Xtt% z7p>AM{lz8i(jyJiFD=tCP17@7#k#Q4Ii1owZP6aj?YV=dNYP1Y0q$Xl(}Ts_dO zjL>Io)^QEjb1m0({nE0))@!ZT1O3x>?bmb-*nch9fxXPUoY#lF*ZPdVD!kE+?bweE z*^w>TlTF!`ZP}NN*_o}`o6Xss?b)9V+MzAlqfOeSZQ7@e+NrJDtIgW2?b@#m+p#U% zvrXHh4FNlV+qtdVyUp9Z?c2W%+`+vAkx<*kZQRF=+{vxn%gx-)?cC1|-O(-G(@ovg zZQ2Jb+}W+&+a25oYu(=s-r+6Y<4xY>ZQkdN-s!F0>rL6*?cVSG-s~;k^G)CNZQu8e z-}$ZI`@P=04B!6^;J)1o{7v8mZvWs1j^GKd;0w;+$*m3n4&f0_+zn3Q6>i}dj^P=u z;TzuEcO2m#4&S89;UiAsC2ry;j^Zh<-`ES{Exz5~tKu;(<1Z7jS zw9x4-KD?x^>Z{J`t&ZF{egEno?y#;->$Ps{w;tMl9_!p4=(z6dzYgrUF6p}-;=yk0 z$Byix?%%`?->IJL&kpU;F6g?>?7&?J(vI!fuI*+X3Dxf2pT6zkF7D&bP3_g*>!E z`Im3`nUDFKulb$N`JeCklK=R`J`Q3J`llcIsIU5|&-$zH`mGQ9uP^(tANGh|?WK?Q zv_Jd1ulv2v`@iq|!4LeyFZ{*t@}ocLxNrK#&-}#i{LK&j&oBMaPyN$x{U?w7bRPM+ zfBoHG{on8X;Sc`fFaG6E{zQNGo!+o;&-Lx^{_hX}@h|`LPyh9A|M!po`LF-`&;J0S zOW;6)1q~iVnEz1WLWT_;K7<%i;zWuSEndW!QR7CA9X);o8B*j(k|j-YY{h5CN|r5M zzJwW*C7)I&ZQjJ0Q|C^eJ$?QJ8dT^|qD74!McR;@Or}j?l1my@>Qt&#tzN~NRqIx+ zUA49v=TvM=aIIi@MVnUbTDEQ7zJ(iCF3(oz#@KZYDx@?^@D9n%`8GVx+smOXz49a{8g(xor9!kig#OFoOqLC|Yj_H5dy?y@%9$ffv;>C?0N1j~ya^}sQKZhP&`gH2mtzXBUUHf+K-MxPYA71=;^5xB+ zN1tB(djIzA-M@z)U;cdh_3huspI`re{{8*`2QWYZ2PCjS0}n(nK?N6Nut5hOgfK!0 zC#0}K3opblLyv0WP?rur^e{vaM-;I{5>GTSMHE+5u|*bNbTLL4XOyu<8gH~QM;v$5 zu}2<%^f5>vhZM3%B9AmONhFt4vPmYNbTUdPrZ+;M#p^jR=aJs-!?n$wdHo3Zn)>hyY9U2*1K=M|F%2uy#@E1aR0yu zN4)UF4_CZ##veC4^2H^0oN~w~$Gq~)FW0H(%U}O|_1|Y7e)r?2e}4Ph$6x;Z>qows)D06+>PRL) z)Rl~Y2Q**;2dKaTF3^DugdhSRD8UFakb)PqUJv*hySR=A}-O1 zO@ty6pD0BLuI^;93t1LLrbRAp(TgA}nTWzTM%R&1b!R*s8qJtSHm=c)WrU*|OrHtgt(x^&U($bc#tR*gQ`O019l9##! z<}ZcmOJerYn87S2GLJdTWhRrE%7o@KrRhv+Hq)BXtm7;TNDGs3lVsjRP07GHPH~p= zo8}DXIn|j?c9L_Q?rbMI;WQ2&7z^q&R|=s^{l zP=*q8p$=^*LLoX)iB|NX7LDjdHJVY5Qgovp?I=b;I#Q9A^rI#X=}A?ZQkIf*r7jI8 zI8CO_r`6P^H^pgAb-GiY_SC081!_=*I#i+-wWb8@Cdvf3R0lG(flh^LQ>FUUsYaEm zSG8(ZtGZRJa#gEc1?yME>Q%CawX9<`Yg*B|*0Z)%t!`!OTjd&8y2912bG>U_@w!*N z_BF46siu~>eX-sSFh#T#Dog4ev`J#Tr@yI%FS zH@)v=FMQn_U;571zVgLyee-)?{q~o?|J`qZ{VQMq57@v3MlgXDeBcEqn86QraD*E? zVF*)L!WG8w15f77#~Rhc9|m!VMLc2>m)OK7MsbQ&>@xyt6RFc(ag1d=V;a}k#y7@s zj&;0am!%QLXRIQRg*;>;7um>1MskvAObc2-fE?<8z>i4`V{TTNo6R6+m1DYPEq9sA zU-ojC!8~R$mzm6GHglTMyk<4Gnayu@bDZHkXF1oI&i{9|bDr_MXFd0s&wuuFpaDH- zK^L0Phc_cZ@`oL$pwg7y!8yi34kka^(PE~mbp@E^QG43dpFVY} zQN3zax0=_J!@Iln%1|rb*^!}YhBZs$q)$3A1ti`VXJ`H!!Gs?{&0>c_qxxe z)-q(%NkCp#+u7H)cDAv-ZEbg(+u!zfxWPScahIFVPA11V)IE+UcRJ3rAcs4YJ#1oM zK-iTwHooy~X>f3w++#kcH?bV>a6he{}Y z?_saR9h`16y!lXUdMDf1f3Ww-^POyFSDY55e*f_Ty^K1SPu%7;$N9~5o^zh>+~++9 zx~w6<4P{^2*z`U+$=xxIG(!L#lqUARD{b_tpFHI%xH_dlu5bf_TFV9}c+kcEbFz=! z>}5y$+0~wQw)ffT96z?vqn>PG3mYA<;c}DZ9rt4w+wUr;I^U1Y?t_B_H`l+oI|mhr7OyjcgUTqunuuz{pF^dCk{7-$%zc=2g)0afkiOsQD`8 zCqH}H*Piybw|(w$KW+%*!t{SP`rkQ^>>a?S$`D}2yf-g*)ARlBaK}6!@GfqcS2w0s zW^(qmPjl^e-}~POfB3~ee)5;!{O3o1`v29xe)hND{qKi={N+D?`q$t7_s4(!^}m1q z_uv2j2fzRfKM2^nszbWe8$RI^HfCrxV57I-TRFfJJmyP46<|OC6hH3sJ`Kdc4)nke z1i=s#!4V|E5;VaRM8OnP!4+gd@`HdeXucQ}Jk^^w&2t6V=sg8IJ=NR1=A%GM^ow!1zNB?(yKteqd>otJHDHR zC^W+}M8h;x!!=~XHgv-`G(%UYyC1Z|jw3mayEHyP26xE99(+JQ^g`t$K9zF^WPrm% zM8rf?#6@JpMs&nS1VLMXx=X7%<^Q8Ql{>i~BsRM!InC?CD+I)O1HNP921qo;Q$)p7 zRK-0e9d7c{90DC3I(tKd%KX}iQ6AmT)@;n3Jh~&z z&xnjWW+2KMMa~0-(kPYEDg8e9oX||PMyfl_EsaHpTup}5&(*|FlGD(WJi0O924wJ1 z542GyZPPb((>R6GIhE5orPDjL(>%q~J=N1bwN4z3$}tQ)n|#L7R7W5M(smruFeOql zJyI}L(vl>$8~?;pDz(&0#Z`2p8wz^x#Qf){gMO89w&uoNDM`cgD z3_(7XRX?TGS+&(##noHY)m-J(UG>#oO;H`KJDn6o3DmdKG)=Um!i`(U`z+E_RZ=8P z(!?}VOQX~}%~Y7&&1~h?DcwwI9law>Nwb8;E}gqjEmd}GM^*(_Bz4s?ZP$3kN>?yM zHidwD#n*h**L~&Je)ZRX1=xTU*nuV3f;HHKMc9N@*o9@-hQ(K8_{&+C1y|q(ik;Yr z<%U_X1vOPuhxOQx1=)}l*^wpLk~P_rMcI^9*_CBke3is@CDU>J)a8piA4Sx3-8grZ zR#kn}b^jGpMFm=TmDam!S$*wRIE2`Vb%k7D+NN~{SC|EeWxv1d%xVQ!VH<=0RMVs7 z+RB80bCA}3LsGG&!E$X-Q=P-JowS~v@l#LDrClT?T-f#9uXMV0on54> zK+Qwf&?PomOxM(9UBPwR(q&%KmDfMG-2lAY>&4#eZCLf(-FW3tfZfCH72iVC-tsly z^Z!NP^i^N<4PVX`*PS(1Fg#S7#aSR_R`^9-R(0FDWnG^gQg9{TqW#?`>_YL4*IcMx z?JHmd?q1s+;0Jz5939@x-Q3cv#+*&tW-V1_y;=T^Tm1Fk=xtm472LZ8!1YDp6n@;7 zW#D)v+k{g<-W1oO}{nW z)%9TM?ceDw+?9o3CCpqIme+~=wON>8D^6T`o#HR1NC>zG_a)xbv*5rJMF`B`Bj(^X zPTc(^VdjNiCT`-+OW^(6;XKx3g+&G(TsC4$&fjw$!gS|{{^LJDXojZfineIWJ={0` zVd%TOnk-iN{O5k2WN-%IUl!pYZeBvZ=#@TSL5Ap;rd^U_K$fQInzm_`1zR#6K0p7Q z+20e@BKGH7W@3ZxU)?3@5l-9yMp=cv>8AEqSAglLW?+eS>Z-Qts}@*f$mwvl$M~e* zG;ZTtzU6LK*OD&hlMd*jmgR}Y>b4$PmzL_d2H{+A>$MrvsELZ43F^BzX$j0oM;aCTy{` z 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�Puu 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 rj

    @@ -31,7 +31,7 @@

    diff --git a/7-7/src/index.js b/7-7/src/index.js index b9719c6..5e28f74 100644 --- a/7-7/src/index.js +++ b/7-7/src/index.js @@ -51,7 +51,7 @@ $(function() { $('#ex4').modal(); setTimeout(function() { location.reload(); - }, 1000); + }, 3000); } lastLeft = left; const boxItem = $('
    '); From fe38b6ff04947d51f634768f97fc22eaa19cd4a4 Mon Sep 17 00:00:00 2001 From: huayifeng <461249104@qq.com> Date: Mon, 13 Apr 2020 14:44:06 +0800 Subject: [PATCH 5/8] feat: node-demo --- node-demo/index.html | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 node-demo/index.html diff --git a/node-demo/index.html b/node-demo/index.html new file mode 100644 index 0000000..8a3d311 --- /dev/null +++ b/node-demo/index.html @@ -0,0 +1,23 @@ + + + + + + + node-demo + + + + + + + + \ No newline at end of file From 328ee12d77351a6a4ab696fcd1d8302ba2797abd Mon Sep 17 00:00:00 2001 From: huayifeng <461249104@qq.com> Date: Sat, 18 Jul 2020 01:13:39 +0800 Subject: [PATCH 6/8] feat: ll --- love-yuan/README.md | 21 + love-yuan/build/build.js | 41 + love-yuan/build/check-versions.js | 54 + love-yuan/build/logo.png | Bin 0 -> 6849 bytes love-yuan/build/utils.js | 109 + love-yuan/build/vue-loader.conf.js | 22 + love-yuan/build/webpack.base.conf.js | 82 + love-yuan/build/webpack.dev.conf.js | 95 + love-yuan/build/webpack.prod.conf.js | 145 + love-yuan/config/dev.env.js | 7 + love-yuan/config/index.js | 69 + love-yuan/config/prod.env.js | 4 + love-yuan/index.html | 12 + love-yuan/package-lock.json | 11007 +++++++++++++++++++++++++ love-yuan/package.json | 67 + love-yuan/postcss.config.js | 5 + love-yuan/src/App.vue | 65 + love-yuan/src/components/four.vue | 113 + love-yuan/src/components/one.vue | 80 + love-yuan/src/components/three.vue | 93 + love-yuan/src/components/two.vue | 122 + love-yuan/src/main.js | 22 + love-yuan/src/reset.css | 366 + love-yuan/static/.gitkeep | 0 24 files changed, 12601 insertions(+) create mode 100644 love-yuan/README.md create mode 100644 love-yuan/build/build.js create mode 100644 love-yuan/build/check-versions.js create mode 100644 love-yuan/build/logo.png create mode 100644 love-yuan/build/utils.js create mode 100644 love-yuan/build/vue-loader.conf.js create mode 100644 love-yuan/build/webpack.base.conf.js create mode 100755 love-yuan/build/webpack.dev.conf.js create mode 100644 love-yuan/build/webpack.prod.conf.js create mode 100644 love-yuan/config/dev.env.js create mode 100644 love-yuan/config/index.js create mode 100644 love-yuan/config/prod.env.js create mode 100644 love-yuan/index.html create mode 100644 love-yuan/package-lock.json create mode 100644 love-yuan/package.json create mode 100644 love-yuan/postcss.config.js create mode 100644 love-yuan/src/App.vue create mode 100644 love-yuan/src/components/four.vue create mode 100644 love-yuan/src/components/one.vue create mode 100644 love-yuan/src/components/three.vue create mode 100644 love-yuan/src/components/two.vue create mode 100644 love-yuan/src/main.js create mode 100644 love-yuan/src/reset.css create mode 100644 love-yuan/static/.gitkeep diff --git a/love-yuan/README.md b/love-yuan/README.md new file mode 100644 index 0000000..8ac7ae9 --- /dev/null +++ b/love-yuan/README.md @@ -0,0 +1,21 @@ +# love + +> A Vue.js project + +## Build Setup + +``` bash +# install dependencies +npm install + +# serve with hot reload at localhost:8080 +npm run dev + +# build for production with minification +npm run build + +# build for production and view the bundle analyzer report +npm run build --report +``` + +For a detailed explanation on how things work, check out the [guide](http://vuejs-templates.github.io/webpack/) and [docs for vue-loader](http://vuejs.github.io/vue-loader). diff --git a/love-yuan/build/build.js b/love-yuan/build/build.js new file mode 100644 index 0000000..8f2ad8a --- /dev/null +++ b/love-yuan/build/build.js @@ -0,0 +1,41 @@ +'use strict' +require('./check-versions')() + +process.env.NODE_ENV = 'production' + +const ora = require('ora') +const rm = require('rimraf') +const path = require('path') +const chalk = require('chalk') +const webpack = require('webpack') +const config = require('../config') +const webpackConfig = require('./webpack.prod.conf') + +const spinner = ora('building for production...') +spinner.start() + +rm(path.join(config.build.assetsRoot, config.build.assetsSubDirectory), err => { + if (err) throw err + webpack(webpackConfig, (err, stats) => { + spinner.stop() + if (err) throw err + process.stdout.write(stats.toString({ + colors: true, + modules: false, + children: false, // If you are using ts-loader, setting this to true will make TypeScript errors show up during build. + chunks: false, + chunkModules: false + }) + '\n\n') + + if (stats.hasErrors()) { + console.log(chalk.red(' Build failed with errors.\n')) + process.exit(1) + } + + console.log(chalk.cyan(' Build complete.\n')) + console.log(chalk.yellow( + ' Tip: built files are meant to be served over an HTTP server.\n' + + ' Opening index.html over file:// won\'t work.\n' + )) + }) +}) diff --git a/love-yuan/build/check-versions.js b/love-yuan/build/check-versions.js new file mode 100644 index 0000000..3ef972a --- /dev/null +++ b/love-yuan/build/check-versions.js @@ -0,0 +1,54 @@ +'use strict' +const chalk = require('chalk') +const semver = require('semver') +const packageConfig = require('../package.json') +const shell = require('shelljs') + +function exec (cmd) { + return require('child_process').execSync(cmd).toString().trim() +} + +const versionRequirements = [ + { + name: 'node', + currentVersion: semver.clean(process.version), + versionRequirement: packageConfig.engines.node + } +] + +if (shell.which('npm')) { + versionRequirements.push({ + name: 'npm', + currentVersion: exec('npm --version'), + versionRequirement: packageConfig.engines.npm + }) +} + +module.exports = function () { + const warnings = [] + + for (let i = 0; i < versionRequirements.length; i++) { + const mod = versionRequirements[i] + + if (!semver.satisfies(mod.currentVersion, mod.versionRequirement)) { + warnings.push(mod.name + ': ' + + chalk.red(mod.currentVersion) + ' should be ' + + chalk.green(mod.versionRequirement) + ) + } + } + + if (warnings.length) { + console.log('') + console.log(chalk.yellow('To use this template, you must update following to modules:')) + console.log() + + for (let i = 0; i < warnings.length; i++) { + const warning = warnings[i] + console.log(' ' + warning) + } + + console.log() + process.exit(1) + } +} diff --git a/love-yuan/build/logo.png b/love-yuan/build/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..f3d2503fc2a44b5053b0837ebea6e87a2d339a43 GIT binary patch literal 6849 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 { + const notifier = require('node-notifier') + + return (severity, errors) => { + if (severity !== 'error') return + + const error = errors[0] + const filename = error.file && error.file.split('!').pop() + + notifier.notify({ + title: packageConfig.name, + message: severity + ': ' + error.name, + subtitle: filename || '', + icon: path.join(__dirname, 'logo.png') + }) + } +} diff --git a/love-yuan/build/vue-loader.conf.js b/love-yuan/build/vue-loader.conf.js new file mode 100644 index 0000000..33ed58b --- /dev/null +++ b/love-yuan/build/vue-loader.conf.js @@ -0,0 +1,22 @@ +'use strict' +const utils = require('./utils') +const config = require('../config') +const isProduction = process.env.NODE_ENV === 'production' +const sourceMapEnabled = isProduction + ? config.build.productionSourceMap + : config.dev.cssSourceMap + +module.exports = { + loaders: utils.cssLoaders({ + sourceMap: sourceMapEnabled, + extract: isProduction + }), + cssSourceMap: sourceMapEnabled, + cacheBusting: config.dev.cacheBusting, + transformToRequire: { + video: ['src', 'poster'], + source: 'src', + img: 'src', + image: 'xlink:href' + } +} diff --git a/love-yuan/build/webpack.base.conf.js b/love-yuan/build/webpack.base.conf.js new file mode 100644 index 0000000..a07e683 --- /dev/null +++ b/love-yuan/build/webpack.base.conf.js @@ -0,0 +1,82 @@ +'use strict' +const path = require('path') +const utils = require('./utils') +const config = require('../config') +const vueLoaderConfig = require('./vue-loader.conf') + +function resolve (dir) { + return path.join(__dirname, '..', dir) +} + + + +module.exports = { + context: path.resolve(__dirname, '../'), + entry: { + app: './src/main.js' + }, + output: { + path: config.build.assetsRoot, + filename: '[name].js', + publicPath: process.env.NODE_ENV === 'production' + ? config.build.assetsPublicPath + : config.dev.assetsPublicPath + }, + resolve: { + extensions: ['.js', '.vue', '.json'], + alias: { + 'vue$': 'vue/dist/vue.esm.js', + '@': resolve('src'), + } + }, + module: { + rules: [ + { + test: /\.vue$/, + loader: 'vue-loader', + options: vueLoaderConfig + }, + { + test: /\.js$/, + loader: 'babel-loader', + include: [resolve('src'), resolve('test'), resolve('node_modules/webpack-dev-server/client')] + }, + { + test: /\.(png|jpe?g|gif|svg)(\?.*)?$/, + loader: 'url-loader', + options: { + limit: 10000, + name: utils.assetsPath('img/[name].[hash:7].[ext]') + } + }, + { + test: /\.(mp4|webm|ogg|mp3|wav|flac|aac)(\?.*)?$/, + loader: 'url-loader', + options: { + limit: 10000, + name: utils.assetsPath('media/[name].[hash:7].[ext]') + } + }, + { + test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/, + loader: 'url-loader', + options: { + limit: 10000, + name: utils.assetsPath('fonts/[name].[hash:7].[ext]') + } + } + ] + }, + node: { + // prevent webpack from injecting useless setImmediate polyfill because Vue + // source contains it (although only uses it if it's native). + setImmediate: false, + // prevent webpack from injecting mocks to Node native modules + // that does not make sense for the client + dgram: 'empty', + fs: 'empty', + net: 'empty', + tls: 'empty', + child_process: 'empty' + } +} diff --git a/love-yuan/build/webpack.dev.conf.js b/love-yuan/build/webpack.dev.conf.js new file mode 100755 index 0000000..070ae22 --- /dev/null +++ b/love-yuan/build/webpack.dev.conf.js @@ -0,0 +1,95 @@ +'use strict' +const utils = require('./utils') +const webpack = require('webpack') +const config = require('../config') +const merge = require('webpack-merge') +const path = require('path') +const baseWebpackConfig = require('./webpack.base.conf') +const CopyWebpackPlugin = require('copy-webpack-plugin') +const HtmlWebpackPlugin = require('html-webpack-plugin') +const FriendlyErrorsPlugin = require('friendly-errors-webpack-plugin') +const portfinder = require('portfinder') + +const HOST = process.env.HOST +const PORT = process.env.PORT && Number(process.env.PORT) + +const devWebpackConfig = merge(baseWebpackConfig, { + module: { + rules: utils.styleLoaders({ sourceMap: config.dev.cssSourceMap, usePostCSS: true }) + }, + // cheap-module-eval-source-map is faster for development + devtool: config.dev.devtool, + + // these devServer options should be customized in /config/index.js + devServer: { + clientLogLevel: 'warning', + historyApiFallback: { + rewrites: [ + { from: /.*/, to: path.posix.join(config.dev.assetsPublicPath, 'index.html') }, + ], + }, + hot: true, + contentBase: false, // since we use CopyWebpackPlugin. + compress: true, + host: HOST || config.dev.host, + port: PORT || config.dev.port, + open: config.dev.autoOpenBrowser, + overlay: config.dev.errorOverlay + ? { warnings: false, errors: true } + : false, + publicPath: config.dev.assetsPublicPath, + proxy: config.dev.proxyTable, + quiet: true, // necessary for FriendlyErrorsPlugin + watchOptions: { + poll: config.dev.poll, + } + }, + plugins: [ + new webpack.DefinePlugin({ + 'process.env': require('../config/dev.env') + }), + new webpack.HotModuleReplacementPlugin(), + new webpack.NamedModulesPlugin(), // HMR shows correct file names in console on update. + new webpack.NoEmitOnErrorsPlugin(), + // https://github.com/ampedandwired/html-webpack-plugin + new HtmlWebpackPlugin({ + filename: 'index.html', + template: 'index.html', + inject: true + }), + // copy custom static assets + new CopyWebpackPlugin([ + { + from: path.resolve(__dirname, '../static'), + to: config.dev.assetsSubDirectory, + ignore: ['.*'] + } + ]) + ] +}) + +module.exports = new Promise((resolve, reject) => { + portfinder.basePort = process.env.PORT || config.dev.port + portfinder.getPort((err, port) => { + if (err) { + reject(err) + } else { + // publish the new Port, necessary for e2e tests + process.env.PORT = port + // add port to devServer config + devWebpackConfig.devServer.port = port + + // Add FriendlyErrorsPlugin + devWebpackConfig.plugins.push(new FriendlyErrorsPlugin({ + compilationSuccessInfo: { + messages: [`Your application is running here: http://${devWebpackConfig.devServer.host}:${port}`], + }, + onErrors: config.dev.notifyOnErrors + ? utils.createNotifierCallback() + : undefined + })) + + resolve(devWebpackConfig) + } + }) +}) diff --git a/love-yuan/build/webpack.prod.conf.js b/love-yuan/build/webpack.prod.conf.js new file mode 100644 index 0000000..d9f99f6 --- /dev/null +++ b/love-yuan/build/webpack.prod.conf.js @@ -0,0 +1,145 @@ +'use strict' +const path = require('path') +const utils = require('./utils') +const webpack = require('webpack') +const config = require('../config') +const merge = require('webpack-merge') +const baseWebpackConfig = require('./webpack.base.conf') +const CopyWebpackPlugin = require('copy-webpack-plugin') +const HtmlWebpackPlugin = require('html-webpack-plugin') +const ExtractTextPlugin = require('extract-text-webpack-plugin') +const OptimizeCSSPlugin = require('optimize-css-assets-webpack-plugin') +const UglifyJsPlugin = require('uglifyjs-webpack-plugin') + +const env = require('../config/prod.env') + +const webpackConfig = merge(baseWebpackConfig, { + module: { + rules: utils.styleLoaders({ + sourceMap: config.build.productionSourceMap, + extract: true, + usePostCSS: true + }) + }, + devtool: config.build.productionSourceMap ? config.build.devtool : false, + output: { + path: config.build.assetsRoot, + filename: utils.assetsPath('js/[name].[chunkhash].js'), + chunkFilename: utils.assetsPath('js/[id].[chunkhash].js') + }, + plugins: [ + // http://vuejs.github.io/vue-loader/en/workflow/production.html + new webpack.DefinePlugin({ + 'process.env': env + }), + new UglifyJsPlugin({ + uglifyOptions: { + compress: { + warnings: false + } + }, + sourceMap: config.build.productionSourceMap, + parallel: true + }), + // extract css into its own file + new ExtractTextPlugin({ + filename: utils.assetsPath('css/[name].[contenthash].css'), + // Setting the following option to `false` will not extract CSS from codesplit chunks. + // Their CSS will instead be inserted dynamically with style-loader when the codesplit chunk has been loaded by webpack. + // It's currently set to `true` because we are seeing that sourcemaps are included in the codesplit bundle as well when it's `false`, + // increasing file size: https://github.com/vuejs-templates/webpack/issues/1110 + allChunks: true, + }), + // Compress extracted CSS. We are using this plugin so that possible + // duplicated CSS from different components can be deduped. + new OptimizeCSSPlugin({ + cssProcessorOptions: config.build.productionSourceMap + ? { safe: true, map: { inline: false } } + : { safe: true } + }), + // generate dist index.html with correct asset hash for caching. + // you can customize output by editing /index.html + // see https://github.com/ampedandwired/html-webpack-plugin + new HtmlWebpackPlugin({ + filename: config.build.index, + template: 'index.html', + inject: true, + minify: { + removeComments: true, + collapseWhitespace: true, + removeAttributeQuotes: true + // more options: + // https://github.com/kangax/html-minifier#options-quick-reference + }, + // necessary to consistently work with multiple chunks via CommonsChunkPlugin + chunksSortMode: 'dependency' + }), + // keep module.id stable when vendor modules does not change + new webpack.HashedModuleIdsPlugin(), + // enable scope hoisting + new webpack.optimize.ModuleConcatenationPlugin(), + // split vendor js into its own file + new webpack.optimize.CommonsChunkPlugin({ + name: 'vendor', + minChunks (module) { + // any required modules inside node_modules are extracted to vendor + return ( + module.resource && + /\.js$/.test(module.resource) && + module.resource.indexOf( + path.join(__dirname, '../node_modules') + ) === 0 + ) + } + }), + // extract webpack runtime and module manifest to its own file in order to + // prevent vendor hash from being updated whenever app bundle is updated + new webpack.optimize.CommonsChunkPlugin({ + name: 'manifest', + minChunks: Infinity + }), + // This instance extracts shared chunks from code splitted chunks and bundles them + // in a separate chunk, similar to the vendor chunk + // see: https://webpack.js.org/plugins/commons-chunk-plugin/#extra-async-commons-chunk + new webpack.optimize.CommonsChunkPlugin({ + name: 'app', + async: 'vendor-async', + children: true, + minChunks: 3 + }), + + // copy custom static assets + new CopyWebpackPlugin([ + { + from: path.resolve(__dirname, '../static'), + to: config.build.assetsSubDirectory, + ignore: ['.*'] + } + ]) + ] +}) + +if (config.build.productionGzip) { + const CompressionWebpackPlugin = require('compression-webpack-plugin') + + webpackConfig.plugins.push( + new CompressionWebpackPlugin({ + asset: '[path].gz[query]', + algorithm: 'gzip', + test: new RegExp( + '\\.(' + + config.build.productionGzipExtensions.join('|') + + ')$' + ), + threshold: 10240, + minRatio: 0.8 + }) + ) +} + +if (config.build.bundleAnalyzerReport) { + const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin + webpackConfig.plugins.push(new BundleAnalyzerPlugin()) +} + +module.exports = webpackConfig diff --git a/love-yuan/config/dev.env.js b/love-yuan/config/dev.env.js new file mode 100644 index 0000000..1e22973 --- /dev/null +++ b/love-yuan/config/dev.env.js @@ -0,0 +1,7 @@ +'use strict' +const merge = require('webpack-merge') +const prodEnv = require('./prod.env') + +module.exports = merge(prodEnv, { + NODE_ENV: '"development"' +}) diff --git a/love-yuan/config/index.js b/love-yuan/config/index.js new file mode 100644 index 0000000..1f0f155 --- /dev/null +++ b/love-yuan/config/index.js @@ -0,0 +1,69 @@ +'use strict' +// Template version: 1.3.1 +// see http://vuejs-templates.github.io/webpack for documentation. + +const path = require('path') + +module.exports = { + dev: { + + // Paths + assetsSubDirectory: 'static', + assetsPublicPath: '/', + proxyTable: {}, + + // Various Dev Server settings + host: 'localhost', // can be overwritten by process.env.HOST + port: 8080, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined + autoOpenBrowser: false, + errorOverlay: true, + notifyOnErrors: true, + poll: false, // https://webpack.js.org/configuration/dev-server/#devserver-watchoptions- + + + /** + * Source Maps + */ + + // https://webpack.js.org/configuration/devtool/#development + devtool: 'cheap-module-eval-source-map', + + // If you have problems debugging vue-files in devtools, + // set this to false - it *may* help + // https://vue-loader.vuejs.org/en/options.html#cachebusting + cacheBusting: true, + + cssSourceMap: true + }, + + build: { + // Template for index.html + index: path.resolve(__dirname, '../dist/index.html'), + + // Paths + assetsRoot: path.resolve(__dirname, '../dist'), + assetsSubDirectory: 'static', + assetsPublicPath: './', + + /** + * Source Maps + */ + + productionSourceMap: true, + // https://webpack.js.org/configuration/devtool/#production + devtool: '#source-map', + + // Gzip off by default as many popular static hosts such as + // Surge or Netlify already gzip all static assets for you. + // Before setting to `true`, make sure to: + // npm install --save-dev compression-webpack-plugin + productionGzip: false, + productionGzipExtensions: ['js', 'css'], + + // Run the build command with an extra argument to + // View the bundle analyzer report after build finishes: + // `npm run build --report` + // Set to `true` or `false` to always turn it on or off + bundleAnalyzerReport: process.env.npm_config_report + } +} diff --git a/love-yuan/config/prod.env.js b/love-yuan/config/prod.env.js new file mode 100644 index 0000000..a6f9976 --- /dev/null +++ b/love-yuan/config/prod.env.js @@ -0,0 +1,4 @@ +'use strict' +module.exports = { + NODE_ENV: '"production"' +} diff --git a/love-yuan/index.html b/love-yuan/index.html new file mode 100644 index 0000000..0a147e2 --- /dev/null +++ b/love-yuan/index.html @@ -0,0 +1,12 @@ + + + + + + ❤️ + + +
    + + + diff --git a/love-yuan/package-lock.json b/love-yuan/package-lock.json new file mode 100644 index 0000000..b19a334 --- /dev/null +++ b/love-yuan/package-lock.json @@ -0,0 +1,11007 @@ +{ + "name": "love", + "version": "1.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@babel/helper-module-imports": { + "version": "7.0.0-beta.35", + "resolved": "http://bnpm.byted.org/@babel/helper-module-imports/download/@babel/helper-module-imports-7.0.0-beta.35.tgz", + "integrity": "sha1-MI41DnMXUs200PBY3x1wSSXGTgo=", + "dev": true, + "requires": { + "@babel/types": "7.0.0-beta.35", + "lodash": "4.17.11" + } + }, + "@babel/runtime": { + "version": "7.3.1", + "resolved": "http://bnpm.byted.org/@babel/runtime/download/@babel/runtime-7.3.1.tgz", + "integrity": "sha1-V0sD6OipiY6vSocqkuogt4Rvbyo=", + "requires": { + "regenerator-runtime": "0.12.1" + }, + "dependencies": { + "regenerator-runtime": { + "version": "0.12.1", + "resolved": "http://bnpm.byted.org/regenerator-runtime/download/regenerator-runtime-0.12.1.tgz", + "integrity": "sha1-+hpxVEdkwDb4xJsToIsllMn4oN4=" + } + } + }, + "@babel/types": { + "version": "7.0.0-beta.35", + "resolved": "http://bnpm.byted.org/@babel/types/download/@babel/types-7.0.0-beta.35.tgz", + "integrity": "sha1-z5M6mpo4SEynJLM1uI2Dcm1auWA=", + "dev": true, + "requires": { + "esutils": "2.0.2", + "lodash": "4.17.11", + "to-fast-properties": "2.0.0" + }, + "dependencies": { + "to-fast-properties": { + "version": "2.0.0", + "resolved": "http://bnpm.byted.org/to-fast-properties/download/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true + } + } + }, + "@vant/icons": { + "version": "1.0.9", + "resolved": "http://bnpm.byted.org/@vant/icons/download/@vant/icons-1.0.9.tgz", + "integrity": "sha1-IHUKviRHMS4l3fW4XpjqDCrqaac=" + }, + "@vue/babel-helper-vue-jsx-merge-props": { + "version": "1.0.0-beta.2", + "resolved": "http://bnpm.byted.org/@vue/babel-helper-vue-jsx-merge-props/download/@vue/babel-helper-vue-jsx-merge-props-1.0.0-beta.2.tgz", + "integrity": "sha1-8+INd7id23pLm3p1Ny8FzTrCLZI=" + }, + "accepts": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz", + "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=", + "dev": true, + "requires": { + "mime-types": "2.1.22", + "negotiator": "0.6.1" + } + }, + "acorn": { + "version": "5.7.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz", + "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==", + "dev": true + }, + "acorn-dynamic-import": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/acorn-dynamic-import/-/acorn-dynamic-import-2.0.2.tgz", + "integrity": "sha1-x1K9IQvvZ5UBtsbLf8hPj0cVjMQ=", + "dev": true, + "requires": { + "acorn": "4.0.13" + }, + "dependencies": { + "acorn": { + "version": "4.0.13", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", + "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=", + "dev": true + } + } + }, + "ajv": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", + "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "dev": true, + "requires": { + "co": "4.6.0", + "fast-deep-equal": "1.1.0", + "fast-json-stable-stringify": "2.0.0", + "json-schema-traverse": "0.3.1" + } + }, + "ajv-keywords": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.4.0.tgz", + "integrity": "sha512-aUjdRFISbuFOl0EIZc+9e4FfZp0bDZgAdOOf30bJmw8VM9v84SHyVyxDfbWxpGYbdZD/9XoKxfHVNmxPkhwyGw==", + "dev": true + }, + "align-text": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", + "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", + "dev": true, + "requires": { + "kind-of": "3.2.2", + "longest": "1.0.1", + "repeat-string": "1.6.1" + } + }, + "alphanum-sort": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/alphanum-sort/-/alphanum-sort-1.0.2.tgz", + "integrity": "sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM=", + "dev": true + }, + "amfe-flexible": { + "version": "2.2.1", + "resolved": "http://bnpm.byted.org/amfe-flexible/download/amfe-flexible-2.2.1.tgz", + "integrity": "sha1-NT8AKJ5NOMqIoh6zhUQgMIrwtVk=" + }, + "ansi-html": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz", + "integrity": "sha1-gTWEAhliqenm/QOflA0S9WynhZ4=", + "dev": true + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "1.9.3" + } + }, + "anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "dev": true, + "requires": { + "micromatch": "3.1.10", + "normalize-path": "2.1.1" + }, + "dependencies": { + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "requires": { + "remove-trailing-separator": "1.1.0" + } + } + } + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "1.0.3" + } + }, + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "dev": true + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "dev": true + }, + "arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", + "dev": true + }, + "array-find-index": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", + "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", + "dev": true + }, + "array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", + "dev": true + }, + "array-includes": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.0.3.tgz", + "integrity": "sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0=", + "dev": true, + "requires": { + "define-properties": "1.1.3", + "es-abstract": "1.13.0" + } + }, + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "dev": true, + "requires": { + "array-uniq": "1.0.3" + } + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "dev": true + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "dev": true + }, + "asn1.js": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", + "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", + "dev": true, + "requires": { + "bn.js": "4.11.8", + "inherits": "2.0.3", + "minimalistic-assert": "1.0.1" + } + }, + "assert": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.4.1.tgz", + "integrity": "sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE=", + "dev": true, + "requires": { + "util": "0.10.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", + "dev": true + }, + "util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "dev": true, + "requires": { + "inherits": "2.0.1" + } + } + } + }, + "assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "dev": true + }, + "async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.2.tgz", + "integrity": "sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==", + "dev": true, + "requires": { + "lodash": "4.17.11" + } + }, + "async-each": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", + "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=", + "dev": true + }, + "async-limiter": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz", + "integrity": "sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg==", + "dev": true + }, + "atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "dev": true + }, + "autoprefixer": { + "version": "7.2.6", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-7.2.6.tgz", + "integrity": "sha512-Iq8TRIB+/9eQ8rbGhcP7ct5cYb/3qjNYAR2SnzLCEcwF6rvVOax8+9+fccgXk4bEhQGjOZd5TLhsksmAdsbGqQ==", + "dev": true, + "requires": { + "browserslist": "2.11.3", + "caniuse-lite": "1.0.30000938", + "normalize-range": "0.1.2", + "num2fraction": "1.2.2", + "postcss": "6.0.23", + "postcss-value-parser": "3.3.1" + } + }, + "babel-code-frame": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", + "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", + "dev": true, + "requires": { + "chalk": "1.1.3", + "esutils": "2.0.2", + "js-tokens": "3.0.2" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "babel-core": { + "version": "6.26.3", + "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz", + "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==", + "dev": true, + "requires": { + "babel-code-frame": "6.26.0", + "babel-generator": "6.26.1", + "babel-helpers": "6.24.1", + "babel-messages": "6.23.0", + "babel-register": "6.26.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "convert-source-map": "1.6.0", + "debug": "2.6.9", + "json5": "0.5.1", + "lodash": "4.17.11", + "minimatch": "3.0.4", + "path-is-absolute": "1.0.1", + "private": "0.1.8", + "slash": "1.0.0", + "source-map": "0.5.7" + }, + "dependencies": { + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "babel-generator": { + "version": "6.26.1", + "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", + "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", + "dev": true, + "requires": { + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "detect-indent": "4.0.0", + "jsesc": "1.3.0", + "lodash": "4.17.11", + "source-map": "0.5.7", + "trim-right": "1.0.1" + }, + "dependencies": { + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "babel-helper-bindify-decorators": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-bindify-decorators/-/babel-helper-bindify-decorators-6.24.1.tgz", + "integrity": "sha1-FMGeXxQte0fxmlJDHlKxzLxAozA=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-builder-binary-assignment-operator-visitor": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", + "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", + "dev": true, + "requires": { + "babel-helper-explode-assignable-expression": "6.24.1", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-call-delegate": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", + "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", + "dev": true, + "requires": { + "babel-helper-hoist-variables": "6.24.1", + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-define-map": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz", + "integrity": "sha1-pfVtq0GiX5fstJjH66ypgZ+Vvl8=", + "dev": true, + "requires": { + "babel-helper-function-name": "6.24.1", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "lodash": "4.17.11" + } + }, + "babel-helper-explode-assignable-expression": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", + "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-explode-class": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-explode-class/-/babel-helper-explode-class-6.24.1.tgz", + "integrity": "sha1-fcKjkQ3uAHBW4eMdZAztPVTqqes=", + "dev": true, + "requires": { + "babel-helper-bindify-decorators": "6.24.1", + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", + "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", + "dev": true, + "requires": { + "babel-helper-get-function-arity": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-get-function-arity": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", + "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-hoist-variables": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", + "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-optimise-call-expression": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz", + "integrity": "sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-regex": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", + "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "lodash": "4.17.11" + } + }, + "babel-helper-remap-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", + "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", + "dev": true, + "requires": { + "babel-helper-function-name": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-replace-supers": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz", + "integrity": "sha1-v22/5Dk40XNpohPKiov3S2qQqxo=", + "dev": true, + "requires": { + "babel-helper-optimise-call-expression": "6.24.1", + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-helper-vue-jsx-merge-props": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/babel-helper-vue-jsx-merge-props/-/babel-helper-vue-jsx-merge-props-2.0.3.tgz", + "integrity": "sha512-gsLiKK7Qrb7zYJNgiXKpXblxbV5ffSwR0f5whkPAaBAR4fhi6bwRZxX9wBlIc5M/v8CCkXUbXZL4N/nSE97cqg==", + "dev": true + }, + "babel-helpers": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", + "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } + }, + "babel-loader": { + "version": "7.1.5", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-7.1.5.tgz", + "integrity": "sha512-iCHfbieL5d1LfOQeeVJEUyD9rTwBcP/fcEbRCfempxTDuqrKpu0AZjLAQHEQa3Yqyj9ORKe2iHfoj4rHLf7xpw==", + "dev": true, + "requires": { + "find-cache-dir": "1.0.0", + "loader-utils": "1.2.3", + "mkdirp": "0.5.1" + } + }, + "babel-messages": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", + "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-check-es2015-constants": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", + "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-component": { + "version": "1.1.1", + "resolved": "http://bnpm.byted.org/babel-plugin-component/download/babel-plugin-component-1.1.1.tgz", + "integrity": "sha1-mwI6I/9cmq4P1WxaGLnKuMTUXuo=", + "dev": true, + "requires": { + "@babel/helper-module-imports": "7.0.0-beta.35" + } + }, + "babel-plugin-import": { + "version": "1.11.0", + "resolved": "http://bnpm.byted.org/babel-plugin-import/download/babel-plugin-import-1.11.0.tgz", + "integrity": "sha1-eKyQjmsiUga6u3NOGerl941tEDU=", + "dev": true, + "requires": { + "@babel/helper-module-imports": "7.0.0", + "@babel/runtime": "7.3.1" + }, + "dependencies": { + "@babel/helper-module-imports": { + "version": "7.0.0", + "resolved": "http://bnpm.byted.org/@babel/helper-module-imports/download/@babel/helper-module-imports-7.0.0.tgz", + "integrity": "sha1-lggbcRHkhtpNLNlxrRpP4hbMLj0=", + "dev": true, + "requires": { + "@babel/types": "7.3.3" + } + }, + "@babel/types": { + "version": "7.3.3", + "resolved": "http://bnpm.byted.org/@babel/types/download/@babel/types-7.3.3.tgz", + "integrity": "sha1-bETRzawqdiW2JCFmV9W8bBB6tDY=", + "dev": true, + "requires": { + "esutils": "2.0.2", + "lodash": "4.17.11", + "to-fast-properties": "2.0.0" + } + }, + "to-fast-properties": { + "version": "2.0.0", + "resolved": "http://bnpm.byted.org/to-fast-properties/download/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true + } + } + }, + "babel-plugin-syntax-async-functions": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", + "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", + "dev": true + }, + "babel-plugin-syntax-async-generators": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-6.13.0.tgz", + "integrity": "sha1-a8lj67FuzLrmuStZbrfzXDQqi5o=", + "dev": true + }, + "babel-plugin-syntax-class-properties": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz", + "integrity": "sha1-1+sjt5oxf4VDlixQW4J8fWysJ94=", + "dev": true + }, + "babel-plugin-syntax-decorators": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz", + "integrity": "sha1-MSVjtNvePMgGzuPkFszurd0RrAs=", + "dev": true + }, + "babel-plugin-syntax-dynamic-import": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz", + "integrity": "sha1-jWomIpyDdFqZgqRBBRVyyqF5sdo=", + "dev": true + }, + "babel-plugin-syntax-exponentiation-operator": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", + "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=", + "dev": true + }, + "babel-plugin-syntax-jsx": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", + "integrity": "sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY=", + "dev": true + }, + "babel-plugin-syntax-object-rest-spread": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", + "integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=", + "dev": true + }, + "babel-plugin-syntax-trailing-function-commas": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", + "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=", + "dev": true + }, + "babel-plugin-transform-async-generator-functions": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-6.24.1.tgz", + "integrity": "sha1-8FiQAUX9PpkHpt3yjaWfIVJYpds=", + "dev": true, + "requires": { + "babel-helper-remap-async-to-generator": "6.24.1", + "babel-plugin-syntax-async-generators": "6.13.0", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-async-to-generator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", + "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", + "dev": true, + "requires": { + "babel-helper-remap-async-to-generator": "6.24.1", + "babel-plugin-syntax-async-functions": "6.13.0", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-class-properties": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.24.1.tgz", + "integrity": "sha1-anl2PqYdM9NvN7YRqp3vgagbRqw=", + "dev": true, + "requires": { + "babel-helper-function-name": "6.24.1", + "babel-plugin-syntax-class-properties": "6.13.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } + }, + "babel-plugin-transform-decorators": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.24.1.tgz", + "integrity": "sha1-eIAT2PjGtSIr33s0Q5Df13Vp4k0=", + "dev": true, + "requires": { + "babel-helper-explode-class": "6.24.1", + "babel-plugin-syntax-decorators": "6.13.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-arrow-functions": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz", + "integrity": "sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-block-scoped-functions": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz", + "integrity": "sha1-u8UbSflk1wy42OC5ToICRs46YUE=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-block-scoping": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz", + "integrity": "sha1-1w9SmcEwjQXBL0Y4E7CgnnOxiV8=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0", + "lodash": "4.17.11" + } + }, + "babel-plugin-transform-es2015-classes": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz", + "integrity": "sha1-WkxYpQyclGHlZLSyo7+ryXolhNs=", + "dev": true, + "requires": { + "babel-helper-define-map": "6.26.0", + "babel-helper-function-name": "6.24.1", + "babel-helper-optimise-call-expression": "6.24.1", + "babel-helper-replace-supers": "6.24.1", + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-computed-properties": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz", + "integrity": "sha1-b+Ko0WiV1WNPTNmZttNICjCBWbM=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } + }, + "babel-plugin-transform-es2015-destructuring": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", + "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-duplicate-keys": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz", + "integrity": "sha1-c+s9MQypaePvnskcU3QabxV2Qj4=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-for-of": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz", + "integrity": "sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-function-name": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", + "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", + "dev": true, + "requires": { + "babel-helper-function-name": "6.24.1", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-literals": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz", + "integrity": "sha1-T1SgLWzWbPkVKAAZox0xklN3yi4=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-modules-amd": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz", + "integrity": "sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ=", + "dev": true, + "requires": { + "babel-plugin-transform-es2015-modules-commonjs": "6.26.2", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } + }, + "babel-plugin-transform-es2015-modules-commonjs": { + "version": "6.26.2", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz", + "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==", + "dev": true, + "requires": { + "babel-plugin-transform-strict-mode": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-modules-systemjs": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz", + "integrity": "sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM=", + "dev": true, + "requires": { + "babel-helper-hoist-variables": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } + }, + "babel-plugin-transform-es2015-modules-umd": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz", + "integrity": "sha1-rJl+YoXNGO1hdq22B9YCNErThGg=", + "dev": true, + "requires": { + "babel-plugin-transform-es2015-modules-amd": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0" + } + }, + "babel-plugin-transform-es2015-object-super": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz", + "integrity": "sha1-JM72muIcuDp/hgPa0CH1cusnj40=", + "dev": true, + "requires": { + "babel-helper-replace-supers": "6.24.1", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-parameters": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", + "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", + "dev": true, + "requires": { + "babel-helper-call-delegate": "6.24.1", + "babel-helper-get-function-arity": "6.24.1", + "babel-runtime": "6.26.0", + "babel-template": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-shorthand-properties": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz", + "integrity": "sha1-JPh11nIch2YbvZmkYi5R8U3jiqA=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-spread": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", + "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-sticky-regex": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", + "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", + "dev": true, + "requires": { + "babel-helper-regex": "6.26.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-es2015-template-literals": { + "version": "6.22.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz", + "integrity": "sha1-qEs0UPfp+PH2g51taH2oS7EjbY0=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-typeof-symbol": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz", + "integrity": "sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-es2015-unicode-regex": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", + "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", + "dev": true, + "requires": { + "babel-helper-regex": "6.26.0", + "babel-runtime": "6.26.0", + "regexpu-core": "2.0.0" + } + }, + "babel-plugin-transform-exponentiation-operator": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", + "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", + "dev": true, + "requires": { + "babel-helper-builder-binary-assignment-operator-visitor": "6.24.1", + "babel-plugin-syntax-exponentiation-operator": "6.13.0", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-object-rest-spread": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz", + "integrity": "sha1-DzZpLVD+9rfi1LOsFHgTepY7ewY=", + "dev": true, + "requires": { + "babel-plugin-syntax-object-rest-spread": "6.13.0", + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-regenerator": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz", + "integrity": "sha1-4HA2lvveJ/Cj78rPi03KL3s6jy8=", + "dev": true, + "requires": { + "regenerator-transform": "0.10.1" + } + }, + "babel-plugin-transform-runtime": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-runtime/-/babel-plugin-transform-runtime-6.23.0.tgz", + "integrity": "sha1-iEkNRGUC6puOfvsP4J7E2ZR5se4=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0" + } + }, + "babel-plugin-transform-strict-mode": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", + "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0" + } + }, + "babel-plugin-transform-vue-jsx": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-vue-jsx/-/babel-plugin-transform-vue-jsx-3.7.0.tgz", + "integrity": "sha512-W39X07/n3oJMQd8tALBO+440NraGSF//Lo1ydd/9Nme3+QiRGFBb1Q39T9iixh0jZPPbfv3so18tNoIgLatymw==", + "dev": true, + "requires": { + "esutils": "2.0.2" + } + }, + "babel-preset-env": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/babel-preset-env/-/babel-preset-env-1.7.0.tgz", + "integrity": "sha512-9OR2afuKDneX2/q2EurSftUYM0xGu4O2D9adAhVfADDhrYDaxXV0rBbevVYoY9n6nyX1PmQW/0jtpJvUNr9CHg==", + "dev": true, + "requires": { + "babel-plugin-check-es2015-constants": "6.22.0", + "babel-plugin-syntax-trailing-function-commas": "6.22.0", + "babel-plugin-transform-async-to-generator": "6.24.1", + "babel-plugin-transform-es2015-arrow-functions": "6.22.0", + "babel-plugin-transform-es2015-block-scoped-functions": "6.22.0", + "babel-plugin-transform-es2015-block-scoping": "6.26.0", + "babel-plugin-transform-es2015-classes": "6.24.1", + "babel-plugin-transform-es2015-computed-properties": "6.24.1", + "babel-plugin-transform-es2015-destructuring": "6.23.0", + "babel-plugin-transform-es2015-duplicate-keys": "6.24.1", + "babel-plugin-transform-es2015-for-of": "6.23.0", + "babel-plugin-transform-es2015-function-name": "6.24.1", + "babel-plugin-transform-es2015-literals": "6.22.0", + "babel-plugin-transform-es2015-modules-amd": "6.24.1", + "babel-plugin-transform-es2015-modules-commonjs": "6.26.2", + "babel-plugin-transform-es2015-modules-systemjs": "6.24.1", + "babel-plugin-transform-es2015-modules-umd": "6.24.1", + "babel-plugin-transform-es2015-object-super": "6.24.1", + "babel-plugin-transform-es2015-parameters": "6.24.1", + "babel-plugin-transform-es2015-shorthand-properties": "6.24.1", + "babel-plugin-transform-es2015-spread": "6.22.0", + "babel-plugin-transform-es2015-sticky-regex": "6.24.1", + "babel-plugin-transform-es2015-template-literals": "6.22.0", + "babel-plugin-transform-es2015-typeof-symbol": "6.23.0", + "babel-plugin-transform-es2015-unicode-regex": "6.24.1", + "babel-plugin-transform-exponentiation-operator": "6.24.1", + "babel-plugin-transform-regenerator": "6.26.0", + "browserslist": "3.2.8", + "invariant": "2.2.4", + "semver": "5.6.0" + }, + "dependencies": { + "browserslist": { + "version": "3.2.8", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-3.2.8.tgz", + "integrity": "sha512-WHVocJYavUwVgVViC0ORikPHQquXwVh939TaelZ4WDqpWgTX/FsGhl/+P4qBUAGcRvtOgDgC+xftNWWp2RUTAQ==", + "dev": true, + "requires": { + "caniuse-lite": "1.0.30000938", + "electron-to-chromium": "1.3.113" + } + } + } + }, + "babel-preset-stage-2": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-preset-stage-2/-/babel-preset-stage-2-6.24.1.tgz", + "integrity": "sha1-2eKWD7PXEYfw5k7sYrwHdnIZvcE=", + "dev": true, + "requires": { + "babel-plugin-syntax-dynamic-import": "6.18.0", + "babel-plugin-transform-class-properties": "6.24.1", + "babel-plugin-transform-decorators": "6.24.1", + "babel-preset-stage-3": "6.24.1" + } + }, + "babel-preset-stage-3": { + "version": "6.24.1", + "resolved": "https://registry.npmjs.org/babel-preset-stage-3/-/babel-preset-stage-3-6.24.1.tgz", + "integrity": "sha1-g2raCp56f6N8sTj7kyb4eTSkg5U=", + "dev": true, + "requires": { + "babel-plugin-syntax-trailing-function-commas": "6.22.0", + "babel-plugin-transform-async-generator-functions": "6.24.1", + "babel-plugin-transform-async-to-generator": "6.24.1", + "babel-plugin-transform-exponentiation-operator": "6.24.1", + "babel-plugin-transform-object-rest-spread": "6.26.0" + } + }, + "babel-register": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", + "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", + "dev": true, + "requires": { + "babel-core": "6.26.3", + "babel-runtime": "6.26.0", + "core-js": "2.6.5", + "home-or-tmp": "2.0.0", + "lodash": "4.17.11", + "mkdirp": "0.5.1", + "source-map-support": "0.4.18" + } + }, + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "dev": true, + "requires": { + "core-js": "2.6.5", + "regenerator-runtime": "0.11.1" + } + }, + "babel-template": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", + "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-traverse": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "lodash": "4.17.11" + } + }, + "babel-traverse": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", + "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", + "dev": true, + "requires": { + "babel-code-frame": "6.26.0", + "babel-messages": "6.23.0", + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "babylon": "6.18.0", + "debug": "2.6.9", + "globals": "9.18.0", + "invariant": "2.2.4", + "lodash": "4.17.11" + } + }, + "babel-types": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", + "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "esutils": "2.0.2", + "lodash": "4.17.11", + "to-fast-properties": "1.0.3" + } + }, + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "dev": true, + "requires": { + "cache-base": "1.0.1", + "class-utils": "0.3.6", + "component-emitter": "1.2.1", + "define-property": "1.0.0", + "isobject": "3.0.1", + "mixin-deep": "1.3.1", + "pascalcase": "0.1.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "1.0.2" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "6.0.2" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "6.0.2" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "1.0.0", + "is-data-descriptor": "1.0.0", + "kind-of": "6.0.2" + } + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true + } + } + }, + "base64-js": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.0.tgz", + "integrity": "sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==", + "dev": true + }, + "batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", + "dev": true + }, + "bfj-node4": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/bfj-node4/-/bfj-node4-5.3.1.tgz", + "integrity": "sha512-SOmOsowQWfXc7ybFARsK3C4MCOWzERaOMV/Fl3Tgjs+5dJWyzo3oa127jL44eMbQiAN17J7SvAs2TRxEScTUmg==", + "dev": true, + "requires": { + "bluebird": "3.5.3", + "check-types": "7.4.0", + "tryer": "1.0.1" + } + }, + "big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true + }, + "binary-extensions": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.0.tgz", + "integrity": "sha512-EgmjVLMn22z7eGGv3kcnHwSnJXmFHjISTY9E/S5lIcTD3Oxw05QTcBLNkJFzcb3cNueUdF/IN4U+d78V0zO8Hw==", + "dev": true + }, + "bluebird": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.3.tgz", + "integrity": "sha512-/qKPUQlaW1OyR51WeCPBvRnAlnZFUJkCSG5HzGnuIqhgyJtF+T94lFnn33eiazjRm2LAHVy2guNnaq48X9SJuw==", + "dev": true + }, + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", + "dev": true + }, + "body-parser": { + "version": "1.18.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.3.tgz", + "integrity": "sha1-WykhmP/dVTs6DyDe0FkrlWlVyLQ=", + "dev": true, + "requires": { + "bytes": "3.0.0", + "content-type": "1.0.4", + "debug": "2.6.9", + "depd": "1.1.2", + "http-errors": "1.6.3", + "iconv-lite": "0.4.23", + "on-finished": "2.3.0", + "qs": "6.5.2", + "raw-body": "2.3.3", + "type-is": "1.6.16" + } + }, + "bonjour": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz", + "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=", + "dev": true, + "requires": { + "array-flatten": "2.1.2", + "deep-equal": "1.0.1", + "dns-equal": "1.0.0", + "dns-txt": "2.0.2", + "multicast-dns": "6.2.3", + "multicast-dns-service-types": "1.1.0" + }, + "dependencies": { + "array-flatten": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", + "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", + "dev": true + } + } + }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "1.1.0", + "array-unique": "0.3.2", + "extend-shallow": "2.0.1", + "fill-range": "4.0.0", + "isobject": "3.0.1", + "repeat-element": "1.1.3", + "snapdragon": "0.8.2", + "snapdragon-node": "2.1.1", + "split-string": "3.1.0", + "to-regex": "3.0.2" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "0.1.1" + } + } + } + }, + "brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", + "dev": true + }, + "browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dev": true, + "requires": { + "buffer-xor": "1.0.3", + "cipher-base": "1.0.4", + "create-hash": "1.2.0", + "evp_bytestokey": "1.0.3", + "inherits": "2.0.3", + "safe-buffer": "5.1.2" + } + }, + "browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "dev": true, + "requires": { + "browserify-aes": "1.2.0", + "browserify-des": "1.0.2", + "evp_bytestokey": "1.0.3" + } + }, + "browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "dev": true, + "requires": { + "cipher-base": "1.0.4", + "des.js": "1.0.0", + "inherits": "2.0.3", + "safe-buffer": "5.1.2" + } + }, + "browserify-rsa": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", + "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "dev": true, + "requires": { + "bn.js": "4.11.8", + "randombytes": "2.0.6" + } + }, + "browserify-sign": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", + "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", + "dev": true, + "requires": { + "bn.js": "4.11.8", + "browserify-rsa": "4.0.1", + "create-hash": "1.2.0", + "create-hmac": "1.1.7", + "elliptic": "6.4.1", + "inherits": "2.0.3", + "parse-asn1": "5.1.4" + } + }, + "browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "dev": true, + "requires": { + "pako": "1.0.8" + } + }, + "browserslist": { + "version": "2.11.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-2.11.3.tgz", + "integrity": "sha512-yWu5cXT7Av6mVwzWc8lMsJMHWn4xyjSuGYi4IozbVTLUOEYPSagUB8kiMDUHA1fS3zjr8nkxkn9jdvug4BBRmA==", + "dev": true, + "requires": { + "caniuse-lite": "1.0.30000938", + "electron-to-chromium": "1.3.113" + } + }, + "buffer": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", + "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", + "dev": true, + "requires": { + "base64-js": "1.3.0", + "ieee754": "1.1.12", + "isarray": "1.0.0" + } + }, + "buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", + "dev": true + }, + "buffer-indexof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz", + "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==", + "dev": true + }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", + "dev": true + }, + "builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", + "dev": true + }, + "bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", + "dev": true + }, + "cacache": { + "version": "10.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-10.0.4.tgz", + "integrity": "sha512-Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA==", + "dev": true, + "requires": { + "bluebird": "3.5.3", + "chownr": "1.1.1", + "glob": "7.1.3", + "graceful-fs": "4.1.15", + "lru-cache": "4.1.5", + "mississippi": "2.0.0", + "mkdirp": "0.5.1", + "move-concurrently": "1.0.1", + "promise-inflight": "1.0.1", + "rimraf": "2.6.3", + "ssri": "5.3.0", + "unique-filename": "1.1.1", + "y18n": "4.0.0" + } + }, + "cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "dev": true, + "requires": { + "collection-visit": "1.0.0", + "component-emitter": "1.2.1", + "get-value": "2.0.6", + "has-value": "1.0.0", + "isobject": "3.0.1", + "set-value": "2.0.0", + "to-object-path": "0.3.0", + "union-value": "1.0.0", + "unset-value": "1.0.0" + } + }, + "camel-case": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-3.0.0.tgz", + "integrity": "sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M=", + "dev": true, + "requires": { + "no-case": "2.3.2", + "upper-case": "1.1.3" + } + }, + "camelcase": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", + "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", + "dev": true + }, + "camelcase-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", + "dev": true, + "requires": { + "camelcase": "2.1.1", + "map-obj": "1.0.1" + }, + "dependencies": { + "camelcase": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", + "dev": true + } + } + }, + "caniuse-api": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-1.6.1.tgz", + "integrity": "sha1-tTTnxzTE+B7F++isoq0kNUuWLGw=", + "dev": true, + "requires": { + "browserslist": "1.7.7", + "caniuse-db": "1.0.30000938", + "lodash.memoize": "4.1.2", + "lodash.uniq": "4.5.0" + }, + "dependencies": { + "browserslist": { + "version": "1.7.7", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-1.7.7.tgz", + "integrity": "sha1-C9dnBCWL6CmyOYu1Dkti0aFmsLk=", + "dev": true, + "requires": { + "caniuse-db": "1.0.30000938", + "electron-to-chromium": "1.3.113" + } + } + } + }, + "caniuse-db": { + "version": "1.0.30000938", + "resolved": "https://registry.npmjs.org/caniuse-db/-/caniuse-db-1.0.30000938.tgz", + "integrity": "sha512-1lbcoAGPQFUYOdY7sxpsl8ZDBfn5cyn80XuYnZwk7N4Qp7Behw7uxZCH5jjH2qWTV2WM6hgjvDVpP/uV3M/l9g==", + "dev": true + }, + "caniuse-lite": { + "version": "1.0.30000938", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000938.tgz", + "integrity": "sha512-ekW8NQ3/FvokviDxhdKLZZAx7PptXNwxKgXtnR5y+PR3hckwuP3yJ1Ir+4/c97dsHNqtAyfKUGdw8P4EYzBNgw==", + "dev": true + }, + "center-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", + "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", + "dev": true, + "requires": { + "align-text": "0.1.4", + "lazy-cache": "1.0.4" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "3.2.1", + "escape-string-regexp": "1.0.5", + "supports-color": "5.5.0" + } + }, + "check-types": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/check-types/-/check-types-7.4.0.tgz", + "integrity": "sha512-YbulWHdfP99UfZ73NcUDlNJhEIDgm9Doq9GhpyXbF+7Aegi3CVV7qqMCKTTqJxlvEvnQBp9IA+dxsGN6xK/nSg==", + "dev": true + }, + "chokidar": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.2.tgz", + "integrity": "sha512-IwXUx0FXc5ibYmPC2XeEj5mpXoV66sR+t3jqu2NS2GYwCktt3KF1/Qqjws/NkegajBA4RbZ5+DDwlOiJsxDHEg==", + "dev": true, + "requires": { + "anymatch": "2.0.0", + "async-each": "1.0.1", + "braces": "2.3.2", + "fsevents": "1.2.7", + "glob-parent": "3.1.0", + "inherits": "2.0.3", + "is-binary-path": "1.0.1", + "is-glob": "4.0.0", + "normalize-path": "3.0.0", + "path-is-absolute": "1.0.1", + "readdirp": "2.2.1", + "upath": "1.1.0" + } + }, + "chownr": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz", + "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==", + "dev": true + }, + "cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dev": true, + "requires": { + "inherits": "2.0.3", + "safe-buffer": "5.1.2" + } + }, + "clap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/clap/-/clap-1.2.3.tgz", + "integrity": "sha512-4CoL/A3hf90V3VIEjeuhSvlGFEHKzOz+Wfc2IVZc+FaUgU0ZQafJTP49fvnULipOPcAfqhyI2duwQyns6xqjYA==", + "dev": true, + "requires": { + "chalk": "1.1.3" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "dev": true, + "requires": { + "arr-union": "3.1.0", + "define-property": "0.2.5", + "isobject": "3.0.1", + "static-extend": "0.1.2" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "0.1.6" + } + } + } + }, + "clean-css": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.1.tgz", + "integrity": "sha512-4ZxI6dy4lrY6FHzfiy1aEOXgu4LIsW2MhwG0VBKdcoGoH/XLFgaHSdLTGr4O8Be6A8r3MOphEiI8Gc1n0ecf3g==", + "dev": true, + "requires": { + "source-map": "0.6.1" + } + }, + "cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "dev": true, + "requires": { + "restore-cursor": "2.0.0" + } + }, + "cli-spinners": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-1.3.1.tgz", + "integrity": "sha512-1QL4544moEsDVH9T/l6Cemov/37iv1RtoKf7NJ04A60+4MREXNfx/QvavbH6QoGdsD4N4Mwy49cmaINR/o2mdg==", + "dev": true + }, + "cliui": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", + "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", + "dev": true, + "requires": { + "center-align": "0.1.3", + "right-align": "0.1.3", + "wordwrap": "0.0.2" + } + }, + "clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", + "dev": true + }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "dev": true + }, + "coa": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/coa/-/coa-1.0.4.tgz", + "integrity": "sha1-qe8VNmDWqGqL3sAomlxoTSF0Mv0=", + "dev": true, + "requires": { + "q": "1.5.1" + } + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "dev": true + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "dev": true, + "requires": { + "map-visit": "1.0.0", + "object-visit": "1.0.1" + } + }, + "color": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/color/-/color-0.11.4.tgz", + "integrity": "sha1-bXtcdPtl6EHNSHkq0e1eB7kE12Q=", + "dev": true, + "requires": { + "clone": "1.0.4", + "color-convert": "1.9.3", + "color-string": "0.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "color-string": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-0.3.0.tgz", + "integrity": "sha1-J9RvtnAlxcL6JZk7+/V55HhBuZE=", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "colormin": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/colormin/-/colormin-1.1.2.tgz", + "integrity": "sha1-6i90IKcrlogaOKrlnsEkpvcpgTM=", + "dev": true, + "requires": { + "color": "0.11.4", + "css-color-names": "0.0.4", + "has": "1.0.3" + } + }, + "colors": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", + "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=", + "dev": true + }, + "commander": { + "version": "2.17.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz", + "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==", + "dev": true + }, + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "dev": true + }, + "component-emitter": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", + "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", + "dev": true + }, + "compressible": { + "version": "2.0.16", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.16.tgz", + "integrity": "sha512-JQfEOdnI7dASwCuSPWIeVYwc/zMsu/+tRhoUvEfXz2gxOA2DNjmG5vhtFdBlhWPPGo+RdT9S3tgc/uH5qgDiiA==", + "dev": true, + "requires": { + "mime-db": "1.38.0" + } + }, + "compression": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.3.tgz", + "integrity": "sha512-HSjyBG5N1Nnz7tF2+O7A9XUhyjru71/fwgNb7oIsEVHR0WShfs2tIS/EySLgiTe98aOK18YDlMXpzjCXY/n9mg==", + "dev": true, + "requires": { + "accepts": "1.3.5", + "bytes": "3.0.0", + "compressible": "2.0.16", + "debug": "2.6.9", + "on-headers": "1.0.1", + "safe-buffer": "5.1.2", + "vary": "1.1.2" + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "dev": true, + "requires": { + "buffer-from": "1.1.1", + "inherits": "2.0.3", + "readable-stream": "2.3.6", + "typedarray": "0.0.6" + } + }, + "connect-history-api-fallback": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", + "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==", + "dev": true + }, + "console-browserify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", + "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", + "dev": true, + "requires": { + "date-now": "0.1.4" + } + }, + "consolidate": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/consolidate/-/consolidate-0.14.5.tgz", + "integrity": "sha1-WiUEe8dvcwcmZ8jLUsmJiI9JTGM=", + "dev": true, + "requires": { + "bluebird": "3.5.3" + } + }, + "constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", + "dev": true + }, + "content-disposition": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", + "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=", + "dev": true + }, + "content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "dev": true + }, + "convert-source-map": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz", + "integrity": "sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==", + "dev": true, + "requires": { + "safe-buffer": "5.1.2" + } + }, + "cookie": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", + "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=", + "dev": true + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", + "dev": true + }, + "copy-concurrently": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", + "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", + "dev": true, + "requires": { + "aproba": "1.2.0", + "fs-write-stream-atomic": "1.0.10", + "iferr": "0.1.5", + "mkdirp": "0.5.1", + "rimraf": "2.6.3", + "run-queue": "1.0.3" + } + }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", + "dev": true + }, + "copy-webpack-plugin": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-4.6.0.tgz", + "integrity": "sha512-Y+SQCF+0NoWQryez2zXn5J5knmr9z/9qSQt7fbL78u83rxmigOy8X5+BFn8CFSuX+nKT8gpYwJX68ekqtQt6ZA==", + "dev": true, + "requires": { + "cacache": "10.0.4", + "find-cache-dir": "1.0.0", + "globby": "7.1.1", + "is-glob": "4.0.0", + "loader-utils": "1.2.3", + "minimatch": "3.0.4", + "p-limit": "1.3.0", + "serialize-javascript": "1.6.1" + } + }, + "core-js": { + "version": "2.6.5", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.5.tgz", + "integrity": "sha512-klh/kDpwX8hryYL14M9w/xei6vrv6sE8gTHDG7/T/+SEovB/G4ejwcfE/CBzO6Edsu+OETZMZ3wcX/EjUkrl5A==", + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "cosmiconfig": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-4.0.0.tgz", + "integrity": "sha512-6e5vDdrXZD+t5v0L8CrurPeybg4Fmf+FCSYxXKYVAqLUtyCSbuyqE059d0kDthTNRzKVjL7QMgNpEUlsoYH3iQ==", + "dev": true, + "requires": { + "is-directory": "0.3.1", + "js-yaml": "3.12.1", + "parse-json": "4.0.0", + "require-from-string": "2.0.2" + }, + "dependencies": { + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true + }, + "js-yaml": { + "version": "3.12.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.12.1.tgz", + "integrity": "sha512-um46hB9wNOKlwkHgiuyEVAybXBjwFUV0Z/RaHJblRd9DXltue9FTYvzCr9ErQrK9Adz5MU4gHWVaNUfdmrC8qA==", + "dev": true, + "requires": { + "argparse": "1.0.10", + "esprima": "4.0.1" + } + } + } + }, + "create-ecdh": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", + "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", + "dev": true, + "requires": { + "bn.js": "4.11.8", + "elliptic": "6.4.1" + } + }, + "create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "dev": true, + "requires": { + "cipher-base": "1.0.4", + "inherits": "2.0.3", + "md5.js": "1.3.5", + "ripemd160": "2.0.2", + "sha.js": "2.4.11" + } + }, + "create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dev": true, + "requires": { + "cipher-base": "1.0.4", + "create-hash": "1.2.0", + "inherits": "2.0.3", + "ripemd160": "2.0.2", + "safe-buffer": "5.1.2", + "sha.js": "2.4.11" + } + }, + "cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "dev": true, + "requires": { + "lru-cache": "4.1.5", + "shebang-command": "1.2.0", + "which": "1.3.1" + } + }, + "crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "dev": true, + "requires": { + "browserify-cipher": "1.0.1", + "browserify-sign": "4.0.4", + "create-ecdh": "4.0.3", + "create-hash": "1.2.0", + "create-hmac": "1.1.7", + "diffie-hellman": "5.0.3", + "inherits": "2.0.3", + "pbkdf2": "3.0.17", + "public-encrypt": "4.0.3", + "randombytes": "2.0.6", + "randomfill": "1.0.4" + } + }, + "css": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", + "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", + "dev": true, + "requires": { + "inherits": "2.0.3", + "source-map": "0.6.1", + "source-map-resolve": "0.5.2", + "urix": "0.1.0" + } + }, + "css-color-names": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/css-color-names/-/css-color-names-0.0.4.tgz", + "integrity": "sha1-gIrcLnnPhHOAabZGyyDsJ762KeA=", + "dev": true + }, + "css-loader": { + "version": "0.28.11", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-0.28.11.tgz", + "integrity": "sha512-wovHgjAx8ZIMGSL8pTys7edA1ClmzxHeY6n/d97gg5odgsxEgKjULPR0viqyC+FWMCL9sfqoC/QCUBo62tLvPg==", + "dev": true, + "requires": { + "babel-code-frame": "6.26.0", + "css-selector-tokenizer": "0.7.1", + "cssnano": "3.10.0", + "icss-utils": "2.1.0", + "loader-utils": "1.2.3", + "lodash.camelcase": "4.3.0", + "object-assign": "4.1.1", + "postcss": "5.2.18", + "postcss-modules-extract-imports": "1.2.1", + "postcss-modules-local-by-default": "1.2.0", + "postcss-modules-scope": "1.1.0", + "postcss-modules-values": "1.3.0", + "postcss-value-parser": "3.3.1", + "source-list-map": "2.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "js-base64": "2.5.1", + "source-map": "0.5.7", + "supports-color": "3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "css-select": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", + "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", + "dev": true, + "requires": { + "boolbase": "1.0.0", + "css-what": "2.1.3", + "domutils": "1.5.1", + "nth-check": "1.0.2" + } + }, + "css-selector-tokenizer": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.1.tgz", + "integrity": "sha512-xYL0AMZJ4gFzJQsHUKa5jiWWi2vH77WVNg7JYRyewwj6oPh4yb/y6Y9ZCw9dsj/9UauMhtuxR+ogQd//EdEVNA==", + "dev": true, + "requires": { + "cssesc": "0.1.0", + "fastparse": "1.1.2", + "regexpu-core": "1.0.0" + }, + "dependencies": { + "regexpu-core": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-1.0.0.tgz", + "integrity": "sha1-hqdj9Y7k18L2sQLkdkBQ3n7ZDGs=", + "dev": true, + "requires": { + "regenerate": "1.4.0", + "regjsgen": "0.2.0", + "regjsparser": "0.1.5" + } + } + } + }, + "css-what": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", + "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==", + "dev": true + }, + "cssesc": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-0.1.0.tgz", + "integrity": "sha1-yBSQPkViM3GgR3tAEJqq++6t27Q=", + "dev": true + }, + "cssnano": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-3.10.0.tgz", + "integrity": "sha1-Tzj2zqK5sX+gFJDyPx3GjqZcHDg=", + "dev": true, + "requires": { + "autoprefixer": "6.7.7", + "decamelize": "1.2.0", + "defined": "1.0.0", + "has": "1.0.3", + "object-assign": "4.1.1", + "postcss": "5.2.18", + "postcss-calc": "5.3.1", + "postcss-colormin": "2.2.2", + "postcss-convert-values": "2.6.1", + "postcss-discard-comments": "2.0.4", + "postcss-discard-duplicates": "2.1.0", + "postcss-discard-empty": "2.1.0", + "postcss-discard-overridden": "0.1.1", + "postcss-discard-unused": "2.2.3", + "postcss-filter-plugins": "2.0.3", + "postcss-merge-idents": "2.1.7", + "postcss-merge-longhand": "2.0.2", + "postcss-merge-rules": "2.1.2", + "postcss-minify-font-values": "1.0.5", + "postcss-minify-gradients": "1.0.5", + "postcss-minify-params": "1.2.2", + "postcss-minify-selectors": "2.1.1", + "postcss-normalize-charset": "1.1.1", + "postcss-normalize-url": "3.0.8", + "postcss-ordered-values": "2.2.3", + "postcss-reduce-idents": "2.4.0", + "postcss-reduce-initial": "1.0.1", + "postcss-reduce-transforms": "1.0.4", + "postcss-svgo": "2.1.6", + "postcss-unique-selectors": "2.0.2", + "postcss-value-parser": "3.3.1", + "postcss-zindex": "2.2.0" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "autoprefixer": { + "version": "6.7.7", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-6.7.7.tgz", + "integrity": "sha1-Hb0cg1ZY41zj+ZhAmdsAWFx4IBQ=", + "dev": true, + "requires": { + "browserslist": "1.7.7", + "caniuse-db": "1.0.30000938", + "normalize-range": "0.1.2", + "num2fraction": "1.2.2", + "postcss": "5.2.18", + "postcss-value-parser": "3.3.1" + } + }, + "browserslist": { + "version": "1.7.7", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-1.7.7.tgz", + "integrity": "sha1-C9dnBCWL6CmyOYu1Dkti0aFmsLk=", + "dev": true, + "requires": { + "caniuse-db": "1.0.30000938", + "electron-to-chromium": "1.3.113" + } + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "js-base64": "2.5.1", + "source-map": "0.5.7", + "supports-color": "3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "csso": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/csso/-/csso-2.3.2.tgz", + "integrity": "sha1-3dUsWHAz9J6Utx/FVWnyUuj/X4U=", + "dev": true, + "requires": { + "clap": "1.2.3", + "source-map": "0.5.7" + }, + "dependencies": { + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "cuint": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/cuint/-/cuint-0.2.2.tgz", + "integrity": "sha1-QICG1AlVDCYxFVYZ6fp7ytw7mRs=", + "dev": true + }, + "currently-unhandled": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", + "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", + "dev": true, + "requires": { + "array-find-index": "1.0.2" + } + }, + "cyclist": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-0.2.2.tgz", + "integrity": "sha1-GzN5LhHpFKL9bW7WRHRkRE5fpkA=", + "dev": true + }, + "d": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz", + "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=", + "dev": true, + "requires": { + "es5-ext": "0.10.47" + } + }, + "date-now": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", + "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=", + "dev": true + }, + "de-indent": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/de-indent/-/de-indent-1.0.2.tgz", + "integrity": "sha1-sgOOhG3DO6pXlhKNCAS0VbjB4h0=", + "dev": true + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, + "decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "dev": true + }, + "deep-equal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", + "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", + "dev": true + }, + "define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dev": true, + "requires": { + "object-keys": "1.1.0" + } + }, + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "requires": { + "is-descriptor": "1.0.2", + "isobject": "3.0.1" + }, + "dependencies": { + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "6.0.2" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "6.0.2" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "1.0.0", + "is-data-descriptor": "1.0.0", + "kind-of": "6.0.2" + } + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true + } + } + }, + "defined": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", + "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=", + "dev": true + }, + "del": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/del/-/del-3.0.0.tgz", + "integrity": "sha1-U+z2mf/LyzljdpGrE7rxYIGXZuU=", + "dev": true, + "requires": { + "globby": "6.1.0", + "is-path-cwd": "1.0.0", + "is-path-in-cwd": "1.0.1", + "p-map": "1.2.0", + "pify": "3.0.0", + "rimraf": "2.6.3" + }, + "dependencies": { + "globby": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", + "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", + "dev": true, + "requires": { + "array-union": "1.0.2", + "glob": "7.1.3", + "object-assign": "4.1.1", + "pify": "2.3.0", + "pinkie-promise": "2.0.1" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + } + } + } + } + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "dev": true + }, + "des.js": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", + "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", + "dev": true, + "requires": { + "inherits": "2.0.3", + "minimalistic-assert": "1.0.1" + } + }, + "destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", + "dev": true + }, + "detect-indent": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", + "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", + "dev": true, + "requires": { + "repeating": "2.0.1" + } + }, + "detect-node": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz", + "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==", + "dev": true + }, + "diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dev": true, + "requires": { + "bn.js": "4.11.8", + "miller-rabin": "4.0.1", + "randombytes": "2.0.6" + } + }, + "dir-glob": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.2.2.tgz", + "integrity": "sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw==", + "dev": true, + "requires": { + "path-type": "3.0.0" + } + }, + "dns-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", + "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=", + "dev": true + }, + "dns-packet": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.1.tgz", + "integrity": "sha512-0UxfQkMhYAUaZI+xrNZOz/as5KgDU0M/fQ9b6SpkyLbk3GEswDi6PADJVaYJradtRVsRIlF1zLyOodbcTCDzUg==", + "dev": true, + "requires": { + "ip": "1.1.5", + "safe-buffer": "5.1.2" + } + }, + "dns-txt": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz", + "integrity": "sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=", + "dev": true, + "requires": { + "buffer-indexof": "1.1.1" + } + }, + "dom-converter": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", + "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", + "dev": true, + "requires": { + "utila": "0.4.0" + } + }, + "dom-serializer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", + "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==", + "dev": true, + "requires": { + "domelementtype": "1.3.1", + "entities": "1.1.2" + } + }, + "domain-browser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", + "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", + "dev": true + }, + "domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", + "dev": true + }, + "domhandler": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.1.0.tgz", + "integrity": "sha1-0mRvXlf2w7qxHPbLBdPArPdBJZQ=", + "dev": true, + "requires": { + "domelementtype": "1.3.1" + } + }, + "domutils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", + "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "dev": true, + "requires": { + "dom-serializer": "0.1.1", + "domelementtype": "1.3.1" + } + }, + "duplexer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz", + "integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=", + "dev": true + }, + "duplexify": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", + "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "dev": true, + "requires": { + "end-of-stream": "1.4.1", + "inherits": "2.0.3", + "readable-stream": "2.3.6", + "stream-shift": "1.0.0" + } + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", + "dev": true + }, + "ejs": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.6.1.tgz", + "integrity": "sha512-0xy4A/twfrRCnkhfk8ErDi5DqdAsAqeGxht4xkCUrsvhhbQNs7E+4jV0CN7+NKIY0aHE72+XvqtBIXzD31ZbXQ==", + "dev": true + }, + "electron-to-chromium": { + "version": "1.3.113", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.113.tgz", + "integrity": "sha512-De+lPAxEcpxvqPTyZAXELNpRZXABRxf+uL/rSykstQhzj/B0l1150G/ExIIxKc16lI89Hgz81J0BHAcbTqK49g==", + "dev": true + }, + "elliptic": { + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.1.tgz", + "integrity": "sha512-BsXLz5sqX8OHcsh7CqBMztyXARmGQ3LWPtGjJi6DiJHq5C/qvi9P3OqgswKSDftbu8+IoI/QDTAm2fFnQ9SZSQ==", + "dev": true, + "requires": { + "bn.js": "4.11.8", + "brorand": "1.1.0", + "hash.js": "1.1.7", + "hmac-drbg": "1.0.1", + "inherits": "2.0.3", + "minimalistic-assert": "1.0.1", + "minimalistic-crypto-utils": "1.0.1" + } + }, + "emojis-list": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", + "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", + "dev": true + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "dev": true + }, + "end-of-stream": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", + "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", + "dev": true, + "requires": { + "once": "1.4.0" + } + }, + "enhanced-resolve": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-3.4.1.tgz", + "integrity": "sha1-BCHjOf1xQZs9oT0Smzl5BAIwR24=", + "dev": true, + "requires": { + "graceful-fs": "4.1.15", + "memory-fs": "0.4.1", + "object-assign": "4.1.1", + "tapable": "0.2.9" + } + }, + "entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", + "dev": true + }, + "errno": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", + "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", + "dev": true, + "requires": { + "prr": "1.0.1" + } + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "requires": { + "is-arrayish": "0.2.1" + } + }, + "error-stack-parser": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.0.2.tgz", + "integrity": "sha512-E1fPutRDdIj/hohG0UpT5mayXNCxXP9d+snxFsPU9X0XgccOumKraa3juDMwTUyi7+Bu5+mCGagjg4IYeNbOdw==", + "dev": true, + "requires": { + "stackframe": "1.0.4" + } + }, + "es-abstract": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.13.0.tgz", + "integrity": "sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg==", + "dev": true, + "requires": { + "es-to-primitive": "1.2.0", + "function-bind": "1.1.1", + "has": "1.0.3", + "is-callable": "1.1.4", + "is-regex": "1.0.4", + "object-keys": "1.1.0" + } + }, + "es-to-primitive": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.0.tgz", + "integrity": "sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==", + "dev": true, + "requires": { + "is-callable": "1.1.4", + "is-date-object": "1.0.1", + "is-symbol": "1.0.2" + } + }, + "es5-ext": { + "version": "0.10.47", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.47.tgz", + "integrity": "sha512-/1TItLfj+TTfWoeRcDn/0FbGV6SNo4R+On2GGVucPU/j3BWnXE2Co8h8CTo4Tu34gFJtnmwS9xiScKs4EjZhdw==", + "dev": true, + "requires": { + "es6-iterator": "2.0.3", + "es6-symbol": "3.1.1", + "next-tick": "1.0.0" + } + }, + "es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "dev": true, + "requires": { + "d": "1.0.0", + "es5-ext": "0.10.47", + "es6-symbol": "3.1.1" + } + }, + "es6-map": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz", + "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=", + "dev": true, + "requires": { + "d": "1.0.0", + "es5-ext": "0.10.47", + "es6-iterator": "2.0.3", + "es6-set": "0.1.5", + "es6-symbol": "3.1.1", + "event-emitter": "0.3.5" + } + }, + "es6-set": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz", + "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=", + "dev": true, + "requires": { + "d": "1.0.0", + "es5-ext": "0.10.47", + "es6-iterator": "2.0.3", + "es6-symbol": "3.1.1", + "event-emitter": "0.3.5" + } + }, + "es6-symbol": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", + "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", + "dev": true, + "requires": { + "d": "1.0.0", + "es5-ext": "0.10.47" + } + }, + "es6-weak-map": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.2.tgz", + "integrity": "sha1-XjqzIlH/0VOKH45f+hNXdy+S2W8=", + "dev": true, + "requires": { + "d": "1.0.0", + "es5-ext": "0.10.47", + "es6-iterator": "2.0.3", + "es6-symbol": "3.1.1" + } + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "escope": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz", + "integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=", + "dev": true, + "requires": { + "es6-map": "0.1.5", + "es6-weak-map": "2.0.2", + "esrecurse": "4.2.1", + "estraverse": "4.2.0" + } + }, + "esprima": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", + "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=", + "dev": true + }, + "esrecurse": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", + "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", + "dev": true, + "requires": { + "estraverse": "4.2.0" + } + }, + "estraverse": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", + "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", + "dev": true + }, + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", + "dev": true + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "dev": true + }, + "event-emitter": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", + "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", + "dev": true, + "requires": { + "d": "1.0.0", + "es5-ext": "0.10.47" + } + }, + "eventemitter3": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.0.tgz", + "integrity": "sha512-ivIvhpq/Y0uSjcHDcOIccjmYjGLcP09MFGE7ysAwkAvkXfpZlC985pH2/ui64DKazbTW/4kN3yqozUxlXzI6cA==", + "dev": true + }, + "events": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.0.0.tgz", + "integrity": "sha512-Dc381HFWJzEOhQ+d8pkNon++bk9h6cdAoAj4iE6Q4y6xgTzySWXlKn05/TVNpjnfRqi/X0EpJEJohPjNI3zpVA==", + "dev": true + }, + "eventsource": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-0.1.6.tgz", + "integrity": "sha1-Cs7ehJ7X3RzMMsgRuxG5RNTykjI=", + "dev": true, + "requires": { + "original": "1.0.2" + } + }, + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dev": true, + "requires": { + "md5.js": "1.3.5", + "safe-buffer": "5.1.2" + } + }, + "execa": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", + "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "dev": true, + "requires": { + "cross-spawn": "5.1.0", + "get-stream": "3.0.0", + "is-stream": "1.1.0", + "npm-run-path": "2.0.2", + "p-finally": "1.0.0", + "signal-exit": "3.0.2", + "strip-eof": "1.0.0" + } + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "dev": true, + "requires": { + "debug": "2.6.9", + "define-property": "0.2.5", + "extend-shallow": "2.0.1", + "posix-character-classes": "0.1.1", + "regex-not": "1.0.2", + "snapdragon": "0.8.2", + "to-regex": "3.0.2" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "0.1.6" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "0.1.1" + } + } + } + }, + "expand-range": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", + "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", + "dev": true, + "requires": { + "fill-range": "2.2.4" + }, + "dependencies": { + "fill-range": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", + "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", + "dev": true, + "requires": { + "is-number": "2.1.0", + "isobject": "2.1.0", + "randomatic": "3.1.1", + "repeat-element": "1.1.3", + "repeat-string": "1.6.1" + } + }, + "is-number": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", + "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", + "dev": true, + "requires": { + "kind-of": "3.2.2" + } + }, + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "express": { + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/express/-/express-4.16.4.tgz", + "integrity": "sha512-j12Uuyb4FMrd/qQAm6uCHAkPtO8FDTRJZBDd5D2KOL2eLaz1yUNdUB/NOIyq0iU4q4cFarsUCrnFDPBcnksuOg==", + "dev": true, + "requires": { + "accepts": "1.3.5", + "array-flatten": "1.1.1", + "body-parser": "1.18.3", + "content-disposition": "0.5.2", + "content-type": "1.0.4", + "cookie": "0.3.1", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "1.1.2", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "etag": "1.8.1", + "finalhandler": "1.1.1", + "fresh": "0.5.2", + "merge-descriptors": "1.0.1", + "methods": "1.1.2", + "on-finished": "2.3.0", + "parseurl": "1.3.2", + "path-to-regexp": "0.1.7", + "proxy-addr": "2.0.4", + "qs": "6.5.2", + "range-parser": "1.2.0", + "safe-buffer": "5.1.2", + "send": "0.16.2", + "serve-static": "1.13.2", + "setprototypeof": "1.1.0", + "statuses": "1.4.0", + "type-is": "1.6.16", + "utils-merge": "1.0.1", + "vary": "1.1.2" + } + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, + "requires": { + "assign-symbols": "1.0.0", + "is-extendable": "1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "2.0.4" + } + } + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "dev": true, + "requires": { + "array-unique": "0.3.2", + "define-property": "1.0.0", + "expand-brackets": "2.1.4", + "extend-shallow": "2.0.1", + "fragment-cache": "0.2.1", + "regex-not": "1.0.2", + "snapdragon": "0.8.2", + "to-regex": "3.0.2" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "1.0.2" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "0.1.1" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "6.0.2" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "6.0.2" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "1.0.0", + "is-data-descriptor": "1.0.0", + "kind-of": "6.0.2" + } + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true + } + } + }, + "extract-text-webpack-plugin": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extract-text-webpack-plugin/-/extract-text-webpack-plugin-3.0.2.tgz", + "integrity": "sha512-bt/LZ4m5Rqt/Crl2HiKuAl/oqg0psx1tsTLkvWbJen1CtD+fftkZhMaQ9HOtY2gWsl2Wq+sABmMVi9z3DhKWQQ==", + "dev": true, + "requires": { + "async": "2.6.2", + "loader-utils": "1.2.3", + "schema-utils": "0.3.0", + "webpack-sources": "1.3.0" + } + }, + "fast-deep-equal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", + "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", + "dev": true + }, + "fast-json-stable-stringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", + "dev": true + }, + "fastparse": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/fastparse/-/fastparse-1.1.2.tgz", + "integrity": "sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ==", + "dev": true + }, + "faye-websocket": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", + "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", + "dev": true, + "requires": { + "websocket-driver": "0.7.0" + } + }, + "file-loader": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-1.1.11.tgz", + "integrity": "sha512-TGR4HU7HUsGg6GCOPJnFk06RhWgEWFLAGWiT6rcD+GRC2keU3s9RGJ+b3Z6/U73jwwNb2gKLJ7YCrp+jvU4ALg==", + "dev": true, + "requires": { + "loader-utils": "1.2.3", + "schema-utils": "0.4.7" + }, + "dependencies": { + "ajv": { + "version": "6.9.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.9.1.tgz", + "integrity": "sha512-XDN92U311aINL77ieWHmqCcNlwjoP5cHXDxIxbf2MaPYuCXOHS7gHH8jktxeK5omgd52XbSTX6a4Piwd1pQmzA==", + "dev": true, + "requires": { + "fast-deep-equal": "2.0.1", + "fast-json-stable-stringify": "2.0.0", + "json-schema-traverse": "0.4.1", + "uri-js": "4.2.2" + } + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "schema-utils": { + "version": "0.4.7", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.7.tgz", + "integrity": "sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ==", + "dev": true, + "requires": { + "ajv": "6.9.1", + "ajv-keywords": "3.4.0" + } + } + } + }, + "filename-regex": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", + "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=", + "dev": true + }, + "filesize": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/filesize/-/filesize-3.6.1.tgz", + "integrity": "sha512-7KjR1vv6qnicaPMi1iiTcI85CyYwRO/PSFCu6SvqL8jN2Wjt/NIYQTFtFs7fSDCYOstUkEWIQGFUg5YZQfjlcg==", + "dev": true + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "2.0.1", + "is-number": "3.0.0", + "repeat-string": "1.6.1", + "to-regex-range": "2.1.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "0.1.1" + } + } + } + }, + "finalhandler": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz", + "integrity": "sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg==", + "dev": true, + "requires": { + "debug": "2.6.9", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "on-finished": "2.3.0", + "parseurl": "1.3.2", + "statuses": "1.4.0", + "unpipe": "1.0.0" + } + }, + "find-cache-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", + "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", + "dev": true, + "requires": { + "commondir": "1.0.1", + "make-dir": "1.3.0", + "pkg-dir": "2.0.0" + } + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "2.0.0" + } + }, + "flatten": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/flatten/-/flatten-1.0.2.tgz", + "integrity": "sha1-2uRqnXj74lKSJYzB54CkHZXAN4I=", + "dev": true + }, + "flush-write-stream": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", + "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", + "dev": true, + "requires": { + "inherits": "2.0.3", + "readable-stream": "2.3.6" + } + }, + "follow-redirects": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.7.0.tgz", + "integrity": "sha512-m/pZQy4Gj287eNy94nivy5wchN3Kp+Q5WgUPNy5lJSZ3sgkVKSYV/ZChMAQVIgx1SqfZ2zBZtPA2YlXIWxxJOQ==", + "dev": true, + "requires": { + "debug": "3.2.6" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "2.1.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "dev": true + }, + "for-own": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", + "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", + "dev": true, + "requires": { + "for-in": "1.0.2" + } + }, + "forwarded": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=", + "dev": true + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "dev": true, + "requires": { + "map-cache": "0.2.2" + } + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "dev": true + }, + "friendly-errors-webpack-plugin": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/friendly-errors-webpack-plugin/-/friendly-errors-webpack-plugin-1.7.0.tgz", + "integrity": "sha512-K27M3VK30wVoOarP651zDmb93R9zF28usW4ocaK3mfQeIEI5BPht/EzZs5E8QLLwbLRJQMwscAjDxYPb1FuNiw==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "error-stack-parser": "2.0.2", + "string-width": "2.1.1" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "from2": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", + "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", + "dev": true, + "requires": { + "inherits": "2.0.3", + "readable-stream": "2.3.6" + } + }, + "fs-extra": { + "version": "0.16.5", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-0.16.5.tgz", + "integrity": "sha1-GtZh+myGyWCM0bSe/G/Og0k5p1A=", + "dev": true, + "requires": { + "graceful-fs": "3.0.11", + "jsonfile": "2.4.0", + "rimraf": "2.6.3" + }, + "dependencies": { + "graceful-fs": { + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.11.tgz", + "integrity": "sha1-dhPHeKGv6mLyXGMKCG1/Osu92Bg=", + "dev": true, + "requires": { + "natives": "1.1.6" + } + } + } + }, + "fs-write-stream-atomic": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", + "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", + "dev": true, + "requires": { + "graceful-fs": "4.1.15", + "iferr": "0.1.5", + "imurmurhash": "0.1.4", + "readable-stream": "2.3.6" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "fsevents": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.7.tgz", + "integrity": "sha512-Pxm6sI2MeBD7RdD12RYsqaP0nMiwx8eZBXCa6z2L+mRHm2DYrOYwihmhjpkdjUHwQhslWQjRpEgNq4XvBmaAuw==", + "dev": true, + "optional": true, + "requires": { + "nan": "2.12.1", + "node-pre-gyp": "0.10.3" + }, + "dependencies": { + "abbrev": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "ansi-regex": { + "version": "2.1.1", + "bundled": true, + "dev": true + }, + "aproba": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + }, + "are-we-there-yet": { + "version": "1.1.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "delegates": "1.0.0", + "readable-stream": "2.3.6" + } + }, + "balanced-match": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "bundled": true, + "dev": true, + "requires": { + "balanced-match": "1.0.0", + "concat-map": "0.0.1" + } + }, + "chownr": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "bundled": true, + "dev": true + }, + "console-control-strings": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "debug": { + "version": "2.6.9", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ms": "2.0.0" + } + }, + "deep-extend": { + "version": "0.6.0", + "bundled": true, + "dev": true, + "optional": true + }, + "delegates": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "detect-libc": { + "version": "1.0.3", + "bundled": true, + "dev": true, + "optional": true + }, + "fs-minipass": { + "version": "1.2.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "2.3.5" + } + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "gauge": { + "version": "2.7.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "aproba": "1.2.0", + "console-control-strings": "1.1.0", + "has-unicode": "2.0.1", + "object-assign": "4.1.1", + "signal-exit": "3.0.2", + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wide-align": "1.1.3" + } + }, + "glob": { + "version": "7.1.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + }, + "has-unicode": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "iconv-lite": { + "version": "0.4.24", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safer-buffer": "2.1.2" + } + }, + "ignore-walk": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minimatch": "3.0.4" + } + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "once": "1.4.0", + "wrappy": "1.0.2" + } + }, + "inherits": { + "version": "2.0.3", + "bundled": true, + "dev": true + }, + "ini": { + "version": "1.3.5", + "bundled": true, + "dev": true, + "optional": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "number-is-nan": "1.0.1" + } + }, + "isarray": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "dev": true, + "requires": { + "brace-expansion": "1.1.11" + } + }, + "minimist": { + "version": "0.0.8", + "bundled": true, + "dev": true + }, + "minipass": { + "version": "2.3.5", + "bundled": true, + "dev": true, + "requires": { + "safe-buffer": "5.1.2", + "yallist": "3.0.3" + } + }, + "minizlib": { + "version": "1.2.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "2.3.5" + } + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "needle": { + "version": "2.2.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "debug": "2.6.9", + "iconv-lite": "0.4.24", + "sax": "1.2.4" + } + }, + "node-pre-gyp": { + "version": "0.10.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "detect-libc": "1.0.3", + "mkdirp": "0.5.1", + "needle": "2.2.4", + "nopt": "4.0.1", + "npm-packlist": "1.2.0", + "npmlog": "4.1.2", + "rc": "1.2.8", + "rimraf": "2.6.3", + "semver": "5.6.0", + "tar": "4.4.8" + } + }, + "nopt": { + "version": "4.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "abbrev": "1.1.1", + "osenv": "0.1.5" + } + }, + "npm-bundled": { + "version": "1.0.5", + "bundled": true, + "dev": true, + "optional": true + }, + "npm-packlist": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ignore-walk": "3.0.1", + "npm-bundled": "1.0.5" + } + }, + "npmlog": { + "version": "4.1.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "are-we-there-yet": "1.1.5", + "console-control-strings": "1.1.0", + "gauge": "2.7.4", + "set-blocking": "2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "once": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "requires": { + "wrappy": "1.0.2" + } + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "os-tmpdir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "osenv": { + "version": "0.1.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "os-homedir": "1.0.2", + "os-tmpdir": "1.0.2" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "process-nextick-args": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "rc": { + "version": "1.2.8", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "deep-extend": "0.6.0", + "ini": "1.3.5", + "minimist": "1.2.0", + "strip-json-comments": "2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "readable-stream": { + "version": "2.3.6", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "2.0.0", + "safe-buffer": "5.1.2", + "string_decoder": "1.1.1", + "util-deprecate": "1.0.2" + } + }, + "rimraf": { + "version": "2.6.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "glob": "7.1.3" + } + }, + "safe-buffer": { + "version": "5.1.2", + "bundled": true, + "dev": true + }, + "safer-buffer": { + "version": "2.1.2", + "bundled": true, + "dev": true, + "optional": true + }, + "sax": { + "version": "1.2.4", + "bundled": true, + "dev": true, + "optional": true + }, + "semver": { + "version": "5.6.0", + "bundled": true, + "dev": true, + "optional": true + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "5.1.2" + } + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "requires": { + "ansi-regex": "2.1.1" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "tar": { + "version": "4.4.8", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "chownr": "1.1.1", + "fs-minipass": "1.2.5", + "minipass": "2.3.5", + "minizlib": "1.2.1", + "mkdirp": "0.5.1", + "safe-buffer": "5.1.2", + "yallist": "3.0.3" + } + }, + "util-deprecate": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "wide-align": { + "version": "1.1.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "string-width": "1.0.2" + } + }, + "wrappy": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "yallist": { + "version": "3.0.3", + "bundled": true, + "dev": true + } + } + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "dev": true + }, + "get-stdin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", + "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", + "dev": true + }, + "get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "dev": true + }, + "get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", + "dev": true + }, + "glob": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "dev": true, + "requires": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + }, + "glob-base": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", + "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", + "dev": true, + "requires": { + "glob-parent": "2.0.0", + "is-glob": "2.0.1" + }, + "dependencies": { + "glob-parent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", + "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", + "dev": true, + "requires": { + "is-glob": "2.0.1" + } + }, + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "dev": true + }, + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "dev": true, + "requires": { + "is-extglob": "1.0.0" + } + } + } + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true, + "requires": { + "is-glob": "3.1.0", + "path-dirname": "1.0.2" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "2.1.1" + } + } + } + }, + "globals": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", + "dev": true + }, + "globby": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/globby/-/globby-7.1.1.tgz", + "integrity": "sha1-+yzP+UAfhgCUXfral0QMypcrhoA=", + "dev": true, + "requires": { + "array-union": "1.0.2", + "dir-glob": "2.2.2", + "glob": "7.1.3", + "ignore": "3.3.10", + "pify": "3.0.0", + "slash": "1.0.0" + } + }, + "graceful-fs": { + "version": "4.1.15", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", + "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", + "dev": true + }, + "growly": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", + "integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=", + "dev": true + }, + "gzip-size": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-4.1.0.tgz", + "integrity": "sha1-iuCWJX6r59acRb4rZ8RIEk/7UXw=", + "dev": true, + "requires": { + "duplexer": "0.1.1", + "pify": "3.0.0" + } + }, + "handle-thing": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-1.2.5.tgz", + "integrity": "sha1-/Xqtcmvxpf0W38KbL3pmAdJxOcQ=", + "dev": true + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "requires": { + "function-bind": "1.1.1" + } + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "requires": { + "ansi-regex": "2.1.1" + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "has-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", + "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", + "dev": true + }, + "has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "dev": true, + "requires": { + "get-value": "2.0.6", + "has-values": "1.0.0", + "isobject": "3.0.1" + } + }, + "has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "dev": true, + "requires": { + "is-number": "3.0.0", + "kind-of": "4.0.0" + }, + "dependencies": { + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "dev": true, + "requires": { + "is-buffer": "1.1.6" + } + } + } + }, + "hash-base": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", + "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", + "dev": true, + "requires": { + "inherits": "2.0.3", + "safe-buffer": "5.1.2" + } + }, + "hash-sum": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-1.0.2.tgz", + "integrity": "sha1-M7QHd3VMZDJXPBIMw4CLvRDUfwQ=", + "dev": true + }, + "hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dev": true, + "requires": { + "inherits": "2.0.3", + "minimalistic-assert": "1.0.1" + } + }, + "he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true + }, + "hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "dev": true, + "requires": { + "hash.js": "1.1.7", + "minimalistic-assert": "1.0.1", + "minimalistic-crypto-utils": "1.0.1" + } + }, + "home-or-tmp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", + "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", + "dev": true, + "requires": { + "os-homedir": "1.0.2", + "os-tmpdir": "1.0.2" + } + }, + "hosted-git-info": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz", + "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==", + "dev": true + }, + "hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", + "dev": true, + "requires": { + "inherits": "2.0.3", + "obuf": "1.1.2", + "readable-stream": "2.3.6", + "wbuf": "1.7.3" + } + }, + "html-comment-regex": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/html-comment-regex/-/html-comment-regex-1.1.2.tgz", + "integrity": "sha512-P+M65QY2JQ5Y0G9KKdlDpo0zK+/OHptU5AaBwUfAIDJZk1MYf32Frm84EcOytfJE0t5JvkAnKlmjsXDnWzCJmQ==", + "dev": true + }, + "html-entities": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.2.1.tgz", + "integrity": "sha1-DfKTUfByEWNRXfueVUPl9u7VFi8=", + "dev": true + }, + "html-minifier": { + "version": "3.5.21", + "resolved": "https://registry.npmjs.org/html-minifier/-/html-minifier-3.5.21.tgz", + "integrity": "sha512-LKUKwuJDhxNa3uf/LPR/KVjm/l3rBqtYeCOAekvG8F1vItxMUpueGd94i/asDDr8/1u7InxzFA5EeGjhhG5mMA==", + "dev": true, + "requires": { + "camel-case": "3.0.0", + "clean-css": "4.2.1", + "commander": "2.17.1", + "he": "1.2.0", + "param-case": "2.1.1", + "relateurl": "0.2.7", + "uglify-js": "3.4.9" + } + }, + "html-webpack-plugin": { + "version": "2.30.1", + "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-2.30.1.tgz", + "integrity": "sha1-f5xCG36pHsRg9WUn1430hO51N9U=", + "dev": true, + "requires": { + "bluebird": "3.5.3", + "html-minifier": "3.5.21", + "loader-utils": "0.2.17", + "lodash": "4.17.11", + "pretty-error": "2.1.1", + "toposort": "1.0.7" + }, + "dependencies": { + "big.js": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-3.2.0.tgz", + "integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==", + "dev": true + }, + "loader-utils": { + "version": "0.2.17", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz", + "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=", + "dev": true, + "requires": { + "big.js": "3.2.0", + "emojis-list": "2.1.0", + "json5": "0.5.1", + "object-assign": "4.1.1" + } + } + } + }, + "htmlparser2": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.3.0.tgz", + "integrity": "sha1-zHDQWln2VC5D8OaFyYLhTJJKnv4=", + "dev": true, + "requires": { + "domelementtype": "1.3.1", + "domhandler": "2.1.0", + "domutils": "1.1.6", + "readable-stream": "1.0.34" + }, + "dependencies": { + "domutils": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.1.6.tgz", + "integrity": "sha1-vdw94Jm5ou+sxRxiPyj0FuzFdIU=", + "dev": true, + "requires": { + "domelementtype": "1.3.1" + } + }, + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "0.0.1", + "string_decoder": "0.10.31" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + } + } + }, + "http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=", + "dev": true + }, + "http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", + "dev": true, + "requires": { + "depd": "1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": "1.4.0" + } + }, + "http-parser-js": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.0.tgz", + "integrity": "sha512-cZdEF7r4gfRIq7ezX9J0T+kQmJNOub71dWbgAXVHDct80TKP4MCETtZQ31xyv38UwgzkWPYF/Xc0ge55dW9Z9w==", + "dev": true + }, + "http-proxy": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.17.0.tgz", + "integrity": "sha512-Taqn+3nNvYRfJ3bGvKfBSRwy1v6eePlm3oc/aWVxZp57DQr5Eq3xhKJi7Z4hZpS8PC3H4qI+Yly5EmFacGuA/g==", + "dev": true, + "requires": { + "eventemitter3": "3.1.0", + "follow-redirects": "1.7.0", + "requires-port": "1.0.0" + } + }, + "http-proxy-middleware": { + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.17.4.tgz", + "integrity": "sha1-ZC6ISIUdZvCdTxJJEoRtuutBuDM=", + "dev": true, + "requires": { + "http-proxy": "1.17.0", + "is-glob": "3.1.0", + "lodash": "4.17.11", + "micromatch": "2.3.11" + }, + "dependencies": { + "arr-diff": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", + "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", + "dev": true, + "requires": { + "arr-flatten": "1.1.0" + } + }, + "array-unique": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", + "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", + "dev": true + }, + "braces": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", + "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", + "dev": true, + "requires": { + "expand-range": "1.8.2", + "preserve": "0.2.0", + "repeat-element": "1.1.3" + } + }, + "expand-brackets": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", + "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", + "dev": true, + "requires": { + "is-posix-bracket": "0.1.1" + } + }, + "extglob": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", + "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", + "dev": true, + "requires": { + "is-extglob": "1.0.0" + }, + "dependencies": { + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "dev": true + } + } + }, + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "2.1.1" + } + }, + "micromatch": { + "version": "2.3.11", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", + "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", + "dev": true, + "requires": { + "arr-diff": "2.0.0", + "array-unique": "0.2.1", + "braces": "1.8.5", + "expand-brackets": "0.1.5", + "extglob": "0.3.2", + "filename-regex": "2.0.1", + "is-extglob": "1.0.0", + "is-glob": "2.0.1", + "kind-of": "3.2.2", + "normalize-path": "2.1.1", + "object.omit": "2.0.1", + "parse-glob": "3.0.4", + "regex-cache": "0.4.4" + }, + "dependencies": { + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "dev": true + }, + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "dev": true, + "requires": { + "is-extglob": "1.0.0" + } + } + } + }, + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "requires": { + "remove-trailing-separator": "1.1.0" + } + } + } + }, + "https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", + "dev": true + }, + "iconv-lite": { + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz", + "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==", + "dev": true, + "requires": { + "safer-buffer": "2.1.2" + } + }, + "icss-replace-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz", + "integrity": "sha1-Bupvg2ead0njhs/h/oEq5dsiPe0=", + "dev": true + }, + "icss-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-2.1.0.tgz", + "integrity": "sha1-g/Cg7DeL8yRheLbCrZE28TWxyWI=", + "dev": true, + "requires": { + "postcss": "6.0.23" + } + }, + "ieee754": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.12.tgz", + "integrity": "sha512-GguP+DRY+pJ3soyIiGPTvdiVXjZ+DbXOxGpXn3eMvNW4x4irjqXm4wHKscC+TfxSJ0yw/S1F24tqdMNsMZTiLA==", + "dev": true + }, + "iferr": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", + "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", + "dev": true + }, + "ignore": { + "version": "3.3.10", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", + "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==", + "dev": true + }, + "import-cwd": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-cwd/-/import-cwd-2.1.0.tgz", + "integrity": "sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk=", + "dev": true, + "requires": { + "import-from": "2.1.0" + } + }, + "import-from": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-from/-/import-from-2.1.0.tgz", + "integrity": "sha1-M1238qev/VOqpHHUuAId7ja387E=", + "dev": true, + "requires": { + "resolve-from": "3.0.0" + } + }, + "import-local": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-1.0.0.tgz", + "integrity": "sha512-vAaZHieK9qjGo58agRBg+bhHX3hoTZU/Oa3GESWLz7t1U62fk63aHuDJJEteXoDeTCcPmUT+z38gkHPZkkmpmQ==", + "dev": true, + "requires": { + "pkg-dir": "2.0.0", + "resolve-cwd": "2.0.0" + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "indent-string": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", + "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", + "dev": true, + "requires": { + "repeating": "2.0.1" + } + }, + "indexes-of": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", + "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=", + "dev": true + }, + "indexof": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", + "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "1.4.0", + "wrappy": "1.0.2" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + }, + "internal-ip": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-1.2.0.tgz", + "integrity": "sha1-rp+/k7mEh4eF1QqN4bNWlWBYz1w=", + "dev": true, + "requires": { + "meow": "3.7.0" + } + }, + "interpret": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.2.0.tgz", + "integrity": "sha512-mT34yGKMNceBQUoVn7iCDKDntA7SC6gycMAWzGx1z/CMCTV7b2AAtXlo3nRyHZ1FelRkQbQjprHSYGwzLtkVbw==", + "dev": true + }, + "invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "dev": true, + "requires": { + "loose-envify": "1.4.0" + } + }, + "invert-kv": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", + "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", + "dev": true + }, + "ip": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", + "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", + "dev": true + }, + "ipaddr.js": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.8.0.tgz", + "integrity": "sha1-6qM9bd16zo9/b+DJygRA5wZzix4=", + "dev": true + }, + "is-absolute-url": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-2.1.0.tgz", + "integrity": "sha1-UFMN+4T8yap9vnhS6Do3uTufKqY=", + "dev": true + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, + "requires": { + "kind-of": "3.2.2" + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "dev": true, + "requires": { + "binary-extensions": "1.13.0" + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "is-callable": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", + "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==", + "dev": true + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, + "requires": { + "kind-of": "3.2.2" + } + }, + "is-date-object": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", + "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", + "dev": true + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "0.1.6", + "is-data-descriptor": "0.1.4", + "kind-of": "5.1.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } + } + }, + "is-directory": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz", + "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=", + "dev": true + }, + "is-dotfile": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", + "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=", + "dev": true + }, + "is-equal-shallow": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", + "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", + "dev": true, + "requires": { + "is-primitive": "2.0.0" + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "dev": true + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true + }, + "is-finite": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", + "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", + "dev": true, + "requires": { + "number-is-nan": "1.0.1" + } + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "is-glob": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.0.tgz", + "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=", + "dev": true, + "requires": { + "is-extglob": "2.1.1" + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "3.2.2" + } + }, + "is-path-cwd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", + "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=", + "dev": true + }, + "is-path-in-cwd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz", + "integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==", + "dev": true, + "requires": { + "is-path-inside": "1.0.1" + } + }, + "is-path-inside": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", + "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", + "dev": true, + "requires": { + "path-is-inside": "1.0.2" + } + }, + "is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "dev": true + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "3.0.1" + } + }, + "is-posix-bracket": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", + "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=", + "dev": true + }, + "is-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", + "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", + "dev": true + }, + "is-regex": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", + "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", + "dev": true, + "requires": { + "has": "1.0.3" + } + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, + "is-svg": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-svg/-/is-svg-2.1.0.tgz", + "integrity": "sha1-z2EJDaDZ77yrhyLeum8DIgjbsOk=", + "dev": true, + "requires": { + "html-comment-regex": "1.1.2" + } + }, + "is-symbol": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.2.tgz", + "integrity": "sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==", + "dev": true, + "requires": { + "has-symbols": "1.0.0" + } + }, + "is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", + "dev": true + }, + "is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "dev": true + }, + "is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + }, + "js-base64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.5.1.tgz", + "integrity": "sha512-M7kLczedRMYX4L8Mdh4MzyAMM9O5osx+4FcOQuTvr3A9F2D9S5JXheN0ewNbrvK2UatkTRhL5ejGmGSjNMiZuw==", + "dev": true + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "dev": true + }, + "js-yaml": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.7.0.tgz", + "integrity": "sha1-XJZ93YN6m/3KXy3oQlOr6KHAO4A=", + "dev": true, + "requires": { + "argparse": "1.0.10", + "esprima": "2.7.3" + } + }, + "jsesc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", + "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", + "dev": true + }, + "json-loader": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/json-loader/-/json-loader-0.5.7.tgz", + "integrity": "sha512-QLPs8Dj7lnf3e3QYS1zkCo+4ZwqOiF9d/nZnYozTISxXWCfNs9yuky5rJw4/W34s7POaNlbZmQGaB5NiXCbP4w==", + "dev": true + }, + "json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "dev": true + }, + "json-schema-traverse": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", + "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", + "dev": true + }, + "json3": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/json3/-/json3-3.3.2.tgz", + "integrity": "sha1-PAQ0dD35Pi9cQq7nsZvLSDV19OE=", + "dev": true + }, + "json5": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", + "dev": true + }, + "jsonfile": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", + "integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=", + "dev": true, + "requires": { + "graceful-fs": "4.1.15" + } + }, + "killable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/killable/-/killable-1.0.1.tgz", + "integrity": "sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg==", + "dev": true + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "1.1.6" + } + }, + "last-call-webpack-plugin": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/last-call-webpack-plugin/-/last-call-webpack-plugin-2.1.2.tgz", + "integrity": "sha512-CZc+m2xZm51J8qSwdODeiiNeqh8CYkKEq6Rw8IkE4i/4yqf2cJhjQPsA6BtAV970ePRNhwEOXhy2U5xc5Jwh9Q==", + "dev": true, + "requires": { + "lodash": "4.17.11", + "webpack-sources": "1.3.0" + } + }, + "lazy-cache": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", + "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", + "dev": true + }, + "lcid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", + "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "dev": true, + "requires": { + "invert-kv": "1.0.0" + } + }, + "lib-flexible": { + "version": "0.3.2", + "resolved": "http://bnpm.byted.org/lib-flexible/download/lib-flexible-0.3.2.tgz", + "integrity": "sha1-BvWnSDIxSi01wSA5vJw8otrqpCY=" + }, + "load-json-file": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", + "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", + "dev": true, + "requires": { + "graceful-fs": "4.1.15", + "parse-json": "2.2.0", + "pify": "2.3.0", + "strip-bom": "3.0.0" + }, + "dependencies": { + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "1.3.2" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + } + } + }, + "loader-runner": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", + "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", + "dev": true + }, + "loader-utils": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", + "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", + "dev": true, + "requires": { + "big.js": "5.2.2", + "emojis-list": "2.1.0", + "json5": "1.0.1" + }, + "dependencies": { + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "requires": { + "minimist": "1.2.0" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "2.0.0", + "path-exists": "3.0.0" + } + }, + "lodash": { + "version": "4.17.11", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", + "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", + "dev": true + }, + "lodash.camelcase": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", + "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY=", + "dev": true + }, + "lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=", + "dev": true + }, + "lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=", + "dev": true + }, + "log-symbols": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz", + "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==", + "dev": true, + "requires": { + "chalk": "2.4.2" + } + }, + "loglevel": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.1.tgz", + "integrity": "sha1-4PyVEztu8nbNyIh82vJKpvFW+Po=", + "dev": true + }, + "longest": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", + "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=", + "dev": true + }, + "loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dev": true, + "requires": { + "js-tokens": "3.0.2" + } + }, + "loud-rejection": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", + "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "dev": true, + "requires": { + "currently-unhandled": "0.4.1", + "signal-exit": "3.0.2" + } + }, + "lower-case": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz", + "integrity": "sha1-miyr0bno4K6ZOkv31YdcOcQujqw=", + "dev": true + }, + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "requires": { + "pseudomap": "1.0.2", + "yallist": "2.1.2" + } + }, + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "requires": { + "pify": "3.0.0" + } + }, + "map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", + "dev": true + }, + "map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", + "dev": true + }, + "map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "dev": true, + "requires": { + "object-visit": "1.0.1" + } + }, + "math-expression-evaluator": { + "version": "1.2.17", + "resolved": "https://registry.npmjs.org/math-expression-evaluator/-/math-expression-evaluator-1.2.17.tgz", + "integrity": "sha1-3oGf282E3M2PrlnGrreWFbnSZqw=", + "dev": true + }, + "math-random": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.4.tgz", + "integrity": "sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A==", + "dev": true + }, + "md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "dev": true, + "requires": { + "hash-base": "3.0.4", + "inherits": "2.0.3", + "safe-buffer": "5.1.2" + } + }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", + "dev": true + }, + "mem": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz", + "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=", + "dev": true, + "requires": { + "mimic-fn": "1.2.0" + } + }, + "memory-fs": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", + "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", + "dev": true, + "requires": { + "errno": "0.1.7", + "readable-stream": "2.3.6" + } + }, + "meow": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", + "dev": true, + "requires": { + "camelcase-keys": "2.1.0", + "decamelize": "1.2.0", + "loud-rejection": "1.6.0", + "map-obj": "1.0.1", + "minimist": "1.2.0", + "normalize-package-data": "2.5.0", + "object-assign": "4.1.1", + "read-pkg-up": "1.0.1", + "redent": "1.0.0", + "trim-newlines": "1.0.0" + }, + "dependencies": { + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "dev": true, + "requires": { + "path-exists": "2.1.0", + "pinkie-promise": "2.0.1" + } + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "dev": true, + "requires": { + "graceful-fs": "4.1.15", + "parse-json": "2.2.0", + "pify": "2.3.0", + "pinkie-promise": "2.0.1", + "strip-bom": "2.0.0" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "1.3.2" + } + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "dev": true, + "requires": { + "pinkie-promise": "2.0.1" + } + }, + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "dev": true, + "requires": { + "graceful-fs": "4.1.15", + "pify": "2.3.0", + "pinkie-promise": "2.0.1" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "dev": true, + "requires": { + "load-json-file": "1.1.0", + "normalize-package-data": "2.5.0", + "path-type": "1.1.0" + } + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "dev": true, + "requires": { + "find-up": "1.1.2", + "read-pkg": "1.1.0" + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "dev": true, + "requires": { + "is-utf8": "0.2.1" + } + } + } + }, + "merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=", + "dev": true + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "dev": true + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "4.0.0", + "array-unique": "0.3.2", + "braces": "2.3.2", + "define-property": "2.0.2", + "extend-shallow": "3.0.2", + "extglob": "2.0.4", + "fragment-cache": "0.2.1", + "kind-of": "6.0.2", + "nanomatch": "1.2.13", + "object.pick": "1.3.0", + "regex-not": "1.0.2", + "snapdragon": "0.8.2", + "to-regex": "3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true + } + } + }, + "miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "dev": true, + "requires": { + "bn.js": "4.11.8", + "brorand": "1.1.0" + } + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true + }, + "mime-db": { + "version": "1.38.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.38.0.tgz", + "integrity": "sha512-bqVioMFFzc2awcdJZIzR3HjZFX20QhilVS7hytkKrv7xFAn8bM1gzc/FOX2awLISvWe0PV8ptFKcon+wZ5qYkg==", + "dev": true + }, + "mime-types": { + "version": "2.1.22", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.22.tgz", + "integrity": "sha512-aGl6TZGnhm/li6F7yx82bJiBZwgiEa4Hf6CNr8YO+r5UHr53tSTYZb102zyU50DOWWKeOv0uQLRL0/9EiKWCog==", + "dev": true, + "requires": { + "mime-db": "1.38.0" + } + }, + "mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "dev": true + }, + "minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true + }, + "minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "1.1.11" + } + }, + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + }, + "mississippi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-2.0.0.tgz", + "integrity": "sha512-zHo8v+otD1J10j/tC+VNoGK9keCuByhKovAvdn74dmxJl9+mWHnx6EMsDN4lgRoMI/eYo2nchAxniIbUPb5onw==", + "dev": true, + "requires": { + "concat-stream": "1.6.2", + "duplexify": "3.7.1", + "end-of-stream": "1.4.1", + "flush-write-stream": "1.1.1", + "from2": "2.3.0", + "parallel-transform": "1.1.0", + "pump": "2.0.1", + "pumpify": "1.5.1", + "stream-each": "1.2.3", + "through2": "2.0.5" + } + }, + "mixin-deep": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", + "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", + "dev": true, + "requires": { + "for-in": "1.0.2", + "is-extendable": "1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "2.0.4" + } + } + } + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "move-concurrently": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", + "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", + "dev": true, + "requires": { + "aproba": "1.2.0", + "copy-concurrently": "1.0.5", + "fs-write-stream-atomic": "1.0.10", + "mkdirp": "0.5.1", + "rimraf": "2.6.3", + "run-queue": "1.0.3" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "multicast-dns": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.2.3.tgz", + "integrity": "sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g==", + "dev": true, + "requires": { + "dns-packet": "1.3.1", + "thunky": "1.0.3" + } + }, + "multicast-dns-service-types": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz", + "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=", + "dev": true + }, + "nan": { + "version": "2.12.1", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.12.1.tgz", + "integrity": "sha512-JY7V6lRkStKcKTvHO5NVSQRv+RV+FIL5pvDoLiAtSL9pKlC5x9PKQcZDsq7m4FO4d57mkhC6Z+QhAh3Jdk5JFw==", + "dev": true, + "optional": true + }, + "nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "dev": true, + "requires": { + "arr-diff": "4.0.0", + "array-unique": "0.3.2", + "define-property": "2.0.2", + "extend-shallow": "3.0.2", + "fragment-cache": "0.2.1", + "is-windows": "1.0.2", + "kind-of": "6.0.2", + "object.pick": "1.3.0", + "regex-not": "1.0.2", + "snapdragon": "0.8.2", + "to-regex": "3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true + } + } + }, + "natives": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/natives/-/natives-1.1.6.tgz", + "integrity": "sha512-6+TDFewD4yxY14ptjKaS63GVdtKiES1pTPyxn9Jb0rBqPMZ7VcCiooEhPNsr+mqHtMGxa/5c/HhcC4uPEUw/nA==", + "dev": true + }, + "negotiator": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", + "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=", + "dev": true + }, + "neo-async": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.0.tgz", + "integrity": "sha512-MFh0d/Wa7vkKO3Y3LlacqAEeHK0mckVqzDieUKTT+KGxi+zIpeVsFxymkIiRpbpDziHc290Xr9A1O4Om7otoRA==", + "dev": true + }, + "next-tick": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", + "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=", + "dev": true + }, + "no-case": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-2.3.2.tgz", + "integrity": "sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==", + "dev": true, + "requires": { + "lower-case": "1.1.4" + } + }, + "node-forge": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.7.5.tgz", + "integrity": "sha512-MmbQJ2MTESTjt3Gi/3yG1wGpIMhUfcIypUCGtTizFR9IiccFwxSpfp0vtIZlkFclEqERemxfnSdZEMR9VqqEFQ==", + "dev": true + }, + "node-libs-browser": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.0.tgz", + "integrity": "sha512-5MQunG/oyOaBdttrL40dA7bUfPORLRWMUJLQtMg7nluxUvk5XwnLdL9twQHFAjRx/y7mIMkLKT9++qPbbk6BZA==", + "dev": true, + "requires": { + "assert": "1.4.1", + "browserify-zlib": "0.2.0", + "buffer": "4.9.1", + "console-browserify": "1.1.0", + "constants-browserify": "1.0.0", + "crypto-browserify": "3.12.0", + "domain-browser": "1.2.0", + "events": "3.0.0", + "https-browserify": "1.0.0", + "os-browserify": "0.3.0", + "path-browserify": "0.0.0", + "process": "0.11.10", + "punycode": "1.4.1", + "querystring-es3": "0.2.1", + "readable-stream": "2.3.6", + "stream-browserify": "2.0.2", + "stream-http": "2.8.3", + "string_decoder": "1.1.1", + "timers-browserify": "2.0.10", + "tty-browserify": "0.0.0", + "url": "0.11.0", + "util": "0.11.1", + "vm-browserify": "0.0.4" + }, + "dependencies": { + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + } + } + }, + "node-notifier": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-5.4.0.tgz", + "integrity": "sha512-SUDEb+o71XR5lXSTyivXd9J7fCloE3SyP4lSgt3lU2oSANiox+SxlNRGPjDKrwU1YN3ix2KN/VGGCg0t01rttQ==", + "dev": true, + "requires": { + "growly": "1.3.0", + "is-wsl": "1.1.0", + "semver": "5.6.0", + "shellwords": "0.1.1", + "which": "1.3.1" + } + }, + "normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "requires": { + "hosted-git-info": "2.7.1", + "resolve": "1.10.0", + "semver": "5.6.0", + "validate-npm-package-license": "3.0.4" + } + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", + "dev": true + }, + "normalize-url": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-1.9.1.tgz", + "integrity": "sha1-LMDWazHqIwNkWENuNiDYWVTGbDw=", + "dev": true, + "requires": { + "object-assign": "4.1.1", + "prepend-http": "1.0.4", + "query-string": "4.3.4", + "sort-keys": "1.1.2" + } + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true, + "requires": { + "path-key": "2.0.1" + } + }, + "nth-check": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "dev": true, + "requires": { + "boolbase": "1.0.0" + } + }, + "num2fraction": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", + "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", + "dev": true + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true + }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "dev": true, + "requires": { + "copy-descriptor": "0.1.1", + "define-property": "0.2.5", + "kind-of": "3.2.2" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "0.1.6" + } + } + } + }, + "object-keys": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.0.tgz", + "integrity": "sha512-6OO5X1+2tYkNyNEx6TsCxEqFfRWaqx6EtMiSbGrw8Ob8v9Ne+Hl8rBAgLBZn5wjEz3s/s6U1WXFUFOcxxAwUpg==", + "dev": true + }, + "object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "dev": true, + "requires": { + "isobject": "3.0.1" + } + }, + "object.omit": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", + "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", + "dev": true, + "requires": { + "for-own": "0.1.5", + "is-extendable": "0.1.1" + } + }, + "object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "dev": true, + "requires": { + "isobject": "3.0.1" + } + }, + "obuf": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", + "dev": true + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dev": true, + "requires": { + "ee-first": "1.1.1" + } + }, + "on-headers": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.1.tgz", + "integrity": "sha1-ko9dD0cNSTQmUepnlLCFfBAGk/c=", + "dev": true + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1.0.2" + } + }, + "onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "dev": true, + "requires": { + "mimic-fn": "1.2.0" + } + }, + "opener": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.1.tgz", + "integrity": "sha512-goYSy5c2UXE4Ra1xixabeVh1guIX/ZV/YokJksb6q2lubWu6UbvPQ20p542/sFIll1nl8JnCyK9oBaOcCWXwvA==", + "dev": true + }, + "opn": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/opn/-/opn-5.4.0.tgz", + "integrity": "sha512-YF9MNdVy/0qvJvDtunAOzFw9iasOQHpVthTCvGzxt61Il64AYSGdK+rYwld7NAfk9qJ7dt+hymBNSc9LNYS+Sw==", + "dev": true, + "requires": { + "is-wsl": "1.1.0" + } + }, + "optimize-css-assets-webpack-plugin": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-3.2.0.tgz", + "integrity": "sha512-Fjn7wyyadPAriuH2DHamDQw5B8GohEWbroBkKoPeP+vSF2PIAPI7WDihi8WieMRb/At4q7Ea7zTKaMDuSoIAAg==", + "dev": true, + "requires": { + "cssnano": "3.10.0", + "last-call-webpack-plugin": "2.1.2" + } + }, + "ora": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ora/-/ora-1.4.0.tgz", + "integrity": "sha512-iMK1DOQxzzh2MBlVsU42G80mnrvUhqsMh74phHtDlrcTZPK0pH6o7l7DRshK+0YsxDyEuaOkziVdvM3T0QTzpw==", + "dev": true, + "requires": { + "chalk": "2.4.2", + "cli-cursor": "2.1.0", + "cli-spinners": "1.3.1", + "log-symbols": "2.2.0" + } + }, + "original": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/original/-/original-1.0.2.tgz", + "integrity": "sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg==", + "dev": true, + "requires": { + "url-parse": "1.4.4" + } + }, + "os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", + "dev": true + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true + }, + "os-locale": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", + "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", + "dev": true, + "requires": { + "execa": "0.7.0", + "lcid": "1.0.0", + "mem": "1.1.0" + } + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "1.3.0" + } + }, + "p-map": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-1.2.0.tgz", + "integrity": "sha512-r6zKACMNhjPJMTl8KcFH4li//gkrXWfbD6feV8l6doRHlzljFWGJ2AP6iKaCJXyZmAUMOPtvbW7EXkbWO/pLEA==", + "dev": true + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + }, + "pako": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.8.tgz", + "integrity": "sha512-6i0HVbUfcKaTv+EG8ZTr75az7GFXcLYk9UyLEg7Notv/Ma+z/UG3TCoz6GiNeOrn1E/e63I0X/Hpw18jHOTUnA==", + "dev": true + }, + "parallel-transform": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.1.0.tgz", + "integrity": "sha1-1BDwZbBdojCB/NEPKIVMKb2jOwY=", + "dev": true, + "requires": { + "cyclist": "0.2.2", + "inherits": "2.0.3", + "readable-stream": "2.3.6" + } + }, + "param-case": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-2.1.1.tgz", + "integrity": "sha1-35T9jPZTHs915r75oIWPvHK+Ikc=", + "dev": true, + "requires": { + "no-case": "2.3.2" + } + }, + "parse-asn1": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.4.tgz", + "integrity": "sha512-Qs5duJcuvNExRfFZ99HDD3z4mAi3r9Wl/FOjEOijlxwCZs7E7mW2vjTpgQ4J8LpTF8x5v+1Vn5UQFejmWT11aw==", + "dev": true, + "requires": { + "asn1.js": "4.10.1", + "browserify-aes": "1.2.0", + "create-hash": "1.2.0", + "evp_bytestokey": "1.0.3", + "pbkdf2": "3.0.17", + "safe-buffer": "5.1.2" + } + }, + "parse-glob": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", + "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", + "dev": true, + "requires": { + "glob-base": "0.3.0", + "is-dotfile": "1.0.3", + "is-extglob": "1.0.0", + "is-glob": "2.0.1" + }, + "dependencies": { + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "dev": true + }, + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "dev": true, + "requires": { + "is-extglob": "1.0.0" + } + } + } + }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "requires": { + "error-ex": "1.3.2", + "json-parse-better-errors": "1.0.2" + } + }, + "parseurl": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", + "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=", + "dev": true + }, + "pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", + "dev": true + }, + "path-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz", + "integrity": "sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo=", + "dev": true + }, + "path-dirname": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", + "dev": true + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true + }, + "path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", + "dev": true + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true + }, + "path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "dev": true + }, + "path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=", + "dev": true + }, + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dev": true, + "requires": { + "pify": "3.0.0" + } + }, + "pbkdf2": { + "version": "3.0.17", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz", + "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==", + "dev": true, + "requires": { + "create-hash": "1.2.0", + "create-hmac": "1.1.7", + "ripemd160": "2.0.2", + "safe-buffer": "5.1.2", + "sha.js": "2.4.11" + } + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "2.0.4" + } + }, + "pkg-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "dev": true, + "requires": { + "find-up": "2.1.0" + } + }, + "portfinder": { + "version": "1.0.20", + "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.20.tgz", + "integrity": "sha512-Yxe4mTyDzTd59PZJY4ojZR8F+E5e97iq2ZOHPz3HDgSvYC5siNad2tLooQ5y5QHyQhc3xVqvyk/eNA3wuoa7Sw==", + "dev": true, + "requires": { + "async": "1.5.2", + "debug": "2.6.9", + "mkdirp": "0.5.1" + }, + "dependencies": { + "async": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", + "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", + "dev": true + } + } + }, + "posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", + "dev": true + }, + "postcss": { + "version": "6.0.23", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz", + "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==", + "dev": true, + "requires": { + "chalk": "2.4.2", + "source-map": "0.6.1", + "supports-color": "5.5.0" + } + }, + "postcss-calc": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-5.3.1.tgz", + "integrity": "sha1-d7rnypKK2FcW4v2kLyYb98HWW14=", + "dev": true, + "requires": { + "postcss": "5.2.18", + "postcss-message-helpers": "2.0.0", + "reduce-css-calc": "1.3.0" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "js-base64": "2.5.1", + "source-map": "0.5.7", + "supports-color": "3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "postcss-colormin": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-2.2.2.tgz", + "integrity": "sha1-ZjFBfV8OkJo9fsJrJMio0eT5bks=", + "dev": true, + "requires": { + "colormin": "1.1.2", + "postcss": "5.2.18", + "postcss-value-parser": "3.3.1" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "js-base64": "2.5.1", + "source-map": "0.5.7", + "supports-color": "3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "postcss-convert-values": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-2.6.1.tgz", + "integrity": "sha1-u9hZPFwf0uPRwyK7kl3K6Nrk1i0=", + "dev": true, + "requires": { + "postcss": "5.2.18", + "postcss-value-parser": "3.3.1" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "js-base64": "2.5.1", + "source-map": "0.5.7", + "supports-color": "3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "postcss-discard-comments": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-2.0.4.tgz", + "integrity": "sha1-vv6J+v1bPazlzM5Rt2uBUUvgDj0=", + "dev": true, + "requires": { + "postcss": "5.2.18" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "js-base64": "2.5.1", + "source-map": "0.5.7", + "supports-color": "3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "postcss-discard-duplicates": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-2.1.0.tgz", + "integrity": "sha1-uavye4isGIFYpesSq8riAmO5GTI=", + "dev": true, + "requires": { + "postcss": "5.2.18" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "js-base64": "2.5.1", + "source-map": "0.5.7", + "supports-color": "3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "postcss-discard-empty": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-2.1.0.tgz", + "integrity": "sha1-0rS9nVztXr2Nyt52QMfXzX9PkrU=", + "dev": true, + "requires": { + "postcss": "5.2.18" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "js-base64": "2.5.1", + "source-map": "0.5.7", + "supports-color": "3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "postcss-discard-overridden": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-0.1.1.tgz", + "integrity": "sha1-ix6vVU9ob7KIzYdMVWZ7CqNmjVg=", + "dev": true, + "requires": { + "postcss": "5.2.18" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "js-base64": "2.5.1", + "source-map": "0.5.7", + "supports-color": "3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "postcss-discard-unused": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/postcss-discard-unused/-/postcss-discard-unused-2.2.3.tgz", + "integrity": "sha1-vOMLLMWR/8Y0Mitfs0ZLbZNPRDM=", + "dev": true, + "requires": { + "postcss": "5.2.18", + "uniqs": "2.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "js-base64": "2.5.1", + "source-map": "0.5.7", + "supports-color": "3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "postcss-filter-plugins": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/postcss-filter-plugins/-/postcss-filter-plugins-2.0.3.tgz", + "integrity": "sha512-T53GVFsdinJhgwm7rg1BzbeBRomOg9y5MBVhGcsV0CxurUdVj1UlPdKtn7aqYA/c/QVkzKMjq2bSV5dKG5+AwQ==", + "dev": true, + "requires": { + "postcss": "5.2.18" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "js-base64": "2.5.1", + "source-map": "0.5.7", + "supports-color": "3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "postcss-import": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-11.1.0.tgz", + "integrity": "sha512-5l327iI75POonjxkXgdRCUS+AlzAdBx4pOvMEhTKTCjb1p8IEeVR9yx3cPbmN7LIWJLbfnIXxAhoB4jpD0c/Cw==", + "dev": true, + "requires": { + "postcss": "6.0.23", + "postcss-value-parser": "3.3.1", + "read-cache": "1.0.0", + "resolve": "1.10.0" + } + }, + "postcss-load-config": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-2.0.0.tgz", + "integrity": "sha512-V5JBLzw406BB8UIfsAWSK2KSwIJ5yoEIVFb4gVkXci0QdKgA24jLmHZ/ghe/GgX0lJ0/D1uUK1ejhzEY94MChQ==", + "dev": true, + "requires": { + "cosmiconfig": "4.0.0", + "import-cwd": "2.1.0" + } + }, + "postcss-load-options": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/postcss-load-options/-/postcss-load-options-1.2.0.tgz", + "integrity": "sha1-sJixVZ3awt8EvAuzdfmaXP4rbYw=", + "dev": true, + "requires": { + "cosmiconfig": "2.2.2", + "object-assign": "4.1.1" + }, + "dependencies": { + "cosmiconfig": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-2.2.2.tgz", + "integrity": "sha512-GiNXLwAFPYHy25XmTPpafYvn3CLAkJ8FLsscq78MQd1Kh0OU6Yzhn4eV2MVF4G9WEQZoWEGltatdR+ntGPMl5A==", + "dev": true, + "requires": { + "is-directory": "0.3.1", + "js-yaml": "3.7.0", + "minimist": "1.2.0", + "object-assign": "4.1.1", + "os-homedir": "1.0.2", + "parse-json": "2.2.0", + "require-from-string": "1.2.1" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "1.3.2" + } + }, + "require-from-string": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-1.2.1.tgz", + "integrity": "sha1-UpyczvJzgK3+yaL5ZbZJu+5jZBg=", + "dev": true + } + } + }, + "postcss-load-plugins": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/postcss-load-plugins/-/postcss-load-plugins-2.3.0.tgz", + "integrity": "sha1-dFdoEWWZrKLwCfrUJrABdQSdjZI=", + "dev": true, + "requires": { + "cosmiconfig": "2.2.2", + "object-assign": "4.1.1" + }, + "dependencies": { + "cosmiconfig": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-2.2.2.tgz", + "integrity": "sha512-GiNXLwAFPYHy25XmTPpafYvn3CLAkJ8FLsscq78MQd1Kh0OU6Yzhn4eV2MVF4G9WEQZoWEGltatdR+ntGPMl5A==", + "dev": true, + "requires": { + "is-directory": "0.3.1", + "js-yaml": "3.7.0", + "minimist": "1.2.0", + "object-assign": "4.1.1", + "os-homedir": "1.0.2", + "parse-json": "2.2.0", + "require-from-string": "1.2.1" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "1.3.2" + } + }, + "require-from-string": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-1.2.1.tgz", + "integrity": "sha1-UpyczvJzgK3+yaL5ZbZJu+5jZBg=", + "dev": true + } + } + }, + "postcss-loader": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-2.1.6.tgz", + "integrity": "sha512-hgiWSc13xVQAq25cVw80CH0l49ZKlAnU1hKPOdRrNj89bokRr/bZF2nT+hebPPF9c9xs8c3gw3Fr2nxtmXYnNg==", + "dev": true, + "requires": { + "loader-utils": "1.2.3", + "postcss": "6.0.23", + "postcss-load-config": "2.0.0", + "schema-utils": "0.4.7" + }, + "dependencies": { + "ajv": { + "version": "6.9.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.9.1.tgz", + "integrity": "sha512-XDN92U311aINL77ieWHmqCcNlwjoP5cHXDxIxbf2MaPYuCXOHS7gHH8jktxeK5omgd52XbSTX6a4Piwd1pQmzA==", + "dev": true, + "requires": { + "fast-deep-equal": "2.0.1", + "fast-json-stable-stringify": "2.0.0", + "json-schema-traverse": "0.4.1", + "uri-js": "4.2.2" + } + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "schema-utils": { + "version": "0.4.7", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.7.tgz", + "integrity": "sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ==", + "dev": true, + "requires": { + "ajv": "6.9.1", + "ajv-keywords": "3.4.0" + } + } + } + }, + "postcss-merge-idents": { + "version": "2.1.7", + "resolved": "https://registry.npmjs.org/postcss-merge-idents/-/postcss-merge-idents-2.1.7.tgz", + "integrity": "sha1-TFUwMTwI4dWzu/PSu8dH4njuonA=", + "dev": true, + "requires": { + "has": "1.0.3", + "postcss": "5.2.18", + "postcss-value-parser": "3.3.1" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "js-base64": "2.5.1", + "source-map": "0.5.7", + "supports-color": "3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "postcss-merge-longhand": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-2.0.2.tgz", + "integrity": "sha1-I9kM0Sewp3mUkVMyc5A0oaTz1lg=", + "dev": true, + "requires": { + "postcss": "5.2.18" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "js-base64": "2.5.1", + "source-map": "0.5.7", + "supports-color": "3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "postcss-merge-rules": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-2.1.2.tgz", + "integrity": "sha1-0d9d+qexrMO+VT8OnhDofGG19yE=", + "dev": true, + "requires": { + "browserslist": "1.7.7", + "caniuse-api": "1.6.1", + "postcss": "5.2.18", + "postcss-selector-parser": "2.2.3", + "vendors": "1.0.2" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "browserslist": { + "version": "1.7.7", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-1.7.7.tgz", + "integrity": "sha1-C9dnBCWL6CmyOYu1Dkti0aFmsLk=", + "dev": true, + "requires": { + "caniuse-db": "1.0.30000938", + "electron-to-chromium": "1.3.113" + } + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "js-base64": "2.5.1", + "source-map": "0.5.7", + "supports-color": "3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "postcss-message-helpers": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-message-helpers/-/postcss-message-helpers-2.0.0.tgz", + "integrity": "sha1-pPL0+rbk/gAvCu0ABHjN9S+bpg4=", + "dev": true + }, + "postcss-minify-font-values": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-1.0.5.tgz", + "integrity": "sha1-S1jttWZB66fIR0qzUmyv17vey2k=", + "dev": true, + "requires": { + "object-assign": "4.1.1", + "postcss": "5.2.18", + "postcss-value-parser": "3.3.1" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "js-base64": "2.5.1", + "source-map": "0.5.7", + "supports-color": "3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "postcss-minify-gradients": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-1.0.5.tgz", + "integrity": "sha1-Xb2hE3NwP4PPtKPqOIHY11/15uE=", + "dev": true, + "requires": { + "postcss": "5.2.18", + "postcss-value-parser": "3.3.1" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "js-base64": "2.5.1", + "source-map": "0.5.7", + "supports-color": "3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "postcss-minify-params": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-1.2.2.tgz", + "integrity": "sha1-rSzgcTc7lDs9kwo/pZo1jCjW8fM=", + "dev": true, + "requires": { + "alphanum-sort": "1.0.2", + "postcss": "5.2.18", + "postcss-value-parser": "3.3.1", + "uniqs": "2.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "js-base64": "2.5.1", + "source-map": "0.5.7", + "supports-color": "3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "postcss-minify-selectors": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-2.1.1.tgz", + "integrity": "sha1-ssapjAByz5G5MtGkllCBFDEXNb8=", + "dev": true, + "requires": { + "alphanum-sort": "1.0.2", + "has": "1.0.3", + "postcss": "5.2.18", + "postcss-selector-parser": "2.2.3" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "js-base64": "2.5.1", + "source-map": "0.5.7", + "supports-color": "3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "postcss-modules-extract-imports": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.2.1.tgz", + "integrity": "sha512-6jt9XZwUhwmRUhb/CkyJY020PYaPJsCyt3UjbaWo6XEbH/94Hmv6MP7fG2C5NDU/BcHzyGYxNtHvM+LTf9HrYw==", + "dev": true, + "requires": { + "postcss": "6.0.23" + } + }, + "postcss-modules-local-by-default": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz", + "integrity": "sha1-99gMOYxaOT+nlkRmvRlQCn1hwGk=", + "dev": true, + "requires": { + "css-selector-tokenizer": "0.7.1", + "postcss": "6.0.23" + } + }, + "postcss-modules-scope": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz", + "integrity": "sha1-1upkmUx5+XtipytCb75gVqGUu5A=", + "dev": true, + "requires": { + "css-selector-tokenizer": "0.7.1", + "postcss": "6.0.23" + } + }, + "postcss-modules-values": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz", + "integrity": "sha1-7P+p1+GSUYOJ9CrQ6D9yrsRW6iA=", + "dev": true, + "requires": { + "icss-replace-symbols": "1.1.0", + "postcss": "6.0.23" + } + }, + "postcss-normalize-charset": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-1.1.1.tgz", + "integrity": "sha1-757nEhLX/nWceO0WL2HtYrXLk/E=", + "dev": true, + "requires": { + "postcss": "5.2.18" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "js-base64": "2.5.1", + "source-map": "0.5.7", + "supports-color": "3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "postcss-normalize-url": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-3.0.8.tgz", + "integrity": "sha1-EI90s/L82viRov+j6kWSJ5/HgiI=", + "dev": true, + "requires": { + "is-absolute-url": "2.1.0", + "normalize-url": "1.9.1", + "postcss": "5.2.18", + "postcss-value-parser": "3.3.1" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "js-base64": "2.5.1", + "source-map": "0.5.7", + "supports-color": "3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "postcss-ordered-values": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-2.2.3.tgz", + "integrity": "sha1-7sbCpntsQSqNsgQud/6NpD+VwR0=", + "dev": true, + "requires": { + "postcss": "5.2.18", + "postcss-value-parser": "3.3.1" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "js-base64": "2.5.1", + "source-map": "0.5.7", + "supports-color": "3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "postcss-reduce-idents": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/postcss-reduce-idents/-/postcss-reduce-idents-2.4.0.tgz", + "integrity": "sha1-wsbSDMlYKE9qv75j92Cb9AkFmtM=", + "dev": true, + "requires": { + "postcss": "5.2.18", + "postcss-value-parser": "3.3.1" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "js-base64": "2.5.1", + "source-map": "0.5.7", + "supports-color": "3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "postcss-reduce-initial": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-1.0.1.tgz", + "integrity": "sha1-aPgGlfBF0IJjqHmtJA343WT2ROo=", + "dev": true, + "requires": { + "postcss": "5.2.18" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "js-base64": "2.5.1", + "source-map": "0.5.7", + "supports-color": "3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "postcss-reduce-transforms": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-1.0.4.tgz", + "integrity": "sha1-/3b02CEkN7McKYpC0uFEQCV3GuE=", + "dev": true, + "requires": { + "has": "1.0.3", + "postcss": "5.2.18", + "postcss-value-parser": "3.3.1" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "js-base64": "2.5.1", + "source-map": "0.5.7", + "supports-color": "3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "postcss-selector-parser": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-2.2.3.tgz", + "integrity": "sha1-+UN3iGBsPJrO4W/+jYsWKX8nu5A=", + "dev": true, + "requires": { + "flatten": "1.0.2", + "indexes-of": "1.0.1", + "uniq": "1.0.1" + } + }, + "postcss-svgo": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-2.1.6.tgz", + "integrity": "sha1-tt8YqmE7Zm4TPwittSGcJoSsEI0=", + "dev": true, + "requires": { + "is-svg": "2.1.0", + "postcss": "5.2.18", + "postcss-value-parser": "3.3.1", + "svgo": "0.7.2" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "js-base64": "2.5.1", + "source-map": "0.5.7", + "supports-color": "3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "postcss-unique-selectors": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-2.0.2.tgz", + "integrity": "sha1-mB1X0p3csz57Hf4f1DuGSfkzyh0=", + "dev": true, + "requires": { + "alphanum-sort": "1.0.2", + "postcss": "5.2.18", + "uniqs": "2.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "js-base64": "2.5.1", + "source-map": "0.5.7", + "supports-color": "3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "postcss-url": { + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/postcss-url/-/postcss-url-7.3.2.tgz", + "integrity": "sha512-QMV5mA+pCYZQcUEPQkmor9vcPQ2MT+Ipuu8qdi1gVxbNiIiErEGft+eny1ak19qALoBkccS5AHaCaCDzh7b9MA==", + "dev": true, + "requires": { + "mime": "1.6.0", + "minimatch": "3.0.4", + "mkdirp": "0.5.1", + "postcss": "6.0.23", + "xxhashjs": "0.2.2" + } + }, + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + }, + "postcss-zindex": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/postcss-zindex/-/postcss-zindex-2.2.0.tgz", + "integrity": "sha1-0hCd3AVbka9n/EyzsCWUZjnSryI=", + "dev": true, + "requires": { + "has": "1.0.3", + "postcss": "5.2.18", + "uniqs": "2.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "dev": true, + "requires": { + "chalk": "1.1.3", + "js-base64": "2.5.1", + "source-map": "0.5.7", + "supports-color": "3.2.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "1.0.0" + } + } + } + }, + "prepend-http": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", + "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", + "dev": true + }, + "preserve": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", + "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", + "dev": true + }, + "prettier": { + "version": "1.16.4", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.16.4.tgz", + "integrity": "sha512-ZzWuos7TI5CKUeQAtFd6Zhm2s6EpAD/ZLApIhsF9pRvRtM1RFo61dM/4MSRUA0SuLugA/zgrZD8m0BaY46Og7g==", + "dev": true + }, + "pretty-error": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.1.tgz", + "integrity": "sha1-X0+HyPkeWuPzuoerTPXgOxoX8aM=", + "dev": true, + "requires": { + "renderkid": "2.0.2", + "utila": "0.4.0" + } + }, + "private": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", + "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", + "dev": true + }, + "process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", + "dev": true + }, + "process-nextick-args": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", + "dev": true + }, + "promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", + "dev": true + }, + "proxy-addr": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.4.tgz", + "integrity": "sha512-5erio2h9jp5CHGwcybmxmVqHmnCBZeewlfJ0pex+UW7Qny7OOZXTtH56TGNyBizkgiOwhJtMKrVzDTeKcySZwA==", + "dev": true, + "requires": { + "forwarded": "0.1.2", + "ipaddr.js": "1.8.0" + } + }, + "prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", + "dev": true + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "dev": true + }, + "public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "dev": true, + "requires": { + "bn.js": "4.11.8", + "browserify-rsa": "4.0.1", + "create-hash": "1.2.0", + "parse-asn1": "5.1.4", + "randombytes": "2.0.6", + "safe-buffer": "5.1.2" + } + }, + "pump": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", + "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", + "dev": true, + "requires": { + "end-of-stream": "1.4.1", + "once": "1.4.0" + } + }, + "pumpify": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", + "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", + "dev": true, + "requires": { + "duplexify": "3.7.1", + "inherits": "2.0.3", + "pump": "2.0.1" + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + }, + "px2rem": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/px2rem/-/px2rem-0.5.0.tgz", + "integrity": "sha1-JLOmz3TRSttO13byB4cdmJPkEOI=", + "dev": true, + "requires": { + "chalk": "0.5.1", + "commander": "2.6.0", + "css": "2.2.4", + "extend": "3.0.2", + "fs-extra": "0.16.5" + }, + "dependencies": { + "ansi-regex": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-0.2.1.tgz", + "integrity": "sha1-DY6UaWej2BQ/k+JOKYUl/BsiNfk=", + "dev": true + }, + "ansi-styles": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.1.0.tgz", + "integrity": "sha1-6uy/Zs1waIJ2Cy9GkVgrj1XXp94=", + "dev": true + }, + "chalk": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.5.1.tgz", + "integrity": "sha1-Zjs6ZItotV0EaQ1JFnqoN4WPIXQ=", + "dev": true, + "requires": { + "ansi-styles": "1.1.0", + "escape-string-regexp": "1.0.5", + "has-ansi": "0.1.0", + "strip-ansi": "0.3.0", + "supports-color": "0.2.0" + } + }, + "commander": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.6.0.tgz", + "integrity": "sha1-nfflL7Kgyw+4kFjugMMQQiXzfh0=", + "dev": true + }, + "has-ansi": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-0.1.0.tgz", + "integrity": "sha1-hPJlqujA5qiKEtcCKJS3VoiUxi4=", + "dev": true, + "requires": { + "ansi-regex": "0.2.1" + } + }, + "strip-ansi": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.3.0.tgz", + "integrity": "sha1-JfSOoiynkYfzF0pNuHWTR7sSYiA=", + "dev": true, + "requires": { + "ansi-regex": "0.2.1" + } + }, + "supports-color": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-0.2.0.tgz", + "integrity": "sha1-2S3iaU6z9nMjlz1649i1W0wiGQo=", + "dev": true + } + } + }, + "px2rem-loader": { + "version": "0.1.9", + "resolved": "https://registry.npmjs.org/px2rem-loader/-/px2rem-loader-0.1.9.tgz", + "integrity": "sha512-3Ew8At5W/HHIIUe/KZk+FBRRb20KtgP1N1c/BnMlXk6LNkqrFmUIUF35GF/evzNdj/Q63iWJpkmn/c5qSMplRg==", + "dev": true, + "requires": { + "loader-utils": "1.2.3", + "px2rem": "0.5.0" + } + }, + "q": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", + "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", + "dev": true + }, + "qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "dev": true + }, + "query-string": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-4.3.4.tgz", + "integrity": "sha1-u7aTucqRXCMlFbIosaArYJBD2+s=", + "dev": true, + "requires": { + "object-assign": "4.1.1", + "strict-uri-encode": "1.1.0" + } + }, + "querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", + "dev": true + }, + "querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", + "dev": true + }, + "querystringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.1.0.tgz", + "integrity": "sha512-sluvZZ1YiTLD5jsqZcDmFyV2EwToyXZBfpoVOmktMmW+VEnhgakFHnasVph65fOjGPTWN0Nw3+XQaSeMayr0kg==", + "dev": true + }, + "randomatic": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.1.1.tgz", + "integrity": "sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw==", + "dev": true, + "requires": { + "is-number": "4.0.0", + "kind-of": "6.0.2", + "math-random": "1.0.4" + }, + "dependencies": { + "is-number": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", + "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", + "dev": true + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true + } + } + }, + "randombytes": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.6.tgz", + "integrity": "sha512-CIQ5OFxf4Jou6uOKe9t1AOgqpeU5fd70A8NPdHSGeYXqXsPe6peOwI0cUl88RWZ6sP1vPMV3avd/R6cZ5/sP1A==", + "dev": true, + "requires": { + "safe-buffer": "5.1.2" + } + }, + "randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "dev": true, + "requires": { + "randombytes": "2.0.6", + "safe-buffer": "5.1.2" + } + }, + "range-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", + "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=", + "dev": true + }, + "raw-body": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.3.tgz", + "integrity": "sha512-9esiElv1BrZoI3rCDuOuKCBRbuApGGaDPQfjSflGxdy4oyzqghxu6klEkkVIvBje+FF0BX9coEv8KqW6X/7njw==", + "dev": true, + "requires": { + "bytes": "3.0.0", + "http-errors": "1.6.3", + "iconv-lite": "0.4.23", + "unpipe": "1.0.0" + } + }, + "read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha1-5mTvMRYRZsl1HNvo28+GtftY93Q=", + "dev": true, + "requires": { + "pify": "2.3.0" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + } + } + }, + "read-pkg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", + "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", + "dev": true, + "requires": { + "load-json-file": "2.0.0", + "normalize-package-data": "2.5.0", + "path-type": "2.0.0" + }, + "dependencies": { + "path-type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", + "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", + "dev": true, + "requires": { + "pify": "2.3.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + } + } + }, + "read-pkg-up": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", + "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", + "dev": true, + "requires": { + "find-up": "2.1.0", + "read-pkg": "2.0.0" + } + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "dev": true, + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "2.0.0", + "safe-buffer": "5.1.2", + "string_decoder": "1.1.1", + "util-deprecate": "1.0.2" + } + }, + "readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "dev": true, + "requires": { + "graceful-fs": "4.1.15", + "micromatch": "3.1.10", + "readable-stream": "2.3.6" + } + }, + "rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", + "dev": true, + "requires": { + "resolve": "1.10.0" + } + }, + "redent": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", + "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", + "dev": true, + "requires": { + "indent-string": "2.1.0", + "strip-indent": "1.0.1" + } + }, + "reduce-css-calc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/reduce-css-calc/-/reduce-css-calc-1.3.0.tgz", + "integrity": "sha1-dHyRTgSWFKTJz7umKYca0dKSdxY=", + "dev": true, + "requires": { + "balanced-match": "0.4.2", + "math-expression-evaluator": "1.2.17", + "reduce-function-call": "1.0.2" + }, + "dependencies": { + "balanced-match": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.4.2.tgz", + "integrity": "sha1-yz8+PHMtwPAe5wtAPzAuYddwmDg=", + "dev": true + } + } + }, + "reduce-function-call": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/reduce-function-call/-/reduce-function-call-1.0.2.tgz", + "integrity": "sha1-WiAL+S4ON3UXUv5FsKszD9S2vpk=", + "dev": true, + "requires": { + "balanced-match": "0.4.2" + }, + "dependencies": { + "balanced-match": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.4.2.tgz", + "integrity": "sha1-yz8+PHMtwPAe5wtAPzAuYddwmDg=", + "dev": true + } + } + }, + "regenerate": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", + "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", + "dev": true + }, + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "dev": true + }, + "regenerator-transform": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.10.1.tgz", + "integrity": "sha512-PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q==", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "babel-types": "6.26.0", + "private": "0.1.8" + } + }, + "regex-cache": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", + "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", + "dev": true, + "requires": { + "is-equal-shallow": "0.1.3" + } + }, + "regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "dev": true, + "requires": { + "extend-shallow": "3.0.2", + "safe-regex": "1.1.0" + } + }, + "regexpu-core": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", + "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", + "dev": true, + "requires": { + "regenerate": "1.4.0", + "regjsgen": "0.2.0", + "regjsparser": "0.1.5" + } + }, + "regjsgen": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", + "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", + "dev": true + }, + "regjsparser": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", + "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", + "dev": true, + "requires": { + "jsesc": "0.5.0" + }, + "dependencies": { + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "dev": true + } + } + }, + "relateurl": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", + "integrity": "sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=", + "dev": true + }, + "remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "dev": true + }, + "renderkid": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.2.tgz", + "integrity": "sha512-FsygIxevi1jSiPY9h7vZmBFUbAOcbYm9UwyiLNdVsLRs/5We9Ob5NMPbGYUTWiLq5L+ezlVdE0A8bbME5CWTpg==", + "dev": true, + "requires": { + "css-select": "1.2.0", + "dom-converter": "0.2.0", + "htmlparser2": "3.3.0", + "strip-ansi": "3.0.1", + "utila": "0.4.0" + } + }, + "repeat-element": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", + "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", + "dev": true + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "dev": true + }, + "repeating": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "dev": true, + "requires": { + "is-finite": "1.0.2" + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true + }, + "require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true + }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", + "dev": true + }, + "requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=", + "dev": true + }, + "resolve": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.10.0.tgz", + "integrity": "sha512-3sUr9aq5OfSg2S9pNtPA9hL1FVEAjvfOC4leW0SNf/mpnaakz2a9femSd6LqAww2RaFctwyf1lCqnTHuF1rxDg==", + "dev": true, + "requires": { + "path-parse": "1.0.6" + } + }, + "resolve-cwd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", + "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", + "dev": true, + "requires": { + "resolve-from": "3.0.0" + } + }, + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "dev": true + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", + "dev": true + }, + "restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "dev": true, + "requires": { + "onetime": "2.0.1", + "signal-exit": "3.0.2" + } + }, + "ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "dev": true + }, + "right-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", + "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", + "dev": true, + "requires": { + "align-text": "0.1.4" + } + }, + "rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "requires": { + "glob": "7.1.3" + } + }, + "ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dev": true, + "requires": { + "hash-base": "3.0.4", + "inherits": "2.0.3" + } + }, + "run-queue": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", + "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", + "dev": true, + "requires": { + "aproba": "1.2.0" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "dev": true, + "requires": { + "ret": "0.1.15" + } + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true + }, + "schema-utils": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.3.0.tgz", + "integrity": "sha1-9YdyIs4+kx7a4DnxfrNxbnE3+M8=", + "dev": true, + "requires": { + "ajv": "5.5.2" + } + }, + "select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=", + "dev": true + }, + "selfsigned": { + "version": "1.10.4", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.4.tgz", + "integrity": "sha512-9AukTiDmHXGXWtWjembZ5NDmVvP2695EtpgbCsxCa68w3c88B+alqbmZ4O3hZ4VWGXeGWzEVdvqgAJD8DQPCDw==", + "dev": true, + "requires": { + "node-forge": "0.7.5" + } + }, + "semver": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", + "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==", + "dev": true + }, + "send": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz", + "integrity": "sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==", + "dev": true, + "requires": { + "debug": "2.6.9", + "depd": "1.1.2", + "destroy": "1.0.4", + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "etag": "1.8.1", + "fresh": "0.5.2", + "http-errors": "1.6.3", + "mime": "1.4.1", + "ms": "2.0.0", + "on-finished": "2.3.0", + "range-parser": "1.2.0", + "statuses": "1.4.0" + }, + "dependencies": { + "mime": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", + "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==", + "dev": true + } + } + }, + "serialize-javascript": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.6.1.tgz", + "integrity": "sha512-A5MOagrPFga4YaKQSWHryl7AXvbQkEqpw4NNYMTNYUNV51bA8ABHgYFpqKx+YFFrw59xMV1qGH1R4AgoNIVgCw==", + "dev": true + }, + "serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", + "dev": true, + "requires": { + "accepts": "1.3.5", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "1.0.3", + "http-errors": "1.6.3", + "mime-types": "2.1.22", + "parseurl": "1.3.2" + } + }, + "serve-static": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz", + "integrity": "sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==", + "dev": true, + "requires": { + "encodeurl": "1.0.2", + "escape-html": "1.0.3", + "parseurl": "1.3.2", + "send": "0.16.2" + } + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true + }, + "set-value": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", + "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", + "dev": true, + "requires": { + "extend-shallow": "2.0.1", + "is-extendable": "0.1.1", + "is-plain-object": "2.0.4", + "split-string": "3.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "0.1.1" + } + } + } + }, + "setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", + "dev": true + }, + "setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "dev": true + }, + "sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dev": true, + "requires": { + "inherits": "2.0.3", + "safe-buffer": "5.1.2" + } + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "requires": { + "shebang-regex": "1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true + }, + "shelljs": { + "version": "0.7.8", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.7.8.tgz", + "integrity": "sha1-3svPh0sNHl+3LhSxZKloMEjprLM=", + "dev": true, + "requires": { + "glob": "7.1.3", + "interpret": "1.2.0", + "rechoir": "0.6.2" + } + }, + "shellwords": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", + "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", + "dev": true + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "dev": true + }, + "slash": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", + "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", + "dev": true + }, + "snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "dev": true, + "requires": { + "base": "0.11.2", + "debug": "2.6.9", + "define-property": "0.2.5", + "extend-shallow": "2.0.1", + "map-cache": "0.2.2", + "source-map": "0.5.7", + "source-map-resolve": "0.5.2", + "use": "3.1.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "0.1.6" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "0.1.1" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "dev": true, + "requires": { + "define-property": "1.0.0", + "isobject": "3.0.1", + "snapdragon-util": "3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "1.0.2" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "6.0.2" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "6.0.2" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "1.0.0", + "is-data-descriptor": "1.0.0", + "kind-of": "6.0.2" + } + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true + } + } + }, + "snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "dev": true, + "requires": { + "kind-of": "3.2.2" + } + }, + "sockjs": { + "version": "0.3.19", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.19.tgz", + "integrity": "sha512-V48klKZl8T6MzatbLlzzRNhMepEys9Y4oGFpypBFFn1gLI/QQ9HtLLyWJNbPlwGLelOVOEijUbTTJeLLI59jLw==", + "dev": true, + "requires": { + "faye-websocket": "0.10.0", + "uuid": "3.3.2" + } + }, + "sockjs-client": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.1.5.tgz", + "integrity": "sha1-G7fA9yIsQPQq3xT0RCy9Eml3GoM=", + "dev": true, + "requires": { + "debug": "2.6.9", + "eventsource": "0.1.6", + "faye-websocket": "0.11.1", + "inherits": "2.0.3", + "json3": "3.3.2", + "url-parse": "1.4.4" + }, + "dependencies": { + "faye-websocket": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.1.tgz", + "integrity": "sha1-8O/hjE9W5PQK/H4Gxxn9XuYYjzg=", + "dev": true, + "requires": { + "websocket-driver": "0.7.0" + } + } + } + }, + "sort-keys": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz", + "integrity": "sha1-RBttTTRnmPG05J6JIK37oOVD+a0=", + "dev": true, + "requires": { + "is-plain-obj": "1.1.0" + } + }, + "source-list-map": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", + "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "source-map-resolve": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", + "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", + "dev": true, + "requires": { + "atob": "2.1.2", + "decode-uri-component": "0.2.0", + "resolve-url": "0.2.1", + "source-map-url": "0.4.0", + "urix": "0.1.0" + } + }, + "source-map-support": { + "version": "0.4.18", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", + "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", + "dev": true, + "requires": { + "source-map": "0.5.7" + }, + "dependencies": { + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "source-map-url": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", + "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", + "dev": true + }, + "spdx-correct": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", + "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", + "dev": true, + "requires": { + "spdx-expression-parse": "3.0.0", + "spdx-license-ids": "3.0.3" + } + }, + "spdx-exceptions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", + "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", + "dev": true + }, + "spdx-expression-parse": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", + "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", + "dev": true, + "requires": { + "spdx-exceptions": "2.2.0", + "spdx-license-ids": "3.0.3" + } + }, + "spdx-license-ids": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.3.tgz", + "integrity": "sha512-uBIcIl3Ih6Phe3XHK1NqboJLdGfwr1UN3k6wSD1dZpmPsIkb8AGNbZYJ1fOBk834+Gxy8rpfDxrS6XLEMZMY2g==", + "dev": true + }, + "spdy": { + "version": "3.4.7", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-3.4.7.tgz", + "integrity": "sha1-Qv9B7OXMD5mjpsKKq7c/XDsDrLw=", + "dev": true, + "requires": { + "debug": "2.6.9", + "handle-thing": "1.2.5", + "http-deceiver": "1.2.7", + "safe-buffer": "5.1.2", + "select-hose": "2.0.0", + "spdy-transport": "2.1.1" + } + }, + "spdy-transport": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-2.1.1.tgz", + "integrity": "sha512-q7D8c148escoB3Z7ySCASadkegMmUZW8Wb/Q1u0/XBgDKMO880rLQDj8Twiew/tYi7ghemKUi/whSYOwE17f5Q==", + "dev": true, + "requires": { + "debug": "2.6.9", + "detect-node": "2.0.4", + "hpack.js": "2.1.6", + "obuf": "1.1.2", + "readable-stream": "2.3.6", + "safe-buffer": "5.1.2", + "wbuf": "1.7.3" + } + }, + "split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "dev": true, + "requires": { + "extend-shallow": "3.0.2" + } + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "ssri": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-5.3.0.tgz", + "integrity": "sha512-XRSIPqLij52MtgoQavH/x/dU1qVKtWUAAZeOHsR9c2Ddi4XerFy3mc1alf+dLJKl9EUIm/Ht+EowFkTUOA6GAQ==", + "dev": true, + "requires": { + "safe-buffer": "5.1.2" + } + }, + "stackframe": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/stackframe/-/stackframe-1.0.4.tgz", + "integrity": "sha512-to7oADIniaYwS3MhtCa/sQhrxidCCQiF/qp4/m5iN3ipf0Y7Xlri0f6eG29r08aL7JYl8n32AF3Q5GYBZ7K8vw==", + "dev": true + }, + "static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "dev": true, + "requires": { + "define-property": "0.2.5", + "object-copy": "0.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "0.1.6" + } + } + } + }, + "statuses": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", + "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==", + "dev": true + }, + "stream-browserify": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", + "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", + "dev": true, + "requires": { + "inherits": "2.0.3", + "readable-stream": "2.3.6" + } + }, + "stream-each": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", + "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", + "dev": true, + "requires": { + "end-of-stream": "1.4.1", + "stream-shift": "1.0.0" + } + }, + "stream-http": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", + "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", + "dev": true, + "requires": { + "builtin-status-codes": "3.0.0", + "inherits": "2.0.3", + "readable-stream": "2.3.6", + "to-arraybuffer": "1.0.1", + "xtend": "4.0.1" + } + }, + "stream-shift": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz", + "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=", + "dev": true + }, + "strict-uri-encode": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", + "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "4.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "3.0.0" + } + } + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "5.1.2" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "2.1.1" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + }, + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "dev": true + }, + "strip-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", + "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", + "dev": true, + "requires": { + "get-stdin": "4.0.1" + } + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "3.0.0" + } + }, + "svgo": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-0.7.2.tgz", + "integrity": "sha1-n1dyQTlSE1xv779Ar+ak+qiLS7U=", + "dev": true, + "requires": { + "coa": "1.0.4", + "colors": "1.1.2", + "csso": "2.3.2", + "js-yaml": "3.7.0", + "mkdirp": "0.5.1", + "sax": "1.2.4", + "whet.extend": "0.9.9" + } + }, + "tapable": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-0.2.9.tgz", + "integrity": "sha512-2wsvQ+4GwBvLPLWsNfLCDYGsW6xb7aeC6utq2Qh0PFwgEy7K7dsma9Jsmb2zSQj7GvYAyUGSntLtsv++GmgL1A==", + "dev": true + }, + "through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dev": true, + "requires": { + "readable-stream": "2.3.6", + "xtend": "4.0.1" + } + }, + "thunky": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.0.3.tgz", + "integrity": "sha512-YwT8pjmNcAXBZqrubu22P4FYsh2D4dxRmnWBOL8Jk8bUcRUtc5326kx32tuTmFDAZtLOGEVNl8POAR8j896Iow==", + "dev": true + }, + "time-stamp": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-2.2.0.tgz", + "integrity": "sha512-zxke8goJQpBeEgD82CXABeMh0LSJcj7CXEd0OHOg45HgcofF7pxNwZm9+RknpxpDhwN4gFpySkApKfFYfRQnUA==", + "dev": true + }, + "timers-browserify": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.10.tgz", + "integrity": "sha512-YvC1SV1XdOUaL6gx5CoGroT3Gu49pK9+TZ38ErPldOWW4j49GI1HKs9DV+KGq/w6y+LZ72W1c8cKz2vzY+qpzg==", + "dev": true, + "requires": { + "setimmediate": "1.0.5" + } + }, + "to-arraybuffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", + "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", + "dev": true + }, + "to-fast-properties": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", + "dev": true + }, + "to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "dev": true, + "requires": { + "kind-of": "3.2.2" + } + }, + "to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "dev": true, + "requires": { + "define-property": "2.0.2", + "extend-shallow": "3.0.2", + "regex-not": "1.0.2", + "safe-regex": "1.1.0" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "requires": { + "is-number": "3.0.0", + "repeat-string": "1.6.1" + } + }, + "toposort": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/toposort/-/toposort-1.0.7.tgz", + "integrity": "sha1-LmhELZ9k7HILjMieZEOsbKqVACk=", + "dev": true + }, + "trim-newlines": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", + "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", + "dev": true + }, + "trim-right": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", + "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", + "dev": true + }, + "tryer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tryer/-/tryer-1.0.1.tgz", + "integrity": "sha512-c3zayb8/kWWpycWYg87P71E1S1ZL6b6IJxfb5fvsUgsf0S2MVGaDhDXXjDMpdCpfWXqptc+4mXwmiy1ypXqRAA==", + "dev": true + }, + "tty-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", + "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", + "dev": true + }, + "type-is": { + "version": "1.6.16", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz", + "integrity": "sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==", + "dev": true, + "requires": { + "media-typer": "0.3.0", + "mime-types": "2.1.22" + } + }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "dev": true + }, + "uglify-js": { + "version": "3.4.9", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.9.tgz", + "integrity": "sha512-8CJsbKOtEbnJsTyv6LE6m6ZKniqMiFWmm9sRbopbkGs3gMPPfd3Fh8iIA4Ykv5MgaTbqHr4BaoGLJLZNhsrW1Q==", + "dev": true, + "requires": { + "commander": "2.17.1", + "source-map": "0.6.1" + } + }, + "uglify-to-browserify": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", + "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=", + "dev": true, + "optional": true + }, + "uglifyjs-webpack-plugin": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.3.0.tgz", + "integrity": "sha512-ovHIch0AMlxjD/97j9AYovZxG5wnHOPkL7T1GKochBADp/Zwc44pEWNqpKl1Loupp1WhFg7SlYmHZRUfdAacgw==", + "dev": true, + "requires": { + "cacache": "10.0.4", + "find-cache-dir": "1.0.0", + "schema-utils": "0.4.7", + "serialize-javascript": "1.6.1", + "source-map": "0.6.1", + "uglify-es": "3.3.9", + "webpack-sources": "1.3.0", + "worker-farm": "1.6.0" + }, + "dependencies": { + "ajv": { + "version": "6.9.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.9.1.tgz", + "integrity": "sha512-XDN92U311aINL77ieWHmqCcNlwjoP5cHXDxIxbf2MaPYuCXOHS7gHH8jktxeK5omgd52XbSTX6a4Piwd1pQmzA==", + "dev": true, + "requires": { + "fast-deep-equal": "2.0.1", + "fast-json-stable-stringify": "2.0.0", + "json-schema-traverse": "0.4.1", + "uri-js": "4.2.2" + } + }, + "commander": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", + "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==", + "dev": true + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "schema-utils": { + "version": "0.4.7", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.7.tgz", + "integrity": "sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ==", + "dev": true, + "requires": { + "ajv": "6.9.1", + "ajv-keywords": "3.4.0" + } + }, + "uglify-es": { + "version": "3.3.9", + "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", + "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", + "dev": true, + "requires": { + "commander": "2.13.0", + "source-map": "0.6.1" + } + } + } + }, + "union-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", + "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", + "dev": true, + "requires": { + "arr-union": "3.1.0", + "get-value": "2.0.6", + "is-extendable": "0.1.1", + "set-value": "0.4.3" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "0.1.1" + } + }, + "set-value": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz", + "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", + "dev": true, + "requires": { + "extend-shallow": "2.0.1", + "is-extendable": "0.1.1", + "is-plain-object": "2.0.4", + "to-object-path": "0.3.0" + } + } + } + }, + "uniq": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", + "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", + "dev": true + }, + "uniqs": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/uniqs/-/uniqs-2.0.0.tgz", + "integrity": "sha1-/+3ks2slKQaW5uFl1KWe25mOawI=", + "dev": true + }, + "unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "dev": true, + "requires": { + "unique-slug": "2.0.1" + } + }, + "unique-slug": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.1.tgz", + "integrity": "sha512-n9cU6+gITaVu7VGj1Z8feKMmfAjEAQGhwD9fE3zvpRRa0wEIx8ODYkVGfSc94M2OX00tUFV8wH3zYbm1I8mxFg==", + "dev": true, + "requires": { + "imurmurhash": "0.1.4" + } + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "dev": true + }, + "unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "dev": true, + "requires": { + "has-value": "0.3.1", + "isobject": "3.0.1" + }, + "dependencies": { + "has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "dev": true, + "requires": { + "get-value": "2.0.6", + "has-values": "0.1.4", + "isobject": "2.1.0" + }, + "dependencies": { + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", + "dev": true + } + } + }, + "upath": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.1.0.tgz", + "integrity": "sha512-bzpH/oBhoS/QI/YtbkqCg6VEiPYjSZtrHQM6/QnJS6OL9pKUFLqb3aFh4Scvwm45+7iAgiMkLhSbaZxUqmrprw==", + "dev": true + }, + "upper-case": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-1.1.3.tgz", + "integrity": "sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg=", + "dev": true + }, + "uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "dev": true, + "requires": { + "punycode": "2.1.1" + } + }, + "urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", + "dev": true + }, + "url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "dev": true, + "requires": { + "punycode": "1.3.2", + "querystring": "0.2.0" + }, + "dependencies": { + "punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", + "dev": true + } + } + }, + "url-loader": { + "version": "0.5.9", + "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-0.5.9.tgz", + "integrity": "sha512-B7QYFyvv+fOBqBVeefsxv6koWWtjmHaMFT6KZWti4KRw8YUD/hOU+3AECvXuzyVawIBx3z7zQRejXCDSO5kk1Q==", + "dev": true, + "requires": { + "loader-utils": "1.2.3", + "mime": "1.3.6" + }, + "dependencies": { + "mime": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.3.6.tgz", + "integrity": "sha1-WR2E02U6awtKO5343lqoEI5y5eA=", + "dev": true + } + } + }, + "url-parse": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.4.4.tgz", + "integrity": "sha512-/92DTTorg4JjktLNLe6GPS2/RvAd/RGr6LuktmWSMLEOa6rjnlrFXNgSbSmkNvCoL2T028A0a1JaJLzRMlFoHg==", + "dev": true, + "requires": { + "querystringify": "2.1.0", + "requires-port": "1.0.0" + } + }, + "use": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "dev": true + }, + "util": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", + "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", + "dev": true, + "requires": { + "inherits": "2.0.3" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true + }, + "utila": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz", + "integrity": "sha1-ihagXURWV6Oupe7MWxKk+lN5dyw=", + "dev": true + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", + "dev": true + }, + "uuid": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", + "dev": true + }, + "validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "requires": { + "spdx-correct": "3.1.0", + "spdx-expression-parse": "3.0.0" + } + }, + "vant": { + "version": "1.6.5", + "resolved": "http://bnpm.byted.org/vant/download/vant-1.6.5.tgz", + "integrity": "sha1-HowdA6YvL2a5d59rpK5WDAo4erI=", + "requires": { + "@babel/runtime": "7.3.1", + "@vant/icons": "1.0.9", + "@vue/babel-helper-vue-jsx-merge-props": "1.0.0-beta.2", + "vue-lazyload": "1.2.3" + }, + "dependencies": { + "vue-lazyload": { + "version": "1.2.3", + "resolved": "http://bnpm.byted.org/vue-lazyload/download/vue-lazyload-1.2.3.tgz", + "integrity": "sha1-kB+ewVx+bKeHgaK65KNDaGve2yw=" + } + } + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", + "dev": true + }, + "vendors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/vendors/-/vendors-1.0.2.tgz", + "integrity": "sha512-w/hry/368nO21AN9QljsaIhb9ZiZtZARoVH5f3CsFbawdLdayCgKRPup7CggujvySMxx0I91NOyxdVENohprLQ==", + "dev": true + }, + "vm-browserify": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz", + "integrity": "sha1-XX6kW7755Kb/ZflUOOCofDV9WnM=", + "dev": true, + "requires": { + "indexof": "0.0.1" + } + }, + "vue": { + "version": "2.6.6", + "resolved": "https://registry.npmjs.org/vue/-/vue-2.6.6.tgz", + "integrity": "sha512-Y2DdOZD8sxApS+iUlwv1v8U1qN41kq6Kw45lM6nVZKhygeWA49q7VCCXkjXqeDBXgurrKWkYQ9cJeEJwAq0b9Q==" + }, + "vue-hot-reload-api": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/vue-hot-reload-api/-/vue-hot-reload-api-2.3.2.tgz", + "integrity": "sha512-NpznMQoe/DzMG7nJjPkJKT7FdEn9xXfnntG7POfTmqnSaza97ylaBf1luZDh4IgV+vgUoR//id5pf8Ru+Ym+0g==", + "dev": true + }, + "vue-loader": { + "version": "13.7.3", + "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-13.7.3.tgz", + "integrity": "sha512-ACCwbfeC6HjY2pnDii+Zer+MZ6sdOtwvLmDXRK/BoD3WNR551V22R6KEagwHoTRJ0ZlIhpCBkptpCU6+Ri/05w==", + "dev": true, + "requires": { + "consolidate": "0.14.5", + "hash-sum": "1.0.2", + "loader-utils": "1.2.3", + "lru-cache": "4.1.5", + "postcss": "6.0.23", + "postcss-load-config": "1.2.0", + "postcss-selector-parser": "2.2.3", + "prettier": "1.16.4", + "resolve": "1.10.0", + "source-map": "0.6.1", + "vue-hot-reload-api": "2.3.2", + "vue-style-loader": "3.1.2", + "vue-template-es2015-compiler": "1.8.2" + }, + "dependencies": { + "cosmiconfig": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-2.2.2.tgz", + "integrity": "sha512-GiNXLwAFPYHy25XmTPpafYvn3CLAkJ8FLsscq78MQd1Kh0OU6Yzhn4eV2MVF4G9WEQZoWEGltatdR+ntGPMl5A==", + "dev": true, + "requires": { + "is-directory": "0.3.1", + "js-yaml": "3.7.0", + "minimist": "1.2.0", + "object-assign": "4.1.1", + "os-homedir": "1.0.2", + "parse-json": "2.2.0", + "require-from-string": "1.2.1" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "1.3.2" + } + }, + "postcss-load-config": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-1.2.0.tgz", + "integrity": "sha1-U56a/J3chiASHr+djDZz4M5Q0oo=", + "dev": true, + "requires": { + "cosmiconfig": "2.2.2", + "object-assign": "4.1.1", + "postcss-load-options": "1.2.0", + "postcss-load-plugins": "2.3.0" + } + }, + "require-from-string": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-1.2.1.tgz", + "integrity": "sha1-UpyczvJzgK3+yaL5ZbZJu+5jZBg=", + "dev": true + } + } + }, + "vue-style-loader": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/vue-style-loader/-/vue-style-loader-3.1.2.tgz", + "integrity": "sha512-ICtVdK/p+qXWpdSs2alWtsXt9YnDoYjQe0w5616j9+/EhjoxZkbun34uWgsMFnC1MhrMMwaWiImz3K2jK1Yp2Q==", + "dev": true, + "requires": { + "hash-sum": "1.0.2", + "loader-utils": "1.2.3" + } + }, + "vue-template-compiler": { + "version": "2.6.6", + "resolved": "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.6.6.tgz", + "integrity": "sha512-OakxDGyrmMQViCjkakQFbDZlG0NibiOzpLauOfyCUVRQc9yPmTqpiz9nF0VeA+dFkXegetw0E5x65BFhhLXO0A==", + "dev": true, + "requires": { + "de-indent": "1.0.2", + "he": "1.2.0" + } + }, + "vue-template-es2015-compiler": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/vue-template-es2015-compiler/-/vue-template-es2015-compiler-1.8.2.tgz", + "integrity": "sha512-cliV19VHLJqFUYbz/XeWXe5CO6guzwd0yrrqqp0bmjlMP3ZZULY7fu8RTC4+3lmHwo6ESVDHFDsvjB15hcR5IA==", + "dev": true + }, + "watchpack": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.6.0.tgz", + "integrity": "sha512-i6dHe3EyLjMmDlU1/bGQpEw25XSjkJULPuAVKCbNRefQVq48yXKUpwg538F7AZTf9kyr57zj++pQFltUa5H7yA==", + "dev": true, + "requires": { + "chokidar": "2.1.2", + "graceful-fs": "4.1.15", + "neo-async": "2.6.0" + } + }, + "wbuf": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", + "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "dev": true, + "requires": { + "minimalistic-assert": "1.0.1" + } + }, + "webpack": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-3.12.0.tgz", + "integrity": "sha512-Sw7MdIIOv/nkzPzee4o0EdvCuPmxT98+vVpIvwtcwcF1Q4SDSNp92vwcKc4REe7NItH9f1S4ra9FuQ7yuYZ8bQ==", + "dev": true, + "requires": { + "acorn": "5.7.3", + "acorn-dynamic-import": "2.0.2", + "ajv": "6.9.1", + "ajv-keywords": "3.4.0", + "async": "2.6.2", + "enhanced-resolve": "3.4.1", + "escope": "3.6.0", + "interpret": "1.2.0", + "json-loader": "0.5.7", + "json5": "0.5.1", + "loader-runner": "2.4.0", + "loader-utils": "1.2.3", + "memory-fs": "0.4.1", + "mkdirp": "0.5.1", + "node-libs-browser": "2.2.0", + "source-map": "0.5.7", + "supports-color": "4.5.0", + "tapable": "0.2.9", + "uglifyjs-webpack-plugin": "0.4.6", + "watchpack": "1.6.0", + "webpack-sources": "1.3.0", + "yargs": "8.0.2" + }, + "dependencies": { + "ajv": { + "version": "6.9.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.9.1.tgz", + "integrity": "sha512-XDN92U311aINL77ieWHmqCcNlwjoP5cHXDxIxbf2MaPYuCXOHS7gHH8jktxeK5omgd52XbSTX6a4Piwd1pQmzA==", + "dev": true, + "requires": { + "fast-deep-equal": "2.0.1", + "fast-json-stable-stringify": "2.0.0", + "json-schema-traverse": "0.4.1", + "uri-js": "4.2.2" + } + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, + "has-flag": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", + "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "supports-color": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", + "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", + "dev": true, + "requires": { + "has-flag": "2.0.0" + } + }, + "uglify-js": { + "version": "2.8.29", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", + "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", + "dev": true, + "requires": { + "source-map": "0.5.7", + "uglify-to-browserify": "1.0.2", + "yargs": "3.10.0" + }, + "dependencies": { + "yargs": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", + "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", + "dev": true, + "requires": { + "camelcase": "1.2.1", + "cliui": "2.1.0", + "decamelize": "1.2.0", + "window-size": "0.1.0" + } + } + } + }, + "uglifyjs-webpack-plugin": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-0.4.6.tgz", + "integrity": "sha1-uVH0q7a9YX5m9j64kUmOORdj4wk=", + "dev": true, + "requires": { + "source-map": "0.5.7", + "uglify-js": "2.8.29", + "webpack-sources": "1.3.0" + } + } + } + }, + "webpack-bundle-analyzer": { + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-2.13.1.tgz", + "integrity": "sha512-rwxyfecTAxoarCC9VlHlIpfQCmmJ/qWD5bpbjkof+7HrNhTNZIwZITxN6CdlYL2axGmwNUQ+tFgcSOiNXMf/sQ==", + "dev": true, + "requires": { + "acorn": "5.7.3", + "bfj-node4": "5.3.1", + "chalk": "2.4.2", + "commander": "2.17.1", + "ejs": "2.6.1", + "express": "4.16.4", + "filesize": "3.6.1", + "gzip-size": "4.1.0", + "lodash": "4.17.11", + "mkdirp": "0.5.1", + "opener": "1.5.1", + "ws": "4.1.0" + } + }, + "webpack-dev-middleware": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-1.12.2.tgz", + "integrity": "sha512-FCrqPy1yy/sN6U/SaEZcHKRXGlqU0DUaEBL45jkUYoB8foVb6wCnbIJ1HKIx+qUFTW+3JpVcCJCxZ8VATL4e+A==", + "dev": true, + "requires": { + "memory-fs": "0.4.1", + "mime": "1.6.0", + "path-is-absolute": "1.0.1", + "range-parser": "1.2.0", + "time-stamp": "2.2.0" + } + }, + "webpack-dev-server": { + "version": "2.11.3", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-2.11.3.tgz", + "integrity": "sha512-Qz22YEFhWx+M2vvJ+rQppRv39JA0h5NNbOOdODApdX6iZ52Diz7vTPXjF7kJlfn+Uc24Qr48I3SZ9yncQwRycg==", + "dev": true, + "requires": { + "ansi-html": "0.0.7", + "array-includes": "3.0.3", + "bonjour": "3.5.0", + "chokidar": "2.1.2", + "compression": "1.7.3", + "connect-history-api-fallback": "1.6.0", + "debug": "3.2.6", + "del": "3.0.0", + "express": "4.16.4", + "html-entities": "1.2.1", + "http-proxy-middleware": "0.17.4", + "import-local": "1.0.0", + "internal-ip": "1.2.0", + "ip": "1.1.5", + "killable": "1.0.1", + "loglevel": "1.6.1", + "opn": "5.4.0", + "portfinder": "1.0.20", + "selfsigned": "1.10.4", + "serve-index": "1.9.1", + "sockjs": "0.3.19", + "sockjs-client": "1.1.5", + "spdy": "3.4.7", + "strip-ansi": "3.0.1", + "supports-color": "5.5.0", + "webpack-dev-middleware": "1.12.2", + "yargs": "6.6.0" + }, + "dependencies": { + "camelcase": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", + "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", + "dev": true + }, + "cliui": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "dev": true, + "requires": { + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wrap-ansi": "2.1.0" + } + }, + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "2.1.1" + } + }, + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "dev": true, + "requires": { + "path-exists": "2.1.0", + "pinkie-promise": "2.0.1" + } + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "1.0.1" + } + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "dev": true, + "requires": { + "graceful-fs": "4.1.15", + "parse-json": "2.2.0", + "pify": "2.3.0", + "pinkie-promise": "2.0.1", + "strip-bom": "2.0.0" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + }, + "os-locale": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", + "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "dev": true, + "requires": { + "lcid": "1.0.0" + } + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "1.3.2" + } + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "dev": true, + "requires": { + "pinkie-promise": "2.0.1" + } + }, + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "dev": true, + "requires": { + "graceful-fs": "4.1.15", + "pify": "2.3.0", + "pinkie-promise": "2.0.1" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "dev": true, + "requires": { + "load-json-file": "1.1.0", + "normalize-package-data": "2.5.0", + "path-type": "1.1.0" + } + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "dev": true, + "requires": { + "find-up": "1.1.2", + "read-pkg": "1.1.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "dev": true, + "requires": { + "is-utf8": "0.2.1" + } + }, + "which-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", + "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", + "dev": true + }, + "y18n": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", + "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", + "dev": true + }, + "yargs": { + "version": "6.6.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-6.6.0.tgz", + "integrity": "sha1-eC7CHvQDNF+DCoCMo9UTr1YGUgg=", + "dev": true, + "requires": { + "camelcase": "3.0.0", + "cliui": "3.2.0", + "decamelize": "1.2.0", + "get-caller-file": "1.0.3", + "os-locale": "1.4.0", + "read-pkg-up": "1.0.1", + "require-directory": "2.1.1", + "require-main-filename": "1.0.1", + "set-blocking": "2.0.0", + "string-width": "1.0.2", + "which-module": "1.0.0", + "y18n": "3.2.1", + "yargs-parser": "4.2.1" + } + }, + "yargs-parser": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-4.2.1.tgz", + "integrity": "sha1-KczqwNxPA8bIe0qfIX3RjJ90hxw=", + "dev": true, + "requires": { + "camelcase": "3.0.0" + } + } + } + }, + "webpack-merge": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.2.1.tgz", + "integrity": "sha512-4p8WQyS98bUJcCvFMbdGZyZmsKuWjWVnVHnAS3FFg0HDaRVrPbkivx2RYCre8UiemD67RsiFFLfn4JhLAin8Vw==", + "dev": true, + "requires": { + "lodash": "4.17.11" + } + }, + "webpack-sources": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.3.0.tgz", + "integrity": "sha512-OiVgSrbGu7NEnEvQJJgdSFPl2qWKkWq5lHMhgiToIiN9w34EBnjYzSYs+VbL5KoYiLNtFFa7BZIKxRED3I32pA==", + "dev": true, + "requires": { + "source-list-map": "2.0.1", + "source-map": "0.6.1" + } + }, + "websocket-driver": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.0.tgz", + "integrity": "sha1-DK+dLXVdk67gSdS90NP+LMoqJOs=", + "dev": true, + "requires": { + "http-parser-js": "0.5.0", + "websocket-extensions": "0.1.3" + } + }, + "websocket-extensions": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.3.tgz", + "integrity": "sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg==", + "dev": true + }, + "whet.extend": { + "version": "0.9.9", + "resolved": "https://registry.npmjs.org/whet.extend/-/whet.extend-0.9.9.tgz", + "integrity": "sha1-+HfVv2SMl+WqVC+twW1qJZucEaE=", + "dev": true + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "2.0.0" + } + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "window-size": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", + "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=", + "dev": true + }, + "wordwrap": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", + "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", + "dev": true + }, + "worker-farm": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.6.0.tgz", + "integrity": "sha512-6w+3tHbM87WnSWnENBUvA2pxJPLhQUg5LKwUQHq3r+XPhIM+Gh2R5ycbwPCyuGbNg+lPgdcnQUhuC02kJCvffQ==", + "dev": true, + "requires": { + "errno": "0.1.7" + } + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dev": true, + "requires": { + "string-width": "1.0.2", + "strip-ansi": "3.0.1" + }, + "dependencies": { + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "1.0.1" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + } + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "ws": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-4.1.0.tgz", + "integrity": "sha512-ZGh/8kF9rrRNffkLFV4AzhvooEclrOH0xaugmqGsIfFgOE/pIz4fMc4Ef+5HSQqTEug2S9JZIWDR47duDSLfaA==", + "dev": true, + "requires": { + "async-limiter": "1.0.0", + "safe-buffer": "5.1.2" + } + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", + "dev": true + }, + "xxhashjs": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/xxhashjs/-/xxhashjs-0.2.2.tgz", + "integrity": "sha512-AkTuIuVTET12tpsVIQo+ZU6f/qDmKuRUcjaqR+OIvm+aCBsZ95i7UVY5WJ9TMsSaZ0DA2WxoZ4acu0sPH+OKAw==", + "dev": true, + "requires": { + "cuint": "0.2.2" + } + }, + "y18n": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", + "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "dev": true + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + }, + "yargs": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-8.0.2.tgz", + "integrity": "sha1-YpmpBVsc78lp/355wdkY3Osiw2A=", + "dev": true, + "requires": { + "camelcase": "4.1.0", + "cliui": "3.2.0", + "decamelize": "1.2.0", + "get-caller-file": "1.0.3", + "os-locale": "2.1.0", + "read-pkg-up": "2.0.0", + "require-directory": "2.1.1", + "require-main-filename": "1.0.1", + "set-blocking": "2.0.0", + "string-width": "2.1.1", + "which-module": "2.0.0", + "y18n": "3.2.1", + "yargs-parser": "7.0.0" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "cliui": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "dev": true, + "requires": { + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wrap-ansi": "2.1.0" + }, + "dependencies": { + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + } + } + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "1.0.1" + } + }, + "y18n": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", + "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", + "dev": true + } + } + }, + "yargs-parser": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-7.0.0.tgz", + "integrity": "sha1-jQrELxbqVd69MyyvTEA4s+P139k=", + "dev": true, + "requires": { + "camelcase": "4.1.0" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + } + } + } + } +} diff --git a/love-yuan/package.json b/love-yuan/package.json new file mode 100644 index 0000000..5743320 --- /dev/null +++ b/love-yuan/package.json @@ -0,0 +1,67 @@ +{ + "name": "love", + "version": "1.0.0", + "description": "A Vue.js project", + "author": "徐人杰 ", + "private": true, + "scripts": { + "dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js", + "start": "npm run dev", + "build": "node build/build.js" + }, + "dependencies": { + "amfe-flexible": "^2.2.1", + "lib-flexible": "^0.3.2", + "vant": "^1.6.5", + "vue": "^2.6.6" + }, + "devDependencies": { + "autoprefixer": "^7.1.2", + "babel-core": "^6.22.1", + "babel-helper-vue-jsx-merge-props": "^2.0.3", + "babel-loader": "^7.1.1", + "babel-plugin-component": "^1.1.1", + "babel-plugin-import": "^1.11.0", + "babel-plugin-syntax-jsx": "^6.18.0", + "babel-plugin-transform-runtime": "^6.22.0", + "babel-plugin-transform-vue-jsx": "^3.5.0", + "babel-preset-env": "^1.3.2", + "babel-preset-stage-2": "^6.22.0", + "chalk": "^2.0.1", + "copy-webpack-plugin": "^4.0.1", + "css-loader": "^0.28.0", + "extract-text-webpack-plugin": "^3.0.0", + "file-loader": "^1.1.4", + "friendly-errors-webpack-plugin": "^1.6.1", + "html-webpack-plugin": "^2.30.1", + "node-notifier": "^5.1.2", + "optimize-css-assets-webpack-plugin": "^3.2.0", + "ora": "^1.2.0", + "portfinder": "^1.0.13", + "postcss-import": "^11.0.0", + "postcss-loader": "^2.0.8", + "postcss-url": "^7.2.1", + "px2rem-loader": "^0.1.9", + "rimraf": "^2.6.0", + "semver": "^5.3.0", + "shelljs": "^0.7.6", + "uglifyjs-webpack-plugin": "^1.1.1", + "url-loader": "^0.5.8", + "vue-loader": "^13.3.0", + "vue-style-loader": "^3.0.1", + "vue-template-compiler": "^2.5.2", + "webpack": "^3.6.0", + "webpack-bundle-analyzer": "^2.9.0", + "webpack-dev-server": "^2.9.1", + "webpack-merge": "^4.1.0" + }, + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + }, + "browserslist": [ + "> 1%", + "last 2 versions", + "not ie <= 8" + ] +} diff --git a/love-yuan/postcss.config.js b/love-yuan/postcss.config.js new file mode 100644 index 0000000..7c796bc --- /dev/null +++ b/love-yuan/postcss.config.js @@ -0,0 +1,5 @@ +module.exports = { + plugins: { + 'autoprefixer': {browsers: 'last 5 version'} + } + } \ No newline at end of file diff --git a/love-yuan/src/App.vue b/love-yuan/src/App.vue new file mode 100644 index 0000000..e35bf3c --- /dev/null +++ b/love-yuan/src/App.vue @@ -0,0 +1,65 @@ + + + + + diff --git a/love-yuan/src/components/four.vue b/love-yuan/src/components/four.vue new file mode 100644 index 0000000..490b399 --- /dev/null +++ b/love-yuan/src/components/four.vue @@ -0,0 +1,113 @@ + + + + + diff --git a/love-yuan/src/components/one.vue b/love-yuan/src/components/one.vue new file mode 100644 index 0000000..d06e59e --- /dev/null +++ b/love-yuan/src/components/one.vue @@ -0,0 +1,80 @@ + + + + + diff --git a/love-yuan/src/components/three.vue b/love-yuan/src/components/three.vue new file mode 100644 index 0000000..9b136e3 --- /dev/null +++ b/love-yuan/src/components/three.vue @@ -0,0 +1,93 @@ + + + + + diff --git a/love-yuan/src/components/two.vue b/love-yuan/src/components/two.vue new file mode 100644 index 0000000..b94b316 --- /dev/null +++ b/love-yuan/src/components/two.vue @@ -0,0 +1,122 @@ + + + + + diff --git a/love-yuan/src/main.js b/love-yuan/src/main.js new file mode 100644 index 0000000..a258de7 --- /dev/null +++ b/love-yuan/src/main.js @@ -0,0 +1,22 @@ +// The Vue build version to load with the `import` command +// (runtime-only or standalone) has been set in webpack.base.conf with an alias. +import Vue from 'vue' + +import 'lib-flexible/flexible.js' +import { Swipe, SwipeItem, Icon, Button} from 'vant' + +import App from './App' +import './reset.css'; + + +Vue.config.productionTip = false + + +Vue.use(Swipe).use(SwipeItem).use(Icon).use(Button); + +/* eslint-disable no-new */ +new Vue({ + el: '#app', + components: { App }, + template: '' +}) diff --git a/love-yuan/src/reset.css b/love-yuan/src/reset.css new file mode 100644 index 0000000..d0f4fcd --- /dev/null +++ b/love-yuan/src/reset.css @@ -0,0 +1,366 @@ +/* http://meyerweb.com/eric/tools/css/reset/ + v2.0-modified | 20110126 + License: none (public domain) +*/ + +html, body, div, span, applet, object, iframe, +h1, h2, h3, h4, h5, h6, p, blockquote, pre, +a, abbr, acronym, address, big, cite, code, +del, dfn, em, img, ins, kbd, q, s, samp, +small, strike, strong, sub, sup, tt, var, +b, u, i, center, +dl, dt, dd, ol, ul, li, +fieldset, form, label, legend, +table, caption, tbody, tfoot, thead, tr, th, td, +article, aside, canvas, details, embed, +figure, figcaption, footer, header, hgroup, +menu, nav, output, ruby, section, summary, +time, mark, audio, video { + margin: 0; + padding: 0; + border: 0; + font-size: 100%; + font: inherit; + vertical-align: baseline; +} + +/* make sure to set some focus styles for accessibility */ +:focus { + outline: 0; +} + +/* HTML5 display-role reset for older browsers */ +article, aside, details, figcaption, figure, +footer, header, hgroup, menu, nav, section { + display: block; +} + +body { + line-height: 1; +} + +ol, ul { + list-style: none; +} + +blockquote, q { + quotes: none; +} + +blockquote:before, blockquote:after, +q:before, q:after { + content: ''; + content: none; +} + +table { + border-collapse: collapse; + border-spacing: 0; +} + +input[type=search]::-webkit-search-cancel-button, +input[type=search]::-webkit-search-decoration, +input[type=search]::-webkit-search-results-button, +input[type=search]::-webkit-search-results-decoration { + -webkit-appearance: none; + -moz-appearance: none; +} + +input[type=search] { + -webkit-appearance: none; + -moz-appearance: none; + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; +} + +textarea { + overflow: auto; + vertical-align: top; + resize: vertical; +} + +/** + * Correct `inline-block` display not defined in IE 6/7/8/9 and Firefox 3. + */ + +audio, +canvas, +video { + display: inline-block; + *display: inline; + *zoom: 1; + max-width: 100%; +} + +/** + * Prevent modern browsers from displaying `audio` without controls. + * Remove excess height in iOS 5 devices. + */ + +audio:not([controls]) { + display: none; + height: 0; +} + +/** + * Address styling not present in IE 7/8/9, Firefox 3, and Safari 4. + * Known issue: no IE 6 support. + */ + +[hidden] { + display: none; +} + +/** + * 1. Correct text resizing oddly in IE 6/7 when body `font-size` is set using + * `em` units. + * 2. Prevent iOS text size adjust after orientation change, without disabling + * user zoom. + */ + +html { + font-size: 100%; /* 1 */ + -webkit-text-size-adjust: 100%; /* 2 */ + -ms-text-size-adjust: 100%; /* 2 */ +} + +/** + * Address `outline` inconsistency between Chrome and other browsers. + */ + +a:focus { + outline: thin dotted; +} + +/** + * Improve readability when focused and also mouse hovered in all browsers. + */ + +a:active, +a:hover { + outline: 0; +} + +/** + * 1. Remove border when inside `a` element in IE 6/7/8/9 and Firefox 3. + * 2. Improve image quality when scaled in IE 7. + */ + +img { + border: 0; /* 1 */ + -ms-interpolation-mode: bicubic; /* 2 */ +} + +/** + * Address margin not present in IE 6/7/8/9, Safari 5, and Opera 11. + */ + +figure { + margin: 0; +} + +/** + * Correct margin displayed oddly in IE 6/7. + */ + +form { + margin: 0; +} + +/** + * Define consistent border, margin, and padding. + */ + +fieldset { + border: 1px solid #c0c0c0; + margin: 0 2px; + padding: 0.35em 0.625em 0.75em; +} + +/** + * 1. Correct color not being inherited in IE 6/7/8/9. + * 2. Correct text not wrapping in Firefox 3. + * 3. Correct alignment displayed oddly in IE 6/7. + */ + +legend { + border: 0; /* 1 */ + padding: 0; + white-space: normal; /* 2 */ + *margin-left: -7px; /* 3 */ +} + +/** + * 1. Correct font size not being inherited in all browsers. + * 2. Address margins set differently in IE 6/7, Firefox 3+, Safari 5, + * and Chrome. + * 3. Improve appearance and consistency in all browsers. + */ + +button, +input, +select, +textarea { + font-size: 100%; /* 1 */ + margin: 0; /* 2 */ + vertical-align: baseline; /* 3 */ + *vertical-align: middle; /* 3 */ +} + +/** + * Address Firefox 3+ setting `line-height` on `input` using `!important` in + * the UA stylesheet. + */ + +button, +input { + line-height: normal; +} + +/** + * Address inconsistent `text-transform` inheritance for `button` and `select`. + * All other form control elements do not inherit `text-transform` values. + * Correct `button` style inheritance in Chrome, Safari 5+, and IE 6+. + * Correct `select` style inheritance in Firefox 4+ and Opera. + */ + +button, +select { + text-transform: none; +} + +/** + * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` + * and `video` controls. + * 2. Correct inability to style clickable `input` types in iOS. + * 3. Improve usability and consistency of cursor style between image-type + * `input` and others. + * 4. Remove inner spacing in IE 7 without affecting normal text inputs. + * Known issue: inner spacing remains in IE 6. + */ + +button, +html input[type="button"], /* 1 */ +input[type="reset"], +input[type="submit"] { + -webkit-appearance: button; /* 2 */ + cursor: pointer; /* 3 */ + *overflow: visible; /* 4 */ +} + +/** + * Re-set default cursor for disabled elements. + */ + +button[disabled], +html input[disabled] { + cursor: default; +} + +/** + * 1. Address box sizing set to content-box in IE 8/9. + * 2. Remove excess padding in IE 8/9. + * 3. Remove excess padding in IE 7. + * Known issue: excess padding remains in IE 6. + */ + +input[type="checkbox"], +input[type="radio"] { + box-sizing: border-box; /* 1 */ + padding: 0; /* 2 */ + *height: 13px; /* 3 */ + *width: 13px; /* 3 */ +} + +/** + * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome. + * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome + * (include `-moz` to future-proof). + */ + +input[type="search"] { + -webkit-appearance: textfield; /* 1 */ + -moz-box-sizing: content-box; + -webkit-box-sizing: content-box; /* 2 */ + box-sizing: content-box; +} + +/** + * Remove inner padding and search cancel button in Safari 5 and Chrome + * on OS X. + */ + +input[type="search"]::-webkit-search-cancel-button, +input[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} + +/** + * Remove inner padding and border in Firefox 3+. + */ + +button::-moz-focus-inner, +input::-moz-focus-inner { + border: 0; + padding: 0; +} + +/** + * 1. Remove default vertical scrollbar in IE 6/7/8/9. + * 2. Improve readability and alignment in all browsers. + */ + +textarea { + overflow: auto; /* 1 */ + vertical-align: top; /* 2 */ +} + +/** + * Remove most spacing between table cells. + */ + +table { + border-collapse: collapse; + border-spacing: 0; +} + +html, +button, +input, +select, +textarea { + color: #222; +} + + +::-moz-selection { + background: #b3d4fc; + text-shadow: none; +} + +::selection { + background: #b3d4fc; + text-shadow: none; +} + +img { + vertical-align: middle; +} + +fieldset { + border: 0; + margin: 0; + padding: 0; +} + +textarea { + resize: vertical; +} + +.chromeframe { + margin: 0.2em 0; + background: #ccc; + color: #000; + padding: 0.2em 0; +} \ No newline at end of file diff --git a/love-yuan/static/.gitkeep b/love-yuan/static/.gitkeep new file mode 100644 index 0000000..e69de29 From 06f64075f441539e2a0f06c5fc3ca3af88a99a1d Mon Sep 17 00:00:00 2001 From: huayifeng <461249104@qq.com> Date: Sat, 18 Jul 2020 16:25:27 +0800 Subject: [PATCH 7/8] fix: ll --- love-yuan/dist/index.html | 1 + .../app.ec3e554946f880f79e6f914717789fb8.css | 2 ++ ...p.ec3e554946f880f79e6f914717789fb8.css.map | 1 + .../static/js/app.3b1cf55ac78dd14f33d5.js | 2 ++ .../static/js/app.3b1cf55ac78dd14f33d5.js.map | 1 + .../js/manifest.3ad1d5771e9b13dbdad2.js | 2 ++ .../js/manifest.3ad1d5771e9b13dbdad2.js.map | 1 + .../static/js/vendor.fd212e28dcc820b6a3be.js | 8 ++++++ .../js/vendor.fd212e28dcc820b6a3be.js.map | 1 + love-yuan/index1.html | 25 +++++++++++++++++++ 10 files changed, 44 insertions(+) create mode 100644 love-yuan/dist/index.html create mode 100644 love-yuan/dist/static/css/app.ec3e554946f880f79e6f914717789fb8.css create mode 100644 love-yuan/dist/static/css/app.ec3e554946f880f79e6f914717789fb8.css.map create mode 100644 love-yuan/dist/static/js/app.3b1cf55ac78dd14f33d5.js create mode 100644 love-yuan/dist/static/js/app.3b1cf55ac78dd14f33d5.js.map create mode 100644 love-yuan/dist/static/js/manifest.3ad1d5771e9b13dbdad2.js create mode 100644 love-yuan/dist/static/js/manifest.3ad1d5771e9b13dbdad2.js.map create mode 100644 love-yuan/dist/static/js/vendor.fd212e28dcc820b6a3be.js create mode 100644 love-yuan/dist/static/js/vendor.fd212e28dcc820b6a3be.js.map create mode 100644 love-yuan/index1.html diff --git a/love-yuan/dist/index.html b/love-yuan/dist/index.html new file mode 100644 index 0000000..517bc9f --- /dev/null +++ b/love-yuan/dist/index.html @@ -0,0 +1 @@ +❤️
    \ No newline at end of file diff --git a/love-yuan/dist/static/css/app.ec3e554946f880f79e6f914717789fb8.css b/love-yuan/dist/static/css/app.ec3e554946f880f79e6f914717789fb8.css new file mode 100644 index 0000000..8915354 --- /dev/null +++ b/love-yuan/dist/static/css/app.ec3e554946f880f79e6f914717789fb8.css @@ -0,0 +1,2 @@ +*{margin:0;padding:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}html{overflow:hidden;width:100%}#app,body,html{height:100%}#app{font-family:Avenir,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-align:center;color:#2c3e50}.one,.van-swipe{height:100%}.one{background-color:#f9f1ff;margin-top:-.24rem}.one p:first-child{padding-top:1.6rem}.one p{margin-top:.266667rem}.one .next{font-size:.533333rem;position:absolute;left:48%;bottom:1.333333rem;animation:leaves 5s ease-in-out infinite alternate;-webkit-animation:dance .5s infinite alternate}.two{background-color:#daf6ff;height:100%;margin-top:-.24rem}.two p:first-child{padding-top:.8rem}.two p{margin-top:.266667rem}.two .next{font-size:.533333rem;position:absolute;left:48%;bottom:1.333333rem}.two .lover,.two .next{animation:leaves 5s ease-in-out infinite alternate;-webkit-animation:dance .5s infinite alternate}.two .lover{margin-top:.533333rem;font-size:.8rem;cursor:pointer}.avatar{width:1.333333rem;height:1.333333rem;border-radius:8.88rem;margin:0 .133333rem}.photo{width:2.666667rem;margin-bottom:.266667rem}@-webkit-keyframes dance{0%{-webkit-transform:scale(1);transform:scale(1)}to{-webkit-transform:scale(2);transform:scale(2)}}@keyframes dance{0%{-webkit-transform:scale(1);transform:scale(1)}to{-webkit-transform:scale(2);transform:scale(2)}}.three{background-color:#f9f1ff;height:100%;margin-top:-.24rem;position:relative}.three p:first-child{padding-top:1.6rem}.three p{margin-top:.266667rem}.three button{position:absolute;font-size:.266667rem;background-color:#fff}.four{background-color:#f9f1ff;height:100%;margin-top:-.24rem}.four button{position:absolute;top:9.333333rem;background:#fff}.four p:first-child{padding-top:1.6rem}.four p{margin-top:.266667rem}.four .btn1{left:1.333333rem}.four .btn2{left:4.533333rem}.rsv{-o-transition:all .2s;transition:all .2s;-moz-transition:all .2s;-webkit-transition:all .2s}.rjt,.rsv{padding:.133333rem .266667rem;border:.013333rem solid #d2d2d2}.rjt{top:10.666667rem;left:5.333333rem}a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}:focus{outline:0}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:"";content:none}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration,input[type=search]::-webkit-search-results-button,input[type=search]::-webkit-search-results-decoration{-webkit-appearance:none;-moz-appearance:none}input[type=search]{-webkit-appearance:none;-moz-appearance:none}audio,canvas,video{display:inline-block;*display:inline;*zoom:1;max-width:100%}audio:not([controls]){display:none;height:0}[hidden]{display:none}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}a:focus{outline:thin dotted}a:active,a:hover{outline:0}img{border:0;-ms-interpolation-mode:bicubic}figure,form{margin:0}fieldset{border:.013333rem solid silver;margin:0 .026667rem;padding:.35em .625em .75em}legend{border:0;padding:0;white-space:normal;*margin-left:-.093333rem}button,input,select,textarea{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle}button,input{line-height:normal}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer;*overflow:visible}button[disabled],html input[disabled]{cursor:default}input[type=checkbox],input[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0;*height:.173333rem;*width:.173333rem}input[type=search]{-webkit-appearance:textfield;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}button,html,input,select,textarea{color:#222}::-moz-selection{background:#b3d4fc;text-shadow:none}::selection{background:#b3d4fc;text-shadow:none}img{vertical-align:middle}fieldset{border:0;margin:0;padding:0}textarea{resize:vertical}.chromeframe{margin:.2em 0;background:#ccc;color:#000;padding:.2em 0} +/*# sourceMappingURL=app.ec3e554946f880f79e6f914717789fb8.css.map */ \ No newline at end of file diff --git a/love-yuan/dist/static/css/app.ec3e554946f880f79e6f914717789fb8.css.map b/love-yuan/dist/static/css/app.ec3e554946f880f79e6f914717789fb8.css.map new file mode 100644 index 0000000..548a63d --- /dev/null +++ b/love-yuan/dist/static/css/app.ec3e554946f880f79e6f914717789fb8.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["app.ec3e554946f880f79e6f914717789fb8.css"],"names":[],"mappings":"AACA,EACE,QAAS,CACT,SAAU,CACV,wBAAyB,CACtB,qBAAsB,CACrB,oBAAqB,CACjB,gBACV,CACA,KACE,eAAgB,CAChB,UAEF,CAIA,eALE,WAYF,CAPA,KAEE,6CAAmD,CACnD,kCAAmC,CACnC,iCAAkC,CAClC,iBAAkB,CAClB,aACF,CAwBA,gBAtBE,WA0BF,CAJA,KACE,wBAAyB,CAEzB,kBACF,CACA,mBACE,kBACF,CACA,OACE,qBACF,CACA,WACE,oBAAsB,CACtB,iBAAkB,CAClB,QAAS,CACT,kBAAmB,CACnB,kDAAmD,CACnD,8CACF,CAqBA,KACE,wBAAyB,CACzB,WAAY,CACZ,kBACF,CACA,mBACE,iBACF,CACA,OACE,qBACF,CACA,WACE,oBAAsB,CACtB,iBAAkB,CAClB,QAAS,CACT,kBAGF,CACA,uBAHE,kDAAmD,CACnD,8CAQF,CANA,YACE,qBAAuB,CACvB,eAAiB,CACjB,cAGF,CACA,QACE,iBAAkB,CAClB,kBAAmB,CACnB,qBAAsB,CACtB,mBACF,CACA,OACE,iBAAkB,CAClB,wBACF,CACA,yBACA,GACI,0BAA6B,CACrB,kBACZ,CACA,GACI,0BAA6B,CACrB,kBACZ,CACA,CACA,iBACA,GACI,0BAA6B,CACrB,kBACZ,CACA,GACI,0BAA6B,CACrB,kBACZ,CACA,CACA,OACE,wBAAyB,CACzB,WAAY,CACZ,kBAAoB,CACpB,iBACF,CACA,qBACE,kBACF,CACA,SACE,qBACF,CACA,cACE,iBAAkB,CAClB,oBAAsB,CACtB,qBACF,CACA,MACE,wBAAyB,CACzB,WAAY,CACZ,kBACF,CACA,aACE,iBAAkB,CAClB,eAAgB,CAChB,eACF,CACA,oBACE,kBACF,CACA,QACE,qBACF,CACA,YACE,gBACF,CACA,YACE,gBACF,CACA,KACE,qBAAuB,CACvB,kBAAoB,CACpB,uBAAyB,CAEzB,0BAIF,CACA,UAHE,6BAAgC,CAChC,+BAOF,CALA,KAGE,gBAAiB,CACjB,gBACF,CAKA,2ZAiFE,QAAS,CACT,SAAU,CACV,QAAS,CACT,cAAe,CACf,YAAa,CACb,uBACF,CAIA,OACE,SACF,CAIA,8EAWE,aACF,CAEA,KACE,aACF,CAEA,MAEE,eACF,CAEA,aAEE,WACF,CAEA,oDAIE,UAAW,CACX,YACF,CAOA,uMAIE,uBAAwB,CACxB,oBACF,CAEA,mBACE,uBAAwB,CACxB,oBAGF,CAYA,mBAGE,oBAAqB,EACrB,cAAgB,EAChB,MAAQ,CACR,cACF,CAOA,sBACE,YAAa,CACb,QACF,CAOA,SACE,YACF,CASA,KACE,cAAe,CAEf,6BAA8B,CAE9B,yBAEF,CAMA,QACE,mBACF,CAMA,iBAEE,SACF,CAOA,IACE,QAAS,CAET,8BAEF,CAcA,YACE,QACF,CAMA,SACE,8BAAiC,CACjC,mBAAqB,CACrB,0BACF,CAQA,OACE,QAAS,CAET,SAAU,CACV,kBAAmB,EAEnB,uBAEF,CASA,6BAIE,cAAe,CAEf,QAAS,CAET,uBAAwB,EAExB,qBAEF,CAOA,aAEE,kBACF,CASA,cAEE,mBACF,CAYA,oEAIE,yBAA0B,CAE1B,cAAe,EAEf,gBAEF,CAMA,sCAEE,cACF,CASA,uCAEE,6BAA8B,CACtB,qBAAsB,CAE9B,SAAU,EAEV,iBAAoB,EAEpB,gBAEF,CAQA,mBACE,4BAA6B,CAE7B,8BAA+B,CAE/B,sBACF,CAOA,+FAEE,uBACF,CAMA,iDAEE,QAAS,CACT,SACF,CAOA,SACE,aAAc,CAEd,kBAEF,CAMA,MACE,wBAAyB,CACzB,gBACF,CAEA,kCAKE,UACF,CAEA,iBACE,kBAAmB,CACnB,gBACF,CAEA,YACE,kBAAmB,CACnB,gBACF,CAEA,IACE,qBACF,CAEA,SACE,QAAS,CACT,QAAS,CACT,SACF,CAEA,SACE,eACF,CAEA,aACE,aAAe,CACf,eAAgB,CAChB,UAAW,CACX,cACF","file":"app.ec3e554946f880f79e6f914717789fb8.css","sourcesContent":["\n* {\n margin: 0;\n padding: 0;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\nhtml {\n overflow: hidden;\n width: 100%;\n height: 100%;\n}\nbody {\n height: 100%;\n}\n#app {\n height: 100%;\n font-family: \"Avenir\", Helvetica, Arial, sans-serif;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n text-align: center;\n color: #2c3e50;\n}\n.van-swipe {\n height: 100%;\n}\n@-webkit-keyframes dance {\n0% {\n -webkit-transform: scale(1.0);\n transform: scale(1.0);\n}\n100% {\n -webkit-transform: scale(2.0);\n transform: scale(2.0);\n}\n}\n@keyframes dance {\n0% {\n -webkit-transform: scale(1.0);\n transform: scale(1.0);\n}\n100% {\n -webkit-transform: scale(2.0);\n transform: scale(2.0);\n}\n}\n.one {\n background-color: #f9f1ff;\n height: 100%;\n margin-top: -0.24rem;\n}\n.one p:nth-child(1) {\n padding-top: 1.6rem;\n}\n.one p {\n margin-top: 0.266667rem;\n}\n.one .next {\n font-size: 0.533333rem;\n position: absolute;\n left: 48%;\n bottom: 1.333333rem;\n animation: leaves 5s ease-in-out infinite alternate;\n -webkit-animation: dance .5s infinite alternate;\n}\n@-webkit-keyframes dance {\n0% {\n -webkit-transform: scale(1);\n transform: scale(1);\n}\n100% {\n -webkit-transform: scale(1.5);\n transform: scale(1.5);\n}\n}\n@keyframes dance {\n0% {\n -webkit-transform: scale(1);\n transform: scale(1);\n}\n100% {\n -webkit-transform: scale(1.5);\n transform: scale(1.5);\n}\n}\n.two {\n background-color: #daf6ff;\n height: 100%;\n margin-top: -0.24rem;\n}\n.two p:nth-child(1) {\n padding-top: 0.8rem;\n}\n.two p {\n margin-top: 0.266667rem;\n}\n.two .next {\n font-size: 0.533333rem;\n position: absolute;\n left: 48%;\n bottom: 1.333333rem;\n animation: leaves 5s ease-in-out infinite alternate;\n -webkit-animation: dance 0.5s infinite alternate;\n}\n.two .lover {\n margin-top: 0.533333rem;\n font-size: 0.8rem;\n cursor: pointer;\n animation: leaves 5s ease-in-out infinite alternate;\n -webkit-animation: dance 0.5s infinite alternate;\n}\n.avatar {\n width: 1.333333rem;\n height: 1.333333rem;\n border-radius: 8.88rem;\n margin: 0 0.133333rem;\n}\n.photo {\n width: 2.666667rem;\n margin-bottom: 0.266667rem;\n}\n@-webkit-keyframes dance {\n0% {\n -webkit-transform: scale(1.0);\n transform: scale(1.0);\n}\n100% {\n -webkit-transform: scale(2.0);\n transform: scale(2.0);\n}\n}\n@keyframes dance {\n0% {\n -webkit-transform: scale(1.0);\n transform: scale(1.0);\n}\n100% {\n -webkit-transform: scale(2.0);\n transform: scale(2.0);\n}\n}\n.three {\n background-color: #f9f1ff;\n height: 100%;\n margin-top: -0.24rem;\n position: relative;\n}\n.three p:nth-child(1) {\n padding-top: 1.6rem;\n}\n.three p {\n margin-top: 0.266667rem;\n}\n.three button {\n position: absolute;\n font-size: 0.266667rem;\n background-color: #fff;\n}\n.four {\n background-color: #f9f1ff;\n height: 100%;\n margin-top: -0.24rem;\n}\n.four button {\n position: absolute;\n top: 9.333333rem;\n background: #fff;\n}\n.four p:nth-child(1) {\n padding-top: 1.6rem;\n}\n.four p {\n margin-top: 0.266667rem;\n}\n.four .btn1 {\n left: 1.333333rem;\n}\n.four .btn2 {\n left: 4.533333rem;\n}\n.rsv {\n -o-transition: all 0.2s;\n transition: all 0.2s;\n -moz-transition: all 0.2s;\n /* Firefox 4 */\n -webkit-transition: all 0.2s;\n /* Safari 和 Chrome */\n padding: 0.133333rem 0.266667rem;\n border: 0.013333rem solid #d2d2d2;\n}\n.rjt {\n padding: 0.133333rem 0.266667rem;\n border: 0.013333rem solid #d2d2d2;\n top: 10.666667rem;\n left: 5.333333rem;\n}/* http://meyerweb.com/eric/tools/css/reset/\n v2.0-modified | 20110126\n License: none (public domain)\n*/\n\nhtml,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\nb,\nu,\ni,\ncenter,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo {\n margin: 0;\n padding: 0;\n border: 0;\n font-size: 100%;\n font: inherit;\n vertical-align: baseline;\n}\n\n/* make sure to set some focus styles for accessibility */\n\n:focus {\n outline: 0;\n}\n\n/* HTML5 display-role reset for older browsers */\n\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\nsection {\n display: block;\n}\n\nbody {\n line-height: 1;\n}\n\nol,\nul {\n list-style: none;\n}\n\nblockquote,\nq {\n quotes: none;\n}\n\nblockquote:before,\nblockquote:after,\nq:before,\nq:after {\n content: '';\n content: none;\n}\n\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\n\ninput[type=search]::-webkit-search-cancel-button,\ninput[type=search]::-webkit-search-decoration,\ninput[type=search]::-webkit-search-results-button,\ninput[type=search]::-webkit-search-results-decoration {\n -webkit-appearance: none;\n -moz-appearance: none;\n}\n\ninput[type=search] {\n -webkit-appearance: none;\n -moz-appearance: none;\n -webkit-box-sizing: content-box;\n box-sizing: content-box;\n}\n\ntextarea {\n overflow: auto;\n vertical-align: top;\n resize: vertical;\n}\n\n/**\n * Correct `inline-block` display not defined in IE 6/7/8/9 and Firefox 3.\n */\n\naudio,\ncanvas,\nvideo {\n display: inline-block;\n *display: inline;\n *zoom: 1;\n max-width: 100%;\n}\n\n/**\n * Prevent modern browsers from displaying `audio` without controls.\n * Remove excess height in iOS 5 devices.\n */\n\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n\n/**\n * Address styling not present in IE 7/8/9, Firefox 3, and Safari 4.\n * Known issue: no IE 6 support.\n */\n\n[hidden] {\n display: none;\n}\n\n/**\n * 1. Correct text resizing oddly in IE 6/7 when body `font-size` is set using\n * `em` units.\n * 2. Prevent iOS text size adjust after orientation change, without disabling\n * user zoom.\n */\n\nhtml {\n font-size: 100%;\n /* 1 */\n -webkit-text-size-adjust: 100%;\n /* 2 */\n -ms-text-size-adjust: 100%;\n /* 2 */\n}\n\n/**\n * Address `outline` inconsistency between Chrome and other browsers.\n */\n\na:focus {\n outline: thin dotted;\n}\n\n/**\n * Improve readability when focused and also mouse hovered in all browsers.\n */\n\na:active,\na:hover {\n outline: 0;\n}\n\n/**\n * 1. Remove border when inside `a` element in IE 6/7/8/9 and Firefox 3.\n * 2. Improve image quality when scaled in IE 7.\n */\n\nimg {\n border: 0;\n /* 1 */\n -ms-interpolation-mode: bicubic;\n /* 2 */\n}\n\n/**\n * Address margin not present in IE 6/7/8/9, Safari 5, and Opera 11.\n */\n\nfigure {\n margin: 0;\n}\n\n/**\n * Correct margin displayed oddly in IE 6/7.\n */\n\nform {\n margin: 0;\n}\n\n/**\n * Define consistent border, margin, and padding.\n */\n\nfieldset {\n border: 0.013333rem solid #c0c0c0;\n margin: 0 0.026667rem;\n padding: 0.35em 0.625em 0.75em;\n}\n\n/**\n * 1. Correct color not being inherited in IE 6/7/8/9.\n * 2. Correct text not wrapping in Firefox 3.\n * 3. Correct alignment displayed oddly in IE 6/7.\n */\n\nlegend {\n border: 0;\n /* 1 */\n padding: 0;\n white-space: normal;\n /* 2 */\n *margin-left: -0.093333rem;\n /* 3 */\n}\n\n/**\n * 1. Correct font size not being inherited in all browsers.\n * 2. Address margins set differently in IE 6/7, Firefox 3+, Safari 5,\n * and Chrome.\n * 3. Improve appearance and consistency in all browsers.\n */\n\nbutton,\ninput,\nselect,\ntextarea {\n font-size: 100%;\n /* 1 */\n margin: 0;\n /* 2 */\n vertical-align: baseline;\n /* 3 */\n *vertical-align: middle;\n /* 3 */\n}\n\n/**\n * Address Firefox 3+ setting `line-height` on `input` using `!important` in\n * the UA stylesheet.\n */\n\nbutton,\ninput {\n line-height: normal;\n}\n\n/**\n * Address inconsistent `text-transform` inheritance for `button` and `select`.\n * All other form control elements do not inherit `text-transform` values.\n * Correct `button` style inheritance in Chrome, Safari 5+, and IE 6+.\n * Correct `select` style inheritance in Firefox 4+ and Opera.\n */\n\nbutton,\nselect {\n text-transform: none;\n}\n\n/**\n * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`\n * and `video` controls.\n * 2. Correct inability to style clickable `input` types in iOS.\n * 3. Improve usability and consistency of cursor style between image-type\n * `input` and others.\n * 4. Remove inner spacing in IE 7 without affecting normal text inputs.\n * Known issue: inner spacing remains in IE 6.\n */\n\nbutton,\nhtml input[type=\"button\"],\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n -webkit-appearance: button;\n /* 2 */\n cursor: pointer;\n /* 3 */\n *overflow: visible;\n /* 4 */\n}\n\n/**\n * Re-set default cursor for disabled elements.\n */\n\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\n\n/**\n * 1. Address box sizing set to content-box in IE 8/9.\n * 2. Remove excess padding in IE 8/9.\n * 3. Remove excess padding in IE 7.\n * Known issue: excess padding remains in IE 6.\n */\n\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n /* 1 */\n padding: 0;\n /* 2 */\n *height: 0.173333rem;\n /* 3 */\n *width: 0.173333rem;\n /* 3 */\n}\n\n/**\n * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.\n * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome\n * (include `-moz` to future-proof).\n */\n\ninput[type=\"search\"] {\n -webkit-appearance: textfield;\n /* 1 */\n -webkit-box-sizing: content-box;\n /* 2 */\n box-sizing: content-box;\n}\n\n/**\n * Remove inner padding and search cancel button in Safari 5 and Chrome\n * on OS X.\n */\n\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * Remove inner padding and border in Firefox 3+.\n */\n\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\n\n/**\n * 1. Remove default vertical scrollbar in IE 6/7/8/9.\n * 2. Improve readability and alignment in all browsers.\n */\n\ntextarea {\n overflow: auto;\n /* 1 */\n vertical-align: top;\n /* 2 */\n}\n\n/**\n * Remove most spacing between table cells.\n */\n\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\n\nhtml,\nbutton,\ninput,\nselect,\ntextarea {\n color: #222;\n}\n\n::-moz-selection {\n background: #b3d4fc;\n text-shadow: none;\n}\n\n::selection {\n background: #b3d4fc;\n text-shadow: none;\n}\n\nimg {\n vertical-align: middle;\n}\n\nfieldset {\n border: 0;\n margin: 0;\n padding: 0;\n}\n\ntextarea {\n resize: vertical;\n}\n\n.chromeframe {\n margin: 0.2em 0;\n background: #ccc;\n color: #000;\n padding: 0.2em 0;\n}"]} \ No newline at end of file diff --git a/love-yuan/dist/static/js/app.3b1cf55ac78dd14f33d5.js b/love-yuan/dist/static/js/app.3b1cf55ac78dd14f33d5.js new file mode 100644 index 0000000..a0f66be --- /dev/null +++ b/love-yuan/dist/static/js/app.3b1cf55ac78dd14f33d5.js @@ -0,0 +1,2 @@ +webpackJsonp([1],{"0ukV":function(t,e){},"1GLP":function(t,e){},"8Cmu":function(t,e){},N7QA:function(t,e){},NHnr:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var s=n("kV13"),r=(n("D0oh"),n("6xlI")),a={mounted(){setInterval(()=>{const t=this.arr.shift();t&&this.texts.push(t)},1e3)},data(){const t=new Date;return{arr:["圆圆","❄️","我有话想对你说","🌹","遇见你我真的非常开心","😄",`今天是${t.getFullYear()}-${t.getMonth()+1}-${t.getDate()}`,"📅","这本来是一个一点都不特别的日子","🍥","但是接下来发生的事可能会让今天变得有点特别","❓","如果你猜今天貌似有点不一样特别而且对我有感觉 就请下滑","..."],texts:[]}}},o={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"one"},[t._l(t.texts,function(e){return n("p",{key:e},[t._v("\n "+t._s(e)+"\n ")])}),t._v(" "),0===t.arr.length?n("p",{staticClass:"next"},[n("van-icon",{attrs:{name:"arrow-down"}})],1):t._e()],2)},staticRenderFns:[]};var i=n("C7Lr")(a,o,!1,function(t){n("1GLP")},null,null).exports,l={data(){new Date;return{arr:["唔,也许一开始我们可能有点被外貌协会收编了","😆","但是后来我看到了小圆的温柔,小圆看到了我的才华","🎻","本来一个月前应该见面的我们,因为疫情","👫","我们被迫当了整整两个月的网友","😅","终于见面了,小圆依旧是如此美丽温柔(10级滤镜加上)","🌼","还记得我们每次说话都是那么的默契","👇","你想我的时候我正想你","😋","那么以后我负责帅气你负责美丽,怎么样❓","💓","请继续往下滑。"],texts:[]}},methods:{add(){const t=this.arr.shift();t&&this.texts.push(t)}}},c={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"two"},[n("p",[t._v("不断点击这个小爱心 你即将拥有好运")]),t._v(" "),n("p",{staticClass:"lover",on:{click:t.add}},[t._v("💗")]),t._v(" "),t._l(t.texts,function(e,s){return n("p",{key:e},[1===s?[t._m(0,!0)]:t._e(),t._v(" "),3===s?[t._m(1,!0)]:t._e(),t._v(" "),4===s?[t._m(2,!0)]:t._e(),t._v("\n "+t._s(e)+"\n ")],2)}),t._v(" "),0===t.arr.length?n("p",{staticClass:"next"},[n("van-icon",{attrs:{name:"arrow-down"}})],1):t._e()],2)},staticRenderFns:[function(){var t=this.$createElement,e=this._self._c||t;return e("div",[e("img",{staticClass:"avatar",attrs:{src:"https://s3.qiufengh.com/love/WechatIMG931.jpeg",alt:""}}),this._v("\n ❤️ ❤️ ❤️ 💗 ❤️ ❤️ ❤️\n "),e("img",{staticClass:"avatar",attrs:{src:"https://s3.qiufengh.com/love/WechatIMG930.jpeg",alt:""}})])},function(){var t=this.$createElement,e=this._self._c||t;return e("div",[e("img",{staticClass:"photo",attrs:{src:"",alt:""}})])},function(){var t=this.$createElement,e=this._self._c||t;return e("div",[e("img",{staticClass:"photo",attrs:{src:"",alt:""}})])}]};var u=n("C7Lr")(l,c,!1,function(t){n("N7QA")},null,null).exports,v={mounted(){setInterval(()=>{this.countdown=Date.now().valueOf()-localStorage.getItem("love_now")},1e3)},data:()=>({countdown:0}),computed:{countdownDetail(){let t=this.countdown,e=0,n=0,s=0,r=0,a=0,o=0;return t/1e3/60/60/24/30/12>1&&(t-=1e3*(e=Math.floor(t/1e3/60/60/24/30/12))*60*60*24*30*12),t/1e3/60/60/24/30>1&&(t-=1e3*(n=Math.floor(t/1e3/60/60/24/30))*60*60*24*30),t/1e3/60/60/24>1&&(t-=1e3*(s=Math.floor(t/1e3/60/60/24))*60*60*24),t/1e3/60/60>1&&(t-=1e3*(r=Math.floor(t/1e3/60/60))*60*60),t/1e3/60>1&&(t-=1e3*(a=Math.floor(t/1e3/60))*60),t/1e3>1&&(t-=1e3*(o=Math.floor(t/1e3))),{y:e,m:n,d:s,h:r,min:a,s:o}}}},_={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"three"},[[n("p",[t._v("华益峰💗袁媛")]),t._v(" "),n("p",[t._v("已经在一起了")]),t._v(" "),n("p",[t._v("❤️❤️❤️❤️❤️❤️💗❤️❤️❤️❤️❤️❤️")]),t._v(" "),n("p",[t._v(t._s(t.countdownDetail.y)+"年")]),t._v(" "),n("p",[t._v(t._s(t.countdownDetail.m)+"月")]),t._v(" "),n("p",[t._v(t._s(t.countdownDetail.d)+"日")]),t._v(" "),n("p",[t._v(t._s(t.countdownDetail.h)+"时")]),t._v(" "),n("p",[t._v(t._s(t.countdownDetail.min)+"分")]),t._v(" "),n("p",[t._v(t._s(t.countdownDetail.s)+"秒")])]],2)},staticRenderFns:[]};var h=n("C7Lr")(v,_,!1,function(t){n("0ukV")},null,null).exports,d={mounted(){},data(){const t=new Date;return{arr:["所以就在今天小华正式地向你表白","👨","他喜欢你","🌹",`今天是${t.getFullYear()}-${t.getMonth()+1}-${t.getDate()}`,"📅","这将会是一个值得纪念的日志","😄","圆圆小盆友,你要不要考虑和小华在一起?","⭕️","请选择"],count:0}},methods:{handleError(){const t=document.querySelector(".btn1"),e=document.querySelector(".btn2");alert("你肯定是嫌弃我不好看, 唔,不行,这个选择我不同意,超级变变变。"),e.style.display="none",t.style.left="40%"},handleRight(){this.count++;const t=document.querySelector(".btn1");if(1===this.count)alert("嘿嘿,你同意了,我怎么能这么轻易放过你,喜欢我就来追我呀。");else if(this.count<5);else if(5===this.count)alert("来追我呀,追到就是你的啦。");else if(!(this.count<10)){if(10===this.count){const t=Date.now();return alert(`恭喜你,喜提小华一只,提货码${t},请截图保存,此码独一无二,稍后进行兑换, 以后就要在你家蹭你的喝你的啦。`),alert("重新刷新页面,会有惊喜哦"),void localStorage.setItem("love_now",t)}return}t.style.top=~~(600*Math.random())+"px",t.style.left=~~(300*Math.random())+"px"}}},p={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"four"},[t._l(t.arr,function(e){return n("p",{key:e},[t._v("\n "+t._s(e)+"\n ")])}),t._v(" "),0===t.arr.length?n("p",{staticClass:"next"},[n("van-icon",{attrs:{name:"arrow-down"}})],1):t._e(),t._v(" "),n("button",{staticClass:"rsv btn1",on:{click:t.handleRight}},[t._v("💕 同意在一起")]),t._v(" "),n("button",{staticClass:"rsv btn2",on:{click:t.handleError}},[t._v("\n ❌ 我美丽你丑我们不一样\n ")])],2)},staticRenderFns:[]};var f={name:"App",components:{One:i,Two:u,Three:h,Four:n("C7Lr")(d,p,!1,function(t){n("8Cmu")},null,null).exports},data:()=>({isTime:localStorage.getItem("love_now")})},m={render:function(){var t=this.$createElement,e=this._self._c||t;return e("div",{attrs:{id:"app"}},[this.isTime?e("Three"):e("van-swipe",{attrs:{vertical:!0,loop:!1}},[e("van-swipe-item",[e("One")],1),this._v(" "),e("van-swipe-item",[e("Two")],1),this._v(" "),e("van-swipe-item",[e("Four")],1)],1)],1)},staticRenderFns:[]};var w=n("C7Lr")(f,m,!1,function(t){n("u+Av")},null,null).exports;n("vdop");s.a.config.productionTip=!1,s.a.use(r.c).use(r.d).use(r.b).use(r.a),new s.a({el:"#app",components:{App:w},template:""})},"u+Av":function(t,e){},vdop:function(t,e){}},["NHnr"]); +//# sourceMappingURL=app.3b1cf55ac78dd14f33d5.js.map \ No newline at end of file diff --git a/love-yuan/dist/static/js/app.3b1cf55ac78dd14f33d5.js.map b/love-yuan/dist/static/js/app.3b1cf55ac78dd14f33d5.js.map new file mode 100644 index 0000000..0c868a1 --- /dev/null +++ b/love-yuan/dist/static/js/app.3b1cf55ac78dd14f33d5.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///src/components/one.vue","webpack:///./src/components/one.vue?c26a","webpack:///./src/components/one.vue","webpack:///src/components/two.vue","webpack:///./src/components/two.vue?61a8","webpack:///./src/components/two.vue","webpack:///src/components/three.vue","webpack:///./src/components/three.vue?a28e","webpack:///./src/components/three.vue","webpack:///src/components/four.vue","webpack:///./src/components/four.vue?0aa7","webpack:///./src/components/four.vue","webpack:///src/App.vue","webpack:///./src/App.vue?95bd","webpack:///./src/App.vue","webpack:///./src/main.js"],"names":["one","[object Object]","setInterval","item","this","arr","shift","texts","push","date","Date","getFullYear","getMonth","getDate","components_one","render","_vm","_h","$createElement","_c","_self","staticClass","_l","text","key","_v","_s","length","attrs","name","_e","staticRenderFns","src_components_one","__webpack_require__","normalizeComponent","ssrContext","two","methods","components_two","on","click","add","idx","_m","src","alt","src_components_two","two_normalizeComponent","three","countdown","now","valueOf","localStorage","getItem","data","computed","ct","y","m","d","h","min","s","Math","floor","components_three","countdownDetail","src_components_three","three_normalizeComponent","four","count","btn1","document","querySelector","btn2","alert","style","display","left","time","setItem","top","random","components_four","handleRight","handleError","App","components","One","Two","Three","Four","four_normalizeComponent","isTime","selectortype_template_index_0_src_App","id","vertical","loop","src_App","App_normalizeComponent","Vue","config","productionTip","use","Swipe","SwipeItem","Icon","Button","el","template"],"mappings":"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","file":"static/js/app.3b1cf55ac78dd14f33d5.js","sourcesContent":["\n\n\n\n\n\n\n\n// WEBPACK FOOTER //\n// src/components/one.vue","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"one\"},[_vm._l((_vm.texts),function(text){return _c('p',{key:text},[_vm._v(\"\\n \"+_vm._s(text)+\"\\n \")])}),_vm._v(\" \"),(_vm.arr.length === 0)?_c('p',{staticClass:\"next\"},[_c('van-icon',{attrs:{\"name\":\"arrow-down\"}})],1):_vm._e()],2)}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\nexport default esExports\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vue-loader@13.7.3@vue-loader/lib/template-compiler?{\"id\":\"data-v-148a9534\",\"hasScoped\":false,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/_vue-loader@13.7.3@vue-loader/lib/selector.js?type=template&index=0!./src/components/one.vue\n// module id = null\n// module chunks = ","function injectStyle (ssrContext) {\n require(\"!!../../node_modules/_extract-text-webpack-plugin@3.0.2@extract-text-webpack-plugin/dist/loader.js?{\\\"omit\\\":1,\\\"remove\\\":true}!vue-style-loader!css-loader?{\\\"sourceMap\\\":true,\\\"importLoader\\\":5}!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/style-compiler/index?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-148a9534\\\",\\\"scoped\\\":false,\\\"hasInlineConfig\\\":false}!px2rem-loader?{\\\"emUnit\\\":75}!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=styles&index=0!./one.vue\")\n}\nvar normalizeComponent = require(\"!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/component-normalizer\")\n/* script */\nexport * from \"!!babel-loader!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=script&index=0!./one.vue\"\nimport __vue_script__ from \"!!babel-loader!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=script&index=0!./one.vue\"\n/* template */\nimport __vue_template__ from \"!!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-148a9534\\\",\\\"hasScoped\\\":false,\\\"transformToRequire\\\":{\\\"video\\\":[\\\"src\\\",\\\"poster\\\"],\\\"source\\\":\\\"src\\\",\\\"img\\\":\\\"src\\\",\\\"image\\\":\\\"xlink:href\\\"},\\\"buble\\\":{\\\"transforms\\\":{}}}!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=template&index=0!./one.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_template__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/one.vue\n// module id = null\n// module chunks = ","\n\n\n\n\n\n\n\n// WEBPACK FOOTER //\n// src/components/two.vue","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"two\"},[_c('p',[_vm._v(\"不断点击这个小爱心 你即将拥有好运\")]),_vm._v(\" \"),_c('p',{staticClass:\"lover\",on:{\"click\":_vm.add}},[_vm._v(\"💗\")]),_vm._v(\" \"),_vm._l((_vm.texts),function(text,idx){return _c('p',{key:text},[(idx === 1)?[_vm._m(0,true)]:_vm._e(),_vm._v(\" \"),(idx === 3)?[_vm._m(1,true)]:_vm._e(),_vm._v(\" \"),(idx === 4)?[_vm._m(2,true)]:_vm._e(),_vm._v(\"\\n \"+_vm._s(text)+\"\\n \")],2)}),_vm._v(\" \"),(_vm.arr.length === 0)?_c('p',{staticClass:\"next\"},[_c('van-icon',{attrs:{\"name\":\"arrow-down\"}})],1):_vm._e()],2)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('img',{staticClass:\"avatar\",attrs:{\"src\":\"https://s3.qiufengh.com/love/WechatIMG931.jpeg\",\"alt\":\"\"}}),_vm._v(\"\\n ❤️ ❤️ ❤️ 💗 ❤️ ❤️ ❤️\\n \"),_c('img',{staticClass:\"avatar\",attrs:{\"src\":\"https://s3.qiufengh.com/love/WechatIMG930.jpeg\",\"alt\":\"\"}})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('img',{staticClass:\"photo\",attrs:{\"src\":\"\",\"alt\":\"\"}})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('img',{staticClass:\"photo\",attrs:{\"src\":\"\",\"alt\":\"\"}})])}]\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\nexport default esExports\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vue-loader@13.7.3@vue-loader/lib/template-compiler?{\"id\":\"data-v-00b191f9\",\"hasScoped\":false,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/_vue-loader@13.7.3@vue-loader/lib/selector.js?type=template&index=0!./src/components/two.vue\n// module id = null\n// module chunks = ","function injectStyle (ssrContext) {\n require(\"!!../../node_modules/_extract-text-webpack-plugin@3.0.2@extract-text-webpack-plugin/dist/loader.js?{\\\"omit\\\":1,\\\"remove\\\":true}!vue-style-loader!css-loader?{\\\"sourceMap\\\":true,\\\"importLoader\\\":5}!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/style-compiler/index?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-00b191f9\\\",\\\"scoped\\\":false,\\\"hasInlineConfig\\\":false}!px2rem-loader?{\\\"emUnit\\\":75}!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=styles&index=0!./two.vue\")\n}\nvar normalizeComponent = require(\"!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/component-normalizer\")\n/* script */\nexport * from \"!!babel-loader!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=script&index=0!./two.vue\"\nimport __vue_script__ from \"!!babel-loader!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=script&index=0!./two.vue\"\n/* template */\nimport __vue_template__ from \"!!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-00b191f9\\\",\\\"hasScoped\\\":false,\\\"transformToRequire\\\":{\\\"video\\\":[\\\"src\\\",\\\"poster\\\"],\\\"source\\\":\\\"src\\\",\\\"img\\\":\\\"src\\\",\\\"image\\\":\\\"xlink:href\\\"},\\\"buble\\\":{\\\"transforms\\\":{}}}!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=template&index=0!./two.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_template__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/two.vue\n// module id = null\n// module chunks = ","\n\n\n\n\n\n\n\n// WEBPACK FOOTER //\n// src/components/three.vue","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"three\"},[[_c('p',[_vm._v(\"华益峰💗袁媛\")]),_vm._v(\" \"),_c('p',[_vm._v(\"已经在一起了\")]),_vm._v(\" \"),_c('p',[_vm._v(\"❤️❤️❤️❤️❤️❤️💗❤️❤️❤️❤️❤️❤️\")]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.countdownDetail.y)+\"年\")]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.countdownDetail.m)+\"月\")]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.countdownDetail.d)+\"日\")]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.countdownDetail.h)+\"时\")]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.countdownDetail.min)+\"分\")]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.countdownDetail.s)+\"秒\")])]],2)}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\nexport default esExports\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vue-loader@13.7.3@vue-loader/lib/template-compiler?{\"id\":\"data-v-68b81df7\",\"hasScoped\":false,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/_vue-loader@13.7.3@vue-loader/lib/selector.js?type=template&index=0!./src/components/three.vue\n// module id = null\n// module chunks = ","function injectStyle (ssrContext) {\n require(\"!!../../node_modules/_extract-text-webpack-plugin@3.0.2@extract-text-webpack-plugin/dist/loader.js?{\\\"omit\\\":1,\\\"remove\\\":true}!vue-style-loader!css-loader?{\\\"sourceMap\\\":true,\\\"importLoader\\\":5}!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/style-compiler/index?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-68b81df7\\\",\\\"scoped\\\":false,\\\"hasInlineConfig\\\":false}!px2rem-loader?{\\\"emUnit\\\":75}!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=styles&index=0!./three.vue\")\n}\nvar normalizeComponent = require(\"!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/component-normalizer\")\n/* script */\nexport * from \"!!babel-loader!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=script&index=0!./three.vue\"\nimport __vue_script__ from \"!!babel-loader!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=script&index=0!./three.vue\"\n/* template */\nimport __vue_template__ from \"!!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-68b81df7\\\",\\\"hasScoped\\\":false,\\\"transformToRequire\\\":{\\\"video\\\":[\\\"src\\\",\\\"poster\\\"],\\\"source\\\":\\\"src\\\",\\\"img\\\":\\\"src\\\",\\\"image\\\":\\\"xlink:href\\\"},\\\"buble\\\":{\\\"transforms\\\":{}}}!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=template&index=0!./three.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_template__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/three.vue\n// module id = null\n// module chunks = ","\n\n\n\n\n\n\n\n// WEBPACK FOOTER //\n// src/components/four.vue","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"four\"},[_vm._l((_vm.arr),function(text){return _c('p',{key:text},[_vm._v(\"\\n \"+_vm._s(text)+\"\\n \")])}),_vm._v(\" \"),(_vm.arr.length === 0)?_c('p',{staticClass:\"next\"},[_c('van-icon',{attrs:{\"name\":\"arrow-down\"}})],1):_vm._e(),_vm._v(\" \"),_c('button',{staticClass:\"rsv btn1\",on:{\"click\":_vm.handleRight}},[_vm._v(\"💕 同意在一起\")]),_vm._v(\" \"),_c('button',{staticClass:\"rsv btn2\",on:{\"click\":_vm.handleError}},[_vm._v(\"\\n ❌ 我美丽你丑我们不一样\\n \")])],2)}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\nexport default esExports\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vue-loader@13.7.3@vue-loader/lib/template-compiler?{\"id\":\"data-v-7afe8fb2\",\"hasScoped\":false,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/_vue-loader@13.7.3@vue-loader/lib/selector.js?type=template&index=0!./src/components/four.vue\n// module id = null\n// module chunks = ","function injectStyle (ssrContext) {\n require(\"!!../../node_modules/_extract-text-webpack-plugin@3.0.2@extract-text-webpack-plugin/dist/loader.js?{\\\"omit\\\":1,\\\"remove\\\":true}!vue-style-loader!css-loader?{\\\"sourceMap\\\":true,\\\"importLoader\\\":5}!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/style-compiler/index?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-7afe8fb2\\\",\\\"scoped\\\":false,\\\"hasInlineConfig\\\":false}!px2rem-loader?{\\\"emUnit\\\":75}!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=styles&index=0!./four.vue\")\n}\nvar normalizeComponent = require(\"!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/component-normalizer\")\n/* script */\nexport * from \"!!babel-loader!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=script&index=0!./four.vue\"\nimport __vue_script__ from \"!!babel-loader!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=script&index=0!./four.vue\"\n/* template */\nimport __vue_template__ from \"!!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-7afe8fb2\\\",\\\"hasScoped\\\":false,\\\"transformToRequire\\\":{\\\"video\\\":[\\\"src\\\",\\\"poster\\\"],\\\"source\\\":\\\"src\\\",\\\"img\\\":\\\"src\\\",\\\"image\\\":\\\"xlink:href\\\"},\\\"buble\\\":{\\\"transforms\\\":{}}}!../../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=template&index=0!./four.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_template__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/components/four.vue\n// module id = null\n// module chunks = ","\n\n\n\n\n\n\n\n// WEBPACK FOOTER //\n// src/App.vue","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"app\"}},[(_vm.isTime)?_c('Three'):_c('van-swipe',{attrs:{\"vertical\":true,\"loop\":false}},[_c('van-swipe-item',[_c('One')],1),_vm._v(\" \"),_c('van-swipe-item',[_c('Two')],1),_vm._v(\" \"),_c('van-swipe-item',[_c('Four')],1)],1)],1)}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\nexport default esExports\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vue-loader@13.7.3@vue-loader/lib/template-compiler?{\"id\":\"data-v-90ed7b00\",\"hasScoped\":false,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/_vue-loader@13.7.3@vue-loader/lib/selector.js?type=template&index=0!./src/App.vue\n// module id = null\n// module chunks = ","function injectStyle (ssrContext) {\n require(\"!!../node_modules/_extract-text-webpack-plugin@3.0.2@extract-text-webpack-plugin/dist/loader.js?{\\\"omit\\\":1,\\\"remove\\\":true}!vue-style-loader!css-loader?{\\\"sourceMap\\\":true,\\\"importLoader\\\":5}!../node_modules/_vue-loader@13.7.3@vue-loader/lib/style-compiler/index?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-90ed7b00\\\",\\\"scoped\\\":false,\\\"hasInlineConfig\\\":false}!px2rem-loader?{\\\"emUnit\\\":75}!../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=styles&index=0!./App.vue\")\n}\nvar normalizeComponent = require(\"!../node_modules/_vue-loader@13.7.3@vue-loader/lib/component-normalizer\")\n/* script */\nexport * from \"!!babel-loader!../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=script&index=0!./App.vue\"\nimport __vue_script__ from \"!!babel-loader!../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=script&index=0!./App.vue\"\n/* template */\nimport __vue_template__ from \"!!../node_modules/_vue-loader@13.7.3@vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-90ed7b00\\\",\\\"hasScoped\\\":false,\\\"transformToRequire\\\":{\\\"video\\\":[\\\"src\\\",\\\"poster\\\"],\\\"source\\\":\\\"src\\\",\\\"img\\\":\\\"src\\\",\\\"image\\\":\\\"xlink:href\\\"},\\\"buble\\\":{\\\"transforms\\\":{}}}!../node_modules/_vue-loader@13.7.3@vue-loader/lib/selector?type=template&index=0!./App.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_template__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/App.vue\n// module id = null\n// module chunks = ","// The Vue build version to load with the `import` command\n// (runtime-only or standalone) has been set in webpack.base.conf with an alias.\nimport Vue from 'vue'\n\nimport 'lib-flexible/flexible.js'\nimport { Swipe, SwipeItem, Icon, Button} from 'vant'\n\nimport App from './App'\nimport './reset.css';\n\n\nVue.config.productionTip = false\n\n\nVue.use(Swipe).use(SwipeItem).use(Icon).use(Button);\n\n/* eslint-disable no-new */\nnew Vue({\n el: '#app',\n components: { App },\n template: ''\n})\n\n\n\n// WEBPACK FOOTER //\n// ./src/main.js"],"sourceRoot":""} \ No newline at end of file diff --git a/love-yuan/dist/static/js/manifest.3ad1d5771e9b13dbdad2.js b/love-yuan/dist/static/js/manifest.3ad1d5771e9b13dbdad2.js new file mode 100644 index 0000000..1acd401 --- /dev/null +++ b/love-yuan/dist/static/js/manifest.3ad1d5771e9b13dbdad2.js @@ -0,0 +1,2 @@ +!function(r){var n=window.webpackJsonp;window.webpackJsonp=function(e,u,c){for(var f,i,p,a=0,l=[];a2?n-2:0),r=2;rn&&e>p?"horizontal":n>e&&n>p?"vertical":"")},resetTouchStatus:function(){this.direction="",this.deltaX=0,this.deltaY=0,this.offsetX=0,this.offsetY=0}}},m=!1;if(!s.h)try{var g={};Object.defineProperty(g,"passive",{get:function(){m=!0}}),window.addEventListener("test-passive",null,g)}catch(t){}function y(t,e,n,i){void 0===i&&(i=!1),s.h||t.addEventListener(e,n,!!m&&{capture:!1,passive:i})}function b(t,e,n){s.h||t.removeEventListener(e,n)}function k(t){t.stopPropagation()}function x(t,e){("boolean"!=typeof t.cancelable||t.cancelable)&&t.preventDefault(),e&&k(t)}var S=Object(s.k)("overlay"),w=S[0],C=S[1];function $(t,e,n,r){var s=i({zIndex:e.zIndex},e.customStyle);return t("transition",{attrs:{name:"van-fade"}},[t("div",o()([{directives:[{name:"show",value:e.visible}],style:s,class:[C(),e.className],on:{touchmove:function(t){x(t,!0)}}},l(r,!0)]))])}$.props={zIndex:Number,className:null,visible:Boolean,customStyle:Object};var _,O=w($),T={className:"",customStyle:{}};function A(){if(f.top){var t=f.top.vm;t.$emit("click-overlay"),t.closeOnClickOverlay&&(t.onClickOverlay?t.onClickOverlay():t.close())}}function j(){if(_||(_=h(O,{on:{click:A}})),f.top){var t=f.top,e=t.vm,n=t.config,r=e.$el,o=r&&r.parentNode?r.parentNode:document.body;o&&o.appendChild(_.$el),i(_,T,n,{visible:!0})}else _.visible=!1}function I(t){var e=f.stack;e.length&&(f.top.vm===t?(e.pop(),j()):f.stack=e.filter(function(e){return e.vm!==t}))}function B(t,e){void 0===e&&(e=window);for(var n=t;n&&"HTML"!==n.tagName&&"BODY"!==n.tagName&&1===n.nodeType&&n!==e;){var i=window.getComputedStyle(n).overflowY;if("scroll"===i||"auto"===i)return n;n=n.parentNode}return e}function E(t){return"scrollTop"in t?t.scrollTop:t.pageYOffset}function N(t){return(t===window?0:t.getBoundingClientRect().top)+E(window)}function L(t){return t===window?t.innerHeight:t.getBoundingClientRect().height}var D={mixins:[v],props:{value:Boolean,overlay:Boolean,overlayStyle:Object,overlayClass:String,closeOnClickOverlay:Boolean,zIndex:[String,Number],getContainer:[String,Function],lockScroll:{type:Boolean,default:!0},lazyRender:{type:Boolean,default:!0}},data:function(){return{inited:this.value}},computed:{shouldRender:function(){return this.inited||!this.lazyRender}},watch:{value:function(t){var e=t?"open":"close";this.inited=this.inited||this.value,this[e](),this.$emit(e)},getContainer:function(){this.move()},overlay:function(){this.renderOverlay()}},mounted:function(){this.getContainer&&this.move(),this.value&&this.open()},activated:function(){this.value&&this.open()},beforeDestroy:function(){this.close(),this.getContainer&&this.$parent&&this.$parent.$el&&this.$parent.$el.appendChild(this.$el)},deactivated:function(){this.close()},methods:{open:function(){this.$isServer||this.opened||(void 0!==this.zIndex&&(f.zIndex=this.zIndex),this.opened=!0,this.renderOverlay(),this.lockScroll&&(y(document,"touchstart",this.touchStart),y(document,"touchmove",this.onTouchMove),f.lockCount||document.body.classList.add("van-overflow-hidden"),f.lockCount++))},close:function(){this.opened&&(this.lockScroll&&(f.lockCount--,b(document,"touchstart",this.touchStart),b(document,"touchmove",this.onTouchMove),f.lockCount||document.body.classList.remove("van-overflow-hidden")),this.opened=!1,I(this),this.$emit("input",!1))},move:function(){var t,e=this.getContainer;e?t="string"==typeof e?document.querySelector(e):e():this.$parent&&(t=this.$parent.$el),t&&t!==this.$el.parentNode&&t.appendChild(this.$el),this.overlay&&j()},onTouchMove:function(t){this.touchMove(t);var e=this.deltaY>0?"10":"01",n=B(t.target,this.$el),i=n.scrollHeight,r=n.offsetHeight,o=n.scrollTop,s="11";0===o?s=r>=i?"00":"01":o+r>=i&&(s="10"),"11"===s||"vertical"!==this.direction||parseInt(s,2)&parseInt(e,2)||x(t,!0)},renderOverlay:function(){var t,e;!this.$isServer&&this.value&&(this.overlay?(t=this,e={zIndex:f.zIndex++,className:this.overlayClass,customStyle:this.overlayStyle},f.stack.some(function(e){return e.vm===t})||(f.stack.push({vm:t,config:e}),j())):I(this),this.updateZIndex())},updateZIndex:function(){var t=this;this.$nextTick(function(){t.$el.style.zIndex=f.zIndex++})}}},F=Object(s.k)("info"),M=F[0],z=F[1];function P(t,e,n,i){if(Object(s.d)(e.info)&&""!==e.info)return t("div",o()([{class:z()},l(i,!0)]),[e.info])}P.props={info:[String,Number]};var V=M(P),R=Object(s.k)("icon")[0];function H(t,e,n,i){var r,s=!!(r=e.name)&&-1!==r.indexOf("/");return t(e.tag,o()([{class:[e.classPrefix,s?"van-icon--image":e.classPrefix+"-"+e.name],style:{color:e.color,fontSize:e.size}},l(i,!0)]),[n.default&&n.default(),s&&t("img",{attrs:{src:e.name}}),t(V,{attrs:{info:e.info}})])}H.props={name:String,size:String,color:String,info:[String,Number],tag:{type:String,default:"i"},classPrefix:{type:String,default:"van-icon"}};var W=R(H),q=Object(s.k)("loading"),Y=q[0],U=q[1],K="#c9c9c9";function X(t,e,n,i){var r=e.color,s=e.size,a=e.type,c="white"===r||"black"===r?r:"",u={color:"black"===r?K:r,width:s,height:s},d=[];if("spinner"===a)for(var h=0;h<12;h++)d.push(t("i"));var f="circular"===a&&t("svg",{class:U("circular"),attrs:{viewBox:"25 25 50 50"}},[t("circle",{attrs:{cx:"50",cy:"50",r:"20",fill:"none"}})]);return t("div",o()([{class:U([a,c]),style:u},l(i,!0)]),[t("span",{class:U("spinner",a)},[d,f])])}X.props={size:String,type:{type:String,default:"circular"},color:{type:String,default:K}};var Q=Y(X),J=Object(s.k)("popup"),Z=J[0],G=J[1],tt=Z({mixins:[D],props:{position:String,transition:String,overlay:{type:Boolean,default:!0},closeOnClickOverlay:{type:Boolean,default:!0}},render:function(t){var e,n=this;if(this.shouldRender){var i=this.position,r=function(t){return function(){return n.$emit(t)}};return t("transition",{attrs:{name:this.transition||(i?"van-popup-slide-"+i:"van-fade")},on:{afterEnter:r("opened"),afterLeave:r("closed")}},[t("div",{directives:[{name:"show",value:this.value}],class:G((e={},e[i]=i,e))},[this.slots()])])}}}),et=Object(s.k)("actionsheet"),nt=et[0],it=et[1];function rt(t,e,n,i){var r=e.title,s=e.cancelText,a=function(){d(i,"input",!1),d(i,"cancel")};return t(tt,o()([{class:it({"safe-area-inset-bottom":e.safeAreaInsetBottom}),attrs:{value:e.value,position:"bottom",overlay:e.overlay,lazyRender:e.lazyRender,getContainer:e.getContainer,closeOnClickOverlay:e.closeOnClickOverlay},on:{input:function(t){d(i,"input",t)}}},l(i)]),[r?t("div",{class:[it("header"),"van-hairline--top-bottom"]},[r,t(W,{attrs:{name:"close"},class:it("close"),on:{click:a}})]):e.actions.map(function(e,n){return t("div",{class:[it("item",{disabled:e.disabled||e.loading}),e.className,"van-hairline--top"],on:{click:function(t){t.stopPropagation(),e.disabled||e.loading||(e.callback&&e.callback(e),d(i,"select",e,n))}}},[e.loading?t(Q,{class:it("loading"),attrs:{size:"20px"}}):[t("span",{class:it("name")},[e.name]),e.subname&&t("span",{class:it("subname")},[e.subname])]])}),n.default&&t("div",{class:it("content")},[n.default()]),s&&t("div",{class:it("cancel"),on:{click:a}},[s])])}rt.props=i({},D.props,{title:String,actions:Array,cancelText:String,safeAreaInsetBottom:Boolean,overlay:{type:Boolean,default:!0},closeOnClickOverlay:{type:Boolean,default:!0}});var ot=nt(rt);function st(t){return t=t.replace(/[^-|\d]/g,""),/^((\+86)|(86))?(1)\d{10}$/.test(t)||/^0[0-9-]{10,13}$/.test(t)}var at=n("TExJ");function ct(t){return Array.isArray(t)?t.map(function(t){return ct(t)}):"object"==typeof t?Object(at.a)({},t):t}var ut={title:String,loading:Boolean,showToolbar:Boolean,cancelButtonText:String,confirmButtonText:String,visibleItemCount:{type:Number,default:5},itemHeight:{type:Number,default:44}},lt=Object(s.k)("picker-column"),dt=lt[0],ht=lt[1],ft=dt({props:{valueKey:String,className:String,itemHeight:Number,defaultIndex:Number,initialOptions:Array,visibleItemCount:Number},data:function(){return{startY:0,offset:0,duration:0,startOffset:0,options:ct(this.initialOptions),currentIndex:this.defaultIndex}},created:function(){this.$parent.children&&this.$parent.children.push(this),this.setIndex(this.currentIndex)},destroyed:function(){var t=this.$parent.children;t&&t.splice(t.indexOf(this),1)},watch:{defaultIndex:function(){this.setIndex(this.defaultIndex)}},computed:{count:function(){return this.options.length}},methods:{onTouchStart:function(t){this.startY=t.touches[0].clientY,this.startOffset=this.offset,this.duration=0},onTouchMove:function(t){x(t);var e=t.touches[0].clientY-this.startY;this.offset=Object(s.j)(this.startOffset+e,-this.count*this.itemHeight,this.itemHeight)},onTouchEnd:function(){if(this.offset!==this.startOffset){this.duration=200;var t=Object(s.j)(Math.round(-this.offset/this.itemHeight),0,this.count-1);this.setIndex(t,!0)}},adjustIndex:function(t){for(var e=t=Object(s.j)(t,0,this.count);e=0;n--)if(!this.isDisabled(this.options[n]))return n},isDisabled:function(t){return Object(s.g)(t)&&t.disabled},getOptionText:function(t){return Object(s.g)(t)&&this.valueKey in t?t[this.valueKey]:t},setIndex:function(t,e){t=this.adjustIndex(t)||0,this.offset=-t*this.itemHeight,t!==this.currentIndex&&(this.currentIndex=t,e&&this.$emit("change",t))},setValue:function(t){for(var e=this.options,n=0;nn&&(e=e.slice(0,n),t.value=e),e},onInput:function(t){this.$emit("input",this.format(t.target))},onFocus:function(t){this.focused=!0,this.$emit("focus",t),this.readonly&&this.blur()},onBlur:function(t){this.focused=!1,this.$emit("blur",t),Object(s.e)()&&window.scrollTo(0,window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0)},onClickLeftIcon:function(){this.$emit("click-left-icon")},onClickRightIcon:function(){this.$emit("click-icon"),this.$emit("click-right-icon"),this.onIconClick&&this.onIconClick()},onClear:function(t){x(t),this.$emit("input",""),this.$emit("clear")},onKeypress:function(t){if("number"===this.type){var e=t.keyCode,n=-1===String(this.value).indexOf(".");e>=48&&e<=57||46===e&&n||45===e||x(t)}"search"===this.type&&13===t.keyCode&&this.blur(),this.$emit("keypress",t)},adjustSize:function(){var t=this.$refs.input;if("textarea"===this.type&&this.autosize&&t){t.style.height="auto";var e=t.scrollHeight;if(Object(s.g)(this.autosize)){var n=this.autosize,i=n.maxHeight,r=n.minHeight;i&&(e=Math.min(e,i)),r&&(e=Math.max(e,r))}e&&(t.style.height=e+"px")}},renderInput:function(){var t=this.$createElement,e={ref:"input",class:Lt("control",this.inputAlign),domProps:{value:this.value},attrs:i({},this.$attrs,{readonly:this.readonly}),on:this.listeners};return"textarea"===this.type?t("textarea",o()([{},e])):t("input",o()([{attrs:{type:this.type}},e]))},renderLeftIcon:function(){var t=this.$createElement;if(this.slots("left-icon")||this.leftIcon)return t("div",{class:Lt("left-icon"),on:{click:this.onClickLeftIcon}},[this.slots("left-icon")||t(W,{attrs:{name:this.leftIcon}})])},renderRightIcon:function(){var t=this.$createElement,e=this.slots;if(e("right-icon")||e("icon")||this.rightIcon||this.icon)return t("div",{class:Lt("right-icon"),on:{click:this.onClickRightIcon}},[e("right-icon")||e("icon")||t(W,{attrs:{name:this.rightIcon||this.icon}})])}},render:function(t){var e,n=this.slots,i=this.labelAlign,r={icon:this.renderLeftIcon};return n("label")&&(r.title=function(){return n("label")}),t(It,{attrs:{icon:this.leftIcon,size:this.size,title:this.label,center:this.center,border:this.border,isLink:this.isLink,required:this.required,titleStyle:this.labelStyle,titleClass:Lt("label",i)},class:Lt((e={error:this.error,disabled:this.$attrs.disabled},e["label-"+i]=i,e["min-height"]="textarea"===this.type&&!this.autosize,e)),scopedSlots:r},[t("div",{class:Lt("body")},[this.renderInput(),this.showClear&&t(W,{attrs:{name:"clear"},class:Lt("clear"),on:{touchstart:this.onClear}}),this.renderRightIcon(),n("button")&&t("div",{class:Lt("button")},[n("button")])]),this.errorMessage&&t("div",{class:Lt("error-message",this.errorMessageAlign)},[this.errorMessage])])}}),Ft=Object(s.k)("toast"),Mt=Ft[0],zt=Ft[1],Pt=["success","fail","loading"],Vt=Mt({mixins:[D],props:{className:null,forbidClick:Boolean,message:[String,Number],type:{type:String,default:"text"},loadingType:{type:String,default:"circular"},position:{type:String,default:"middle"},lockScroll:{type:Boolean,default:!1}},data:function(){return{clickable:!1}},mounted:function(){this.toggleClickale()},destroyed:function(){this.toggleClickale()},watch:{value:function(){this.toggleClickale()},forbidClick:function(){this.toggleClickale()}},methods:{toggleClickale:function(){var t=this.value&&this.forbidClick;if(this.clickable!==t){this.clickable=t;var e=t?"add":"remove";document.body.classList[e]("van-toast--unclickable")}}},render:function(t){var e=this,n=this.type,i=this.message,r=-1!==Pt.indexOf(n)?"default":n;return t("transition",{attrs:{name:"van-fade"}},[t("div",{directives:[{name:"show",value:this.value}],class:[zt([r,this.position]),this.className]},[function(){switch(r){case"text":return t("div",[i]);case"html":return t("div",{domProps:{innerHTML:i}});default:return["loading"===n?t(Q,{attrs:{color:"white",type:e.loadingType}}):t(W,{class:zt("icon"),attrs:{name:n}}),Object(s.d)(i)&&t("div",{class:zt("text")},[i])]}}()])])}}),Rt={type:"text",mask:!1,value:!0,message:"",className:"",onClose:null,duration:3e3,position:"middle",forbidClick:!1,loadingType:"circular",getContainer:"body",overlayStyle:null},Ht=function(t){return Object(s.g)(t)?t:{message:t}},Wt=[],qt=!1,Yt=i({},Rt);function Ut(t){void 0===t&&(t={});var e=function(){if(s.h)return{};if(!Wt.length||qt){var t=new(a.a.extend(Vt))({el:document.createElement("div")});Wt.push(t)}return Wt[Wt.length-1]}();return e.value&&e.updateZIndex(),t=i({},Yt,Ht(t),{clear:function(){if(e.value=!1,t.onClose&&t.onClose(),qt&&!s.h){clearTimeout(e.timer),Wt=Wt.filter(function(t){return t!==e});var n=e.$el.parentNode;n&&n.removeChild(e.$el),e.$destroy()}}}),i(e,function(t){return t.overlay=t.mask,t}(t)),clearTimeout(e.timer),t.duration>0&&(e.timer=setTimeout(function(){e.clear()},t.duration)),e}["loading","success","fail"].forEach(function(t){var e;Ut[t]=(e=t,function(t){return Ut(i({type:e},Ht(t)))})}),Ut.clear=function(t){Wt.length&&(t?(Wt.forEach(function(t){t.clear()}),Wt=[]):qt?Wt.shift().clear():Wt[0].clear())},Ut.setDefaultOptions=function(t){i(Yt,t)},Ut.resetDefaultOptions=function(){Yt=i({},Rt)},Ut.allowMultiple=function(t){void 0===t&&(t=!0),qt=t},Ut.install=function(){a.a.use(Vt)},a.a.prototype.$toast=Ut;var Kt=Ut,Xt=Object(s.k)("button"),Qt=Xt[0],Jt=Xt[1];function Zt(t,e,n,i){var r=e.tag,s=e.type,a=e.disabled,c=e.loading,u=e.hairline,h=e.loadingText,f=[Jt([s,e.size,{loading:c,disabled:a,hairline:u,block:e.block,plain:e.plain,round:e.round,square:e.square,"bottom-action":e.bottomAction}]),{"van-hairline--surround":u}];return t(r,o()([{class:f,attrs:{type:e.nativeType,disabled:a},on:{click:function(t){c||a||(d(i,"click",t),$t(i))},touchstart:function(t){d(i,"touchstart",t)}}},l(i)]),[c?[t(Q,{attrs:{size:e.loadingSize,color:"default"===s?void 0:""}}),h&&t("span",{class:Jt("loading-text")},[h])]:t("span",{class:Jt("text")},[n.default?n.default():e.text])])}Zt.props=i({},_t,{text:String,block:Boolean,plain:Boolean,round:Boolean,square:Boolean,loading:Boolean,hairline:Boolean,disabled:Boolean,nativeType:String,loadingText:String,bottomAction:Boolean,tag:{type:String,default:"button"},type:{type:String,default:"default"},size:{type:String,default:"normal"},loadingSize:{type:String,default:"20px"}});var Gt,te=Qt(Zt),ee=Object(s.k)("dialog"),ne=ee[0],ie=ee[1],re=ee[2],oe=ne({mixins:[D],props:{title:String,message:String,className:null,callback:Function,beforeClose:Function,messageAlign:String,cancelButtonText:String,cancelButtonColor:String,confirmButtonText:String,confirmButtonColor:String,showCancelButton:Boolean,showConfirmButton:{type:Boolean,default:!0},overlay:{type:Boolean,default:!0},closeOnClickOverlay:{type:Boolean,default:!1}},data:function(){return{loading:{confirm:!1,cancel:!1}}},methods:{onClickOverlay:function(){this.handleAction("overlay")},handleAction:function(t){var e=this;this.$emit(t),this.beforeClose?(this.loading[t]=!0,this.beforeClose(t,function(n){!1!==n&&e.onClose(t),e.loading[t]=!1})):this.onClose(t)},onClose:function(t){this.close(),this.callback&&this.callback(t)}},render:function(t){var e,n=this;if(this.shouldRender){var i=this.title,r=this.message,o=this.messageAlign,s=this.slots(),a=i&&t("div",{class:ie("header",{isolated:!r&&!s})},[i]),c=(s||r)&&t("div",{class:ie("content")},[s||t("div",{domProps:{innerHTML:r},class:ie("message",(e={"has-title":i},e[o]=o,e))})]),u=this.showCancelButton&&this.showConfirmButton,l=t("div",{class:["van-hairline--top",ie("footer",{buttons:u})]},[this.showCancelButton&&t(te,{attrs:{size:"large",loading:this.loading.cancel,text:this.cancelButtonText||re("cancel")},class:ie("cancel"),style:{color:this.cancelButtonColor},on:{click:function(){n.handleAction("cancel")}}}),this.showConfirmButton&&t(te,{attrs:{size:"large",loading:this.loading.confirm,text:this.confirmButtonText||re("confirm")},class:[ie("confirm"),{"van-hairline--left":u}],style:{color:this.confirmButtonColor},on:{click:function(){n.handleAction("confirm")}}})]);return t("transition",{attrs:{name:"van-dialog-bounce"}},[t("div",{directives:[{name:"show",value:this.value}],class:[ie(),this.className]},[a,c,l])])}}});function se(t){return s.h?Promise.resolve():new Promise(function(e,n){Gt&&Object(s.f)(Gt.$el)||(Gt&&Gt.$destroy(),(Gt=new(a.a.extend(oe))({el:document.createElement("div"),propsData:{lazyRender:!1}})).$on("input",function(t){Gt.value=t})),i(Gt,se.currentOptions,t,{resolve:e,reject:n})})}se.defaultOptions={value:!0,title:"",message:"",overlay:!0,className:"",lockScroll:!0,beforeClose:null,messageAlign:"",getContainer:"body",cancelButtonText:"",cancelButtonColor:null,confirmButtonText:"",confirmButtonColor:null,showConfirmButton:!0,showCancelButton:!1,closeOnClickOverlay:!1,callback:function(t){Gt["confirm"===t?"resolve":"reject"](t)}},se.alert=se,se.confirm=function(t){return se(i({showCancelButton:!0},t))},se.close=function(){Gt&&(Gt.value=!1)},se.setDefaultOptions=function(t){i(se.currentOptions,t)},se.resetDefaultOptions=function(){se.currentOptions=i({},se.defaultOptions)},se.resetDefaultOptions(),se.install=function(){a.a.use(oe)},a.a.prototype.$dialog=se;var ae=se,ce=Object(s.k)("address-edit-detail"),ue=ce[0],le=ce[1],de=ce[2],he=Object(s.c)(),fe=ue({props:{value:String,error:Boolean,focused:Boolean,detailRows:Number,searchResult:Array,showSearchResult:Boolean},methods:{onSelect:function(t){this.$emit("select-search",t),this.$emit("input",((t.address||"")+" "+(t.name||"")).trim())},onFinish:function(){this.$refs.field.blur()},renderFinish:function(){var t=this.$createElement;if(this.value&&this.focused&&he)return t("div",{class:le("finish"),on:{click:this.onFinish}},[de("complete")])},renderSearchResult:function(){var t=this,e=this.$createElement,n=this.searchResult;if(this.focused&&n&&this.showSearchResult)return n.map(function(n){return e(It,{key:n.name+n.address,attrs:{title:n.name,label:n.address,icon:"location-o",clickable:!0},on:{click:function(){t.onSelect(n)}}})})}},render:function(t){return t(It,{class:le()},[t(Dt,{attrs:{autosize:!0,rows:this.detailRows,clearable:!he,type:"textarea",maxlength:"200",value:this.value,error:this.error,label:de("label"),placeholder:de("placeholder")},ref:"field",scopedSlots:{icon:this.renderFinish},on:i({},this.$listeners)}),this.renderSearchResult()])}}),pe={value:null,loading:Boolean,disabled:Boolean,activeColor:String,inactiveColor:String,activeValue:{type:null,default:!0},inactiveValue:{type:null,default:!1},size:{type:String,default:"30px"}},ve=Object(s.k)("switch"),me=ve[0],ge=ve[1];function ye(t,e,n,i){var r=e.value,s=e.loading,a=e.disabled,c=e.activeValue,u=e.inactiveValue,h=r===c,f={fontSize:e.size,backgroundColor:h?e.activeColor:e.inactiveColor};return t("div",o()([{class:ge({on:h,disabled:a}),style:f,on:{click:function(){if(!a&&!s){var t=h?u:c;d(i,"input",t),d(i,"change",t)}}}},l(i)]),[t("div",{class:ge("node")},[s&&t(Q,{class:ge("loading")})])])}ye.props=pe;var be=me(ye),ke=Object(s.k)("switch-cell"),xe=ke[0],Se=ke[1];function we(t,e,n,r){return t(It,o()([{attrs:{center:!0,title:e.title,border:e.border},class:Se()},l(r)]),[t(be,{props:i({},e),on:i({},r.listeners)})])}we.props=i({},pe,{title:String,border:Boolean,size:{type:String,default:"24px"}});var Ce=xe(we),$e=Object(s.k)("address-edit"),_e=$e[0],Oe=$e[1],Te=$e[2],Ae={name:"",tel:"",country:"",province:"",city:"",county:"",areaCode:"",postalCode:"",addressDetail:"",isDefault:!1},je=_e({props:{areaList:Object,isSaving:Boolean,isDeleting:Boolean,validator:Function,showDelete:Boolean,showPostal:Boolean,searchResult:Array,showSetDefault:Boolean,showSearchResult:Boolean,saveButtonText:String,deleteButtonText:String,showArea:{type:Boolean,default:!0},showDetail:{type:Boolean,default:!0},detailRows:{type:Number,default:1},addressInfo:{type:Object,default:function(){return i({},Ae)}},telValidator:{type:Function,default:st},areaColumnsPlaceholder:{type:Array,default:function(){return[]}}},data:function(){return{data:{},showAreaPopup:!1,detailFocused:!1,errorInfo:{tel:!1,name:!1,postalCode:!1,addressDetail:!1}}},computed:{areaListLoaded:function(){return Object(s.g)(this.areaList)&&Object.keys(this.areaList).length},areaText:function(){var t=this.data,e=t.country,n=t.province,i=t.city,r=t.county;if(t.areaCode){var o=[e,n,i,r];return n&&n===i&&o.splice(1,1),o.filter(function(t){return t}).join("/")}return""}},watch:{addressInfo:{handler:function(t){this.data=i({},Ae,t),this.setAreaCode(t.areaCode)},deep:!0,immediate:!0},areaList:function(){this.setAreaCode(this.data.areaCode)}},methods:{onFocus:function(t){this.errorInfo[t]=!1,this.detailFocused="addressDetail"===t,this.$emit("focus",t)},onChangeDetail:function(t){this.data.addressDetail=t,this.$emit("change-detail",t)},onAreaConfirm:function(t){t.some(function(t){return!t.code})?Kt(Te("areaEmpty")):(this.showAreaPopup=!1,this.assignAreaValues(),this.$emit("change-area",t))},assignAreaValues:function(){var t=this.$refs.area;if(t){var e=t.getArea();e.areaCode=e.code,delete e.code,i(this.data,e)}},onSave:function(){var t=this,e=["name","tel","areaCode","addressDetail"];this.showPostal&&e.push("postalCode"),e.every(function(e){var n=t.getErrorMessage(e);return n&&(t.errorInfo[e]=!0,Kt(n)),!n})&&!this.isSaving&&this.$emit("save",this.data)},getErrorMessage:function(t){var e=String(this.data[t]||"").trim();if(this.validator){var n=this.validator(t,e);if(n)return n}switch(t){case"name":return e?"":Te("nameEmpty");case"tel":return this.telValidator(e)?"":Te("telInvalid");case"areaCode":return e?"":Te("areaEmpty");case"addressDetail":return e?"":Te("addressEmpty");case"postalCode":return e&&!/^\d{6}$/.test(e)?Te("postalEmpty"):""}},onDelete:function(){var t=this;ae.confirm({title:Te("confirmDelete")}).then(function(){t.$emit("delete",t.data)}).catch(function(){t.$emit("cancel-delete",t.data)})},getArea:function(){return this.$refs.area?this.$refs.area.getValues():[]},setAreaCode:function(t){this.data.areaCode=t||"",t&&this.$nextTick(this.assignAreaValues)},setAddressDetail:function(t){this.data.addressDetail=t},onDetailBlur:function(){var t=this;setTimeout(function(){t.detailFocused=!1})}},render:function(t){var e=this,n=this.data,i=this.errorInfo,r=function(t){return function(){return e.onFocus(t)}},o=this.searchResult.length&&this.detailFocused;return t("div",{class:Oe()},[t(Dt,{attrs:{clearable:!0,label:Te("name"),placeholder:Te("namePlaceholder"),error:i.name},on:{focus:r("name")},model:{value:n.name,callback:function(t){n.name=t}}}),t(Dt,{attrs:{clearable:!0,type:"tel",label:Te("tel"),placeholder:Te("telPlaceholder"),error:i.tel},on:{focus:r("tel")},model:{value:n.tel,callback:function(t){n.tel=t}}}),t(Dt,{directives:[{name:"show",value:this.showArea}],attrs:{readonly:!0,label:Te("area"),placeholder:Te("areaPlaceholder"),value:this.areaText},on:{click:function(){e.showAreaPopup=!0}}}),t(fe,{directives:[{name:"show",value:this.showDetail}],attrs:{focused:this.detailFocused,value:n.addressDetail,error:i.addressDetail,detailRows:this.detailRows,searchResult:this.searchResult,showSearchResult:this.showSearchResult},on:{focus:r("addressDetail"),blur:this.onDetailBlur,input:this.onChangeDetail,"select-search":function(t){e.$emit("select-search",t)}}}),this.showPostal&&t(Dt,{directives:[{name:"show",value:!o}],attrs:{type:"tel",maxlength:"6",label:Te("postal"),placeholder:Te("postal"),error:i.postalCode},on:{focus:r("postalCode")},model:{value:n.postalCode,callback:function(t){n.postalCode=t}}}),this.slots(),this.showSetDefault&&t(Ce,{directives:[{name:"show",value:!o}],attrs:{title:Te("defaultAddress")},on:{change:function(t){e.$emit("change-default",t)}},model:{value:n.isDefault,callback:function(t){n.isDefault=t}}}),t("div",{directives:[{name:"show",value:!o}],class:Oe("buttons")},[t(te,{attrs:{block:!0,loading:this.isSaving,type:"danger",text:this.saveButtonText||Te("save")},on:{click:this.onSave}}),this.showDelete&&t(te,{attrs:{block:!0,loading:this.isDeleting,text:this.deleteButtonText||Te("delete")},on:{click:this.onDelete}})]),t(tt,{attrs:{position:"bottom",lazyRender:!1,getContainer:"body"},model:{value:e.showAreaPopup,callback:function(t){e.showAreaPopup=t}}},[t(St,{ref:"area",attrs:{loading:!this.areaListLoaded,value:n.areaCode,areaList:this.areaList,columnsPlaceholder:this.areaColumnsPlaceholder},on:{confirm:this.onAreaConfirm,cancel:function(){e.showAreaPopup=!1}}})])])}}),Ie=Object(s.k)("radio-group"),Be=Ie[0],Ee=Ie[1],Ne=Be({props:{value:null,disabled:Boolean},watch:{value:function(t){this.$emit("change",t)}},render:function(t){return t("div",{class:Ee()},[this.slots()])}}),Le={data:function(){return{parent:null}},methods:{findParent:function(t){for(var e=this.$parent;e;){if(e.$options.name===t){this.parent=e;break}e=e.$parent}}}},De=function(t,e){return{mixins:[Le],props:{name:null,value:null,disabled:Boolean,checkedColor:String,labelPosition:String,labelDisabled:Boolean,shape:{type:String,default:"round"},bindGroup:{type:Boolean,default:!0}},created:function(){this.bindGroup&&this.findParent(t)},computed:{isDisabled:function(){return this.parent&&this.parent.disabled||this.disabled},iconStyle:function(){var t=this.checkedColor;if(t&&this.checked&&!this.isDisabled)return{borderColor:t,backgroundColor:t}}},render:function(){var t=this,n=arguments[0],i=this.slots,r=this.checked,o=i("icon",{checked:r})||n(W,{attrs:{name:"success"},style:this.iconStyle}),s=i()&&n("span",{class:e("label",[this.labelPosition,{disabled:this.isDisabled}]),on:{click:this.onClickLabel}},[i()]);return n("div",{class:e(),on:{click:function(e){t.$emit("click",e)}}},[n("div",{class:e("icon",[this.shape,{disabled:this.isDisabled,checked:r}]),on:{click:this.onClickIcon}},[o]),s])}}},Fe=Object(s.k)("radio"),Me=(0,Fe[0])({mixins:[De("van-radio-group",Fe[1])],computed:{currentValue:{get:function(){return this.parent?this.parent.value:this.value},set:function(t){(this.parent||this).$emit("input",t)}},checked:function(){return this.currentValue===this.name}},methods:{onClickIcon:function(){this.isDisabled||(this.currentValue=this.name)},onClickLabel:function(){this.isDisabled||this.labelDisabled||(this.currentValue=this.name)}}}),ze=Object(s.k)("address-item"),Pe=ze[0],Ve=ze[1];function Re(t,e,n,i){var r=e.disabled,s=e.switchable;return t(It,o()([{class:Ve({disabled:r,unswitchable:!s}),attrs:{valueClass:Ve("value"),clickable:s&&!r},scopedSlots:{default:function(){var n=e.data,i=[t("div",{class:Ve("name")},[n.name+","+n.tel]),t("div",{class:Ve("address")},[n.address])];return s&&!r?t(Me,{attrs:{name:n.id}},[i]):i},"right-icon":function(){return t(W,{attrs:{name:"edit"},class:Ve("edit"),on:{click:function(t){t.stopPropagation(),d(i,"edit")}}})}},on:{click:function(){s&&d(i,"select")}}},l(i)]))}Re.props={data:Object,disabled:Boolean,switchable:Boolean};var He=Pe(Re),We=Object(s.k)("address-list"),qe=We[0],Ye=We[1],Ue=We[2];function Ke(t,e,n,i){var r=function(n,r){return n.map(function(n,o){return t(He,{attrs:{data:n,disabled:r,switchable:e.switchable},key:n.id,on:{select:function(){d(i,r?"select-disabled":"select",n,o)},edit:function(){d(i,r?"edit-disabled":"edit",n,o)}}})})},s=r(e.list),a=r(e.disabledList,!0);return t("div",o()([{class:Ye()},l(i)]),[n.top&&n.top(),t(Ne,{attrs:{value:e.value},on:{input:function(t){d(i,"input",t)}}},[s]),e.disabledText&&t("div",{class:Ye("disabled-text")},[e.disabledText]),a,n.default&&n.default(),t(te,{attrs:{square:!0,size:"large",type:"danger",text:e.addButtonText||Ue("add")},class:Ye("add"),on:{click:function(){d(i,"add")}}})])}Ke.props={list:Array,disabledList:Array,disabledText:String,addButtonText:String,value:[String,Number],switchable:{type:Boolean,default:!0}};var Xe=qe(Ke),Qe=Object(s.k)("badge"),Je=Qe[0],Ze=Qe[1],Ge=Je({props:{url:String,info:[String,Number],title:String},inject:["vanBadgeGroup"],created:function(){this.parent.badges.push(this)},beforeDestroy:function(){var t=this;this.parent.badges=this.parent.badges.filter(function(e){return e!==t})},computed:{parent:function(){return this.vanBadgeGroup},select:function(){return this.parent.badges.indexOf(this)===+this.parent.activeKey}},methods:{onClick:function(){var t=this.parent.badges.indexOf(this);this.$emit("click",t),this.parent.$emit("change",t)}},render:function(t){return t("a",{attrs:{href:this.url},class:[Ze({select:this.select}),"van-hairline"],on:{click:this.onClick}},[t("div",{class:Ze("text")},[this.title,t(V,{attrs:{info:this.info},class:Ze("info")})])])}}),tn=Object(s.k)("badge-group"),en=tn[0],nn=tn[1],rn=en({props:{activeKey:{type:[Number,String],default:0}},provide:function(){return{vanBadgeGroup:this}},data:function(){return{badges:[]}},render:function(t){return t("div",{class:[nn(),"van-hairline--top-bottom"]},[this.slots()])}}),on="#f44",sn="#fff",an="#969799",cn=Object(s.k)("tag"),un=cn[0],ln=cn[1],dn={danger:on,primary:"#1989fa",success:"#07c160"};function hn(t,e,n,i){var r,s=e.type,a=e.mark,c=e.plain,u=e.round,d=e.size,h=e.color||s&&dn[s]||an,f=((r={})[c?"color":"backgroundColor"]=h,r);e.textColor&&(f.color=e.textColor);var p={mark:a,plain:c,round:u};return d&&(p[d]=d),t("span",o()([{style:f,class:[ln(p),{"van-hairline--surround":c}]},l(i,!0)]),[n.default&&n.default()])}hn.props={size:String,type:String,mark:Boolean,color:String,plain:Boolean,round:Boolean,textColor:String};var fn=un(hn),pn=Object(s.k)("card"),vn=pn[0],mn=pn[1];function gn(t,e,n,i){var r=e.thumb,a=n.thumb||r,c=n.tag||e.tag,u=n.num||Object(s.d)(e.num),h=n.price||Object(s.d)(e.price),f=n["origin-price"]||Object(s.d)(e.originPrice),p=u||h||f,v=a&&t("a",{attrs:{href:e.thumbLink},class:mn("thumb"),on:{click:function(){d(i,"click-thumb")}}},[n.thumb?n.thumb():e.lazyLoad?t("img",{class:mn("img"),directives:[{name:"lazy",value:r}]}):t("img",{class:mn("img"),attrs:{src:r}}),c&&t("div",{class:mn("tag")},[n.tag?n.tag():t(fn,{attrs:{mark:!0,type:"danger"}},[e.tag])])]),m=n.title?n.title():e.title&&t("div",{class:mn("title")},[e.title]),g=n.desc?n.desc():e.desc&&t("div",{class:[mn("desc"),"van-ellipsis"]},[e.desc]),y=h&&t("div",{class:mn("price")},[n.price?n.price():e.currency+" "+e.price]),b=f&&t("div",{class:mn("origin-price")},[n["origin-price"]?n["origin-price"]():e.currency+" "+e.originPrice]),k=u&&t("div",{class:mn("num")},[n.num?n.num():"x "+e.num]),x=n.footer&&t("div",{class:mn("footer")},[n.footer()]);return t("div",o()([{class:mn()},l(i,!0)]),[t("div",{class:mn("header")},[v,t("div",{class:mn("content",{centered:e.centered})},[m,g,n.tags&&n.tags(),p&&t("div",{class:"van-card__bottom"},[y,b,k,n.bottom&&n.bottom()])])]),x])}gn.props={tag:String,desc:String,thumb:String,title:String,centered:Boolean,lazyLoad:Boolean,thumbLink:String,num:[Number,String],price:[Number,String],originPrice:[Number,String],currency:{type:String,default:"¥"}};var yn=vn(gn),bn=Object(s.k)("cell-group"),kn=bn[0],xn=bn[1];function Sn(t,e,n,i){var r=t("div",o()([{class:[xn(),{"van-hairline--top-bottom":e.border}]},l(i,!0)]),[n.default&&n.default()]);return e.title?t("div",[t("div",{class:xn("title")},[e.title]),r]):r}Sn.props={title:String,border:{type:Boolean,default:!0}};var wn=kn(Sn),Cn=Object(s.k)("checkbox"),$n=(0,Cn[0])({mixins:[De("van-checkbox-group",Cn[1])],computed:{checked:{get:function(){return this.parent?-1!==this.parent.value.indexOf(this.name):this.value},set:function(t){this.parent?this.setParentValue(t):this.$emit("input",t)}}},watch:{value:function(t){this.$emit("change",t)}},methods:{toggle:function(){var t=this,e=!this.checked;clearTimeout(this.toggleTask),this.toggleTask=setTimeout(function(){t.checked=e})},onClickIcon:function(){this.isDisabled||this.toggle()},onClickLabel:function(){this.isDisabled||this.labelDisabled||this.toggle()},setParentValue:function(t){var e=this.parent,n=e.value.slice();if(t){if(e.max&&n.length>=e.max)return;-1===n.indexOf(this.name)&&(n.push(this.name),e.$emit("input",n))}else{var i=n.indexOf(this.name);-1!==i&&(n.splice(i,1),e.$emit("input",n))}}}}),_n=Object(s.k)("checkbox-group"),On=_n[0],Tn=_n[1],An=On({props:{max:Number,value:Array,disabled:Boolean},watch:{value:function(t){this.$emit("change",t)}},render:function(t){return t("div",{class:Tn()},[this.slots()])}}),jn=n("VsCf"),In=Object(s.k)("circle"),Bn=In[0],En=In[1],Nn="M 530 530 m -500, 0 a 500, 500 0 1, 1 1000, 0 a 500, 500 0 1, 1 -1000, 0";function Ln(t){return Math.min(Math.max(t,0),100)}var Dn=Bn({props:{text:String,value:Number,speed:Number,size:{type:String,default:"100px"},fill:{type:String,default:"none"},rate:{type:Number,default:100},layerColor:{type:String,default:sn},color:{type:String,default:"#1989fa"},strokeWidth:{type:Number,default:40},clockwise:{type:Boolean,default:!0}},computed:{style:function(){return{width:this.size,height:this.size}},layerStyle:function(){var t=3140*(100-this.value)/100;return t=this.clockwise?t:6280-t,{stroke:""+this.color,strokeDashoffset:t+"px",strokeWidth:this.strokeWidth+1+"px"}},hoverStyle:function(){return{fill:""+this.fill,stroke:""+this.layerColor,strokeWidth:this.strokeWidth+"px"}}},watch:{rate:{handler:function(){this.startTime=Date.now(),this.startRate=this.value,this.endRate=Ln(this.rate),this.increase=this.endRate>this.startRate,this.duration=Math.abs(1e3*(this.startRate-this.endRate)/this.speed),this.speed?(Object(jn.a)(this.rafId),this.rafId=Object(jn.b)(this.animate)):this.$emit("input",this.endRate)},immediate:!0}},methods:{animate:function(){var t=Date.now(),e=Math.min((t-this.startTime)/this.duration,1)*(this.endRate-this.startRate)+this.startRate;this.$emit("input",Ln(parseFloat(e.toFixed(1)))),(this.increase?ethis.endRate)&&(this.rafId=Object(jn.b)(this.animate))}},render:function(t){return t("div",{class:En(),style:this.style},[t("svg",{attrs:{viewBox:"0 0 1060 1060"}},[t("path",{class:En("hover"),style:this.hoverStyle,attrs:{d:Nn}}),t("path",{class:En("layer"),style:this.layerStyle,attrs:{d:Nn}})]),this.slots()||this.text&&t("div",{class:En("text")},[this.text])])}}),Fn=Object(s.k)("col"),Mn=Fn[0],zn=Fn[1],Pn=Mn({props:{span:[Number,String],offset:[Number,String],tag:{type:String,default:"div"}},computed:{gutter:function(){return this.$parent&&Number(this.$parent.gutter)||0},style:function(){var t=this.gutter/2+"px";return this.gutter?{paddingLeft:t,paddingRight:t}:{}}},render:function(t){var e,n=this.span,i=this.offset;return t(this.tag,{class:zn((e={},e[n]=n,e["offset-"+i]=i,e)),style:this.style},[this.slots()])}}),Vn=Object(s.k)("collapse"),Rn=Vn[0],Hn=Vn[1],Wn=Rn({props:{accordion:Boolean,value:[String,Number,Array],border:{type:Boolean,default:!0}},data:function(){return{items:[]}},methods:{switch:function(t,e){this.accordion||(t=e?this.value.concat(t):this.value.filter(function(e){return e!==t})),this.$emit("change",t),this.$emit("input",t)}},render:function(t){return t("div",{class:[Hn(),{"van-hairline--top-bottom":this.border}]},[this.slots()])}}),qn=Object(s.k)("collapse-item"),Yn=qn[0],Un=qn[1],Kn=["title","icon","right-icon"],Xn=Yn({mixins:[Le],props:i({},wt,{name:[String,Number],disabled:Boolean,isLink:{type:Boolean,default:!0}}),data:function(){return{show:null,inited:null}},computed:{items:function(){return this.parent.items},index:function(){return this.items.indexOf(this)},currentName:function(){return Object(s.d)(this.name)?this.name:this.index},expanded:function(){var t=this;if(!this.parent)return null;var e=this.parent.value;return this.parent.accordion?e===this.currentName:e.some(function(e){return e===t.currentName})}},created:function(){this.findParent("van-collapse"),this.items.push(this),this.show=this.expanded,this.inited=this.expanded},destroyed:function(){this.items.splice(this.index,1)},watch:{expanded:function(t,e){var n=this;null!==e&&(t&&(this.show=!0,this.inited=!0),Object(jn.b)(function(){var e=n.$refs,i=e.content,r=e.wrapper;if(i&&r){var o=i.clientHeight;if(o){var s=o+"px";r.style.height=t?0:s,Object(jn.b)(function(){r.style.height=t?s:0})}else n.onTransitionEnd()}}))}},methods:{onClick:function(){if(!this.disabled){var t=this.parent,e=t.accordion&&this.currentName===t.value?"":this.currentName,n=!this.expanded;this.parent.switch(e,n)}},onTransitionEnd:function(){this.expanded?this.$refs.wrapper.style.height=null:this.show=!1}},render:function(t){var e=this,n=Kn.reduce(function(t,n){return e.slots(n)&&(t[n]=function(){return e.slots(n)}),t},{});this.slots("value")&&(n.default=function(){return e.slots("value")});var r=t(It,{class:Un("title",{disabled:this.disabled,expanded:this.expanded}),on:{click:this.onClick},scopedSlots:n,props:i({},this.$props)}),o=this.inited&&t("div",{directives:[{name:"show",value:this.show}],ref:"wrapper",class:Un("wrapper"),on:{transitionend:this.onTransitionEnd}},[t("div",{ref:"content",class:Un("content")},[this.slots()])]);return t("div",{class:[Un(),{"van-hairline--top":this.index}]},[r,o])}}),Qn=Object(s.k)("contact-card"),Jn=Qn[0],Zn=Qn[1],Gn=Qn[2];function ti(t,e,n,i){var r=e.type,s=e.editable;return t(It,o()([{attrs:{center:!0,border:!1,isLink:s,valueClass:Zn("value"),icon:"edit"===r?"contact":"add-square"},class:Zn([r]),on:{click:function(t){s&&d(i,"click",t)}}},l(i)]),["add"===r?e.addText||Gn("addText"):[t("div",[Gn("name")+":"+e.name]),t("div",[Gn("tel")+":"+e.tel])]])}ti.props={tel:String,name:String,addText:String,editable:{type:Boolean,default:!0},type:{type:String,default:"add"}};var ei=Jn(ti),ni=Object(s.k)("contact-edit"),ii=ni[0],ri=ni[1],oi=ni[2],si={tel:"",name:""},ai=ii({props:{isEdit:Boolean,isSaving:Boolean,isDeleting:Boolean,contactInfo:{type:Object,default:function(){return i({},si)}},telValidator:{type:Function,default:st}},data:function(){return{data:i({},si,this.contactInfo),errorInfo:{name:!1,tel:!1}}},watch:{contactInfo:function(t){this.data=i({},si,t)}},methods:{onFocus:function(t){this.errorInfo[t]=!1},getErrorMessageByKey:function(t){var e=this.data[t].trim();switch(t){case"name":return e?"":oi("nameEmpty");case"tel":return this.telValidator(e)?"":oi("telInvalid")}},onSave:function(){var t=this;["name","tel"].every(function(e){var n=t.getErrorMessageByKey(e);return n&&(t.errorInfo[e]=!0,Kt(n)),!n})&&!this.isSaving&&this.$emit("save",this.data)},onDelete:function(){var t=this;ae.confirm({message:oi("confirmDelete")}).then(function(){t.$emit("delete",t.data)})}},render:function(t){var e=this,n=this.data,i=this.errorInfo,r=function(t){return function(){return e.onFocus(t)}};return t("div",{class:ri()},[t(Dt,{attrs:{clearable:!0,maxlength:"30",label:oi("name"),placeholder:oi("nameEmpty"),error:i.name},on:{focus:r("name")},model:{value:n.name,callback:function(t){n.name=t}}}),t(Dt,{attrs:{clearable:!0,type:"tel",label:oi("tel"),placeholder:oi("telEmpty"),error:i.tel},on:{focus:r("tel")},model:{value:n.tel,callback:function(t){n.tel=t}}}),t("div",{class:ri("buttons")},[t(te,{attrs:{block:!0,type:"danger",text:oi("save"),loading:this.isSaving},on:{click:this.onSave}}),this.isEdit&&t(te,{attrs:{block:!0,text:oi("delete"),loading:this.isDeleting},on:{click:this.onDelete}})])])}}),ci=Object(s.k)("contact-list"),ui=ci[0],li=ci[1],di=ci[2];function hi(t,e,n,i){var r=e.list.map(function(e,n){var r=function(){d(i,"input",e.id),d(i,"select",e,n)};return t(It,{key:e.id,attrs:{isLink:!0,valueClass:li("item-value")},class:li("item"),scopedSlots:{default:function(){return t(Me,{attrs:{name:e.id},on:{click:r}},[t("div",{class:li("name")},[e.name+","+e.tel])])},"right-icon":function(){return t(W,{attrs:{name:"edit"},class:li("edit"),on:{click:function(t){t.stopPropagation(),d(i,"edit",e,n)}}})}},on:{click:r}})});return t("div",o()([{class:li()},l(i)]),[t(Ne,{attrs:{value:e.value},class:li("group")},[r]),t(te,{attrs:{square:!0,size:"large",type:"danger",text:e.addText||di("addText")},class:li("add"),on:{click:function(){d(i,"add")}}})])}hi.props={value:null,list:Array,addText:String};var fi=ui(hi),pi=Object(s.k)("coupon"),vi=pi[0],mi=pi[1],gi=pi[2];function yi(t){return(t<10?"0":"")+t}function bi(t){var e=new Date(1e3*t);return e.getFullYear()+"."+yi(e.getMonth()+1)+"."+yi(e.getDate())}var ki=vi({props:{coupon:Object,chosen:Boolean,disabled:Boolean,currency:{type:String,default:"¥"}},computed:{validPeriod:function(){return gi("valid")+":"+bi(this.coupon.startAt)+" - "+bi(this.coupon.endAt)},faceAmount:function(){var t,e,n=this.coupon;return n.valueDesc?n.valueDesc+""+(n.unitDesc||"")+"":n.denominations?""+this.currency+" "+((e=this.coupon.denominations)/100).toFixed(e%100==0?0:e%10==0?1:2):n.discount?gi("discount",((t=this.coupon.discount)/10).toFixed(t%10==0?0:1)):""},conditionMessage:function(){var t=this.coupon.originCondition;return 0===(t=t%100==0?Math.round(t/100):(t/100).toFixed(2))?gi("unlimited"):gi("condition",t)}},render:function(t){var e=this.coupon,n=this.disabled,i=n&&e.reason||e.description;return t("div",{class:mi({disabled:n})},[t("div",{class:mi("content")},[t("div",{class:mi("head")},[t("h2",{domProps:{innerHTML:this.faceAmount}}),t("p",[this.coupon.condition||this.conditionMessage])]),t("div",{class:mi("body")},[t("h2",[e.name]),t("p",[this.validPeriod]),this.chosen&&t($n,{attrs:{value:!0},class:mi("corner")})])]),i&&t("p",{class:mi("description")},[i])])}}),xi=Object(s.k)("coupon-cell"),Si=xi[0],wi=xi[1],Ci=xi[2];function $i(t,e,n,i){var r=e.coupons[e.chosenCoupon]?"van-coupon-cell--selected":"",s=function(t){var e=t.coupons,n=t.chosenCoupon,i=t.currency,r=e[n];return r?"-"+i+((r.denominations||r.value)/100).toFixed(2):0===e.length?Ci("tips"):Ci("count",e.length)}(e);return t(It,o()([{class:wi(),attrs:{value:s,title:e.title||Ci("title"),border:e.border,isLink:e.editable,valueClass:r}},l(i,!0)]))}$i.model={prop:"chosenCoupon"},$i.props={title:String,coupons:Array,currency:{type:String,default:"¥"},border:{type:Boolean,default:!0},editable:{type:Boolean,default:!0},chosenCoupon:{type:Number,default:-1}};var _i=Si($i),Oi=Object(s.k)("tab"),Ti=Oi[0],Ai=Oi[1],ji=Ti({mixins:[Le],props:{title:String,disabled:Boolean},data:function(){return{inited:!1}},computed:{index:function(){return this.parent.tabs.indexOf(this)},selected:function(){return this.index===this.parent.curActive}},watch:{"parent.curActive":function(){this.inited=this.inited||this.selected},title:function(){this.parent.setLine()}},created:function(){this.findParent("van-tabs")},mounted:function(){var t=this.parent.tabs,e=this.parent.slots().indexOf(this.$vnode);t.splice(-1===e?t.length:e,0,this),this.slots("title")&&this.parent.renderTitle(this.$refs.title,this.index)},beforeDestroy:function(){this.parent.tabs.splice(this.index,1)},render:function(t){var e=this.slots,n=this.inited||!this.parent.lazyRender;return t("div",{directives:[{name:"show",value:this.selected||this.parent.animated}],class:Ai("pane")},[n?e():t(),e("title")&&t("div",{ref:"title"},[e("title")])])}}),Ii=Object(s.k)("tabs"),Bi=Ii[0],Ei=Ii[1],Ni=Object(s.k)("tab")[1],Li=Bi({mixins:[v],model:{prop:"active"},props:{color:String,sticky:Boolean,animated:Boolean,offsetTop:Number,swipeable:Boolean,background:String,titleActiveColor:String,titleInactiveColor:String,ellipsis:{type:Boolean,default:!0},lazyRender:{type:Boolean,default:!0},lineWidth:{type:Number,default:null},lineHeight:{type:Number,default:null},active:{type:[Number,String],default:0},type:{type:String,default:"line"},duration:{type:Number,default:.3},swipeThreshold:{type:Number,default:4}},data:function(){return{tabs:[],position:"",curActive:null,lineStyle:{backgroundColor:this.color},events:{resize:!1,sticky:!1,swipeable:!1}}},computed:{scrollable:function(){return this.tabs.length>this.swipeThreshold||!this.ellipsis},wrapStyle:function(){switch(this.position){case"top":return{top:this.offsetTop+"px",position:"fixed"};case"bottom":return{top:"auto",bottom:0};default:return null}},navStyle:function(){return{borderColor:this.color,background:this.background}},trackStyle:function(){if(this.animated)return{left:-1*this.curActive*100+"%",transitionDuration:this.duration+"s"}}},watch:{active:function(t){t!==this.curActive&&this.correctActive(t)},color:function(){this.setLine()},tabs:function(){this.correctActive(this.curActive||this.active),this.scrollIntoView(),this.setLine()},curActive:function(){var t,e;this.scrollIntoView(),this.setLine(),"top"!==this.position&&"bottom"!==this.position||(t=window,e=N(this.$el)-this.offsetTop,"scrollTop"in t?t.scrollTop=e:t.scrollTo(t.scrollX,e))},sticky:function(){this.handlers(!0)},swipeable:function(){this.handlers(!0)}},mounted:function(){this.onShow()},activated:function(){this.onShow(),this.setLine()},deactivated:function(){this.handlers(!1)},beforeDestroy:function(){this.handlers(!1)},methods:{onShow:function(){var t=this;this.$nextTick(function(){t.inited=!0,t.handlers(!0),t.scrollIntoView(!0)})},handlers:function(t){var e=this.events,n=this.sticky&&t,i=this.swipeable&&t;if(e.resize!==t&&(e.resize=t,(t?y:b)(window,"resize",this.setLine,!0)),e.sticky!==n&&(e.sticky=n,this.scrollEl=this.scrollEl||B(this.$el),(n?y:b)(this.scrollEl,"scroll",this.onScroll,!0),this.onScroll()),e.swipeable!==i){e.swipeable=i;var r=this.$refs.content,o=i?y:b;o(r,"touchstart",this.touchStart),o(r,"touchmove",this.touchMove),o(r,"touchend",this.onTouchEnd),o(r,"touchcancel",this.onTouchEnd)}},onTouchEnd:function(){var t=this.direction,e=this.deltaX,n=this.curActive;"horizontal"===t&&this.offsetX>=50&&(e>0&&0!==n?this.setCurActive(n-1):e<0&&n!==this.tabs.length-1&&this.setCurActive(n+1))},onScroll:function(){var t=E(window)+this.offsetTop,e=N(this.$el),n=e+this.$el.offsetHeight-this.$refs.wrap.offsetHeight;this.position=t>n?"bottom":t>e?"top":"";var i={scrollTop:t,isFixed:"top"===this.position};this.$emit("scroll",i)},setLine:function(){var t=this,e=this.inited;this.$nextTick(function(){var n=t.$refs.tabs;if(n&&n[t.curActive]&&"line"===t.type){var i=n[t.curActive],r=t.lineWidth,o=t.lineHeight,a=Object(s.d)(r)?r:i.offsetWidth/2,c=i.offsetLeft+(i.offsetWidth-a)/2,u={width:a+"px",backgroundColor:t.color,transform:"translateX("+c+"px)"};if(e&&(u.transitionDuration=t.duration+"s"),Object(s.d)(o)){var l=o+"px";u.height=l,u.borderRadius=l}t.lineStyle=u}})},correctActive:function(t){t=+t;var e=this.tabs.some(function(e){return e.index===t}),n=(this.tabs[0]||{}).index||0;this.setCurActive(e?t:n)},setCurActive:function(t){t=this.findAvailableTab(t,t=0&&i10?n:"0"+n)+":00"}if(!e){var i=t.split(":"),r=i[0],o=i[1];return(r=Ri(Object(s.j)(r,this.minHour,this.maxHour)))+":"+(o=Ri(Object(s.j)(o,this.minMinute,this.maxMinute)))}return t=Math.max(t,this.minDate.getTime()),t=Math.min(t,this.maxDate.getTime()),new Date(t)},getBoundary:function(t,e){var n,i=this[t+"Date"],r=i.getFullYear(),o=1,s=1,a=0,c=0;return"max"===t&&(o=12,s=Wi(e.getFullYear(),e.getMonth()+1),a=23,c=59),e.getFullYear()===r&&(o=i.getMonth()+1,e.getMonth()+1===o&&(s=i.getDate(),e.getDate()===s&&(a=i.getHours(),e.getHours()===a&&(c=i.getMinutes())))),(n={})[t+"Year"]=r,n[t+"Month"]=o,n[t+"Date"]=s,n[t+"Hour"]=a,n[t+"Minute"]=c,n},onConfirm:function(){this.$emit("confirm",this.innerValue)},onChange:function(t){var e,n=this;if("time"===this.type){var i=t.getIndexes();e=i[0]+this.minHour+":"+(i[1]+this.minMinute)}else{var r=t.getValues(),o=Hi(r[0]),s=Hi(r[1]),a=Wi(o,s),c=Hi(r[2]);"year-month"===this.type&&(c=1),c=c>a?a:c;var u=0,l=0;"datetime"===this.type&&(u=Hi(r[3]),l=Hi(r[4])),e=new Date(o,s-1,c,u,l)}this.innerValue=this.correctValue(e),this.$nextTick(function(){n.$nextTick(function(){n.$emit("change",t)})})},updateColumnValue:function(t){var e=this,n=[],i=this.formatter;if("time"===this.type){var r=t.split(":");n=[i("hour",r[0]),i("minute",r[1])]}else n=[i("year",""+t.getFullYear()),i("month",Ri(t.getMonth()+1)),i("day",Ri(t.getDate()))],"datetime"===this.type&&n.push(i("hour",Ri(t.getHours())),i("minute",Ri(t.getMinutes()))),"year-month"===this.type&&(n=n.slice(0,2));this.$nextTick(function(){e.$refs.picker.setValues(n)})}},render:function(t){var e=this,n={};return Object.keys(ut).forEach(function(t){n[t]=e[t]}),t(yt,{class:Ui(),ref:"picker",attrs:{columns:this.columns},on:{change:this.onChange,confirm:this.onConfirm,cancel:function(){e.$emit("cancel")}},props:i({},n)})}}),Qi=Object(s.k)("goods-action"),Ji=Qi[0],Zi=Qi[1];function Gi(t,e,n,i){return t("div",o()([{class:Zi({"safe-area-inset-bottom":e.safeAreaInsetBottom})},l(i,!0)]),[n.default&&n.default()])}Gi.props={safeAreaInsetBottom:Boolean};var tr=Ji(Gi),er=Object(s.k)("goods-action-big-btn"),nr=er[0],ir=er[1];function rr(t,e,n,i){return t(te,o()([{attrs:{square:!0,size:"large",loading:e.loading,disabled:e.disabled,type:e.primary?"danger":"warning"},class:ir(),on:{click:function(t){d(i,"click",t),$t(i)}}},l(i)]),[n.default?n.default():e.text])}rr.props=i({},_t,{text:String,primary:Boolean,loading:Boolean,disabled:Boolean});var or=nr(rr),sr=Object(s.k)("goods-action-mini-btn"),ar=sr[0],cr=sr[1];function ur(t,e,n,i){return t("div",o()([{class:[cr(),"van-hairline"],on:{click:function(t){d(i,"click",t),$t(i)}}},l(i)]),[t(W,{class:[cr("icon"),e.iconClass],attrs:{tag:"div",info:e.info,name:e.icon}}),n.default?n.default():e.text])}ur.props=i({},_t,{text:String,icon:String,info:[String,Number],iconClass:null});var lr=ar(ur),dr=Object(s.k)("swipe"),hr=dr[0],fr=dr[1],pr=hr({mixins:[v],props:{width:Number,height:Number,autoplay:Number,vertical:Boolean,initialSwipe:Number,indicatorColor:String,loop:{type:Boolean,default:!0},touchable:{type:Boolean,default:!0},showIndicators:{type:Boolean,default:!0},duration:{type:Number,default:500}},data:function(){return{computedWidth:0,computedHeight:0,offset:0,active:0,deltaX:0,deltaY:0,swipes:[],swiping:!1}},mounted:function(){this.initialize(),this.$isServer||y(window,"resize",this.onResize,!0)},activated:function(){this.rendered&&this.initialize(),this.rendered=!0},destroyed:function(){this.clear(),this.$isServer||b(window,"resize",this.onResize)},watch:{swipes:function(){this.initialize()},initialSwipe:function(){this.initialize()},autoplay:function(t){t?this.autoPlay():this.clear()}},computed:{count:function(){return this.swipes.length},delta:function(){return this.vertical?this.deltaY:this.deltaX},size:function(){return this[this.vertical?"computedHeight":"computedWidth"]},trackSize:function(){return this.count*this.size},activeIndicator:function(){return(this.active+this.count)%this.count},isCorrectDirection:function(){var t=this.vertical?"vertical":"horizontal";return this.direction===t},trackStyle:function(){var t,e=this.vertical?"height":"width",n=this.vertical?"width":"height";return(t={})[e]=this.trackSize+"px",t[n]=this[n]?this[n]+"px":"",t.transitionDuration=(this.swiping?0:this.duration)+"ms",t.transform="translate"+(this.vertical?"Y":"X")+"("+this.offset+"px)",t},indicatorStyle:function(){return{backgroundColor:this.indicatorColor}}},methods:{initialize:function(t){if(void 0===t&&(t=this.initialSwipe),clearTimeout(this.timer),this.$el){var e=this.$el.getBoundingClientRect();this.computedWidth=this.width||e.width,this.computedHeight=this.height||e.height}this.swiping=!0,this.active=t,this.offset=this.count>1?-this.size*this.active:0,this.swipes.forEach(function(t){t.offset=0}),this.autoPlay()},onResize:function(){this.initialize(this.activeIndicator)},onTouchStart:function(t){this.touchable&&(this.clear(),this.swiping=!0,this.touchStart(t),this.correctPosition())},onTouchMove:function(t){this.touchable&&this.swiping&&(this.touchMove(t),this.isCorrectDirection&&(x(t,!0),this.move({offset:Math.min(Math.max(this.delta,-this.size),this.size)})))},onTouchEnd:function(){if(this.touchable&&this.swiping){if(this.delta&&this.isCorrectDirection){var t=this.vertical?this.offsetY:this.offsetX;this.move({pace:t>0?this.delta>0?-1:1:0,emitChange:!0})}this.swiping=!1,this.autoPlay()}},move:function(t){var e=t.pace,n=void 0===e?0:e,i=t.offset,r=void 0===i?0:i,o=t.emitChange,s=this.delta,a=this.active,c=this.count,u=this.swipes,l=this.trackSize,d=0===a,h=a===c-1;!this.loop&&(d&&(r>0||n<0)||h&&(r<0||n>0))||c<=1||(u[0]&&(u[0].offset=h&&(s<0||n>0)?l:0),u[c-1]&&(u[c-1].offset=d&&(s>0||n<0)?-l:0),n&&a+n>=-1&&a+n<=c&&(this.active+=n,o&&this.$emit("change",this.activeIndicator)),this.offset=Math.round(r-this.active*this.size))},swipeTo:function(t){var e=this;this.swiping=!0,this.resetTouchStatus(),this.correctPosition(),setTimeout(function(){e.swiping=!1,e.move({pace:t%e.count-e.active,emitChange:!0})},30)},correctPosition:function(){this.active<=-1&&this.move({pace:this.count}),this.active>=this.count&&this.move({pace:-this.count})},clear:function(){clearTimeout(this.timer)},autoPlay:function(){var t=this,e=this.autoplay;e&&this.count>1&&(this.clear(),this.timer=setTimeout(function(){t.swiping=!0,t.resetTouchStatus(),t.correctPosition(),setTimeout(function(){t.swiping=!1,t.move({pace:1,emitChange:!0}),t.autoPlay()},30)},e))}},render:function(t){var e=this,n=this.count,i=this.activeIndicator,r=this.slots("indicator")||this.showIndicators&&n>1&&t("div",{class:fr("indicators",{vertical:this.vertical})},[Array.apply(void 0,Array(n)).map(function(n,r){return t("i",{class:fr("indicator",{active:r===i}),style:r===i?e.indicatorStyle:null})})]);return t("div",{class:fr()},[t("div",{ref:"track",style:this.trackStyle,class:fr("track"),on:{touchstart:this.onTouchStart,touchmove:this.onTouchMove,touchend:this.onTouchEnd,touchcancel:this.onTouchEnd}},[this.slots()]),r])}}),vr=Object(s.k)("swipe-item"),mr=vr[0],gr=vr[1],yr=mr({data:function(){return{offset:0}},beforeCreate:function(){this.$parent.swipes.push(this)},destroyed:function(){this.$parent.swipes.splice(this.$parent.swipes.indexOf(this),1)},render:function(t){var e=this.$parent,n=e.vertical,r=e.computedWidth,o=e.computedHeight,s={width:r+"px",height:n?o+"px":"100%",transform:"translate"+(n?"Y":"X")+"("+this.offset+"px)"};return t("div",{class:gr(),style:s,on:i({},this.$listeners)},[this.slots()])}}),br=Object(s.k)("image-preview"),kr=br[0],xr=br[1];function Sr(t){return Math.sqrt(Math.abs((t[0].clientX-t[1].clientX)*(t[0].clientY-t[1].clientY)))}var wr,Cr=kr({mixins:[D,v],props:{images:Array,className:null,lazyLoad:Boolean,asyncClose:Boolean,startPosition:Number,showIndicators:Boolean,loop:{type:Boolean,default:!0},overlay:{type:Boolean,default:!0},showIndex:{type:Boolean,default:!0},minZoom:{type:Number,default:1/3},maxZoom:{type:Number,default:3},overlayClass:{type:String,default:"van-image-preview__overlay"},closeOnClickOverlay:{type:Boolean,default:!0}},data:function(){return{scale:1,moveX:0,moveY:0,moving:!1,zooming:!1,active:0}},computed:{imageStyle:function(){var t=this.scale,e={transition:this.zooming||this.moving?"":".3s all"};return 1!==t&&(e.transform="scale3d("+t+", "+t+", 1) translate("+this.moveX/t+"px, "+this.moveY/t+"px)"),e}},watch:{value:function(){this.active=this.startPosition},startPosition:function(t){this.active=t}},methods:{onWrapperTouchStart:function(){this.touchStartTime=new Date},onWrapperTouchEnd:function(t){x(t);var e=new Date-this.touchStartTime,n=this.$refs.swipe||{},i=n.offsetX,r=void 0===i?0:i,o=n.offsetY;if(e<300&&r<10&&(void 0===o?0:o)<10){var s=this.active;this.resetScale(),this.$emit("close",{index:s,url:this.images[s]}),this.asyncClose||this.$emit("input",!1)}},startMove:function(t){var e=t.currentTarget.getBoundingClientRect(),n=window.innerWidth,i=window.innerHeight;this.touchStart(t),this.moving=!0,this.startMoveX=this.moveX,this.startMoveY=this.moveY,this.maxMoveX=Math.max(0,(e.width-n)/2),this.maxMoveY=Math.max(0,(e.height-i)/2)},startZoom:function(t){this.moving=!1,this.zooming=!0,this.startScale=this.scale,this.startDistance=Sr(t.touches)},onTouchStart:function(t){var e=t.touches,n=(this.$refs.swipe||{}).offsetX,i=void 0===n?0:n;1===e.length&&1!==this.scale?this.startMove(t):2!==e.length||i||this.startZoom(t)},onTouchMove:function(t){var e=t.touches;if((this.moving||this.zooming)&&x(t,!0),this.moving){this.touchMove(t);var n=this.deltaX+this.startMoveX,i=this.deltaY+this.startMoveY;this.moveX=Object(s.j)(n,-this.maxMoveX,this.maxMoveX),this.moveY=Object(s.j)(i,-this.maxMoveY,this.maxMoveY)}if(this.zooming&&2===e.length){var r=Sr(e),o=this.startScale*r/this.startDistance;this.scale=Object(s.j)(o,this.minZoom,this.maxZoom)}},onTouchEnd:function(t){if(this.moving||this.zooming){var e=!0;this.moving&&this.startMoveX===this.moveX&&this.startMoveY===this.moveY&&(e=!1),t.touches.length||(this.moving=!1,this.zooming=!1,this.startMoveX=0,this.startMoveY=0,this.startScale=1,this.scale<1&&this.resetScale()),e&&x(t,!0)}},onChange:function(t){this.resetScale(),this.active=t,this.$emit("change",t)},resetScale:function(){this.scale=1,this.moveX=0,this.moveY=0}},render:function(t){var e=this;if(this.value){var n=this.active,i=this.images,r=this.showIndex&&t("div",{class:xr("index")},[this.slots("index")||n+1+"/"+i.length]),s=t(pr,{ref:"swipe",attrs:{loop:this.loop,indicatorColor:"white",initialSwipe:this.startPosition,showIndicators:this.showIndicators},on:{change:this.onChange}},[i.map(function(i,r){var s={class:xr("image"),style:r===n?e.imageStyle:null,on:{touchstart:e.onTouchStart,touchmove:e.onTouchMove,touchend:e.onTouchEnd,touchcancel:e.onTouchEnd}};return t(yr,[e.lazyLoad?t("img",o()([{directives:[{name:"lazy",value:i}]},s])):t("img",o()([{attrs:{src:i}},s]))])})]);return t("transition",{attrs:{name:"van-fade"}},[t("div",{class:[xr(),this.className],on:{touchstart:this.onWrapperTouchStart,touchend:this.onWrapperTouchEnd,touchcancel:this.onWrapperTouchEnd}},[r,s])])}}}),$r={images:[],loop:!0,value:!0,minZoom:1/3,maxZoom:3,className:"",lazyLoad:!1,showIndex:!0,asyncClose:!1,startPosition:0,showIndicators:!1},_r=function(t,e){if(void 0===e&&(e=0),!s.h){wr||(wr=new(a.a.extend(Cr))({el:document.createElement("div")}),document.body.appendChild(wr.$el));var n=Array.isArray(t)?{images:t,startPosition:e}:t;return i(wr,$r,n),wr.$once("input",function(t){wr.value=t}),n.onClose&&wr.$once("close",n.onClose),wr}};_r.install=function(){a.a.use(Cr)};var Or=_r,Tr=n("lJzc"),Ar=n.n(Tr).a,jr=Object(s.k)("list"),Ir=jr[0],Br=jr[1],Er=jr[2],Nr=Ir({model:{prop:"loading"},props:{error:Boolean,loading:Boolean,finished:Boolean,errorText:String,loadingText:String,finishedText:String,immediateCheck:{type:Boolean,default:!0},offset:{type:Number,default:300},direction:{type:String,default:"down"}},mounted:function(){this.scroller=B(this.$el),this.handler(!0),this.immediateCheck&&this.$nextTick(this.check)},destroyed:function(){this.handler(!1)},activated:function(){this.handler(!0)},deactivated:function(){this.handler(!1)},watch:{loading:function(){this.$nextTick(this.check)},finished:function(){this.$nextTick(this.check)}},methods:{check:function(){if(!(this.loading||this.finished||this.error)){var t=this.$el,e=this.scroller,n=L(e);if(n&&"none"!==window.getComputedStyle(t).display&&null!==t.offsetParent){var i=this.offset,r=this.direction;(function(){if(t===e){var o=E(t);if("up"===r)return o<=i;var s=o+n;return e.scrollHeight-s<=i}return"up"===r?E(e)-N(t)<=i:N(t)+L(t)-N(e)-n<=i})()&&(this.$emit("input",!0),this.$emit("load"))}}},clickErrorText:function(){this.$emit("update:error",!1),this.$nextTick(this.check)},handler:function(t){this.binded!==t&&(this.binded=t,(t?y:b)(this.scroller,"scroll",this.check))}},render:function(t){return t("div",{class:Br()},["down"===this.direction&&this.slots(),this.loading&&t("div",{class:Br("loading"),key:"loading"},[this.slots("loading")||[t(Q,{class:Br("loading-icon")}),t("span",{class:Br("loading-text")},[this.loadingText||Er("loading")])]]),this.finished&&this.finishedText&&t("div",{class:Br("finished-text")},[this.finishedText]),this.error&&this.errorText&&t("div",{on:{click:this.clickErrorText},class:Br("error-text")},[this.errorText]),"up"===this.direction&&this.slots()])}}),Lr=n("tgu0"),Dr=Object(s.k)("nav-bar"),Fr=Dr[0],Mr=Dr[1];function zr(t,e,n,i){return t("div",o()([{class:[Mr({fixed:e.fixed}),{"van-hairline--bottom":e.border}],style:{zIndex:e.zIndex}},l(i)]),[t("div",{class:Mr("left"),on:{click:i.listeners["click-left"]||s.i}},[n.left?n.left():[e.leftArrow&&t(W,{class:Mr("arrow"),attrs:{name:"arrow-left"}}),e.leftText&&t("span",{class:Mr("text")},[e.leftText])]]),t("div",{class:[Mr("title"),"van-ellipsis"]},[n.title?n.title():e.title]),t("div",{class:Mr("right"),on:{click:i.listeners["click-right"]||s.i}},[n.right?n.right():e.rightText&&t("span",{class:Mr("text")},[e.rightText])])])}zr.props={title:String,fixed:Boolean,leftText:String,rightText:String,leftArrow:Boolean,border:{type:Boolean,default:!0},zIndex:{type:Number,default:1}};var Pr=Fr(zr),Vr=Object(s.k)("notice-bar"),Rr=Vr[0],Hr=Vr[1],Wr=Rr({props:{text:String,mode:String,color:String,leftIcon:String,wrapable:Boolean,background:String,delay:{type:[String,Number],default:1},scrollable:{type:Boolean,default:!0},speed:{type:Number,default:50}},data:function(){return{wrapWidth:0,firstRound:!0,duration:0,offsetWidth:0,showNoticeBar:!0,animationClass:""}},watch:{text:{handler:function(){var t=this;this.$nextTick(function(){var e=t.$refs,n=e.wrap,i=e.content;if(n&&i){var r=n.getBoundingClientRect().width,o=i.getBoundingClientRect().width;t.scrollable&&o>r&&(t.wrapWidth=r,t.offsetWidth=o,t.duration=o/t.speed,t.animationClass=Hr("play"))}})},immediate:!0}},methods:{onClickIcon:function(){"closeable"===this.mode&&(this.showNoticeBar=!1,this.$emit("close"))},onAnimationEnd:function(){var t=this;this.firstRound=!1,this.$nextTick(function(){t.duration=(t.offsetWidth+t.wrapWidth)/t.speed,t.animationClass=Hr("play--infinite")})}},render:function(t){var e=this,n=this.mode,i="closeable"===n?"cross":"link"===n?"arrow":"",r={color:this.color,background:this.background},o={paddingLeft:this.firstRound?0:this.wrapWidth+"px",animationDelay:(this.firstRound?this.delay:0)+"s",animationDuration:this.duration+"s"};return t("div",{directives:[{name:"show",value:this.showNoticeBar}],class:Hr({withicon:n,wrapable:this.wrapable}),style:r,on:{click:function(){e.$emit("click")}}},[this.leftIcon&&t(W,{class:Hr("left-icon"),attrs:{name:this.leftIcon}}),t("div",{ref:"wrap",class:Hr("wrap")},[t("div",{ref:"content",class:[Hr("content"),this.animationClass,{"van-ellipsis":!this.scrollable&&!this.wrapable}],style:o,on:{animationend:this.onAnimationEnd,webkitAnimationEnd:this.onAnimationEnd}},[this.slots()||this.text])]),i&&t(W,{class:Hr("right-icon"),attrs:{name:i},on:{click:this.onClickIcon}})])}}),qr=Object(s.k)("notify"),Yr=qr[0],Ur=qr[1];function Kr(t,e,n,i){var r={color:e.color,background:e.background};return t(tt,o()([{attrs:{value:e.value,position:"top",overlay:!1,lockScroll:!1},style:r,class:[Ur(),e.className],on:{input:function(t){d(i,"input",t)}}},l(i)]),[e.message])}Kr.props=i({},D.props,{className:null,message:[String,Number],color:{type:String,default:sn},background:{type:String,default:on},duration:{type:Number,default:3e3}});var Xr,Qr,Jr=Yr(Kr);function Zr(t){var e;if(!s.h)return Qr||(Qr=h(Jr)),t=i({},Zr.currentOptions,(e=t,Object(s.g)(e)?e:{message:e})),i(Qr,t),clearTimeout(Xr),t.duration&&t.duration>0&&(Xr=setTimeout(Zr.clear,t.duration)),Qr}function Gr(){return{value:!0,message:"",color:sn,background:on,duration:3e3,className:""}}Zr.clear=function(){Qr&&(Qr.value=!1)},Zr.currentOptions=Gr(),Zr.setDefaultOptions=function(t){i(Zr.currentOptions,t)},Zr.resetDefaultOptions=function(){Zr.currentOptions=Gr()},Zr.install=function(){a.a.use(Jr)},a.a.prototype.$notify=Zr;var to=Zr,eo=Object(s.k)("key"),no=eo[0],io=eo[1],ro=no({props:{type:Array,text:[String,Number]},data:function(){return{active:!1}},computed:{className:function(){var t=this.type.slice(0);return this.active&&t.push("active"),io(t)}},methods:{onFocus:function(){this.active=!0,this.$emit("press",this.text)},onBlur:function(t){x(t,!0),this.active=!1}},render:function(t){var e=this.onBlur;return t("i",{class:["van-hairline",this.className],on:{touchstart:this.onFocus,touchmove:e,touchend:e,touchcancel:e}},[this.text])}}),oo=Object(s.k)("number-keyboard"),so=oo[0],ao=oo[1],co=oo[2],uo=["blue","big"],lo=["delete","big","gray"],ho=so({props:{show:Boolean,title:String,closeButtonText:String,deleteButtonText:String,safeAreaInsetBottom:Boolean,theme:{type:String,default:"default"},extraKey:{type:String,default:""},zIndex:{type:Number,default:100},transition:{type:Boolean,default:!0},showDeleteKey:{type:Boolean,default:!0},hideOnClickOutside:{type:Boolean,default:!0}},mounted:function(){this.handler(!0)},destroyed:function(){this.handler(!1)},activated:function(){this.handler(!0)},deactivated:function(){this.handler(!1)},watch:{show:function(){this.transition||this.$emit(this.show?"show":"hide")}},computed:{keys:function(){for(var t=[],e=1;e<=9;e++)t.push({text:e});switch(this.theme){case"default":t.push({text:this.extraKey,type:["gray"]},{text:0},{text:this.deleteText,type:["gray","delete"]});break;case"custom":t.push({text:0,type:["middle"]},{text:this.extraKey})}return t},deleteText:function(){return this.deleteButtonText||co("delete")}},methods:{handler:function(t){this.$isServer||t!==this.handlerStatus&&this.hideOnClickOutside&&(this.handlerStatus=t,document.body[(t?"add":"remove")+"EventListener"]("touchstart",this.onBlur))},onBlur:function(){this.$emit("blur")},onClose:function(){this.$emit("close"),this.onBlur()},onAnimationEnd:function(){this.$emit(this.show?"show":"hide")},onPress:function(t){""!==t&&(t===this.deleteText?this.$emit("delete"):t===this.closeButtonText?this.onClose():this.$emit("input",t))}},render:function(t){var e=this.title,n=this.theme,i=this.onPress,r=this.closeButtonText,o=this.slots("title-left"),s=r&&"default"===n,a=e||s||o;return t("transition",{attrs:{name:this.transition?"van-slide-up":""}},[t("div",{directives:[{name:"show",value:this.show}],style:{zIndex:this.zIndex},class:ao([n,{"safe-area-inset-bottom":this.safeAreaInsetBottom}]),on:{touchstart:k,animationend:this.onAnimationEnd,webkitAnimationEnd:this.onAnimationEnd}},[a&&t("div",{class:[ao("title"),"van-hairline--top"]},[o&&t("span",{class:ao("title-left")},[o]),e&&t("span",[e]),s&&t("span",{class:ao("close"),on:{click:this.onClose}},[r])]),t("div",{class:ao("body")},[this.keys.map(function(e){return t(ro,{key:e.text,attrs:{text:e.text,type:e.type},on:{press:i}})})]),"custom"===n&&t("div",{class:ao("sidebar")},[t(ro,{attrs:{text:this.deleteText,type:lo},on:{press:i}}),t(ro,{attrs:{text:r,type:uo},on:{press:i}})])])])}}),fo=Object(s.k)("pagination"),po=fo[0],vo=fo[1],mo=fo[2];function go(t,e,n){return{number:t,text:e,active:n}}var yo=po({props:{value:Number,prevText:String,nextText:String,pageCount:Number,totalItems:Number,forceEllipses:Boolean,mode:{type:String,default:"multi"},itemsPerPage:{type:Number,default:10},showPageSize:{type:Number,default:5}},computed:{count:function(){var t=this.pageCount||Math.ceil(this.totalItems/this.itemsPerPage);return Math.max(1,t)},pages:function(){var t=[],e=this.count;if("multi"!==this.mode)return t;var n=1,i=e,r=void 0!==this.showPageSize&&this.showPageSizee&&(n=(i=e)-this.showPageSize+1);for(var o=n;o<=i;o++){var s=go(o,o,o===this.value);t.push(s)}if(r&&this.showPageSize>0&&this.forceEllipses){if(n>1){var a=go(n-1,"...",!1);t.unshift(a)}if(i=0&&t<=100}},showPivot:{type:Boolean,default:!0},color:{type:String,default:"#1989fa"},textColor:{type:String,default:sn}},data:function(){return{pivotWidth:0,progressWidth:0}},mounted:function(){this.getWidth()},watch:{showPivot:function(){this.getWidth()},pivotText:function(){this.getWidth()}},methods:{getWidth:function(){var t=this;this.$nextTick(function(){t.progressWidth=t.$el.offsetWidth,t.pivotWidth=t.$refs.pivot?t.$refs.pivot.offsetWidth:0})}},render:function(t){var e=this.pivotText,n=this.percentage,i=Object(s.d)(e)?e:n+"%",r=this.showPivot&&i,o=this.inactive?"#cacaca":this.color,a={color:this.textColor,background:this.pivotColor||o},c={background:o,width:(this.progressWidth-this.pivotWidth)*n/100+"px"};return t("div",{class:Io()},[t("span",{class:Io("portion",{"with-pivot":r}),style:c},[r&&t("span",{ref:"pivot",style:a,class:Io("pivot")},[i])])])}}),Eo=Object(s.k)("pull-refresh"),No=Eo[0],Lo=Eo[1],Do=Eo[2],Fo=["pulling","loosing","success"],Mo=No({mixins:[v],props:{disabled:Boolean,successText:String,pullingText:String,loosingText:String,loadingText:String,value:{type:Boolean,required:!0},successDuration:{type:Number,default:500},animationDuration:{type:Number,default:300},headHeight:{type:Number,default:50}},data:function(){return{status:"normal",height:0,duration:0}},computed:{untouchable:function(){return"loading"===this.status||"success"===this.status||this.disabled}},watch:{value:function(t){var e=this;this.duration=this.animationDuration,!t&&this.successText?(this.status="success",setTimeout(function(){e.setStatus(0)},this.successDuration)):this.setStatus(t?this.headHeight:0,t)}},mounted:function(){this.scrollEl=B(this.$el)},methods:{onTouchStart:function(t){!this.untouchable&&this.getCeiling()&&(this.duration=0,this.touchStart(t))},onTouchMove:function(t){this.untouchable||(this.touchMove(t),!this.ceiling&&this.getCeiling()&&(this.duration=0,this.startY=t.touches[0].clientY,this.deltaY=0),this.ceiling&&this.deltaY>=0&&"vertical"===this.direction&&(this.setStatus(this.ease(this.deltaY)),x(t)))},onTouchEnd:function(){!this.untouchable&&this.ceiling&&this.deltaY&&(this.duration=this.animationDuration,"loosing"===this.status?(this.setStatus(this.headHeight,!0),this.$emit("input",!0),this.$emit("refresh")):this.setStatus(0))},getCeiling:function(){return this.ceiling=0===E(this.scrollEl),this.ceiling},ease:function(t){var e=this.headHeight;return t=s?"full":r+.5>=s&&a?"half":"void"));function k(t){v||p||(d(i,"input",t),d(i,"change",t))}return t("div",o()([{class:Vo()},l(i),{on:{touchmove:function(t){if(!p&&!v&&document.elementFromPoint){x(t);var e=t.touches[0],n=e.clientX,i=e.clientY,r=document.elementFromPoint(n,i);if(r&&r.dataset){var o=r.dataset.score;o&&k(+o)}}}}}]),[y.map(function(n,i){return function(n,i){var r="full"===n,o="void"===n;return t("div",{key:i,class:Vo("item")},[t(W,{attrs:{name:r?c:f,size:u+"px","data-score":i+1,color:v?g:r?h:m},class:Vo("icon"),on:{click:function(){k(i+1)}}}),e.allowHalf&&t(W,{attrs:{name:o?f:c,size:u+"px","data-score":i+.5,color:v?g:o?m:h},class:Vo("icon","half"),on:{click:function(){k(i+.5)}}})])}(n,i)})])}Ro.props={value:Number,readonly:Boolean,disabled:Boolean,allowHalf:Boolean,size:{type:Number,default:20},icon:{type:String,default:"star"},voidIcon:{type:String,default:"star-o"},color:{type:String,default:"#ffd21e"},voidColor:{type:String,default:"#c7c7c7"},disabledColor:{type:String,default:"#bdbdbd"},count:{type:Number,default:5}};var Ho=Po(Ro),Wo=Object(s.k)("row"),qo=Wo[0],Yo=Wo[1],Uo=qo({props:{type:String,align:String,justify:String,tag:{type:String,default:"div"},gutter:{type:[Number,String],default:0}},render:function(t){var e,n=this.align,i=this.justify,r="flex"===this.type,o="-"+Number(this.gutter)/2+"px",s=this.gutter?{marginLeft:o,marginRight:o}:{};return t(this.tag,{style:s,class:Yo((e={flex:r},e["align-"+n]=r&&n,e["justify-"+i]=r&&i,e))},[this.slots()])}}),Ko=Object(s.k)("search"),Xo=Ko[0],Qo=Ko[1],Jo=Ko[2];function Zo(t,e,n,r){var s={attrs:r.data.attrs,on:i({},r.listeners,{input:function(t){d(r,"input",t)},keypress:function(t){13===t.keyCode&&(x(t),d(r,"search",e.value)),d(r,"keypress",t)}})},a=l(r);return delete a.attrs,t("div",o()([{class:Qo({"show-action":e.showAction}),style:{background:e.background}},a]),[t("div",{class:Qo("content",e.shape)},[n.label||e.label?t("div",{class:Qo("label")},[n.label?n.label():e.label]):null,t(Dt,o()([{attrs:{clearable:!0,type:"search",value:e.value,border:!1,leftIcon:"search"},scopedSlots:{"left-icon":n["left-icon"]}},s]))]),function(){if(!e.showAction)return null;return t("div",{class:Qo("action")},[n.action?n.action():t("div",{on:{click:function(){d(r,"input",""),d(r,"cancel")}}},[Jo("cancel")])])}()])}Zo.props={value:String,label:String,showAction:Boolean,shape:{type:String,default:"square"},background:{type:String,default:"#fff"}};var Go=Xo(Zo),ts=Object(s.k)("sku-header"),es=ts[0],ns=ts[1];function is(t,e,n,i){var r=e.sku,s=e.goods,a=e.skuEventBus,c=function(t,e){var n=e.s1;if(n){var i=t.tree.filter(function(t){return"s1"===t.k_s})[0]||{};if(i.v){var r=i.v.filter(function(t){return t.id===n})[0];if(r)return r.imgUrl||r.img_url}}}(r,e.selectedSku)||s.picture;return t("div",o()([{class:[ns(),"van-hairline--bottom"]},l(i)]),[t("div",{class:ns("img-wrap"),on:{click:function(){a.$emit("sku:previewImage",c)}}},[t("img",{attrs:{src:c}})]),t("div",{class:ns("goods-info")},[t("div",{class:"van-sku__goods-name van-ellipsis"},[s.title]),n.default&&n.default(),t(W,{attrs:{name:"close"},class:"van-sku__close-icon",on:{click:function(){a.$emit("sku:close")}}})])])}is.props={sku:Object,goods:Object,skuEventBus:Object,selectedSku:Object};var rs=es(is),os=Object(s.k)("sku-row"),ss=os[0],as=os[1];function cs(t,e,n,i){return t("div",o()([{class:as()},l(i)]),[t("div",{class:as("title")},[e.skuRow.k,":"]),n.default&&n.default()])}cs.props={skuRow:Object};var us=ss(cs),ls={QUOTA_LIMIT:0,STOCK_LIMIT:1},ds={LIMIT_TYPE:ls,UNSELECTED_SKU_VALUE_ID:""},hs=function(t){var e={};return t.forEach(function(t){e[t.k_s]=t.v}),e},fs=function(t,e){var n=Object.keys(e).filter(function(t){return""!==e[t]});return t.length===n.length},ps=function(t,e){return t.filter(function(t){return Object.keys(e).every(function(n){return String(t[n])===String(e[n])})})[0]},vs=function(t,e){var n=hs(t);return Object.keys(e).reduce(function(t,i){var r=n[i],o=e[i];if(""!==o){var s=r.filter(function(t){return t.id===o})[0];s&&t.push(s)}return t},[])},ms=function(t,e,n){var r,o=n.key,s=n.valueId,a=i({},e,((r={})[o]=s,r)),c=Object.keys(a).filter(function(t){return""!==a[t]});return t.filter(function(t){return c.every(function(e){return String(a[e])===String(t[e])})}).reduce(function(t,e){return t+=e.stock_num},0)>0},gs={normalizeSkuTree:hs,getSkuComb:ps,getSelectedSkuValues:vs,isAllSelected:fs,isSkuChoosable:ms},ys=(0,Object(s.k)("sku-row-item")[0])({props:{skuList:Array,skuValue:Object,skuKeyStr:String,skuEventBus:Object,selectedSku:Object},computed:{choosable:function(){return ms(this.skuList,this.selectedSku,{key:this.skuKeyStr,valueId:this.skuValue.id})}},methods:{onSelect:function(){this.choosable&&this.skuEventBus.$emit("sku:select",i({},this.skuValue,{skuKeyStr:this.skuKeyStr}))}},render:function(t){return t("span",{class:["van-sku-row__item",{"van-sku-row__item--active":this.skuValue.id===this.selectedSku[this.skuKeyStr],"van-sku-row__item--disabled":!this.choosable}],on:{click:this.onSelect}},[this.skuValue.name])}}),bs=Object(s.k)("stepper"),ks=bs[0],xs=bs[1],Ss=ks({props:{value:null,integer:Boolean,disabled:Boolean,inputWidth:String,asyncChange:Boolean,disableInput:Boolean,min:{type:[String,Number],default:1},max:{type:[String,Number],default:1/0},step:{type:[String,Number],default:1},defaultValue:{type:[String,Number],default:1}},data:function(){var t=this.range(Object(s.d)(this.value)?this.value:this.defaultValue);return t!==+this.value&&this.$emit("input",t),{currentValue:t}},computed:{minusDisabled:function(){return this.disabled||this.currentValue<=this.min},plusDisabled:function(){return this.disabled||this.currentValue>=this.max}},watch:{value:function(t){t!==this.currentValue&&(this.currentValue=this.format(t))},currentValue:function(t){this.$emit("input",t),this.$emit("change",t)}},methods:{format:function(t){return""===(t=String(t).replace(/[^0-9.-]/g,""))?0:this.integer?Math.floor(t):+t},range:function(t){return Math.max(Math.min(this.max,this.format(t)),this.min)},onInput:function(t){var e=t.target.value,n=this.format(e);this.asyncChange?(t.target.value=this.currentValue,this.$emit("input",n),this.$emit("change",n)):(+e!==n&&(t.target.value=n),this.currentValue=n)},onChange:function(t){if(this[t+"Disabled"])this.$emit("overlimit",t);else{var e="minus"===t?-this.step:+this.step,n=Math.round(100*(this.currentValue+e))/100;this.asyncChange?(this.$emit("input",n),this.$emit("change",n)):this.currentValue=this.range(n),this.$emit(t)}},onFocus:function(t){this.$emit("focus",t)},onBlur:function(t){this.currentValue=this.range(this.currentValue),this.$emit("blur",t),0===this.currentValue&&(t.target.value=this.currentValue)}},render:function(t){var e=this,n=function(t){return function(){e.onChange(t)}};return t("div",{class:xs()},[t("button",{class:xs("minus",{disabled:this.minusDisabled}),on:{click:n("minus")}}),t("input",{attrs:{type:"number",disabled:this.disabled||this.disableInput},class:xs("input"),domProps:{value:this.currentValue},style:{width:this.inputWidth},on:{input:this.onInput,focus:this.onFocus,blur:this.onBlur}}),t("button",{class:xs("plus",{disabled:this.plusDisabled}),on:{click:n("plus")}})])}}),ws=Object(s.k)("sku-stepper")[0],Cs=ls.QUOTA_LIMIT,$s=ls.STOCK_LIMIT,_s=ws({props:{quota:Number,quotaUsed:Number,hideStock:Boolean,skuEventBus:Object,skuStockNum:Number,selectedSku:Object,selectedNum:Number,stepperTitle:String,hideQuotaText:Boolean,selectedSkuComb:Object,disableStepperInput:Boolean,customStepperConfig:Object},data:function(){return{currentNum:this.selectedNum,limitType:$s}},watch:{currentNum:function(t){this.skuEventBus.$emit("sku:numChange",t)},stepperLimit:function(t){t0&&(n="每人限购"+this.quota+"件"),n},stepperLimit:function(){var t,e=this.quota-this.quotaUsed;return this.quota>0&&e<=this.stock?(t=e<0?0:e,this.limitType=Cs):(t=this.stock,this.limitType=$s),t}},methods:{setCurrentNum:function(t){this.currentNum=t},onOverLimit:function(t){this.skuEventBus.$emit("sku:overLimit",{action:t,limitType:this.limitType,quota:this.quota,quotaUsed:this.quotaUsed})},onChange:function(t){var e=this.customStepperConfig.handleStepperChange;e&&e(t),this.$emit("change",t)}},render:function(t){var e=this;return t("div",{class:"van-sku-stepper-stock"},[t("div",{class:"van-sku-stepper-container"},[t("div",{class:"van-sku__stepper-title"},[this.stepperTitle||"购买数量",":"]),t(Ss,{class:"van-sku__stepper",attrs:{max:this.stepperLimit,disableInput:this.disableStepperInput},on:{overlimit:this.onOverLimit,change:this.onChange},model:{value:e.currentNum,callback:function(t){e.currentNum=t}}})]),!this.hideStock&&t("div",{class:"van-sku__stock"},[this.stockText]),!this.hideQuotaText&&this.quotaText&&t("div",{class:"van-sku__quota"},[this.quotaText])])}});function Os(t){return/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i.test(t)}var Ts=Object(s.k)("uploader"),As=Ts[0],js=Ts[1],Is=As({inheritAttrs:!1,props:{disabled:Boolean,beforeRead:Function,afterRead:Function,accept:{type:String,default:"image/*"},resultType:{type:String,default:"dataUrl"},maxSize:{type:Number,default:Number.MAX_VALUE}},computed:{detail:function(){return{name:this.$attrs.name||""}}},methods:{onChange:function(t){var e=this,n=t.target.files;!this.disabled&&n.length&&(!(n=1===n.length?n[0]:[].slice.call(n,0))||this.beforeRead&&!this.beforeRead(n,this.detail)?this.resetInput():Array.isArray(n)?Promise.all(n.map(this.readFile)).then(function(t){var i=!1,r=n.map(function(r,o){return r.size>e.maxSize&&(i=!0),{file:n[o],content:t[o]}});e.onAfterRead(r,i)}):this.readFile(n).then(function(t){e.onAfterRead({file:n,content:t},n.size>e.maxSize)}))},readFile:function(t){var e=this;return new Promise(function(n){var i=new FileReader;i.onload=function(t){n(t.target.result)},"dataUrl"===e.resultType?i.readAsDataURL(t):"text"===e.resultType&&i.readAsText(t)})},onAfterRead:function(t,e){e?this.$emit("oversize",t):this.afterRead&&this.afterRead(t,this.detail),this.resetInput()},resetInput:function(){this.$refs.input&&(this.$refs.input.value="")}},render:function(t){var e=this.accept,n=this.disabled;return t("div",{class:js()},[this.slots(),t("input",{attrs:i({},this.$attrs,{type:"file",accept:e,disabled:n}),ref:"input",class:js("input"),on:{change:this.onChange}})])}}),Bs=Object(s.k)("sku-img-uploader"),Es=Bs[0],Ns=Bs[1],Ls=Es({props:{value:String,uploadImg:Function,maxSize:{type:Number,default:6}},data:function(){return{paddingImg:""}},computed:{imgList:function(){return this.value&&!this.paddingImg?[this.value]:[]}},methods:{afterReadFile:function(t){var e=this;this.paddingImg=t.content,this.uploadImg(t.file,t.content).then(function(t){e.$emit("input",t),e.$nextTick(function(){e.paddingImg=""})}).catch(function(){e.paddingImg=""})},onOversize:function(){this.$toast("最大可上传图片为"+this.maxSize+"MB,请尝试压缩图片尺寸")}},render:function(t){var e=this,n=this.imgList,i=this.paddingImg,r=(i||n.length>0)&&t("div",{class:"van-clearfix"},[n.map(function(n){return t("div",{class:Ns("img")},[t("img",{attrs:{src:n}}),t(W,{attrs:{name:"clear"},class:Ns("delete"),on:{click:function(){e.$emit("input","")}}})])}),i&&t("div",{class:Ns("img")},[t("img",{attrs:{src:i}}),t(Q,{attrs:{type:"spinner"},class:Ns("uploading")})])]);return t("div",{class:Ns()},[t(Is,{attrs:{disabled:!!i,afterRead:this.afterReadFile,maxSize:1024*this.maxSize*1024},on:{oversize:this.onOversize}},[t("div",{class:Ns("header")},[i?t("div",["正在上传..."]):[t(W,{attrs:{name:"photograph"}}),t("span",{class:"label"},[this.value?"重拍":"拍照"," 或 "]),t(W,{attrs:{name:"photo"}}),t("span",{class:"label"},[this.value?"重新选择照片":"选择照片"])]])]),r])}}),Ds=Object(s.k)("sku-messages"),Fs=Ds[0],Ms=Ds[1],zs={id_no:"输入身份证号码",text:"输入文本",tel:"输入数字",email:"输入邮箱",date:"点击选择日期",time:"点击选择时间",textarea:"点击填写段落文本",mobile:"输入手机号码"},Ps=Fs({props:{messages:Array,messageConfig:Object,goodsId:[Number,String]},data:function(){return{messageValues:this.resetMessageValues(this.messages)}},watch:{messages:function(t){this.messageValues=this.resetMessageValues(t)}},methods:{resetMessageValues:function(t){return(t||[]).map(function(){return{value:""}})},getType:function(t){return 1==+t.multiple?"textarea":"id_no"===t.type?"text":t.datetime>0?"datetime-local":t.type},getMessages:function(){var t=this,e={};return this.messageValues.forEach(function(n,i){var r=n.value;t.messages[i].datetime>0&&(r=r.replace(/T/g," ")),e["message_"+i]=r}),e},getCartMessages:function(){var t=this,e={};return this.messageValues.forEach(function(n,i){var r=n.value,o=t.messages[i];o.datetime>0&&(r=r.replace(/T/g," ")),e[o.name]=r}),e},getPlaceholder:function(t){var e=1==+t.multiple?"textarea":t.type;return(this.messageConfig.placeholderMap||{})[e]||zs[e]},validateMessages:function(){for(var t=this.messageValues,e=0;e18))return"请填写正确的身份证号码"}}}},render:function(t){var e=this;return t(wn,{class:Ms()},[this.messages.map(function(n,i){return"image"===n.type?t(It,{class:Ms("image-cell"),attrs:{label:"仅限一张",title:n.name,required:"1"===String(n.required)},key:e.goodsId+"-"+i},[t(Ls,{attrs:{uploadImg:e.messageConfig.uploadImg,maxSize:e.messageConfig.uploadMaxSize},model:{value:e.messageValues[i].value,callback:function(t){e.messageValues[i].value=t}}})]):t(Dt,{attrs:{maxlength:"200",label:n.name,required:"1"===String(n.required),placeholder:e.getPlaceholder(n),type:e.getType(n)},key:e.goodsId+"-"+i,model:{value:e.messageValues[i].value,callback:function(t){e.messageValues[i].value=t}}})})])}}),Vs=Object(s.k)("sku-actions"),Rs=Vs[0],Hs=Vs[1];function Ws(t,e,n,i){var r=function(t){return function(){e.skuEventBus.$emit(t)}};return t("div",o()([{class:Hs()},l(i)]),[e.showAddCartBtn&&t(te,{attrs:{bottomAction:!0,text:"加入购物车"},on:{click:r("sku:addCart")}}),t(te,{attrs:{type:"primary",bottomAction:!0,text:e.buyText||"立即购买"},on:{click:r("sku:buy")}})])}Ws.props={buyText:String,skuEventBus:Object,showAddCartBtn:Boolean};var qs=Rs(Ws),Ys=Object(s.k)("sku")[0],Us=ls.QUOTA_LIMIT,Ks=Ys({props:{sku:Object,goods:Object,quota:Number,value:Boolean,buyText:String,quotaUsed:Number,goodsId:[Number,String],hideStock:Boolean,hideQuotaText:Boolean,stepperTitle:String,getContainer:Function,customSkuValidator:Function,closeOnClickOverlay:Boolean,disableStepperInput:Boolean,resetStepperOnHide:Boolean,resetSelectedSkuOnHide:Boolean,initialSku:{type:Object,default:function(){return{}}},showSoldoutSku:{type:Boolean,default:!0},showAddCartBtn:{type:Boolean,default:!0},bodyOffsetTop:{type:Number,default:200},messageConfig:{type:Object,default:function(){return{placeholderMap:{},uploadImg:function(){return Promise.resolve()},uploadMaxSize:5}}},customStepperConfig:{type:Object,default:function(){return{}}}},data:function(){return{selectedSku:{},selectedNum:1,show:this.value}},watch:{show:function(t){if(this.$emit("input",t),!t){var e=vs(this.sku.tree,this.selectedSku);this.$emit("sku-close",{selectedSkuValues:e,selectedNum:this.selectedNum,selectedSkuComb:this.selectedSkuComb}),this.resetStepperOnHide&&this.resetStepper(),this.resetSelectedSkuOnHide&&this.resetSelectedSku(this.skuTree)}},value:function(t){this.show=t},skuTree:function(t){this.resetSelectedSku(t)}},computed:{skuGroupClass:function(){return["van-sku-group-container","van-hairline--bottom",{"van-sku-group-container--hide-soldout":!this.showSoldoutSku}]},bodyStyle:function(){if(!this.$isServer)return{maxHeight:window.innerHeight-this.bodyOffsetTop+"px"}},isSkuCombSelected:function(){return fs(this.sku.tree,this.selectedSku)},isSkuEmpty:function(){return 0===Object.keys(this.sku).length},hasSku:function(){return!this.sku.none_sku},selectedSkuComb:function(){return this.hasSku?this.isSkuCombSelected?ps(this.sku.list,this.selectedSku):null:{id:this.sku.collection_id,price:Math.round(100*this.sku.price),stock_num:this.sku.stock_num}},price:function(){return this.selectedSkuComb?(this.selectedSkuComb.price/100).toFixed(2):this.sku.price},skuTree:function(){return this.sku.tree||[]},imageList:function(){var t=[this.goods.picture];if(this.skuTree.length>0){var e=this.skuTree.filter(function(t){return"s1"===t.k_s})[0]||{};if(!e.v)return;e.v.forEach(function(e){var n=e.imgUrl||e.img_url;n&&t.push(n)})}return t}},created:function(){var t=new a.a;this.skuEventBus=t,t.$on("sku:close",this.onClose),t.$on("sku:select",this.onSelect),t.$on("sku:numChange",this.onNumChange),t.$on("sku:previewImage",this.onPreviewImage),t.$on("sku:overLimit",this.onOverLimit),t.$on("sku:addCart",this.onAddCart),t.$on("sku:buy",this.onBuy),this.resetStepper(),this.resetSelectedSku(this.skuTree),this.$emit("after-sku-create",t)},methods:{resetStepper:function(){var t=this.$refs.skuStepper,e=this.initialSku.selectedNum,n=Object(s.d)(e)?e:1;t?t.setCurrentNum(n):this.selectedNum=n},resetSelectedSku:function(t){var e=this;this.selectedSku={},t.forEach(function(t){e.selectedSku[t.k_s]=e.initialSku[t.k_s]||""}),t.forEach(function(t){var n=t.k_s,i=t.v[0].id;1===t.v.length&&ms(e.sku.list,e.selectedSku,{key:n,valueId:i})&&(e.selectedSku[n]=i)})},getSkuMessages:function(){return this.$refs.skuMessages?this.$refs.skuMessages.getMessages():{}},getSkuCartMessages:function(){return this.$refs.skuMessages?this.$refs.skuMessages.getCartMessages():{}},validateSkuMessages:function(){return this.$refs.skuMessages?this.$refs.skuMessages.validateMessages():""},validateSku:function(){if(0===this.selectedNum)return"商品已经无法购买啦";if(this.isSkuCombSelected)return this.validateSkuMessages();if(this.customSkuValidator){var t=this.customSkuValidator(this);if(t)return t}return"请先选择商品规格"},onClose:function(){this.show=!1},onSelect:function(t){var e,n;this.selectedSku=this.selectedSku[t.skuKeyStr]===t.id?i({},this.selectedSku,((e={})[t.skuKeyStr]="",e)):i({},this.selectedSku,((n={})[t.skuKeyStr]=t.id,n)),this.$emit("sku-selected",{skuValue:t,selectedSku:this.selectedSku,selectedSkuComb:this.selectedSkuComb})},onNumChange:function(t){this.selectedNum=t},onPreviewImage:function(t){var e=this,n=this.imageList.findIndex(function(e){return e===t}),i={index:n,imageList:this.imageList,indexImage:t};this.$emit("preview-on",i),Or({images:this.imageList,startPosition:n,onClose:function(){e.$emit("preview-close",i)}})},onOverLimit:function(t){var e=t.action,n=t.limitType,i=t.quota,r=t.quotaUsed,o=this.customStepperConfig.handleOverLimit;if(o)o(t);else if("minus"===e)Kt("至少选择一件");else if("plus"===e)if(n===Us){var s="限购"+i+"件";r>0&&(s+=",你已购买"+r+"件"),Kt(s)}else Kt("库存不足")},onAddCart:function(){this.onBuyOrAddCart("add-cart")},onBuy:function(){this.onBuyOrAddCart("buy-clicked")},onBuyOrAddCart:function(t){var e=this.validateSku();e?Kt(e):this.$emit(t,this.getSkuData())},getSkuData:function(){return{goodsId:this.goodsId,selectedNum:this.selectedNum,selectedSkuComb:this.selectedSkuComb,messages:this.getSkuMessages(),cartMessages:this.getSkuCartMessages()}}},render:function(t){var e=this;if(!this.isSkuEmpty){var n=this.sku,i=this.goods,r=this.price,o=this.skuEventBus,s=this.selectedSku,a=this.selectedNum,c=this.stepperTitle,u=this.hideQuotaText,l=this.selectedSkuComb,d={price:r,selectedNum:a,skuEventBus:o,selectedSku:s,selectedSkuComb:l},h=function(t){return e.slots(t,d)},f=h("sku-header")||t(rs,{attrs:{sku:n,goods:i,skuEventBus:o,selectedSku:s}},[h("sku-header-price")||t("div",{class:"van-sku__goods-price"},[t("span",{class:"van-sku__price-symbol"},["¥"]),t("span",{class:"van-sku__price-num"},[r])])]),p=h("sku-group")||this.hasSku&&t("div",{class:this.skuGroupClass},[this.skuTree.map(function(e){return t(us,{attrs:{skuRow:e}},[e.v.map(function(i){return t(ys,{attrs:{skuList:n.list,skuValue:i,selectedSku:s,skuEventBus:o,skuKeyStr:e.k_s}})})])})]),v=h("sku-stepper")||t(_s,{ref:"skuStepper",attrs:{quota:this.quota,hideStock:this.hideStock,quotaUsed:this.quotaUsed,skuEventBus:o,selectedNum:a,selectedSku:s,stepperTitle:c,skuStockNum:n.stock_num,hideQuotaText:u,selectedSkuComb:l,disableStepperInput:this.disableStepperInput,customStepperConfig:this.customStepperConfig},on:{change:function(t){e.$emit("stepper-change",t)}}}),m=h("sku-messages")||t(Ps,{ref:"skuMessages",attrs:{goodsId:this.goodsId,messageConfig:this.messageConfig,messages:n.messages}}),g=h("sku-actions")||t(qs,{attrs:{buyText:this.buyText,skuEventBus:o,showAddCartBtn:this.showAddCartBtn}});return t(tt,{attrs:{position:"bottom",getContainer:this.getContainer,closeOnClickOverlay:this.closeOnClickOverlay},class:"van-sku-container",model:{value:e.show,callback:function(t){e.show=t}}},[f,t("div",{class:"van-sku-body",style:this.bodyStyle},[h("sku-body-top"),p,h("extra-sku-group"),v,m]),g])}}});Ks.SkuActions=qs,Ks.SkuHeader=rs,Ks.SkuMessages=Ps,Ks.SkuStepper=_s,Ks.SkuRow=us,Ks.SkuRowItem=ys,Ks.skuHelper=gs,Ks.skuConstants=ds;var Xs=Ks,Qs=Object(s.k)("slider"),Js=Qs[0],Zs=Qs[1],Gs=Js({mixins:[v],props:{min:Number,value:Number,disabled:Boolean,vertical:Boolean,activeColor:String,inactiveColor:String,max:{type:Number,default:100},step:{type:Number,default:1},barHeight:{type:String,default:"2px"}},methods:{onTouchStart:function(t){this.disabled||(this.touchStart(t),this.startValue=this.format(this.value))},onTouchMove:function(t){if(x(t,!0),!this.disabled){this.touchMove(t);var e=this.$el.getBoundingClientRect(),n=(this.vertical?this.deltaY:this.deltaX)/(this.vertical?e.height:e.width)*100;this.newValue=this.startValue+n,this.updateValue(this.newValue)}},onTouchEnd:function(){this.disabled||this.updateValue(this.newValue,!0)},onClick:function(t){if(t.stopPropagation(),!this.disabled){var e=this.$el.getBoundingClientRect(),n=(this.vertical?t.clientY-e.top:t.clientX-e.left)/(this.vertical?e.height:e.width)*100;this.updateValue(n,!0)}},updateValue:function(t,e){t=this.format(t),this.$emit("input",t),e&&this.$emit("change",t)},format:function(t){return Math.round(Math.max(this.min,Math.min(t,this.max))/this.step)*this.step}},render:function(t){var e,n=this.vertical,i={background:this.inactiveColor},r=n?"width":"height",o=((e={})[n?"height":"width"]=this.format(this.value)+"%",e[r]=this.barHeight,e.background=this.activeColor,e);return t("div",{style:i,class:Zs({disabled:this.disabled,vertical:n}),on:{click:this.onClick}},[t("div",{class:Zs("bar"),style:o},[t("div",{class:Zs("button-wrapper"),on:{touchstart:this.onTouchStart,touchmove:this.onTouchMove,touchend:this.onTouchEnd,touchcancel:this.onTouchEnd}},[this.slots("button")||t("div",{class:Zs("button")})])])])}}),ta=Object(s.k)("step"),ea=ta[0],na=ta[1],ia=ea({beforeCreate:function(){var t=this.$parent.steps,e=this.$parent.slots().indexOf(this.$vnode);t.splice(-1===e?t.length:e,0,this)},beforeDestroy:function(){var t=this.$parent.steps.indexOf(this);t>-1&&this.$parent.steps.splice(t,1)},computed:{status:function(){var t=this.$parent.steps.indexOf(this),e=this.$parent.active;return ti*r&&i>0?this.open("right"):"left"===t&&e>n*r&&n>0?this.open("left"):this.swipeMove(0)},startDrag:function(t){this.disabled||(this.dragging=!0,this.startOffset=this.offset,this.touchStart(t))},onDrag:function(t){this.disabled||(this.touchMove(t),"horizontal"===this.direction&&(x(t),this.swipeMove(this.deltaX+this.startOffset)))},endDrag:function(){this.disabled||(this.dragging=!1,this.swiping&&this.swipeLeaveTransition(this.offset>0?"left":"right"))},onClick:function(t){void 0===t&&(t="outside"),this.$emit("click",t),this.offset&&(this.onClose?this.onClose(t,this):this.swipeMove(0))}},render:function(t){var e=this,n=function(t,n){return function(i){n&&i.stopPropagation(),e.onClick(t)}},i={transform:"translate3d("+this.offset+"px, 0, 0)",transition:this.dragging?"none":".6s cubic-bezier(0.18, 0.89, 0.32, 1)"};return t("div",{class:ga(),on:{click:n("cell"),touchstart:this.startDrag,touchmove:this.onDrag,touchend:this.endDrag,touchcancel:this.endDrag}},[t("div",{class:ga("wrapper"),style:i,on:{transitionend:function(){e.swiping=!1}}},[this.leftWidth?t("div",{class:ga("left"),on:{click:n("left",!0)}},[this.slots("left")]):null,this.slots(),this.rightWidth?t("div",{class:ga("right"),on:{click:n("right",!0)}},[this.slots("right")]):null])])}}),ba=Object(s.k)("tabbar"),ka=ba[0],xa=ba[1],Sa=ka({data:function(){return{items:[]}},props:{value:Number,activeColor:String,safeAreaInsetBottom:Boolean,fixed:{type:Boolean,default:!0},zIndex:{type:Number,default:1}},watch:{items:function(){this.setActiveItem()},value:function(){this.setActiveItem()}},methods:{setActiveItem:function(){var t=this;this.items.forEach(function(e,n){e.active=n===t.value})},onChange:function(t){t!==this.value&&(this.$emit("input",t),this.$emit("change",t))}},render:function(t){return t("div",{style:{zIndex:this.zIndex},class:["van-hairline--top-bottom",xa({fixed:this.fixed,"safe-area-inset-bottom":this.safeAreaInsetBottom})]},[this.slots()])}}),wa=Object(s.k)("tabbar-item"),Ca=wa[0],$a=wa[1],_a=Ca({props:i({},_t,{icon:String,dot:Boolean,info:[String,Number]}),data:function(){return{active:!1}},beforeCreate:function(){this.$parent.items.push(this)},destroyed:function(){this.$parent.items.splice(this.$parent.items.indexOf(this),1)},methods:{onClick:function(t){this.$parent.onChange(this.$parent.items.indexOf(this)),this.$emit("click",t),Ct(this.$router,this)}},render:function(t){var e=this.icon,n=this.slots,i=this.active,r=i?{color:this.$parent.activeColor}:null;return t("div",{class:$a({active:i}),style:r,on:{click:this.onClick}},[t("div",{class:$a("icon",{dot:this.dot})},[n("icon",{active:i})||e&&t(W,{attrs:{name:e}}),t(V,{attrs:{info:this.info}})]),t("div",{class:$a("text")},[n("default",{active:i})])])}}),Oa=Object(s.k)("tree-select"),Ta=Oa[0],Aa=Oa[1];function ja(t,e,n,i){var r=e.height,s=e.items,a=e.mainActiveIndex,c=e.activeId,u=(s[a]||{}).children||[];return t("div",o()([{class:Aa(),style:{height:r+"px"}},l(i)]),[t("div",{class:Aa("nav")},[s.map(function(e,n){return t("div",{key:n,class:["van-ellipsis",Aa("nitem",{active:a===n,disabled:e.disabled})],on:{click:function(){e.disabled||d(i,"navclick",n)}}},[e.text])})]),t("div",{class:Aa("content")},[u.map(function(e){return t("div",{key:e.id,class:["van-ellipsis",Aa("item",{active:c===e.id,disabled:e.disabled})],on:{click:function(){e.disabled||d(i,"itemclick",e)}}},[e.text,c===e.id&&t(W,{attrs:{name:"checked",size:"16px"},class:Aa("selected")})])})])])}ja.props={items:Array,mainActiveIndex:Number,activeId:{type:[Number,String],default:0},height:{type:Number,default:300}};var Ia=Ta(ja),Ba="@@Waterfall",Ea=300;function Na(){var t=this;if(!this.el[Ba].binded){this.el[Ba].binded=!0,this.scrollEventListener=function(){var t=this.el,e=this.scrollEventTarget;if(!this.disabled){var n=E(e),i=L(e),r=n+i;if(i){(t===e?e.scrollHeight-r0)&&this.cb.upper&&this.cb.upper({target:e,top:n})}}}.bind(this),this.scrollEventTarget=B(this.el);var e=this.el.getAttribute("waterfall-disabled"),n=!1;e&&(this.vm.$watch(e,function(e){t.disabled=e,t.scrollEventListener()}),n=Boolean(this.vm[e])),this.disabled=n;var i=this.el.getAttribute("waterfall-offset");this.offset=Number(i)||Ea,y(this.scrollEventTarget,"scroll",this.scrollEventListener,!0),this.scrollEventListener()}}function La(t){t[Ba].vm.$nextTick(function(){Na.call(t[Ba])})}var Da=function(t){return{bind:function(e,n,i){e[Ba]||(e[Ba]={el:e,vm:i.context,cb:{}}),e[Ba].cb[t]=n.value,function(t){var e=t[Ba];e.vm._isMounted?La(t):e.vm.$on("hook:mounted",function(){La(t)})}(e)},update:function(t){var e=t[Ba];e.scrollEventListener&&e.scrollEventListener()},unbind:function(t){var e=t[Ba];e.scrollEventTarget&&b(e.scrollEventTarget,"scroll",e.scrollEventListener)}}};Da.install=function(t){t.directive("WaterfallLower",Da("lower")),t.directive("WaterfallUpper",Da("upper"))};var Fa=Da;n.d(e,!1,function(){return ot}),n.d(e,!1,function(){return je}),n.d(e,!1,function(){return Xe}),n.d(e,!1,function(){return St}),n.d(e,!1,function(){return Ge}),n.d(e,!1,function(){return rn}),n.d(e,"a",function(){return te}),n.d(e,!1,function(){return yn}),n.d(e,!1,function(){return It}),n.d(e,!1,function(){return wn}),n.d(e,!1,function(){return $n}),n.d(e,!1,function(){return An}),n.d(e,!1,function(){return Dn}),n.d(e,!1,function(){return Pn}),n.d(e,!1,function(){return Wn}),n.d(e,!1,function(){return Xn}),n.d(e,!1,function(){return ei}),n.d(e,!1,function(){return ai}),n.d(e,!1,function(){return fi}),n.d(e,!1,function(){return ki}),n.d(e,!1,function(){return _i}),n.d(e,!1,function(){return Pi}),n.d(e,!1,function(){return Xi}),n.d(e,!1,function(){return ae}),n.d(e,!1,function(){return Dt}),n.d(e,!1,function(){return tr}),n.d(e,!1,function(){return or}),n.d(e,!1,function(){return lr}),n.d(e,"b",function(){return W}),n.d(e,!1,function(){return Or}),n.d(e,!1,function(){return V}),n.d(e,!1,function(){return Ar}),n.d(e,!1,function(){return Nr}),n.d(e,!1,function(){return Q}),n.d(e,!1,function(){return Lr.a}),n.d(e,!1,function(){return Pr}),n.d(e,!1,function(){return Wr}),n.d(e,!1,function(){return to}),n.d(e,!1,function(){return ho}),n.d(e,!1,function(){return O}),n.d(e,!1,function(){return yo}),n.d(e,!1,function(){return wo}),n.d(e,!1,function(){return To}),n.d(e,!1,function(){return yt}),n.d(e,!1,function(){return tt}),n.d(e,!1,function(){return Bo}),n.d(e,!1,function(){return Mo}),n.d(e,!1,function(){return Me}),n.d(e,!1,function(){return Ne}),n.d(e,!1,function(){return Ho}),n.d(e,!1,function(){return Uo}),n.d(e,!1,function(){return Go}),n.d(e,!1,function(){return Xs}),n.d(e,!1,function(){return Gs}),n.d(e,!1,function(){return ia}),n.d(e,!1,function(){return Ss}),n.d(e,!1,function(){return aa}),n.d(e,!1,function(){return pa}),n.d(e,"c",function(){return pr}),n.d(e,!1,function(){return ya}),n.d(e,"d",function(){return yr}),n.d(e,!1,function(){return be}),n.d(e,!1,function(){return Ce}),n.d(e,!1,function(){return ji}),n.d(e,!1,function(){return Sa}),n.d(e,!1,function(){return _a}),n.d(e,!1,function(){return Li}),n.d(e,!1,function(){return fn}),n.d(e,!1,function(){return Kt}),n.d(e,!1,function(){return Ia}),n.d(e,!1,function(){return Is}),n.d(e,!1,function(){return Fa});var Ma=[ot,je,Xe,St,Ge,rn,te,yn,It,wn,$n,An,Dn,Pn,Wn,Xn,ei,ai,fi,ki,_i,Pi,Xi,ae,Dt,tr,or,lr,W,Or,V,Nr,Q,Pr,Wr,to,ho,O,yo,wo,To,yt,tt,Bo,Mo,Me,Ne,Ho,Uo,Go,Xs,Gs,ia,Ss,aa,pa,pr,ya,yr,be,Ce,ji,Sa,_a,Li,fn,Kt,Ia,Is],za=function(t){Ma.forEach(function(e){t.use(e)})};"undefined"!=typeof window&&window.Vue&&za(window.Vue)},"9AUj":function(t,e){var n;n=function(){return this}();try{n=n||Function("return this")()||(0,eval)("this")}catch(t){"object"==typeof window&&(n=window)}t.exports=n},C7Lr:function(t,e){t.exports=function(t,e,n,i,r,o){var s,a=t=t||{},c=typeof t.default;"object"!==c&&"function"!==c||(s=t,a=t.default);var u,l="function"==typeof a?a.options:a;if(e&&(l.render=e.render,l.staticRenderFns=e.staticRenderFns,l._compiled=!0),n&&(l.functional=!0),r&&(l._scopeId=r),o?(u=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),i&&i.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(o)},l._ssrRegister=u):i&&(u=i),u){var d=l.functional,h=d?l.render:l.beforeCreate;d?(l._injectStyles=u,l.render=function(t,e){return u.call(e),h(t,e)}):l.beforeCreate=h?[].concat(h,u):[u]}return{esModule:s,exports:a,options:l}}},D0oh:function(t,e){!function(t,e){var n,i=t.document,r=i.documentElement,o=i.querySelector('meta[name="viewport"]'),s=i.querySelector('meta[name="flexible"]'),a=0,c=0,u=e.flexible||(e.flexible={});if(o){console.warn("将根据已有的meta标签来设置缩放比例");var l=o.getAttribute("content").match(/initial\-scale=([\d\.]+)/);l&&(c=parseFloat(l[1]),a=parseInt(1/c))}else if(s){var d=s.getAttribute("content");if(d){var h=d.match(/initial\-dpr=([\d\.]+)/),f=d.match(/maximum\-dpr=([\d\.]+)/);h&&(a=parseFloat(h[1]),c=parseFloat((1/a).toFixed(2))),f&&(a=parseFloat(f[1]),c=parseFloat((1/a).toFixed(2)))}}if(!a&&!c){t.navigator.appVersion.match(/android/gi);var p=t.navigator.appVersion.match(/iphone/gi),v=t.devicePixelRatio;c=1/(a=p?v>=3&&(!a||a>=3)?3:v>=2&&(!a||a>=2)?2:1:1)}if(r.setAttribute("data-dpr",a),!o)if((o=i.createElement("meta")).setAttribute("name","viewport"),o.setAttribute("content","initial-scale="+c+", maximum-scale="+c+", minimum-scale="+c+", user-scalable=no"),r.firstElementChild)r.firstElementChild.appendChild(o);else{var m=i.createElement("div");m.appendChild(o),i.write(m.innerHTML)}function g(){var e=r.getBoundingClientRect().width;e/a>540&&(e=540*a);var n=e/10;r.style.fontSize=n+"px",u.rem=t.rem=n}t.addEventListener("resize",function(){clearTimeout(n),n=setTimeout(g,300)},!1),t.addEventListener("pageshow",function(t){t.persisted&&(clearTimeout(n),n=setTimeout(g,300))},!1),"complete"===i.readyState?i.body.style.fontSize=12*a+"px":i.addEventListener("DOMContentLoaded",function(t){i.body.style.fontSize=12*a+"px"},!1),g(),u.dpr=t.dpr=a,u.refreshRem=g,u.rem2px=function(t){var e=parseFloat(t)*this.rem;return"string"==typeof t&&t.match(/rem$/)&&(e+="px"),e},u.px2rem=function(t){var e=parseFloat(t)/this.rem;return"string"==typeof t&&t.match(/px$/)&&(e+="rem"),e}}(window,window.lib||(window.lib={}))},TExJ:function(t,e,n){"use strict";e.a=o;var i=n("tm21"),r=Object.prototype.hasOwnProperty;function o(t,e){return Object.keys(e).forEach(function(n){!function(t,e,n){var s=e[n];Object(i.d)(s)&&(r.call(t,n)&&Object(i.g)(s)?t[n]=o(Object(t[n]),e[n]):t[n]=s)}(t,e,n)}),t}},VsCf:function(t,e,n){"use strict";(function(t){e.b=function(t){return s.call(o,t)},e.a=function(t){a.call(o,t)};var i=n("tm21"),r=Date.now();var o=i.h?t:window,s=o.requestAnimationFrame||function(t){var e=Date.now(),n=Math.max(0,16-(e-r)),i=setTimeout(t,n);return r=e+n,i},a=o.cancelAnimationFrame||o.clearTimeout}).call(e,n("9AUj"))},j6cy:function(t,e,n){"use strict";function i(){return(i=Object.assign||function(t){for(var e,n=1;n=0&&Math.floor(e)===e&&isFinite(t)}function h(t){return r(t)&&"function"==typeof t.then&&"function"==typeof t.catch}function f(t){return null==t?"":Array.isArray(t)||u(t)&&t.toString===c?JSON.stringify(t,null,2):String(t)}function p(t){var e=parseFloat(t);return isNaN(e)?t:e}function v(t,e){for(var n=Object.create(null),i=t.split(","),r=0;r-1)return t.splice(n,1)}}var b=Object.prototype.hasOwnProperty;function k(t,e){return b.call(t,e)}function x(t){var e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}var S=/-(\w)/g,w=x(function(t){return t.replace(S,function(t,e){return e?e.toUpperCase():""})}),C=x(function(t){return t.charAt(0).toUpperCase()+t.slice(1)}),$=/\B([A-Z])/g,_=x(function(t){return t.replace($,"-$1").toLowerCase()});var O=Function.prototype.bind?function(t,e){return t.bind(e)}:function(t,e){function n(n){var i=arguments.length;return i?i>1?t.apply(e,arguments):t.call(e,n):t.call(e)}return n._length=t.length,n};function T(t,e){e=e||0;for(var n=t.length-e,i=new Array(n);n--;)i[n]=t[n+e];return i}function A(t,e){for(var n in e)t[n]=e[n];return t}function j(t){for(var e={},n=0;n0,G=Q&&Q.indexOf("edge/")>0,tt=(Q&&Q.indexOf("android"),Q&&/iphone|ipad|ipod|ios/.test(Q)||"ios"===X),et=(Q&&/chrome\/\d+/.test(Q),Q&&/phantomjs/.test(Q),Q&&Q.match(/firefox\/(\d+)/)),nt={}.watch,it=!1;if(U)try{var rt={};Object.defineProperty(rt,"passive",{get:function(){it=!0}}),window.addEventListener("test-passive",null,rt)}catch(t){}var ot=function(){return void 0===q&&(q=!U&&!K&&void 0!==t&&(t.process&&"server"===t.process.env.VUE_ENV)),q},st=U&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function at(t){return"function"==typeof t&&/native code/.test(t.toString())}var ct,ut="undefined"!=typeof Symbol&&at(Symbol)&&"undefined"!=typeof Reflect&&at(Reflect.ownKeys);ct="undefined"!=typeof Set&&at(Set)?Set:function(){function t(){this.set=Object.create(null)}return t.prototype.has=function(t){return!0===this.set[t]},t.prototype.add=function(t){this.set[t]=!0},t.prototype.clear=function(){this.set=Object.create(null)},t}();var lt=I,dt=0,ht=function(){this.id=dt++,this.subs=[]};ht.prototype.addSub=function(t){this.subs.push(t)},ht.prototype.removeSub=function(t){y(this.subs,t)},ht.prototype.depend=function(){ht.target&&ht.target.addDep(this)},ht.prototype.notify=function(){var t=this.subs.slice();for(var e=0,n=t.length;e-1)if(o&&!k(r,"default"))s=!1;else if(""===s||s===_(t)){var c=Rt(String,r.type);(c<0||a0&&(de((u=t(u,(n||"")+"_"+c))[0])&&de(d)&&(a[l]=bt(d.text+u[0].text),u.shift()),a.push.apply(a,u)):s(u)?de(d)?a[l]=bt(d.text+u):""!==u&&a.push(bt(u)):de(u)&&de(d)?a[l]=bt(d.text+u.text):(o(e._isVList)&&r(u.tag)&&i(u.key)&&r(n)&&(u.key="__vlist"+n+"_"+c+"__"),a.push(u)));return a}(t):void 0}function de(t){return r(t)&&r(t.text)&&!1===t.isComment}function he(t,e){if(t){for(var n=Object.create(null),i=ut?Reflect.ownKeys(t):Object.keys(t),r=0;r0,s=t?!!t.$stable:!o,a=t&&t.$key;if(t){if(t._normalized)return t._normalized;if(s&&i&&i!==n&&a===i.$key&&!o&&!i.$hasNormal)return i;for(var c in r={},t)t[c]&&"$"!==c[0]&&(r[c]=me(e,c,t[c]))}else r={};for(var u in e)u in r||(r[u]=ge(e,u));return t&&Object.isExtensible(t)&&(t._normalized=r),H(r,"$stable",s),H(r,"$key",a),H(r,"$hasNormal",o),r}function me(t,e,n){var i=function(){var t=arguments.length?n.apply(null,arguments):n({});return(t=t&&"object"==typeof t&&!Array.isArray(t)?[t]:le(t))&&(0===t.length||1===t.length&&t[0].isComment)?void 0:t};return n.proxy&&Object.defineProperty(t,e,{get:i,enumerable:!0,configurable:!0}),i}function ge(t,e){return function(){return t[e]}}function ye(t,e){var n,i,o,s,c;if(Array.isArray(t)||"string"==typeof t)for(n=new Array(t.length),i=0,o=t.length;idocument.createEvent("Event").timeStamp&&(dn=function(){return hn.now()})}function fn(){var t,e;for(ln=dn(),cn=!0,rn.sort(function(t,e){return t.id-e.id}),un=0;unun&&rn[n].id>t.id;)n--;rn.splice(n+1,0,t)}else rn.push(t);an||(an=!0,ne(fn))}}(this)},vn.prototype.run=function(){if(this.active){var t=this.get();if(t!==this.value||a(t)||this.deep){var e=this.value;if(this.value=t,this.user)try{this.cb.call(this.vm,t,e)}catch(t){Ht(t,this.vm,'callback for watcher "'+this.expression+'"')}else this.cb.call(this.vm,t,e)}}},vn.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},vn.prototype.depend=function(){for(var t=this.deps.length;t--;)this.deps[t].depend()},vn.prototype.teardown=function(){if(this.active){this.vm._isBeingDestroyed||y(this.vm._watchers,this);for(var t=this.deps.length;t--;)this.deps[t].removeSub(this);this.active=!1}};var mn={enumerable:!0,configurable:!0,get:I,set:I};function gn(t,e,n){mn.get=function(){return this[e][n]},mn.set=function(t){this[e][n]=t},Object.defineProperty(t,n,mn)}function yn(t){t._watchers=[];var e=t.$options;e.props&&function(t,e){var n=t.$options.propsData||{},i=t._props={},r=t.$options._propKeys=[],o=!t.$parent;o||$t(!1);var s=function(o){r.push(o);var s=zt(o,e,n,t);Tt(i,o,s),o in t||gn(t,"_props",o)};for(var a in e)s(a);$t(!0)}(t,e.props),e.methods&&function(t,e){t.$options.props;for(var n in e)t[n]="function"!=typeof e[n]?I:O(e[n],t)}(t,e.methods),e.data?function(t){var e=t.$options.data;u(e=t._data="function"==typeof e?function(t,e){pt();try{return t.call(e,e)}catch(t){return Ht(t,e,"data()"),{}}finally{vt()}}(e,t):e||{})||(e={});var n=Object.keys(e),i=t.$options.props,r=(t.$options.methods,n.length);for(;r--;){var o=n[r];0,i&&k(i,o)||R(o)||gn(t,"_data",o)}Ot(e,!0)}(t):Ot(t._data={},!0),e.computed&&function(t,e){var n=t._computedWatchers=Object.create(null),i=ot();for(var r in e){var o=e[r],s="function"==typeof o?o:o.get;0,i||(n[r]=new vn(t,s||I,I,bn)),r in t||kn(t,r,o)}}(t,e.computed),e.watch&&e.watch!==nt&&function(t,e){for(var n in e){var i=e[n];if(Array.isArray(i))for(var r=0;r-1:"string"==typeof t?t.split(",").indexOf(e)>-1:!!l(t)&&t.test(e)}function jn(t,e){var n=t.cache,i=t.keys,r=t._vnode;for(var o in n){var s=n[o];if(s){var a=Tn(s.componentOptions);a&&!e(a)&&In(n,o,i,r)}}}function In(t,e,n,i){var r=t[e];!r||i&&r.tag===i.tag||r.componentInstance.$destroy(),t[e]=null,y(n,e)}!function(t){t.prototype._init=function(t){var e=this;e._uid=Cn++,e._isVue=!0,t&&t._isComponent?function(t,e){var n=t.$options=Object.create(t.constructor.options),i=e._parentVnode;n.parent=e.parent,n._parentVnode=i;var r=i.componentOptions;n.propsData=r.propsData,n._parentListeners=r.listeners,n._renderChildren=r.children,n._componentTag=r.tag,e.render&&(n.render=e.render,n.staticRenderFns=e.staticRenderFns)}(e,t):e.$options=Ft($n(e.constructor),t||{},e),e._renderProxy=e,e._self=e,function(t){var e=t.$options,n=e.parent;if(n&&!e.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(t)}t.$parent=n,t.$root=n?n.$root:t,t.$children=[],t.$refs={},t._watcher=null,t._inactive=null,t._directInactive=!1,t._isMounted=!1,t._isDestroyed=!1,t._isBeingDestroyed=!1}(e),function(t){t._events=Object.create(null),t._hasHookEvent=!1;var e=t.$options._parentListeners;e&&Je(t,e)}(e),function(t){t._vnode=null,t._staticTrees=null;var e=t.$options,i=t.$vnode=e._parentVnode,r=i&&i.context;t.$slots=fe(e._renderChildren,r),t.$scopedSlots=n,t._c=function(e,n,i,r){return Re(t,e,n,i,r,!1)},t.$createElement=function(e,n,i,r){return Re(t,e,n,i,r,!0)};var o=i&&i.data;Tt(t,"$attrs",o&&o.attrs||n,null,!0),Tt(t,"$listeners",e._parentListeners||n,null,!0)}(e),nn(e,"beforeCreate"),function(t){var e=he(t.$options.inject,t);e&&($t(!1),Object.keys(e).forEach(function(n){Tt(t,n,e[n])}),$t(!0))}(e),yn(e),function(t){var e=t.$options.provide;e&&(t._provided="function"==typeof e?e.call(t):e)}(e),nn(e,"created"),e.$options.el&&e.$mount(e.$options.el)}}(_n),function(t){var e={get:function(){return this._data}},n={get:function(){return this._props}};Object.defineProperty(t.prototype,"$data",e),Object.defineProperty(t.prototype,"$props",n),t.prototype.$set=At,t.prototype.$delete=jt,t.prototype.$watch=function(t,e,n){if(u(e))return wn(this,t,e,n);(n=n||{}).user=!0;var i=new vn(this,t,e,n);if(n.immediate)try{e.call(this,i.value)}catch(t){Ht(t,this,'callback for immediate watcher "'+i.expression+'"')}return function(){i.teardown()}}}(_n),function(t){var e=/^hook:/;t.prototype.$on=function(t,n){var i=this;if(Array.isArray(t))for(var r=0,o=t.length;r1?T(n):n;for(var i=T(arguments,1),r='event handler for "'+t+'"',o=0,s=n.length;oparseInt(this.max)&&In(s,a[0],a,this._vnode)),e.data.keepAlive=!0}return e||t&&t[0]}}};!function(t){var e={get:function(){return P}};Object.defineProperty(t,"config",e),t.util={warn:lt,extend:A,mergeOptions:Ft,defineReactive:Tt},t.set=At,t.delete=jt,t.nextTick=ne,t.observable=function(t){return Ot(t),t},t.options=Object.create(null),M.forEach(function(e){t.options[e+"s"]=Object.create(null)}),t.options._base=t,A(t.options.components,En),function(t){t.use=function(t){var e=this._installedPlugins||(this._installedPlugins=[]);if(e.indexOf(t)>-1)return this;var n=T(arguments,1);return n.unshift(this),"function"==typeof t.install?t.install.apply(t,n):"function"==typeof t&&t.apply(null,n),e.push(t),this}}(t),function(t){t.mixin=function(t){return this.options=Ft(this.options,t),this}}(t),On(t),function(t){M.forEach(function(e){t[e]=function(t,n){return n?("component"===e&&u(n)&&(n.name=n.name||t,n=this.options._base.extend(n)),"directive"===e&&"function"==typeof n&&(n={bind:n,update:n}),this.options[e+"s"][t]=n,n):this.options[e+"s"][t]}})}(t)}(_n),Object.defineProperty(_n.prototype,"$isServer",{get:ot}),Object.defineProperty(_n.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(_n,"FunctionalRenderContext",{value:Ee}),_n.version="2.6.11";var Nn=v("style,class"),Ln=v("input,textarea,option,select,progress"),Dn=function(t,e,n){return"value"===n&&Ln(t)&&"button"!==e||"selected"===n&&"option"===t||"checked"===n&&"input"===t||"muted"===n&&"video"===t},Fn=v("contenteditable,draggable,spellcheck"),Mn=v("events,caret,typing,plaintext-only"),zn=function(t,e){return Wn(e)||"false"===e?"false":"contenteditable"===t&&Mn(e)?e:"true"},Pn=v("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,translate,truespeed,typemustmatch,visible"),Vn="http://www.w3.org/1999/xlink",Rn=function(t){return":"===t.charAt(5)&&"xlink"===t.slice(0,5)},Hn=function(t){return Rn(t)?t.slice(6,t.length):""},Wn=function(t){return null==t||!1===t};function qn(t){for(var e=t.data,n=t,i=t;r(i.componentInstance);)(i=i.componentInstance._vnode)&&i.data&&(e=Yn(i.data,e));for(;r(n=n.parent);)n&&n.data&&(e=Yn(e,n.data));return function(t,e){if(r(t)||r(e))return Un(t,Kn(e));return""}(e.staticClass,e.class)}function Yn(t,e){return{staticClass:Un(t.staticClass,e.staticClass),class:r(t.class)?[t.class,e.class]:e.class}}function Un(t,e){return t?e?t+" "+e:t:e||""}function Kn(t){return Array.isArray(t)?function(t){for(var e,n="",i=0,o=t.length;i-1?bi(t,e,n):Pn(e)?Wn(n)?t.removeAttribute(e):(n="allowfullscreen"===e&&"EMBED"===t.tagName?"true":e,t.setAttribute(e,n)):Fn(e)?t.setAttribute(e,zn(e,n)):Rn(e)?Wn(n)?t.removeAttributeNS(Vn,Hn(e)):t.setAttributeNS(Vn,e,n):bi(t,e,n)}function bi(t,e,n){if(Wn(n))t.removeAttribute(e);else{if(J&&!Z&&"TEXTAREA"===t.tagName&&"placeholder"===e&&""!==n&&!t.__ieph){var i=function(e){e.stopImmediatePropagation(),t.removeEventListener("input",i)};t.addEventListener("input",i),t.__ieph=!0}t.setAttribute(e,n)}}var ki={create:gi,update:gi};function xi(t,e){var n=e.elm,o=e.data,s=t.data;if(!(i(o.staticClass)&&i(o.class)&&(i(s)||i(s.staticClass)&&i(s.class)))){var a=qn(e),c=n._transitionClasses;r(c)&&(a=Un(a,Kn(c))),a!==n._prevClass&&(n.setAttribute("class",a),n._prevClass=a)}}var Si,wi,Ci,$i,_i,Oi,Ti={create:xi,update:xi},Ai=/[\w).+\-_$\]]/;function ji(t){var e,n,i,r,o,s=!1,a=!1,c=!1,u=!1,l=0,d=0,h=0,f=0;for(i=0;i=0&&" "===(v=t.charAt(p));p--);v&&Ai.test(v)||(u=!0)}}else void 0===r?(f=i+1,r=t.slice(0,i).trim()):m();function m(){(o||(o=[])).push(t.slice(f,i).trim()),f=i+1}if(void 0===r?r=t.slice(0,i).trim():0!==f&&m(),o)for(i=0;i-1?{exp:t.slice(0,$i),key:'"'+t.slice($i+1)+'"'}:{exp:t,key:null};wi=t,$i=_i=Oi=0;for(;!Ki();)Xi(Ci=Ui())?Ji(Ci):91===Ci&&Qi(Ci);return{exp:t.slice(0,_i),key:t.slice(_i+1,Oi)}}(t);return null===n.key?t+"="+e:"$set("+n.exp+", "+n.key+", "+e+")"}function Ui(){return wi.charCodeAt(++$i)}function Ki(){return $i>=Si}function Xi(t){return 34===t||39===t}function Qi(t){var e=1;for(_i=$i;!Ki();)if(Xi(t=Ui()))Ji(t);else if(91===t&&e++,93===t&&e--,0===e){Oi=$i;break}}function Ji(t){for(var e=t;!Ki()&&(t=Ui())!==e;);}var Zi,Gi="__r",tr="__c";function er(t,e,n){var i=Zi;return function r(){null!==e.apply(null,arguments)&&rr(t,r,n,i)}}var nr=Kt&&!(et&&Number(et[1])<=53);function ir(t,e,n,i){if(nr){var r=ln,o=e;e=o._wrapper=function(t){if(t.target===t.currentTarget||t.timeStamp>=r||t.timeStamp<=0||t.target.ownerDocument!==document)return o.apply(this,arguments)}}Zi.addEventListener(t,e,it?{capture:n,passive:i}:n)}function rr(t,e,n,i){(i||Zi).removeEventListener(t,e._wrapper||e,n)}function or(t,e){if(!i(t.data.on)||!i(e.data.on)){var n=e.data.on||{},o=t.data.on||{};Zi=e.elm,function(t){if(r(t[Gi])){var e=J?"change":"input";t[e]=[].concat(t[Gi],t[e]||[]),delete t[Gi]}r(t[tr])&&(t.change=[].concat(t[tr],t.change||[]),delete t[tr])}(n),ae(n,o,ir,rr,er,e.context),Zi=void 0}}var sr,ar={create:or,update:or};function cr(t,e){if(!i(t.data.domProps)||!i(e.data.domProps)){var n,o,s=e.elm,a=t.data.domProps||{},c=e.data.domProps||{};for(n in r(c.__ob__)&&(c=e.data.domProps=A({},c)),a)n in c||(s[n]="");for(n in c){if(o=c[n],"textContent"===n||"innerHTML"===n){if(e.children&&(e.children.length=0),o===a[n])continue;1===s.childNodes.length&&s.removeChild(s.childNodes[0])}if("value"===n&&"PROGRESS"!==s.tagName){s._value=o;var u=i(o)?"":String(o);ur(s,u)&&(s.value=u)}else if("innerHTML"===n&&Jn(s.tagName)&&i(s.innerHTML)){(sr=sr||document.createElement("div")).innerHTML=""+o+"";for(var l=sr.firstChild;s.firstChild;)s.removeChild(s.firstChild);for(;l.firstChild;)s.appendChild(l.firstChild)}else if(o!==a[n])try{s[n]=o}catch(t){}}}}function ur(t,e){return!t.composing&&("OPTION"===t.tagName||function(t,e){var n=!0;try{n=document.activeElement!==t}catch(t){}return n&&t.value!==e}(t,e)||function(t,e){var n=t.value,i=t._vModifiers;if(r(i)){if(i.number)return p(n)!==p(e);if(i.trim)return n.trim()!==e.trim()}return n!==e}(t,e))}var lr={create:cr,update:cr},dr=x(function(t){var e={},n=/:(.+)/;return t.split(/;(?![^(]*\))/g).forEach(function(t){if(t){var i=t.split(n);i.length>1&&(e[i[0].trim()]=i[1].trim())}}),e});function hr(t){var e=fr(t.style);return t.staticStyle?A(t.staticStyle,e):e}function fr(t){return Array.isArray(t)?j(t):"string"==typeof t?dr(t):t}var pr,vr=/^--/,mr=/\s*!important$/,gr=function(t,e,n){if(vr.test(e))t.style.setProperty(e,n);else if(mr.test(n))t.style.setProperty(_(e),n.replace(mr,""),"important");else{var i=br(e);if(Array.isArray(n))for(var r=0,o=n.length;r-1?e.split(Sr).forEach(function(e){return t.classList.add(e)}):t.classList.add(e);else{var n=" "+(t.getAttribute("class")||"")+" ";n.indexOf(" "+e+" ")<0&&t.setAttribute("class",(n+e).trim())}}function Cr(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(Sr).forEach(function(e){return t.classList.remove(e)}):t.classList.remove(e),t.classList.length||t.removeAttribute("class");else{for(var n=" "+(t.getAttribute("class")||"")+" ",i=" "+e+" ";n.indexOf(i)>=0;)n=n.replace(i," ");(n=n.trim())?t.setAttribute("class",n):t.removeAttribute("class")}}function $r(t){if(t){if("object"==typeof t){var e={};return!1!==t.css&&A(e,_r(t.name||"v")),A(e,t),e}return"string"==typeof t?_r(t):void 0}}var _r=x(function(t){return{enterClass:t+"-enter",enterToClass:t+"-enter-to",enterActiveClass:t+"-enter-active",leaveClass:t+"-leave",leaveToClass:t+"-leave-to",leaveActiveClass:t+"-leave-active"}}),Or=U&&!Z,Tr="transition",Ar="animation",jr="transition",Ir="transitionend",Br="animation",Er="animationend";Or&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(jr="WebkitTransition",Ir="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(Br="WebkitAnimation",Er="webkitAnimationEnd"));var Nr=U?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(t){return t()};function Lr(t){Nr(function(){Nr(t)})}function Dr(t,e){var n=t._transitionClasses||(t._transitionClasses=[]);n.indexOf(e)<0&&(n.push(e),wr(t,e))}function Fr(t,e){t._transitionClasses&&y(t._transitionClasses,e),Cr(t,e)}function Mr(t,e,n){var i=Pr(t,e),r=i.type,o=i.timeout,s=i.propCount;if(!r)return n();var a=r===Tr?Ir:Er,c=0,u=function(){t.removeEventListener(a,l),n()},l=function(e){e.target===t&&++c>=s&&u()};setTimeout(function(){c0&&(n=Tr,l=s,d=o.length):e===Ar?u>0&&(n=Ar,l=u,d=c.length):d=(n=(l=Math.max(s,u))>0?s>u?Tr:Ar:null)?n===Tr?o.length:c.length:0,{type:n,timeout:l,propCount:d,hasTransform:n===Tr&&zr.test(i[jr+"Property"])}}function Vr(t,e){for(;t.length1}function Ur(t,e){!0!==e.data.show&&Hr(e)}var Kr=function(t){var e,n,a={},c=t.modules,u=t.nodeOps;for(e=0;ep?b(t,i(n[g+1])?null:n[g+1].elm,n,f,g,o):f>g&&x(e,h,p)}(h,v,g,n,l):r(g)?(r(t.text)&&u.setTextContent(h,""),b(h,null,g,0,g.length-1,n)):r(v)?x(v,0,v.length-1):r(t.text)&&u.setTextContent(h,""):t.text!==e.text&&u.setTextContent(h,e.text),r(p)&&r(f=p.hook)&&r(f=f.postpatch)&&f(t,e)}}}function $(t,e,n){if(o(n)&&r(t.parent))t.parent.data.pendingInsert=e;else for(var i=0;i-1,s.selected!==o&&(s.selected=o);else if(N(Gr(s),i))return void(t.selectedIndex!==a&&(t.selectedIndex=a));r||(t.selectedIndex=-1)}}function Zr(t,e){return e.every(function(e){return!N(e,t)})}function Gr(t){return"_value"in t?t._value:t.value}function to(t){t.target.composing=!0}function eo(t){t.target.composing&&(t.target.composing=!1,no(t.target,"input"))}function no(t,e){var n=document.createEvent("HTMLEvents");n.initEvent(e,!0,!0),t.dispatchEvent(n)}function io(t){return!t.componentInstance||t.data&&t.data.transition?t:io(t.componentInstance._vnode)}var ro={model:Xr,show:{bind:function(t,e,n){var i=e.value,r=(n=io(n)).data&&n.data.transition,o=t.__vOriginalDisplay="none"===t.style.display?"":t.style.display;i&&r?(n.data.show=!0,Hr(n,function(){t.style.display=o})):t.style.display=i?o:"none"},update:function(t,e,n){var i=e.value;!i!=!e.oldValue&&((n=io(n)).data&&n.data.transition?(n.data.show=!0,i?Hr(n,function(){t.style.display=t.__vOriginalDisplay}):Wr(n,function(){t.style.display="none"})):t.style.display=i?t.__vOriginalDisplay:"none")},unbind:function(t,e,n,i,r){r||(t.style.display=t.__vOriginalDisplay)}}},oo={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function so(t){var e=t&&t.componentOptions;return e&&e.Ctor.options.abstract?so(Ue(e.children)):t}function ao(t){var e={},n=t.$options;for(var i in n.propsData)e[i]=t[i];var r=n._parentListeners;for(var o in r)e[w(o)]=r[o];return e}function co(t,e){if(/\d-keep-alive$/.test(e.tag))return t("keep-alive",{props:e.componentOptions.propsData})}var uo=function(t){return t.tag||Ye(t)},lo=function(t){return"show"===t.name},ho={name:"transition",props:oo,abstract:!0,render:function(t){var e=this,n=this.$slots.default;if(n&&(n=n.filter(uo)).length){0;var i=this.mode;0;var r=n[0];if(function(t){for(;t=t.parent;)if(t.data.transition)return!0}(this.$vnode))return r;var o=so(r);if(!o)return r;if(this._leaving)return co(t,r);var a="__transition-"+this._uid+"-";o.key=null==o.key?o.isComment?a+"comment":a+o.tag:s(o.key)?0===String(o.key).indexOf(a)?o.key:a+o.key:o.key;var c=(o.data||(o.data={})).transition=ao(this),u=this._vnode,l=so(u);if(o.data.directives&&o.data.directives.some(lo)&&(o.data.show=!0),l&&l.data&&!function(t,e){return e.key===t.key&&e.tag===t.tag}(o,l)&&!Ye(l)&&(!l.componentInstance||!l.componentInstance._vnode.isComment)){var d=l.data.transition=A({},c);if("out-in"===i)return this._leaving=!0,ce(d,"afterLeave",function(){e._leaving=!1,e.$forceUpdate()}),co(t,r);if("in-out"===i){if(Ye(o))return u;var h,f=function(){h()};ce(c,"afterEnter",f),ce(c,"enterCancelled",f),ce(d,"delayLeave",function(t){h=t})}}return r}}},fo=A({tag:String,moveClass:String},oo);function po(t){t.elm._moveCb&&t.elm._moveCb(),t.elm._enterCb&&t.elm._enterCb()}function vo(t){t.data.newPos=t.elm.getBoundingClientRect()}function mo(t){var e=t.data.pos,n=t.data.newPos,i=e.left-n.left,r=e.top-n.top;if(i||r){t.data.moved=!0;var o=t.elm.style;o.transform=o.WebkitTransform="translate("+i+"px,"+r+"px)",o.transitionDuration="0s"}}delete fo.mode;var go={Transition:ho,TransitionGroup:{props:fo,beforeMount:function(){var t=this,e=this._update;this._update=function(n,i){var r=Ge(t);t.__patch__(t._vnode,t.kept,!1,!0),t._vnode=t.kept,r(),e.call(t,n,i)}},render:function(t){for(var e=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),i=this.prevChildren=this.children,r=this.$slots.default||[],o=this.children=[],s=ao(this),a=0;a-1?ti[t]=e.constructor===window.HTMLUnknownElement||e.constructor===window.HTMLElement:ti[t]=/HTMLUnknownElement/.test(e.toString())},A(_n.options.directives,ro),A(_n.options.components,go),_n.prototype.__patch__=U?Kr:I,_n.prototype.$mount=function(t,e){return function(t,e,n){return t.$el=e,t.$options.render||(t.$options.render=yt),nn(t,"beforeMount"),new vn(t,function(){t._update(t._render(),n)},I,{before:function(){t._isMounted&&!t._isDestroyed&&nn(t,"beforeUpdate")}},!0),n=!1,null==t.$vnode&&(t._isMounted=!0,nn(t,"mounted")),t}(this,t=t&&U?ni(t):void 0,e)},U&&setTimeout(function(){P.devtools&&st&&st.emit("init",_n)},0);var yo=/\{\{((?:.|\r?\n)+?)\}\}/g,bo=/[-.*+?^${}()|[\]\/\\]/g,ko=x(function(t){var e=t[0].replace(bo,"\\$&"),n=t[1].replace(bo,"\\$&");return new RegExp(e+"((?:.|\\n)+?)"+n,"g")});function xo(t,e){var n=e?ko(e):yo;if(n.test(t)){for(var i,r,o,s=[],a=[],c=n.lastIndex=0;i=n.exec(t);){(r=i.index)>c&&(a.push(o=t.slice(c,r)),s.push(JSON.stringify(o)));var u=ji(i[1].trim());s.push("_s("+u+")"),a.push({"@binding":u}),c=r+i[0].length}return c\/=]+)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,jo=/^\s*((?:v-[\w-]+:|@|:|#)\[[^=]+\][^\s"'<>\/=]*)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,Io="[a-zA-Z_][\\-\\.0-9_a-zA-Z"+V.source+"]*",Bo="((?:"+Io+"\\:)?"+Io+")",Eo=new RegExp("^<"+Bo),No=/^\s*(\/?)>/,Lo=new RegExp("^<\\/"+Bo+"[^>]*>"),Do=/^]+>/i,Fo=/^",""":'"',"&":"&"," ":"\n"," ":"\t","'":"'"},Ro=/&(?:lt|gt|quot|amp|#39);/g,Ho=/&(?:lt|gt|quot|amp|#39|#10|#9);/g,Wo=v("pre,textarea",!0),qo=function(t,e){return t&&Wo(t)&&"\n"===e[0]};function Yo(t,e){var n=e?Ho:Ro;return t.replace(n,function(t){return Vo[t]})}var Uo,Ko,Xo,Qo,Jo,Zo,Go,ts,es=/^@|^v-on:/,ns=/^v-|^@|^:|^#/,is=/([\s\S]*?)\s+(?:in|of)\s+([\s\S]*)/,rs=/,([^,\}\]]*)(?:,([^,\}\]]*))?$/,os=/^\(|\)$/g,ss=/^\[.*\]$/,as=/:(.*)$/,cs=/^:|^\.|^v-bind:/,us=/\.[^.\]]+(?=[^\]]*$)/g,ls=/^v-slot(:|$)|^#/,ds=/[\r\n]/,hs=/\s+/g,fs=x($o),ps="_empty_";function vs(t,e,n){return{type:1,tag:t,attrsList:e,attrsMap:function(t){for(var e={},n=0,i=t.length;n]*>)","i")),h=t.replace(d,function(t,n,i){return u=i.length,zo(l)||"noscript"===l||(n=n.replace(//g,"$1").replace(//g,"$1")),qo(l,n)&&(n=n.slice(1)),e.chars&&e.chars(n),""});c+=t.length-h.length,t=h,_(l,c-u,c)}else{var f=t.indexOf("<");if(0===f){if(Fo.test(t)){var p=t.indexOf("--\x3e");if(p>=0){e.shouldKeepComment&&e.comment(t.substring(4,p),c,c+p+3),w(p+3);continue}}if(Mo.test(t)){var v=t.indexOf("]>");if(v>=0){w(v+2);continue}}var m=t.match(Do);if(m){w(m[0].length);continue}var g=t.match(Lo);if(g){var y=c;w(g[0].length),_(g[1],y,c);continue}var b=C();if(b){$(b),qo(b.tagName,t)&&w(1);continue}}var k=void 0,x=void 0,S=void 0;if(f>=0){for(x=t.slice(f);!(Lo.test(x)||Eo.test(x)||Fo.test(x)||Mo.test(x)||(S=x.indexOf("<",1))<0);)f+=S,x=t.slice(f);k=t.substring(0,f)}f<0&&(k=t),k&&w(k.length),e.chars&&k&&e.chars(k,c-k.length,c)}if(t===n){e.chars&&e.chars(t);break}}function w(e){c+=e,t=t.substring(e)}function C(){var e=t.match(Eo);if(e){var n,i,r={tagName:e[1],attrs:[],start:c};for(w(e[0].length);!(n=t.match(No))&&(i=t.match(jo)||t.match(Ao));)i.start=c,w(i[0].length),i.end=c,r.attrs.push(i);if(n)return r.unarySlash=n[1],w(n[0].length),r.end=c,r}}function $(t){var n=t.tagName,c=t.unarySlash;o&&("p"===i&&To(n)&&_(i),a(n)&&i===n&&_(n));for(var u=s(n)||!!c,l=t.attrs.length,d=new Array(l),h=0;h=0&&r[s].lowerCasedTag!==a;s--);else s=0;if(s>=0){for(var u=r.length-1;u>=s;u--)e.end&&e.end(r[u].tag,n,o);r.length=s,i=s&&r[s-1].tag}else"br"===a?e.start&&e.start(t,[],!0,n,o):"p"===a&&(e.start&&e.start(t,[],!1,n,o),e.end&&e.end(t,n,o))}_()}(t,{warn:Uo,expectHTML:e.expectHTML,isUnaryTag:e.isUnaryTag,canBeLeftOpenTag:e.canBeLeftOpenTag,shouldDecodeNewlines:e.shouldDecodeNewlines,shouldDecodeNewlinesForHref:e.shouldDecodeNewlinesForHref,shouldKeepComment:e.comments,outputSourceRange:e.outputSourceRange,start:function(t,n,s,a,d){var h=r&&r.ns||ts(t);J&&"svg"===h&&(n=function(t){for(var e=[],n=0;n-1"+("true"===o?":("+e+")":":_q("+e+","+o+")")),zi(t,"change","var $$a="+e+",$$el=$event.target,$$c=$$el.checked?("+o+"):("+s+");if(Array.isArray($$a)){var $$v="+(i?"_n("+r+")":r)+",$$i=_i($$a,$$v);if($$el.checked){$$i<0&&("+Yi(e,"$$a.concat([$$v])")+")}else{$$i>-1&&("+Yi(e,"$$a.slice(0,$$i).concat($$a.slice($$i+1))")+")}}else{"+Yi(e,"$$c")+"}",null,!0)}(t,i,r);else if("input"===o&&"radio"===s)!function(t,e,n){var i=n&&n.number,r=Vi(t,"value")||"null";Ni(t,"checked","_q("+e+","+(r=i?"_n("+r+")":r)+")"),zi(t,"change",Yi(e,r),null,!0)}(t,i,r);else if("input"===o||"textarea"===o)!function(t,e,n){var i=t.attrsMap.type,r=n||{},o=r.lazy,s=r.number,a=r.trim,c=!o&&"range"!==i,u=o?"change":"range"===i?Gi:"input",l="$event.target.value";a&&(l="$event.target.value.trim()"),s&&(l="_n("+l+")");var d=Yi(e,l);c&&(d="if($event.target.composing)return;"+d),Ni(t,"value","("+e+")"),zi(t,u,d,null,!0),(a||s)&&zi(t,"blur","$forceUpdate()")}(t,i,r);else if(!P.isReservedTag(o))return qi(t,i,r),!1;return!0},text:function(t,e){e.value&&Ni(t,"textContent","_s("+e.value+")",e)},html:function(t,e){e.value&&Ni(t,"innerHTML","_s("+e.value+")",e)}},isPreTag:function(t){return"pre"===t},isUnaryTag:_o,mustUseProp:Dn,canBeLeftOpenTag:Oo,isReservedTag:Zn,getTagNamespace:Gn,staticKeys:function(t){return t.reduce(function(t,e){return t.concat(e.staticKeys||[])},[]).join(",")}($s)},As=x(function(t){return v("type,tag,attrsList,attrsMap,plain,parent,children,attrs,start,end,rawAttrsMap"+(t?","+t:""))});function js(t,e){t&&(_s=As(e.staticKeys||""),Os=e.isReservedTag||B,function t(e){e.static=function(t){if(2===t.type)return!1;if(3===t.type)return!0;return!(!t.pre&&(t.hasBindings||t.if||t.for||m(t.tag)||!Os(t.tag)||function(t){for(;t.parent;){if("template"!==(t=t.parent).tag)return!1;if(t.for)return!0}return!1}(t)||!Object.keys(t).every(_s)))}(e);if(1===e.type){if(!Os(e.tag)&&"slot"!==e.tag&&null==e.attrsMap["inline-template"])return;for(var n=0,i=e.children.length;n|^function(?:\s+[\w$]+)?\s*\(/,Bs=/\([^)]*?\);*$/,Es=/^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*|\['[^']*?']|\["[^"]*?"]|\[\d+]|\[[A-Za-z_$][\w$]*])*$/,Ns={esc:27,tab:9,enter:13,space:32,up:38,left:37,right:39,down:40,delete:[8,46]},Ls={esc:["Esc","Escape"],tab:"Tab",enter:"Enter",space:[" ","Spacebar"],up:["Up","ArrowUp"],left:["Left","ArrowLeft"],right:["Right","ArrowRight"],down:["Down","ArrowDown"],delete:["Backspace","Delete","Del"]},Ds=function(t){return"if("+t+")return null;"},Fs={stop:"$event.stopPropagation();",prevent:"$event.preventDefault();",self:Ds("$event.target !== $event.currentTarget"),ctrl:Ds("!$event.ctrlKey"),shift:Ds("!$event.shiftKey"),alt:Ds("!$event.altKey"),meta:Ds("!$event.metaKey"),left:Ds("'button' in $event && $event.button !== 0"),middle:Ds("'button' in $event && $event.button !== 1"),right:Ds("'button' in $event && $event.button !== 2")};function Ms(t,e){var n=e?"nativeOn:":"on:",i="",r="";for(var o in t){var s=zs(t[o]);t[o]&&t[o].dynamic?r+=o+","+s+",":i+='"'+o+'":'+s+","}return i="{"+i.slice(0,-1)+"}",r?n+"_d("+i+",["+r.slice(0,-1)+"])":n+i}function zs(t){if(!t)return"function(){}";if(Array.isArray(t))return"["+t.map(function(t){return zs(t)}).join(",")+"]";var e=Es.test(t.value),n=Is.test(t.value),i=Es.test(t.value.replace(Bs,""));if(t.modifiers){var r="",o="",s=[];for(var a in t.modifiers)if(Fs[a])o+=Fs[a],Ns[a]&&s.push(a);else if("exact"===a){var c=t.modifiers;o+=Ds(["ctrl","shift","alt","meta"].filter(function(t){return!c[t]}).map(function(t){return"$event."+t+"Key"}).join("||"))}else s.push(a);return s.length&&(r+=function(t){return"if(!$event.type.indexOf('key')&&"+t.map(Ps).join("&&")+")return null;"}(s)),o&&(r+=o),"function($event){"+r+(e?"return "+t.value+"($event)":n?"return ("+t.value+")($event)":i?"return "+t.value:t.value)+"}"}return e||n?t.value:"function($event){"+(i?"return "+t.value:t.value)+"}"}function Ps(t){var e=parseInt(t,10);if(e)return"$event.keyCode!=="+e;var n=Ns[t],i=Ls[t];return"_k($event.keyCode,"+JSON.stringify(t)+","+JSON.stringify(n)+",$event.key,"+JSON.stringify(i)+")"}var Vs={on:function(t,e){t.wrapListeners=function(t){return"_g("+t+","+e.value+")"}},bind:function(t,e){t.wrapData=function(n){return"_b("+n+",'"+t.tag+"',"+e.value+","+(e.modifiers&&e.modifiers.prop?"true":"false")+(e.modifiers&&e.modifiers.sync?",true":"")+")"}},cloak:I},Rs=function(t){this.options=t,this.warn=t.warn||Bi,this.transforms=Ei(t.modules,"transformCode"),this.dataGenFns=Ei(t.modules,"genData"),this.directives=A(A({},Vs),t.directives);var e=t.isReservedTag||B;this.maybeComponent=function(t){return!!t.component||!e(t.tag)},this.onceId=0,this.staticRenderFns=[],this.pre=!1};function Hs(t,e){var n=new Rs(e);return{render:"with(this){return "+(t?Ws(t,n):'_c("div")')+"}",staticRenderFns:n.staticRenderFns}}function Ws(t,e){if(t.parent&&(t.pre=t.pre||t.parent.pre),t.staticRoot&&!t.staticProcessed)return qs(t,e);if(t.once&&!t.onceProcessed)return Ys(t,e);if(t.for&&!t.forProcessed)return Ks(t,e);if(t.if&&!t.ifProcessed)return Us(t,e);if("template"!==t.tag||t.slotTarget||e.pre){if("slot"===t.tag)return function(t,e){var n=t.slotName||'"default"',i=Zs(t,e),r="_t("+n+(i?","+i:""),o=t.attrs||t.dynamicAttrs?ea((t.attrs||[]).concat(t.dynamicAttrs||[]).map(function(t){return{name:w(t.name),value:t.value,dynamic:t.dynamic}})):null,s=t.attrsMap["v-bind"];!o&&!s||i||(r+=",null");o&&(r+=","+o);s&&(r+=(o?"":",null")+","+s);return r+")"}(t,e);var n;if(t.component)n=function(t,e,n){var i=e.inlineTemplate?null:Zs(e,n,!0);return"_c("+t+","+Xs(e,n)+(i?","+i:"")+")"}(t.component,t,e);else{var i;(!t.plain||t.pre&&e.maybeComponent(t))&&(i=Xs(t,e));var r=t.inlineTemplate?null:Zs(t,e,!0);n="_c('"+t.tag+"'"+(i?","+i:"")+(r?","+r:"")+")"}for(var o=0;o>>0}(s):"")+")"}(t,t.scopedSlots,e)+","),t.model&&(n+="model:{value:"+t.model.value+",callback:"+t.model.callback+",expression:"+t.model.expression+"},"),t.inlineTemplate){var o=function(t,e){var n=t.children[0];0;if(n&&1===n.type){var i=Hs(n,e.options);return"inlineTemplate:{render:function(){"+i.render+"},staticRenderFns:["+i.staticRenderFns.map(function(t){return"function(){"+t+"}"}).join(",")+"]}"}}(t,e);o&&(n+=o+",")}return n=n.replace(/,$/,"")+"}",t.dynamicAttrs&&(n="_b("+n+',"'+t.tag+'",'+ea(t.dynamicAttrs)+")"),t.wrapData&&(n=t.wrapData(n)),t.wrapListeners&&(n=t.wrapListeners(n)),n}function Qs(t){return 1===t.type&&("slot"===t.tag||t.children.some(Qs))}function Js(t,e){var n=t.attrsMap["slot-scope"];if(t.if&&!t.ifProcessed&&!n)return Us(t,e,Js,"null");if(t.for&&!t.forProcessed)return Ks(t,e,Js);var i=t.slotScope===ps?"":String(t.slotScope),r="function("+i+"){return "+("template"===t.tag?t.if&&n?"("+t.if+")?"+(Zs(t,e)||"undefined")+":undefined":Zs(t,e)||"undefined":Ws(t,e))+"}",o=i?"":",proxy:true";return"{key:"+(t.slotTarget||'"default"')+",fn:"+r+o+"}"}function Zs(t,e,n,i,r){var o=t.children;if(o.length){var s=o[0];if(1===o.length&&s.for&&"template"!==s.tag&&"slot"!==s.tag){var a=n?e.maybeComponent(s)?",1":",0":"";return""+(i||Ws)(s,e)+a}var c=n?function(t,e){for(var n=0,i=0;i':'
    ',sa.innerHTML.indexOf(" ")>0}var la=!!U&&ua(!1),da=!!U&&ua(!0),ha=x(function(t){var e=ni(t);return e&&e.innerHTML}),fa=_n.prototype.$mount;_n.prototype.$mount=function(t,e){if((t=t&&ni(t))===document.body||t===document.documentElement)return this;var n=this.$options;if(!n.render){var i=n.template;if(i)if("string"==typeof i)"#"===i.charAt(0)&&(i=ha(i));else{if(!i.nodeType)return this;i=i.innerHTML}else t&&(i=function(t){if(t.outerHTML)return t.outerHTML;var e=document.createElement("div");return e.appendChild(t.cloneNode(!0)),e.innerHTML}(t));if(i){0;var r=ca(i,{outputSourceRange:!1,shouldDecodeNewlines:la,shouldDecodeNewlinesForHref:da,delimiters:n.delimiters,comments:n.comments},this),o=r.render,s=r.staticRenderFns;n.render=o,n.staticRenderFns=s}}return fa.call(this,t,e)},_n.compile=ca,e.a=_n}).call(e,n("9AUj"))},lJzc:function(t,e,n){var i;i=function(){"use strict";function t(t){t=t||{};var i=arguments.length,r=0;if(1===i)return t;for(;++r-1?t.splice(n,1):void 0}}function o(t,e){if("IMG"===t.tagName&&t.getAttribute("data-srcset")){var n=t.getAttribute("data-srcset"),i=[],r=t.parentNode.offsetWidth*e,o=void 0,s=void 0,a=void 0;(n=n.trim().split(",")).map(function(t){t=t.trim(),-1===(o=t.lastIndexOf(" "))?(s=t,a=999998):(s=t.substr(0,o),a=parseInt(t.substr(o+1,t.length-o-2),10)),i.push([a,s])}),i.sort(function(t,e){if(t[0]e[0])return 1;if(t[0]===e[0]){if(-1!==e[1].indexOf(".webp",e[1].length-5))return 1;if(-1!==t[1].indexOf(".webp",t[1].length-5))return-1}return 0});for(var c="",u=void 0,l=i.length,d=0;d=r){c=u[1];break}return c}}function s(t,e){for(var n=void 0,i=0,r=t.length;i0&&void 0!==arguments[0]?arguments[0]:1;return m&&window.devicePixelRatio||t},x=function(){if(m){var t=!1;try{var e=Object.defineProperty({},"passive",{get:function(){t=!0}});window.addEventListener("test",null,e)}catch(t){}return t}}(),S={on:function(t,e,n){var i=arguments.length>3&&void 0!==arguments[3]&&arguments[3];x?t.addEventListener(e,n,{capture:i,passive:!0}):t.addEventListener(e,n,i)},off:function(t,e,n){var i=arguments.length>3&&void 0!==arguments[3]&&arguments[3];t.removeEventListener(e,n,i)}},w=function(t,e,n){var i=new Image;i.src=t.src,i.onload=function(){e({naturalHeight:i.naturalHeight,naturalWidth:i.naturalWidth,src:i.src})},i.onerror=function(t){n(t)}},C=function(t,e){return"undefined"!=typeof getComputedStyle?getComputedStyle(t,null).getPropertyValue(e):t.style[e]},$=function(t){return C(t,"overflow")+C(t,"overflow-y")+C(t,"overflow-x")},_={},O=function(){function t(e){var n=e.el,i=e.src,r=e.error,o=e.loading,s=e.bindType,a=e.$parent,c=e.options,l=e.elRenderer;u(this,t),this.el=n,this.src=i,this.error=r,this.loading=o,this.bindType=s,this.attempt=0,this.naturalHeight=0,this.naturalWidth=0,this.options=c,this.rect=null,this.$parent=a,this.elRenderer=l,this.performanceData={init:Date.now(),loadStart:0,loadEnd:0},this.filter(),this.initState(),this.render("loading",!1)}return l(t,[{key:"initState",value:function(){this.el.dataset.src=this.src,this.state={error:!1,loaded:!1,rendered:!1}}},{key:"record",value:function(t){this.performanceData[t]=Date.now()}},{key:"update",value:function(t){var e=t.src,n=t.loading,i=t.error,r=this.src;this.src=e,this.loading=n,this.error=i,this.filter(),r!==this.src&&(this.attempt=0,this.initState())}},{key:"getRect",value:function(){this.rect=this.el.getBoundingClientRect()}},{key:"checkInView",value:function(){return this.getRect(),this.rect.topthis.options.preLoadTop&&this.rect.left0}},{key:"filter",value:function(){var t=this;(function(t){if(!(t instanceof Object))return[];if(Object.keys)return Object.keys(t);var e=[];for(var n in t)t.hasOwnProperty(n)&&e.push(n);return e})(this.options.filter).map(function(e){t.options.filter[e](t,t.options)})}},{key:"renderLoading",value:function(t){var e=this;w({src:this.loading},function(n){e.render("loading",!1),t()},function(){t(),e.options.silent||console.warn("VueLazyload log: load failed with loading image("+e.loading+")")})}},{key:"load",value:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:a;return this.attempt>this.options.attempt-1&&this.state.error?(this.options.silent||console.log("VueLazyload log: "+this.src+" tried too more than "+this.options.attempt+" times"),void e()):this.state.loaded||_[this.src]?(this.state.loaded=!0,e(),this.render("loaded",!0)):void this.renderLoading(function(){t.attempt++,t.record("loadStart"),w({src:t.src},function(n){t.naturalHeight=n.naturalHeight,t.naturalWidth=n.naturalWidth,t.state.loaded=!0,t.state.error=!1,t.record("loadEnd"),t.render("loaded",!1),_[t.src]=1,e()},function(e){!t.options.silent&&console.error(e),t.state.error=!0,t.state.loaded=!1,t.render("error",!1)})})}},{key:"render",value:function(t,e){this.elRenderer(this,t,e)}},{key:"performance",value:function(){var t="loading",e=0;return this.state.loaded&&(t="loaded",e=(this.performanceData.loadEnd-this.performanceData.loadStart)/1e3),this.state.error&&(t="error"),{src:this.src,state:t,time:e}}},{key:"destroy",value:function(){this.el=null,this.src=null,this.error=null,this.loading=null,this.bindType=null,this.attempt=0}}]),t}(),T="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7",A=["scroll","wheel","mousewheel","resize","animationend","transitionend","touchmove"],j={rootMargin:"0px",threshold:0},I=function(t){return function(){function e(t){var n=t.preLoad,i=t.error,r=t.throttleWait,o=t.preLoadTop,s=t.dispatchEvent,a=t.loading,c=t.attempt,l=t.silent,d=void 0===l||l,h=t.scale,f=t.listenEvents,p=(t.hasbind,t.filter),v=t.adapter,g=t.observer,b=t.observerOptions;u(this,e),this.version="1.2.3",this.mode=y.event,this.ListenerQueue=[],this.TargetIndex=0,this.TargetQueue=[],this.options={silent:d,dispatchEvent:!!s,throttleWait:r||200,preLoad:n||1.3,preLoadTop:o||0,error:i||T,loading:a||T,attempt:c||3,scale:h||k(h),ListenEvents:f||A,hasbind:!1,supportWebp:function(){if(!m)return!1;var t=!0,e=document;try{var n=e.createElement("object");n.type="image/webp",n.style.visibility="hidden",n.innerHTML="!",e.body.appendChild(n),t=!n.offsetWidth,e.body.removeChild(n)}catch(e){t=!1}return t}(),filter:p||{},adapter:v||{},observer:!!g,observerOptions:b||j},this._initEvent(),this.lazyLoadHandler=function(t,e){var n=null,i=0;return function(){if(!n){var r=this,o=arguments,s=function(){i=Date.now(),n=!1,t.apply(r,o)};Date.now()-i>=e?s():n=setTimeout(s,e)}}}(this._lazyLoadHandler.bind(this),this.options.throttleWait),this.setMode(this.options.observer?y.observer:y.event)}return l(e,[{key:"config",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};v(this.options,t)}},{key:"performance",value:function(){var t=[];return this.ListenerQueue.map(function(e){t.push(e.performance())}),t}},{key:"addLazyBox",value:function(t){this.ListenerQueue.push(t),m&&(this._addListenerTarget(window),this._observer&&this._observer.observe(t.el),t.$el&&t.$el.parentNode&&this._addListenerTarget(t.$el.parentNode))}},{key:"add",value:function(e,n,i){var r=this;if(function(t,e){for(var n=!1,i=0,r=t.length;i1&&void 0!==arguments[1]?arguments[1]:{},n=new(I(t))(e),i=new B({lazy:n}),r="2"===t.version.split(".")[0];t.prototype.$Lazyload=n,e.lazyComponent&&t.component("lazy-component",function(t){return{props:{tag:{type:String,default:"div"}},render:function(t){return!1===this.show?t(this.tag):t(this.tag,null,this.$slots.default)},data:function(){return{el:null,state:{loaded:!1},rect:{},show:!1}},mounted:function(){this.el=this.$el,t.addLazyBox(this),t.lazyLoadHandler()},beforeDestroy:function(){t.removeComponent(this)},methods:{getRect:function(){this.rect=this.$el.getBoundingClientRect()},checkInView:function(){return this.getRect(),m&&this.rect.top0&&this.rect.left0},load:function(){this.show=!0,this.state.loaded=!0,this.$emit("show",this)}}}}(n)),r?(t.directive("lazy",{bind:n.add.bind(n),update:n.update.bind(n),componentUpdated:n.lazyLoadHandler.bind(n),unbind:n.remove.bind(n)}),t.directive("lazy-container",{bind:i.bind.bind(i),update:i.update.bind(i),unbind:i.unbind.bind(i)})):(t.directive("lazy",{bind:n.lazyLoadHandler.bind(n),update:function(t,e){v(this.vm.$refs,this.vm.$els),n.add(this.el,{modifiers:this.modifiers||{},arg:this.arg,value:t,oldValue:e},{context:this.vm})},unbind:function(){n.remove(this.el)}}),t.directive("lazy-container",{update:function(t,e){i.update(this.el,{modifiers:this.modifiers||{},arg:this.arg,value:t,oldValue:e},{context:this.vm})},unbind:function(){i.unbind(this.el)}}))}}},t.exports=i()},tgu0:function(t,e,n){"use strict";var i=n("kV13"),r=n("TExJ"),o=i.a.prototype,s=i.a.util.defineReactive;s(o,"$vantLang","zh-CN"),s(o,"$vantMessages",{"zh-CN":{name:"姓名",tel:"电话",save:"保存",confirm:"确认",cancel:"取消",delete:"删除",complete:"完成",loading:"加载中...",telEmpty:"请填写电话",nameEmpty:"请填写姓名",confirmDelete:"确定要删除么",telInvalid:"请填写正确的电话",vanContactCard:{addText:"添加联系人"},vanContactList:{addText:"新建联系人"},vanPagination:{prev:"上一页",next:"下一页"},vanPullRefresh:{pulling:"下拉即可刷新...",loosing:"释放即可刷新..."},vanSubmitBar:{label:"合计:"},vanCoupon:{valid:"有效期",unlimited:"无使用门槛",discount:function(t){return t+"折"},condition:function(t){return"满"+t+"元可用"}},vanCouponCell:{title:"优惠券",tips:"使用优惠",count:function(t){return t+"张可用"}},vanCouponList:{empty:"暂无优惠券",exchange:"兑换",close:"不使用优惠",enable:"可使用优惠券",disabled:"不可使用优惠券",placeholder:"请输入优惠码"},vanAddressEdit:{area:"地区",postal:"邮政编码",areaEmpty:"请选择地区",addressEmpty:"请填写详细地址",postalEmpty:"邮政编码格式不正确",defaultAddress:"设为默认收货地址",telPlaceholder:"收货人手机号",namePlaceholder:"收货人姓名",areaPlaceholder:"选择省 / 市 / 区"},vanAddressEditDetail:{label:"详细地址",placeholder:"街道门牌、楼层房间号等信息"},vanAddressList:{add:"新增地址"}}});e.a={messages:function(){return o.$vantMessages[o.$vantLang]},use:function(t,e){var n;o.$vantLang=t,this.add(((n={})[t]=e,n))},add:function(t){void 0===t&&(t={}),Object(r.a)(o.$vantMessages,t)}}},tm21:function(t,e,n){"use strict";var i=n("kV13"),r="--";function o(t,e,n){return e?t+n+e:t}var s=function(t){return function(e,n){return e&&"string"!=typeof e&&(n=e,e=""),e=o(t,e,"__"),n?[e,function t(e,n){if("string"==typeof n)return o(e,n,r);if(Array.isArray(n))return n.map(function(n){return t(e,n)});var i={};return n&&Object.keys(n).forEach(function(t){i[e+r+t]=n[t]}),i}(e,n)]:e}},a=n("tgu0"),c={methods:{slots:function(t,e){void 0===t&&(t="default");var n=this.$slots,i=this.$scopedSlots;return i[t]?i[t](e):n[t]}}},u={type:Array,default:function(){return[]}},l={type:Number,default:0};function d(t){var e=this.name;t.component(e,this),t.component(k("-"+e),this)}function h(t){return{functional:!0,props:t.props,model:t.model,render:function(e,n){return t(e,n.props,function(t){var e=t.scopedSlots||t.data.scopedSlots||{},n=t.slots();return Object.keys(n).forEach(function(t){e[t]||(e[t]=function(){return n[t]})}),e}(n),n)}}}var f=function(t){return function(e){var n;return"function"==typeof e&&(e=h(e)),e.functional||(e.mixins=e.mixins||[],e.mixins.push(c)),e.props&&(n=e.props,Object.keys(n).forEach(function(t){n[t]===Array?n[t]=u:n[t]===Number&&(n[t]=l)})),e.name=t,e.install=d,e}},p=function(t){var e=k(t)+".";return function(t){for(var n=y(a.a.messages(),e+t)||y(a.a.messages(),t),i=arguments.length,r=new Array(i>1?i-1:0),o=1;o 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {\n args[_key - 2] = arguments[_key];\n }\n\n var listeners = context.listeners[eventName];\n\n if (listeners) {\n if (Array.isArray(listeners)) {\n listeners.forEach(function (listener) {\n listener.apply(void 0, args);\n });\n } else {\n listeners.apply(void 0, args);\n }\n }\n} // mount functional component\n\nexport function mount(Component, data) {\n var instance = new Vue({\n el: document.createElement('div'),\n props: Component.props,\n render: function render(h) {\n return h(Component, _extends({\n props: this.$props\n }, data));\n }\n });\n document.body.appendChild(instance.$el);\n return instance;\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/utils/functional.js\n// module id = null\n// module chunks = ","export var context = {\n zIndex: 2000,\n lockCount: 0,\n stack: [],\n\n get top() {\n return this.stack[this.stack.length - 1];\n }\n\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/mixins/popup/context.js\n// module id = null\n// module chunks = ","var MIN_DISTANCE = 10;\n\nfunction getDirection(x, y) {\n if (x > y && x > MIN_DISTANCE) {\n return 'horizontal';\n }\n\n if (y > x && y > MIN_DISTANCE) {\n return 'vertical';\n }\n\n return '';\n}\n\nexport var TouchMixin = {\n data: function data() {\n return {\n direction: ''\n };\n },\n methods: {\n touchStart: function touchStart(event) {\n this.resetTouchStatus();\n this.startX = event.touches[0].clientX;\n this.startY = event.touches[0].clientY;\n },\n touchMove: function touchMove(event) {\n var touch = event.touches[0];\n this.deltaX = touch.clientX - this.startX;\n this.deltaY = touch.clientY - this.startY;\n this.offsetX = Math.abs(this.deltaX);\n this.offsetY = Math.abs(this.deltaY);\n this.direction = this.direction || getDirection(this.offsetX, this.offsetY);\n },\n resetTouchStatus: function resetTouchStatus() {\n this.direction = '';\n this.deltaX = 0;\n this.deltaY = 0;\n this.offsetX = 0;\n this.offsetY = 0;\n }\n }\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/mixins/touch.js\n// module id = null\n// module chunks = ","/* eslint-disable no-empty */\n\n/* eslint-disable getter-return */\n\n/* eslint-disable import/no-mutable-exports */\nimport { isServer } from '.';\nexport var supportsPassive = false;\n\nif (!isServer) {\n try {\n var opts = {};\n Object.defineProperty(opts, 'passive', {\n get: function get() {\n /* istanbul ignore next */\n supportsPassive = true;\n }\n });\n window.addEventListener('test-passive', null, opts);\n } catch (e) {}\n}\n\nexport function on(target, event, handler, passive) {\n if (passive === void 0) {\n passive = false;\n }\n\n if (!isServer) {\n target.addEventListener(event, handler, supportsPassive ? {\n capture: false,\n passive: passive\n } : false);\n }\n}\nexport function off(target, event, handler) {\n if (!isServer) {\n target.removeEventListener(event, handler);\n }\n}\nexport function stopPropagation(event) {\n event.stopPropagation();\n}\nexport function preventDefault(event, isStopPropagation) {\n /* istanbul ignore else */\n if (typeof event.cancelable !== 'boolean' || event.cancelable) {\n event.preventDefault();\n }\n\n if (isStopPropagation) {\n stopPropagation(event);\n }\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/utils/event.js\n// module id = null\n// module chunks = ","import _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { use } from '../utils';\nimport { inherit } from '../utils/functional';\nimport { preventDefault } from '../utils/event'; // Types\n\nvar _use = use('overlay'),\n sfc = _use[0],\n bem = _use[1];\n\nfunction Overlay(h, props, slots, ctx) {\n var style = _extends({\n zIndex: props.zIndex\n }, props.customStyle);\n\n return h(\"transition\", {\n \"attrs\": {\n \"name\": \"van-fade\"\n }\n }, [h(\"div\", _mergeJSXProps([{\n \"directives\": [{\n name: \"show\",\n value: props.visible\n }],\n \"style\": style,\n \"class\": [bem(), props.className],\n \"on\": {\n \"touchmove\": function touchmove(event) {\n preventDefault(event, true);\n }\n }\n }, inherit(ctx, true)]))]);\n}\n\nOverlay.props = {\n zIndex: Number,\n className: null,\n visible: Boolean,\n customStyle: Object\n};\nexport default sfc(Overlay);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/overlay/index.js\n// module id = null\n// module chunks = ","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport Overlay from '../../overlay';\nimport { context } from './context';\nimport { mount } from '../../utils/functional';\nvar defaultConfig = {\n className: '',\n customStyle: {}\n};\nvar overlay; // close popup when click overlay && closeOnClickOverlay is true\n\nfunction onClickOverlay() {\n if (context.top) {\n var vm = context.top.vm;\n vm.$emit('click-overlay');\n\n if (vm.closeOnClickOverlay) {\n if (vm.onClickOverlay) {\n vm.onClickOverlay();\n } else {\n vm.close();\n }\n }\n }\n}\n\nexport function updateOverlay() {\n if (!overlay) {\n overlay = mount(Overlay, {\n on: {\n click: onClickOverlay\n }\n });\n }\n\n if (context.top) {\n var _context$top = context.top,\n vm = _context$top.vm,\n config = _context$top.config;\n var el = vm.$el;\n var target = el && el.parentNode ? el.parentNode : document.body;\n\n if (target) {\n target.appendChild(overlay.$el);\n }\n\n _extends(overlay, defaultConfig, config, {\n visible: true\n });\n } else {\n overlay.visible = false;\n }\n}\nexport function openOverlay(vm, config) {\n if (!context.stack.some(function (item) {\n return item.vm === vm;\n })) {\n context.stack.push({\n vm: vm,\n config: config\n });\n updateOverlay();\n }\n}\nexport function closeOverlay(vm) {\n var stack = context.stack;\n\n if (stack.length) {\n if (context.top.vm === vm) {\n stack.pop();\n updateOverlay();\n } else {\n context.stack = stack.filter(function (item) {\n return item.vm !== vm;\n });\n }\n }\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/mixins/popup/overlay.js\n// module id = null\n// module chunks = ","// get nearest scroll element\n// http://w3help.org/zh-cn/causes/SD9013\n// http://stackoverflow.com/questions/17016740/onscroll-function-is-not-working-for-chrome\nexport function getScrollEventTarget(element, rootParent) {\n if (rootParent === void 0) {\n rootParent = window;\n }\n\n var node = element;\n\n while (node && node.tagName !== 'HTML' && node.tagName !== 'BODY' && node.nodeType === 1 && node !== rootParent) {\n var _window$getComputedSt = window.getComputedStyle(node),\n overflowY = _window$getComputedSt.overflowY;\n\n if (overflowY === 'scroll' || overflowY === 'auto') {\n return node;\n }\n\n node = node.parentNode;\n }\n\n return rootParent;\n}\nexport function getScrollTop(element) {\n return 'scrollTop' in element ? element.scrollTop : element.pageYOffset;\n}\nexport function setScrollTop(element, value) {\n 'scrollTop' in element ? element.scrollTop = value : element.scrollTo(element.scrollX, value);\n}\nexport function getRootScrollTop() {\n return window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;\n} // get distance from element top to page top\n\nexport function getElementTop(element) {\n return (element === window ? 0 : element.getBoundingClientRect().top) + getScrollTop(window);\n}\nexport function getVisibleHeight(element) {\n return element === window ? element.innerHeight : element.getBoundingClientRect().height;\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/utils/scroll.js\n// module id = null\n// module chunks = ","import { context } from './context';\nimport { TouchMixin } from '../touch';\nimport { on, off, preventDefault } from '../../utils/event';\nimport { openOverlay, closeOverlay, updateOverlay } from './overlay';\nimport { getScrollEventTarget } from '../../utils/scroll';\nexport var PopupMixin = {\n mixins: [TouchMixin],\n props: {\n // whether to show popup\n value: Boolean,\n // whether to show overlay\n overlay: Boolean,\n // overlay custom style\n overlayStyle: Object,\n // overlay custom class name\n overlayClass: String,\n // whether to close popup when click overlay\n closeOnClickOverlay: Boolean,\n // z-index\n zIndex: [String, Number],\n // return the mount node for popup\n getContainer: [String, Function],\n // prevent body scroll\n lockScroll: {\n type: Boolean,\n \"default\": true\n },\n // whether to lazy render\n lazyRender: {\n type: Boolean,\n \"default\": true\n }\n },\n data: function data() {\n return {\n inited: this.value\n };\n },\n computed: {\n shouldRender: function shouldRender() {\n return this.inited || !this.lazyRender;\n }\n },\n watch: {\n value: function value(val) {\n var type = val ? 'open' : 'close';\n this.inited = this.inited || this.value;\n this[type]();\n this.$emit(type);\n },\n getContainer: function getContainer() {\n this.move();\n },\n overlay: function overlay() {\n this.renderOverlay();\n }\n },\n mounted: function mounted() {\n if (this.getContainer) {\n this.move();\n }\n\n if (this.value) {\n this.open();\n }\n },\n activated: function activated() {\n /* istanbul ignore next */\n if (this.value) {\n this.open();\n }\n },\n beforeDestroy: function beforeDestroy() {\n this.close();\n\n if (this.getContainer && this.$parent && this.$parent.$el) {\n this.$parent.$el.appendChild(this.$el);\n }\n },\n deactivated: function deactivated() {\n /* istanbul ignore next */\n this.close();\n },\n methods: {\n open: function open() {\n /* istanbul ignore next */\n if (this.$isServer || this.opened) {\n return;\n } // cover default zIndex\n\n\n if (this.zIndex !== undefined) {\n context.zIndex = this.zIndex;\n }\n\n this.opened = true;\n this.renderOverlay();\n\n if (this.lockScroll) {\n on(document, 'touchstart', this.touchStart);\n on(document, 'touchmove', this.onTouchMove);\n\n if (!context.lockCount) {\n document.body.classList.add('van-overflow-hidden');\n }\n\n context.lockCount++;\n }\n },\n close: function close() {\n if (!this.opened) {\n return;\n }\n\n if (this.lockScroll) {\n context.lockCount--;\n off(document, 'touchstart', this.touchStart);\n off(document, 'touchmove', this.onTouchMove);\n\n if (!context.lockCount) {\n document.body.classList.remove('van-overflow-hidden');\n }\n }\n\n this.opened = false;\n closeOverlay(this);\n this.$emit('input', false);\n },\n move: function move() {\n var container;\n var getContainer = this.getContainer;\n\n if (getContainer) {\n container = typeof getContainer === 'string' ? document.querySelector(getContainer) : getContainer();\n } else if (this.$parent) {\n container = this.$parent.$el;\n }\n\n if (container && container !== this.$el.parentNode) {\n container.appendChild(this.$el);\n }\n\n if (this.overlay) {\n updateOverlay();\n }\n },\n onTouchMove: function onTouchMove(event) {\n this.touchMove(event);\n var direction = this.deltaY > 0 ? '10' : '01';\n var el = getScrollEventTarget(event.target, this.$el);\n var scrollHeight = el.scrollHeight,\n offsetHeight = el.offsetHeight,\n scrollTop = el.scrollTop;\n var status = '11';\n /* istanbul ignore next */\n\n if (scrollTop === 0) {\n status = offsetHeight >= scrollHeight ? '00' : '01';\n } else if (scrollTop + offsetHeight >= scrollHeight) {\n status = '10';\n }\n /* istanbul ignore next */\n\n\n if (status !== '11' && this.direction === 'vertical' && !(parseInt(status, 2) & parseInt(direction, 2))) {\n preventDefault(event, true);\n }\n },\n renderOverlay: function renderOverlay() {\n if (this.$isServer || !this.value) {\n return;\n }\n\n if (this.overlay) {\n openOverlay(this, {\n zIndex: context.zIndex++,\n className: this.overlayClass,\n customStyle: this.overlayStyle\n });\n } else {\n closeOverlay(this);\n }\n\n this.updateZIndex();\n },\n updateZIndex: function updateZIndex() {\n var _this = this;\n\n this.$nextTick(function () {\n _this.$el.style.zIndex = context.zIndex++;\n });\n }\n }\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/mixins/popup/index.js\n// module id = null\n// module chunks = ","import _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use, isDef } from '../utils';\nimport { inherit } from '../utils/functional'; // Types\n\nvar _use = use('info'),\n sfc = _use[0],\n bem = _use[1];\n\nfunction Info(h, props, slots, ctx) {\n if (!isDef(props.info) || props.info === '') {\n return;\n }\n\n return h(\"div\", _mergeJSXProps([{\n \"class\": bem()\n }, inherit(ctx, true)]), [props.info]);\n}\n\nInfo.props = {\n info: [String, Number]\n};\nexport default sfc(Info);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/info/index.js\n// module id = null\n// module chunks = ","import _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use } from '../utils';\nimport { inherit } from '../utils/functional';\nimport Info from '../info'; // Types\n\nvar _use = use('icon'),\n sfc = _use[0];\n\nfunction isImage(name) {\n return name ? name.indexOf('/') !== -1 : false;\n}\n\nfunction Icon(h, props, slots, ctx) {\n var urlIcon = isImage(props.name);\n return h(props.tag, _mergeJSXProps([{\n \"class\": [props.classPrefix, urlIcon ? 'van-icon--image' : props.classPrefix + \"-\" + props.name],\n \"style\": {\n color: props.color,\n fontSize: props.size\n }\n }, inherit(ctx, true)]), [slots[\"default\"] && slots[\"default\"](), urlIcon && h(\"img\", {\n \"attrs\": {\n \"src\": props.name\n }\n }), h(Info, {\n \"attrs\": {\n \"info\": props.info\n }\n })]);\n}\n\nIcon.props = {\n name: String,\n size: String,\n color: String,\n info: [String, Number],\n tag: {\n type: String,\n \"default\": 'i'\n },\n classPrefix: {\n type: String,\n \"default\": 'van-icon'\n }\n};\nexport default sfc(Icon);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/icon/index.js\n// module id = null\n// module chunks = ","import _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use } from '../utils';\nimport { inherit } from '../utils/functional'; // Types\n\nvar _use = use('loading'),\n sfc = _use[0],\n bem = _use[1];\n\nvar DEFAULT_COLOR = '#c9c9c9';\n\nfunction Loading(h, props, slots, ctx) {\n var color = props.color,\n size = props.size,\n type = props.type;\n var colorType = color === 'white' || color === 'black' ? color : '';\n var style = {\n color: color === 'black' ? DEFAULT_COLOR : color,\n width: size,\n height: size\n };\n var Spin = [];\n\n if (type === 'spinner') {\n for (var i = 0; i < 12; i++) {\n Spin.push(h(\"i\"));\n }\n }\n\n var Circular = type === 'circular' && h(\"svg\", {\n \"class\": bem('circular'),\n \"attrs\": {\n \"viewBox\": \"25 25 50 50\"\n }\n }, [h(\"circle\", {\n \"attrs\": {\n \"cx\": \"50\",\n \"cy\": \"50\",\n \"r\": \"20\",\n \"fill\": \"none\"\n }\n })]);\n return h(\"div\", _mergeJSXProps([{\n \"class\": bem([type, colorType]),\n \"style\": style\n }, inherit(ctx, true)]), [h(\"span\", {\n \"class\": bem('spinner', type)\n }, [Spin, Circular])]);\n}\n\nLoading.props = {\n size: String,\n type: {\n type: String,\n \"default\": 'circular'\n },\n color: {\n type: String,\n \"default\": DEFAULT_COLOR\n }\n};\nexport default sfc(Loading);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/loading/index.js\n// module id = null\n// module chunks = ","import { use } from '../utils';\nimport { PopupMixin } from '../mixins/popup';\n\nvar _use = use('popup'),\n sfc = _use[0],\n bem = _use[1];\n\nexport default sfc({\n mixins: [PopupMixin],\n props: {\n position: String,\n transition: String,\n overlay: {\n type: Boolean,\n \"default\": true\n },\n closeOnClickOverlay: {\n type: Boolean,\n \"default\": true\n }\n },\n render: function render(h) {\n var _this = this,\n _bem;\n\n if (!this.shouldRender) {\n return;\n }\n\n var position = this.position;\n\n var emit = function emit(event) {\n return function () {\n return _this.$emit(event);\n };\n };\n\n var transitionName = this.transition || (position ? \"van-popup-slide-\" + position : 'van-fade');\n return h(\"transition\", {\n \"attrs\": {\n \"name\": transitionName\n },\n \"on\": {\n \"afterEnter\": emit('opened'),\n \"afterLeave\": emit('closed')\n }\n }, [h(\"div\", {\n \"directives\": [{\n name: \"show\",\n value: this.value\n }],\n \"class\": bem((_bem = {}, _bem[position] = position, _bem))\n }, [this.slots()])]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/popup/index.js\n// module id = null\n// module chunks = ","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use } from '../utils';\nimport { emit, inherit } from '../utils/functional';\nimport { PopupMixin } from '../mixins/popup';\nimport Icon from '../icon';\nimport Loading from '../loading';\nimport Popup from '../popup'; // Types\n\nvar _use = use('actionsheet'),\n sfc = _use[0],\n bem = _use[1];\n\nfunction Actionsheet(h, props, slots, ctx) {\n var title = props.title,\n cancelText = props.cancelText;\n\n var onCancel = function onCancel() {\n emit(ctx, 'input', false);\n emit(ctx, 'cancel');\n };\n\n var Header = function Header() {\n return h(\"div\", {\n \"class\": [bem('header'), 'van-hairline--top-bottom']\n }, [title, h(Icon, {\n \"attrs\": {\n \"name\": \"close\"\n },\n \"class\": bem('close'),\n \"on\": {\n \"click\": onCancel\n }\n })]);\n };\n\n var Option = function Option(item, index) {\n return h(\"div\", {\n \"class\": [bem('item', {\n disabled: item.disabled || item.loading\n }), item.className, 'van-hairline--top'],\n \"on\": {\n \"click\": function click(event) {\n event.stopPropagation();\n\n if (!item.disabled && !item.loading) {\n if (item.callback) {\n item.callback(item);\n }\n\n emit(ctx, 'select', item, index);\n }\n }\n }\n }, [item.loading ? h(Loading, {\n \"class\": bem('loading'),\n \"attrs\": {\n \"size\": \"20px\"\n }\n }) : [h(\"span\", {\n \"class\": bem('name')\n }, [item.name]), item.subname && h(\"span\", {\n \"class\": bem('subname')\n }, [item.subname])]]);\n };\n\n return h(Popup, _mergeJSXProps([{\n \"class\": bem({\n 'safe-area-inset-bottom': props.safeAreaInsetBottom\n }),\n \"attrs\": {\n \"value\": props.value,\n \"position\": \"bottom\",\n \"overlay\": props.overlay,\n \"lazyRender\": props.lazyRender,\n \"getContainer\": props.getContainer,\n \"closeOnClickOverlay\": props.closeOnClickOverlay\n },\n \"on\": {\n \"input\": function input(value) {\n emit(ctx, 'input', value);\n }\n }\n }, inherit(ctx)]), [title ? Header() : props.actions.map(Option), slots[\"default\"] && h(\"div\", {\n \"class\": bem('content')\n }, [slots[\"default\"]()]), cancelText && h(\"div\", {\n \"class\": bem('cancel'),\n \"on\": {\n \"click\": onCancel\n }\n }, [cancelText])]);\n}\n\nActionsheet.props = _extends({}, PopupMixin.props, {\n title: String,\n actions: Array,\n cancelText: String,\n safeAreaInsetBottom: Boolean,\n overlay: {\n type: Boolean,\n \"default\": true\n },\n closeOnClickOverlay: {\n type: Boolean,\n \"default\": true\n }\n});\nexport default sfc(Actionsheet);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/actionsheet/index.js\n// module id = null\n// module chunks = ","export function isMobile(value) {\n value = value.replace(/[^-|\\d]/g, '');\n return /^((\\+86)|(86))?(1)\\d{10}$/.test(value) || /^0[0-9-]{10,13}$/.test(value);\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/utils/validate/mobile.js\n// module id = null\n// module chunks = ","import { deepAssign } from './deep-assign';\nexport function deepClone(obj) {\n if (Array.isArray(obj)) {\n return obj.map(function (item) {\n return deepClone(item);\n });\n }\n\n if (typeof obj === 'object') {\n return deepAssign({}, obj);\n }\n\n return obj;\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/utils/deep-clone.js\n// module id = null\n// module chunks = ","export var pickerProps = {\n title: String,\n loading: Boolean,\n showToolbar: Boolean,\n cancelButtonText: String,\n confirmButtonText: String,\n visibleItemCount: {\n type: Number,\n \"default\": 5\n },\n itemHeight: {\n type: Number,\n \"default\": 44\n }\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/picker/shared.js\n// module id = null\n// module chunks = ","import { deepClone } from '../utils/deep-clone';\nimport { use, isObj, range } from '../utils';\nimport { preventDefault } from '../utils/event';\nvar DEFAULT_DURATION = 200;\n\nvar _use = use('picker-column'),\n sfc = _use[0],\n bem = _use[1];\n\nexport default sfc({\n props: {\n valueKey: String,\n className: String,\n itemHeight: Number,\n defaultIndex: Number,\n initialOptions: Array,\n visibleItemCount: Number\n },\n data: function data() {\n return {\n startY: 0,\n offset: 0,\n duration: 0,\n startOffset: 0,\n options: deepClone(this.initialOptions),\n currentIndex: this.defaultIndex\n };\n },\n created: function created() {\n this.$parent.children && this.$parent.children.push(this);\n this.setIndex(this.currentIndex);\n },\n destroyed: function destroyed() {\n var children = this.$parent.children;\n children && children.splice(children.indexOf(this), 1);\n },\n watch: {\n defaultIndex: function defaultIndex() {\n this.setIndex(this.defaultIndex);\n }\n },\n computed: {\n count: function count() {\n return this.options.length;\n }\n },\n methods: {\n onTouchStart: function onTouchStart(event) {\n this.startY = event.touches[0].clientY;\n this.startOffset = this.offset;\n this.duration = 0;\n },\n onTouchMove: function onTouchMove(event) {\n preventDefault(event);\n var deltaY = event.touches[0].clientY - this.startY;\n this.offset = range(this.startOffset + deltaY, -(this.count * this.itemHeight), this.itemHeight);\n },\n onTouchEnd: function onTouchEnd() {\n if (this.offset !== this.startOffset) {\n this.duration = DEFAULT_DURATION;\n var index = range(Math.round(-this.offset / this.itemHeight), 0, this.count - 1);\n this.setIndex(index, true);\n }\n },\n adjustIndex: function adjustIndex(index) {\n index = range(index, 0, this.count);\n\n for (var i = index; i < this.count; i++) {\n if (!this.isDisabled(this.options[i])) return i;\n }\n\n for (var _i = index - 1; _i >= 0; _i--) {\n if (!this.isDisabled(this.options[_i])) return _i;\n }\n },\n isDisabled: function isDisabled(option) {\n return isObj(option) && option.disabled;\n },\n getOptionText: function getOptionText(option) {\n return isObj(option) && this.valueKey in option ? option[this.valueKey] : option;\n },\n setIndex: function setIndex(index, userAction) {\n index = this.adjustIndex(index) || 0;\n this.offset = -index * this.itemHeight;\n\n if (index !== this.currentIndex) {\n this.currentIndex = index;\n userAction && this.$emit('change', index);\n }\n },\n setValue: function setValue(value) {\n var options = this.options;\n\n for (var i = 0; i < options.length; i++) {\n if (this.getOptionText(options[i]) === value) {\n return this.setIndex(i);\n }\n }\n },\n getValue: function getValue() {\n return this.options[this.currentIndex];\n }\n },\n render: function render(h) {\n var _this = this;\n\n var itemHeight = this.itemHeight,\n visibleItemCount = this.visibleItemCount;\n var columnStyle = {\n height: itemHeight * visibleItemCount + 'px'\n };\n var baseOffset = itemHeight * (visibleItemCount - 1) / 2;\n var wrapperStyle = {\n transition: this.duration + \"ms\",\n transform: \"translate3d(0, \" + (this.offset + baseOffset) + \"px, 0)\",\n lineHeight: itemHeight + \"px\"\n };\n var optionStyle = {\n height: itemHeight + \"px\"\n };\n return h(\"div\", {\n \"style\": columnStyle,\n \"class\": [bem(), this.className],\n \"on\": {\n \"touchstart\": this.onTouchStart,\n \"touchmove\": this.onTouchMove,\n \"touchend\": this.onTouchEnd,\n \"touchcancel\": this.onTouchEnd\n }\n }, [h(\"ul\", {\n \"style\": wrapperStyle\n }, [this.options.map(function (option, index) {\n return h(\"li\", {\n \"style\": optionStyle,\n \"class\": ['van-ellipsis', bem('item', {\n disabled: _this.isDisabled(option),\n selected: index === _this.currentIndex\n })],\n \"domProps\": {\n \"innerHTML\": _this.getOptionText(option)\n },\n \"on\": {\n \"click\": function click() {\n _this.setIndex(index, true);\n }\n }\n });\n })])]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/picker/PickerColumn.js\n// module id = null\n// module chunks = ","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { use } from '../utils';\nimport { preventDefault } from '../utils/event';\nimport { deepClone } from '../utils/deep-clone';\nimport { pickerProps } from './shared';\nimport Loading from '../loading';\nimport PickerColumn from './PickerColumn';\n\nvar _use = use('picker'),\n sfc = _use[0],\n bem = _use[1],\n t = _use[2];\n\nexport default sfc({\n props: _extends({}, pickerProps, {\n columns: Array,\n defaultIndex: {\n type: Number,\n \"default\": 0\n },\n valueKey: {\n type: String,\n \"default\": 'text'\n }\n }),\n data: function data() {\n return {\n children: []\n };\n },\n computed: {\n simple: function simple() {\n return this.columns.length && !this.columns[0].values;\n }\n },\n watch: {\n columns: function columns() {\n this.setColumns();\n }\n },\n methods: {\n setColumns: function setColumns() {\n var _this = this;\n\n var columns = this.simple ? [{\n values: this.columns\n }] : this.columns;\n columns.forEach(function (column, index) {\n _this.setColumnValues(index, deepClone(column.values));\n });\n },\n emit: function emit(event) {\n if (this.simple) {\n this.$emit(event, this.getColumnValue(0), this.getColumnIndex(0));\n } else {\n this.$emit(event, this.getValues(), this.getIndexes());\n }\n },\n onChange: function onChange(columnIndex) {\n if (this.simple) {\n this.$emit('change', this, this.getColumnValue(0), this.getColumnIndex(0));\n } else {\n this.$emit('change', this, this.getValues(), columnIndex);\n }\n },\n // get column instance by index\n getColumn: function getColumn(index) {\n return this.children[index];\n },\n // get column value by index\n getColumnValue: function getColumnValue(index) {\n var column = this.getColumn(index);\n return column && column.getValue();\n },\n // set column value by index\n setColumnValue: function setColumnValue(index, value) {\n var column = this.getColumn(index);\n column && column.setValue(value);\n },\n // get column option index by column index\n getColumnIndex: function getColumnIndex(columnIndex) {\n return (this.getColumn(columnIndex) || {}).currentIndex;\n },\n // set column option index by column index\n setColumnIndex: function setColumnIndex(columnIndex, optionIndex) {\n var column = this.getColumn(columnIndex);\n column && column.setIndex(optionIndex);\n },\n // get options of column by index\n getColumnValues: function getColumnValues(index) {\n return (this.children[index] || {}).options;\n },\n // set options of column by index\n setColumnValues: function setColumnValues(index, options) {\n var column = this.children[index];\n\n if (column && JSON.stringify(column.options) !== JSON.stringify(options)) {\n column.options = options;\n column.setIndex(0);\n }\n },\n // get values of all columns\n getValues: function getValues() {\n return this.children.map(function (child) {\n return child.getValue();\n });\n },\n // set values of all columns\n setValues: function setValues(values) {\n var _this2 = this;\n\n values.forEach(function (value, index) {\n _this2.setColumnValue(index, value);\n });\n },\n // get indexes of all columns\n getIndexes: function getIndexes() {\n return this.children.map(function (child) {\n return child.currentIndex;\n });\n },\n // set indexes of all columns\n setIndexes: function setIndexes(indexes) {\n var _this3 = this;\n\n indexes.forEach(function (optionIndex, columnIndex) {\n _this3.setColumnIndex(columnIndex, optionIndex);\n });\n },\n onConfirm: function onConfirm() {\n this.emit('confirm');\n },\n onCancel: function onCancel() {\n this.emit('cancel');\n }\n },\n render: function render(h) {\n var _this4 = this;\n\n var itemHeight = this.itemHeight;\n var columns = this.simple ? [this.columns] : this.columns;\n var frameStyle = {\n height: itemHeight + \"px\"\n };\n var columnsStyle = {\n height: itemHeight * this.visibleItemCount + \"px\"\n };\n var Toolbar = this.showToolbar && h(\"div\", {\n \"class\": ['van-hairline--top-bottom', bem('toolbar')]\n }, [this.slots() || [h(\"div\", {\n \"class\": bem('cancel'),\n \"on\": {\n \"click\": this.onCancel\n }\n }, [this.cancelButtonText || t('cancel')]), this.slots('title') || this.title && h(\"div\", {\n \"class\": ['van-ellipsis', bem('title')]\n }, [this.title]), h(\"div\", {\n \"class\": bem('confirm'),\n \"on\": {\n \"click\": this.onConfirm\n }\n }, [this.confirmButtonText || t('confirm')])]]);\n return h(\"div\", {\n \"class\": bem()\n }, [Toolbar, this.loading ? h(\"div\", {\n \"class\": bem('loading')\n }, [h(Loading)]) : h(), h(\"div\", {\n \"class\": bem('columns'),\n \"style\": columnsStyle,\n \"on\": {\n \"touchmove\": preventDefault\n }\n }, [columns.map(function (item, index) {\n return h(PickerColumn, {\n \"attrs\": {\n \"valueKey\": _this4.valueKey,\n \"className\": item.className,\n \"itemHeight\": _this4.itemHeight,\n \"defaultIndex\": item.defaultIndex || _this4.defaultIndex,\n \"visibleItemCount\": _this4.visibleItemCount,\n \"initialOptions\": _this4.simple ? item : item.values\n },\n \"on\": {\n \"change\": function change() {\n _this4.onChange(index);\n }\n }\n });\n }), h(\"div\", {\n \"class\": ['van-hairline--top-bottom', bem('frame')],\n \"style\": frameStyle\n })])]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/picker/index.js\n// module id = null\n// module chunks = ","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { use } from '../utils';\nimport Picker from '../picker';\nimport { pickerProps } from '../picker/shared';\n\nvar _use = use('area'),\n sfc = _use[0],\n bem = _use[1];\n\nvar COLUMNSPLACEHOLDERCODE = '000000';\nexport default sfc({\n props: _extends({}, pickerProps, {\n value: String,\n areaList: {\n type: Object,\n \"default\": function _default() {\n return {};\n }\n },\n columnsNum: {\n type: [String, Number],\n \"default\": 3\n },\n columnsPlaceholder: {\n type: Array,\n \"default\": function _default() {\n return [];\n }\n }\n }),\n data: function data() {\n return {\n code: this.value,\n columns: [{\n values: []\n }, {\n values: []\n }, {\n values: []\n }]\n };\n },\n computed: {\n province: function province() {\n return this.areaList.province_list || {};\n },\n city: function city() {\n return this.areaList.city_list || {};\n },\n county: function county() {\n return this.areaList.county_list || {};\n },\n displayColumns: function displayColumns() {\n return this.columns.slice(0, +this.columnsNum);\n },\n typeToColumnsPlaceholder: function typeToColumnsPlaceholder() {\n return {\n province: this.columnsPlaceholder[0] || '',\n city: this.columnsPlaceholder[1] || '',\n county: this.columnsPlaceholder[2] || ''\n };\n }\n },\n watch: {\n value: function value() {\n this.code = this.value;\n this.setValues();\n },\n areaList: {\n deep: true,\n handler: function handler() {\n this.setValues();\n }\n },\n columnsNum: function columnsNum() {\n var _this = this;\n\n this.$nextTick(function () {\n _this.setValues();\n });\n }\n },\n mounted: function mounted() {\n this.setValues();\n },\n methods: {\n // get list by code\n getList: function getList(type, code) {\n var result = [];\n\n if (type !== 'province' && !code) {\n return result;\n }\n\n var list = this[type];\n result = Object.keys(list).map(function (listCode) {\n return {\n code: listCode,\n name: list[listCode]\n };\n });\n\n if (code) {\n // oversea code\n if (code[0] === '9' && type === 'city') {\n code = '9';\n }\n\n result = result.filter(function (item) {\n return item.code.indexOf(code) === 0;\n });\n }\n\n if (this.typeToColumnsPlaceholder[type] && result.length) {\n // set columns placeholder\n var codeFill = type === 'province' ? '' : type === 'city' ? COLUMNSPLACEHOLDERCODE.slice(2, 4) : COLUMNSPLACEHOLDERCODE.slice(4, 6);\n result.unshift({\n code: \"\" + code + codeFill,\n name: this.typeToColumnsPlaceholder[type]\n });\n }\n\n return result;\n },\n // get index by code\n getIndex: function getIndex(type, code) {\n var compareNum = type === 'province' ? 2 : type === 'city' ? 4 : 6;\n var list = this.getList(type, code.slice(0, compareNum - 2)); // oversea code\n\n if (code[0] === '9' && type === 'province') {\n compareNum = 1;\n }\n\n code = code.slice(0, compareNum);\n\n for (var i = 0; i < list.length; i++) {\n if (list[i].code.slice(0, compareNum) === code) {\n return i;\n }\n }\n\n return 0;\n },\n // parse output columns data\n parseOutputValues: function parseOutputValues(values) {\n var _this2 = this;\n\n return values.map(function (value, index) {\n if (value === void 0) {\n value = {};\n }\n\n value = JSON.parse(JSON.stringify(value));\n\n if (!value.code || value.name === _this2.columnsPlaceholder[index]) {\n value.code = '';\n value.name = '';\n }\n\n return value;\n });\n },\n onChange: function onChange(picker, values, index) {\n this.code = values[index].code;\n this.setValues();\n var getValues = picker.getValues();\n getValues = this.parseOutputValues(getValues);\n this.$emit('change', picker, getValues, index);\n },\n onConfirm: function onConfirm(values, index) {\n values = this.parseOutputValues(values);\n this.setValues();\n this.$emit('confirm', values, index);\n },\n setValues: function setValues() {\n var code = this.code;\n\n if (!code) {\n if (this.columnsPlaceholder.length) {\n code = COLUMNSPLACEHOLDERCODE;\n } else if (Object.keys(this.county)[0]) {\n code = Object.keys(this.county)[0];\n } else {\n code = '';\n }\n }\n\n var picker = this.$refs.picker;\n var province = this.getList('province');\n var city = this.getList('city', code.slice(0, 2));\n\n if (!picker) {\n return;\n }\n\n picker.setColumnValues(0, province);\n picker.setColumnValues(1, city);\n\n if (city.length && code.slice(2, 4) === '00') {\n code = city[0].code;\n }\n\n picker.setColumnValues(2, this.getList('county', code.slice(0, 4)));\n picker.setIndexes([this.getIndex('province', code), this.getIndex('city', code), this.getIndex('county', code)]);\n },\n getValues: function getValues() {\n var picker = this.$refs.picker;\n var getValues = picker ? picker.getValues() : [];\n getValues = this.parseOutputValues(getValues);\n return getValues.filter(function (value) {\n return !!value;\n });\n },\n getArea: function getArea() {\n var values = this.getValues();\n var area = {\n code: '',\n country: '',\n province: '',\n city: '',\n county: ''\n };\n\n if (!values.length) {\n return area;\n }\n\n var names = values.map(function (item) {\n return item.name;\n });\n var filterCodeValues = values.filter(function (value) {\n return !!value.code;\n });\n area.code = filterCodeValues.length ? filterCodeValues[filterCodeValues.length - 1].code : '';\n\n if (area.code[0] === '9') {\n area.country = names[1] || '';\n area.province = names[2] || '';\n } else {\n area.province = names[0] || '';\n area.city = names[1] || '';\n area.county = names[2] || '';\n }\n\n return area;\n },\n reset: function reset() {\n this.code = '';\n this.setValues();\n }\n },\n render: function render(h) {\n var on = _extends({}, this.$listeners, {\n change: this.onChange,\n confirm: this.onConfirm\n });\n\n return h(Picker, {\n \"ref\": \"picker\",\n \"class\": bem(),\n \"attrs\": {\n \"showToolbar\": true,\n \"valueKey\": \"name\",\n \"title\": this.title,\n \"loading\": this.loading,\n \"columns\": this.displayColumns,\n \"itemHeight\": this.itemHeight,\n \"visibleItemCount\": this.visibleItemCount,\n \"cancelButtonText\": this.cancelButtonText,\n \"confirmButtonText\": this.confirmButtonText\n },\n \"on\": _extends({}, on)\n });\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/area/index.js\n// module id = null\n// module chunks = ","export var cellProps = {\n icon: String,\n size: String,\n center: Boolean,\n isLink: Boolean,\n required: Boolean,\n titleStyle: null,\n titleClass: null,\n valueClass: null,\n labelClass: null,\n title: [String, Number],\n value: [String, Number],\n label: [String, Number],\n border: {\n type: Boolean,\n \"default\": true\n }\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/cell/shared.js\n// module id = null\n// module chunks = ","/**\n * Vue Router support\n */\nexport function route(router, config) {\n var to = config.to,\n url = config.url,\n replace = config.replace;\n\n if (to && router) {\n router[replace ? 'replace' : 'push'](to);\n } else if (url) {\n replace ? location.replace(url) : location.href = url;\n }\n}\nexport function functionalRoute(context) {\n route(context.parent && context.parent.$router, context.props);\n}\nexport var routeProps = {\n url: String,\n replace: Boolean,\n to: [String, Object]\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/utils/router.js\n// module id = null\n// module chunks = ","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use, isDef } from '../utils';\nimport { cellProps } from './shared';\nimport { emit, inherit } from '../utils/functional';\nimport { routeProps, functionalRoute } from '../utils/router';\nimport Icon from '../icon'; // Types\n\nvar _use = use('cell'),\n sfc = _use[0],\n bem = _use[1];\n\nfunction Cell(h, props, slots, ctx) {\n var icon = props.icon,\n size = props.size,\n title = props.title,\n label = props.label,\n value = props.value,\n isLink = props.isLink,\n arrowDirection = props.arrowDirection;\n var showTitle = slots.title || isDef(title);\n var showValue = slots[\"default\"] || isDef(value);\n var showLabel = slots.label || isDef(label);\n var Label = showLabel && h(\"div\", {\n \"class\": [bem('label'), props.labelClass]\n }, [slots.label ? slots.label() : label]);\n var Title = showTitle && h(\"div\", {\n \"class\": [bem('title'), props.titleClass],\n \"style\": props.titleStyle\n }, [slots.title ? slots.title() : h(\"span\", [title]), Label]);\n var Value = showValue && h(\"div\", {\n \"class\": [bem('value', {\n alone: !slots.title && !title\n }), props.valueClass]\n }, [slots[\"default\"] ? slots[\"default\"]() : h(\"span\", [value])]);\n var LeftIcon = slots.icon ? slots.icon() : icon && h(Icon, {\n \"class\": bem('left-icon'),\n \"attrs\": {\n \"name\": icon\n }\n });\n var rightIconSlot = slots['right-icon'];\n var RightIcon = rightIconSlot ? rightIconSlot() : isLink && h(Icon, {\n \"class\": bem('right-icon'),\n \"attrs\": {\n \"name\": arrowDirection ? \"arrow-\" + arrowDirection : 'arrow'\n }\n });\n\n var onClick = function onClick(event) {\n emit(ctx, 'click', event);\n functionalRoute(ctx);\n };\n\n var classes = {\n center: props.center,\n required: props.required,\n borderless: !props.border,\n clickable: isLink || props.clickable\n };\n\n if (size) {\n classes[size] = size;\n }\n\n return h(\"div\", _mergeJSXProps([{\n \"class\": bem(classes),\n \"on\": {\n \"click\": onClick\n }\n }, inherit(ctx)]), [LeftIcon, Title, Value, RightIcon, slots.extra && slots.extra()]);\n}\n\nCell.props = _extends({}, cellProps, routeProps, {\n clickable: Boolean,\n arrowDirection: String\n});\nexport default sfc(Cell);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/cell/index.js\n// module id = null\n// module chunks = ","export function isNumber(value) {\n return /^\\d+$/.test(value);\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/utils/validate/number.js\n// module id = null\n// module chunks = ","import _mergeJSXProps2 from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport Icon from '../icon';\nimport Cell from '../cell';\nimport { cellProps } from '../cell/shared';\nimport { use, isObj, isDef, isIOS } from '../utils';\nimport { preventDefault } from '../utils/event';\nimport { getRootScrollTop } from '../utils/scroll';\nimport { isNumber } from '../utils/validate/number';\n\nvar _use = use('field'),\n sfc = _use[0],\n bem = _use[1];\n\nexport default sfc({\n inheritAttrs: false,\n props: _extends({}, cellProps, {\n error: Boolean,\n leftIcon: String,\n rightIcon: String,\n readonly: Boolean,\n clearable: Boolean,\n labelWidth: [String, Number],\n labelAlign: String,\n inputAlign: String,\n onIconClick: Function,\n autosize: [Boolean, Object],\n errorMessage: String,\n errorMessageAlign: String,\n type: {\n type: String,\n \"default\": 'text'\n }\n }),\n data: function data() {\n return {\n focused: false\n };\n },\n watch: {\n value: function value() {\n this.$nextTick(this.adjustSize);\n }\n },\n mounted: function mounted() {\n this.format();\n this.$nextTick(this.adjustSize);\n },\n computed: {\n showClear: function showClear() {\n return this.clearable && this.focused && this.value !== '' && isDef(this.value) && !this.readonly;\n },\n listeners: function listeners() {\n return _extends({}, this.$listeners, {\n input: this.onInput,\n keypress: this.onKeypress,\n focus: this.onFocus,\n blur: this.onBlur\n });\n },\n labelStyle: function labelStyle() {\n var labelWidth = this.labelWidth;\n\n if (labelWidth) {\n var width = isNumber(String(labelWidth)) ? labelWidth + \"px\" : labelWidth;\n return {\n maxWidth: width,\n minWidth: width\n };\n }\n }\n },\n methods: {\n focus: function focus() {\n this.$refs.input && this.$refs.input.focus();\n },\n blur: function blur() {\n this.$refs.input && this.$refs.input.blur();\n },\n // native maxlength not work when type = number\n format: function format(target) {\n if (target === void 0) {\n target = this.$refs.input;\n }\n\n var _target = target,\n value = _target.value;\n var maxlength = this.$attrs.maxlength;\n\n if (this.type === 'number' && isDef(maxlength) && value.length > maxlength) {\n value = value.slice(0, maxlength);\n target.value = value;\n }\n\n return value;\n },\n onInput: function onInput(event) {\n this.$emit('input', this.format(event.target));\n },\n onFocus: function onFocus(event) {\n this.focused = true;\n this.$emit('focus', event); // hack for safari\n\n /* istanbul ignore if */\n\n if (this.readonly) {\n this.blur();\n }\n },\n onBlur: function onBlur(event) {\n this.focused = false;\n this.$emit('blur', event); // Hack for iOS12 page scroll\n // https://developers.weixin.qq.com/community/develop/doc/00044ae90742f8c82fb78fcae56800\n\n /* istanbul ignore next */\n\n if (isIOS()) {\n window.scrollTo(0, getRootScrollTop());\n }\n },\n onClickLeftIcon: function onClickLeftIcon() {\n this.$emit('click-left-icon');\n },\n onClickRightIcon: function onClickRightIcon() {\n // compatible old version\n this.$emit('click-icon');\n this.$emit('click-right-icon');\n this.onIconClick && this.onIconClick();\n },\n onClear: function onClear(event) {\n preventDefault(event);\n this.$emit('input', '');\n this.$emit('clear');\n },\n onKeypress: function onKeypress(event) {\n if (this.type === 'number') {\n var keyCode = event.keyCode;\n var allowPoint = String(this.value).indexOf('.') === -1;\n var isValidKey = keyCode >= 48 && keyCode <= 57 || keyCode === 46 && allowPoint || keyCode === 45;\n\n if (!isValidKey) {\n preventDefault(event);\n }\n } // trigger blur after click keyboard search button\n\n /* istanbul ignore next */\n\n\n if (this.type === 'search' && event.keyCode === 13) {\n this.blur();\n }\n\n this.$emit('keypress', event);\n },\n adjustSize: function adjustSize() {\n var input = this.$refs.input;\n\n if (!(this.type === 'textarea' && this.autosize) || !input) {\n return;\n }\n\n input.style.height = 'auto';\n var height = input.scrollHeight;\n\n if (isObj(this.autosize)) {\n var _this$autosize = this.autosize,\n maxHeight = _this$autosize.maxHeight,\n minHeight = _this$autosize.minHeight;\n\n if (maxHeight) {\n height = Math.min(height, maxHeight);\n }\n\n if (minHeight) {\n height = Math.max(height, minHeight);\n }\n }\n\n if (height) {\n input.style.height = height + 'px';\n }\n },\n renderInput: function renderInput() {\n var h = this.$createElement;\n var inputProps = {\n ref: 'input',\n \"class\": bem('control', this.inputAlign),\n domProps: {\n value: this.value\n },\n attrs: _extends({}, this.$attrs, {\n readonly: this.readonly\n }),\n on: this.listeners\n };\n\n if (this.type === 'textarea') {\n return h(\"textarea\", _mergeJSXProps([{}, inputProps]));\n }\n\n return h(\"input\", _mergeJSXProps2([{\n \"attrs\": {\n \"type\": this.type\n }\n }, inputProps]));\n },\n renderLeftIcon: function renderLeftIcon() {\n var h = this.$createElement;\n var showLeftIcon = this.slots('left-icon') || this.leftIcon;\n\n if (showLeftIcon) {\n return h(\"div\", {\n \"class\": bem('left-icon'),\n \"on\": {\n \"click\": this.onClickLeftIcon\n }\n }, [this.slots('left-icon') || h(Icon, {\n \"attrs\": {\n \"name\": this.leftIcon\n }\n })]);\n }\n },\n renderRightIcon: function renderRightIcon() {\n var h = this.$createElement;\n var slots = this.slots;\n var showRightIcon = slots('right-icon') || slots('icon') || this.rightIcon || this.icon;\n\n if (showRightIcon) {\n return h(\"div\", {\n \"class\": bem('right-icon'),\n \"on\": {\n \"click\": this.onClickRightIcon\n }\n }, [slots('right-icon') || slots('icon') || h(Icon, {\n \"attrs\": {\n \"name\": this.rightIcon || this.icon\n }\n })]);\n }\n }\n },\n render: function render(h) {\n var _bem;\n\n var slots = this.slots,\n labelAlign = this.labelAlign;\n var scopedSlots = {\n icon: this.renderLeftIcon\n };\n\n if (slots('label')) {\n scopedSlots.title = function () {\n return slots('label');\n };\n }\n\n return h(Cell, {\n \"attrs\": {\n \"icon\": this.leftIcon,\n \"size\": this.size,\n \"title\": this.label,\n \"center\": this.center,\n \"border\": this.border,\n \"isLink\": this.isLink,\n \"required\": this.required,\n \"titleStyle\": this.labelStyle,\n \"titleClass\": bem('label', labelAlign)\n },\n \"class\": bem((_bem = {\n error: this.error,\n disabled: this.$attrs.disabled\n }, _bem[\"label-\" + labelAlign] = labelAlign, _bem['min-height'] = this.type === 'textarea' && !this.autosize, _bem)),\n \"scopedSlots\": scopedSlots\n }, [h(\"div\", {\n \"class\": bem('body')\n }, [this.renderInput(), this.showClear && h(Icon, {\n \"attrs\": {\n \"name\": \"clear\"\n },\n \"class\": bem('clear'),\n \"on\": {\n \"touchstart\": this.onClear\n }\n }), this.renderRightIcon(), slots('button') && h(\"div\", {\n \"class\": bem('button')\n }, [slots('button')])]), this.errorMessage && h(\"div\", {\n \"class\": bem('error-message', this.errorMessageAlign)\n }, [this.errorMessage])]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/field/index.js\n// module id = null\n// module chunks = ","import { use, isDef } from '../utils';\nimport { PopupMixin } from '../mixins/popup';\nimport Icon from '../icon';\nimport Loading from '../loading';\n\nvar _use = use('toast'),\n sfc = _use[0],\n bem = _use[1];\n\nvar STYLE = ['success', 'fail', 'loading'];\nexport default sfc({\n mixins: [PopupMixin],\n props: {\n className: null,\n forbidClick: Boolean,\n message: [String, Number],\n type: {\n type: String,\n \"default\": 'text'\n },\n loadingType: {\n type: String,\n \"default\": 'circular'\n },\n position: {\n type: String,\n \"default\": 'middle'\n },\n lockScroll: {\n type: Boolean,\n \"default\": false\n }\n },\n data: function data() {\n return {\n clickable: false\n };\n },\n mounted: function mounted() {\n this.toggleClickale();\n },\n destroyed: function destroyed() {\n this.toggleClickale();\n },\n watch: {\n value: function value() {\n this.toggleClickale();\n },\n forbidClick: function forbidClick() {\n this.toggleClickale();\n }\n },\n methods: {\n toggleClickale: function toggleClickale() {\n var clickable = this.value && this.forbidClick;\n\n if (this.clickable !== clickable) {\n this.clickable = clickable;\n var action = clickable ? 'add' : 'remove';\n document.body.classList[action]('van-toast--unclickable');\n }\n }\n },\n render: function render(h) {\n var _this = this;\n\n var type = this.type,\n message = this.message;\n var style = STYLE.indexOf(type) !== -1 ? 'default' : type;\n\n var Content = function Content() {\n switch (style) {\n case 'text':\n return h(\"div\", [message]);\n\n case 'html':\n return h(\"div\", {\n \"domProps\": {\n \"innerHTML\": message\n }\n });\n\n default:\n return [type === 'loading' ? h(Loading, {\n \"attrs\": {\n \"color\": \"white\",\n \"type\": _this.loadingType\n }\n }) : h(Icon, {\n \"class\": bem('icon'),\n \"attrs\": {\n \"name\": type\n }\n }), isDef(message) && h(\"div\", {\n \"class\": bem('text')\n }, [message])];\n }\n };\n\n return h(\"transition\", {\n \"attrs\": {\n \"name\": \"van-fade\"\n }\n }, [h(\"div\", {\n \"directives\": [{\n name: \"show\",\n value: this.value\n }],\n \"class\": [bem([style, this.position]), this.className]\n }, [Content()])]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/toast/Toast.js\n// module id = null\n// module chunks = ","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport Vue from 'vue';\nimport VueToast from './Toast';\nimport { isObj, isServer } from '../utils';\nvar defaultOptions = {\n type: 'text',\n mask: false,\n value: true,\n message: '',\n className: '',\n onClose: null,\n duration: 3000,\n position: 'middle',\n forbidClick: false,\n loadingType: 'circular',\n getContainer: 'body',\n overlayStyle: null\n};\n\nvar parseOptions = function parseOptions(message) {\n return isObj(message) ? message : {\n message: message\n };\n};\n\nvar queue = [];\nvar multiple = false;\n\nvar currentOptions = _extends({}, defaultOptions);\n\nfunction createInstance() {\n /* istanbul ignore if */\n if (isServer) {\n return {};\n }\n\n if (!queue.length || multiple) {\n var toast = new (Vue.extend(VueToast))({\n el: document.createElement('div')\n });\n queue.push(toast);\n }\n\n return queue[queue.length - 1];\n} // transform toast options to popup props\n\n\nfunction transformer(options) {\n options.overlay = options.mask;\n return options;\n}\n\nfunction Toast(options) {\n if (options === void 0) {\n options = {};\n }\n\n var toast = createInstance(); // should add z-index if previous toast has not disappeared\n\n if (toast.value) {\n toast.updateZIndex();\n }\n\n options = _extends({}, currentOptions, parseOptions(options), {\n clear: function clear() {\n toast.value = false;\n\n if (options.onClose) {\n options.onClose();\n }\n\n if (multiple && !isServer) {\n clearTimeout(toast.timer);\n queue = queue.filter(function (item) {\n return item !== toast;\n });\n var parent = toast.$el.parentNode;\n\n if (parent) {\n parent.removeChild(toast.$el);\n }\n\n toast.$destroy();\n }\n }\n });\n\n _extends(toast, transformer(options));\n\n clearTimeout(toast.timer);\n\n if (options.duration > 0) {\n toast.timer = setTimeout(function () {\n toast.clear();\n }, options.duration);\n }\n\n return toast;\n}\n\nvar createMethod = function createMethod(type) {\n return function (options) {\n return Toast(_extends({\n type: type\n }, parseOptions(options)));\n };\n};\n\n['loading', 'success', 'fail'].forEach(function (method) {\n Toast[method] = createMethod(method);\n});\n\nToast.clear = function (all) {\n if (queue.length) {\n if (all) {\n queue.forEach(function (toast) {\n toast.clear();\n });\n queue = [];\n } else if (!multiple) {\n queue[0].clear();\n } else {\n queue.shift().clear();\n }\n }\n};\n\nToast.setDefaultOptions = function (options) {\n _extends(currentOptions, options);\n};\n\nToast.resetDefaultOptions = function () {\n currentOptions = _extends({}, defaultOptions);\n};\n\nToast.allowMultiple = function (value) {\n if (value === void 0) {\n value = true;\n }\n\n multiple = value;\n};\n\nToast.install = function () {\n Vue.use(VueToast);\n};\n\nVue.prototype.$toast = Toast;\nexport default Toast;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/toast/index.js\n// module id = null\n// module chunks = ","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use } from '../utils';\nimport { emit, inherit } from '../utils/functional';\nimport { routeProps, functionalRoute } from '../utils/router';\nimport Loading from '../loading'; // Types\n\nvar _use = use('button'),\n sfc = _use[0],\n bem = _use[1];\n\nfunction Button(h, props, slots, ctx) {\n var tag = props.tag,\n type = props.type,\n disabled = props.disabled,\n loading = props.loading,\n hairline = props.hairline,\n loadingText = props.loadingText;\n\n var onClick = function onClick(event) {\n if (!loading && !disabled) {\n emit(ctx, 'click', event);\n functionalRoute(ctx);\n }\n };\n\n var onTouchstart = function onTouchstart(event) {\n emit(ctx, 'touchstart', event);\n };\n\n var classes = [bem([type, props.size, {\n loading: loading,\n disabled: disabled,\n hairline: hairline,\n block: props.block,\n plain: props.plain,\n round: props.round,\n square: props.square,\n 'bottom-action': props.bottomAction\n }]), {\n 'van-hairline--surround': hairline\n }];\n return h(tag, _mergeJSXProps([{\n \"class\": classes,\n \"attrs\": {\n \"type\": props.nativeType,\n \"disabled\": disabled\n },\n \"on\": {\n \"click\": onClick,\n \"touchstart\": onTouchstart\n }\n }, inherit(ctx)]), [loading ? [h(Loading, {\n \"attrs\": {\n \"size\": props.loadingSize,\n \"color\": type === 'default' ? undefined : ''\n }\n }), loadingText && h(\"span\", {\n \"class\": bem('loading-text')\n }, [loadingText])] : h(\"span\", {\n \"class\": bem('text')\n }, [slots[\"default\"] ? slots[\"default\"]() : props.text])]);\n}\n\nButton.props = _extends({}, routeProps, {\n text: String,\n block: Boolean,\n plain: Boolean,\n round: Boolean,\n square: Boolean,\n loading: Boolean,\n hairline: Boolean,\n disabled: Boolean,\n nativeType: String,\n loadingText: String,\n bottomAction: Boolean,\n tag: {\n type: String,\n \"default\": 'button'\n },\n type: {\n type: String,\n \"default\": 'default'\n },\n size: {\n type: String,\n \"default\": 'normal'\n },\n loadingSize: {\n type: String,\n \"default\": '20px'\n }\n});\nexport default sfc(Button);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/button/index.js\n// module id = null\n// module chunks = ","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport Vue from 'vue';\nimport VanDialog from './Dialog';\nimport { isServer, isInDocument } from '../utils';\nvar instance;\n\nfunction initInstance() {\n if (instance) {\n instance.$destroy();\n }\n\n instance = new (Vue.extend(VanDialog))({\n el: document.createElement('div'),\n // avoid missing animation when first rendered\n propsData: {\n lazyRender: false\n }\n });\n instance.$on('input', function (value) {\n instance.value = value;\n });\n}\n\nfunction Dialog(options) {\n /* istanbul ignore if */\n if (isServer) {\n return Promise.resolve();\n }\n\n return new Promise(function (resolve, reject) {\n if (!instance || !isInDocument(instance.$el)) {\n initInstance();\n }\n\n _extends(instance, Dialog.currentOptions, options, {\n resolve: resolve,\n reject: reject\n });\n });\n}\n\nDialog.defaultOptions = {\n value: true,\n title: '',\n message: '',\n overlay: true,\n className: '',\n lockScroll: true,\n beforeClose: null,\n messageAlign: '',\n getContainer: 'body',\n cancelButtonText: '',\n cancelButtonColor: null,\n confirmButtonText: '',\n confirmButtonColor: null,\n showConfirmButton: true,\n showCancelButton: false,\n closeOnClickOverlay: false,\n callback: function callback(action) {\n instance[action === 'confirm' ? 'resolve' : 'reject'](action);\n }\n};\nDialog.alert = Dialog;\n\nDialog.confirm = function (options) {\n return Dialog(_extends({\n showCancelButton: true\n }, options));\n};\n\nDialog.close = function () {\n if (instance) {\n instance.value = false;\n }\n};\n\nDialog.setDefaultOptions = function (options) {\n _extends(Dialog.currentOptions, options);\n};\n\nDialog.resetDefaultOptions = function () {\n Dialog.currentOptions = _extends({}, Dialog.defaultOptions);\n};\n\nDialog.resetDefaultOptions();\n\nDialog.install = function () {\n Vue.use(VanDialog);\n};\n\nVue.prototype.$dialog = Dialog;\nexport default Dialog;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/dialog/index.js\n// module id = null\n// module chunks = ","import { use } from '../utils';\nimport { PopupMixin } from '../mixins/popup';\nimport Button from '../button';\n\nvar _use = use('dialog'),\n sfc = _use[0],\n bem = _use[1],\n t = _use[2];\n\nexport default sfc({\n mixins: [PopupMixin],\n props: {\n title: String,\n message: String,\n className: null,\n callback: Function,\n beforeClose: Function,\n messageAlign: String,\n cancelButtonText: String,\n cancelButtonColor: String,\n confirmButtonText: String,\n confirmButtonColor: String,\n showCancelButton: Boolean,\n showConfirmButton: {\n type: Boolean,\n \"default\": true\n },\n overlay: {\n type: Boolean,\n \"default\": true\n },\n closeOnClickOverlay: {\n type: Boolean,\n \"default\": false\n }\n },\n data: function data() {\n return {\n loading: {\n confirm: false,\n cancel: false\n }\n };\n },\n methods: {\n onClickOverlay: function onClickOverlay() {\n this.handleAction('overlay');\n },\n handleAction: function handleAction(action) {\n var _this = this;\n\n this.$emit(action);\n\n if (this.beforeClose) {\n this.loading[action] = true;\n this.beforeClose(action, function (state) {\n if (state !== false) {\n _this.onClose(action);\n }\n\n _this.loading[action] = false;\n });\n } else {\n this.onClose(action);\n }\n },\n onClose: function onClose(action) {\n this.close();\n\n if (this.callback) {\n this.callback(action);\n }\n }\n },\n render: function render(h) {\n var _bem,\n _this2 = this;\n\n if (!this.shouldRender) {\n return;\n }\n\n var title = this.title,\n message = this.message,\n messageAlign = this.messageAlign;\n var children = this.slots();\n var Title = title && h(\"div\", {\n \"class\": bem('header', {\n isolated: !message && !children\n })\n }, [title]);\n var Content = (children || message) && h(\"div\", {\n \"class\": bem('content')\n }, [children || h(\"div\", {\n \"domProps\": {\n \"innerHTML\": message\n },\n \"class\": bem('message', (_bem = {\n 'has-title': title\n }, _bem[messageAlign] = messageAlign, _bem))\n })]);\n var hasButtons = this.showCancelButton && this.showConfirmButton;\n var ButtonGroup = h(\"div\", {\n \"class\": ['van-hairline--top', bem('footer', {\n buttons: hasButtons\n })]\n }, [this.showCancelButton && h(Button, {\n \"attrs\": {\n \"size\": \"large\",\n \"loading\": this.loading.cancel,\n \"text\": this.cancelButtonText || t('cancel')\n },\n \"class\": bem('cancel'),\n \"style\": {\n color: this.cancelButtonColor\n },\n \"on\": {\n \"click\": function click() {\n _this2.handleAction('cancel');\n }\n }\n }), this.showConfirmButton && h(Button, {\n \"attrs\": {\n \"size\": \"large\",\n \"loading\": this.loading.confirm,\n \"text\": this.confirmButtonText || t('confirm')\n },\n \"class\": [bem('confirm'), {\n 'van-hairline--left': hasButtons\n }],\n \"style\": {\n color: this.confirmButtonColor\n },\n \"on\": {\n \"click\": function click() {\n _this2.handleAction('confirm');\n }\n }\n })]);\n return h(\"transition\", {\n \"attrs\": {\n \"name\": \"van-dialog-bounce\"\n }\n }, [h(\"div\", {\n \"directives\": [{\n name: \"show\",\n value: this.value\n }],\n \"class\": [bem(), this.className]\n }, [Title, Content, ButtonGroup])]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/dialog/Dialog.js\n// module id = null\n// module chunks = ","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { use, isAndroid } from '../utils';\nimport Cell from '../cell';\nimport Field from '../field';\n\nvar _use = use('address-edit-detail'),\n sfc = _use[0],\n bem = _use[1],\n t = _use[2];\n\nvar android = isAndroid();\nexport default sfc({\n props: {\n value: String,\n error: Boolean,\n focused: Boolean,\n detailRows: Number,\n searchResult: Array,\n showSearchResult: Boolean\n },\n methods: {\n onSelect: function onSelect(express) {\n this.$emit('select-search', express);\n this.$emit('input', ((express.address || '') + \" \" + (express.name || '')).trim());\n },\n onFinish: function onFinish() {\n this.$refs.field.blur();\n },\n renderFinish: function renderFinish() {\n var h = this.$createElement;\n var show = this.value && this.focused && android;\n\n if (show) {\n return h(\"div\", {\n \"class\": bem('finish'),\n \"on\": {\n \"click\": this.onFinish\n }\n }, [t('complete')]);\n }\n },\n renderSearchResult: function renderSearchResult() {\n var _this = this;\n\n var h = this.$createElement;\n var searchResult = this.searchResult;\n var show = this.focused && searchResult && this.showSearchResult;\n\n if (show) {\n return searchResult.map(function (express) {\n return h(Cell, {\n \"key\": express.name + express.address,\n \"attrs\": {\n \"title\": express.name,\n \"label\": express.address,\n \"icon\": \"location-o\",\n \"clickable\": true\n },\n \"on\": {\n \"click\": function click() {\n _this.onSelect(express);\n }\n }\n });\n });\n }\n }\n },\n render: function render(h) {\n return h(Cell, {\n \"class\": bem()\n }, [h(Field, {\n \"attrs\": {\n \"autosize\": true,\n \"rows\": this.detailRows,\n \"clearable\": !android,\n \"type\": \"textarea\",\n \"maxlength\": \"200\",\n \"value\": this.value,\n \"error\": this.error,\n \"label\": t('label'),\n \"placeholder\": t('placeholder')\n },\n \"ref\": \"field\",\n \"scopedSlots\": {\n icon: this.renderFinish\n },\n \"on\": _extends({}, this.$listeners)\n }), this.renderSearchResult()]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/address-edit/Detail.js\n// module id = null\n// module chunks = ","/**\n * Common Switch Props\n */\nexport var switchProps = {\n value: null,\n loading: Boolean,\n disabled: Boolean,\n activeColor: String,\n inactiveColor: String,\n activeValue: {\n type: null,\n \"default\": true\n },\n inactiveValue: {\n type: null,\n \"default\": false\n },\n size: {\n type: String,\n \"default\": '30px'\n }\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/switch/shared.js\n// module id = null\n// module chunks = ","import _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use } from '../utils';\nimport Loading from '../loading';\nimport { switchProps } from './shared';\nimport { emit, inherit } from '../utils/functional'; // Types\n\nvar _use = use('switch'),\n sfc = _use[0],\n bem = _use[1];\n\nfunction Switch(h, props, slots, ctx) {\n var value = props.value,\n loading = props.loading,\n disabled = props.disabled,\n activeValue = props.activeValue,\n inactiveValue = props.inactiveValue;\n var checked = value === activeValue;\n var style = {\n fontSize: props.size,\n backgroundColor: checked ? props.activeColor : props.inactiveColor\n };\n\n var onClick = function onClick() {\n if (!disabled && !loading) {\n var newValue = checked ? inactiveValue : activeValue;\n emit(ctx, 'input', newValue);\n emit(ctx, 'change', newValue);\n }\n };\n\n return h(\"div\", _mergeJSXProps([{\n \"class\": bem({\n on: checked,\n disabled: disabled\n }),\n \"style\": style,\n \"on\": {\n \"click\": onClick\n }\n }, inherit(ctx)]), [h(\"div\", {\n \"class\": bem('node')\n }, [loading && h(Loading, {\n \"class\": bem('loading')\n })])]);\n}\n\nSwitch.props = switchProps;\nexport default sfc(Switch);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/switch/index.js\n// module id = null\n// module chunks = ","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use } from '../utils';\nimport { inherit } from '../utils/functional';\nimport Cell from '../cell';\nimport Switch from '../switch';\nimport { switchProps } from '../switch/shared'; // Types\n\nvar _use = use('switch-cell'),\n sfc = _use[0],\n bem = _use[1];\n\nfunction SwitchCell(h, props, slots, ctx) {\n return h(Cell, _mergeJSXProps([{\n \"attrs\": {\n \"center\": true,\n \"title\": props.title,\n \"border\": props.border\n },\n \"class\": bem()\n }, inherit(ctx)]), [h(Switch, {\n \"props\": _extends({}, props),\n \"on\": _extends({}, ctx.listeners)\n })]);\n}\n\nSwitchCell.props = _extends({}, switchProps, {\n title: String,\n border: Boolean,\n size: {\n type: String,\n \"default\": '24px'\n }\n});\nexport default sfc(SwitchCell);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/switch-cell/index.js\n// module id = null\n// module chunks = ","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { use, isObj } from '../utils';\nimport { isMobile } from '../utils/validate/mobile';\nimport Area from '../area';\nimport Field from '../field';\nimport Popup from '../popup';\nimport Toast from '../toast';\nimport Button from '../button';\nimport Dialog from '../dialog';\nimport Detail from './Detail';\nimport SwitchCell from '../switch-cell';\n\nvar _use = use('address-edit'),\n sfc = _use[0],\n bem = _use[1],\n t = _use[2];\n\nvar defaultData = {\n name: '',\n tel: '',\n country: '',\n province: '',\n city: '',\n county: '',\n areaCode: '',\n postalCode: '',\n addressDetail: '',\n isDefault: false\n};\nexport default sfc({\n props: {\n areaList: Object,\n isSaving: Boolean,\n isDeleting: Boolean,\n validator: Function,\n showDelete: Boolean,\n showPostal: Boolean,\n searchResult: Array,\n showSetDefault: Boolean,\n showSearchResult: Boolean,\n saveButtonText: String,\n deleteButtonText: String,\n showArea: {\n type: Boolean,\n \"default\": true\n },\n showDetail: {\n type: Boolean,\n \"default\": true\n },\n detailRows: {\n type: Number,\n \"default\": 1\n },\n addressInfo: {\n type: Object,\n \"default\": function _default() {\n return _extends({}, defaultData);\n }\n },\n telValidator: {\n type: Function,\n \"default\": isMobile\n },\n areaColumnsPlaceholder: {\n type: Array,\n \"default\": function _default() {\n return [];\n }\n }\n },\n data: function data() {\n return {\n data: {},\n showAreaPopup: false,\n detailFocused: false,\n errorInfo: {\n tel: false,\n name: false,\n postalCode: false,\n addressDetail: false\n }\n };\n },\n computed: {\n areaListLoaded: function areaListLoaded() {\n return isObj(this.areaList) && Object.keys(this.areaList).length;\n },\n areaText: function areaText() {\n var _this$data = this.data,\n country = _this$data.country,\n province = _this$data.province,\n city = _this$data.city,\n county = _this$data.county,\n areaCode = _this$data.areaCode;\n\n if (areaCode) {\n var arr = [country, province, city, county];\n\n if (province && province === city) {\n arr.splice(1, 1);\n }\n\n return arr.filter(function (text) {\n return text;\n }).join('/');\n }\n\n return '';\n }\n },\n watch: {\n addressInfo: {\n handler: function handler(val) {\n this.data = _extends({}, defaultData, val);\n this.setAreaCode(val.areaCode);\n },\n deep: true,\n immediate: true\n },\n areaList: function areaList() {\n this.setAreaCode(this.data.areaCode);\n }\n },\n methods: {\n onFocus: function onFocus(key) {\n this.errorInfo[key] = false;\n this.detailFocused = key === 'addressDetail';\n this.$emit('focus', key);\n },\n onChangeDetail: function onChangeDetail(val) {\n this.data.addressDetail = val;\n this.$emit('change-detail', val);\n },\n onAreaConfirm: function onAreaConfirm(values) {\n if (values.some(function (value) {\n return !value.code;\n })) {\n Toast(t('areaEmpty'));\n return;\n }\n\n this.showAreaPopup = false;\n this.assignAreaValues();\n this.$emit('change-area', values);\n },\n assignAreaValues: function assignAreaValues() {\n var area = this.$refs.area;\n\n if (area) {\n var detail = area.getArea();\n detail.areaCode = detail.code;\n delete detail.code;\n\n _extends(this.data, detail);\n }\n },\n onSave: function onSave() {\n var _this = this;\n\n var items = ['name', 'tel', 'areaCode', 'addressDetail'];\n\n if (this.showPostal) {\n items.push('postalCode');\n }\n\n var isValid = items.every(function (item) {\n var msg = _this.getErrorMessage(item);\n\n if (msg) {\n _this.errorInfo[item] = true;\n Toast(msg);\n }\n\n return !msg;\n });\n\n if (isValid && !this.isSaving) {\n this.$emit('save', this.data);\n }\n },\n getErrorMessage: function getErrorMessage(key) {\n var value = String(this.data[key] || '').trim();\n\n if (this.validator) {\n var message = this.validator(key, value);\n\n if (message) {\n return message;\n }\n }\n\n switch (key) {\n case 'name':\n return value ? '' : t('nameEmpty');\n\n case 'tel':\n return this.telValidator(value) ? '' : t('telInvalid');\n\n case 'areaCode':\n return value ? '' : t('areaEmpty');\n\n case 'addressDetail':\n return value ? '' : t('addressEmpty');\n\n case 'postalCode':\n return value && !/^\\d{6}$/.test(value) ? t('postalEmpty') : '';\n }\n },\n onDelete: function onDelete() {\n var _this2 = this;\n\n Dialog.confirm({\n title: t('confirmDelete')\n }).then(function () {\n _this2.$emit('delete', _this2.data);\n })[\"catch\"](function () {\n _this2.$emit('cancel-delete', _this2.data);\n });\n },\n // get values of area component\n getArea: function getArea() {\n return this.$refs.area ? this.$refs.area.getValues() : [];\n },\n // set area code to area component\n setAreaCode: function setAreaCode(code) {\n this.data.areaCode = code || '';\n\n if (code) {\n this.$nextTick(this.assignAreaValues);\n }\n },\n setAddressDetail: function setAddressDetail(value) {\n this.data.addressDetail = value;\n },\n onDetailBlur: function onDetailBlur() {\n var _this3 = this;\n\n // await for click search event\n setTimeout(function () {\n _this3.detailFocused = false;\n });\n }\n },\n render: function render(h) {\n var _this4 = this;\n\n var data = this.data,\n errorInfo = this.errorInfo;\n\n var onFocus = function onFocus(name) {\n return function () {\n return _this4.onFocus(name);\n };\n }; // hide bottom field when use search && detail get focused\n\n\n var hideBottomFields = this.searchResult.length && this.detailFocused;\n return h(\"div\", {\n \"class\": bem()\n }, [h(Field, {\n \"attrs\": {\n \"clearable\": true,\n \"label\": t('name'),\n \"placeholder\": t('namePlaceholder'),\n \"error\": errorInfo.name\n },\n \"on\": {\n \"focus\": onFocus('name')\n },\n \"model\": {\n value: data.name,\n callback: function callback($$v) {\n data.name = $$v;\n }\n }\n }), h(Field, {\n \"attrs\": {\n \"clearable\": true,\n \"type\": \"tel\",\n \"label\": t('tel'),\n \"placeholder\": t('telPlaceholder'),\n \"error\": errorInfo.tel\n },\n \"on\": {\n \"focus\": onFocus('tel')\n },\n \"model\": {\n value: data.tel,\n callback: function callback($$v) {\n data.tel = $$v;\n }\n }\n }), h(Field, {\n \"directives\": [{\n name: \"show\",\n value: this.showArea\n }],\n \"attrs\": {\n \"readonly\": true,\n \"label\": t('area'),\n \"placeholder\": t('areaPlaceholder'),\n \"value\": this.areaText\n },\n \"on\": {\n \"click\": function click() {\n _this4.showAreaPopup = true;\n }\n }\n }), h(Detail, {\n \"directives\": [{\n name: \"show\",\n value: this.showDetail\n }],\n \"attrs\": {\n \"focused\": this.detailFocused,\n \"value\": data.addressDetail,\n \"error\": errorInfo.addressDetail,\n \"detailRows\": this.detailRows,\n \"searchResult\": this.searchResult,\n \"showSearchResult\": this.showSearchResult\n },\n \"on\": {\n \"focus\": onFocus('addressDetail'),\n \"blur\": this.onDetailBlur,\n \"input\": this.onChangeDetail,\n \"select-search\": function selectSearch(event) {\n _this4.$emit('select-search', event);\n }\n }\n }), this.showPostal && h(Field, {\n \"directives\": [{\n name: \"show\",\n value: !hideBottomFields\n }],\n \"attrs\": {\n \"type\": \"tel\",\n \"maxlength\": \"6\",\n \"label\": t('postal'),\n \"placeholder\": t('postal'),\n \"error\": errorInfo.postalCode\n },\n \"on\": {\n \"focus\": onFocus('postalCode')\n },\n \"model\": {\n value: data.postalCode,\n callback: function callback($$v) {\n data.postalCode = $$v;\n }\n }\n }), this.slots(), this.showSetDefault && h(SwitchCell, {\n \"directives\": [{\n name: \"show\",\n value: !hideBottomFields\n }],\n \"attrs\": {\n \"title\": t('defaultAddress')\n },\n \"on\": {\n \"change\": function change(event) {\n _this4.$emit('change-default', event);\n }\n },\n \"model\": {\n value: data.isDefault,\n callback: function callback($$v) {\n data.isDefault = $$v;\n }\n }\n }), h(\"div\", {\n \"directives\": [{\n name: \"show\",\n value: !hideBottomFields\n }],\n \"class\": bem('buttons')\n }, [h(Button, {\n \"attrs\": {\n \"block\": true,\n \"loading\": this.isSaving,\n \"type\": \"danger\",\n \"text\": this.saveButtonText || t('save')\n },\n \"on\": {\n \"click\": this.onSave\n }\n }), this.showDelete && h(Button, {\n \"attrs\": {\n \"block\": true,\n \"loading\": this.isDeleting,\n \"text\": this.deleteButtonText || t('delete')\n },\n \"on\": {\n \"click\": this.onDelete\n }\n })]), h(Popup, {\n \"attrs\": {\n \"position\": \"bottom\",\n \"lazyRender\": false,\n \"getContainer\": \"body\"\n },\n \"model\": {\n value: _this4.showAreaPopup,\n callback: function callback($$v) {\n _this4.showAreaPopup = $$v;\n }\n }\n }, [h(Area, {\n \"ref\": \"area\",\n \"attrs\": {\n \"loading\": !this.areaListLoaded,\n \"value\": data.areaCode,\n \"areaList\": this.areaList,\n \"columnsPlaceholder\": this.areaColumnsPlaceholder\n },\n \"on\": {\n \"confirm\": this.onAreaConfirm,\n \"cancel\": function cancel() {\n _this4.showAreaPopup = false;\n }\n }\n })])]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/address-edit/index.js\n// module id = null\n// module chunks = ","import { use } from '../utils';\n\nvar _use = use('radio-group'),\n sfc = _use[0],\n bem = _use[1];\n\nexport default sfc({\n props: {\n value: null,\n disabled: Boolean\n },\n watch: {\n value: function value(_value) {\n this.$emit('change', _value);\n }\n },\n render: function render(h) {\n return h(\"div\", {\n \"class\": bem()\n }, [this.slots()]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/radio-group/index.js\n// module id = null\n// module chunks = ","/**\n * find parent component by name\n */\nexport var FindParentMixin = {\n data: function data() {\n return {\n parent: null\n };\n },\n methods: {\n findParent: function findParent(name) {\n var parent = this.$parent;\n\n while (parent) {\n if (parent.$options.name === name) {\n this.parent = parent;\n break;\n }\n\n parent = parent.$parent;\n }\n }\n }\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/mixins/find-parent.js\n// module id = null\n// module chunks = ","/**\n * Common part of Checkbox & Radio\n */\nimport Icon from '../icon';\nimport { FindParentMixin } from './find-parent';\nexport var CheckboxMixin = function CheckboxMixin(parent, bem) {\n return {\n mixins: [FindParentMixin],\n props: {\n name: null,\n value: null,\n disabled: Boolean,\n checkedColor: String,\n labelPosition: String,\n labelDisabled: Boolean,\n shape: {\n type: String,\n \"default\": 'round'\n },\n bindGroup: {\n type: Boolean,\n \"default\": true\n }\n },\n created: function created() {\n if (this.bindGroup) {\n this.findParent(parent);\n }\n },\n computed: {\n isDisabled: function isDisabled() {\n return this.parent && this.parent.disabled || this.disabled;\n },\n iconStyle: function iconStyle() {\n var checkedColor = this.checkedColor;\n\n if (checkedColor && this.checked && !this.isDisabled) {\n return {\n borderColor: checkedColor,\n backgroundColor: checkedColor\n };\n }\n }\n },\n render: function render() {\n var _this = this;\n\n var h = arguments[0];\n var slots = this.slots,\n checked = this.checked;\n var CheckIcon = slots('icon', {\n checked: checked\n }) || h(Icon, {\n \"attrs\": {\n \"name\": \"success\"\n },\n \"style\": this.iconStyle\n });\n var Label = slots() && h(\"span\", {\n \"class\": bem('label', [this.labelPosition, {\n disabled: this.isDisabled\n }]),\n \"on\": {\n \"click\": this.onClickLabel\n }\n }, [slots()]);\n return h(\"div\", {\n \"class\": bem(),\n \"on\": {\n \"click\": function click(event) {\n _this.$emit('click', event);\n }\n }\n }, [h(\"div\", {\n \"class\": bem('icon', [this.shape, {\n disabled: this.isDisabled,\n checked: checked\n }]),\n \"on\": {\n \"click\": this.onClickIcon\n }\n }, [CheckIcon]), Label]);\n }\n };\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/mixins/checkbox.js\n// module id = null\n// module chunks = ","import { use } from '../utils';\nimport { CheckboxMixin } from '../mixins/checkbox';\n\nvar _use = use('radio'),\n sfc = _use[0],\n bem = _use[1];\n\nexport default sfc({\n mixins: [CheckboxMixin('van-radio-group', bem)],\n computed: {\n currentValue: {\n get: function get() {\n return this.parent ? this.parent.value : this.value;\n },\n set: function set(val) {\n (this.parent || this).$emit('input', val);\n }\n },\n checked: function checked() {\n return this.currentValue === this.name;\n }\n },\n methods: {\n onClickIcon: function onClickIcon() {\n if (!this.isDisabled) {\n this.currentValue = this.name;\n }\n },\n onClickLabel: function onClickLabel() {\n if (!this.isDisabled && !this.labelDisabled) {\n this.currentValue = this.name;\n }\n }\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/radio/index.js\n// module id = null\n// module chunks = ","import _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use } from '../utils';\nimport { emit, inherit } from '../utils/functional';\nimport Icon from '../icon';\nimport Cell from '../cell';\nimport Radio from '../radio'; // Types\n\nvar _use = use('address-item'),\n sfc = _use[0],\n bem = _use[1];\n\nfunction AddressItem(h, props, slots, ctx) {\n var disabled = props.disabled,\n switchable = props.switchable;\n\n function onSelect() {\n if (switchable) {\n emit(ctx, 'select');\n }\n }\n\n var renderRightIcon = function renderRightIcon() {\n return h(Icon, {\n \"attrs\": {\n \"name\": \"edit\"\n },\n \"class\": bem('edit'),\n \"on\": {\n \"click\": function click(event) {\n event.stopPropagation();\n emit(ctx, 'edit');\n }\n }\n });\n };\n\n var renderContent = function renderContent() {\n var data = props.data;\n var Info = [h(\"div\", {\n \"class\": bem('name')\n }, [data.name + \"\\uFF0C\" + data.tel]), h(\"div\", {\n \"class\": bem('address')\n }, [data.address])];\n return switchable && !disabled ? h(Radio, {\n \"attrs\": {\n \"name\": data.id\n }\n }, [Info]) : Info;\n };\n\n return h(Cell, _mergeJSXProps([{\n \"class\": bem({\n disabled: disabled,\n unswitchable: !switchable\n }),\n \"attrs\": {\n \"valueClass\": bem('value'),\n \"clickable\": switchable && !disabled\n },\n \"scopedSlots\": {\n \"default\": renderContent,\n 'right-icon': renderRightIcon\n },\n \"on\": {\n \"click\": onSelect\n }\n }, inherit(ctx)]));\n}\n\nAddressItem.props = {\n data: Object,\n disabled: Boolean,\n switchable: Boolean\n};\nexport default sfc(AddressItem);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/address-list/Item.js\n// module id = null\n// module chunks = ","import _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use } from '../utils';\nimport { emit, inherit } from '../utils/functional';\nimport Button from '../button';\nimport RadioGroup from '../radio-group';\nimport AddressItem from './Item'; // Types\n\nvar _use = use('address-list'),\n sfc = _use[0],\n bem = _use[1],\n t = _use[2];\n\nfunction AddressList(h, props, slots, ctx) {\n var getList = function getList(list, disabled) {\n return list.map(function (item, index) {\n return h(AddressItem, {\n \"attrs\": {\n \"data\": item,\n \"disabled\": disabled,\n \"switchable\": props.switchable\n },\n \"key\": item.id,\n \"on\": {\n \"select\": function select() {\n emit(ctx, disabled ? 'select-disabled' : 'select', item, index);\n },\n \"edit\": function edit() {\n emit(ctx, disabled ? 'edit-disabled' : 'edit', item, index);\n }\n }\n });\n });\n };\n\n var List = getList(props.list);\n var DisabledList = getList(props.disabledList, true);\n return h(\"div\", _mergeJSXProps([{\n \"class\": bem()\n }, inherit(ctx)]), [slots.top && slots.top(), h(RadioGroup, {\n \"attrs\": {\n \"value\": props.value\n },\n \"on\": {\n \"input\": function input(event) {\n emit(ctx, 'input', event);\n }\n }\n }, [List]), props.disabledText && h(\"div\", {\n \"class\": bem('disabled-text')\n }, [props.disabledText]), DisabledList, slots[\"default\"] && slots[\"default\"](), h(Button, {\n \"attrs\": {\n \"square\": true,\n \"size\": \"large\",\n \"type\": \"danger\",\n \"text\": props.addButtonText || t('add')\n },\n \"class\": bem('add'),\n \"on\": {\n \"click\": function click() {\n emit(ctx, 'add');\n }\n }\n })]);\n}\n\nAddressList.props = {\n list: Array,\n disabledList: Array,\n disabledText: String,\n addButtonText: String,\n value: [String, Number],\n switchable: {\n type: Boolean,\n \"default\": true\n }\n};\nexport default sfc(AddressList);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/address-list/index.js\n// module id = null\n// module chunks = ","import { use } from '../utils';\nimport Info from '../info';\n\nvar _use = use('badge'),\n sfc = _use[0],\n bem = _use[1];\n\nexport default sfc({\n props: {\n url: String,\n info: [String, Number],\n title: String\n },\n inject: ['vanBadgeGroup'],\n created: function created() {\n this.parent.badges.push(this);\n },\n beforeDestroy: function beforeDestroy() {\n var _this = this;\n\n this.parent.badges = this.parent.badges.filter(function (item) {\n return item !== _this;\n });\n },\n computed: {\n parent: function parent() {\n if (process.env.NODE_ENV !== 'production' && !this.vanBadgeGroup) {\n console.error('[Vant] Badge needs to be child of BadgeGroup');\n }\n\n return this.vanBadgeGroup;\n },\n select: function select() {\n return this.parent.badges.indexOf(this) === +this.parent.activeKey;\n }\n },\n methods: {\n onClick: function onClick() {\n var index = this.parent.badges.indexOf(this);\n this.$emit('click', index);\n this.parent.$emit('change', index);\n }\n },\n render: function render(h) {\n return h(\"a\", {\n \"attrs\": {\n \"href\": this.url\n },\n \"class\": [bem({\n select: this.select\n }), 'van-hairline'],\n \"on\": {\n \"click\": this.onClick\n }\n }, [h(\"div\", {\n \"class\": bem('text')\n }, [this.title, h(Info, {\n \"attrs\": {\n \"info\": this.info\n },\n \"class\": bem('info')\n })])]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/badge/index.js\n// module id = null\n// module chunks = ","import { use } from '../utils';\n\nvar _use = use('badge-group'),\n sfc = _use[0],\n bem = _use[1];\n\nexport default sfc({\n props: {\n activeKey: {\n type: [Number, String],\n \"default\": 0\n }\n },\n provide: function provide() {\n return {\n vanBadgeGroup: this\n };\n },\n data: function data() {\n return {\n badges: []\n };\n },\n render: function render(h) {\n return h(\"div\", {\n \"class\": [bem(), 'van-hairline--top-bottom']\n }, [this.slots()]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/badge-group/index.js\n// module id = null\n// module chunks = ","export var RED = '#f44';\nexport var BLUE = '#1989fa';\nexport var GREEN = '#07c160';\nexport var WHITE = '#fff';\nexport var GRAY_DARK = '#969799';\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/utils/color.js\n// module id = null\n// module chunks = ","import _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use } from '../utils';\nimport { inherit } from '../utils/functional';\nimport { RED, BLUE, GREEN, GRAY_DARK } from '../utils/color'; // Types\n\nvar _use = use('tag'),\n sfc = _use[0],\n bem = _use[1];\n\nvar COLOR_MAP = {\n danger: RED,\n primary: BLUE,\n success: GREEN\n};\n\nfunction Tag(h, props, slots, ctx) {\n var _style;\n\n var type = props.type,\n mark = props.mark,\n plain = props.plain,\n round = props.round,\n size = props.size;\n var color = props.color || type && COLOR_MAP[type] || GRAY_DARK;\n var key = plain ? 'color' : 'backgroundColor';\n var style = (_style = {}, _style[key] = color, _style);\n\n if (props.textColor) {\n style.color = props.textColor;\n }\n\n var classes = {\n mark: mark,\n plain: plain,\n round: round\n };\n\n if (size) {\n classes[size] = size;\n }\n\n return h(\"span\", _mergeJSXProps([{\n \"style\": style,\n \"class\": [bem(classes), {\n 'van-hairline--surround': plain\n }]\n }, inherit(ctx, true)]), [slots[\"default\"] && slots[\"default\"]()]);\n}\n\nTag.props = {\n size: String,\n type: String,\n mark: Boolean,\n color: String,\n plain: Boolean,\n round: Boolean,\n textColor: String\n};\nexport default sfc(Tag);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/tag/index.js\n// module id = null\n// module chunks = ","import _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use, isDef } from '../utils';\nimport { emit, inherit } from '../utils/functional';\nimport Tag from '../tag'; // Types\n\nvar _use = use('card'),\n sfc = _use[0],\n bem = _use[1];\n\nfunction Card(h, props, slots, ctx) {\n var thumb = props.thumb;\n var showThumb = slots.thumb || thumb;\n var showTag = slots.tag || props.tag;\n var showNum = slots.num || isDef(props.num);\n var showPrice = slots.price || isDef(props.price);\n var showOriginPrice = slots['origin-price'] || isDef(props.originPrice);\n var showBottom = showNum || showPrice || showOriginPrice;\n\n var onThumbClick = function onThumbClick() {\n emit(ctx, 'click-thumb');\n };\n\n var Thumb = showThumb && h(\"a\", {\n \"attrs\": {\n \"href\": props.thumbLink\n },\n \"class\": bem('thumb'),\n \"on\": {\n \"click\": onThumbClick\n }\n }, [slots.thumb ? slots.thumb() : props.lazyLoad ? h(\"img\", {\n \"class\": bem('img'),\n \"directives\": [{\n name: \"lazy\",\n value: thumb\n }]\n }) : h(\"img\", {\n \"class\": bem('img'),\n \"attrs\": {\n \"src\": thumb\n }\n }), showTag && h(\"div\", {\n \"class\": bem('tag')\n }, [slots.tag ? slots.tag() : h(Tag, {\n \"attrs\": {\n \"mark\": true,\n \"type\": \"danger\"\n }\n }, [props.tag])])]);\n var Title = slots.title ? slots.title() : props.title && h(\"div\", {\n \"class\": bem('title')\n }, [props.title]);\n var Desc = slots.desc ? slots.desc() : props.desc && h(\"div\", {\n \"class\": [bem('desc'), 'van-ellipsis']\n }, [props.desc]);\n var Price = showPrice && h(\"div\", {\n \"class\": bem('price')\n }, [slots.price ? slots.price() : props.currency + \" \" + props.price]);\n var OriginPrice = showOriginPrice && h(\"div\", {\n \"class\": bem('origin-price')\n }, [slots['origin-price'] ? slots['origin-price']() : props.currency + \" \" + props.originPrice]);\n var Num = showNum && h(\"div\", {\n \"class\": bem('num')\n }, [slots.num ? slots.num() : \"x \" + props.num]);\n var Footer = slots.footer && h(\"div\", {\n \"class\": bem('footer')\n }, [slots.footer()]);\n return h(\"div\", _mergeJSXProps([{\n \"class\": bem()\n }, inherit(ctx, true)]), [h(\"div\", {\n \"class\": bem('header')\n }, [Thumb, h(\"div\", {\n \"class\": bem('content', {\n centered: props.centered\n })\n }, [Title, Desc, slots.tags && slots.tags(), showBottom && h(\"div\", {\n \"class\": \"van-card__bottom\"\n }, [Price, OriginPrice, Num, slots.bottom && slots.bottom()])])]), Footer]);\n}\n\nCard.props = {\n tag: String,\n desc: String,\n thumb: String,\n title: String,\n centered: Boolean,\n lazyLoad: Boolean,\n thumbLink: String,\n num: [Number, String],\n price: [Number, String],\n originPrice: [Number, String],\n currency: {\n type: String,\n \"default\": '¥'\n }\n};\nexport default sfc(Card);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/card/index.js\n// module id = null\n// module chunks = ","import _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use } from '../utils';\nimport { inherit } from '../utils/functional'; // Types\n\nvar _use = use('cell-group'),\n sfc = _use[0],\n bem = _use[1];\n\nfunction CellGroup(h, props, slots, ctx) {\n var Group = h(\"div\", _mergeJSXProps([{\n \"class\": [bem(), {\n 'van-hairline--top-bottom': props.border\n }]\n }, inherit(ctx, true)]), [slots[\"default\"] && slots[\"default\"]()]);\n\n if (props.title) {\n return h(\"div\", [h(\"div\", {\n \"class\": bem('title')\n }, [props.title]), Group]);\n }\n\n return Group;\n}\n\nCellGroup.props = {\n title: String,\n border: {\n type: Boolean,\n \"default\": true\n }\n};\nexport default sfc(CellGroup);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/cell-group/index.js\n// module id = null\n// module chunks = ","import { use } from '../utils';\nimport { CheckboxMixin } from '../mixins/checkbox';\n\nvar _use = use('checkbox'),\n sfc = _use[0],\n bem = _use[1];\n\nexport default sfc({\n mixins: [CheckboxMixin('van-checkbox-group', bem)],\n computed: {\n checked: {\n get: function get() {\n return this.parent ? this.parent.value.indexOf(this.name) !== -1 : this.value;\n },\n set: function set(val) {\n if (this.parent) {\n this.setParentValue(val);\n } else {\n this.$emit('input', val);\n }\n }\n }\n },\n watch: {\n value: function value(val) {\n this.$emit('change', val);\n }\n },\n methods: {\n toggle: function toggle() {\n var _this = this;\n\n var checked = !this.checked; // When toggle method is called multiple times at the same time,\n // only the last call is valid.\n // This is a hack for usage inside Cell.\n\n clearTimeout(this.toggleTask);\n this.toggleTask = setTimeout(function () {\n _this.checked = checked;\n });\n },\n onClickIcon: function onClickIcon() {\n if (!this.isDisabled) {\n this.toggle();\n }\n },\n onClickLabel: function onClickLabel() {\n if (!this.isDisabled && !this.labelDisabled) {\n this.toggle();\n }\n },\n setParentValue: function setParentValue(val) {\n var parent = this.parent;\n var value = parent.value.slice();\n\n if (val) {\n if (parent.max && value.length >= parent.max) {\n return;\n }\n /* istanbul ignore else */\n\n\n if (value.indexOf(this.name) === -1) {\n value.push(this.name);\n parent.$emit('input', value);\n }\n } else {\n var index = value.indexOf(this.name);\n /* istanbul ignore else */\n\n if (index !== -1) {\n value.splice(index, 1);\n parent.$emit('input', value);\n }\n }\n }\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/checkbox/index.js\n// module id = null\n// module chunks = ","import { use } from '../utils';\n\nvar _use = use('checkbox-group'),\n sfc = _use[0],\n bem = _use[1];\n\nexport default sfc({\n props: {\n max: Number,\n value: Array,\n disabled: Boolean\n },\n watch: {\n value: function value(val) {\n this.$emit('change', val);\n }\n },\n render: function render(h) {\n return h(\"div\", {\n \"class\": bem()\n }, [this.slots()]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/checkbox-group/index.js\n// module id = null\n// module chunks = ","import { use } from '../utils';\nimport { raf, cancel } from '../utils/raf';\nimport { BLUE, WHITE } from '../utils/color';\n\nvar _use = use('circle'),\n sfc = _use[0],\n bem = _use[1];\n\nvar PERIMETER = 3140;\nvar PATH = 'M 530 530 m -500, 0 a 500, 500 0 1, 1 1000, 0 a 500, 500 0 1, 1 -1000, 0';\n\nfunction format(rate) {\n return Math.min(Math.max(rate, 0), 100);\n}\n\nexport default sfc({\n props: {\n text: String,\n value: Number,\n speed: Number,\n size: {\n type: String,\n \"default\": '100px'\n },\n fill: {\n type: String,\n \"default\": 'none'\n },\n rate: {\n type: Number,\n \"default\": 100\n },\n layerColor: {\n type: String,\n \"default\": WHITE\n },\n color: {\n type: String,\n \"default\": BLUE\n },\n strokeWidth: {\n type: Number,\n \"default\": 40\n },\n clockwise: {\n type: Boolean,\n \"default\": true\n }\n },\n computed: {\n style: function style() {\n return {\n width: this.size,\n height: this.size\n };\n },\n layerStyle: function layerStyle() {\n var offset = PERIMETER * (100 - this.value) / 100;\n offset = this.clockwise ? offset : PERIMETER * 2 - offset;\n return {\n stroke: \"\" + this.color,\n strokeDashoffset: offset + \"px\",\n strokeWidth: this.strokeWidth + 1 + \"px\"\n };\n },\n hoverStyle: function hoverStyle() {\n return {\n fill: \"\" + this.fill,\n stroke: \"\" + this.layerColor,\n strokeWidth: this.strokeWidth + \"px\"\n };\n }\n },\n watch: {\n rate: {\n handler: function handler() {\n this.startTime = Date.now();\n this.startRate = this.value;\n this.endRate = format(this.rate);\n this.increase = this.endRate > this.startRate;\n this.duration = Math.abs((this.startRate - this.endRate) * 1000 / this.speed);\n\n if (this.speed) {\n cancel(this.rafId);\n this.rafId = raf(this.animate);\n } else {\n this.$emit('input', this.endRate);\n }\n },\n immediate: true\n }\n },\n methods: {\n animate: function animate() {\n var now = Date.now();\n var progress = Math.min((now - this.startTime) / this.duration, 1);\n var rate = progress * (this.endRate - this.startRate) + this.startRate;\n this.$emit('input', format(parseFloat(rate.toFixed(1))));\n\n if (this.increase ? rate < this.endRate : rate > this.endRate) {\n this.rafId = raf(this.animate);\n }\n }\n },\n render: function render(h) {\n return h(\"div\", {\n \"class\": bem(),\n \"style\": this.style\n }, [h(\"svg\", {\n \"attrs\": {\n \"viewBox\": \"0 0 1060 1060\"\n }\n }, [h(\"path\", {\n \"class\": bem('hover'),\n \"style\": this.hoverStyle,\n \"attrs\": {\n \"d\": PATH\n }\n }), h(\"path\", {\n \"class\": bem('layer'),\n \"style\": this.layerStyle,\n \"attrs\": {\n \"d\": PATH\n }\n })]), this.slots() || this.text && h(\"div\", {\n \"class\": bem('text')\n }, [this.text])]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/circle/index.js\n// module id = null\n// module chunks = ","import { use } from '../utils';\n\nvar _use = use('col'),\n sfc = _use[0],\n bem = _use[1];\n\nexport default sfc({\n props: {\n span: [Number, String],\n offset: [Number, String],\n tag: {\n type: String,\n \"default\": 'div'\n }\n },\n computed: {\n gutter: function gutter() {\n return this.$parent && Number(this.$parent.gutter) || 0;\n },\n style: function style() {\n var padding = this.gutter / 2 + \"px\";\n return this.gutter ? {\n paddingLeft: padding,\n paddingRight: padding\n } : {};\n }\n },\n render: function render(h) {\n var _bem;\n\n var span = this.span,\n offset = this.offset;\n return h(this.tag, {\n \"class\": bem((_bem = {}, _bem[span] = span, _bem[\"offset-\" + offset] = offset, _bem)),\n \"style\": this.style\n }, [this.slots()]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/col/index.js\n// module id = null\n// module chunks = ","import { use } from '../utils';\n\nvar _use = use('collapse'),\n sfc = _use[0],\n bem = _use[1];\n\nexport default sfc({\n props: {\n accordion: Boolean,\n value: [String, Number, Array],\n border: {\n type: Boolean,\n \"default\": true\n }\n },\n data: function data() {\n return {\n items: []\n };\n },\n methods: {\n \"switch\": function _switch(name, expanded) {\n if (!this.accordion) {\n name = expanded ? this.value.concat(name) : this.value.filter(function (activeName) {\n return activeName !== name;\n });\n }\n\n this.$emit('change', name);\n this.$emit('input', name);\n }\n },\n render: function render(h) {\n return h(\"div\", {\n \"class\": [bem(), {\n 'van-hairline--top-bottom': this.border\n }]\n }, [this.slots()]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/collapse/index.js\n// module id = null\n// module chunks = ","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { use, isDef } from '../utils';\nimport { raf } from '../utils/raf';\nimport Cell from '../cell';\nimport { cellProps } from '../cell/shared';\nimport { FindParentMixin } from '../mixins/find-parent';\n\nvar _use = use('collapse-item'),\n sfc = _use[0],\n bem = _use[1];\n\nvar CELL_SLOTS = ['title', 'icon', 'right-icon'];\nexport default sfc({\n mixins: [FindParentMixin],\n props: _extends({}, cellProps, {\n name: [String, Number],\n disabled: Boolean,\n isLink: {\n type: Boolean,\n \"default\": true\n }\n }),\n data: function data() {\n return {\n show: null,\n inited: null\n };\n },\n computed: {\n items: function items() {\n return this.parent.items;\n },\n index: function index() {\n return this.items.indexOf(this);\n },\n currentName: function currentName() {\n return isDef(this.name) ? this.name : this.index;\n },\n expanded: function expanded() {\n var _this = this;\n\n if (!this.parent) {\n return null;\n }\n\n var value = this.parent.value;\n return this.parent.accordion ? value === this.currentName : value.some(function (name) {\n return name === _this.currentName;\n });\n }\n },\n created: function created() {\n this.findParent('van-collapse');\n this.items.push(this);\n this.show = this.expanded;\n this.inited = this.expanded;\n },\n destroyed: function destroyed() {\n this.items.splice(this.index, 1);\n },\n watch: {\n expanded: function expanded(_expanded, prev) {\n var _this2 = this;\n\n if (prev === null) {\n return;\n }\n\n if (_expanded) {\n this.show = true;\n this.inited = true;\n }\n\n raf(function () {\n var _this2$$refs = _this2.$refs,\n content = _this2$$refs.content,\n wrapper = _this2$$refs.wrapper;\n\n if (!content || !wrapper) {\n return;\n }\n\n var clientHeight = content.clientHeight;\n\n if (clientHeight) {\n var contentHeight = clientHeight + \"px\";\n wrapper.style.height = _expanded ? 0 : contentHeight;\n raf(function () {\n wrapper.style.height = _expanded ? contentHeight : 0;\n });\n } else {\n _this2.onTransitionEnd();\n }\n });\n }\n },\n methods: {\n onClick: function onClick() {\n if (this.disabled) {\n return;\n }\n\n var parent = this.parent;\n var name = parent.accordion && this.currentName === parent.value ? '' : this.currentName;\n var expanded = !this.expanded;\n this.parent[\"switch\"](name, expanded);\n },\n onTransitionEnd: function onTransitionEnd() {\n if (!this.expanded) {\n this.show = false;\n } else {\n this.$refs.wrapper.style.height = null;\n }\n }\n },\n render: function render(h) {\n var _this3 = this;\n\n var titleSlots = CELL_SLOTS.reduce(function (slots, name) {\n if (_this3.slots(name)) {\n slots[name] = function () {\n return _this3.slots(name);\n };\n }\n\n return slots;\n }, {});\n\n if (this.slots('value')) {\n titleSlots[\"default\"] = function () {\n return _this3.slots('value');\n };\n }\n\n var Title = h(Cell, {\n \"class\": bem('title', {\n disabled: this.disabled,\n expanded: this.expanded\n }),\n \"on\": {\n \"click\": this.onClick\n },\n \"scopedSlots\": titleSlots,\n \"props\": _extends({}, this.$props)\n });\n var Content = this.inited && h(\"div\", {\n \"directives\": [{\n name: \"show\",\n value: this.show\n }],\n \"ref\": \"wrapper\",\n \"class\": bem('wrapper'),\n \"on\": {\n \"transitionend\": this.onTransitionEnd\n }\n }, [h(\"div\", {\n \"ref\": \"content\",\n \"class\": bem('content')\n }, [this.slots()])]);\n return h(\"div\", {\n \"class\": [bem(), {\n 'van-hairline--top': this.index\n }]\n }, [Title, Content]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/collapse-item/index.js\n// module id = null\n// module chunks = ","import _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use } from '../utils';\nimport { emit, inherit } from '../utils/functional';\nimport Cell from '../cell'; // Types\n\nvar _use = use('contact-card'),\n sfc = _use[0],\n bem = _use[1],\n t = _use[2];\n\nfunction ContactCard(h, props, slots, ctx) {\n var type = props.type,\n editable = props.editable;\n return h(Cell, _mergeJSXProps([{\n \"attrs\": {\n \"center\": true,\n \"border\": false,\n \"isLink\": editable,\n \"valueClass\": bem('value'),\n \"icon\": type === 'edit' ? 'contact' : 'add-square'\n },\n \"class\": bem([type]),\n \"on\": {\n \"click\": function click(event) {\n if (editable) {\n emit(ctx, 'click', event);\n }\n }\n }\n }, inherit(ctx)]), [type === 'add' ? props.addText || t('addText') : [h(\"div\", [t('name') + \"\\uFF1A\" + props.name]), h(\"div\", [t('tel') + \"\\uFF1A\" + props.tel])]]);\n}\n\nContactCard.props = {\n tel: String,\n name: String,\n addText: String,\n editable: {\n type: Boolean,\n \"default\": true\n },\n type: {\n type: String,\n \"default\": 'add'\n }\n};\nexport default sfc(ContactCard);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/contact-card/index.js\n// module id = null\n// module chunks = ","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { use } from '../utils';\nimport Button from '../button';\nimport Field from '../field';\nimport Toast from '../toast';\nimport Dialog from '../dialog';\nimport { isMobile } from '../utils/validate/mobile';\n\nvar _use = use('contact-edit'),\n sfc = _use[0],\n bem = _use[1],\n t = _use[2];\n\nvar defaultContact = {\n tel: '',\n name: ''\n};\nexport default sfc({\n props: {\n isEdit: Boolean,\n isSaving: Boolean,\n isDeleting: Boolean,\n contactInfo: {\n type: Object,\n \"default\": function _default() {\n return _extends({}, defaultContact);\n }\n },\n telValidator: {\n type: Function,\n \"default\": isMobile\n }\n },\n data: function data() {\n return {\n data: _extends({}, defaultContact, this.contactInfo),\n errorInfo: {\n name: false,\n tel: false\n }\n };\n },\n watch: {\n contactInfo: function contactInfo(val) {\n this.data = _extends({}, defaultContact, val);\n }\n },\n methods: {\n onFocus: function onFocus(key) {\n this.errorInfo[key] = false;\n },\n getErrorMessageByKey: function getErrorMessageByKey(key) {\n var value = this.data[key].trim();\n\n switch (key) {\n case 'name':\n return value ? '' : t('nameEmpty');\n\n case 'tel':\n return this.telValidator(value) ? '' : t('telInvalid');\n }\n },\n onSave: function onSave() {\n var _this = this;\n\n var isValid = ['name', 'tel'].every(function (item) {\n var msg = _this.getErrorMessageByKey(item);\n\n if (msg) {\n _this.errorInfo[item] = true;\n Toast(msg);\n }\n\n return !msg;\n });\n\n if (isValid && !this.isSaving) {\n this.$emit('save', this.data);\n }\n },\n onDelete: function onDelete() {\n var _this2 = this;\n\n Dialog.confirm({\n message: t('confirmDelete')\n }).then(function () {\n _this2.$emit('delete', _this2.data);\n });\n }\n },\n render: function render(h) {\n var _this3 = this;\n\n var data = this.data,\n errorInfo = this.errorInfo;\n\n var onFocus = function onFocus(name) {\n return function () {\n return _this3.onFocus(name);\n };\n };\n\n return h(\"div\", {\n \"class\": bem()\n }, [h(Field, {\n \"attrs\": {\n \"clearable\": true,\n \"maxlength\": \"30\",\n \"label\": t('name'),\n \"placeholder\": t('nameEmpty'),\n \"error\": errorInfo.name\n },\n \"on\": {\n \"focus\": onFocus('name')\n },\n \"model\": {\n value: data.name,\n callback: function callback($$v) {\n data.name = $$v;\n }\n }\n }), h(Field, {\n \"attrs\": {\n \"clearable\": true,\n \"type\": \"tel\",\n \"label\": t('tel'),\n \"placeholder\": t('telEmpty'),\n \"error\": errorInfo.tel\n },\n \"on\": {\n \"focus\": onFocus('tel')\n },\n \"model\": {\n value: data.tel,\n callback: function callback($$v) {\n data.tel = $$v;\n }\n }\n }), h(\"div\", {\n \"class\": bem('buttons')\n }, [h(Button, {\n \"attrs\": {\n \"block\": true,\n \"type\": \"danger\",\n \"text\": t('save'),\n \"loading\": this.isSaving\n },\n \"on\": {\n \"click\": this.onSave\n }\n }), this.isEdit && h(Button, {\n \"attrs\": {\n \"block\": true,\n \"text\": t('delete'),\n \"loading\": this.isDeleting\n },\n \"on\": {\n \"click\": this.onDelete\n }\n })])]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/contact-edit/index.js\n// module id = null\n// module chunks = ","import _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use } from '../utils';\nimport { emit, inherit } from '../utils/functional';\nimport Icon from '../icon';\nimport Cell from '../cell';\nimport Button from '../button';\nimport Radio from '../radio';\nimport RadioGroup from '../radio-group'; // Types\n\nvar _use = use('contact-list'),\n sfc = _use[0],\n bem = _use[1],\n t = _use[2];\n\nfunction ContactList(h, props, slots, ctx) {\n var List = props.list.map(function (item, index) {\n var onClick = function onClick() {\n emit(ctx, 'input', item.id);\n emit(ctx, 'select', item, index);\n };\n\n return h(Cell, {\n \"key\": item.id,\n \"attrs\": {\n \"isLink\": true,\n \"valueClass\": bem('item-value')\n },\n \"class\": bem('item'),\n \"scopedSlots\": {\n \"default\": function _default() {\n return h(Radio, {\n \"attrs\": {\n \"name\": item.id\n },\n \"on\": {\n \"click\": onClick\n }\n }, [h(\"div\", {\n \"class\": bem('name')\n }, [item.name + \"\\uFF0C\" + item.tel])]);\n },\n 'right-icon': function rightIcon() {\n return h(Icon, {\n \"attrs\": {\n \"name\": \"edit\"\n },\n \"class\": bem('edit'),\n \"on\": {\n \"click\": function click(event) {\n event.stopPropagation();\n emit(ctx, 'edit', item, index);\n }\n }\n });\n }\n },\n \"on\": {\n \"click\": onClick\n }\n });\n });\n return h(\"div\", _mergeJSXProps([{\n \"class\": bem()\n }, inherit(ctx)]), [h(RadioGroup, {\n \"attrs\": {\n \"value\": props.value\n },\n \"class\": bem('group')\n }, [List]), h(Button, {\n \"attrs\": {\n \"square\": true,\n \"size\": \"large\",\n \"type\": \"danger\",\n \"text\": props.addText || t('addText')\n },\n \"class\": bem('add'),\n \"on\": {\n \"click\": function click() {\n emit(ctx, 'add');\n }\n }\n })]);\n}\n\nContactList.props = {\n value: null,\n list: Array,\n addText: String\n};\nexport default sfc(ContactList);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/contact-list/index.js\n// module id = null\n// module chunks = ","import { use } from '../utils';\nimport Checkbox from '../checkbox';\n\nvar _use = use('coupon'),\n sfc = _use[0],\n bem = _use[1],\n t = _use[2];\n\nfunction padZero(num) {\n return (num < 10 ? '0' : '') + num;\n}\n\nfunction getDate(timeStamp) {\n var date = new Date(timeStamp * 1000);\n return date.getFullYear() + \".\" + padZero(date.getMonth() + 1) + \".\" + padZero(date.getDate());\n}\n\nfunction formatDiscount(discount) {\n return (discount / 10).toFixed(discount % 10 === 0 ? 0 : 1);\n}\n\nfunction formatAmount(amount) {\n return (amount / 100).toFixed(amount % 100 === 0 ? 0 : amount % 10 === 0 ? 1 : 2);\n}\n\nexport default sfc({\n props: {\n coupon: Object,\n chosen: Boolean,\n disabled: Boolean,\n currency: {\n type: String,\n \"default\": '¥'\n }\n },\n computed: {\n validPeriod: function validPeriod() {\n return t('valid') + \"\\uFF1A\" + getDate(this.coupon.startAt) + \" - \" + getDate(this.coupon.endAt);\n },\n faceAmount: function faceAmount() {\n var coupon = this.coupon;\n\n if (coupon.valueDesc) {\n return coupon.valueDesc + \"\" + (coupon.unitDesc || '') + \"\";\n }\n\n return coupon.denominations ? \"\" + this.currency + \" \" + formatAmount(this.coupon.denominations) : coupon.discount ? t('discount', formatDiscount(this.coupon.discount)) : '';\n },\n conditionMessage: function conditionMessage() {\n var condition = this.coupon.originCondition;\n condition = condition % 100 === 0 ? Math.round(condition / 100) : (condition / 100).toFixed(2);\n return condition === 0 ? t('unlimited') : t('condition', condition);\n }\n },\n render: function render(h) {\n var coupon = this.coupon,\n disabled = this.disabled;\n var description = disabled && coupon.reason || coupon.description;\n return h(\"div\", {\n \"class\": bem({\n disabled: disabled\n })\n }, [h(\"div\", {\n \"class\": bem('content')\n }, [h(\"div\", {\n \"class\": bem('head')\n }, [h(\"h2\", {\n \"domProps\": {\n \"innerHTML\": this.faceAmount\n }\n }), h(\"p\", [this.coupon.condition || this.conditionMessage])]), h(\"div\", {\n \"class\": bem('body')\n }, [h(\"h2\", [coupon.name]), h(\"p\", [this.validPeriod]), this.chosen && h(Checkbox, {\n \"attrs\": {\n \"value\": true\n },\n \"class\": bem('corner')\n })])]), description && h(\"p\", {\n \"class\": bem('description')\n }, [description])]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/coupon/index.js\n// module id = null\n// module chunks = ","import _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use } from '../utils';\nimport { inherit } from '../utils/functional';\nimport Cell from '../cell'; // Types\n\nvar _use = use('coupon-cell'),\n sfc = _use[0],\n bem = _use[1],\n t = _use[2];\n\nfunction formatValue(props) {\n var coupons = props.coupons,\n chosenCoupon = props.chosenCoupon,\n currency = props.currency;\n var coupon = coupons[chosenCoupon];\n\n if (coupon) {\n var value = coupon.denominations || coupon.value;\n return \"-\" + currency + (value / 100).toFixed(2);\n }\n\n return coupons.length === 0 ? t('tips') : t('count', coupons.length);\n}\n\nfunction CouponCell(h, props, slots, ctx) {\n var valueClass = props.coupons[props.chosenCoupon] ? 'van-coupon-cell--selected' : '';\n var value = formatValue(props);\n return h(Cell, _mergeJSXProps([{\n \"class\": bem(),\n \"attrs\": {\n \"value\": value,\n \"title\": props.title || t('title'),\n \"border\": props.border,\n \"isLink\": props.editable,\n \"valueClass\": valueClass\n }\n }, inherit(ctx, true)]));\n}\n\nCouponCell.model = {\n prop: 'chosenCoupon'\n};\nCouponCell.props = {\n title: String,\n coupons: Array,\n currency: {\n type: String,\n \"default\": '¥'\n },\n border: {\n type: Boolean,\n \"default\": true\n },\n editable: {\n type: Boolean,\n \"default\": true\n },\n chosenCoupon: {\n type: Number,\n \"default\": -1\n }\n};\nexport default sfc(CouponCell);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/coupon-cell/index.js\n// module id = null\n// module chunks = ","/* eslint-disable object-shorthand */\nimport { use } from '../utils';\nimport { FindParentMixin } from '../mixins/find-parent';\n\nvar _use = use('tab'),\n sfc = _use[0],\n bem = _use[1];\n\nexport default sfc({\n mixins: [FindParentMixin],\n props: {\n title: String,\n disabled: Boolean\n },\n data: function data() {\n return {\n inited: false\n };\n },\n computed: {\n index: function index() {\n return this.parent.tabs.indexOf(this);\n },\n selected: function selected() {\n return this.index === this.parent.curActive;\n }\n },\n watch: {\n 'parent.curActive': function parentCurActive() {\n this.inited = this.inited || this.selected;\n },\n title: function title() {\n this.parent.setLine();\n }\n },\n created: function created() {\n this.findParent('van-tabs');\n },\n mounted: function mounted() {\n var tabs = this.parent.tabs;\n var index = this.parent.slots().indexOf(this.$vnode);\n tabs.splice(index === -1 ? tabs.length : index, 0, this);\n\n if (this.slots('title')) {\n this.parent.renderTitle(this.$refs.title, this.index);\n }\n },\n beforeDestroy: function beforeDestroy() {\n this.parent.tabs.splice(this.index, 1);\n },\n render: function render(h) {\n var slots = this.slots;\n var shouldRender = this.inited || !this.parent.lazyRender;\n return h(\"div\", {\n \"directives\": [{\n name: \"show\",\n value: this.selected || this.parent.animated\n }],\n \"class\": bem('pane')\n }, [shouldRender ? slots() : h(), slots('title') && h(\"div\", {\n \"ref\": \"title\"\n }, [slots('title')])]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/tab/index.js\n// module id = null\n// module chunks = ","import { use, isDef } from '../utils';\nimport { raf } from '../utils/raf';\nimport { on, off } from '../utils/event';\nimport { TouchMixin } from '../mixins/touch';\nimport { setScrollTop, getScrollTop, getElementTop, getScrollEventTarget } from '../utils/scroll';\n\nvar _use = use('tabs'),\n sfc = _use[0],\n bem = _use[1];\n\nvar tabBem = use('tab')[1];\nexport default sfc({\n mixins: [TouchMixin],\n model: {\n prop: 'active'\n },\n props: {\n color: String,\n sticky: Boolean,\n animated: Boolean,\n offsetTop: Number,\n swipeable: Boolean,\n background: String,\n titleActiveColor: String,\n titleInactiveColor: String,\n ellipsis: {\n type: Boolean,\n \"default\": true\n },\n lazyRender: {\n type: Boolean,\n \"default\": true\n },\n lineWidth: {\n type: Number,\n \"default\": null\n },\n lineHeight: {\n type: Number,\n \"default\": null\n },\n active: {\n type: [Number, String],\n \"default\": 0\n },\n type: {\n type: String,\n \"default\": 'line'\n },\n duration: {\n type: Number,\n \"default\": 0.3\n },\n swipeThreshold: {\n type: Number,\n \"default\": 4\n }\n },\n data: function data() {\n return {\n tabs: [],\n position: '',\n curActive: null,\n lineStyle: {\n backgroundColor: this.color\n },\n events: {\n resize: false,\n sticky: false,\n swipeable: false\n }\n };\n },\n computed: {\n // whether the nav is scrollable\n scrollable: function scrollable() {\n return this.tabs.length > this.swipeThreshold || !this.ellipsis;\n },\n wrapStyle: function wrapStyle() {\n switch (this.position) {\n case 'top':\n return {\n top: this.offsetTop + 'px',\n position: 'fixed'\n };\n\n case 'bottom':\n return {\n top: 'auto',\n bottom: 0\n };\n\n default:\n return null;\n }\n },\n navStyle: function navStyle() {\n return {\n borderColor: this.color,\n background: this.background\n };\n },\n trackStyle: function trackStyle() {\n if (this.animated) {\n return {\n left: -1 * this.curActive * 100 + \"%\",\n transitionDuration: this.duration + \"s\"\n };\n }\n }\n },\n watch: {\n active: function active(val) {\n if (val !== this.curActive) {\n this.correctActive(val);\n }\n },\n color: function color() {\n this.setLine();\n },\n tabs: function tabs() {\n this.correctActive(this.curActive || this.active);\n this.scrollIntoView();\n this.setLine();\n },\n curActive: function curActive() {\n this.scrollIntoView();\n this.setLine(); // scroll to correct position\n\n if (this.position === 'top' || this.position === 'bottom') {\n setScrollTop(window, getElementTop(this.$el) - this.offsetTop);\n }\n },\n sticky: function sticky() {\n this.handlers(true);\n },\n swipeable: function swipeable() {\n this.handlers(true);\n }\n },\n mounted: function mounted() {\n this.onShow();\n },\n activated: function activated() {\n this.onShow();\n this.setLine();\n },\n deactivated: function deactivated() {\n this.handlers(false);\n },\n beforeDestroy: function beforeDestroy() {\n this.handlers(false);\n },\n methods: {\n onShow: function onShow() {\n var _this = this;\n\n this.$nextTick(function () {\n _this.inited = true;\n\n _this.handlers(true);\n\n _this.scrollIntoView(true);\n });\n },\n // whether to bind sticky listener\n handlers: function handlers(bind) {\n var events = this.events;\n var sticky = this.sticky && bind;\n var swipeable = this.swipeable && bind; // listen to window resize event\n\n if (events.resize !== bind) {\n events.resize = bind;\n (bind ? on : off)(window, 'resize', this.setLine, true);\n } // listen to scroll event\n\n\n if (events.sticky !== sticky) {\n events.sticky = sticky;\n this.scrollEl = this.scrollEl || getScrollEventTarget(this.$el);\n (sticky ? on : off)(this.scrollEl, 'scroll', this.onScroll, true);\n this.onScroll();\n } // listen to touch event\n\n\n if (events.swipeable !== swipeable) {\n events.swipeable = swipeable;\n var content = this.$refs.content;\n var action = swipeable ? on : off;\n action(content, 'touchstart', this.touchStart);\n action(content, 'touchmove', this.touchMove);\n action(content, 'touchend', this.onTouchEnd);\n action(content, 'touchcancel', this.onTouchEnd);\n }\n },\n // watch swipe touch end\n onTouchEnd: function onTouchEnd() {\n var direction = this.direction,\n deltaX = this.deltaX,\n curActive = this.curActive;\n var minSwipeDistance = 50;\n /* istanbul ignore else */\n\n if (direction === 'horizontal' && this.offsetX >= minSwipeDistance) {\n /* istanbul ignore else */\n if (deltaX > 0 && curActive !== 0) {\n this.setCurActive(curActive - 1);\n } else if (deltaX < 0 && curActive !== this.tabs.length - 1) {\n this.setCurActive(curActive + 1);\n }\n }\n },\n // adjust tab position\n onScroll: function onScroll() {\n var scrollTop = getScrollTop(window) + this.offsetTop;\n var elTopToPageTop = getElementTop(this.$el);\n var elBottomToPageTop = elTopToPageTop + this.$el.offsetHeight - this.$refs.wrap.offsetHeight;\n\n if (scrollTop > elBottomToPageTop) {\n this.position = 'bottom';\n } else if (scrollTop > elTopToPageTop) {\n this.position = 'top';\n } else {\n this.position = '';\n }\n\n var scrollParams = {\n scrollTop: scrollTop,\n isFixed: this.position === 'top'\n };\n this.$emit('scroll', scrollParams);\n },\n // update nav bar style\n setLine: function setLine() {\n var _this2 = this;\n\n var shouldAnimate = this.inited;\n this.$nextTick(function () {\n var tabs = _this2.$refs.tabs;\n\n if (!tabs || !tabs[_this2.curActive] || _this2.type !== 'line') {\n return;\n }\n\n var tab = tabs[_this2.curActive];\n var lineWidth = _this2.lineWidth,\n lineHeight = _this2.lineHeight;\n var width = isDef(lineWidth) ? lineWidth : tab.offsetWidth / 2;\n var left = tab.offsetLeft + (tab.offsetWidth - width) / 2;\n var lineStyle = {\n width: width + \"px\",\n backgroundColor: _this2.color,\n transform: \"translateX(\" + left + \"px)\"\n };\n\n if (shouldAnimate) {\n lineStyle.transitionDuration = _this2.duration + \"s\";\n }\n\n if (isDef(lineHeight)) {\n var height = lineHeight + \"px\";\n lineStyle.height = height;\n lineStyle.borderRadius = height;\n }\n\n _this2.lineStyle = lineStyle;\n });\n },\n // correct the value of active\n correctActive: function correctActive(active) {\n active = +active;\n var exist = this.tabs.some(function (tab) {\n return tab.index === active;\n });\n var defaultActive = (this.tabs[0] || {}).index || 0;\n this.setCurActive(exist ? active : defaultActive);\n },\n setCurActive: function setCurActive(active) {\n active = this.findAvailableTab(active, active < this.curActive);\n\n if (isDef(active) && active !== this.curActive) {\n this.$emit('input', active);\n\n if (this.curActive !== null) {\n this.$emit('change', active, this.tabs[active].title);\n }\n\n this.curActive = active;\n }\n },\n findAvailableTab: function findAvailableTab(active, reverse) {\n var diff = reverse ? -1 : 1;\n var index = active;\n\n while (index >= 0 && index < this.tabs.length) {\n if (!this.tabs[index].disabled) {\n return index;\n }\n\n index += diff;\n }\n },\n // emit event when clicked\n onClick: function onClick(index) {\n var _this$tabs$index = this.tabs[index],\n title = _this$tabs$index.title,\n disabled = _this$tabs$index.disabled;\n\n if (disabled) {\n this.$emit('disabled', index, title);\n } else {\n this.setCurActive(index);\n this.$emit('click', index, title);\n }\n },\n // scroll active tab into view\n scrollIntoView: function scrollIntoView(immediate) {\n var tabs = this.$refs.tabs;\n\n if (!this.scrollable || !tabs || !tabs[this.curActive]) {\n return;\n }\n\n var nav = this.$refs.nav;\n var scrollLeft = nav.scrollLeft,\n navWidth = nav.offsetWidth;\n var _tabs$this$curActive = tabs[this.curActive],\n offsetLeft = _tabs$this$curActive.offsetLeft,\n tabWidth = _tabs$this$curActive.offsetWidth;\n this.scrollTo(nav, scrollLeft, offsetLeft - (navWidth - tabWidth) / 2, immediate);\n },\n // animate the scrollLeft of nav\n scrollTo: function scrollTo(el, from, to, immediate) {\n if (immediate) {\n el.scrollLeft += to - from;\n return;\n }\n\n var count = 0;\n var frames = Math.round(this.duration * 1000 / 16);\n\n var animate = function animate() {\n el.scrollLeft += (to - from) / frames;\n /* istanbul ignore next */\n\n if (++count < frames) {\n raf(animate);\n }\n };\n\n animate();\n },\n // render title slot of child tab\n renderTitle: function renderTitle(el, index) {\n var _this3 = this;\n\n this.$nextTick(function () {\n var title = _this3.$refs.title[index];\n title.parentNode.replaceChild(el, title);\n });\n },\n getTabStyle: function getTabStyle(item, index) {\n var style = {};\n var color = this.color;\n var active = index === this.curActive;\n var isCard = this.type === 'card'; // theme color\n\n if (color) {\n if (!item.disabled && isCard && !active) {\n style.color = color;\n }\n\n if (!item.disabled && isCard && active) {\n style.backgroundColor = color;\n }\n\n if (isCard) {\n style.borderColor = color;\n }\n }\n\n var titleColor = active ? this.titleActiveColor : this.titleInactiveColor;\n\n if (titleColor) {\n style.color = titleColor;\n }\n\n if (this.scrollable && this.ellipsis) {\n style.flexBasis = 88 / this.swipeThreshold + '%';\n }\n\n return style;\n }\n },\n render: function render(h) {\n var _this4 = this;\n\n var type = this.type,\n ellipsis = this.ellipsis,\n animated = this.animated,\n scrollable = this.scrollable;\n var Nav = this.tabs.map(function (tab, index) {\n return h(\"div\", {\n \"ref\": \"tabs\",\n \"refInFor\": true,\n \"class\": tabBem({\n active: index === _this4.curActive,\n disabled: tab.disabled,\n complete: !ellipsis\n }),\n \"style\": _this4.getTabStyle(tab, index),\n \"on\": {\n \"click\": function click() {\n _this4.onClick(index);\n }\n }\n }, [h(\"span\", {\n \"ref\": \"title\",\n \"refInFor\": true,\n \"class\": {\n 'van-ellipsis': ellipsis\n }\n }, [tab.title])]);\n });\n return h(\"div\", {\n \"class\": bem([type])\n }, [h(\"div\", {\n \"ref\": \"wrap\",\n \"style\": this.wrapStyle,\n \"class\": [bem('wrap', {\n scrollable: scrollable\n }), {\n 'van-hairline--top-bottom': type === 'line'\n }]\n }, [h(\"div\", {\n \"ref\": \"nav\",\n \"class\": bem('nav', [type]),\n \"style\": this.navStyle\n }, [this.slots('nav-left'), type === 'line' && h(\"div\", {\n \"class\": bem('line'),\n \"style\": this.lineStyle\n }), Nav, this.slots('nav-right')])]), h(\"div\", {\n \"ref\": \"content\",\n \"class\": bem('content', {\n animated: animated\n })\n }, [animated ? h(\"div\", {\n \"class\": bem('track'),\n \"style\": this.trackStyle\n }, [this.slots()]) : this.slots()])]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/tabs/index.js\n// module id = null\n// module chunks = ","import { use } from '../utils';\nimport Tab from '../tab';\nimport Tabs from '../tabs';\nimport Field from '../field';\nimport Button from '../button';\nimport Coupon from '../coupon';\n\nvar _use = use('coupon-list'),\n sfc = _use[0],\n bem = _use[1],\n t = _use[2];\n\nvar EMPTY_IMAGE = 'https://img.yzcdn.cn/vant/coupon-empty.png';\nexport default sfc({\n model: {\n prop: 'code'\n },\n props: {\n code: String,\n coupons: Array,\n disabledCoupons: Array,\n closeButtonText: String,\n inputPlaceholder: String,\n exchangeButtonText: String,\n exchangeButtonLoading: Boolean,\n exchangeButtonDisabled: Boolean,\n exchangeMinLength: {\n type: Number,\n \"default\": 1\n },\n chosenCoupon: {\n type: Number,\n \"default\": -1\n },\n displayedCouponIndex: {\n type: Number,\n \"default\": -1\n },\n showExchangeBar: {\n type: Boolean,\n \"default\": true\n },\n showCloseButton: {\n type: Boolean,\n \"default\": true\n },\n currency: {\n type: String,\n \"default\": '¥'\n }\n },\n data: function data() {\n return {\n tab: 0,\n winHeight: window.innerHeight,\n currentCode: this.code || ''\n };\n },\n computed: {\n buttonDisabled: function buttonDisabled() {\n return !this.exchangeButtonLoading && (this.exchangeButtonDisabled || !this.currentCode || this.currentCode.length < this.exchangeMinLength);\n },\n title: function title() {\n return t('enable') + \" (\" + this.coupons.length + \")\";\n },\n disabledTitle: function disabledTitle() {\n return t('disabled') + \" (\" + this.disabledCoupons.length + \")\";\n },\n listStyle: function listStyle() {\n return {\n height: this.winHeight - (this.showExchangeBar ? 140 : 94) + 'px'\n };\n }\n },\n watch: {\n code: function code(_code) {\n this.currentCode = _code;\n },\n currentCode: function currentCode(code) {\n this.$emit('input', code);\n },\n displayedCouponIndex: function displayedCouponIndex(val) {\n this.scrollToShowCoupon(val);\n }\n },\n mounted: function mounted() {\n this.scrollToShowCoupon(this.displayedCouponIndex);\n },\n methods: {\n onClickExchangeButton: function onClickExchangeButton() {\n this.$emit('exchange', this.currentCode); // auto clear currentCode when not use vModel\n\n if (!this.code) {\n this.currentCode = '';\n }\n },\n // scroll to show specific coupon\n scrollToShowCoupon: function scrollToShowCoupon(index) {\n var _this = this;\n\n if (index === -1) {\n return;\n }\n\n this.$nextTick(function () {\n var _this$$refs = _this.$refs,\n card = _this$$refs.card,\n list = _this$$refs.list;\n /* istanbul ignore next */\n\n if (list && card && card[index]) {\n list.scrollTop = card[index].$el.offsetTop - 100;\n }\n });\n },\n renderEmpty: function renderEmpty() {\n var h = this.$createElement;\n return h(\"div\", {\n \"class\": bem('empty')\n }, [h(\"img\", {\n \"attrs\": {\n \"src\": EMPTY_IMAGE\n }\n }), h(\"p\", [t('empty')])]);\n },\n renderExchangeButton: function renderExchangeButton() {\n var h = this.$createElement;\n return h(Button, {\n \"attrs\": {\n \"size\": \"small\",\n \"type\": \"danger\",\n \"text\": this.exchangeButtonText || t('exchange'),\n \"loading\": this.exchangeButtonLoading,\n \"disabled\": this.buttonDisabled\n },\n \"class\": bem('exchange'),\n \"on\": {\n \"click\": this.onClickExchangeButton\n }\n });\n }\n },\n render: function render(h) {\n var _this2 = this;\n\n var ExchangeBar = this.showExchangeBar && h(Field, {\n \"attrs\": {\n \"clearable\": true,\n \"border\": false,\n \"placeholder\": this.inputPlaceholder || t('placeholder'),\n \"maxlength\": \"20\"\n },\n \"class\": bem('field'),\n \"scopedSlots\": {\n button: this.renderExchangeButton\n },\n \"model\": {\n value: _this2.currentCode,\n callback: function callback($$v) {\n _this2.currentCode = $$v;\n }\n }\n });\n\n var onChange = function onChange(index) {\n return function () {\n return _this2.$emit('change', index);\n };\n };\n\n var CouponTab = h(Tab, {\n \"attrs\": {\n \"title\": this.title\n }\n }, [h(\"div\", {\n \"class\": bem('list'),\n \"style\": this.listStyle\n }, [this.coupons.map(function (coupon, index) {\n return h(Coupon, {\n \"ref\": \"card\",\n \"key\": coupon.id,\n \"attrs\": {\n \"coupon\": coupon,\n \"currency\": _this2.currency,\n \"chosen\": index === _this2.chosenCoupon\n },\n \"nativeOn\": {\n \"click\": onChange(index)\n }\n });\n }), !this.coupons.length && this.renderEmpty()])]);\n var DisabledCouponTab = h(Tab, {\n \"attrs\": {\n \"title\": this.disabledTitle\n }\n }, [h(\"div\", {\n \"class\": bem('list'),\n \"style\": this.listStyle\n }, [this.disabledCoupons.map(function (coupon) {\n return h(Coupon, {\n \"attrs\": {\n \"disabled\": true,\n \"coupon\": coupon,\n \"currency\": _this2.currency\n },\n \"key\": coupon.id\n });\n }), !this.disabledCoupons.length && this.renderEmpty()])]);\n return h(\"div\", {\n \"class\": bem()\n }, [ExchangeBar, h(Tabs, {\n \"class\": bem('tab'),\n \"attrs\": {\n \"line-width\": 120\n },\n \"model\": {\n value: _this2.tab,\n callback: function callback($$v) {\n _this2.tab = $$v;\n }\n }\n }, [CouponTab, DisabledCouponTab]), h(Button, {\n \"directives\": [{\n name: \"show\",\n value: this.showCloseButton\n }],\n \"attrs\": {\n \"size\": \"large\",\n \"text\": this.closeButtonText || t('close')\n },\n \"class\": bem('close'),\n \"on\": {\n \"click\": onChange(-1)\n }\n })]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/coupon-list/index.js\n// module id = null\n// module chunks = ","export function isValidDate(date) {\n return Object.prototype.toString.call(date) === '[object Date]' && !isNaN(date.getTime());\n}\nexport function padZero(val) {\n return (\"00\" + val).slice(-2);\n}\nexport function times(n, iteratee) {\n var index = -1;\n var result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n\n return result;\n}\nexport function getTrueValue(formattedValue) {\n if (!formattedValue) return;\n\n while (isNaN(parseInt(formattedValue, 10))) {\n formattedValue = formattedValue.slice(1);\n }\n\n return parseInt(formattedValue, 10);\n}\nexport function getMonthEndDay(year, month) {\n return 32 - new Date(year, month - 1, 32).getDate();\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/datetime-picker/utils.js\n// module id = null\n// module chunks = ","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { use, range } from '../utils';\nimport Picker from '../picker';\nimport { pickerProps } from '../picker/shared';\nimport { times, padZero, isValidDate, getTrueValue, getMonthEndDay } from './utils';\n\nvar _use = use('datetime-picker'),\n sfc = _use[0],\n bem = _use[1];\n\nvar currentYear = new Date().getFullYear();\nexport default sfc({\n props: _extends({}, pickerProps, {\n value: null,\n minHour: Number,\n minMinute: Number,\n type: {\n type: String,\n \"default\": 'datetime'\n },\n showToolbar: {\n type: Boolean,\n \"default\": true\n },\n format: {\n type: String,\n \"default\": 'YYYY.MM.DD HH时 mm分'\n },\n formatter: {\n type: Function,\n \"default\": function _default(type, value) {\n return value;\n }\n },\n minDate: {\n type: Date,\n \"default\": function _default() {\n return new Date(currentYear - 10, 0, 1);\n },\n validator: isValidDate\n },\n maxDate: {\n type: Date,\n \"default\": function _default() {\n return new Date(currentYear + 10, 11, 31);\n },\n validator: isValidDate\n },\n maxHour: {\n type: Number,\n \"default\": 23\n },\n maxMinute: {\n type: Number,\n \"default\": 59\n }\n }),\n data: function data() {\n return {\n innerValue: this.correctValue(this.value)\n };\n },\n watch: {\n value: function value(val) {\n val = this.correctValue(val);\n var isEqual = this.type === 'time' ? val === this.innerValue : val.valueOf() === this.innerValue.valueOf();\n\n if (!isEqual) {\n this.innerValue = val;\n\n if (this.type === 'time') {\n this.updateColumnValue(val);\n }\n }\n },\n innerValue: function innerValue(val) {\n this.$emit('input', val);\n },\n columns: function columns() {\n this.updateColumnValue(this.innerValue);\n }\n },\n computed: {\n ranges: function ranges() {\n if (this.type === 'time') {\n return [{\n type: 'hour',\n range: [this.minHour, this.maxHour]\n }, {\n type: 'minute',\n range: [this.minMinute, this.maxMinute]\n }];\n }\n\n var _this$getBoundary = this.getBoundary('max', this.innerValue),\n maxYear = _this$getBoundary.maxYear,\n maxDate = _this$getBoundary.maxDate,\n maxMonth = _this$getBoundary.maxMonth,\n maxHour = _this$getBoundary.maxHour,\n maxMinute = _this$getBoundary.maxMinute;\n\n var _this$getBoundary2 = this.getBoundary('min', this.innerValue),\n minYear = _this$getBoundary2.minYear,\n minDate = _this$getBoundary2.minDate,\n minMonth = _this$getBoundary2.minMonth,\n minHour = _this$getBoundary2.minHour,\n minMinute = _this$getBoundary2.minMinute;\n\n var result = [{\n type: 'year',\n range: [minYear, maxYear]\n }, {\n type: 'month',\n range: [minMonth, maxMonth]\n }, {\n type: 'day',\n range: [minDate, maxDate]\n }, {\n type: 'hour',\n range: [minHour, maxHour]\n }, {\n type: 'minute',\n range: [minMinute, maxMinute]\n }];\n if (this.type === 'date') result.splice(3, 2);\n if (this.type === 'year-month') result.splice(2, 3);\n return result;\n },\n columns: function columns() {\n var _this = this;\n\n var results = this.ranges.map(function (_ref) {\n var type = _ref.type,\n rangeArr = _ref.range;\n var values = times(rangeArr[1] - rangeArr[0] + 1, function (index) {\n var value = rangeArr[0] + index;\n value = value < 10 ? \"0\" + value : \"\" + value;\n return _this.formatter(type, value);\n });\n return {\n values: values\n };\n });\n return results;\n }\n },\n mounted: function mounted() {\n this.updateColumnValue(this.innerValue);\n },\n methods: {\n correctValue: function correctValue(value) {\n // validate value\n var isDateType = this.type !== 'time';\n\n if (isDateType && !isValidDate(value)) {\n value = this.minDate;\n } else if (!value) {\n var minHour = this.minHour;\n value = (minHour > 10 ? minHour : '0' + minHour) + \":00\";\n } // time type\n\n\n if (!isDateType) {\n var _value$split = value.split(':'),\n hour = _value$split[0],\n minute = _value$split[1];\n\n hour = padZero(range(hour, this.minHour, this.maxHour));\n minute = padZero(range(minute, this.minMinute, this.maxMinute));\n return hour + \":\" + minute;\n } // date type\n\n\n value = Math.max(value, this.minDate.getTime());\n value = Math.min(value, this.maxDate.getTime());\n return new Date(value);\n },\n getBoundary: function getBoundary(type, value) {\n var _ref2;\n\n var boundary = this[type + \"Date\"];\n var year = boundary.getFullYear();\n var month = 1;\n var date = 1;\n var hour = 0;\n var minute = 0;\n\n if (type === 'max') {\n month = 12;\n date = getMonthEndDay(value.getFullYear(), value.getMonth() + 1);\n hour = 23;\n minute = 59;\n }\n\n if (value.getFullYear() === year) {\n month = boundary.getMonth() + 1;\n\n if (value.getMonth() + 1 === month) {\n date = boundary.getDate();\n\n if (value.getDate() === date) {\n hour = boundary.getHours();\n\n if (value.getHours() === hour) {\n minute = boundary.getMinutes();\n }\n }\n }\n }\n\n return _ref2 = {}, _ref2[type + \"Year\"] = year, _ref2[type + \"Month\"] = month, _ref2[type + \"Date\"] = date, _ref2[type + \"Hour\"] = hour, _ref2[type + \"Minute\"] = minute, _ref2;\n },\n onConfirm: function onConfirm() {\n this.$emit('confirm', this.innerValue);\n },\n onChange: function onChange(picker) {\n var _this2 = this;\n\n var value;\n\n if (this.type === 'time') {\n var indexes = picker.getIndexes();\n value = indexes[0] + this.minHour + \":\" + (indexes[1] + this.minMinute);\n } else {\n var values = picker.getValues();\n var year = getTrueValue(values[0]);\n var month = getTrueValue(values[1]);\n var maxDate = getMonthEndDay(year, month);\n var date = getTrueValue(values[2]);\n\n if (this.type === 'year-month') {\n date = 1;\n }\n\n date = date > maxDate ? maxDate : date;\n var hour = 0;\n var minute = 0;\n\n if (this.type === 'datetime') {\n hour = getTrueValue(values[3]);\n minute = getTrueValue(values[4]);\n }\n\n value = new Date(year, month - 1, date, hour, minute);\n }\n\n this.innerValue = this.correctValue(value);\n this.$nextTick(function () {\n _this2.$nextTick(function () {\n _this2.$emit('change', picker);\n });\n });\n },\n updateColumnValue: function updateColumnValue(value) {\n var _this3 = this;\n\n var values = [];\n var formatter = this.formatter;\n\n if (this.type === 'time') {\n var pair = value.split(':');\n values = [formatter('hour', pair[0]), formatter('minute', pair[1])];\n } else {\n values = [formatter('year', \"\" + value.getFullYear()), formatter('month', padZero(value.getMonth() + 1)), formatter('day', padZero(value.getDate()))];\n\n if (this.type === 'datetime') {\n values.push(formatter('hour', padZero(value.getHours())), formatter('minute', padZero(value.getMinutes())));\n }\n\n if (this.type === 'year-month') {\n values = values.slice(0, 2);\n }\n }\n\n this.$nextTick(function () {\n _this3.$refs.picker.setValues(values);\n });\n }\n },\n render: function render(h) {\n var _this4 = this;\n\n var props = {};\n Object.keys(pickerProps).forEach(function (key) {\n props[key] = _this4[key];\n });\n return h(Picker, {\n \"class\": bem(),\n \"ref\": \"picker\",\n \"attrs\": {\n \"columns\": this.columns\n },\n \"on\": {\n \"change\": this.onChange,\n \"confirm\": this.onConfirm,\n \"cancel\": function cancel() {\n _this4.$emit('cancel');\n }\n },\n \"props\": _extends({}, props)\n });\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/datetime-picker/index.js\n// module id = null\n// module chunks = ","import _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use } from '../utils';\nimport { inherit } from '../utils/functional'; // Types\n\nvar _use = use('goods-action'),\n sfc = _use[0],\n bem = _use[1];\n\nfunction GoodsAction(h, props, slots, ctx) {\n return h(\"div\", _mergeJSXProps([{\n \"class\": bem({\n 'safe-area-inset-bottom': props.safeAreaInsetBottom\n })\n }, inherit(ctx, true)]), [slots[\"default\"] && slots[\"default\"]()]);\n}\n\nGoodsAction.props = {\n safeAreaInsetBottom: Boolean\n};\nexport default sfc(GoodsAction);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/goods-action/index.js\n// module id = null\n// module chunks = ","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use } from '../utils';\nimport Button from '../button';\nimport { emit, inherit } from '../utils/functional';\nimport { functionalRoute, routeProps } from '../utils/router'; // Types\n\nvar _use = use('goods-action-big-btn'),\n sfc = _use[0],\n bem = _use[1];\n\nfunction GoodsActionBigBtn(h, props, slots, ctx) {\n var onClick = function onClick(event) {\n emit(ctx, 'click', event);\n functionalRoute(ctx);\n };\n\n return h(Button, _mergeJSXProps([{\n \"attrs\": {\n \"square\": true,\n \"size\": \"large\",\n \"loading\": props.loading,\n \"disabled\": props.disabled,\n \"type\": props.primary ? 'danger' : 'warning'\n },\n \"class\": bem(),\n \"on\": {\n \"click\": onClick\n }\n }, inherit(ctx)]), [slots[\"default\"] ? slots[\"default\"]() : props.text]);\n}\n\nGoodsActionBigBtn.props = _extends({}, routeProps, {\n text: String,\n primary: Boolean,\n loading: Boolean,\n disabled: Boolean\n});\nexport default sfc(GoodsActionBigBtn);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/goods-action-big-btn/index.js\n// module id = null\n// module chunks = ","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use } from '../utils';\nimport Icon from '../icon';\nimport { emit, inherit } from '../utils/functional';\nimport { functionalRoute, routeProps } from '../utils/router'; // Types\n\nvar _use = use('goods-action-mini-btn'),\n sfc = _use[0],\n bem = _use[1];\n\nfunction GoodsActionMiniBtn(h, props, slots, ctx) {\n var onClick = function onClick(event) {\n emit(ctx, 'click', event);\n functionalRoute(ctx);\n };\n\n return h(\"div\", _mergeJSXProps([{\n \"class\": [bem(), 'van-hairline'],\n \"on\": {\n \"click\": onClick\n }\n }, inherit(ctx)]), [h(Icon, {\n \"class\": [bem('icon'), props.iconClass],\n \"attrs\": {\n \"tag\": \"div\",\n \"info\": props.info,\n \"name\": props.icon\n }\n }), slots[\"default\"] ? slots[\"default\"]() : props.text]);\n}\n\nGoodsActionMiniBtn.props = _extends({}, routeProps, {\n text: String,\n icon: String,\n info: [String, Number],\n iconClass: null\n});\nexport default sfc(GoodsActionMiniBtn);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/goods-action-mini-btn/index.js\n// module id = null\n// module chunks = ","import { use } from '../utils';\nimport { on, off, preventDefault } from '../utils/event';\nimport { TouchMixin } from '../mixins/touch';\n\nvar _use = use('swipe'),\n sfc = _use[0],\n bem = _use[1];\n\nexport default sfc({\n mixins: [TouchMixin],\n props: {\n width: Number,\n height: Number,\n autoplay: Number,\n vertical: Boolean,\n initialSwipe: Number,\n indicatorColor: String,\n loop: {\n type: Boolean,\n \"default\": true\n },\n touchable: {\n type: Boolean,\n \"default\": true\n },\n showIndicators: {\n type: Boolean,\n \"default\": true\n },\n duration: {\n type: Number,\n \"default\": 500\n }\n },\n data: function data() {\n return {\n computedWidth: 0,\n computedHeight: 0,\n offset: 0,\n active: 0,\n deltaX: 0,\n deltaY: 0,\n swipes: [],\n swiping: false\n };\n },\n mounted: function mounted() {\n this.initialize();\n\n if (!this.$isServer) {\n on(window, 'resize', this.onResize, true);\n }\n },\n activated: function activated() {\n if (this.rendered) {\n this.initialize();\n }\n\n this.rendered = true;\n },\n destroyed: function destroyed() {\n this.clear();\n\n if (!this.$isServer) {\n off(window, 'resize', this.onResize, true);\n }\n },\n watch: {\n swipes: function swipes() {\n this.initialize();\n },\n initialSwipe: function initialSwipe() {\n this.initialize();\n },\n autoplay: function autoplay(_autoplay) {\n if (!_autoplay) {\n this.clear();\n } else {\n this.autoPlay();\n }\n }\n },\n computed: {\n count: function count() {\n return this.swipes.length;\n },\n delta: function delta() {\n return this.vertical ? this.deltaY : this.deltaX;\n },\n size: function size() {\n return this[this.vertical ? 'computedHeight' : 'computedWidth'];\n },\n trackSize: function trackSize() {\n return this.count * this.size;\n },\n activeIndicator: function activeIndicator() {\n return (this.active + this.count) % this.count;\n },\n isCorrectDirection: function isCorrectDirection() {\n var expect = this.vertical ? 'vertical' : 'horizontal';\n return this.direction === expect;\n },\n trackStyle: function trackStyle() {\n var _ref;\n\n var mainAxis = this.vertical ? 'height' : 'width';\n var crossAxis = this.vertical ? 'width' : 'height';\n return _ref = {}, _ref[mainAxis] = this.trackSize + \"px\", _ref[crossAxis] = this[crossAxis] ? this[crossAxis] + \"px\" : '', _ref.transitionDuration = (this.swiping ? 0 : this.duration) + \"ms\", _ref.transform = \"translate\" + (this.vertical ? 'Y' : 'X') + \"(\" + this.offset + \"px)\", _ref;\n },\n indicatorStyle: function indicatorStyle() {\n return {\n backgroundColor: this.indicatorColor\n };\n }\n },\n methods: {\n // initialize swipe position\n initialize: function initialize(active) {\n if (active === void 0) {\n active = this.initialSwipe;\n }\n\n clearTimeout(this.timer);\n\n if (this.$el) {\n var rect = this.$el.getBoundingClientRect();\n this.computedWidth = this.width || rect.width;\n this.computedHeight = this.height || rect.height;\n }\n\n this.swiping = true;\n this.active = active;\n this.offset = this.count > 1 ? -this.size * this.active : 0;\n this.swipes.forEach(function (swipe) {\n swipe.offset = 0;\n });\n this.autoPlay();\n },\n onResize: function onResize() {\n this.initialize(this.activeIndicator);\n },\n onTouchStart: function onTouchStart(event) {\n if (!this.touchable) return;\n this.clear();\n this.swiping = true;\n this.touchStart(event);\n this.correctPosition();\n },\n onTouchMove: function onTouchMove(event) {\n if (!this.touchable || !this.swiping) return;\n this.touchMove(event);\n\n if (this.isCorrectDirection) {\n preventDefault(event, true);\n this.move({\n offset: Math.min(Math.max(this.delta, -this.size), this.size)\n });\n }\n },\n onTouchEnd: function onTouchEnd() {\n if (!this.touchable || !this.swiping) return;\n\n if (this.delta && this.isCorrectDirection) {\n var offset = this.vertical ? this.offsetY : this.offsetX;\n this.move({\n pace: offset > 0 ? this.delta > 0 ? -1 : 1 : 0,\n emitChange: true\n });\n }\n\n this.swiping = false;\n this.autoPlay();\n },\n move: function move(_ref2) {\n var _ref2$pace = _ref2.pace,\n pace = _ref2$pace === void 0 ? 0 : _ref2$pace,\n _ref2$offset = _ref2.offset,\n offset = _ref2$offset === void 0 ? 0 : _ref2$offset,\n emitChange = _ref2.emitChange;\n var delta = this.delta,\n active = this.active,\n count = this.count,\n swipes = this.swipes,\n trackSize = this.trackSize;\n var atFirst = active === 0;\n var atLast = active === count - 1;\n var outOfBounds = !this.loop && (atFirst && (offset > 0 || pace < 0) || atLast && (offset < 0 || pace > 0));\n\n if (outOfBounds || count <= 1) {\n return;\n }\n\n if (swipes[0]) {\n swipes[0].offset = atLast && (delta < 0 || pace > 0) ? trackSize : 0;\n }\n\n if (swipes[count - 1]) {\n swipes[count - 1].offset = atFirst && (delta > 0 || pace < 0) ? -trackSize : 0;\n }\n\n if (pace && active + pace >= -1 && active + pace <= count) {\n this.active += pace;\n\n if (emitChange) {\n this.$emit('change', this.activeIndicator);\n }\n }\n\n this.offset = Math.round(offset - this.active * this.size);\n },\n swipeTo: function swipeTo(index) {\n var _this = this;\n\n this.swiping = true;\n this.resetTouchStatus();\n this.correctPosition();\n setTimeout(function () {\n _this.swiping = false;\n\n _this.move({\n pace: index % _this.count - _this.active,\n emitChange: true\n });\n }, 30);\n },\n correctPosition: function correctPosition() {\n if (this.active <= -1) {\n this.move({\n pace: this.count\n });\n }\n\n if (this.active >= this.count) {\n this.move({\n pace: -this.count\n });\n }\n },\n clear: function clear() {\n clearTimeout(this.timer);\n },\n autoPlay: function autoPlay() {\n var _this2 = this;\n\n var autoplay = this.autoplay;\n\n if (autoplay && this.count > 1) {\n this.clear();\n this.timer = setTimeout(function () {\n _this2.swiping = true;\n\n _this2.resetTouchStatus();\n\n _this2.correctPosition();\n\n setTimeout(function () {\n _this2.swiping = false;\n\n _this2.move({\n pace: 1,\n emitChange: true\n });\n\n _this2.autoPlay();\n }, 30);\n }, autoplay);\n }\n }\n },\n render: function render(h) {\n var _this3 = this;\n\n var count = this.count,\n activeIndicator = this.activeIndicator;\n var Indicator = this.slots('indicator') || this.showIndicators && count > 1 && h(\"div\", {\n \"class\": bem('indicators', {\n vertical: this.vertical\n })\n }, [Array.apply(void 0, Array(count)).map(function (empty, index) {\n return h(\"i\", {\n \"class\": bem('indicator', {\n active: index === activeIndicator\n }),\n \"style\": index === activeIndicator ? _this3.indicatorStyle : null\n });\n })]);\n return h(\"div\", {\n \"class\": bem()\n }, [h(\"div\", {\n \"ref\": \"track\",\n \"style\": this.trackStyle,\n \"class\": bem('track'),\n \"on\": {\n \"touchstart\": this.onTouchStart,\n \"touchmove\": this.onTouchMove,\n \"touchend\": this.onTouchEnd,\n \"touchcancel\": this.onTouchEnd\n }\n }, [this.slots()]), Indicator]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/swipe/index.js\n// module id = null\n// module chunks = ","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { use } from '../utils';\n\nvar _use = use('swipe-item'),\n sfc = _use[0],\n bem = _use[1];\n\nexport default sfc({\n data: function data() {\n return {\n offset: 0\n };\n },\n beforeCreate: function beforeCreate() {\n this.$parent.swipes.push(this);\n },\n destroyed: function destroyed() {\n this.$parent.swipes.splice(this.$parent.swipes.indexOf(this), 1);\n },\n render: function render(h) {\n var _this$$parent = this.$parent,\n vertical = _this$$parent.vertical,\n computedWidth = _this$$parent.computedWidth,\n computedHeight = _this$$parent.computedHeight;\n var style = {\n width: computedWidth + 'px',\n height: vertical ? computedHeight + 'px' : '100%',\n transform: \"translate\" + (vertical ? 'Y' : 'X') + \"(\" + this.offset + \"px)\"\n };\n return h(\"div\", {\n \"class\": bem(),\n \"style\": style,\n \"on\": _extends({}, this.$listeners)\n }, [this.slots()]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/swipe-item/index.js\n// module id = null\n// module chunks = ","import _mergeJSXProps2 from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use, range } from '../utils';\nimport { preventDefault } from '../utils/event';\nimport { PopupMixin } from '../mixins/popup';\nimport { TouchMixin } from '../mixins/touch';\nimport Swipe from '../swipe';\nimport SwipeItem from '../swipe-item';\n\nvar _use = use('image-preview'),\n sfc = _use[0],\n bem = _use[1];\n\nfunction getDistance(touches) {\n return Math.sqrt(Math.abs((touches[0].clientX - touches[1].clientX) * (touches[0].clientY - touches[1].clientY)));\n}\n\nexport default sfc({\n mixins: [PopupMixin, TouchMixin],\n props: {\n images: Array,\n className: null,\n lazyLoad: Boolean,\n asyncClose: Boolean,\n startPosition: Number,\n showIndicators: Boolean,\n loop: {\n type: Boolean,\n \"default\": true\n },\n overlay: {\n type: Boolean,\n \"default\": true\n },\n showIndex: {\n type: Boolean,\n \"default\": true\n },\n minZoom: {\n type: Number,\n \"default\": 1 / 3\n },\n maxZoom: {\n type: Number,\n \"default\": 3\n },\n overlayClass: {\n type: String,\n \"default\": 'van-image-preview__overlay'\n },\n closeOnClickOverlay: {\n type: Boolean,\n \"default\": true\n }\n },\n data: function data() {\n return {\n scale: 1,\n moveX: 0,\n moveY: 0,\n moving: false,\n zooming: false,\n active: 0\n };\n },\n computed: {\n imageStyle: function imageStyle() {\n var scale = this.scale;\n var style = {\n transition: this.zooming || this.moving ? '' : '.3s all'\n };\n\n if (scale !== 1) {\n style.transform = \"scale3d(\" + scale + \", \" + scale + \", 1) translate(\" + this.moveX / scale + \"px, \" + this.moveY / scale + \"px)\";\n }\n\n return style;\n }\n },\n watch: {\n value: function value() {\n this.active = this.startPosition;\n },\n startPosition: function startPosition(active) {\n this.active = active;\n }\n },\n methods: {\n onWrapperTouchStart: function onWrapperTouchStart() {\n this.touchStartTime = new Date();\n },\n onWrapperTouchEnd: function onWrapperTouchEnd(event) {\n preventDefault(event);\n var deltaTime = new Date() - this.touchStartTime;\n\n var _ref = this.$refs.swipe || {},\n _ref$offsetX = _ref.offsetX,\n offsetX = _ref$offsetX === void 0 ? 0 : _ref$offsetX,\n _ref$offsetY = _ref.offsetY,\n offsetY = _ref$offsetY === void 0 ? 0 : _ref$offsetY; // prevent long tap to close component\n\n\n if (deltaTime < 300 && offsetX < 10 && offsetY < 10) {\n var index = this.active;\n this.resetScale();\n this.$emit('close', {\n index: index,\n url: this.images[index]\n });\n\n if (!this.asyncClose) {\n this.$emit('input', false);\n }\n }\n },\n startMove: function startMove(event) {\n var image = event.currentTarget;\n var rect = image.getBoundingClientRect();\n var winWidth = window.innerWidth;\n var winHeight = window.innerHeight;\n this.touchStart(event);\n this.moving = true;\n this.startMoveX = this.moveX;\n this.startMoveY = this.moveY;\n this.maxMoveX = Math.max(0, (rect.width - winWidth) / 2);\n this.maxMoveY = Math.max(0, (rect.height - winHeight) / 2);\n },\n startZoom: function startZoom(event) {\n this.moving = false;\n this.zooming = true;\n this.startScale = this.scale;\n this.startDistance = getDistance(event.touches);\n },\n onTouchStart: function onTouchStart(event) {\n var touches = event.touches;\n\n var _ref2 = this.$refs.swipe || {},\n _ref2$offsetX = _ref2.offsetX,\n offsetX = _ref2$offsetX === void 0 ? 0 : _ref2$offsetX;\n\n if (touches.length === 1 && this.scale !== 1) {\n this.startMove(event);\n }\n /* istanbul ignore else */\n else if (touches.length === 2 && !offsetX) {\n this.startZoom(event);\n }\n },\n onTouchMove: function onTouchMove(event) {\n var touches = event.touches;\n\n if (this.moving || this.zooming) {\n preventDefault(event, true);\n }\n\n if (this.moving) {\n this.touchMove(event);\n var moveX = this.deltaX + this.startMoveX;\n var moveY = this.deltaY + this.startMoveY;\n this.moveX = range(moveX, -this.maxMoveX, this.maxMoveX);\n this.moveY = range(moveY, -this.maxMoveY, this.maxMoveY);\n }\n\n if (this.zooming && touches.length === 2) {\n var distance = getDistance(touches);\n var scale = this.startScale * distance / this.startDistance;\n this.scale = range(scale, this.minZoom, this.maxZoom);\n }\n },\n onTouchEnd: function onTouchEnd(event) {\n /* istanbul ignore else */\n if (this.moving || this.zooming) {\n var stopPropagation = true;\n\n if (this.moving && this.startMoveX === this.moveX && this.startMoveY === this.moveY) {\n stopPropagation = false;\n }\n\n if (!event.touches.length) {\n this.moving = false;\n this.zooming = false;\n this.startMoveX = 0;\n this.startMoveY = 0;\n this.startScale = 1;\n\n if (this.scale < 1) {\n this.resetScale();\n }\n }\n\n if (stopPropagation) {\n preventDefault(event, true);\n }\n }\n },\n onChange: function onChange(active) {\n this.resetScale();\n this.active = active;\n this.$emit('change', active);\n },\n resetScale: function resetScale() {\n this.scale = 1;\n this.moveX = 0;\n this.moveY = 0;\n }\n },\n render: function render(h) {\n var _this = this;\n\n if (!this.value) {\n return;\n }\n\n var active = this.active,\n images = this.images;\n var Index = this.showIndex && h(\"div\", {\n \"class\": bem('index')\n }, [this.slots('index') || active + 1 + \"/\" + images.length]);\n var Images = h(Swipe, {\n \"ref\": \"swipe\",\n \"attrs\": {\n \"loop\": this.loop,\n \"indicatorColor\": \"white\",\n \"initialSwipe\": this.startPosition,\n \"showIndicators\": this.showIndicators\n },\n \"on\": {\n \"change\": this.onChange\n }\n }, [images.map(function (image, index) {\n var props = {\n \"class\": bem('image'),\n style: index === active ? _this.imageStyle : null,\n on: {\n touchstart: _this.onTouchStart,\n touchmove: _this.onTouchMove,\n touchend: _this.onTouchEnd,\n touchcancel: _this.onTouchEnd\n }\n };\n return h(SwipeItem, [_this.lazyLoad ? h(\"img\", _mergeJSXProps([{\n \"directives\": [{\n name: \"lazy\",\n value: image\n }]\n }, props])) : h(\"img\", _mergeJSXProps2([{\n \"attrs\": {\n \"src\": image\n }\n }, props]))]);\n })]);\n return h(\"transition\", {\n \"attrs\": {\n \"name\": \"van-fade\"\n }\n }, [h(\"div\", {\n \"class\": [bem(), this.className],\n \"on\": {\n \"touchstart\": this.onWrapperTouchStart,\n \"touchend\": this.onWrapperTouchEnd,\n \"touchcancel\": this.onWrapperTouchEnd\n }\n }, [Index, Images])]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/image-preview/ImagePreview.js\n// module id = null\n// module chunks = ","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport Vue from 'vue';\nimport VueImagePreview from './ImagePreview';\nimport { isServer } from '../utils';\nvar instance;\nvar defaultConfig = {\n images: [],\n loop: true,\n value: true,\n minZoom: 1 / 3,\n maxZoom: 3,\n className: '',\n lazyLoad: false,\n showIndex: true,\n asyncClose: false,\n startPosition: 0,\n showIndicators: false\n};\n\nvar initInstance = function initInstance() {\n instance = new (Vue.extend(VueImagePreview))({\n el: document.createElement('div')\n });\n document.body.appendChild(instance.$el);\n};\n\nvar ImagePreview = function ImagePreview(images, startPosition) {\n if (startPosition === void 0) {\n startPosition = 0;\n }\n\n /* istanbul ignore if */\n if (isServer) {\n return;\n }\n\n if (!instance) {\n initInstance();\n }\n\n var options = Array.isArray(images) ? {\n images: images,\n startPosition: startPosition\n } : images;\n\n _extends(instance, defaultConfig, options);\n\n instance.$once('input', function (show) {\n instance.value = show;\n });\n\n if (options.onClose) {\n instance.$once('close', options.onClose);\n }\n\n return instance;\n};\n\nImagePreview.install = function () {\n Vue.use(VueImagePreview);\n};\n\nexport default ImagePreview;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/image-preview/index.js\n// module id = null\n// module chunks = ","import Lazyload from 'vue-lazyload';\nexport default Lazyload;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/lazyload/index.js\n// module id = null\n// module chunks = ","import { use } from '../utils';\nimport Loading from '../loading';\nimport { on, off } from '../utils/event';\nimport { getScrollTop, getElementTop, getVisibleHeight, getScrollEventTarget } from '../utils/scroll';\n\nvar _use = use('list'),\n sfc = _use[0],\n bem = _use[1],\n t = _use[2];\n\nexport default sfc({\n model: {\n prop: 'loading'\n },\n props: {\n error: Boolean,\n loading: Boolean,\n finished: Boolean,\n errorText: String,\n loadingText: String,\n finishedText: String,\n immediateCheck: {\n type: Boolean,\n \"default\": true\n },\n offset: {\n type: Number,\n \"default\": 300\n },\n direction: {\n type: String,\n \"default\": 'down'\n }\n },\n mounted: function mounted() {\n this.scroller = getScrollEventTarget(this.$el);\n this.handler(true);\n\n if (this.immediateCheck) {\n this.$nextTick(this.check);\n }\n },\n destroyed: function destroyed() {\n this.handler(false);\n },\n activated: function activated() {\n this.handler(true);\n },\n deactivated: function deactivated() {\n this.handler(false);\n },\n watch: {\n loading: function loading() {\n this.$nextTick(this.check);\n },\n finished: function finished() {\n this.$nextTick(this.check);\n }\n },\n methods: {\n check: function check() {\n if (this.loading || this.finished || this.error) {\n return;\n }\n\n var el = this.$el;\n var scroller = this.scroller;\n var scrollerHeight = getVisibleHeight(scroller);\n /* istanbul ignore next */\n\n if (!scrollerHeight || window.getComputedStyle(el).display === 'none' || el.offsetParent === null) {\n return;\n }\n\n var offset = this.offset,\n direction = this.direction;\n\n function isReachEdge() {\n if (el === scroller) {\n var scrollTop = getScrollTop(el);\n\n if (direction === 'up') {\n return scrollTop <= offset;\n }\n\n var targetBottom = scrollTop + scrollerHeight;\n return scroller.scrollHeight - targetBottom <= offset;\n }\n\n if (direction === 'up') {\n return getScrollTop(scroller) - getElementTop(el) <= offset;\n }\n\n var elBottom = getElementTop(el) + getVisibleHeight(el) - getElementTop(scroller);\n return elBottom - scrollerHeight <= offset;\n }\n\n if (isReachEdge()) {\n this.$emit('input', true);\n this.$emit('load');\n }\n },\n clickErrorText: function clickErrorText() {\n this.$emit('update:error', false);\n this.$nextTick(this.check);\n },\n handler: function handler(bind) {\n /* istanbul ignore else */\n if (this.binded !== bind) {\n this.binded = bind;\n (bind ? on : off)(this.scroller, 'scroll', this.check);\n }\n }\n },\n render: function render(h) {\n return h(\"div\", {\n \"class\": bem()\n }, [this.direction === 'down' && this.slots(), this.loading && h(\"div\", {\n \"class\": bem('loading'),\n \"key\": \"loading\"\n }, [this.slots('loading') || [h(Loading, {\n \"class\": bem('loading-icon')\n }), h(\"span\", {\n \"class\": bem('loading-text')\n }, [this.loadingText || t('loading')])]]), this.finished && this.finishedText && h(\"div\", {\n \"class\": bem('finished-text')\n }, [this.finishedText]), this.error && this.errorText && h(\"div\", {\n \"on\": {\n \"click\": this.clickErrorText\n },\n \"class\": bem('error-text')\n }, [this.errorText]), this.direction === 'up' && this.slots()]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/list/index.js\n// module id = null\n// module chunks = ","import _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use, noop } from '../utils';\nimport { inherit } from '../utils/functional';\nimport Icon from '../icon'; // Types\n\nvar _use = use('nav-bar'),\n sfc = _use[0],\n bem = _use[1];\n\nfunction NavBar(h, props, slots, ctx) {\n return h(\"div\", _mergeJSXProps([{\n \"class\": [bem({\n fixed: props.fixed\n }), {\n 'van-hairline--bottom': props.border\n }],\n \"style\": {\n zIndex: props.zIndex\n }\n }, inherit(ctx)]), [h(\"div\", {\n \"class\": bem('left'),\n \"on\": {\n \"click\": ctx.listeners['click-left'] || noop\n }\n }, [slots.left ? slots.left() : [props.leftArrow && h(Icon, {\n \"class\": bem('arrow'),\n \"attrs\": {\n \"name\": \"arrow-left\"\n }\n }), props.leftText && h(\"span\", {\n \"class\": bem('text')\n }, [props.leftText])]]), h(\"div\", {\n \"class\": [bem('title'), 'van-ellipsis']\n }, [slots.title ? slots.title() : props.title]), h(\"div\", {\n \"class\": bem('right'),\n \"on\": {\n \"click\": ctx.listeners['click-right'] || noop\n }\n }, [slots.right ? slots.right() : props.rightText && h(\"span\", {\n \"class\": bem('text')\n }, [props.rightText])])]);\n}\n\nNavBar.props = {\n title: String,\n fixed: Boolean,\n leftText: String,\n rightText: String,\n leftArrow: Boolean,\n border: {\n type: Boolean,\n \"default\": true\n },\n zIndex: {\n type: Number,\n \"default\": 1\n }\n};\nexport default sfc(NavBar);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/nav-bar/index.js\n// module id = null\n// module chunks = ","import { use } from '../utils';\nimport Icon from '../icon';\n\nvar _use = use('notice-bar'),\n sfc = _use[0],\n bem = _use[1];\n\nexport default sfc({\n props: {\n text: String,\n mode: String,\n color: String,\n leftIcon: String,\n wrapable: Boolean,\n background: String,\n delay: {\n type: [String, Number],\n \"default\": 1\n },\n scrollable: {\n type: Boolean,\n \"default\": true\n },\n speed: {\n type: Number,\n \"default\": 50\n }\n },\n data: function data() {\n return {\n wrapWidth: 0,\n firstRound: true,\n duration: 0,\n offsetWidth: 0,\n showNoticeBar: true,\n animationClass: ''\n };\n },\n watch: {\n text: {\n handler: function handler() {\n var _this = this;\n\n this.$nextTick(function () {\n var _this$$refs = _this.$refs,\n wrap = _this$$refs.wrap,\n content = _this$$refs.content;\n\n if (!wrap || !content) {\n return;\n }\n\n var wrapWidth = wrap.getBoundingClientRect().width;\n var offsetWidth = content.getBoundingClientRect().width;\n\n if (_this.scrollable && offsetWidth > wrapWidth) {\n _this.wrapWidth = wrapWidth;\n _this.offsetWidth = offsetWidth;\n _this.duration = offsetWidth / _this.speed;\n _this.animationClass = bem('play');\n }\n });\n },\n immediate: true\n }\n },\n methods: {\n onClickIcon: function onClickIcon() {\n if (this.mode === 'closeable') {\n this.showNoticeBar = false;\n this.$emit('close');\n }\n },\n onAnimationEnd: function onAnimationEnd() {\n var _this2 = this;\n\n this.firstRound = false;\n this.$nextTick(function () {\n _this2.duration = (_this2.offsetWidth + _this2.wrapWidth) / _this2.speed;\n _this2.animationClass = bem('play--infinite');\n });\n }\n },\n render: function render(h) {\n var _this3 = this;\n\n var mode = this.mode;\n var iconName = mode === 'closeable' ? 'cross' : mode === 'link' ? 'arrow' : '';\n var barStyle = {\n color: this.color,\n background: this.background\n };\n var contentStyle = {\n paddingLeft: this.firstRound ? 0 : this.wrapWidth + 'px',\n animationDelay: (this.firstRound ? this.delay : 0) + 's',\n animationDuration: this.duration + 's'\n };\n return h(\"div\", {\n \"directives\": [{\n name: \"show\",\n value: this.showNoticeBar\n }],\n \"class\": bem({\n withicon: mode,\n wrapable: this.wrapable\n }),\n \"style\": barStyle,\n \"on\": {\n \"click\": function click() {\n _this3.$emit('click');\n }\n }\n }, [this.leftIcon && h(Icon, {\n \"class\": bem('left-icon'),\n \"attrs\": {\n \"name\": this.leftIcon\n }\n }), h(\"div\", {\n \"ref\": \"wrap\",\n \"class\": bem('wrap')\n }, [h(\"div\", {\n \"ref\": \"content\",\n \"class\": [bem('content'), this.animationClass, {\n 'van-ellipsis': !this.scrollable && !this.wrapable\n }],\n \"style\": contentStyle,\n \"on\": {\n \"animationend\": this.onAnimationEnd,\n \"webkitAnimationEnd\": this.onAnimationEnd\n }\n }, [this.slots() || this.text])]), iconName && h(Icon, {\n \"class\": bem('right-icon'),\n \"attrs\": {\n \"name\": iconName\n },\n \"on\": {\n \"click\": this.onClickIcon\n }\n })]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/notice-bar/index.js\n// module id = null\n// module chunks = ","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use } from '../utils';\nimport { RED, WHITE } from '../utils/color';\nimport { emit, inherit } from '../utils/functional';\nimport { PopupMixin } from '../mixins/popup';\nimport Popup from '../popup'; // Types\n\nvar _use = use('notify'),\n sfc = _use[0],\n bem = _use[1];\n\nfunction Notify(h, props, slots, ctx) {\n var style = {\n color: props.color,\n background: props.background\n };\n return h(Popup, _mergeJSXProps([{\n \"attrs\": {\n \"value\": props.value,\n \"position\": \"top\",\n \"overlay\": false,\n \"lockScroll\": false\n },\n \"style\": style,\n \"class\": [bem(), props.className],\n \"on\": {\n \"input\": function input(value) {\n emit(ctx, 'input', value);\n }\n }\n }, inherit(ctx)]), [props.message]);\n}\n\nNotify.props = _extends({}, PopupMixin.props, {\n className: null,\n message: [String, Number],\n color: {\n type: String,\n \"default\": WHITE\n },\n background: {\n type: String,\n \"default\": RED\n },\n duration: {\n type: Number,\n \"default\": 3000\n }\n});\nexport default sfc(Notify);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/notify/Notify.js\n// module id = null\n// module chunks = ","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport Vue from 'vue';\nimport VanNotify from './Notify';\nimport { RED, WHITE } from '../utils/color';\nimport { isObj, isServer } from '../utils';\nimport { mount } from '../utils/functional';\nvar timer;\nvar instance;\n\nfunction parseOptions(message) {\n return isObj(message) ? message : {\n message: message\n };\n}\n\nfunction Notify(options) {\n /* istanbul ignore if */\n if (isServer) {\n return;\n }\n\n if (!instance) {\n instance = mount(VanNotify);\n }\n\n options = _extends({}, Notify.currentOptions, parseOptions(options));\n\n _extends(instance, options);\n\n clearTimeout(timer);\n\n if (options.duration && options.duration > 0) {\n timer = setTimeout(Notify.clear, options.duration);\n }\n\n return instance;\n}\n\nfunction defaultOptions() {\n return {\n value: true,\n message: '',\n color: WHITE,\n background: RED,\n duration: 3000,\n className: ''\n };\n}\n\nNotify.clear = function () {\n if (instance) {\n instance.value = false;\n }\n};\n\nNotify.currentOptions = defaultOptions();\n\nNotify.setDefaultOptions = function (options) {\n _extends(Notify.currentOptions, options);\n};\n\nNotify.resetDefaultOptions = function () {\n Notify.currentOptions = defaultOptions();\n};\n\nNotify.install = function () {\n Vue.use(VanNotify);\n};\n\nVue.prototype.$notify = Notify;\nexport default Notify;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/notify/index.js\n// module id = null\n// module chunks = ","import { use } from '../utils';\nimport { preventDefault } from '../utils/event';\n\nvar _use = use('key'),\n sfc = _use[0],\n bem = _use[1];\n\nexport default sfc({\n props: {\n type: Array,\n text: [String, Number]\n },\n data: function data() {\n return {\n active: false\n };\n },\n computed: {\n className: function className() {\n var types = this.type.slice(0);\n this.active && types.push('active');\n return bem(types);\n }\n },\n methods: {\n onFocus: function onFocus() {\n this.active = true;\n this.$emit('press', this.text);\n },\n onBlur: function onBlur(event) {\n preventDefault(event, true);\n this.active = false;\n }\n },\n render: function render(h) {\n var onBlur = this.onBlur;\n return h(\"i\", {\n \"class\": ['van-hairline', this.className],\n \"on\": {\n \"touchstart\": this.onFocus,\n \"touchmove\": onBlur,\n \"touchend\": onBlur,\n \"touchcancel\": onBlur\n }\n }, [this.text]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/number-keyboard/Key.js\n// module id = null\n// module chunks = ","import { use } from '../utils';\nimport { stopPropagation } from '../utils/event';\nimport Key from './Key';\n\nvar _use = use('number-keyboard'),\n sfc = _use[0],\n bem = _use[1],\n t = _use[2];\n\nvar CLOSE_KEY_TYPE = ['blue', 'big'];\nvar DELETE_KEY_TYPE = ['delete', 'big', 'gray'];\nexport default sfc({\n props: {\n show: Boolean,\n title: String,\n closeButtonText: String,\n deleteButtonText: String,\n safeAreaInsetBottom: Boolean,\n theme: {\n type: String,\n \"default\": 'default'\n },\n extraKey: {\n type: String,\n \"default\": ''\n },\n zIndex: {\n type: Number,\n \"default\": 100\n },\n transition: {\n type: Boolean,\n \"default\": true\n },\n showDeleteKey: {\n type: Boolean,\n \"default\": true\n },\n hideOnClickOutside: {\n type: Boolean,\n \"default\": true\n }\n },\n mounted: function mounted() {\n this.handler(true);\n },\n destroyed: function destroyed() {\n this.handler(false);\n },\n activated: function activated() {\n this.handler(true);\n },\n deactivated: function deactivated() {\n this.handler(false);\n },\n watch: {\n show: function show() {\n if (!this.transition) {\n this.$emit(this.show ? 'show' : 'hide');\n }\n }\n },\n computed: {\n keys: function keys() {\n var keys = [];\n\n for (var i = 1; i <= 9; i++) {\n keys.push({\n text: i\n });\n }\n\n switch (this.theme) {\n case 'default':\n keys.push({\n text: this.extraKey,\n type: ['gray']\n }, {\n text: 0\n }, {\n text: this.deleteText,\n type: ['gray', 'delete']\n });\n break;\n\n case 'custom':\n keys.push({\n text: 0,\n type: ['middle']\n }, {\n text: this.extraKey\n });\n break;\n }\n\n return keys;\n },\n deleteText: function deleteText() {\n return this.deleteButtonText || t('delete');\n }\n },\n methods: {\n handler: function handler(action) {\n /* istanbul ignore if */\n if (this.$isServer) {\n return;\n }\n\n if (action !== this.handlerStatus && this.hideOnClickOutside) {\n this.handlerStatus = action;\n document.body[(action ? 'add' : 'remove') + 'EventListener']('touchstart', this.onBlur);\n }\n },\n onBlur: function onBlur() {\n this.$emit('blur');\n },\n onClose: function onClose() {\n this.$emit('close');\n this.onBlur();\n },\n onAnimationEnd: function onAnimationEnd() {\n this.$emit(this.show ? 'show' : 'hide');\n },\n onPress: function onPress(text) {\n if (text === '') {\n return;\n }\n\n if (text === this.deleteText) {\n this.$emit('delete');\n } else if (text === this.closeButtonText) {\n this.onClose();\n } else {\n this.$emit('input', text);\n }\n }\n },\n render: function render(h) {\n var title = this.title,\n theme = this.theme,\n onPress = this.onPress,\n closeButtonText = this.closeButtonText;\n var titleLeftSlot = this.slots('title-left');\n var showTitleClose = closeButtonText && theme === 'default';\n var showTitle = title || showTitleClose || titleLeftSlot;\n return h(\"transition\", {\n \"attrs\": {\n \"name\": this.transition ? 'van-slide-up' : ''\n }\n }, [h(\"div\", {\n \"directives\": [{\n name: \"show\",\n value: this.show\n }],\n \"style\": {\n zIndex: this.zIndex\n },\n \"class\": bem([theme, {\n 'safe-area-inset-bottom': this.safeAreaInsetBottom\n }]),\n \"on\": {\n \"touchstart\": stopPropagation,\n \"animationend\": this.onAnimationEnd,\n \"webkitAnimationEnd\": this.onAnimationEnd\n }\n }, [showTitle && h(\"div\", {\n \"class\": [bem('title'), 'van-hairline--top']\n }, [titleLeftSlot && h(\"span\", {\n \"class\": bem('title-left')\n }, [titleLeftSlot]), title && h(\"span\", [title]), showTitleClose && h(\"span\", {\n \"class\": bem('close'),\n \"on\": {\n \"click\": this.onClose\n }\n }, [closeButtonText])]), h(\"div\", {\n \"class\": bem('body')\n }, [this.keys.map(function (key) {\n return h(Key, {\n \"key\": key.text,\n \"attrs\": {\n \"text\": key.text,\n \"type\": key.type\n },\n \"on\": {\n \"press\": onPress\n }\n });\n })]), theme === 'custom' && h(\"div\", {\n \"class\": bem('sidebar')\n }, [h(Key, {\n \"attrs\": {\n \"text\": this.deleteText,\n \"type\": DELETE_KEY_TYPE\n },\n \"on\": {\n \"press\": onPress\n }\n }), h(Key, {\n \"attrs\": {\n \"text\": closeButtonText,\n \"type\": CLOSE_KEY_TYPE\n },\n \"on\": {\n \"press\": onPress\n }\n })])])]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/number-keyboard/index.js\n// module id = null\n// module chunks = ","import { use } from '../utils';\n\nvar _use = use('pagination'),\n sfc = _use[0],\n bem = _use[1],\n t = _use[2];\n\nfunction makePage(number, text, active) {\n return {\n number: number,\n text: text,\n active: active\n };\n}\n\nexport default sfc({\n props: {\n value: Number,\n prevText: String,\n nextText: String,\n pageCount: Number,\n totalItems: Number,\n forceEllipses: Boolean,\n mode: {\n type: String,\n \"default\": 'multi'\n },\n itemsPerPage: {\n type: Number,\n \"default\": 10\n },\n showPageSize: {\n type: Number,\n \"default\": 5\n }\n },\n computed: {\n count: function count() {\n var count = this.pageCount || Math.ceil(this.totalItems / this.itemsPerPage);\n return Math.max(1, count);\n },\n pages: function pages() {\n var pages = [];\n var pageCount = this.count;\n\n if (this.mode !== 'multi') {\n return pages;\n } // Default page limits\n\n\n var startPage = 1;\n var endPage = pageCount;\n var isMaxSized = this.showPageSize !== undefined && this.showPageSize < pageCount; // recompute if showPageSize\n\n if (isMaxSized) {\n // Current page is displayed in the middle of the visible ones\n startPage = Math.max(this.value - Math.floor(this.showPageSize / 2), 1);\n endPage = startPage + this.showPageSize - 1; // Adjust if limit is exceeded\n\n if (endPage > pageCount) {\n endPage = pageCount;\n startPage = endPage - this.showPageSize + 1;\n }\n } // Add page number links\n\n\n for (var number = startPage; number <= endPage; number++) {\n var page = makePage(number, number, number === this.value);\n pages.push(page);\n } // Add links to move between page sets\n\n\n if (isMaxSized && this.showPageSize > 0 && this.forceEllipses) {\n if (startPage > 1) {\n var previousPageSet = makePage(startPage - 1, '...', false);\n pages.unshift(previousPageSet);\n }\n\n if (endPage < pageCount) {\n var nextPageSet = makePage(endPage + 1, '...', false);\n pages.push(nextPageSet);\n }\n }\n\n return pages;\n }\n },\n watch: {\n value: {\n handler: function handler(page) {\n this.select(page || this.value);\n },\n immediate: true\n }\n },\n methods: {\n select: function select(page, emitChange) {\n page = Math.min(this.count, Math.max(1, page));\n\n if (this.value !== page) {\n this.$emit('input', page);\n\n if (emitChange) {\n this.$emit('change', page);\n }\n }\n }\n },\n render: function render(h) {\n var _this = this;\n\n var value = this.value;\n var simple = this.mode !== 'multi';\n\n var onSelect = function onSelect(value) {\n return function () {\n _this.select(value, true);\n };\n };\n\n return h(\"ul\", {\n \"class\": bem({\n simple: simple\n })\n }, [h(\"li\", {\n \"class\": [bem('item', {\n disabled: value === 1\n }), bem('prev'), 'van-hairline'],\n \"on\": {\n \"click\": onSelect(value - 1)\n }\n }, [this.prevText || t('prev')]), this.pages.map(function (page) {\n return h(\"li\", {\n \"class\": [bem('item', {\n active: page.active\n }), bem('page'), 'van-hairline'],\n \"on\": {\n \"click\": onSelect(page.number)\n }\n }, [page.text]);\n }), simple && h(\"li\", {\n \"class\": bem('page-desc')\n }, [this.slots('pageDesc') || value + \"/\" + this.count]), h(\"li\", {\n \"class\": [bem('item', {\n disabled: value === this.count\n }), bem('next'), 'van-hairline'],\n \"on\": {\n \"click\": onSelect(value + 1)\n }\n }, [this.nextText || t('next')])]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/pagination/index.js\n// module id = null\n// module chunks = ","import _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use } from '../utils';\nimport Cell from '../cell';\nimport CellGroup from '../cell-group';\nimport { inherit } from '../utils/functional'; // Types\n\nvar _use = use('panel'),\n sfc = _use[0],\n bem = _use[1];\n\nfunction Panel(h, props, slots, ctx) {\n var Content = function Content() {\n return [slots.header ? slots.header() : h(Cell, {\n \"attrs\": {\n \"icon\": props.icon,\n \"label\": props.desc,\n \"title\": props.title,\n \"value\": props.status,\n \"valueClass\": bem('header-value')\n },\n \"class\": bem('header')\n }), h(\"div\", {\n \"class\": bem('content')\n }, [slots[\"default\"] && slots[\"default\"]()]), slots.footer && h(\"div\", {\n \"class\": [bem('footer'), 'van-hairline--top']\n }, [slots.footer()])];\n };\n\n return h(CellGroup, _mergeJSXProps([{\n \"class\": bem(),\n \"scopedSlots\": {\n \"default\": Content\n }\n }, inherit(ctx, true)]));\n}\n\nPanel.props = {\n icon: String,\n desc: String,\n title: String,\n status: String\n};\nexport default sfc(Panel);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/panel/index.js\n// module id = null\n// module chunks = ","import _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use } from '../utils';\nimport { emit, inherit } from '../utils/functional'; // Types\n\nvar _use = use('password-input'),\n sfc = _use[0],\n bem = _use[1];\n\nfunction PasswordInput(h, props, slots, ctx) {\n var info = props.errorInfo || props.info;\n var Points = [];\n\n for (var i = 0; i < props.length; i++) {\n var _char = props.value[i];\n Points.push(h(\"li\", {\n \"class\": \"van-hairline\"\n }, [props.mask ? h(\"i\", {\n \"style\": {\n visibility: _char ? 'visible' : 'hidden'\n }\n }) : _char]));\n }\n\n return h(\"div\", {\n \"class\": bem()\n }, [h(\"ul\", _mergeJSXProps([{\n \"class\": [bem('security'), 'van-hairline--surround'],\n \"on\": {\n \"touchstart\": function touchstart(event) {\n event.stopPropagation();\n emit(ctx, 'focus', event);\n }\n }\n }, inherit(ctx, true)]), [Points]), info && h(\"div\", {\n \"class\": bem(props.errorInfo ? 'error-info' : 'info')\n }, [info])]);\n}\n\nPasswordInput.props = {\n info: String,\n errorInfo: String,\n mask: {\n type: Boolean,\n \"default\": true\n },\n value: {\n type: String,\n \"default\": ''\n },\n length: {\n type: Number,\n \"default\": 6\n }\n};\nexport default sfc(PasswordInput);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/password-input/index.js\n// module id = null\n// module chunks = ","import { use, isDef } from '../utils';\nimport { BLUE, WHITE } from '../utils/color';\n\nvar _use = use('progress'),\n sfc = _use[0],\n bem = _use[1];\n\nexport default sfc({\n props: {\n inactive: Boolean,\n pivotText: String,\n pivotColor: String,\n percentage: {\n type: Number,\n required: true,\n validator: function validator(value) {\n return value >= 0 && value <= 100;\n }\n },\n showPivot: {\n type: Boolean,\n \"default\": true\n },\n color: {\n type: String,\n \"default\": BLUE\n },\n textColor: {\n type: String,\n \"default\": WHITE\n }\n },\n data: function data() {\n return {\n pivotWidth: 0,\n progressWidth: 0\n };\n },\n mounted: function mounted() {\n this.getWidth();\n },\n watch: {\n showPivot: function showPivot() {\n this.getWidth();\n },\n pivotText: function pivotText() {\n this.getWidth();\n }\n },\n methods: {\n getWidth: function getWidth() {\n var _this = this;\n\n this.$nextTick(function () {\n _this.progressWidth = _this.$el.offsetWidth;\n _this.pivotWidth = _this.$refs.pivot ? _this.$refs.pivot.offsetWidth : 0;\n });\n }\n },\n render: function render(h) {\n var pivotText = this.pivotText,\n percentage = this.percentage;\n var text = isDef(pivotText) ? pivotText : percentage + '%';\n var showPivot = this.showPivot && text;\n var background = this.inactive ? '#cacaca' : this.color;\n var pivotStyle = {\n color: this.textColor,\n background: this.pivotColor || background\n };\n var portionStyle = {\n background: background,\n width: (this.progressWidth - this.pivotWidth) * percentage / 100 + 'px'\n };\n return h(\"div\", {\n \"class\": bem()\n }, [h(\"span\", {\n \"class\": bem('portion', {\n 'with-pivot': showPivot\n }),\n \"style\": portionStyle\n }, [showPivot && h(\"span\", {\n \"ref\": \"pivot\",\n \"style\": pivotStyle,\n \"class\": bem('pivot')\n }, [text])])]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/progress/index.js\n// module id = null\n// module chunks = ","import { use } from '../utils';\nimport { preventDefault } from '../utils/event';\nimport { TouchMixin } from '../mixins/touch';\nimport { getScrollTop, getScrollEventTarget } from '../utils/scroll';\nimport Loading from '../loading';\n\nvar _use = use('pull-refresh'),\n sfc = _use[0],\n bem = _use[1],\n t = _use[2];\n\nvar TEXT_STATUS = ['pulling', 'loosing', 'success'];\nexport default sfc({\n mixins: [TouchMixin],\n props: {\n disabled: Boolean,\n successText: String,\n pullingText: String,\n loosingText: String,\n loadingText: String,\n value: {\n type: Boolean,\n required: true\n },\n successDuration: {\n type: Number,\n \"default\": 500\n },\n animationDuration: {\n type: Number,\n \"default\": 300\n },\n headHeight: {\n type: Number,\n \"default\": 50\n }\n },\n data: function data() {\n return {\n status: 'normal',\n height: 0,\n duration: 0\n };\n },\n computed: {\n untouchable: function untouchable() {\n return this.status === 'loading' || this.status === 'success' || this.disabled;\n }\n },\n watch: {\n value: function value(loading) {\n var _this = this;\n\n this.duration = this.animationDuration;\n\n if (!loading && this.successText) {\n this.status = 'success';\n setTimeout(function () {\n _this.setStatus(0);\n }, this.successDuration);\n } else {\n this.setStatus(loading ? this.headHeight : 0, loading);\n }\n }\n },\n mounted: function mounted() {\n this.scrollEl = getScrollEventTarget(this.$el);\n },\n methods: {\n onTouchStart: function onTouchStart(event) {\n if (!this.untouchable && this.getCeiling()) {\n this.duration = 0;\n this.touchStart(event);\n }\n },\n onTouchMove: function onTouchMove(event) {\n if (this.untouchable) {\n return;\n }\n\n this.touchMove(event);\n\n if (!this.ceiling && this.getCeiling()) {\n this.duration = 0;\n this.startY = event.touches[0].clientY;\n this.deltaY = 0;\n }\n\n if (this.ceiling && this.deltaY >= 0) {\n if (this.direction === 'vertical') {\n this.setStatus(this.ease(this.deltaY));\n preventDefault(event);\n }\n }\n },\n onTouchEnd: function onTouchEnd() {\n if (!this.untouchable && this.ceiling && this.deltaY) {\n this.duration = this.animationDuration;\n\n if (this.status === 'loosing') {\n this.setStatus(this.headHeight, true);\n this.$emit('input', true);\n this.$emit('refresh');\n } else {\n this.setStatus(0);\n }\n }\n },\n getCeiling: function getCeiling() {\n this.ceiling = getScrollTop(this.scrollEl) === 0;\n return this.ceiling;\n },\n ease: function ease(height) {\n var headHeight = this.headHeight;\n return height < headHeight ? height : height < headHeight * 2 ? Math.round(headHeight + (height - headHeight) / 2) : Math.round(headHeight * 1.5 + (height - headHeight * 2) / 4);\n },\n setStatus: function setStatus(height, isLoading) {\n this.height = height;\n var status = isLoading ? 'loading' : height === 0 ? 'normal' : height < this.headHeight ? 'pulling' : 'loosing';\n\n if (status !== this.status) {\n this.status = status;\n }\n }\n },\n render: function render(h) {\n var status = this.status;\n var text = this[status + \"Text\"] || t(status);\n var style = {\n transition: this.duration + \"ms\",\n transform: this.height ? \"translate3d(0,\" + this.height + \"px, 0)\" : ''\n };\n var Status = this.slots(status) || [TEXT_STATUS.indexOf(status) !== -1 && h(\"div\", {\n \"class\": bem('text')\n }, [text]), status === 'loading' && h(\"div\", {\n \"class\": bem('loading')\n }, [h(Loading), h(\"span\", [text])])];\n return h(\"div\", {\n \"class\": bem()\n }, [h(\"div\", {\n \"class\": bem('track'),\n \"style\": style,\n \"on\": {\n \"touchstart\": this.onTouchStart,\n \"touchmove\": this.onTouchMove,\n \"touchend\": this.onTouchEnd,\n \"touchcancel\": this.onTouchEnd\n }\n }, [h(\"div\", {\n \"class\": bem('head')\n }, [Status]), this.slots()])]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/pull-refresh/index.js\n// module id = null\n// module chunks = ","import _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\n\n/* eslint-disable prefer-spread */\nimport { use } from '../utils';\nimport { emit, inherit } from '../utils/functional';\nimport { preventDefault } from '../utils/event';\nimport Icon from '../icon'; // Types\n\nvar _use = use('rate'),\n sfc = _use[0],\n bem = _use[1];\n\nfunction getRateStatus(value, index, allowHalf) {\n if (value >= index) {\n return 'full';\n }\n\n if (value + 0.5 >= index && allowHalf) {\n return 'half';\n }\n\n return 'void';\n}\n\nfunction Rate(h, props, slots, ctx) {\n var icon = props.icon,\n size = props.size,\n color = props.color,\n voidIcon = props.voidIcon,\n readonly = props.readonly,\n disabled = props.disabled,\n voidColor = props.voidColor,\n disabledColor = props.disabledColor;\n var list = [];\n\n for (var i = 1; i <= props.count; i++) {\n list.push(getRateStatus(props.value, i, props.allowHalf));\n }\n\n function onSelect(index) {\n if (!disabled && !readonly) {\n emit(ctx, 'input', index);\n emit(ctx, 'change', index);\n }\n }\n\n function onTouchMove(event) {\n if (readonly || disabled || !document.elementFromPoint) {\n return;\n }\n\n preventDefault(event);\n var _event$touches$ = event.touches[0],\n clientX = _event$touches$.clientX,\n clientY = _event$touches$.clientY;\n var target = document.elementFromPoint(clientX, clientY);\n\n if (target && target.dataset) {\n var score = target.dataset.score;\n /* istanbul ignore else */\n\n if (score) {\n onSelect(+score);\n }\n }\n }\n\n function renderStar(status, index) {\n var isFull = status === 'full';\n var isVoid = status === 'void';\n return h(\"div\", {\n \"key\": index,\n \"class\": bem('item')\n }, [h(Icon, {\n \"attrs\": {\n \"name\": isFull ? icon : voidIcon,\n \"size\": size + \"px\",\n \"data-score\": index + 1,\n \"color\": disabled ? disabledColor : isFull ? color : voidColor\n },\n \"class\": bem('icon'),\n \"on\": {\n \"click\": function click() {\n onSelect(index + 1);\n }\n }\n }), props.allowHalf && h(Icon, {\n \"attrs\": {\n \"name\": isVoid ? voidIcon : icon,\n \"size\": size + \"px\",\n \"data-score\": index + 0.5,\n \"color\": disabled ? disabledColor : isVoid ? voidColor : color\n },\n \"class\": bem('icon', 'half'),\n \"on\": {\n \"click\": function click() {\n onSelect(index + 0.5);\n }\n }\n })]);\n }\n\n return h(\"div\", _mergeJSXProps([{\n \"class\": bem()\n }, inherit(ctx), {\n \"on\": {\n \"touchmove\": onTouchMove\n }\n }]), [list.map(function (status, index) {\n return renderStar(status, index);\n })]);\n}\n\nRate.props = {\n value: Number,\n readonly: Boolean,\n disabled: Boolean,\n allowHalf: Boolean,\n size: {\n type: Number,\n \"default\": 20\n },\n icon: {\n type: String,\n \"default\": 'star'\n },\n voidIcon: {\n type: String,\n \"default\": 'star-o'\n },\n color: {\n type: String,\n \"default\": '#ffd21e'\n },\n voidColor: {\n type: String,\n \"default\": '#c7c7c7'\n },\n disabledColor: {\n type: String,\n \"default\": '#bdbdbd'\n },\n count: {\n type: Number,\n \"default\": 5\n }\n};\nexport default sfc(Rate);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/rate/index.js\n// module id = null\n// module chunks = ","import { use } from '../utils';\n\nvar _use = use('row'),\n sfc = _use[0],\n bem = _use[1];\n\nexport default sfc({\n props: {\n type: String,\n align: String,\n justify: String,\n tag: {\n type: String,\n \"default\": 'div'\n },\n gutter: {\n type: [Number, String],\n \"default\": 0\n }\n },\n render: function render(h) {\n var _bem;\n\n var align = this.align,\n justify = this.justify;\n var flex = this.type === 'flex';\n var margin = \"-\" + Number(this.gutter) / 2 + \"px\";\n var style = this.gutter ? {\n marginLeft: margin,\n marginRight: margin\n } : {};\n return h(this.tag, {\n \"style\": style,\n \"class\": bem((_bem = {\n flex: flex\n }, _bem[\"align-\" + align] = flex && align, _bem[\"justify-\" + justify] = flex && justify, _bem))\n }, [this.slots()]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/row/index.js\n// module id = null\n// module chunks = ","import _mergeJSXProps2 from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { use } from '../utils';\nimport { inherit, emit } from '../utils/functional';\nimport { preventDefault } from '../utils/event';\nimport Field from '../field'; // Types\n\nvar _use = use('search'),\n sfc = _use[0],\n bem = _use[1],\n t = _use[2];\n\nfunction Search(h, props, slots, ctx) {\n var Label = function Label() {\n if (!slots.label && !props.label) {\n return null;\n }\n\n return h(\"div\", {\n \"class\": bem('label')\n }, [slots.label ? slots.label() : props.label]);\n };\n\n var Action = function Action() {\n if (!props.showAction) {\n return null;\n }\n\n var onCancel = function onCancel() {\n emit(ctx, 'input', '');\n emit(ctx, 'cancel');\n };\n\n return h(\"div\", {\n \"class\": bem('action')\n }, [slots.action ? slots.action() : h(\"div\", {\n \"on\": {\n \"click\": onCancel\n }\n }, [t('cancel')])]);\n };\n\n var fieldData = {\n attrs: ctx.data.attrs,\n on: _extends({}, ctx.listeners, {\n input: function input(value) {\n emit(ctx, 'input', value);\n },\n keypress: function keypress(event) {\n // press enter\n if (event.keyCode === 13) {\n preventDefault(event);\n emit(ctx, 'search', props.value);\n }\n\n emit(ctx, 'keypress', event);\n }\n })\n };\n var inheritData = inherit(ctx);\n delete inheritData.attrs;\n return h(\"div\", _mergeJSXProps2([{\n \"class\": bem({\n 'show-action': props.showAction\n }),\n \"style\": {\n background: props.background\n }\n }, inheritData]), [h(\"div\", {\n \"class\": bem('content', props.shape)\n }, [Label(), h(Field, _mergeJSXProps([{\n \"attrs\": {\n \"clearable\": true,\n \"type\": \"search\",\n \"value\": props.value,\n \"border\": false,\n \"leftIcon\": \"search\"\n },\n \"scopedSlots\": {\n 'left-icon': slots['left-icon']\n }\n }, fieldData]))]), Action()]);\n}\n\nSearch.props = {\n value: String,\n label: String,\n showAction: Boolean,\n shape: {\n type: String,\n \"default\": 'square'\n },\n background: {\n type: String,\n \"default\": '#fff'\n }\n};\nexport default sfc(Search);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/search/index.js\n// module id = null\n// module chunks = ","import _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use } from '../../utils';\nimport { inherit } from '../../utils/functional';\nimport Icon from '../../icon'; // Types\n\nvar _use = use('sku-header'),\n sfc = _use[0],\n bem = _use[1];\n\nfunction getSkuImg(sku, selectedSku) {\n var id = selectedSku.s1;\n\n if (id) {\n // skuImg 挂载在 skuTree 中 s1 上\n var treeItem = sku.tree.filter(function (item) {\n return item.k_s === 's1';\n })[0] || {};\n\n if (treeItem.v) {\n var matchedSku = treeItem.v.filter(function (skuValue) {\n return skuValue.id === id;\n })[0];\n\n if (matchedSku) {\n return matchedSku.imgUrl || matchedSku.img_url;\n }\n }\n }\n}\n\nfunction SkuHeader(h, props, slots, ctx) {\n var sku = props.sku,\n goods = props.goods,\n skuEventBus = props.skuEventBus,\n selectedSku = props.selectedSku;\n var goodsImg = getSkuImg(sku, selectedSku) || goods.picture;\n\n var previewImage = function previewImage() {\n skuEventBus.$emit('sku:previewImage', goodsImg);\n };\n\n return h(\"div\", _mergeJSXProps([{\n \"class\": [bem(), 'van-hairline--bottom']\n }, inherit(ctx)]), [h(\"div\", {\n \"class\": bem('img-wrap'),\n \"on\": {\n \"click\": previewImage\n }\n }, [h(\"img\", {\n \"attrs\": {\n \"src\": goodsImg\n }\n })]), h(\"div\", {\n \"class\": bem('goods-info')\n }, [h(\"div\", {\n \"class\": \"van-sku__goods-name van-ellipsis\"\n }, [goods.title]), slots[\"default\"] && slots[\"default\"](), h(Icon, {\n \"attrs\": {\n \"name\": \"close\"\n },\n \"class\": \"van-sku__close-icon\",\n \"on\": {\n \"click\": function click() {\n skuEventBus.$emit('sku:close');\n }\n }\n })])]);\n}\n\nSkuHeader.props = {\n sku: Object,\n goods: Object,\n skuEventBus: Object,\n selectedSku: Object\n};\nexport default sfc(SkuHeader);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/sku/components/SkuHeader.js\n// module id = null\n// module chunks = ","import _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use } from '../../utils';\nimport { inherit } from '../../utils/functional'; // Types\n\nvar _use = use('sku-row'),\n sfc = _use[0],\n bem = _use[1];\n\nfunction SkuRow(h, props, slots, ctx) {\n return h(\"div\", _mergeJSXProps([{\n \"class\": bem()\n }, inherit(ctx)]), [h(\"div\", {\n \"class\": bem('title')\n }, [props.skuRow.k, \"\\uFF1A\"]), slots[\"default\"] && slots[\"default\"]()]);\n}\n\nSkuRow.props = {\n skuRow: Object\n};\nexport default sfc(SkuRow);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/sku/components/SkuRow.js\n// module id = null\n// module chunks = ","export var LIMIT_TYPE = {\n QUOTA_LIMIT: 0,\n STOCK_LIMIT: 1\n};\nexport var UNSELECTED_SKU_VALUE_ID = '';\nexport default {\n LIMIT_TYPE: LIMIT_TYPE,\n UNSELECTED_SKU_VALUE_ID: UNSELECTED_SKU_VALUE_ID\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/sku/constants.js\n// module id = null\n// module chunks = ","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { UNSELECTED_SKU_VALUE_ID } from '../constants';\n/*\n normalize sku tree\n\n [\n {\n count: 2,\n k: \"品种\", // 规格名称 skuKeyName\n k_id: \"1200\", // skuKeyId\n k_s: \"s1\" // skuKeyStr\n v: [ // skuValues\n { // skuValue\n id: \"1201\", // skuValueId\n name: \"萌\" // 具体的规格值 skuValueName\n }, {\n id: \"973\",\n name: \"帅\"\n }\n ]\n },\n ...\n ]\n |\n v\n {\n s1: [{\n id: \"1201\",\n name: \"萌\"\n }, {\n id: \"973\",\n name: \"帅\"\n }],\n ...\n }\n */\n\nexport var normalizeSkuTree = function normalizeSkuTree(skuTree) {\n var normalizedTree = {};\n skuTree.forEach(function (treeItem) {\n normalizedTree[treeItem.k_s] = treeItem.v;\n });\n return normalizedTree;\n}; // 判断是否所有的sku都已经选中\n\nexport var isAllSelected = function isAllSelected(skuTree, selectedSku) {\n // 筛选selectedSku对象中key值不为空的值\n var selected = Object.keys(selectedSku).filter(function (skuKeyStr) {\n return selectedSku[skuKeyStr] !== UNSELECTED_SKU_VALUE_ID;\n });\n return skuTree.length === selected.length;\n}; // 根据已选择的 sku 获取 skuComb\n\nexport var getSkuComb = function getSkuComb(skuList, selectedSku) {\n var skuComb = skuList.filter(function (item) {\n return Object.keys(selectedSku).every(function (skuKeyStr) {\n return String(item[skuKeyStr]) === String(selectedSku[skuKeyStr]);\n });\n });\n return skuComb[0];\n}; // 获取已选择的sku名称\n\nexport var getSelectedSkuValues = function getSelectedSkuValues(skuTree, selectedSku) {\n var normalizedTree = normalizeSkuTree(skuTree);\n return Object.keys(selectedSku).reduce(function (selectedValues, skuKeyStr) {\n var skuValues = normalizedTree[skuKeyStr];\n var skuValueId = selectedSku[skuKeyStr];\n\n if (skuValueId !== UNSELECTED_SKU_VALUE_ID) {\n var skuValue = skuValues.filter(function (value) {\n return value.id === skuValueId;\n })[0];\n skuValue && selectedValues.push(skuValue);\n }\n\n return selectedValues;\n }, []);\n}; // 判断sku是否可选\n\nexport var isSkuChoosable = function isSkuChoosable(skuList, selectedSku, skuToChoose) {\n var _extends2;\n\n var key = skuToChoose.key,\n valueId = skuToChoose.valueId; // 先假设sku已选中,拼入已选中sku对象中\n\n var matchedSku = _extends({}, selectedSku, (_extends2 = {}, _extends2[key] = valueId, _extends2)); // 再判断剩余sku是否全部不可选,若不可选则当前sku不可选中\n\n\n var skusToCheck = Object.keys(matchedSku).filter(function (skuKey) {\n return matchedSku[skuKey] !== UNSELECTED_SKU_VALUE_ID;\n });\n var filteredSku = skuList.filter(function (sku) {\n return skusToCheck.every(function (skuKey) {\n return String(matchedSku[skuKey]) === String(sku[skuKey]);\n });\n });\n var stock = filteredSku.reduce(function (total, sku) {\n total += sku.stock_num;\n return total;\n }, 0);\n return stock > 0;\n};\nexport default {\n normalizeSkuTree: normalizeSkuTree,\n getSkuComb: getSkuComb,\n getSelectedSkuValues: getSelectedSkuValues,\n isAllSelected: isAllSelected,\n isSkuChoosable: isSkuChoosable\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/sku/utils/skuHelper.js\n// module id = null\n// module chunks = ","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { use } from '../../utils';\nimport { isSkuChoosable } from '../utils/skuHelper';\n\nvar _use = use('sku-row-item'),\n sfc = _use[0];\n\nexport default sfc({\n props: {\n skuList: Array,\n skuValue: Object,\n skuKeyStr: String,\n skuEventBus: Object,\n selectedSku: Object\n },\n computed: {\n choosable: function choosable() {\n return isSkuChoosable(this.skuList, this.selectedSku, {\n key: this.skuKeyStr,\n valueId: this.skuValue.id\n });\n }\n },\n methods: {\n onSelect: function onSelect() {\n if (this.choosable) {\n this.skuEventBus.$emit('sku:select', _extends({}, this.skuValue, {\n skuKeyStr: this.skuKeyStr\n }));\n }\n }\n },\n render: function render(h) {\n var choosed = this.skuValue.id === this.selectedSku[this.skuKeyStr];\n return h(\"span\", {\n \"class\": ['van-sku-row__item', {\n 'van-sku-row__item--active': choosed,\n 'van-sku-row__item--disabled': !this.choosable\n }],\n \"on\": {\n \"click\": this.onSelect\n }\n }, [this.skuValue.name]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/sku/components/SkuRowItem.js\n// module id = null\n// module chunks = ","import { use, isDef } from '../utils';\n\nvar _use = use('stepper'),\n sfc = _use[0],\n bem = _use[1];\n\nexport default sfc({\n props: {\n value: null,\n integer: Boolean,\n disabled: Boolean,\n inputWidth: String,\n asyncChange: Boolean,\n disableInput: Boolean,\n min: {\n type: [String, Number],\n \"default\": 1\n },\n max: {\n type: [String, Number],\n \"default\": Infinity\n },\n step: {\n type: [String, Number],\n \"default\": 1\n },\n defaultValue: {\n type: [String, Number],\n \"default\": 1\n }\n },\n data: function data() {\n var value = this.range(isDef(this.value) ? this.value : this.defaultValue);\n\n if (value !== +this.value) {\n this.$emit('input', value);\n }\n\n return {\n currentValue: value\n };\n },\n computed: {\n minusDisabled: function minusDisabled() {\n return this.disabled || this.currentValue <= this.min;\n },\n plusDisabled: function plusDisabled() {\n return this.disabled || this.currentValue >= this.max;\n }\n },\n watch: {\n value: function value(val) {\n if (val !== this.currentValue) {\n this.currentValue = this.format(val);\n }\n },\n currentValue: function currentValue(val) {\n this.$emit('input', val);\n this.$emit('change', val);\n }\n },\n methods: {\n // filter illegal characters\n format: function format(value) {\n value = String(value).replace(/[^0-9.-]/g, '');\n return value === '' ? 0 : this.integer ? Math.floor(value) : +value;\n },\n // limit value range\n range: function range(value) {\n return Math.max(Math.min(this.max, this.format(value)), this.min);\n },\n onInput: function onInput(event) {\n var value = event.target.value;\n var formatted = this.format(value);\n\n if (!this.asyncChange) {\n if (+value !== formatted) {\n event.target.value = formatted;\n }\n\n this.currentValue = formatted;\n } else {\n event.target.value = this.currentValue;\n this.$emit('input', formatted);\n this.$emit('change', formatted);\n }\n },\n onChange: function onChange(type) {\n if (this[type + \"Disabled\"]) {\n this.$emit('overlimit', type);\n return;\n }\n\n var diff = type === 'minus' ? -this.step : +this.step;\n var value = Math.round((this.currentValue + diff) * 100) / 100;\n\n if (!this.asyncChange) {\n this.currentValue = this.range(value);\n } else {\n this.$emit('input', value);\n this.$emit('change', value);\n }\n\n this.$emit(type);\n },\n onFocus: function onFocus(event) {\n this.$emit('focus', event);\n },\n onBlur: function onBlur(event) {\n this.currentValue = this.range(this.currentValue);\n this.$emit('blur', event); // fix edge case when input is empty and min is 0\n\n if (this.currentValue === 0) {\n event.target.value = this.currentValue;\n }\n }\n },\n render: function render(h) {\n var _this = this;\n\n var onChange = function onChange(type) {\n return function () {\n _this.onChange(type);\n };\n };\n\n return h(\"div\", {\n \"class\": bem()\n }, [h(\"button\", {\n \"class\": bem('minus', {\n disabled: this.minusDisabled\n }),\n \"on\": {\n \"click\": onChange('minus')\n }\n }), h(\"input\", {\n \"attrs\": {\n \"type\": \"number\",\n \"disabled\": this.disabled || this.disableInput\n },\n \"class\": bem('input'),\n \"domProps\": {\n \"value\": this.currentValue\n },\n \"style\": {\n width: this.inputWidth\n },\n \"on\": {\n \"input\": this.onInput,\n \"focus\": this.onFocus,\n \"blur\": this.onBlur\n }\n }), h(\"button\", {\n \"class\": bem('plus', {\n disabled: this.plusDisabled\n }),\n \"on\": {\n \"click\": onChange('plus')\n }\n })]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/stepper/index.js\n// module id = null\n// module chunks = ","import { use } from '../../utils';\nimport Stepper from '../../stepper';\nimport { LIMIT_TYPE } from '../constants';\n\nvar _use = use('sku-stepper'),\n sfc = _use[0];\n\nvar QUOTA_LIMIT = LIMIT_TYPE.QUOTA_LIMIT,\n STOCK_LIMIT = LIMIT_TYPE.STOCK_LIMIT;\nexport default sfc({\n props: {\n quota: Number,\n quotaUsed: Number,\n hideStock: Boolean,\n skuEventBus: Object,\n skuStockNum: Number,\n selectedSku: Object,\n selectedNum: Number,\n stepperTitle: String,\n hideQuotaText: Boolean,\n selectedSkuComb: Object,\n disableStepperInput: Boolean,\n customStepperConfig: Object\n },\n data: function data() {\n return {\n currentNum: this.selectedNum,\n // 购买限制类型: 限购/库存\n limitType: STOCK_LIMIT\n };\n },\n watch: {\n currentNum: function currentNum(num) {\n this.skuEventBus.$emit('sku:numChange', num);\n },\n stepperLimit: function stepperLimit(limit) {\n if (limit < this.currentNum) {\n this.currentNum = limit;\n }\n }\n },\n computed: {\n stock: function stock() {\n var stockNum = this.customStepperConfig.stockNum;\n\n if (stockNum !== undefined) {\n return stockNum;\n }\n\n if (this.selectedSkuComb) {\n return this.selectedSkuComb.stock_num;\n }\n\n return this.skuStockNum;\n },\n stockText: function stockText() {\n var stockFormatter = this.customStepperConfig.stockFormatter;\n if (stockFormatter) return stockFormatter(this.stock);\n return \"\\u5269\\u4F59\" + this.stock + \"\\u4EF6\";\n },\n quotaText: function quotaText() {\n var _this$customStepperCo = this.customStepperConfig,\n quotaText = _this$customStepperCo.quotaText,\n hideQuotaText = _this$customStepperCo.hideQuotaText;\n if (hideQuotaText) return '';\n var text = '';\n\n if (quotaText) {\n text = quotaText;\n } else if (this.quota > 0) {\n text = \"\\u6BCF\\u4EBA\\u9650\\u8D2D\" + this.quota + \"\\u4EF6\";\n }\n\n return text;\n },\n stepperLimit: function stepperLimit() {\n var quotaLimit = this.quota - this.quotaUsed;\n var limit; // 无限购时直接取库存,有限购时取限购数和库存数中小的那个\n\n if (this.quota > 0 && quotaLimit <= this.stock) {\n // 修正负的limit\n limit = quotaLimit < 0 ? 0 : quotaLimit;\n this.limitType = QUOTA_LIMIT;\n } else {\n limit = this.stock;\n this.limitType = STOCK_LIMIT;\n }\n\n return limit;\n }\n },\n methods: {\n setCurrentNum: function setCurrentNum(num) {\n this.currentNum = num;\n },\n onOverLimit: function onOverLimit(action) {\n this.skuEventBus.$emit('sku:overLimit', {\n action: action,\n limitType: this.limitType,\n quota: this.quota,\n quotaUsed: this.quotaUsed\n });\n },\n onChange: function onChange(currentValue) {\n var handleStepperChange = this.customStepperConfig.handleStepperChange;\n handleStepperChange && handleStepperChange(currentValue);\n this.$emit('change', currentValue);\n }\n },\n render: function render(h) {\n var _this = this;\n\n return h(\"div\", {\n \"class\": \"van-sku-stepper-stock\"\n }, [h(\"div\", {\n \"class\": \"van-sku-stepper-container\"\n }, [h(\"div\", {\n \"class\": \"van-sku__stepper-title\"\n }, [this.stepperTitle || '购买数量', \"\\uFF1A\"]), h(Stepper, {\n \"class\": \"van-sku__stepper\",\n \"attrs\": {\n \"max\": this.stepperLimit,\n \"disableInput\": this.disableStepperInput\n },\n \"on\": {\n \"overlimit\": this.onOverLimit,\n \"change\": this.onChange\n },\n \"model\": {\n value: _this.currentNum,\n callback: function callback($$v) {\n _this.currentNum = $$v;\n }\n }\n })]), !this.hideStock && h(\"div\", {\n \"class\": \"van-sku__stock\"\n }, [this.stockText]), !this.hideQuotaText && this.quotaText && h(\"div\", {\n \"class\": \"van-sku__quota\"\n }, [this.quotaText])]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/sku/components/SkuStepper.js\n// module id = null\n// module chunks = ","/* eslint-disable */\nexport function isEmail(value) {\n var reg = /^((([a-z]|\\d|[!#\\$%&'\\*\\+\\-\\/=\\?\\^_`{\\|}~]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])+(\\.([a-z]|\\d|[!#\\$%&'\\*\\+\\-\\/=\\?\\^_`{\\|}~]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])+)*)|((\\x22)((((\\x20|\\x09)*(\\x0d\\x0a))?(\\x20|\\x09)+)?(([\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x7f]|\\x21|[\\x23-\\x5b]|[\\x5d-\\x7e]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(\\\\([\\x01-\\x09\\x0b\\x0c\\x0d-\\x7f]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]))))*(((\\x20|\\x09)*(\\x0d\\x0a))?(\\x20|\\x09)+)?(\\x22)))@((([a-z]|\\d|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(([a-z]|\\d|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])*([a-z]|\\d|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])))\\.)+(([a-z]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(([a-z]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])*([a-z]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])))$/i;\n return reg.test(value);\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/utils/validate/email.js\n// module id = null\n// module chunks = ","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { use } from '../utils';\n\nvar _use = use('uploader'),\n sfc = _use[0],\n bem = _use[1];\n\nexport default sfc({\n inheritAttrs: false,\n props: {\n disabled: Boolean,\n beforeRead: Function,\n afterRead: Function,\n accept: {\n type: String,\n \"default\": 'image/*'\n },\n resultType: {\n type: String,\n \"default\": 'dataUrl'\n },\n maxSize: {\n type: Number,\n \"default\": Number.MAX_VALUE\n }\n },\n computed: {\n detail: function detail() {\n return {\n name: this.$attrs.name || ''\n };\n }\n },\n methods: {\n onChange: function onChange(event) {\n var _this = this;\n\n var files = event.target.files;\n\n if (this.disabled || !files.length) {\n return;\n }\n\n files = files.length === 1 ? files[0] : [].slice.call(files, 0);\n\n if (!files || this.beforeRead && !this.beforeRead(files, this.detail)) {\n this.resetInput();\n return;\n }\n\n if (Array.isArray(files)) {\n Promise.all(files.map(this.readFile)).then(function (contents) {\n var oversize = false;\n var payload = files.map(function (file, index) {\n if (file.size > _this.maxSize) {\n oversize = true;\n }\n\n return {\n file: files[index],\n content: contents[index]\n };\n });\n\n _this.onAfterRead(payload, oversize);\n });\n } else {\n this.readFile(files).then(function (content) {\n _this.onAfterRead({\n file: files,\n content: content\n }, files.size > _this.maxSize);\n });\n }\n },\n readFile: function readFile(file) {\n var _this2 = this;\n\n return new Promise(function (resolve) {\n var reader = new FileReader();\n\n reader.onload = function (event) {\n resolve(event.target.result);\n };\n\n if (_this2.resultType === 'dataUrl') {\n reader.readAsDataURL(file);\n } else if (_this2.resultType === 'text') {\n reader.readAsText(file);\n }\n });\n },\n onAfterRead: function onAfterRead(files, oversize) {\n if (oversize) {\n this.$emit('oversize', files);\n } else {\n this.afterRead && this.afterRead(files, this.detail);\n }\n\n this.resetInput();\n },\n resetInput: function resetInput() {\n if (this.$refs.input) {\n this.$refs.input.value = '';\n }\n }\n },\n render: function render(h) {\n var accept = this.accept,\n disabled = this.disabled;\n return h(\"div\", {\n \"class\": bem()\n }, [this.slots(), h(\"input\", {\n \"attrs\": _extends({}, this.$attrs, {\n \"type\": \"file\",\n \"accept\": accept,\n \"disabled\": disabled\n }),\n \"ref\": \"input\",\n \"class\": bem('input'),\n \"on\": {\n \"change\": this.onChange\n }\n })]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/uploader/index.js\n// module id = null\n// module chunks = ","import { use } from '../../utils';\nimport Icon from '../../icon';\nimport Loading from '../../loading';\nimport Uploader from '../../uploader';\n\nvar _use = use('sku-img-uploader'),\n sfc = _use[0],\n bem = _use[1];\n\nexport default sfc({\n props: {\n value: String,\n uploadImg: Function,\n maxSize: {\n type: Number,\n \"default\": 6\n }\n },\n data: function data() {\n return {\n // 正在上传的图片 base64\n paddingImg: ''\n };\n },\n computed: {\n imgList: function imgList() {\n return this.value && !this.paddingImg ? [this.value] : [];\n }\n },\n methods: {\n afterReadFile: function afterReadFile(file) {\n var _this = this;\n\n // 上传文件\n this.paddingImg = file.content;\n this.uploadImg(file.file, file.content).then(function (img) {\n _this.$emit('input', img);\n\n _this.$nextTick(function () {\n _this.paddingImg = '';\n });\n })[\"catch\"](function () {\n _this.paddingImg = '';\n });\n },\n onOversize: function onOversize() {\n this.$toast(\"\\u6700\\u5927\\u53EF\\u4E0A\\u4F20\\u56FE\\u7247\\u4E3A\" + this.maxSize + \"MB\\uFF0C\\u8BF7\\u5C1D\\u8BD5\\u538B\\u7F29\\u56FE\\u7247\\u5C3A\\u5BF8\");\n }\n },\n render: function render(h) {\n var _this2 = this;\n\n var imgList = this.imgList,\n paddingImg = this.paddingImg;\n var ImageList = (paddingImg || imgList.length > 0) && h(\"div\", {\n \"class\": \"van-clearfix\"\n }, [imgList.map(function (img) {\n return h(\"div\", {\n \"class\": bem('img')\n }, [h(\"img\", {\n \"attrs\": {\n \"src\": img\n }\n }), h(Icon, {\n \"attrs\": {\n \"name\": \"clear\"\n },\n \"class\": bem('delete'),\n \"on\": {\n \"click\": function click() {\n _this2.$emit('input', '');\n }\n }\n })]);\n }), paddingImg && h(\"div\", {\n \"class\": bem('img')\n }, [h(\"img\", {\n \"attrs\": {\n \"src\": paddingImg\n }\n }), h(Loading, {\n \"attrs\": {\n \"type\": \"spinner\"\n },\n \"class\": bem('uploading')\n })])]);\n return h(\"div\", {\n \"class\": bem()\n }, [h(Uploader, {\n \"attrs\": {\n \"disabled\": !!paddingImg,\n \"afterRead\": this.afterReadFile,\n \"maxSize\": this.maxSize * 1024 * 1024\n },\n \"on\": {\n \"oversize\": this.onOversize\n }\n }, [h(\"div\", {\n \"class\": bem('header')\n }, [paddingImg ? h(\"div\", [\"\\u6B63\\u5728\\u4E0A\\u4F20...\"]) : [h(Icon, {\n \"attrs\": {\n \"name\": \"photograph\"\n }\n }), h(\"span\", {\n \"class\": \"label\"\n }, [this.value ? '重拍' : '拍照', \" \\u6216 \"]), h(Icon, {\n \"attrs\": {\n \"name\": \"photo\"\n }\n }), h(\"span\", {\n \"class\": \"label\"\n }, [this.value ? '重新选择照片' : '选择照片'])]])]), ImageList]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/sku/components/SkuImgUploader.js\n// module id = null\n// module chunks = ","import { use } from '../../utils';\nimport Cell from '../../cell';\nimport CellGroup from '../../cell-group';\nimport Field from '../../field';\nimport { isEmail } from '../../utils/validate/email';\nimport { isNumber } from '../../utils/validate/number';\nimport SkuImgUploader from './SkuImgUploader';\n\nvar _use = use('sku-messages'),\n sfc = _use[0],\n bem = _use[1];\n\nvar PLACEHOLDER = {\n id_no: '输入身份证号码',\n text: '输入文本',\n tel: '输入数字',\n email: '输入邮箱',\n date: '点击选择日期',\n time: '点击选择时间',\n textarea: '点击填写段落文本',\n mobile: '输入手机号码'\n};\nexport default sfc({\n props: {\n messages: Array,\n messageConfig: Object,\n goodsId: [Number, String]\n },\n data: function data() {\n return {\n messageValues: this.resetMessageValues(this.messages)\n };\n },\n watch: {\n messages: function messages(val) {\n this.messageValues = this.resetMessageValues(val);\n }\n },\n methods: {\n resetMessageValues: function resetMessageValues(messages) {\n return (messages || []).map(function () {\n return {\n value: ''\n };\n });\n },\n getType: function getType(message) {\n if (+message.multiple === 1) {\n return 'textarea';\n }\n\n if (message.type === 'id_no') {\n return 'text';\n }\n\n return message.datetime > 0 ? 'datetime-local' : message.type;\n },\n getMessages: function getMessages() {\n var _this = this;\n\n var messages = {};\n this.messageValues.forEach(function (item, index) {\n var value = item.value;\n\n if (_this.messages[index].datetime > 0) {\n value = value.replace(/T/g, ' ');\n }\n\n messages[\"message_\" + index] = value;\n });\n return messages;\n },\n getCartMessages: function getCartMessages() {\n var _this2 = this;\n\n var messages = {};\n this.messageValues.forEach(function (item, index) {\n var value = item.value;\n var message = _this2.messages[index];\n\n if (message.datetime > 0) {\n value = value.replace(/T/g, ' ');\n }\n\n messages[message.name] = value;\n });\n return messages;\n },\n getPlaceholder: function getPlaceholder(message) {\n var type = +message.multiple === 1 ? 'textarea' : message.type;\n var map = this.messageConfig.placeholderMap || {};\n return map[type] || PLACEHOLDER[type];\n },\n validateMessages: function validateMessages() {\n var values = this.messageValues;\n\n for (var i = 0; i < values.length; i++) {\n var value = values[i].value;\n var message = this.messages[i];\n\n if (value === '') {\n // 必填字段的校验\n if (String(message.required) === '1') {\n // eslint-disable-line\n var textType = message.type === 'image' ? '请上传' : '请填写';\n return textType + message.name;\n }\n } else {\n if (message.type === 'tel' && !isNumber(value)) {\n return '请填写正确的数字格式留言';\n }\n\n if (message.type === 'mobile' && !/^\\d{6,20}$/.test(value)) {\n return '手机号长度为6-20位数字';\n }\n\n if (message.type === 'email' && !isEmail(value)) {\n return '请填写正确的邮箱';\n }\n\n if (message.type === 'id_no' && (value.length < 15 || value.length > 18)) {\n return '请填写正确的身份证号码';\n }\n }\n }\n }\n },\n render: function render(h) {\n var _this3 = this;\n\n return h(CellGroup, {\n \"class\": bem()\n }, [this.messages.map(function (message, index) {\n return message.type === 'image' ? h(Cell, {\n \"class\": bem('image-cell'),\n \"attrs\": {\n \"label\": \"仅限一张\",\n \"title\": message.name,\n \"required\": String(message.required) === '1'\n },\n \"key\": _this3.goodsId + \"-\" + index\n }, [h(SkuImgUploader, {\n \"attrs\": {\n \"uploadImg\": _this3.messageConfig.uploadImg,\n \"maxSize\": _this3.messageConfig.uploadMaxSize\n },\n \"model\": {\n value: _this3.messageValues[index].value,\n callback: function callback($$v) {\n _this3.messageValues[index].value = $$v;\n }\n }\n })]) : h(Field, {\n \"attrs\": {\n \"maxlength\": \"200\",\n \"label\": message.name,\n \"required\": String(message.required) === '1',\n \"placeholder\": _this3.getPlaceholder(message),\n \"type\": _this3.getType(message)\n },\n \"key\": _this3.goodsId + \"-\" + index,\n \"model\": {\n value: _this3.messageValues[index].value,\n callback: function callback($$v) {\n _this3.messageValues[index].value = $$v;\n }\n }\n });\n })]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/sku/components/SkuMessages.js\n// module id = null\n// module chunks = ","import _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use } from '../../utils';\nimport { inherit } from '../../utils/functional';\nimport Button from '../../button'; // Types\n\nvar _use = use('sku-actions'),\n sfc = _use[0],\n bem = _use[1];\n\nfunction SkuActions(h, props, slots, ctx) {\n var emit = function emit(name) {\n return function () {\n props.skuEventBus.$emit(name);\n };\n };\n\n return h(\"div\", _mergeJSXProps([{\n \"class\": bem()\n }, inherit(ctx)]), [props.showAddCartBtn && h(Button, {\n \"attrs\": {\n \"bottomAction\": true,\n \"text\": \"加入购物车\"\n },\n \"on\": {\n \"click\": emit('sku:addCart')\n }\n }), h(Button, {\n \"attrs\": {\n \"type\": \"primary\",\n \"bottomAction\": true,\n \"text\": props.buyText || '立即购买'\n },\n \"on\": {\n \"click\": emit('sku:buy')\n }\n })]);\n}\n\nSkuActions.props = {\n buyText: String,\n skuEventBus: Object,\n showAddCartBtn: Boolean\n};\nexport default sfc(SkuActions);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/sku/components/SkuActions.js\n// module id = null\n// module chunks = ","import _extends from \"@babel/runtime/helpers/esm/extends\";\n\n/* eslint-disable camelcase */\nimport Vue from 'vue';\nimport Popup from '../popup';\nimport Toast from '../toast';\nimport ImagePreview from '../image-preview';\nimport SkuHeader from './components/SkuHeader';\nimport SkuRow from './components/SkuRow';\nimport SkuRowItem from './components/SkuRowItem';\nimport SkuStepper from './components/SkuStepper';\nimport SkuMessages from './components/SkuMessages';\nimport SkuActions from './components/SkuActions';\nimport { use, isDef } from '../utils';\nimport { isAllSelected, isSkuChoosable, getSkuComb, getSelectedSkuValues } from './utils/skuHelper';\nimport { LIMIT_TYPE, UNSELECTED_SKU_VALUE_ID } from './constants';\n\nvar _use = use('sku'),\n sfc = _use[0];\n\nvar QUOTA_LIMIT = LIMIT_TYPE.QUOTA_LIMIT;\nexport default sfc({\n props: {\n sku: Object,\n goods: Object,\n quota: Number,\n value: Boolean,\n buyText: String,\n quotaUsed: Number,\n goodsId: [Number, String],\n hideStock: Boolean,\n hideQuotaText: Boolean,\n stepperTitle: String,\n getContainer: Function,\n customSkuValidator: Function,\n closeOnClickOverlay: Boolean,\n disableStepperInput: Boolean,\n resetStepperOnHide: Boolean,\n resetSelectedSkuOnHide: Boolean,\n initialSku: {\n type: Object,\n \"default\": function _default() {\n return {};\n }\n },\n showSoldoutSku: {\n type: Boolean,\n \"default\": true\n },\n showAddCartBtn: {\n type: Boolean,\n \"default\": true\n },\n bodyOffsetTop: {\n type: Number,\n \"default\": 200\n },\n messageConfig: {\n type: Object,\n \"default\": function _default() {\n return {\n placeholderMap: {},\n uploadImg: function uploadImg() {\n return Promise.resolve();\n },\n uploadMaxSize: 5\n };\n }\n },\n customStepperConfig: {\n type: Object,\n \"default\": function _default() {\n return {};\n }\n }\n },\n data: function data() {\n return {\n selectedSku: {},\n selectedNum: 1,\n show: this.value\n };\n },\n watch: {\n show: function show(val) {\n this.$emit('input', val);\n\n if (!val) {\n var selectedSkuValues = getSelectedSkuValues(this.sku.tree, this.selectedSku);\n this.$emit('sku-close', {\n selectedSkuValues: selectedSkuValues,\n selectedNum: this.selectedNum,\n selectedSkuComb: this.selectedSkuComb\n });\n\n if (this.resetStepperOnHide) {\n this.resetStepper();\n }\n\n if (this.resetSelectedSkuOnHide) {\n this.resetSelectedSku(this.skuTree);\n }\n }\n },\n value: function value(val) {\n this.show = val;\n },\n skuTree: function skuTree(val) {\n this.resetSelectedSku(val);\n }\n },\n computed: {\n skuGroupClass: function skuGroupClass() {\n return ['van-sku-group-container', 'van-hairline--bottom', {\n 'van-sku-group-container--hide-soldout': !this.showSoldoutSku\n }];\n },\n bodyStyle: function bodyStyle() {\n if (this.$isServer) {\n return;\n } // header高度82px, sku actions高度50px,如果改动了样式自己传下bodyOffsetTop调整下\n\n\n var maxHeight = window.innerHeight - this.bodyOffsetTop;\n return {\n maxHeight: maxHeight + 'px'\n };\n },\n isSkuCombSelected: function isSkuCombSelected() {\n return isAllSelected(this.sku.tree, this.selectedSku);\n },\n isSkuEmpty: function isSkuEmpty() {\n return Object.keys(this.sku).length === 0;\n },\n hasSku: function hasSku() {\n return !this.sku.none_sku;\n },\n selectedSkuComb: function selectedSkuComb() {\n if (!this.hasSku) {\n return {\n id: this.sku.collection_id,\n price: Math.round(this.sku.price * 100),\n stock_num: this.sku.stock_num\n };\n }\n\n if (this.isSkuCombSelected) {\n return getSkuComb(this.sku.list, this.selectedSku);\n }\n\n return null;\n },\n price: function price() {\n if (this.selectedSkuComb) {\n return (this.selectedSkuComb.price / 100).toFixed(2);\n } // sku.price是一个格式化好的价格区间\n\n\n return this.sku.price;\n },\n skuTree: function skuTree() {\n return this.sku.tree || [];\n },\n imageList: function imageList() {\n var imageList = [this.goods.picture];\n\n if (this.skuTree.length > 0) {\n var treeItem = this.skuTree.filter(function (item) {\n return item.k_s === 's1';\n })[0] || {};\n\n if (!treeItem.v) {\n return;\n }\n\n treeItem.v.forEach(function (vItem) {\n var img = vItem.imgUrl || vItem.img_url;\n\n if (img) {\n imageList.push(img);\n }\n });\n }\n\n return imageList;\n }\n },\n created: function created() {\n var skuEventBus = new Vue();\n this.skuEventBus = skuEventBus;\n skuEventBus.$on('sku:close', this.onClose);\n skuEventBus.$on('sku:select', this.onSelect);\n skuEventBus.$on('sku:numChange', this.onNumChange);\n skuEventBus.$on('sku:previewImage', this.onPreviewImage);\n skuEventBus.$on('sku:overLimit', this.onOverLimit);\n skuEventBus.$on('sku:addCart', this.onAddCart);\n skuEventBus.$on('sku:buy', this.onBuy);\n this.resetStepper();\n this.resetSelectedSku(this.skuTree); // 组件初始化后的钩子,抛出skuEventBus\n\n this.$emit('after-sku-create', skuEventBus);\n },\n methods: {\n resetStepper: function resetStepper() {\n var skuStepper = this.$refs.skuStepper;\n var selectedNum = this.initialSku.selectedNum;\n var num = isDef(selectedNum) ? selectedNum : 1;\n\n if (skuStepper) {\n skuStepper.setCurrentNum(num);\n } else {\n this.selectedNum = num;\n }\n },\n resetSelectedSku: function resetSelectedSku(skuTree) {\n var _this = this;\n\n this.selectedSku = {}; // 重置 selectedSku\n\n skuTree.forEach(function (item) {\n _this.selectedSku[item.k_s] = _this.initialSku[item.k_s] || UNSELECTED_SKU_VALUE_ID;\n }); // 只有一个 sku 规格值时默认选中\n\n skuTree.forEach(function (item) {\n var key = item.k_s;\n var valueId = item.v[0].id;\n\n if (item.v.length === 1 && isSkuChoosable(_this.sku.list, _this.selectedSku, {\n key: key,\n valueId: valueId\n })) {\n _this.selectedSku[key] = valueId;\n }\n });\n },\n getSkuMessages: function getSkuMessages() {\n return this.$refs.skuMessages ? this.$refs.skuMessages.getMessages() : {};\n },\n getSkuCartMessages: function getSkuCartMessages() {\n return this.$refs.skuMessages ? this.$refs.skuMessages.getCartMessages() : {};\n },\n validateSkuMessages: function validateSkuMessages() {\n return this.$refs.skuMessages ? this.$refs.skuMessages.validateMessages() : '';\n },\n validateSku: function validateSku() {\n if (this.selectedNum === 0) {\n return '商品已经无法购买啦';\n }\n\n if (this.isSkuCombSelected) {\n return this.validateSkuMessages();\n } // 自定义sku校验\n\n\n if (this.customSkuValidator) {\n var err = this.customSkuValidator(this);\n if (err) return err;\n }\n\n return '请先选择商品规格';\n },\n onClose: function onClose() {\n this.show = false;\n },\n onSelect: function onSelect(skuValue) {\n var _extends2, _extends3;\n\n // 点击已选中的sku时则取消选中\n this.selectedSku = this.selectedSku[skuValue.skuKeyStr] === skuValue.id ? _extends({}, this.selectedSku, (_extends2 = {}, _extends2[skuValue.skuKeyStr] = UNSELECTED_SKU_VALUE_ID, _extends2)) : _extends({}, this.selectedSku, (_extends3 = {}, _extends3[skuValue.skuKeyStr] = skuValue.id, _extends3));\n this.$emit('sku-selected', {\n skuValue: skuValue,\n selectedSku: this.selectedSku,\n selectedSkuComb: this.selectedSkuComb\n });\n },\n onNumChange: function onNumChange(num) {\n this.selectedNum = num;\n },\n onPreviewImage: function onPreviewImage(indexImage) {\n var _this2 = this;\n\n var index = this.imageList.findIndex(function (image) {\n return image === indexImage;\n });\n var cbParams = {\n index: index,\n imageList: this.imageList,\n indexImage: indexImage\n };\n this.$emit('preview-on', cbParams);\n ImagePreview({\n images: this.imageList,\n startPosition: index,\n onClose: function onClose() {\n _this2.$emit('preview-close', cbParams);\n }\n });\n },\n onOverLimit: function onOverLimit(data) {\n var action = data.action,\n limitType = data.limitType,\n quota = data.quota,\n quotaUsed = data.quotaUsed;\n var handleOverLimit = this.customStepperConfig.handleOverLimit;\n\n if (handleOverLimit) {\n handleOverLimit(data);\n return;\n }\n\n if (action === 'minus') {\n Toast('至少选择一件');\n } else if (action === 'plus') {\n if (limitType === QUOTA_LIMIT) {\n var msg = \"\\u9650\\u8D2D\" + quota + \"\\u4EF6\";\n if (quotaUsed > 0) msg += \"\\uFF0C\" + (\"\\u4F60\\u5DF2\\u8D2D\\u4E70\" + quotaUsed + \"\\u4EF6\");\n Toast(msg);\n } else {\n Toast('库存不足');\n }\n }\n },\n onAddCart: function onAddCart() {\n this.onBuyOrAddCart('add-cart');\n },\n onBuy: function onBuy() {\n this.onBuyOrAddCart('buy-clicked');\n },\n onBuyOrAddCart: function onBuyOrAddCart(type) {\n var error = this.validateSku();\n\n if (error) {\n Toast(error);\n } else {\n this.$emit(type, this.getSkuData());\n }\n },\n getSkuData: function getSkuData() {\n return {\n goodsId: this.goodsId,\n selectedNum: this.selectedNum,\n selectedSkuComb: this.selectedSkuComb,\n messages: this.getSkuMessages(),\n cartMessages: this.getSkuCartMessages()\n };\n }\n },\n render: function render(h) {\n var _this3 = this;\n\n if (this.isSkuEmpty) {\n return;\n }\n\n var sku = this.sku,\n goods = this.goods,\n price = this.price,\n skuEventBus = this.skuEventBus,\n selectedSku = this.selectedSku,\n selectedNum = this.selectedNum,\n stepperTitle = this.stepperTitle,\n hideQuotaText = this.hideQuotaText,\n selectedSkuComb = this.selectedSkuComb;\n var slotsProps = {\n price: price,\n selectedNum: selectedNum,\n skuEventBus: skuEventBus,\n selectedSku: selectedSku,\n selectedSkuComb: selectedSkuComb\n };\n\n var slots = function slots(name) {\n return _this3.slots(name, slotsProps);\n };\n\n var Header = slots('sku-header') || h(SkuHeader, {\n \"attrs\": {\n \"sku\": sku,\n \"goods\": goods,\n \"skuEventBus\": skuEventBus,\n \"selectedSku\": selectedSku\n }\n }, [slots('sku-header-price') || h(\"div\", {\n \"class\": \"van-sku__goods-price\"\n }, [h(\"span\", {\n \"class\": \"van-sku__price-symbol\"\n }, [\"\\uFFE5\"]), h(\"span\", {\n \"class\": \"van-sku__price-num\"\n }, [price])])]);\n var Group = slots('sku-group') || this.hasSku && h(\"div\", {\n \"class\": this.skuGroupClass\n }, [this.skuTree.map(function (skuTreeItem) {\n return h(SkuRow, {\n \"attrs\": {\n \"skuRow\": skuTreeItem\n }\n }, [skuTreeItem.v.map(function (skuValue) {\n return h(SkuRowItem, {\n \"attrs\": {\n \"skuList\": sku.list,\n \"skuValue\": skuValue,\n \"selectedSku\": selectedSku,\n \"skuEventBus\": skuEventBus,\n \"skuKeyStr\": skuTreeItem.k_s\n }\n });\n })]);\n })]);\n var Stepper = slots('sku-stepper') || h(SkuStepper, {\n \"ref\": \"skuStepper\",\n \"attrs\": {\n \"quota\": this.quota,\n \"hideStock\": this.hideStock,\n \"quotaUsed\": this.quotaUsed,\n \"skuEventBus\": skuEventBus,\n \"selectedNum\": selectedNum,\n \"selectedSku\": selectedSku,\n \"stepperTitle\": stepperTitle,\n \"skuStockNum\": sku.stock_num,\n \"hideQuotaText\": hideQuotaText,\n \"selectedSkuComb\": selectedSkuComb,\n \"disableStepperInput\": this.disableStepperInput,\n \"customStepperConfig\": this.customStepperConfig\n },\n \"on\": {\n \"change\": function change(event) {\n _this3.$emit('stepper-change', event);\n }\n }\n });\n var Messages = slots('sku-messages') || h(SkuMessages, {\n \"ref\": \"skuMessages\",\n \"attrs\": {\n \"goodsId\": this.goodsId,\n \"messageConfig\": this.messageConfig,\n \"messages\": sku.messages\n }\n });\n var Actions = slots('sku-actions') || h(SkuActions, {\n \"attrs\": {\n \"buyText\": this.buyText,\n \"skuEventBus\": skuEventBus,\n \"showAddCartBtn\": this.showAddCartBtn\n }\n });\n return h(Popup, {\n \"attrs\": {\n \"position\": \"bottom\",\n \"getContainer\": this.getContainer,\n \"closeOnClickOverlay\": this.closeOnClickOverlay\n },\n \"class\": \"van-sku-container\",\n \"model\": {\n value: _this3.show,\n callback: function callback($$v) {\n _this3.show = $$v;\n }\n }\n }, [Header, h(\"div\", {\n \"class\": \"van-sku-body\",\n \"style\": this.bodyStyle\n }, [slots('sku-body-top'), Group, slots('extra-sku-group'), Stepper, Messages]), Actions]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/sku/Sku.js\n// module id = null\n// module chunks = ","import Sku from './Sku';\nimport SkuActions from './components/SkuActions';\nimport SkuHeader from './components/SkuHeader';\nimport SkuMessages from './components/SkuMessages';\nimport SkuStepper from './components/SkuStepper';\nimport SkuRow from './components/SkuRow';\nimport SkuRowItem from './components/SkuRowItem';\nimport skuHelper from './utils/skuHelper';\nimport constants from './constants';\nSku.SkuActions = SkuActions;\nSku.SkuHeader = SkuHeader;\nSku.SkuMessages = SkuMessages;\nSku.SkuStepper = SkuStepper;\nSku.SkuRow = SkuRow;\nSku.SkuRowItem = SkuRowItem;\nSku.skuHelper = skuHelper;\nSku.skuConstants = constants;\nexport default Sku;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/sku/index.js\n// module id = null\n// module chunks = ","import { use } from '../utils';\nimport { TouchMixin } from '../mixins/touch';\nimport { preventDefault } from '../utils/event';\n\nvar _use = use('slider'),\n sfc = _use[0],\n bem = _use[1];\n\nexport default sfc({\n mixins: [TouchMixin],\n props: {\n min: Number,\n value: Number,\n disabled: Boolean,\n vertical: Boolean,\n activeColor: String,\n inactiveColor: String,\n max: {\n type: Number,\n \"default\": 100\n },\n step: {\n type: Number,\n \"default\": 1\n },\n barHeight: {\n type: String,\n \"default\": '2px'\n }\n },\n methods: {\n onTouchStart: function onTouchStart(event) {\n if (this.disabled) return;\n this.touchStart(event);\n this.startValue = this.format(this.value);\n },\n onTouchMove: function onTouchMove(event) {\n preventDefault(event, true);\n if (this.disabled) return;\n this.touchMove(event);\n var rect = this.$el.getBoundingClientRect();\n var delta = this.vertical ? this.deltaY : this.deltaX;\n var total = this.vertical ? rect.height : rect.width;\n var diff = delta / total * 100;\n this.newValue = this.startValue + diff;\n this.updateValue(this.newValue);\n },\n onTouchEnd: function onTouchEnd() {\n if (this.disabled) return;\n this.updateValue(this.newValue, true);\n },\n onClick: function onClick(event) {\n event.stopPropagation();\n if (this.disabled) return;\n var rect = this.$el.getBoundingClientRect();\n var delta = this.vertical ? event.clientY - rect.top : event.clientX - rect.left;\n var total = this.vertical ? rect.height : rect.width;\n var value = delta / total * 100;\n this.updateValue(value, true);\n },\n updateValue: function updateValue(value, end) {\n value = this.format(value);\n this.$emit('input', value);\n\n if (end) {\n this.$emit('change', value);\n }\n },\n format: function format(value) {\n return Math.round(Math.max(this.min, Math.min(value, this.max)) / this.step) * this.step;\n }\n },\n render: function render(h) {\n var _barStyle;\n\n var vertical = this.vertical;\n var style = {\n background: this.inactiveColor\n };\n var mainAxis = vertical ? 'height' : 'width';\n var crossAxis = vertical ? 'width' : 'height';\n var barStyle = (_barStyle = {}, _barStyle[mainAxis] = this.format(this.value) + \"%\", _barStyle[crossAxis] = this.barHeight, _barStyle.background = this.activeColor, _barStyle);\n return h(\"div\", {\n \"style\": style,\n \"class\": bem({\n disabled: this.disabled,\n vertical: vertical\n }),\n \"on\": {\n \"click\": this.onClick\n }\n }, [h(\"div\", {\n \"class\": bem('bar'),\n \"style\": barStyle\n }, [h(\"div\", {\n \"class\": bem('button-wrapper'),\n \"on\": {\n \"touchstart\": this.onTouchStart,\n \"touchmove\": this.onTouchMove,\n \"touchend\": this.onTouchEnd,\n \"touchcancel\": this.onTouchEnd\n }\n }, [this.slots('button') || h(\"div\", {\n \"class\": bem('button')\n })])])]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/slider/index.js\n// module id = null\n// module chunks = ","import { use } from '../utils';\nimport Icon from '../icon';\n\nvar _use = use('step'),\n sfc = _use[0],\n bem = _use[1];\n\nexport default sfc({\n beforeCreate: function beforeCreate() {\n var steps = this.$parent.steps;\n var index = this.$parent.slots().indexOf(this.$vnode);\n steps.splice(index === -1 ? steps.length : index, 0, this);\n },\n beforeDestroy: function beforeDestroy() {\n var index = this.$parent.steps.indexOf(this);\n\n if (index > -1) {\n this.$parent.steps.splice(index, 1);\n }\n },\n computed: {\n status: function status() {\n var index = this.$parent.steps.indexOf(this);\n var active = this.$parent.active;\n\n if (index < active) {\n return 'finish';\n }\n\n if (index === active) {\n return 'process';\n }\n }\n },\n render: function render(h) {\n var _ref;\n\n var status = this.status;\n var _this$$parent = this.$parent,\n activeIcon = _this$$parent.activeIcon,\n activeColor = _this$$parent.activeColor,\n direction = _this$$parent.direction;\n var titleStyle = status === 'process' && {\n color: activeColor\n };\n return h(\"div\", {\n \"class\": ['van-hairline', bem([direction, (_ref = {}, _ref[status] = status, _ref)])]\n }, [h(\"div\", {\n \"class\": bem('title'),\n \"style\": titleStyle\n }, [this.slots()]), h(\"div\", {\n \"class\": bem('circle-container')\n }, [status !== 'process' ? h(\"i\", {\n \"class\": bem('circle')\n }) : this.slots('active-icon') || h(Icon, {\n \"attrs\": {\n \"name\": activeIcon\n },\n \"style\": {\n color: activeColor\n }\n })]), h(\"div\", {\n \"class\": bem('line')\n })]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/step/index.js\n// module id = null\n// module chunks = ","import { use } from '../utils';\nimport { GREEN } from '../utils/color';\nimport Icon from '../icon';\n\nvar _use = use('steps'),\n sfc = _use[0],\n bem = _use[1];\n\nexport default sfc({\n props: {\n icon: String,\n title: String,\n active: Number,\n iconClass: String,\n description: String,\n direction: {\n type: String,\n \"default\": 'horizontal'\n },\n activeColor: {\n type: String,\n \"default\": GREEN\n },\n activeIcon: {\n type: String,\n \"default\": 'checked'\n }\n },\n data: function data() {\n return {\n steps: []\n };\n },\n render: function render(h) {\n var icon = this.icon,\n title = this.title,\n description = this.description,\n slots = this.slots;\n var StatusIcon = (slots('icon') || icon) && h(\"div\", {\n \"class\": bem('icon')\n }, [slots('icon') || h(Icon, {\n \"attrs\": {\n \"name\": icon\n },\n \"class\": this.iconClass\n })]);\n var StatusMessage = h(\"div\", {\n \"class\": bem('message')\n }, [h(\"div\", {\n \"class\": bem('title')\n }, [title]), h(\"div\", {\n \"class\": [bem('desc'), 'van-ellipsis']\n }, [description])]);\n return h(\"div\", {\n \"class\": bem([this.direction])\n }, [(title || description) && h(\"div\", {\n \"class\": bem('status')\n }, [StatusIcon, StatusMessage, slots('message-extra')]), h(\"div\", {\n \"class\": bem('items', {\n alone: !title && !description\n })\n }, [slots()])]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/steps/index.js\n// module id = null\n// module chunks = ","import _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use } from '../utils';\nimport { emit, inherit } from '../utils/functional';\nimport Button from '../button'; // Types\n\nvar _use = use('submit-bar'),\n sfc = _use[0],\n bem = _use[1],\n t = _use[2];\n\nfunction SubmitBar(h, props, slots, ctx) {\n var tip = props.tip,\n price = props.price;\n var hasPrice = typeof price === 'number';\n return h(\"div\", _mergeJSXProps([{\n \"class\": bem({\n 'safe-area-inset-bottom': props.safeAreaInsetBottom\n })\n }, inherit(ctx)]), [slots.top && slots.top(), (slots.tip || tip) && h(\"div\", {\n \"class\": bem('tip')\n }, [tip, slots.tip && slots.tip()]), h(\"div\", {\n \"class\": bem('bar')\n }, [slots[\"default\"] && slots[\"default\"](), h(\"div\", {\n \"class\": bem('text')\n }, [hasPrice && [h(\"span\", [props.label || t('label')]), h(\"span\", {\n \"class\": bem('price')\n }, [props.currency + \" \" + (price / 100).toFixed(props.decimalLength)])]]), h(Button, {\n \"attrs\": {\n \"square\": true,\n \"size\": \"large\",\n \"type\": props.buttonType,\n \"loading\": props.loading,\n \"disabled\": props.disabled,\n \"text\": props.loading ? '' : props.buttonText\n },\n \"on\": {\n \"click\": function click() {\n emit(ctx, 'submit');\n }\n }\n })])]);\n}\n\nSubmitBar.props = {\n tip: String,\n label: String,\n loading: Boolean,\n disabled: Boolean,\n buttonText: String,\n safeAreaInsetBottom: Boolean,\n price: {\n type: Number,\n \"default\": null\n },\n decimalLength: {\n type: Number,\n \"default\": 2\n },\n currency: {\n type: String,\n \"default\": '¥'\n },\n buttonType: {\n type: String,\n \"default\": 'danger'\n }\n};\nexport default sfc(SubmitBar);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/submit-bar/index.js\n// module id = null\n// module chunks = ","import { on, off } from '../utils/event';\nexport var ClickOutsideMixin = function ClickOutsideMixin(config) {\n return {\n mounted: function mounted() {\n var _this = this;\n\n config.handler = function (event) {\n if (!_this.$el.contains(event.target)) {\n _this[config.method]();\n }\n };\n\n on(document, config.event, config.handler);\n },\n beforeDestroy: function beforeDestroy() {\n off(document, config.event, config.handler);\n }\n };\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/mixins/click-outside.js\n// module id = null\n// module chunks = ","import { use, range } from '../utils';\nimport { preventDefault } from '../utils/event';\nimport { TouchMixin } from '../mixins/touch';\nimport { ClickOutsideMixin } from '../mixins/click-outside';\n\nvar _use = use('swipe-cell'),\n sfc = _use[0],\n bem = _use[1];\n\nvar THRESHOLD = 0.15;\nexport default sfc({\n mixins: [TouchMixin, ClickOutsideMixin({\n event: 'touchstart',\n method: 'onClick'\n })],\n props: {\n onClose: Function,\n disabled: Boolean,\n leftWidth: Number,\n rightWidth: Number\n },\n data: function data() {\n return {\n offset: 0,\n dragging: false\n };\n },\n methods: {\n open: function open(position) {\n var offset = position === 'left' ? this.leftWidth : -this.rightWidth;\n this.swipeMove(offset);\n this.resetSwipeStatus();\n },\n close: function close() {\n this.offset = 0;\n },\n resetSwipeStatus: function resetSwipeStatus() {\n this.swiping = false;\n this.opened = true;\n },\n swipeMove: function swipeMove(offset) {\n if (offset === void 0) {\n offset = 0;\n }\n\n this.offset = range(offset, -this.rightWidth, this.leftWidth);\n\n if (this.offset) {\n this.swiping = true;\n } else {\n this.opened = false;\n }\n },\n swipeLeaveTransition: function swipeLeaveTransition(direction) {\n var offset = this.offset,\n leftWidth = this.leftWidth,\n rightWidth = this.rightWidth;\n var threshold = this.opened ? 1 - THRESHOLD : THRESHOLD; // right\n\n if (direction === 'right' && -offset > rightWidth * threshold && rightWidth > 0) {\n this.open('right'); // left\n } else if (direction === 'left' && offset > leftWidth * threshold && leftWidth > 0) {\n this.open('left'); // reset\n } else {\n this.swipeMove(0);\n }\n },\n startDrag: function startDrag(event) {\n if (this.disabled) {\n return;\n }\n\n this.dragging = true;\n this.startOffset = this.offset;\n this.touchStart(event);\n },\n onDrag: function onDrag(event) {\n if (this.disabled) {\n return;\n }\n\n this.touchMove(event);\n\n if (this.direction === 'horizontal') {\n preventDefault(event);\n this.swipeMove(this.deltaX + this.startOffset);\n }\n },\n endDrag: function endDrag() {\n if (this.disabled) {\n return;\n }\n\n this.dragging = false;\n\n if (this.swiping) {\n this.swipeLeaveTransition(this.offset > 0 ? 'left' : 'right');\n }\n },\n onClick: function onClick(position) {\n if (position === void 0) {\n position = 'outside';\n }\n\n this.$emit('click', position);\n\n if (!this.offset) {\n return;\n }\n\n if (this.onClose) {\n this.onClose(position, this);\n } else {\n this.swipeMove(0);\n }\n }\n },\n render: function render(h) {\n var _this = this;\n\n var onClick = function onClick(position, stop) {\n return function (event) {\n if (stop) {\n event.stopPropagation();\n }\n\n _this.onClick(position);\n };\n };\n\n var wrapperStyle = {\n transform: \"translate3d(\" + this.offset + \"px, 0, 0)\",\n transition: this.dragging ? 'none' : '.6s cubic-bezier(0.18, 0.89, 0.32, 1)'\n };\n return h(\"div\", {\n \"class\": bem(),\n \"on\": {\n \"click\": onClick('cell'),\n \"touchstart\": this.startDrag,\n \"touchmove\": this.onDrag,\n \"touchend\": this.endDrag,\n \"touchcancel\": this.endDrag\n }\n }, [h(\"div\", {\n \"class\": bem('wrapper'),\n \"style\": wrapperStyle,\n \"on\": {\n \"transitionend\": function transitionend() {\n _this.swiping = false;\n }\n }\n }, [this.leftWidth ? h(\"div\", {\n \"class\": bem('left'),\n \"on\": {\n \"click\": onClick('left', true)\n }\n }, [this.slots('left')]) : null, this.slots(), this.rightWidth ? h(\"div\", {\n \"class\": bem('right'),\n \"on\": {\n \"click\": onClick('right', true)\n }\n }, [this.slots('right')]) : null])]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/swipe-cell/index.js\n// module id = null\n// module chunks = ","import { use } from '../utils';\n\nvar _use = use('tabbar'),\n sfc = _use[0],\n bem = _use[1];\n\nexport default sfc({\n data: function data() {\n return {\n items: []\n };\n },\n props: {\n value: Number,\n activeColor: String,\n safeAreaInsetBottom: Boolean,\n fixed: {\n type: Boolean,\n \"default\": true\n },\n zIndex: {\n type: Number,\n \"default\": 1\n }\n },\n watch: {\n items: function items() {\n this.setActiveItem();\n },\n value: function value() {\n this.setActiveItem();\n }\n },\n methods: {\n setActiveItem: function setActiveItem() {\n var _this = this;\n\n this.items.forEach(function (item, index) {\n item.active = index === _this.value;\n });\n },\n onChange: function onChange(active) {\n if (active !== this.value) {\n this.$emit('input', active);\n this.$emit('change', active);\n }\n }\n },\n render: function render(h) {\n return h(\"div\", {\n \"style\": {\n zIndex: this.zIndex\n },\n \"class\": ['van-hairline--top-bottom', bem({\n fixed: this.fixed,\n 'safe-area-inset-bottom': this.safeAreaInsetBottom\n })]\n }, [this.slots()]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/tabbar/index.js\n// module id = null\n// module chunks = ","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { use } from '../utils';\nimport Icon from '../icon';\nimport Info from '../info';\nimport { route, routeProps } from '../utils/router';\n\nvar _use = use('tabbar-item'),\n sfc = _use[0],\n bem = _use[1];\n\nexport default sfc({\n props: _extends({}, routeProps, {\n icon: String,\n dot: Boolean,\n info: [String, Number]\n }),\n data: function data() {\n return {\n active: false\n };\n },\n beforeCreate: function beforeCreate() {\n this.$parent.items.push(this);\n },\n destroyed: function destroyed() {\n this.$parent.items.splice(this.$parent.items.indexOf(this), 1);\n },\n methods: {\n onClick: function onClick(event) {\n this.$parent.onChange(this.$parent.items.indexOf(this));\n this.$emit('click', event);\n route(this.$router, this);\n }\n },\n render: function render(h) {\n var icon = this.icon,\n slots = this.slots,\n active = this.active;\n var style = active ? {\n color: this.$parent.activeColor\n } : null;\n return h(\"div\", {\n \"class\": bem({\n active: active\n }),\n \"style\": style,\n \"on\": {\n \"click\": this.onClick\n }\n }, [h(\"div\", {\n \"class\": bem('icon', {\n dot: this.dot\n })\n }, [slots('icon', {\n active: active\n }) || icon && h(Icon, {\n \"attrs\": {\n \"name\": icon\n }\n }), h(Info, {\n \"attrs\": {\n \"info\": this.info\n }\n })]), h(\"div\", {\n \"class\": bem('text')\n }, [slots('default', {\n active: active\n })])]);\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/tabbar-item/index.js\n// module id = null\n// module chunks = ","import _mergeJSXProps from \"@vue/babel-helper-vue-jsx-merge-props\";\nimport { use } from '../utils';\nimport { emit, inherit } from '../utils/functional';\nimport Icon from '../icon'; // Types\n\nvar _use = use('tree-select'),\n sfc = _use[0],\n bem = _use[1];\n\nfunction TreeSelect(h, props, slots, ctx) {\n var height = props.height,\n items = props.items,\n mainActiveIndex = props.mainActiveIndex,\n activeId = props.activeId;\n var selectedItem = items[mainActiveIndex] || {};\n var subItems = selectedItem.children || [];\n return h(\"div\", _mergeJSXProps([{\n \"class\": bem(),\n \"style\": {\n height: height + \"px\"\n }\n }, inherit(ctx)]), [h(\"div\", {\n \"class\": bem('nav')\n }, [items.map(function (item, index) {\n return h(\"div\", {\n \"key\": index,\n \"class\": ['van-ellipsis', bem('nitem', {\n active: mainActiveIndex === index,\n disabled: item.disabled\n })],\n \"on\": {\n \"click\": function click() {\n if (!item.disabled) {\n emit(ctx, 'navclick', index);\n }\n }\n }\n }, [item.text]);\n })]), h(\"div\", {\n \"class\": bem('content')\n }, [subItems.map(function (item) {\n return h(\"div\", {\n \"key\": item.id,\n \"class\": ['van-ellipsis', bem('item', {\n active: activeId === item.id,\n disabled: item.disabled\n })],\n \"on\": {\n \"click\": function click() {\n if (!item.disabled) {\n emit(ctx, 'itemclick', item);\n }\n }\n }\n }, [item.text, activeId === item.id && h(Icon, {\n \"attrs\": {\n \"name\": \"checked\",\n \"size\": \"16px\"\n },\n \"class\": bem('selected')\n })]);\n })])]);\n}\n\nTreeSelect.props = {\n items: Array,\n mainActiveIndex: Number,\n activeId: {\n type: [Number, String],\n \"default\": 0\n },\n height: {\n type: Number,\n \"default\": 300\n }\n};\nexport default sfc(TreeSelect);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/tree-select/index.js\n// module id = null\n// module chunks = ","/* eslint-disable no-underscore-dangle */\nimport { on, off } from '../utils/event';\nimport { getScrollTop, getElementTop, getVisibleHeight, getScrollEventTarget } from '../utils/scroll';\nvar CONTEXT = '@@Waterfall';\nvar OFFSET = 300; // 处理滚动函数\n\nfunction handleScrollEvent() {\n var element = this.el;\n var scrollEventTarget = this.scrollEventTarget; // 已被禁止的滚动处理\n\n if (this.disabled) return;\n var targetScrollTop = getScrollTop(scrollEventTarget);\n var targetVisibleHeight = getVisibleHeight(scrollEventTarget); // 滚动元素可视区域下边沿到滚动元素元素最顶上 距离\n\n var targetBottom = targetScrollTop + targetVisibleHeight; // 如果无元素高度,考虑为元素隐藏,直接返回\n\n if (!targetVisibleHeight) return; // 判断是否到了底\n\n var needLoadMoreToLower = false;\n\n if (element === scrollEventTarget) {\n needLoadMoreToLower = scrollEventTarget.scrollHeight - targetBottom < this.offset;\n } else {\n var elementBottom = getElementTop(element) - getElementTop(scrollEventTarget) + getVisibleHeight(element);\n needLoadMoreToLower = elementBottom - targetVisibleHeight < this.offset;\n }\n\n if (needLoadMoreToLower) {\n this.cb.lower && this.cb.lower({\n target: scrollEventTarget,\n top: targetScrollTop\n });\n } // 判断是否到了顶\n\n\n var needLoadMoreToUpper = false;\n\n if (element === scrollEventTarget) {\n needLoadMoreToUpper = targetScrollTop < this.offset;\n } else {\n var elementTop = getElementTop(element) - getElementTop(scrollEventTarget);\n needLoadMoreToUpper = elementTop + this.offset > 0;\n }\n\n if (needLoadMoreToUpper) {\n this.cb.upper && this.cb.upper({\n target: scrollEventTarget,\n top: targetScrollTop\n });\n }\n} // 绑定事件到元素上\n// 读取基本的控制变量\n\n\nfunction doBindEvent() {\n var _this = this;\n\n if (this.el[CONTEXT].binded) {\n return;\n }\n\n this.el[CONTEXT].binded = true;\n this.scrollEventListener = handleScrollEvent.bind(this);\n this.scrollEventTarget = getScrollEventTarget(this.el);\n var disabledExpr = this.el.getAttribute('waterfall-disabled');\n var disabled = false;\n\n if (disabledExpr) {\n this.vm.$watch(disabledExpr, function (value) {\n _this.disabled = value;\n\n _this.scrollEventListener();\n });\n disabled = Boolean(this.vm[disabledExpr]);\n }\n\n this.disabled = disabled;\n var offset = this.el.getAttribute('waterfall-offset');\n this.offset = Number(offset) || OFFSET;\n on(this.scrollEventTarget, 'scroll', this.scrollEventListener, true);\n this.scrollEventListener();\n} // 绑定事件\n\n\nfunction startBind(el) {\n var context = el[CONTEXT];\n context.vm.$nextTick(function () {\n doBindEvent.call(el[CONTEXT]);\n });\n} // 确认何时绑事件监听函数\n\n\nfunction doCheckStartBind(el) {\n var context = el[CONTEXT];\n\n if (context.vm._isMounted) {\n startBind(el);\n } else {\n context.vm.$on('hook:mounted', function () {\n startBind(el);\n });\n }\n}\n\nexport default function (type) {\n return {\n bind: function bind(el, binding, vnode) {\n if (!el[CONTEXT]) {\n el[CONTEXT] = {\n el: el,\n vm: vnode.context,\n cb: {}\n };\n }\n\n el[CONTEXT].cb[type] = binding.value;\n doCheckStartBind(el);\n },\n update: function update(el) {\n var context = el[CONTEXT];\n context.scrollEventListener && context.scrollEventListener();\n },\n unbind: function unbind(el) {\n var context = el[CONTEXT];\n\n if (context.scrollEventTarget) {\n off(context.scrollEventTarget, 'scroll', context.scrollEventListener);\n }\n }\n };\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/waterfall/directive.js\n// module id = null\n// module chunks = ","import Waterfall from './directive';\n\nWaterfall.install = function (Vue) {\n if (process.env.NODE_ENV !== 'production') {\n console.warn('[Vant] Waterfall is deprecated, please use List component instread');\n }\n\n Vue.directive('WaterfallLower', Waterfall('lower'));\n Vue.directive('WaterfallUpper', Waterfall('upper'));\n};\n\nexport default Waterfall;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/waterfall/index.js\n// module id = null\n// module chunks = ","/* eslint-disable */\n// This file is auto gererated by build/build-entry.js\nimport Actionsheet from './actionsheet';\nimport AddressEdit from './address-edit';\nimport AddressList from './address-list';\nimport Area from './area';\nimport Badge from './badge';\nimport BadgeGroup from './badge-group';\nimport Button from './button';\nimport Card from './card';\nimport Cell from './cell';\nimport CellGroup from './cell-group';\nimport Checkbox from './checkbox';\nimport CheckboxGroup from './checkbox-group';\nimport Circle from './circle';\nimport Col from './col';\nimport Collapse from './collapse';\nimport CollapseItem from './collapse-item';\nimport ContactCard from './contact-card';\nimport ContactEdit from './contact-edit';\nimport ContactList from './contact-list';\nimport Coupon from './coupon';\nimport CouponCell from './coupon-cell';\nimport CouponList from './coupon-list';\nimport DatetimePicker from './datetime-picker';\nimport Dialog from './dialog';\nimport Field from './field';\nimport GoodsAction from './goods-action';\nimport GoodsActionBigBtn from './goods-action-big-btn';\nimport GoodsActionMiniBtn from './goods-action-mini-btn';\nimport Icon from './icon';\nimport ImagePreview from './image-preview';\nimport Info from './info';\nimport Lazyload from './lazyload';\nimport List from './list';\nimport Loading from './loading';\nimport Locale from './locale';\nimport NavBar from './nav-bar';\nimport NoticeBar from './notice-bar';\nimport Notify from './notify';\nimport NumberKeyboard from './number-keyboard';\nimport Overlay from './overlay';\nimport Pagination from './pagination';\nimport Panel from './panel';\nimport PasswordInput from './password-input';\nimport Picker from './picker';\nimport Popup from './popup';\nimport Progress from './progress';\nimport PullRefresh from './pull-refresh';\nimport Radio from './radio';\nimport RadioGroup from './radio-group';\nimport Rate from './rate';\nimport Row from './row';\nimport Search from './search';\nimport Sku from './sku';\nimport Slider from './slider';\nimport Step from './step';\nimport Stepper from './stepper';\nimport Steps from './steps';\nimport SubmitBar from './submit-bar';\nimport Swipe from './swipe';\nimport SwipeCell from './swipe-cell';\nimport SwipeItem from './swipe-item';\nimport Switch from './switch';\nimport SwitchCell from './switch-cell';\nimport Tab from './tab';\nimport Tabbar from './tabbar';\nimport TabbarItem from './tabbar-item';\nimport Tabs from './tabs';\nimport Tag from './tag';\nimport Toast from './toast';\nimport TreeSelect from './tree-select';\nimport Uploader from './uploader';\nimport Waterfall from './waterfall';\nvar version = '1.6.28';\nvar components = [Actionsheet, AddressEdit, AddressList, Area, Badge, BadgeGroup, Button, Card, Cell, CellGroup, Checkbox, CheckboxGroup, Circle, Col, Collapse, CollapseItem, ContactCard, ContactEdit, ContactList, Coupon, CouponCell, CouponList, DatetimePicker, Dialog, Field, GoodsAction, GoodsActionBigBtn, GoodsActionMiniBtn, Icon, ImagePreview, Info, List, Loading, NavBar, NoticeBar, Notify, NumberKeyboard, Overlay, Pagination, Panel, PasswordInput, Picker, Popup, Progress, PullRefresh, Radio, RadioGroup, Rate, Row, Search, Sku, Slider, Step, Stepper, Steps, SubmitBar, Swipe, SwipeCell, SwipeItem, Switch, SwitchCell, Tab, Tabbar, TabbarItem, Tabs, Tag, Toast, TreeSelect, Uploader];\n\nvar install = function install(Vue) {\n components.forEach(function (Component) {\n Vue.use(Component);\n });\n};\n/* istanbul ignore if */\n\n\nif (typeof window !== 'undefined' && window.Vue) {\n install(window.Vue);\n}\n\nexport { install, version, Actionsheet, AddressEdit, AddressList, Area, Badge, BadgeGroup, Button, Card, Cell, CellGroup, Checkbox, CheckboxGroup, Circle, Col, Collapse, CollapseItem, ContactCard, ContactEdit, ContactList, Coupon, CouponCell, CouponList, DatetimePicker, Dialog, Field, GoodsAction, GoodsActionBigBtn, GoodsActionMiniBtn, Icon, ImagePreview, Info, Lazyload, List, Loading, Locale, NavBar, NoticeBar, Notify, NumberKeyboard, Overlay, Pagination, Panel, PasswordInput, Picker, Popup, Progress, PullRefresh, Radio, RadioGroup, Rate, Row, Search, Sku, Slider, Step, Stepper, Steps, SubmitBar, Swipe, SwipeCell, SwipeItem, Switch, SwitchCell, Tab, Tabbar, TabbarItem, Tabs, Tag, Toast, TreeSelect, Uploader, Waterfall };\nexport default {\n install: install,\n version: version\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/index.js\n// module id = null\n// module chunks = ","var g;\r\n\r\n// This works in non-strict mode\r\ng = (function() {\r\n\treturn this;\r\n})();\r\n\r\ntry {\r\n\t// This works if eval is allowed (see CSP)\r\n\tg = g || Function(\"return this\")() || (1,eval)(\"this\");\r\n} catch(e) {\r\n\t// This works if the window reference is available\r\n\tif(typeof window === \"object\")\r\n\t\tg = window;\r\n}\r\n\r\n// g can still be undefined, but nothing to do about it...\r\n// We return undefined, instead of nothing here, so it's\r\n// easier to handle this case. if(!global) { ...}\r\n\r\nmodule.exports = g;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// (webpack)/buildin/global.js\n// module id = 9AUj\n// module chunks = 0","/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file.\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nmodule.exports = function normalizeComponent (\n rawScriptExports,\n compiledTemplate,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier /* server only */\n) {\n var esModule\n var scriptExports = rawScriptExports = rawScriptExports || {}\n\n // ES6 modules interop\n var type = typeof rawScriptExports.default\n if (type === 'object' || type === 'function') {\n esModule = rawScriptExports\n scriptExports = rawScriptExports.default\n }\n\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // render functions\n if (compiledTemplate) {\n options.render = compiledTemplate.render\n options.staticRenderFns = compiledTemplate.staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = scopeId\n }\n\n var hook\n if (moduleIdentifier) { // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = injectStyles\n }\n\n if (hook) {\n var functional = options.functional\n var existing = functional\n ? options.render\n : options.beforeCreate\n\n if (!functional) {\n // inject component registration as beforeCreate hook\n options.beforeCreate = existing\n ? [].concat(existing, hook)\n : [hook]\n } else {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functioal component in vue file\n options.render = function renderWithStyleInjection (h, context) {\n hook.call(context)\n return existing(h, context)\n }\n }\n }\n\n return {\n esModule: esModule,\n exports: scriptExports,\n options: options\n }\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vue-loader@13.7.3@vue-loader/lib/component-normalizer.js\n// module id = C7Lr\n// module chunks = 0","\n;(function(win, lib) {\n var doc = win.document;\n var docEl = doc.documentElement;\n var metaEl = doc.querySelector('meta[name=\"viewport\"]');\n var flexibleEl = doc.querySelector('meta[name=\"flexible\"]');\n var dpr = 0;\n var scale = 0;\n var tid;\n var flexible = lib.flexible || (lib.flexible = {});\n\n if (metaEl) {\n console.warn('将根据已有的meta标签来设置缩放比例');\n var match = metaEl.getAttribute('content').match(/initial\\-scale=([\\d\\.]+)/);\n if (match) {\n scale = parseFloat(match[1]);\n dpr = parseInt(1 / scale);\n }\n } else if (flexibleEl) {\n var content = flexibleEl.getAttribute('content');\n if (content) {\n var initialDpr = content.match(/initial\\-dpr=([\\d\\.]+)/);\n var maximumDpr = content.match(/maximum\\-dpr=([\\d\\.]+)/);\n if (initialDpr) {\n dpr = parseFloat(initialDpr[1]);\n scale = parseFloat((1 / dpr).toFixed(2));\n }\n if (maximumDpr) {\n dpr = parseFloat(maximumDpr[1]);\n scale = parseFloat((1 / dpr).toFixed(2));\n }\n }\n }\n\n if (!dpr && !scale) {\n var isAndroid = win.navigator.appVersion.match(/android/gi);\n var isIPhone = win.navigator.appVersion.match(/iphone/gi);\n var devicePixelRatio = win.devicePixelRatio;\n if (isIPhone) {\n // iOS下,对于2和3的屏,用2倍的方案,其余的用1倍方案\n if (devicePixelRatio >= 3 && (!dpr || dpr >= 3)) {\n dpr = 3;\n } else if (devicePixelRatio >= 2 && (!dpr || dpr >= 2)){\n dpr = 2;\n } else {\n dpr = 1;\n }\n } else {\n // 其他设备下,仍旧使用1倍的方案\n dpr = 1;\n }\n scale = 1 / dpr;\n }\n\n docEl.setAttribute('data-dpr', dpr);\n if (!metaEl) {\n metaEl = doc.createElement('meta');\n metaEl.setAttribute('name', 'viewport');\n metaEl.setAttribute('content', 'initial-scale=' + scale + ', maximum-scale=' + scale + ', minimum-scale=' + scale + ', user-scalable=no');\n if (docEl.firstElementChild) {\n docEl.firstElementChild.appendChild(metaEl);\n } else {\n var wrap = doc.createElement('div');\n wrap.appendChild(metaEl);\n doc.write(wrap.innerHTML);\n }\n }\n\n function refreshRem(){\n var width = docEl.getBoundingClientRect().width;\n if (width / dpr > 540) {\n width = 540 * dpr;\n }\n var rem = width / 10;\n docEl.style.fontSize = rem + 'px';\n flexible.rem = win.rem = rem;\n }\n\n win.addEventListener('resize', function() {\n clearTimeout(tid);\n tid = setTimeout(refreshRem, 300);\n }, false);\n win.addEventListener('pageshow', function(e) {\n if (e.persisted) {\n clearTimeout(tid);\n tid = setTimeout(refreshRem, 300);\n }\n }, false);\n\n if (doc.readyState === 'complete') {\n doc.body.style.fontSize = 12 * dpr + 'px';\n } else {\n doc.addEventListener('DOMContentLoaded', function(e) {\n doc.body.style.fontSize = 12 * dpr + 'px';\n }, false);\n }\n\n\n refreshRem();\n\n flexible.dpr = win.dpr = dpr;\n flexible.refreshRem = refreshRem;\n flexible.rem2px = function(d) {\n var val = parseFloat(d) * this.rem;\n if (typeof d === 'string' && d.match(/rem$/)) {\n val += 'px';\n }\n return val;\n }\n flexible.px2rem = function(d) {\n var val = parseFloat(d) / this.rem;\n if (typeof d === 'string' && d.match(/px$/)) {\n val += 'rem';\n }\n return val;\n }\n\n})(window, window['lib'] || (window['lib'] = {}));\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_lib-flexible@0.3.2@lib-flexible/flexible.js\n// module id = D0oh\n// module chunks = 0","/* eslint-disable no-use-before-define */\nimport { isDef, isObj } from '.';\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\n\nfunction assignKey(to, from, key) {\n var val = from[key];\n\n if (!isDef(val)) {\n return;\n }\n\n if (!hasOwnProperty.call(to, key) || !isObj(val)) {\n to[key] = val;\n } else {\n to[key] = deepAssign(Object(to[key]), from[key]);\n }\n}\n\nexport function deepAssign(to, from) {\n Object.keys(from).forEach(function (key) {\n assignKey(to, from, key);\n });\n return to;\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/utils/deep-assign.js\n// module id = TExJ\n// module chunks = 0","/**\n * requestAnimationFrame polyfill\n */\nimport { isServer } from './index';\nvar prev = Date.now();\n/* istanbul ignore next */\n\nfunction fallback(fn) {\n var curr = Date.now();\n var ms = Math.max(0, 16 - (curr - prev));\n var id = setTimeout(fn, ms);\n prev = curr + ms;\n return id;\n}\n/* istanbul ignore next */\n\n\nvar root = isServer ? global : window;\n/* istanbul ignore next */\n\nvar iRaf = root.requestAnimationFrame || fallback;\n/* istanbul ignore next */\n\nvar iCancel = root.cancelAnimationFrame || root.clearTimeout;\nexport function raf(fn) {\n return iRaf.call(root, fn);\n}\nexport function cancel(id) {\n iCancel.call(root, id);\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/_vant@1.6.28@vant/es/utils/raf.js\n// module id = VsCf\n// module chunks = 0","\"use strict\";function _extends(){return _extends=Object.assign||function(a){for(var b,c=1;c= 0 && Math.floor(n) === n && isFinite(val)\n}\n\nfunction isPromise (val) {\n return (\n isDef(val) &&\n typeof val.then === 'function' &&\n typeof val.catch === 'function'\n )\n}\n\n/**\n * Convert a value to a string that is actually rendered.\n */\nfunction toString (val) {\n return val == null\n ? ''\n : Array.isArray(val) || (isPlainObject(val) && val.toString === _toString)\n ? JSON.stringify(val, null, 2)\n : String(val)\n}\n\n/**\n * Convert an input value to a number for persistence.\n * If the conversion fails, return original string.\n */\nfunction toNumber (val) {\n var n = parseFloat(val);\n return isNaN(n) ? val : n\n}\n\n/**\n * Make a map and return a function for checking if a key\n * is in that map.\n */\nfunction makeMap (\n str,\n expectsLowerCase\n) {\n var map = Object.create(null);\n var list = str.split(',');\n for (var i = 0; i < list.length; i++) {\n map[list[i]] = true;\n }\n return expectsLowerCase\n ? function (val) { return map[val.toLowerCase()]; }\n : function (val) { return map[val]; }\n}\n\n/**\n * Check if a tag is a built-in tag.\n */\nvar isBuiltInTag = makeMap('slot,component', true);\n\n/**\n * Check if an attribute is a reserved attribute.\n */\nvar isReservedAttribute = makeMap('key,ref,slot,slot-scope,is');\n\n/**\n * Remove an item from an array.\n */\nfunction remove (arr, item) {\n if (arr.length) {\n var index = arr.indexOf(item);\n if (index > -1) {\n return arr.splice(index, 1)\n }\n }\n}\n\n/**\n * Check whether an object has the property.\n */\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction hasOwn (obj, key) {\n return hasOwnProperty.call(obj, key)\n}\n\n/**\n * Create a cached version of a pure function.\n */\nfunction cached (fn) {\n var cache = Object.create(null);\n return (function cachedFn (str) {\n var hit = cache[str];\n return hit || (cache[str] = fn(str))\n })\n}\n\n/**\n * Camelize a hyphen-delimited string.\n */\nvar camelizeRE = /-(\\w)/g;\nvar camelize = cached(function (str) {\n return str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; })\n});\n\n/**\n * Capitalize a string.\n */\nvar capitalize = cached(function (str) {\n return str.charAt(0).toUpperCase() + str.slice(1)\n});\n\n/**\n * Hyphenate a camelCase string.\n */\nvar hyphenateRE = /\\B([A-Z])/g;\nvar hyphenate = cached(function (str) {\n return str.replace(hyphenateRE, '-$1').toLowerCase()\n});\n\n/**\n * Simple bind polyfill for environments that do not support it,\n * e.g., PhantomJS 1.x. Technically, we don't need this anymore\n * since native bind is now performant enough in most browsers.\n * But removing it would mean breaking code that was able to run in\n * PhantomJS 1.x, so this must be kept for backward compatibility.\n */\n\n/* istanbul ignore next */\nfunction polyfillBind (fn, ctx) {\n function boundFn (a) {\n var l = arguments.length;\n return l\n ? l > 1\n ? fn.apply(ctx, arguments)\n : fn.call(ctx, a)\n : fn.call(ctx)\n }\n\n boundFn._length = fn.length;\n return boundFn\n}\n\nfunction nativeBind (fn, ctx) {\n return fn.bind(ctx)\n}\n\nvar bind = Function.prototype.bind\n ? nativeBind\n : polyfillBind;\n\n/**\n * Convert an Array-like object to a real Array.\n */\nfunction toArray (list, start) {\n start = start || 0;\n var i = list.length - start;\n var ret = new Array(i);\n while (i--) {\n ret[i] = list[i + start];\n }\n return ret\n}\n\n/**\n * Mix properties into target object.\n */\nfunction extend (to, _from) {\n for (var key in _from) {\n to[key] = _from[key];\n }\n return to\n}\n\n/**\n * Merge an Array of Objects into a single Object.\n */\nfunction toObject (arr) {\n var res = {};\n for (var i = 0; i < arr.length; i++) {\n if (arr[i]) {\n extend(res, arr[i]);\n }\n }\n return res\n}\n\n/* eslint-disable no-unused-vars */\n\n/**\n * Perform no operation.\n * Stubbing args to make Flow happy without leaving useless transpiled code\n * with ...rest (https://flow.org/blog/2017/05/07/Strict-Function-Call-Arity/).\n */\nfunction noop (a, b, c) {}\n\n/**\n * Always return false.\n */\nvar no = function (a, b, c) { return false; };\n\n/* eslint-enable no-unused-vars */\n\n/**\n * Return the same value.\n */\nvar identity = function (_) { return _; };\n\n/**\n * Generate a string containing static keys from compiler modules.\n */\nfunction genStaticKeys (modules) {\n return modules.reduce(function (keys, m) {\n return keys.concat(m.staticKeys || [])\n }, []).join(',')\n}\n\n/**\n * Check if two values are loosely equal - that is,\n * if they are plain objects, do they have the same shape?\n */\nfunction looseEqual (a, b) {\n if (a === b) { return true }\n var isObjectA = isObject(a);\n var isObjectB = isObject(b);\n if (isObjectA && isObjectB) {\n try {\n var isArrayA = Array.isArray(a);\n var isArrayB = Array.isArray(b);\n if (isArrayA && isArrayB) {\n return a.length === b.length && a.every(function (e, i) {\n return looseEqual(e, b[i])\n })\n } else if (a instanceof Date && b instanceof Date) {\n return a.getTime() === b.getTime()\n } else if (!isArrayA && !isArrayB) {\n var keysA = Object.keys(a);\n var keysB = Object.keys(b);\n return keysA.length === keysB.length && keysA.every(function (key) {\n return looseEqual(a[key], b[key])\n })\n } else {\n /* istanbul ignore next */\n return false\n }\n } catch (e) {\n /* istanbul ignore next */\n return false\n }\n } else if (!isObjectA && !isObjectB) {\n return String(a) === String(b)\n } else {\n return false\n }\n}\n\n/**\n * Return the first index at which a loosely equal value can be\n * found in the array (if value is a plain object, the array must\n * contain an object of the same shape), or -1 if it is not present.\n */\nfunction looseIndexOf (arr, val) {\n for (var i = 0; i < arr.length; i++) {\n if (looseEqual(arr[i], val)) { return i }\n }\n return -1\n}\n\n/**\n * Ensure a function is called only once.\n */\nfunction once (fn) {\n var called = false;\n return function () {\n if (!called) {\n called = true;\n fn.apply(this, arguments);\n }\n }\n}\n\nvar SSR_ATTR = 'data-server-rendered';\n\nvar ASSET_TYPES = [\n 'component',\n 'directive',\n 'filter'\n];\n\nvar LIFECYCLE_HOOKS = [\n 'beforeCreate',\n 'created',\n 'beforeMount',\n 'mounted',\n 'beforeUpdate',\n 'updated',\n 'beforeDestroy',\n 'destroyed',\n 'activated',\n 'deactivated',\n 'errorCaptured',\n 'serverPrefetch'\n];\n\n/* */\n\n\n\nvar config = ({\n /**\n * Option merge strategies (used in core/util/options)\n */\n // $flow-disable-line\n optionMergeStrategies: Object.create(null),\n\n /**\n * Whether to suppress warnings.\n */\n silent: false,\n\n /**\n * Show production mode tip message on boot?\n */\n productionTip: process.env.NODE_ENV !== 'production',\n\n /**\n * Whether to enable devtools\n */\n devtools: process.env.NODE_ENV !== 'production',\n\n /**\n * Whether to record perf\n */\n performance: false,\n\n /**\n * Error handler for watcher errors\n */\n errorHandler: null,\n\n /**\n * Warn handler for watcher warns\n */\n warnHandler: null,\n\n /**\n * Ignore certain custom elements\n */\n ignoredElements: [],\n\n /**\n * Custom user key aliases for v-on\n */\n // $flow-disable-line\n keyCodes: Object.create(null),\n\n /**\n * Check if a tag is reserved so that it cannot be registered as a\n * component. This is platform-dependent and may be overwritten.\n */\n isReservedTag: no,\n\n /**\n * Check if an attribute is reserved so that it cannot be used as a component\n * prop. This is platform-dependent and may be overwritten.\n */\n isReservedAttr: no,\n\n /**\n * Check if a tag is an unknown element.\n * Platform-dependent.\n */\n isUnknownElement: no,\n\n /**\n * Get the namespace of an element\n */\n getTagNamespace: noop,\n\n /**\n * Parse the real tag name for the specific platform.\n */\n parsePlatformTagName: identity,\n\n /**\n * Check if an attribute must be bound using property, e.g. value\n * Platform-dependent.\n */\n mustUseProp: no,\n\n /**\n * Perform updates asynchronously. Intended to be used by Vue Test Utils\n * This will significantly reduce performance if set to false.\n */\n async: true,\n\n /**\n * Exposed for legacy reasons\n */\n _lifecycleHooks: LIFECYCLE_HOOKS\n});\n\n/* */\n\n/**\n * unicode letters used for parsing html tags, component names and property paths.\n * using https://www.w3.org/TR/html53/semantics-scripting.html#potentialcustomelementname\n * skipping \\u10000-\\uEFFFF due to it freezing up PhantomJS\n */\nvar unicodeRegExp = /a-zA-Z\\u00B7\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u203F-\\u2040\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD/;\n\n/**\n * Check if a string starts with $ or _\n */\nfunction isReserved (str) {\n var c = (str + '').charCodeAt(0);\n return c === 0x24 || c === 0x5F\n}\n\n/**\n * Define a property.\n */\nfunction def (obj, key, val, enumerable) {\n Object.defineProperty(obj, key, {\n value: val,\n enumerable: !!enumerable,\n writable: true,\n configurable: true\n });\n}\n\n/**\n * Parse simple path.\n */\nvar bailRE = new RegExp((\"[^\" + (unicodeRegExp.source) + \".$_\\\\d]\"));\nfunction parsePath (path) {\n if (bailRE.test(path)) {\n return\n }\n var segments = path.split('.');\n return function (obj) {\n for (var i = 0; i < segments.length; i++) {\n if (!obj) { return }\n obj = obj[segments[i]];\n }\n return obj\n }\n}\n\n/* */\n\n// can we use __proto__?\nvar hasProto = '__proto__' in {};\n\n// Browser environment sniffing\nvar inBrowser = typeof window !== 'undefined';\nvar inWeex = typeof WXEnvironment !== 'undefined' && !!WXEnvironment.platform;\nvar weexPlatform = inWeex && WXEnvironment.platform.toLowerCase();\nvar UA = inBrowser && window.navigator.userAgent.toLowerCase();\nvar isIE = UA && /msie|trident/.test(UA);\nvar isIE9 = UA && UA.indexOf('msie 9.0') > 0;\nvar isEdge = UA && UA.indexOf('edge/') > 0;\nvar isAndroid = (UA && UA.indexOf('android') > 0) || (weexPlatform === 'android');\nvar isIOS = (UA && /iphone|ipad|ipod|ios/.test(UA)) || (weexPlatform === 'ios');\nvar isChrome = UA && /chrome\\/\\d+/.test(UA) && !isEdge;\nvar isPhantomJS = UA && /phantomjs/.test(UA);\nvar isFF = UA && UA.match(/firefox\\/(\\d+)/);\n\n// Firefox has a \"watch\" function on Object.prototype...\nvar nativeWatch = ({}).watch;\n\nvar supportsPassive = false;\nif (inBrowser) {\n try {\n var opts = {};\n Object.defineProperty(opts, 'passive', ({\n get: function get () {\n /* istanbul ignore next */\n supportsPassive = true;\n }\n })); // https://github.com/facebook/flow/issues/285\n window.addEventListener('test-passive', null, opts);\n } catch (e) {}\n}\n\n// this needs to be lazy-evaled because vue may be required before\n// vue-server-renderer can set VUE_ENV\nvar _isServer;\nvar isServerRendering = function () {\n if (_isServer === undefined) {\n /* istanbul ignore if */\n if (!inBrowser && !inWeex && typeof global !== 'undefined') {\n // detect presence of vue-server-renderer and avoid\n // Webpack shimming the process\n _isServer = global['process'] && global['process'].env.VUE_ENV === 'server';\n } else {\n _isServer = false;\n }\n }\n return _isServer\n};\n\n// detect devtools\nvar devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__;\n\n/* istanbul ignore next */\nfunction isNative (Ctor) {\n return typeof Ctor === 'function' && /native code/.test(Ctor.toString())\n}\n\nvar hasSymbol =\n typeof Symbol !== 'undefined' && isNative(Symbol) &&\n typeof Reflect !== 'undefined' && isNative(Reflect.ownKeys);\n\nvar _Set;\n/* istanbul ignore if */ // $flow-disable-line\nif (typeof Set !== 'undefined' && isNative(Set)) {\n // use native Set when available.\n _Set = Set;\n} else {\n // a non-standard Set polyfill that only works with primitive keys.\n _Set = /*@__PURE__*/(function () {\n function Set () {\n this.set = Object.create(null);\n }\n Set.prototype.has = function has (key) {\n return this.set[key] === true\n };\n Set.prototype.add = function add (key) {\n this.set[key] = true;\n };\n Set.prototype.clear = function clear () {\n this.set = Object.create(null);\n };\n\n return Set;\n }());\n}\n\n/* */\n\nvar warn = noop;\nvar tip = noop;\nvar generateComponentTrace = (noop); // work around flow check\nvar formatComponentName = (noop);\n\nif (process.env.NODE_ENV !== 'production') {\n var hasConsole = typeof console !== 'undefined';\n var classifyRE = /(?:^|[-_])(\\w)/g;\n var classify = function (str) { return str\n .replace(classifyRE, function (c) { return c.toUpperCase(); })\n .replace(/[-_]/g, ''); };\n\n warn = function (msg, vm) {\n var trace = vm ? generateComponentTrace(vm) : '';\n\n if (config.warnHandler) {\n config.warnHandler.call(null, msg, vm, trace);\n } else if (hasConsole && (!config.silent)) {\n console.error((\"[Vue warn]: \" + msg + trace));\n }\n };\n\n tip = function (msg, vm) {\n if (hasConsole && (!config.silent)) {\n console.warn(\"[Vue tip]: \" + msg + (\n vm ? generateComponentTrace(vm) : ''\n ));\n }\n };\n\n formatComponentName = function (vm, includeFile) {\n if (vm.$root === vm) {\n return ''\n }\n var options = typeof vm === 'function' && vm.cid != null\n ? vm.options\n : vm._isVue\n ? vm.$options || vm.constructor.options\n : vm;\n var name = options.name || options._componentTag;\n var file = options.__file;\n if (!name && file) {\n var match = file.match(/([^/\\\\]+)\\.vue$/);\n name = match && match[1];\n }\n\n return (\n (name ? (\"<\" + (classify(name)) + \">\") : \"\") +\n (file && includeFile !== false ? (\" at \" + file) : '')\n )\n };\n\n var repeat = function (str, n) {\n var res = '';\n while (n) {\n if (n % 2 === 1) { res += str; }\n if (n > 1) { str += str; }\n n >>= 1;\n }\n return res\n };\n\n generateComponentTrace = function (vm) {\n if (vm._isVue && vm.$parent) {\n var tree = [];\n var currentRecursiveSequence = 0;\n while (vm) {\n if (tree.length > 0) {\n var last = tree[tree.length - 1];\n if (last.constructor === vm.constructor) {\n currentRecursiveSequence++;\n vm = vm.$parent;\n continue\n } else if (currentRecursiveSequence > 0) {\n tree[tree.length - 1] = [last, currentRecursiveSequence];\n currentRecursiveSequence = 0;\n }\n }\n tree.push(vm);\n vm = vm.$parent;\n }\n return '\\n\\nfound in\\n\\n' + tree\n .map(function (vm, i) { return (\"\" + (i === 0 ? '---> ' : repeat(' ', 5 + i * 2)) + (Array.isArray(vm)\n ? ((formatComponentName(vm[0])) + \"... (\" + (vm[1]) + \" recursive calls)\")\n : formatComponentName(vm))); })\n .join('\\n')\n } else {\n return (\"\\n\\n(found in \" + (formatComponentName(vm)) + \")\")\n }\n };\n}\n\n/* */\n\nvar uid = 0;\n\n/**\n * A dep is an observable that can have multiple\n * directives subscribing to it.\n */\nvar Dep = function Dep () {\n this.id = uid++;\n this.subs = [];\n};\n\nDep.prototype.addSub = function addSub (sub) {\n this.subs.push(sub);\n};\n\nDep.prototype.removeSub = function removeSub (sub) {\n remove(this.subs, sub);\n};\n\nDep.prototype.depend = function depend () {\n if (Dep.target) {\n Dep.target.addDep(this);\n }\n};\n\nDep.prototype.notify = function notify () {\n // stabilize the subscriber list first\n var subs = this.subs.slice();\n if (process.env.NODE_ENV !== 'production' && !config.async) {\n // subs aren't sorted in scheduler if not running async\n // we need to sort them now to make sure they fire in correct\n // order\n subs.sort(function (a, b) { return a.id - b.id; });\n }\n for (var i = 0, l = subs.length; i < l; i++) {\n subs[i].update();\n }\n};\n\n// The current target watcher being evaluated.\n// This is globally unique because only one watcher\n// can be evaluated at a time.\nDep.target = null;\nvar targetStack = [];\n\nfunction pushTarget (target) {\n targetStack.push(target);\n Dep.target = target;\n}\n\nfunction popTarget () {\n targetStack.pop();\n Dep.target = targetStack[targetStack.length - 1];\n}\n\n/* */\n\nvar VNode = function VNode (\n tag,\n data,\n children,\n text,\n elm,\n context,\n componentOptions,\n asyncFactory\n) {\n this.tag = tag;\n this.data = data;\n this.children = children;\n this.text = text;\n this.elm = elm;\n this.ns = undefined;\n this.context = context;\n this.fnContext = undefined;\n this.fnOptions = undefined;\n this.fnScopeId = undefined;\n this.key = data && data.key;\n this.componentOptions = componentOptions;\n this.componentInstance = undefined;\n this.parent = undefined;\n this.raw = false;\n this.isStatic = false;\n this.isRootInsert = true;\n this.isComment = false;\n this.isCloned = false;\n this.isOnce = false;\n this.asyncFactory = asyncFactory;\n this.asyncMeta = undefined;\n this.isAsyncPlaceholder = false;\n};\n\nvar prototypeAccessors = { child: { configurable: true } };\n\n// DEPRECATED: alias for componentInstance for backwards compat.\n/* istanbul ignore next */\nprototypeAccessors.child.get = function () {\n return this.componentInstance\n};\n\nObject.defineProperties( VNode.prototype, prototypeAccessors );\n\nvar createEmptyVNode = function (text) {\n if ( text === void 0 ) text = '';\n\n var node = new VNode();\n node.text = text;\n node.isComment = true;\n return node\n};\n\nfunction createTextVNode (val) {\n return new VNode(undefined, undefined, undefined, String(val))\n}\n\n// optimized shallow clone\n// used for static nodes and slot nodes because they may be reused across\n// multiple renders, cloning them avoids errors when DOM manipulations rely\n// on their elm reference.\nfunction cloneVNode (vnode) {\n var cloned = new VNode(\n vnode.tag,\n vnode.data,\n // #7975\n // clone children array to avoid mutating original in case of cloning\n // a child.\n vnode.children && vnode.children.slice(),\n vnode.text,\n vnode.elm,\n vnode.context,\n vnode.componentOptions,\n vnode.asyncFactory\n );\n cloned.ns = vnode.ns;\n cloned.isStatic = vnode.isStatic;\n cloned.key = vnode.key;\n cloned.isComment = vnode.isComment;\n cloned.fnContext = vnode.fnContext;\n cloned.fnOptions = vnode.fnOptions;\n cloned.fnScopeId = vnode.fnScopeId;\n cloned.asyncMeta = vnode.asyncMeta;\n cloned.isCloned = true;\n return cloned\n}\n\n/*\n * not type checking this file because flow doesn't play well with\n * dynamically accessing methods on Array prototype\n */\n\nvar arrayProto = Array.prototype;\nvar arrayMethods = Object.create(arrayProto);\n\nvar methodsToPatch = [\n 'push',\n 'pop',\n 'shift',\n 'unshift',\n 'splice',\n 'sort',\n 'reverse'\n];\n\n/**\n * Intercept mutating methods and emit events\n */\nmethodsToPatch.forEach(function (method) {\n // cache original method\n var original = arrayProto[method];\n def(arrayMethods, method, function mutator () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var result = original.apply(this, args);\n var ob = this.__ob__;\n var inserted;\n switch (method) {\n case 'push':\n case 'unshift':\n inserted = args;\n break\n case 'splice':\n inserted = args.slice(2);\n break\n }\n if (inserted) { ob.observeArray(inserted); }\n // notify change\n ob.dep.notify();\n return result\n });\n});\n\n/* */\n\nvar arrayKeys = Object.getOwnPropertyNames(arrayMethods);\n\n/**\n * In some cases we may want to disable observation inside a component's\n * update computation.\n */\nvar shouldObserve = true;\n\nfunction toggleObserving (value) {\n shouldObserve = value;\n}\n\n/**\n * Observer class that is attached to each observed\n * object. Once attached, the observer converts the target\n * object's property keys into getter/setters that\n * collect dependencies and dispatch updates.\n */\nvar Observer = function Observer (value) {\n this.value = value;\n this.dep = new Dep();\n this.vmCount = 0;\n def(value, '__ob__', this);\n if (Array.isArray(value)) {\n if (hasProto) {\n protoAugment(value, arrayMethods);\n } else {\n copyAugment(value, arrayMethods, arrayKeys);\n }\n this.observeArray(value);\n } else {\n this.walk(value);\n }\n};\n\n/**\n * Walk through all properties and convert them into\n * getter/setters. This method should only be called when\n * value type is Object.\n */\nObserver.prototype.walk = function walk (obj) {\n var keys = Object.keys(obj);\n for (var i = 0; i < keys.length; i++) {\n defineReactive$$1(obj, keys[i]);\n }\n};\n\n/**\n * Observe a list of Array items.\n */\nObserver.prototype.observeArray = function observeArray (items) {\n for (var i = 0, l = items.length; i < l; i++) {\n observe(items[i]);\n }\n};\n\n// helpers\n\n/**\n * Augment a target Object or Array by intercepting\n * the prototype chain using __proto__\n */\nfunction protoAugment (target, src) {\n /* eslint-disable no-proto */\n target.__proto__ = src;\n /* eslint-enable no-proto */\n}\n\n/**\n * Augment a target Object or Array by defining\n * hidden properties.\n */\n/* istanbul ignore next */\nfunction copyAugment (target, src, keys) {\n for (var i = 0, l = keys.length; i < l; i++) {\n var key = keys[i];\n def(target, key, src[key]);\n }\n}\n\n/**\n * Attempt to create an observer instance for a value,\n * returns the new observer if successfully observed,\n * or the existing observer if the value already has one.\n */\nfunction observe (value, asRootData) {\n if (!isObject(value) || value instanceof VNode) {\n return\n }\n var ob;\n if (hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) {\n ob = value.__ob__;\n } else if (\n shouldObserve &&\n !isServerRendering() &&\n (Array.isArray(value) || isPlainObject(value)) &&\n Object.isExtensible(value) &&\n !value._isVue\n ) {\n ob = new Observer(value);\n }\n if (asRootData && ob) {\n ob.vmCount++;\n }\n return ob\n}\n\n/**\n * Define a reactive property on an Object.\n */\nfunction defineReactive$$1 (\n obj,\n key,\n val,\n customSetter,\n shallow\n) {\n var dep = new Dep();\n\n var property = Object.getOwnPropertyDescriptor(obj, key);\n if (property && property.configurable === false) {\n return\n }\n\n // cater for pre-defined getter/setters\n var getter = property && property.get;\n var setter = property && property.set;\n if ((!getter || setter) && arguments.length === 2) {\n val = obj[key];\n }\n\n var childOb = !shallow && observe(val);\n Object.defineProperty(obj, key, {\n enumerable: true,\n configurable: true,\n get: function reactiveGetter () {\n var value = getter ? getter.call(obj) : val;\n if (Dep.target) {\n dep.depend();\n if (childOb) {\n childOb.dep.depend();\n if (Array.isArray(value)) {\n dependArray(value);\n }\n }\n }\n return value\n },\n set: function reactiveSetter (newVal) {\n var value = getter ? getter.call(obj) : val;\n /* eslint-disable no-self-compare */\n if (newVal === value || (newVal !== newVal && value !== value)) {\n return\n }\n /* eslint-enable no-self-compare */\n if (process.env.NODE_ENV !== 'production' && customSetter) {\n customSetter();\n }\n // #7981: for accessor properties without setter\n if (getter && !setter) { return }\n if (setter) {\n setter.call(obj, newVal);\n } else {\n val = newVal;\n }\n childOb = !shallow && observe(newVal);\n dep.notify();\n }\n });\n}\n\n/**\n * Set a property on an object. Adds the new property and\n * triggers change notification if the property doesn't\n * already exist.\n */\nfunction set (target, key, val) {\n if (process.env.NODE_ENV !== 'production' &&\n (isUndef(target) || isPrimitive(target))\n ) {\n warn((\"Cannot set reactive property on undefined, null, or primitive value: \" + ((target))));\n }\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.length = Math.max(target.length, key);\n target.splice(key, 1, val);\n return val\n }\n if (key in target && !(key in Object.prototype)) {\n target[key] = val;\n return val\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid adding reactive properties to a Vue instance or its root $data ' +\n 'at runtime - declare it upfront in the data option.'\n );\n return val\n }\n if (!ob) {\n target[key] = val;\n return val\n }\n defineReactive$$1(ob.value, key, val);\n ob.dep.notify();\n return val\n}\n\n/**\n * Delete a property and trigger change if necessary.\n */\nfunction del (target, key) {\n if (process.env.NODE_ENV !== 'production' &&\n (isUndef(target) || isPrimitive(target))\n ) {\n warn((\"Cannot delete reactive property on undefined, null, or primitive value: \" + ((target))));\n }\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.splice(key, 1);\n return\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid deleting properties on a Vue instance or its root $data ' +\n '- just set it to null.'\n );\n return\n }\n if (!hasOwn(target, key)) {\n return\n }\n delete target[key];\n if (!ob) {\n return\n }\n ob.dep.notify();\n}\n\n/**\n * Collect dependencies on array elements when the array is touched, since\n * we cannot intercept array element access like property getters.\n */\nfunction dependArray (value) {\n for (var e = (void 0), i = 0, l = value.length; i < l; i++) {\n e = value[i];\n e && e.__ob__ && e.__ob__.dep.depend();\n if (Array.isArray(e)) {\n dependArray(e);\n }\n }\n}\n\n/* */\n\n/**\n * Option overwriting strategies are functions that handle\n * how to merge a parent option value and a child option\n * value into the final value.\n */\nvar strats = config.optionMergeStrategies;\n\n/**\n * Options with restrictions\n */\nif (process.env.NODE_ENV !== 'production') {\n strats.el = strats.propsData = function (parent, child, vm, key) {\n if (!vm) {\n warn(\n \"option \\\"\" + key + \"\\\" can only be used during instance \" +\n 'creation with the `new` keyword.'\n );\n }\n return defaultStrat(parent, child)\n };\n}\n\n/**\n * Helper that recursively merges two data objects together.\n */\nfunction mergeData (to, from) {\n if (!from) { return to }\n var key, toVal, fromVal;\n\n var keys = hasSymbol\n ? Reflect.ownKeys(from)\n : Object.keys(from);\n\n for (var i = 0; i < keys.length; i++) {\n key = keys[i];\n // in case the object is already observed...\n if (key === '__ob__') { continue }\n toVal = to[key];\n fromVal = from[key];\n if (!hasOwn(to, key)) {\n set(to, key, fromVal);\n } else if (\n toVal !== fromVal &&\n isPlainObject(toVal) &&\n isPlainObject(fromVal)\n ) {\n mergeData(toVal, fromVal);\n }\n }\n return to\n}\n\n/**\n * Data\n */\nfunction mergeDataOrFn (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n // in a Vue.extend merge, both should be functions\n if (!childVal) {\n return parentVal\n }\n if (!parentVal) {\n return childVal\n }\n // when parentVal & childVal are both present,\n // we need to return a function that returns the\n // merged result of both functions... no need to\n // check if parentVal is a function here because\n // it has to be a function to pass previous merges.\n return function mergedDataFn () {\n return mergeData(\n typeof childVal === 'function' ? childVal.call(this, this) : childVal,\n typeof parentVal === 'function' ? parentVal.call(this, this) : parentVal\n )\n }\n } else {\n return function mergedInstanceDataFn () {\n // instance merge\n var instanceData = typeof childVal === 'function'\n ? childVal.call(vm, vm)\n : childVal;\n var defaultData = typeof parentVal === 'function'\n ? parentVal.call(vm, vm)\n : parentVal;\n if (instanceData) {\n return mergeData(instanceData, defaultData)\n } else {\n return defaultData\n }\n }\n }\n}\n\nstrats.data = function (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n if (childVal && typeof childVal !== 'function') {\n process.env.NODE_ENV !== 'production' && warn(\n 'The \"data\" option should be a function ' +\n 'that returns a per-instance value in component ' +\n 'definitions.',\n vm\n );\n\n return parentVal\n }\n return mergeDataOrFn(parentVal, childVal)\n }\n\n return mergeDataOrFn(parentVal, childVal, vm)\n};\n\n/**\n * Hooks and props are merged as arrays.\n */\nfunction mergeHook (\n parentVal,\n childVal\n) {\n var res = childVal\n ? parentVal\n ? parentVal.concat(childVal)\n : Array.isArray(childVal)\n ? childVal\n : [childVal]\n : parentVal;\n return res\n ? dedupeHooks(res)\n : res\n}\n\nfunction dedupeHooks (hooks) {\n var res = [];\n for (var i = 0; i < hooks.length; i++) {\n if (res.indexOf(hooks[i]) === -1) {\n res.push(hooks[i]);\n }\n }\n return res\n}\n\nLIFECYCLE_HOOKS.forEach(function (hook) {\n strats[hook] = mergeHook;\n});\n\n/**\n * Assets\n *\n * When a vm is present (instance creation), we need to do\n * a three-way merge between constructor options, instance\n * options and parent options.\n */\nfunction mergeAssets (\n parentVal,\n childVal,\n vm,\n key\n) {\n var res = Object.create(parentVal || null);\n if (childVal) {\n process.env.NODE_ENV !== 'production' && assertObjectType(key, childVal, vm);\n return extend(res, childVal)\n } else {\n return res\n }\n}\n\nASSET_TYPES.forEach(function (type) {\n strats[type + 's'] = mergeAssets;\n});\n\n/**\n * Watchers.\n *\n * Watchers hashes should not overwrite one\n * another, so we merge them as arrays.\n */\nstrats.watch = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n // work around Firefox's Object.prototype.watch...\n if (parentVal === nativeWatch) { parentVal = undefined; }\n if (childVal === nativeWatch) { childVal = undefined; }\n /* istanbul ignore if */\n if (!childVal) { return Object.create(parentVal || null) }\n if (process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = {};\n extend(ret, parentVal);\n for (var key$1 in childVal) {\n var parent = ret[key$1];\n var child = childVal[key$1];\n if (parent && !Array.isArray(parent)) {\n parent = [parent];\n }\n ret[key$1] = parent\n ? parent.concat(child)\n : Array.isArray(child) ? child : [child];\n }\n return ret\n};\n\n/**\n * Other object hashes.\n */\nstrats.props =\nstrats.methods =\nstrats.inject =\nstrats.computed = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n if (childVal && process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = Object.create(null);\n extend(ret, parentVal);\n if (childVal) { extend(ret, childVal); }\n return ret\n};\nstrats.provide = mergeDataOrFn;\n\n/**\n * Default strategy.\n */\nvar defaultStrat = function (parentVal, childVal) {\n return childVal === undefined\n ? parentVal\n : childVal\n};\n\n/**\n * Validate component names\n */\nfunction checkComponents (options) {\n for (var key in options.components) {\n validateComponentName(key);\n }\n}\n\nfunction validateComponentName (name) {\n if (!new RegExp((\"^[a-zA-Z][\\\\-\\\\.0-9_\" + (unicodeRegExp.source) + \"]*$\")).test(name)) {\n warn(\n 'Invalid component name: \"' + name + '\". Component names ' +\n 'should conform to valid custom element name in html5 specification.'\n );\n }\n if (isBuiltInTag(name) || config.isReservedTag(name)) {\n warn(\n 'Do not use built-in or reserved HTML elements as component ' +\n 'id: ' + name\n );\n }\n}\n\n/**\n * Ensure all props option syntax are normalized into the\n * Object-based format.\n */\nfunction normalizeProps (options, vm) {\n var props = options.props;\n if (!props) { return }\n var res = {};\n var i, val, name;\n if (Array.isArray(props)) {\n i = props.length;\n while (i--) {\n val = props[i];\n if (typeof val === 'string') {\n name = camelize(val);\n res[name] = { type: null };\n } else if (process.env.NODE_ENV !== 'production') {\n warn('props must be strings when using array syntax.');\n }\n }\n } else if (isPlainObject(props)) {\n for (var key in props) {\n val = props[key];\n name = camelize(key);\n res[name] = isPlainObject(val)\n ? val\n : { type: val };\n }\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n \"Invalid value for option \\\"props\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(props)) + \".\",\n vm\n );\n }\n options.props = res;\n}\n\n/**\n * Normalize all injections into Object-based format\n */\nfunction normalizeInject (options, vm) {\n var inject = options.inject;\n if (!inject) { return }\n var normalized = options.inject = {};\n if (Array.isArray(inject)) {\n for (var i = 0; i < inject.length; i++) {\n normalized[inject[i]] = { from: inject[i] };\n }\n } else if (isPlainObject(inject)) {\n for (var key in inject) {\n var val = inject[key];\n normalized[key] = isPlainObject(val)\n ? extend({ from: key }, val)\n : { from: val };\n }\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n \"Invalid value for option \\\"inject\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(inject)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Normalize raw function directives into object format.\n */\nfunction normalizeDirectives (options) {\n var dirs = options.directives;\n if (dirs) {\n for (var key in dirs) {\n var def$$1 = dirs[key];\n if (typeof def$$1 === 'function') {\n dirs[key] = { bind: def$$1, update: def$$1 };\n }\n }\n }\n}\n\nfunction assertObjectType (name, value, vm) {\n if (!isPlainObject(value)) {\n warn(\n \"Invalid value for option \\\"\" + name + \"\\\": expected an Object, \" +\n \"but got \" + (toRawType(value)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Merge two option objects into a new one.\n * Core utility used in both instantiation and inheritance.\n */\nfunction mergeOptions (\n parent,\n child,\n vm\n) {\n if (process.env.NODE_ENV !== 'production') {\n checkComponents(child);\n }\n\n if (typeof child === 'function') {\n child = child.options;\n }\n\n normalizeProps(child, vm);\n normalizeInject(child, vm);\n normalizeDirectives(child);\n\n // Apply extends and mixins on the child options,\n // but only if it is a raw options object that isn't\n // the result of another mergeOptions call.\n // Only merged options has the _base property.\n if (!child._base) {\n if (child.extends) {\n parent = mergeOptions(parent, child.extends, vm);\n }\n if (child.mixins) {\n for (var i = 0, l = child.mixins.length; i < l; i++) {\n parent = mergeOptions(parent, child.mixins[i], vm);\n }\n }\n }\n\n var options = {};\n var key;\n for (key in parent) {\n mergeField(key);\n }\n for (key in child) {\n if (!hasOwn(parent, key)) {\n mergeField(key);\n }\n }\n function mergeField (key) {\n var strat = strats[key] || defaultStrat;\n options[key] = strat(parent[key], child[key], vm, key);\n }\n return options\n}\n\n/**\n * Resolve an asset.\n * This function is used because child instances need access\n * to assets defined in its ancestor chain.\n */\nfunction resolveAsset (\n options,\n type,\n id,\n warnMissing\n) {\n /* istanbul ignore if */\n if (typeof id !== 'string') {\n return\n }\n var assets = options[type];\n // check local registration variations first\n if (hasOwn(assets, id)) { return assets[id] }\n var camelizedId = camelize(id);\n if (hasOwn(assets, camelizedId)) { return assets[camelizedId] }\n var PascalCaseId = capitalize(camelizedId);\n if (hasOwn(assets, PascalCaseId)) { return assets[PascalCaseId] }\n // fallback to prototype chain\n var res = assets[id] || assets[camelizedId] || assets[PascalCaseId];\n if (process.env.NODE_ENV !== 'production' && warnMissing && !res) {\n warn(\n 'Failed to resolve ' + type.slice(0, -1) + ': ' + id,\n options\n );\n }\n return res\n}\n\n/* */\n\n\n\nfunction validateProp (\n key,\n propOptions,\n propsData,\n vm\n) {\n var prop = propOptions[key];\n var absent = !hasOwn(propsData, key);\n var value = propsData[key];\n // boolean casting\n var booleanIndex = getTypeIndex(Boolean, prop.type);\n if (booleanIndex > -1) {\n if (absent && !hasOwn(prop, 'default')) {\n value = false;\n } else if (value === '' || value === hyphenate(key)) {\n // only cast empty string / same name to boolean if\n // boolean has higher priority\n var stringIndex = getTypeIndex(String, prop.type);\n if (stringIndex < 0 || booleanIndex < stringIndex) {\n value = true;\n }\n }\n }\n // check default value\n if (value === undefined) {\n value = getPropDefaultValue(vm, prop, key);\n // since the default value is a fresh copy,\n // make sure to observe it.\n var prevShouldObserve = shouldObserve;\n toggleObserving(true);\n observe(value);\n toggleObserving(prevShouldObserve);\n }\n if (\n process.env.NODE_ENV !== 'production' &&\n // skip validation for weex recycle-list child component props\n !(false)\n ) {\n assertProp(prop, key, value, vm, absent);\n }\n return value\n}\n\n/**\n * Get the default value of a prop.\n */\nfunction getPropDefaultValue (vm, prop, key) {\n // no default, return undefined\n if (!hasOwn(prop, 'default')) {\n return undefined\n }\n var def = prop.default;\n // warn against non-factory defaults for Object & Array\n if (process.env.NODE_ENV !== 'production' && isObject(def)) {\n warn(\n 'Invalid default value for prop \"' + key + '\": ' +\n 'Props with type Object/Array must use a factory function ' +\n 'to return the default value.',\n vm\n );\n }\n // the raw prop value was also undefined from previous render,\n // return previous default value to avoid unnecessary watcher trigger\n if (vm && vm.$options.propsData &&\n vm.$options.propsData[key] === undefined &&\n vm._props[key] !== undefined\n ) {\n return vm._props[key]\n }\n // call factory function for non-Function types\n // a value is Function if its prototype is function even across different execution context\n return typeof def === 'function' && getType(prop.type) !== 'Function'\n ? def.call(vm)\n : def\n}\n\n/**\n * Assert whether a prop is valid.\n */\nfunction assertProp (\n prop,\n name,\n value,\n vm,\n absent\n) {\n if (prop.required && absent) {\n warn(\n 'Missing required prop: \"' + name + '\"',\n vm\n );\n return\n }\n if (value == null && !prop.required) {\n return\n }\n var type = prop.type;\n var valid = !type || type === true;\n var expectedTypes = [];\n if (type) {\n if (!Array.isArray(type)) {\n type = [type];\n }\n for (var i = 0; i < type.length && !valid; i++) {\n var assertedType = assertType(value, type[i]);\n expectedTypes.push(assertedType.expectedType || '');\n valid = assertedType.valid;\n }\n }\n\n if (!valid) {\n warn(\n getInvalidTypeMessage(name, value, expectedTypes),\n vm\n );\n return\n }\n var validator = prop.validator;\n if (validator) {\n if (!validator(value)) {\n warn(\n 'Invalid prop: custom validator check failed for prop \"' + name + '\".',\n vm\n );\n }\n }\n}\n\nvar simpleCheckRE = /^(String|Number|Boolean|Function|Symbol)$/;\n\nfunction assertType (value, type) {\n var valid;\n var expectedType = getType(type);\n if (simpleCheckRE.test(expectedType)) {\n var t = typeof value;\n valid = t === expectedType.toLowerCase();\n // for primitive wrapper objects\n if (!valid && t === 'object') {\n valid = value instanceof type;\n }\n } else if (expectedType === 'Object') {\n valid = isPlainObject(value);\n } else if (expectedType === 'Array') {\n valid = Array.isArray(value);\n } else {\n valid = value instanceof type;\n }\n return {\n valid: valid,\n expectedType: expectedType\n }\n}\n\n/**\n * Use function string name to check built-in types,\n * because a simple equality check will fail when running\n * across different vms / iframes.\n */\nfunction getType (fn) {\n var match = fn && fn.toString().match(/^\\s*function (\\w+)/);\n return match ? match[1] : ''\n}\n\nfunction isSameType (a, b) {\n return getType(a) === getType(b)\n}\n\nfunction getTypeIndex (type, expectedTypes) {\n if (!Array.isArray(expectedTypes)) {\n return isSameType(expectedTypes, type) ? 0 : -1\n }\n for (var i = 0, len = expectedTypes.length; i < len; i++) {\n if (isSameType(expectedTypes[i], type)) {\n return i\n }\n }\n return -1\n}\n\nfunction getInvalidTypeMessage (name, value, expectedTypes) {\n var message = \"Invalid prop: type check failed for prop \\\"\" + name + \"\\\".\" +\n \" Expected \" + (expectedTypes.map(capitalize).join(', '));\n var expectedType = expectedTypes[0];\n var receivedType = toRawType(value);\n var expectedValue = styleValue(value, expectedType);\n var receivedValue = styleValue(value, receivedType);\n // check if we need to specify expected value\n if (expectedTypes.length === 1 &&\n isExplicable(expectedType) &&\n !isBoolean(expectedType, receivedType)) {\n message += \" with value \" + expectedValue;\n }\n message += \", got \" + receivedType + \" \";\n // check if we need to specify received value\n if (isExplicable(receivedType)) {\n message += \"with value \" + receivedValue + \".\";\n }\n return message\n}\n\nfunction styleValue (value, type) {\n if (type === 'String') {\n return (\"\\\"\" + value + \"\\\"\")\n } else if (type === 'Number') {\n return (\"\" + (Number(value)))\n } else {\n return (\"\" + value)\n }\n}\n\nfunction isExplicable (value) {\n var explicitTypes = ['string', 'number', 'boolean'];\n return explicitTypes.some(function (elem) { return value.toLowerCase() === elem; })\n}\n\nfunction isBoolean () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return args.some(function (elem) { return elem.toLowerCase() === 'boolean'; })\n}\n\n/* */\n\nfunction handleError (err, vm, info) {\n // Deactivate deps tracking while processing error handler to avoid possible infinite rendering.\n // See: https://github.com/vuejs/vuex/issues/1505\n pushTarget();\n try {\n if (vm) {\n var cur = vm;\n while ((cur = cur.$parent)) {\n var hooks = cur.$options.errorCaptured;\n if (hooks) {\n for (var i = 0; i < hooks.length; i++) {\n try {\n var capture = hooks[i].call(cur, err, vm, info) === false;\n if (capture) { return }\n } catch (e) {\n globalHandleError(e, cur, 'errorCaptured hook');\n }\n }\n }\n }\n }\n globalHandleError(err, vm, info);\n } finally {\n popTarget();\n }\n}\n\nfunction invokeWithErrorHandling (\n handler,\n context,\n args,\n vm,\n info\n) {\n var res;\n try {\n res = args ? handler.apply(context, args) : handler.call(context);\n if (res && !res._isVue && isPromise(res) && !res._handled) {\n res.catch(function (e) { return handleError(e, vm, info + \" (Promise/async)\"); });\n // issue #9511\n // avoid catch triggering multiple times when nested calls\n res._handled = true;\n }\n } catch (e) {\n handleError(e, vm, info);\n }\n return res\n}\n\nfunction globalHandleError (err, vm, info) {\n if (config.errorHandler) {\n try {\n return config.errorHandler.call(null, err, vm, info)\n } catch (e) {\n // if the user intentionally throws the original error in the handler,\n // do not log it twice\n if (e !== err) {\n logError(e, null, 'config.errorHandler');\n }\n }\n }\n logError(err, vm, info);\n}\n\nfunction logError (err, vm, info) {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Error in \" + info + \": \\\"\" + (err.toString()) + \"\\\"\"), vm);\n }\n /* istanbul ignore else */\n if ((inBrowser || inWeex) && typeof console !== 'undefined') {\n console.error(err);\n } else {\n throw err\n }\n}\n\n/* */\n\nvar isUsingMicroTask = false;\n\nvar callbacks = [];\nvar pending = false;\n\nfunction flushCallbacks () {\n pending = false;\n var copies = callbacks.slice(0);\n callbacks.length = 0;\n for (var i = 0; i < copies.length; i++) {\n copies[i]();\n }\n}\n\n// Here we have async deferring wrappers using microtasks.\n// In 2.5 we used (macro) tasks (in combination with microtasks).\n// However, it has subtle problems when state is changed right before repaint\n// (e.g. #6813, out-in transitions).\n// Also, using (macro) tasks in event handler would cause some weird behaviors\n// that cannot be circumvented (e.g. #7109, #7153, #7546, #7834, #8109).\n// So we now use microtasks everywhere, again.\n// A major drawback of this tradeoff is that there are some scenarios\n// where microtasks have too high a priority and fire in between supposedly\n// sequential events (e.g. #4521, #6690, which have workarounds)\n// or even between bubbling of the same event (#6566).\nvar timerFunc;\n\n// The nextTick behavior leverages the microtask queue, which can be accessed\n// via either native Promise.then or MutationObserver.\n// MutationObserver has wider support, however it is seriously bugged in\n// UIWebView in iOS >= 9.3.3 when triggered in touch event handlers. It\n// completely stops working after triggering a few times... so, if native\n// Promise is available, we will use it:\n/* istanbul ignore next, $flow-disable-line */\nif (typeof Promise !== 'undefined' && isNative(Promise)) {\n var p = Promise.resolve();\n timerFunc = function () {\n p.then(flushCallbacks);\n // In problematic UIWebViews, Promise.then doesn't completely break, but\n // it can get stuck in a weird state where callbacks are pushed into the\n // microtask queue but the queue isn't being flushed, until the browser\n // needs to do some other work, e.g. handle a timer. Therefore we can\n // \"force\" the microtask queue to be flushed by adding an empty timer.\n if (isIOS) { setTimeout(noop); }\n };\n isUsingMicroTask = true;\n} else if (!isIE && typeof MutationObserver !== 'undefined' && (\n isNative(MutationObserver) ||\n // PhantomJS and iOS 7.x\n MutationObserver.toString() === '[object MutationObserverConstructor]'\n)) {\n // Use MutationObserver where native Promise is not available,\n // e.g. PhantomJS, iOS7, Android 4.4\n // (#6466 MutationObserver is unreliable in IE11)\n var counter = 1;\n var observer = new MutationObserver(flushCallbacks);\n var textNode = document.createTextNode(String(counter));\n observer.observe(textNode, {\n characterData: true\n });\n timerFunc = function () {\n counter = (counter + 1) % 2;\n textNode.data = String(counter);\n };\n isUsingMicroTask = true;\n} else if (typeof setImmediate !== 'undefined' && isNative(setImmediate)) {\n // Fallback to setImmediate.\n // Technically it leverages the (macro) task queue,\n // but it is still a better choice than setTimeout.\n timerFunc = function () {\n setImmediate(flushCallbacks);\n };\n} else {\n // Fallback to setTimeout.\n timerFunc = function () {\n setTimeout(flushCallbacks, 0);\n };\n}\n\nfunction nextTick (cb, ctx) {\n var _resolve;\n callbacks.push(function () {\n if (cb) {\n try {\n cb.call(ctx);\n } catch (e) {\n handleError(e, ctx, 'nextTick');\n }\n } else if (_resolve) {\n _resolve(ctx);\n }\n });\n if (!pending) {\n pending = true;\n timerFunc();\n }\n // $flow-disable-line\n if (!cb && typeof Promise !== 'undefined') {\n return new Promise(function (resolve) {\n _resolve = resolve;\n })\n }\n}\n\n/* */\n\nvar mark;\nvar measure;\n\nif (process.env.NODE_ENV !== 'production') {\n var perf = inBrowser && window.performance;\n /* istanbul ignore if */\n if (\n perf &&\n perf.mark &&\n perf.measure &&\n perf.clearMarks &&\n perf.clearMeasures\n ) {\n mark = function (tag) { return perf.mark(tag); };\n measure = function (name, startTag, endTag) {\n perf.measure(name, startTag, endTag);\n perf.clearMarks(startTag);\n perf.clearMarks(endTag);\n // perf.clearMeasures(name)\n };\n }\n}\n\n/* not type checking this file because flow doesn't play well with Proxy */\n\nvar initProxy;\n\nif (process.env.NODE_ENV !== 'production') {\n var allowedGlobals = makeMap(\n 'Infinity,undefined,NaN,isFinite,isNaN,' +\n 'parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,' +\n 'Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,' +\n 'require' // for Webpack/Browserify\n );\n\n var warnNonPresent = function (target, key) {\n warn(\n \"Property or method \\\"\" + key + \"\\\" is not defined on the instance but \" +\n 'referenced during render. Make sure that this property is reactive, ' +\n 'either in the data option, or for class-based components, by ' +\n 'initializing the property. ' +\n 'See: https://vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties.',\n target\n );\n };\n\n var warnReservedPrefix = function (target, key) {\n warn(\n \"Property \\\"\" + key + \"\\\" must be accessed with \\\"$data.\" + key + \"\\\" because \" +\n 'properties starting with \"$\" or \"_\" are not proxied in the Vue instance to ' +\n 'prevent conflicts with Vue internals. ' +\n 'See: https://vuejs.org/v2/api/#data',\n target\n );\n };\n\n var hasProxy =\n typeof Proxy !== 'undefined' && isNative(Proxy);\n\n if (hasProxy) {\n var isBuiltInModifier = makeMap('stop,prevent,self,ctrl,shift,alt,meta,exact');\n config.keyCodes = new Proxy(config.keyCodes, {\n set: function set (target, key, value) {\n if (isBuiltInModifier(key)) {\n warn((\"Avoid overwriting built-in modifier in config.keyCodes: .\" + key));\n return false\n } else {\n target[key] = value;\n return true\n }\n }\n });\n }\n\n var hasHandler = {\n has: function has (target, key) {\n var has = key in target;\n var isAllowed = allowedGlobals(key) ||\n (typeof key === 'string' && key.charAt(0) === '_' && !(key in target.$data));\n if (!has && !isAllowed) {\n if (key in target.$data) { warnReservedPrefix(target, key); }\n else { warnNonPresent(target, key); }\n }\n return has || !isAllowed\n }\n };\n\n var getHandler = {\n get: function get (target, key) {\n if (typeof key === 'string' && !(key in target)) {\n if (key in target.$data) { warnReservedPrefix(target, key); }\n else { warnNonPresent(target, key); }\n }\n return target[key]\n }\n };\n\n initProxy = function initProxy (vm) {\n if (hasProxy) {\n // determine which proxy handler to use\n var options = vm.$options;\n var handlers = options.render && options.render._withStripped\n ? getHandler\n : hasHandler;\n vm._renderProxy = new Proxy(vm, handlers);\n } else {\n vm._renderProxy = vm;\n }\n };\n}\n\n/* */\n\nvar seenObjects = new _Set();\n\n/**\n * Recursively traverse an object to evoke all converted\n * getters, so that every nested property inside the object\n * is collected as a \"deep\" dependency.\n */\nfunction traverse (val) {\n _traverse(val, seenObjects);\n seenObjects.clear();\n}\n\nfunction _traverse (val, seen) {\n var i, keys;\n var isA = Array.isArray(val);\n if ((!isA && !isObject(val)) || Object.isFrozen(val) || val instanceof VNode) {\n return\n }\n if (val.__ob__) {\n var depId = val.__ob__.dep.id;\n if (seen.has(depId)) {\n return\n }\n seen.add(depId);\n }\n if (isA) {\n i = val.length;\n while (i--) { _traverse(val[i], seen); }\n } else {\n keys = Object.keys(val);\n i = keys.length;\n while (i--) { _traverse(val[keys[i]], seen); }\n }\n}\n\n/* */\n\nvar normalizeEvent = cached(function (name) {\n var passive = name.charAt(0) === '&';\n name = passive ? name.slice(1) : name;\n var once$$1 = name.charAt(0) === '~'; // Prefixed last, checked first\n name = once$$1 ? name.slice(1) : name;\n var capture = name.charAt(0) === '!';\n name = capture ? name.slice(1) : name;\n return {\n name: name,\n once: once$$1,\n capture: capture,\n passive: passive\n }\n});\n\nfunction createFnInvoker (fns, vm) {\n function invoker () {\n var arguments$1 = arguments;\n\n var fns = invoker.fns;\n if (Array.isArray(fns)) {\n var cloned = fns.slice();\n for (var i = 0; i < cloned.length; i++) {\n invokeWithErrorHandling(cloned[i], null, arguments$1, vm, \"v-on handler\");\n }\n } else {\n // return handler return value for single handlers\n return invokeWithErrorHandling(fns, null, arguments, vm, \"v-on handler\")\n }\n }\n invoker.fns = fns;\n return invoker\n}\n\nfunction updateListeners (\n on,\n oldOn,\n add,\n remove$$1,\n createOnceHandler,\n vm\n) {\n var name, def$$1, cur, old, event;\n for (name in on) {\n def$$1 = cur = on[name];\n old = oldOn[name];\n event = normalizeEvent(name);\n if (isUndef(cur)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Invalid handler for event \\\"\" + (event.name) + \"\\\": got \" + String(cur),\n vm\n );\n } else if (isUndef(old)) {\n if (isUndef(cur.fns)) {\n cur = on[name] = createFnInvoker(cur, vm);\n }\n if (isTrue(event.once)) {\n cur = on[name] = createOnceHandler(event.name, cur, event.capture);\n }\n add(event.name, cur, event.capture, event.passive, event.params);\n } else if (cur !== old) {\n old.fns = cur;\n on[name] = old;\n }\n }\n for (name in oldOn) {\n if (isUndef(on[name])) {\n event = normalizeEvent(name);\n remove$$1(event.name, oldOn[name], event.capture);\n }\n }\n}\n\n/* */\n\nfunction mergeVNodeHook (def, hookKey, hook) {\n if (def instanceof VNode) {\n def = def.data.hook || (def.data.hook = {});\n }\n var invoker;\n var oldHook = def[hookKey];\n\n function wrappedHook () {\n hook.apply(this, arguments);\n // important: remove merged hook to ensure it's called only once\n // and prevent memory leak\n remove(invoker.fns, wrappedHook);\n }\n\n if (isUndef(oldHook)) {\n // no existing hook\n invoker = createFnInvoker([wrappedHook]);\n } else {\n /* istanbul ignore if */\n if (isDef(oldHook.fns) && isTrue(oldHook.merged)) {\n // already a merged invoker\n invoker = oldHook;\n invoker.fns.push(wrappedHook);\n } else {\n // existing plain hook\n invoker = createFnInvoker([oldHook, wrappedHook]);\n }\n }\n\n invoker.merged = true;\n def[hookKey] = invoker;\n}\n\n/* */\n\nfunction extractPropsFromVNodeData (\n data,\n Ctor,\n tag\n) {\n // we are only extracting raw values here.\n // validation and default values are handled in the child\n // component itself.\n var propOptions = Ctor.options.props;\n if (isUndef(propOptions)) {\n return\n }\n var res = {};\n var attrs = data.attrs;\n var props = data.props;\n if (isDef(attrs) || isDef(props)) {\n for (var key in propOptions) {\n var altKey = hyphenate(key);\n if (process.env.NODE_ENV !== 'production') {\n var keyInLowerCase = key.toLowerCase();\n if (\n key !== keyInLowerCase &&\n attrs && hasOwn(attrs, keyInLowerCase)\n ) {\n tip(\n \"Prop \\\"\" + keyInLowerCase + \"\\\" is passed to component \" +\n (formatComponentName(tag || Ctor)) + \", but the declared prop name is\" +\n \" \\\"\" + key + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and camelCased \" +\n \"props need to use their kebab-case equivalents when using in-DOM \" +\n \"templates. You should probably use \\\"\" + altKey + \"\\\" instead of \\\"\" + key + \"\\\".\"\n );\n }\n }\n checkProp(res, props, key, altKey, true) ||\n checkProp(res, attrs, key, altKey, false);\n }\n }\n return res\n}\n\nfunction checkProp (\n res,\n hash,\n key,\n altKey,\n preserve\n) {\n if (isDef(hash)) {\n if (hasOwn(hash, key)) {\n res[key] = hash[key];\n if (!preserve) {\n delete hash[key];\n }\n return true\n } else if (hasOwn(hash, altKey)) {\n res[key] = hash[altKey];\n if (!preserve) {\n delete hash[altKey];\n }\n return true\n }\n }\n return false\n}\n\n/* */\n\n// The template compiler attempts to minimize the need for normalization by\n// statically analyzing the template at compile time.\n//\n// For plain HTML markup, normalization can be completely skipped because the\n// generated render function is guaranteed to return Array. There are\n// two cases where extra normalization is needed:\n\n// 1. When the children contains components - because a functional component\n// may return an Array instead of a single root. In this case, just a simple\n// normalization is needed - if any child is an Array, we flatten the whole\n// thing with Array.prototype.concat. It is guaranteed to be only 1-level deep\n// because functional components already normalize their own children.\nfunction simpleNormalizeChildren (children) {\n for (var i = 0; i < children.length; i++) {\n if (Array.isArray(children[i])) {\n return Array.prototype.concat.apply([], children)\n }\n }\n return children\n}\n\n// 2. When the children contains constructs that always generated nested Arrays,\n// e.g.

    x&6@4bBcf>8#4{qyI4fB*aMA5?bn5PA6EdN5JO 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