From b0ceb078b961e73403ab0e509d9ccbf8c834754b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=AE=B8=E5=BD=A6=E5=B3=B0?= <774177933@qq.com> Date: Sat, 16 Mar 2019 12:31:00 +0800 Subject: [PATCH] no message --- .../src/build/element-icons.ttf | Bin 11040 -> 0 bytes .../src/build/element-icons.woff | Bin 6164 -> 0 bytes CocosCreatorInspector/src/build/js/popup.js | 66436 ---------------- .../src/build/js/popup.js.map | 1 - .../src/build/pages/popup.html | 10 - CocosCreatorInspector/src/options/index.js | 5 + CocosCreatorInspector/src/options/index.vue | 12 +- CocosCreatorInspector/src/popup/index.vue | 21 +- CocosCreatorInspector/src/webpack.config.js | 22 +- 9 files changed, 47 insertions(+), 66460 deletions(-) delete mode 100644 CocosCreatorInspector/src/build/element-icons.ttf delete mode 100644 CocosCreatorInspector/src/build/element-icons.woff delete mode 100644 CocosCreatorInspector/src/build/js/popup.js delete mode 100644 CocosCreatorInspector/src/build/js/popup.js.map delete mode 100644 CocosCreatorInspector/src/build/pages/popup.html diff --git a/CocosCreatorInspector/src/build/element-icons.ttf b/CocosCreatorInspector/src/build/element-icons.ttf deleted file mode 100644 index 73bc90f4ab73801335269ea9f75cbd79aa388864..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11040 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 diff --git a/CocosCreatorInspector/src/build/element-icons.woff b/CocosCreatorInspector/src/build/element-icons.woff deleted file mode 100644 index 28da65d498a0cc6cfa587a02640a6e7ca85ad6d6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6164 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 M^niCa<;cVTKU1h^ApigX diff --git a/CocosCreatorInspector/src/build/js/popup.js b/CocosCreatorInspector/src/build/js/popup.js deleted file mode 100644 index d1f881d..0000000 --- a/CocosCreatorInspector/src/build/js/popup.js +++ /dev/null @@ -1,66436 +0,0 @@ -/******/ (function(modules) { // webpackBootstrap -/******/ // The module cache -/******/ var installedModules = {}; -/******/ -/******/ // The require function -/******/ function __webpack_require__(moduleId) { -/******/ -/******/ // Check if module is in cache -/******/ if(installedModules[moduleId]) { -/******/ return installedModules[moduleId].exports; -/******/ } -/******/ // Create a new module (and put it into the cache) -/******/ var module = installedModules[moduleId] = { -/******/ i: moduleId, -/******/ l: false, -/******/ exports: {} -/******/ }; -/******/ -/******/ // Execute the module function -/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); -/******/ -/******/ // Flag the module as loaded -/******/ module.l = true; -/******/ -/******/ // Return the exports of the module -/******/ return module.exports; -/******/ } -/******/ -/******/ -/******/ // expose the modules object (__webpack_modules__) -/******/ __webpack_require__.m = modules; -/******/ -/******/ // expose the module cache -/******/ __webpack_require__.c = installedModules; -/******/ -/******/ // define getter function for harmony exports -/******/ __webpack_require__.d = function(exports, name, getter) { -/******/ if(!__webpack_require__.o(exports, name)) { -/******/ Object.defineProperty(exports, name, { -/******/ configurable: false, -/******/ enumerable: true, -/******/ get: getter -/******/ }); -/******/ } -/******/ }; -/******/ -/******/ // getDefaultExport function for compatibility with non-harmony modules -/******/ __webpack_require__.n = function(module) { -/******/ var getter = module && module.__esModule ? -/******/ function getDefault() { return module['default']; } : -/******/ function getModuleExports() { return module; }; -/******/ __webpack_require__.d(getter, 'a', getter); -/******/ return getter; -/******/ }; -/******/ -/******/ // Object.prototype.hasOwnProperty.call -/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; -/******/ -/******/ // __webpack_public_path__ -/******/ __webpack_require__.p = "/"; -/******/ -/******/ // Load entry module and return exports -/******/ return __webpack_require__(__webpack_require__.s = 74); -/******/ }) -/************************************************************************/ -/******/ ([ -/* 0 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_vue_loader_lib_selector_type_script_index_0_bustCache_Icon_vue__ = __webpack_require__(81); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__vue_loader_lib_template_compiler_index_id_data_v_afaabd70_hasScoped_false_buble_transforms_vue_loader_lib_selector_type_template_index_0_bustCache_Icon_vue__ = __webpack_require__(82); -var disposed = false -function injectStyle (ssrContext) { - if (disposed) return - __webpack_require__(79) -} -var normalizeComponent = __webpack_require__(19) -/* script */ - -/* template */ - -/* template functional */ -var __vue_template_functional__ = false -/* styles */ -var __vue_styles__ = injectStyle -/* scopeId */ -var __vue_scopeId__ = null -/* moduleIdentifier (server only) */ -var __vue_module_identifier__ = null -var Component = normalizeComponent( - __WEBPACK_IMPORTED_MODULE_0__babel_loader_vue_loader_lib_selector_type_script_index_0_bustCache_Icon_vue__["a" /* default */], - __WEBPACK_IMPORTED_MODULE_1__vue_loader_lib_template_compiler_index_id_data_v_afaabd70_hasScoped_false_buble_transforms_vue_loader_lib_selector_type_template_index_0_bustCache_Icon_vue__["a" /* default */], - __vue_template_functional__, - __vue_styles__, - __vue_scopeId__, - __vue_module_identifier__ -) -Component.options.__file = "node_modules/vue-awesome/components/Icon.vue" -if (Component.esModule && Object.keys(Component.esModule).some(function (key) { return key !== "default" && key.substr(0, 2) !== "__"})) { console.error("named exports are not supported in *.vue files.")} - -/* hot reload */ -if (false) {(function () { - var hotAPI = require("vue-hot-reload-api") - hotAPI.install(require("vue"), false) - if (!hotAPI.compatible) return - module.hot.accept() - if (!module.hot.data) { - hotAPI.createRecord("data-v-afaabd70", Component.options) - } else { - hotAPI.reload("data-v-afaabd70", Component.options) -' + ' } - module.hot.dispose(function (data) { - disposed = true - }) -})()} - -/* harmony default export */ __webpack_exports__["a"] = (Component.exports); - - -/***/ }), -/* 1 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -/* WEBPACK VAR INJECTION */(function(process) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return warning; }); -/* harmony export (immutable) */ __webpack_exports__["d"] = format; -/* harmony export (immutable) */ __webpack_exports__["e"] = isEmptyValue; -/* unused harmony export isEmptyObject */ -/* harmony export (immutable) */ __webpack_exports__["a"] = asyncMap; -/* harmony export (immutable) */ __webpack_exports__["b"] = complementError; -/* harmony export (immutable) */ __webpack_exports__["c"] = deepMerge; -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(62); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof__ = __webpack_require__(28); -/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof__); - - -var formatRegExp = /%[sdj%]/g; - -var warning = function warning() {}; - -// don't print warning message when in production env or node runtime -if (process.env.NODE_ENV !== 'production' && typeof window !== 'undefined' && typeof document !== 'undefined') { - warning = function warning(type, errors) { - if (typeof console !== 'undefined' && console.warn) { - if (errors.every(function (e) { - return typeof e === 'string'; - })) { - console.warn(type, errors); - } - } - }; -} - -function format() { - for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; - } - - var i = 1; - var f = args[0]; - var len = args.length; - if (typeof f === 'function') { - return f.apply(null, args.slice(1)); - } - if (typeof f === 'string') { - var str = String(f).replace(formatRegExp, function (x) { - if (x === '%%') { - return '%'; - } - if (i >= len) { - return x; - } - switch (x) { - case '%s': - return String(args[i++]); - case '%d': - return Number(args[i++]); - case '%j': - try { - return JSON.stringify(args[i++]); - } catch (_) { - return '[Circular]'; - } - break; - default: - return x; - } - }); - for (var arg = args[i]; i < len; arg = args[++i]) { - str += ' ' + arg; - } - return str; - } - return f; -} - -function isNativeStringType(type) { - return type === 'string' || type === 'url' || type === 'hex' || type === 'email' || type === 'pattern'; -} - -function isEmptyValue(value, type) { - if (value === undefined || value === null) { - return true; - } - if (type === 'array' && Array.isArray(value) && !value.length) { - return true; - } - if (isNativeStringType(type) && typeof value === 'string' && !value) { - return true; - } - return false; -} - -function isEmptyObject(obj) { - return Object.keys(obj).length === 0; -} - -function asyncParallelArray(arr, func, callback) { - var results = []; - var total = 0; - var arrLength = arr.length; - - function count(errors) { - results.push.apply(results, errors); - total++; - if (total === arrLength) { - callback(results); - } - } - - arr.forEach(function (a) { - func(a, count); - }); -} - -function asyncSerialArray(arr, func, callback) { - var index = 0; - var arrLength = arr.length; - - function next(errors) { - if (errors && errors.length) { - callback(errors); - return; - } - var original = index; - index = index + 1; - if (original < arrLength) { - func(arr[original], next); - } else { - callback([]); - } - } - - next([]); -} - -function flattenObjArr(objArr) { - var ret = []; - Object.keys(objArr).forEach(function (k) { - ret.push.apply(ret, objArr[k]); - }); - return ret; -} - -function asyncMap(objArr, option, func, callback) { - if (option.first) { - var flattenArr = flattenObjArr(objArr); - return asyncSerialArray(flattenArr, func, callback); - } - var firstFields = option.firstFields || []; - if (firstFields === true) { - firstFields = Object.keys(objArr); - } - var objArrKeys = Object.keys(objArr); - var objArrLength = objArrKeys.length; - var total = 0; - var results = []; - var next = function next(errors) { - results.push.apply(results, errors); - total++; - if (total === objArrLength) { - callback(results); - } - }; - objArrKeys.forEach(function (key) { - var arr = objArr[key]; - if (firstFields.indexOf(key) !== -1) { - asyncSerialArray(arr, func, next); - } else { - asyncParallelArray(arr, func, next); - } - }); -} - -function complementError(rule) { - return function (oe) { - if (oe && oe.message) { - oe.field = oe.field || rule.fullField; - return oe; - } - return { - message: oe, - field: oe.field || rule.fullField - }; - }; -} - -function deepMerge(target, source) { - if (source) { - for (var s in source) { - if (source.hasOwnProperty(s)) { - var value = source[s]; - if ((typeof value === 'undefined' ? 'undefined' : __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof___default()(value)) === 'object' && __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_typeof___default()(target[s]) === 'object') { - target[s] = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, target[s], value); - } else { - target[s] = value; - } - } - } - } - return target; -} -/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(6))) - -/***/ }), -/* 2 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); -/* WEBPACK VAR INJECTION */(function(process, global, setImmediate) {/*! - * Vue.js v2.5.8 - * (c) 2014-2017 Evan You - * Released under the MIT License. - */ -/* */ - -var emptyObject = Object.freeze({}); - -// these helpers produces better vm code in JS engines due to their -// explicitness and function inlining -function isUndef (v) { - return v === undefined || v === null -} - -function isDef (v) { - return v !== undefined && v !== null -} - -function isTrue (v) { - return v === true -} - -function isFalse (v) { - return v === false -} - -/** - * Check if value is primitive - */ -function isPrimitive (value) { - return ( - typeof value === 'string' || - typeof value === 'number' || - typeof value === 'boolean' - ) -} - -/** - * Quick object check - this is primarily used to tell - * Objects from primitive values when we know the value - * is a JSON-compliant type. - */ -function isObject (obj) { - return obj !== null && typeof obj === 'object' -} - -/** - * Get the raw type string of a value e.g. [object Object] - */ -var _toString = Object.prototype.toString; - -function toRawType (value) { - return _toString.call(value).slice(8, -1) -} - -/** - * Strict object type check. Only returns true - * for plain JavaScript objects. - */ -function isPlainObject (obj) { - return _toString.call(obj) === '[object Object]' -} - -function isRegExp (v) { - return _toString.call(v) === '[object RegExp]' -} - -/** - * Check if val is a valid array index. - */ -function isValidArrayIndex (val) { - var n = parseFloat(String(val)); - return n >= 0 && Math.floor(n) === n && isFinite(val) -} - -/** - * Convert a value to a string that is actually rendered. - */ -function toString (val) { - return val == null - ? '' - : typeof val === 'object' - ? JSON.stringify(val, null, 2) - : String(val) -} - -/** - * Convert a input value to a number for persistence. - * If the conversion fails, return original string. - */ -function toNumber (val) { - var n = parseFloat(val); - return isNaN(n) ? val : n -} - -/** - * Make a map and return a function for checking if a key - * is in that map. - */ -function makeMap ( - str, - expectsLowerCase -) { - var map = Object.create(null); - var list = str.split(','); - for (var i = 0; i < list.length; i++) { - map[list[i]] = true; - } - return expectsLowerCase - ? function (val) { return map[val.toLowerCase()]; } - : function (val) { return map[val]; } -} - -/** - * Check if a tag is a built-in tag. - */ -var isBuiltInTag = makeMap('slot,component', true); - -/** - * Check if a attribute is a reserved attribute. - */ -var isReservedAttribute = makeMap('key,ref,slot,slot-scope,is'); - -/** - * Remove an item from an array - */ -function remove (arr, item) { - if (arr.length) { - var index = arr.indexOf(item); - if (index > -1) { - return arr.splice(index, 1) - } - } -} - -/** - * Check whether the object has the property. - */ -var hasOwnProperty = Object.prototype.hasOwnProperty; -function hasOwn (obj, key) { - return hasOwnProperty.call(obj, key) -} - -/** - * Create a cached version of a pure function. - */ -function cached (fn) { - var cache = Object.create(null); - return (function cachedFn (str) { - var hit = cache[str]; - return hit || (cache[str] = fn(str)) - }) -} - -/** - * Camelize a hyphen-delimited string. - */ -var camelizeRE = /-(\w)/g; -var camelize = cached(function (str) { - return str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; }) -}); - -/** - * Capitalize a string. - */ -var capitalize = cached(function (str) { - return str.charAt(0).toUpperCase() + str.slice(1) -}); - -/** - * Hyphenate a camelCase string. - */ -var hyphenateRE = /\B([A-Z])/g; -var hyphenate = cached(function (str) { - return str.replace(hyphenateRE, '-$1').toLowerCase() -}); - -/** - * Simple bind, faster than native - */ -function bind (fn, ctx) { - function boundFn (a) { - var l = arguments.length; - return l - ? l > 1 - ? fn.apply(ctx, arguments) - : fn.call(ctx, a) - : fn.call(ctx) - } - // record original fn length - boundFn._length = fn.length; - return boundFn -} - -/** - * Convert an Array-like object to a real Array. - */ -function toArray (list, start) { - start = start || 0; - var i = list.length - start; - var ret = new Array(i); - while (i--) { - ret[i] = list[i + start]; - } - return ret -} - -/** - * Mix properties into target object. - */ -function extend (to, _from) { - for (var key in _from) { - to[key] = _from[key]; - } - return to -} - -/** - * Merge an Array of Objects into a single Object. - */ -function toObject (arr) { - var res = {}; - for (var i = 0; i < arr.length; i++) { - if (arr[i]) { - extend(res, arr[i]); - } - } - return res -} - -/** - * Perform no operation. - * Stubbing args to make Flow happy without leaving useless transpiled code - * with ...rest (https://flow.org/blog/2017/05/07/Strict-Function-Call-Arity/) - */ -function noop (a, b, c) {} - -/** - * Always return false. - */ -var no = function (a, b, c) { return false; }; - -/** - * Return same value - */ -var identity = function (_) { return _; }; - -/** - * Generate a static keys string from compiler modules. - */ -function genStaticKeys (modules) { - return modules.reduce(function (keys, m) { - return keys.concat(m.staticKeys || []) - }, []).join(',') -} - -/** - * Check if two values are loosely equal - that is, - * if they are plain objects, do they have the same shape? - */ -function looseEqual (a, b) { - if (a === b) { return true } - var isObjectA = isObject(a); - var isObjectB = isObject(b); - if (isObjectA && isObjectB) { - try { - var isArrayA = Array.isArray(a); - var isArrayB = Array.isArray(b); - if (isArrayA && isArrayB) { - return a.length === b.length && a.every(function (e, i) { - return looseEqual(e, b[i]) - }) - } else if (!isArrayA && !isArrayB) { - var keysA = Object.keys(a); - var keysB = Object.keys(b); - return keysA.length === keysB.length && keysA.every(function (key) { - return looseEqual(a[key], b[key]) - }) - } else { - /* istanbul ignore next */ - return false - } - } catch (e) { - /* istanbul ignore next */ - return false - } - } else if (!isObjectA && !isObjectB) { - return String(a) === String(b) - } else { - return false - } -} - -function looseIndexOf (arr, val) { - for (var i = 0; i < arr.length; i++) { - if (looseEqual(arr[i], val)) { return i } - } - return -1 -} - -/** - * Ensure a function is called only once. - */ -function once (fn) { - var called = false; - return function () { - if (!called) { - called = true; - fn.apply(this, arguments); - } - } -} - -var SSR_ATTR = 'data-server-rendered'; - -var ASSET_TYPES = [ - 'component', - 'directive', - 'filter' -]; - -var LIFECYCLE_HOOKS = [ - 'beforeCreate', - 'created', - 'beforeMount', - 'mounted', - 'beforeUpdate', - 'updated', - 'beforeDestroy', - 'destroyed', - 'activated', - 'deactivated', - 'errorCaptured' -]; - -/* */ - -var config = ({ - /** - * Option merge strategies (used in core/util/options) - */ - optionMergeStrategies: Object.create(null), - - /** - * Whether to suppress warnings. - */ - silent: false, - - /** - * Show production mode tip message on boot? - */ - productionTip: process.env.NODE_ENV !== 'production', - - /** - * Whether to enable devtools - */ - devtools: process.env.NODE_ENV !== 'production', - - /** - * Whether to record perf - */ - performance: false, - - /** - * Error handler for watcher errors - */ - errorHandler: null, - - /** - * Warn handler for watcher warns - */ - warnHandler: null, - - /** - * Ignore certain custom elements - */ - ignoredElements: [], - - /** - * Custom user key aliases for v-on - */ - keyCodes: Object.create(null), - - /** - * Check if a tag is reserved so that it cannot be registered as a - * component. This is platform-dependent and may be overwritten. - */ - isReservedTag: no, - - /** - * Check if an attribute is reserved so that it cannot be used as a component - * prop. This is platform-dependent and may be overwritten. - */ - isReservedAttr: no, - - /** - * Check if a tag is an unknown element. - * Platform-dependent. - */ - isUnknownElement: no, - - /** - * Get the namespace of an element - */ - getTagNamespace: noop, - - /** - * Parse the real tag name for the specific platform. - */ - parsePlatformTagName: identity, - - /** - * Check if an attribute must be bound using property, e.g. value - * Platform-dependent. - */ - mustUseProp: no, - - /** - * Exposed for legacy reasons - */ - _lifecycleHooks: LIFECYCLE_HOOKS -}); - -/* */ - -/** - * Check if a string starts with $ or _ - */ -function isReserved (str) { - var c = (str + '').charCodeAt(0); - return c === 0x24 || c === 0x5F -} - -/** - * Define a property. - */ -function def (obj, key, val, enumerable) { - Object.defineProperty(obj, key, { - value: val, - enumerable: !!enumerable, - writable: true, - configurable: true - }); -} - -/** - * Parse simple path. - */ -var bailRE = /[^\w.$]/; -function parsePath (path) { - if (bailRE.test(path)) { - return - } - var segments = path.split('.'); - return function (obj) { - for (var i = 0; i < segments.length; i++) { - if (!obj) { return } - obj = obj[segments[i]]; - } - return obj - } -} - -/* */ - - -// can we use __proto__? -var hasProto = '__proto__' in {}; - -// Browser environment sniffing -var inBrowser = typeof window !== 'undefined'; -var inWeex = typeof WXEnvironment !== 'undefined' && !!WXEnvironment.platform; -var weexPlatform = inWeex && WXEnvironment.platform.toLowerCase(); -var UA = inBrowser && window.navigator.userAgent.toLowerCase(); -var isIE = UA && /msie|trident/.test(UA); -var isIE9 = UA && UA.indexOf('msie 9.0') > 0; -var isEdge = UA && UA.indexOf('edge/') > 0; -var isAndroid = (UA && UA.indexOf('android') > 0) || (weexPlatform === 'android'); -var isIOS = (UA && /iphone|ipad|ipod|ios/.test(UA)) || (weexPlatform === 'ios'); -var isChrome = UA && /chrome\/\d+/.test(UA) && !isEdge; - -// Firefox has a "watch" function on Object.prototype... -var nativeWatch = ({}).watch; - -var supportsPassive = false; -if (inBrowser) { - try { - var opts = {}; - Object.defineProperty(opts, 'passive', ({ - get: function get () { - /* istanbul ignore next */ - supportsPassive = true; - } - })); // https://github.com/facebook/flow/issues/285 - window.addEventListener('test-passive', null, opts); - } catch (e) {} -} - -// this needs to be lazy-evaled because vue may be required before -// vue-server-renderer can set VUE_ENV -var _isServer; -var isServerRendering = function () { - if (_isServer === undefined) { - /* istanbul ignore if */ - if (!inBrowser && typeof global !== 'undefined') { - // detect presence of vue-server-renderer and avoid - // Webpack shimming the process - _isServer = global['process'].env.VUE_ENV === 'server'; - } else { - _isServer = false; - } - } - return _isServer -}; - -// detect devtools -var devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__; - -/* istanbul ignore next */ -function isNative (Ctor) { - return typeof Ctor === 'function' && /native code/.test(Ctor.toString()) -} - -var hasSymbol = - typeof Symbol !== 'undefined' && isNative(Symbol) && - typeof Reflect !== 'undefined' && isNative(Reflect.ownKeys); - -var _Set; -/* istanbul ignore if */ // $flow-disable-line -if (typeof Set !== 'undefined' && isNative(Set)) { - // use native Set when available. - _Set = Set; -} else { - // a non-standard Set polyfill that only works with primitive keys. - _Set = (function () { - function Set () { - this.set = Object.create(null); - } - Set.prototype.has = function has (key) { - return this.set[key] === true - }; - Set.prototype.add = function add (key) { - this.set[key] = true; - }; - Set.prototype.clear = function clear () { - this.set = Object.create(null); - }; - - return Set; - }()); -} - -/* */ - -var warn = noop; -var tip = noop; -var generateComponentTrace = (noop); // work around flow check -var formatComponentName = (noop); - -if (process.env.NODE_ENV !== 'production') { - var hasConsole = typeof console !== 'undefined'; - var classifyRE = /(?:^|[-_])(\w)/g; - var classify = function (str) { return str - .replace(classifyRE, function (c) { return c.toUpperCase(); }) - .replace(/[-_]/g, ''); }; - - warn = function (msg, vm) { - var trace = vm ? generateComponentTrace(vm) : ''; - - if (config.warnHandler) { - config.warnHandler.call(null, msg, vm, trace); - } else if (hasConsole && (!config.silent)) { - console.error(("[Vue warn]: " + msg + trace)); - } - }; - - tip = function (msg, vm) { - if (hasConsole && (!config.silent)) { - console.warn("[Vue tip]: " + msg + ( - vm ? generateComponentTrace(vm) : '' - )); - } - }; - - formatComponentName = function (vm, includeFile) { - if (vm.$root === vm) { - return '' - } - var options = typeof vm === 'function' && vm.cid != null - ? vm.options - : vm._isVue - ? vm.$options || vm.constructor.options - : vm || {}; - var name = options.name || options._componentTag; - var file = options.__file; - if (!name && file) { - var match = file.match(/([^/\\]+)\.vue$/); - name = match && match[1]; - } - - return ( - (name ? ("<" + (classify(name)) + ">") : "") + - (file && includeFile !== false ? (" at " + file) : '') - ) - }; - - var repeat = function (str, n) { - var res = ''; - while (n) { - if (n % 2 === 1) { res += str; } - if (n > 1) { str += str; } - n >>= 1; - } - return res - }; - - generateComponentTrace = function (vm) { - if (vm._isVue && vm.$parent) { - var tree = []; - var currentRecursiveSequence = 0; - while (vm) { - if (tree.length > 0) { - var last = tree[tree.length - 1]; - if (last.constructor === vm.constructor) { - currentRecursiveSequence++; - vm = vm.$parent; - continue - } else if (currentRecursiveSequence > 0) { - tree[tree.length - 1] = [last, currentRecursiveSequence]; - currentRecursiveSequence = 0; - } - } - tree.push(vm); - vm = vm.$parent; - } - return '\n\nfound in\n\n' + tree - .map(function (vm, i) { return ("" + (i === 0 ? '---> ' : repeat(' ', 5 + i * 2)) + (Array.isArray(vm) - ? ((formatComponentName(vm[0])) + "... (" + (vm[1]) + " recursive calls)") - : formatComponentName(vm))); }) - .join('\n') - } else { - return ("\n\n(found in " + (formatComponentName(vm)) + ")") - } - }; -} - -/* */ - - -var uid = 0; - -/** - * A dep is an observable that can have multiple - * directives subscribing to it. - */ -var Dep = function Dep () { - this.id = uid++; - this.subs = []; -}; - -Dep.prototype.addSub = function addSub (sub) { - this.subs.push(sub); -}; - -Dep.prototype.removeSub = function removeSub (sub) { - remove(this.subs, sub); -}; - -Dep.prototype.depend = function depend () { - if (Dep.target) { - Dep.target.addDep(this); - } -}; - -Dep.prototype.notify = function notify () { - // stabilize the subscriber list first - var subs = this.subs.slice(); - for (var i = 0, l = subs.length; i < l; i++) { - subs[i].update(); - } -}; - -// the current target watcher being evaluated. -// this is globally unique because there could be only one -// watcher being evaluated at any time. -Dep.target = null; -var targetStack = []; - -function pushTarget (_target) { - if (Dep.target) { targetStack.push(Dep.target); } - Dep.target = _target; -} - -function popTarget () { - Dep.target = targetStack.pop(); -} - -/* */ - -var VNode = function VNode ( - tag, - data, - children, - text, - elm, - context, - componentOptions, - asyncFactory -) { - this.tag = tag; - this.data = data; - this.children = children; - this.text = text; - this.elm = elm; - this.ns = undefined; - this.context = context; - this.functionalContext = undefined; - this.functionalOptions = undefined; - this.functionalScopeId = undefined; - this.key = data && data.key; - this.componentOptions = componentOptions; - this.componentInstance = undefined; - this.parent = undefined; - this.raw = false; - this.isStatic = false; - this.isRootInsert = true; - this.isComment = false; - this.isCloned = false; - this.isOnce = false; - this.asyncFactory = asyncFactory; - this.asyncMeta = undefined; - this.isAsyncPlaceholder = false; -}; - -var prototypeAccessors = { child: { configurable: true } }; - -// DEPRECATED: alias for componentInstance for backwards compat. -/* istanbul ignore next */ -prototypeAccessors.child.get = function () { - return this.componentInstance -}; - -Object.defineProperties( VNode.prototype, prototypeAccessors ); - -var createEmptyVNode = function (text) { - if ( text === void 0 ) text = ''; - - var node = new VNode(); - node.text = text; - node.isComment = true; - return node -}; - -function createTextVNode (val) { - return new VNode(undefined, undefined, undefined, String(val)) -} - -// optimized shallow clone -// used for static nodes and slot nodes because they may be reused across -// multiple renders, cloning them avoids errors when DOM manipulations rely -// on their elm reference. -function cloneVNode (vnode, deep) { - var componentOptions = vnode.componentOptions; - var cloned = new VNode( - vnode.tag, - vnode.data, - vnode.children, - vnode.text, - vnode.elm, - vnode.context, - componentOptions, - vnode.asyncFactory - ); - cloned.ns = vnode.ns; - cloned.isStatic = vnode.isStatic; - cloned.key = vnode.key; - cloned.isComment = vnode.isComment; - cloned.isCloned = true; - if (deep) { - if (vnode.children) { - cloned.children = cloneVNodes(vnode.children, true); - } - if (componentOptions && componentOptions.children) { - componentOptions.children = cloneVNodes(componentOptions.children, true); - } - } - return cloned -} - -function cloneVNodes (vnodes, deep) { - var len = vnodes.length; - var res = new Array(len); - for (var i = 0; i < len; i++) { - res[i] = cloneVNode(vnodes[i], deep); - } - return res -} - -/* - * not type checking this file because flow doesn't play well with - * dynamically accessing methods on Array prototype - */ - -var arrayProto = Array.prototype; -var arrayMethods = Object.create(arrayProto);[ - 'push', - 'pop', - 'shift', - 'unshift', - 'splice', - 'sort', - 'reverse' -] -.forEach(function (method) { - // cache original method - var original = arrayProto[method]; - def(arrayMethods, method, function mutator () { - var args = [], len = arguments.length; - while ( len-- ) args[ len ] = arguments[ len ]; - - var result = original.apply(this, args); - var ob = this.__ob__; - var inserted; - switch (method) { - case 'push': - case 'unshift': - inserted = args; - break - case 'splice': - inserted = args.slice(2); - break - } - if (inserted) { ob.observeArray(inserted); } - // notify change - ob.dep.notify(); - return result - }); -}); - -/* */ - -var arrayKeys = Object.getOwnPropertyNames(arrayMethods); - -/** - * By default, when a reactive property is set, the new value is - * also converted to become reactive. However when passing down props, - * we don't want to force conversion because the value may be a nested value - * under a frozen data structure. Converting it would defeat the optimization. - */ -var observerState = { - shouldConvert: true -}; - -/** - * Observer class that are attached to each observed - * object. Once attached, the observer converts target - * object's property keys into getter/setters that - * collect dependencies and dispatches updates. - */ -var Observer = function Observer (value) { - this.value = value; - this.dep = new Dep(); - this.vmCount = 0; - def(value, '__ob__', this); - if (Array.isArray(value)) { - var augment = hasProto - ? protoAugment - : copyAugment; - augment(value, arrayMethods, arrayKeys); - this.observeArray(value); - } else { - this.walk(value); - } -}; - -/** - * Walk through each property and convert them into - * getter/setters. This method should only be called when - * value type is Object. - */ -Observer.prototype.walk = function walk (obj) { - var keys = Object.keys(obj); - for (var i = 0; i < keys.length; i++) { - defineReactive(obj, keys[i], obj[keys[i]]); - } -}; - -/** - * Observe a list of Array items. - */ -Observer.prototype.observeArray = function observeArray (items) { - for (var i = 0, l = items.length; i < l; i++) { - observe(items[i]); - } -}; - -// helpers - -/** - * Augment an target Object or Array by intercepting - * the prototype chain using __proto__ - */ -function protoAugment (target, src, keys) { - /* eslint-disable no-proto */ - target.__proto__ = src; - /* eslint-enable no-proto */ -} - -/** - * Augment an target Object or Array by defining - * hidden properties. - */ -/* istanbul ignore next */ -function copyAugment (target, src, keys) { - for (var i = 0, l = keys.length; i < l; i++) { - var key = keys[i]; - def(target, key, src[key]); - } -} - -/** - * Attempt to create an observer instance for a value, - * returns the new observer if successfully observed, - * or the existing observer if the value already has one. - */ -function observe (value, asRootData) { - if (!isObject(value) || value instanceof VNode) { - return - } - var ob; - if (hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) { - ob = value.__ob__; - } else if ( - observerState.shouldConvert && - !isServerRendering() && - (Array.isArray(value) || isPlainObject(value)) && - Object.isExtensible(value) && - !value._isVue - ) { - ob = new Observer(value); - } - if (asRootData && ob) { - ob.vmCount++; - } - return ob -} - -/** - * Define a reactive property on an Object. - */ -function defineReactive ( - obj, - key, - val, - customSetter, - shallow -) { - var dep = new Dep(); - - var property = Object.getOwnPropertyDescriptor(obj, key); - if (property && property.configurable === false) { - return - } - - // cater for pre-defined getter/setters - var getter = property && property.get; - var setter = property && property.set; - - var childOb = !shallow && observe(val); - Object.defineProperty(obj, key, { - enumerable: true, - configurable: true, - get: function reactiveGetter () { - var value = getter ? getter.call(obj) : val; - if (Dep.target) { - dep.depend(); - if (childOb) { - childOb.dep.depend(); - if (Array.isArray(value)) { - dependArray(value); - } - } - } - return value - }, - set: function reactiveSetter (newVal) { - var value = getter ? getter.call(obj) : val; - /* eslint-disable no-self-compare */ - if (newVal === value || (newVal !== newVal && value !== value)) { - return - } - /* eslint-enable no-self-compare */ - if (process.env.NODE_ENV !== 'production' && customSetter) { - customSetter(); - } - if (setter) { - setter.call(obj, newVal); - } else { - val = newVal; - } - childOb = !shallow && observe(newVal); - dep.notify(); - } - }); -} - -/** - * Set a property on an object. Adds the new property and - * triggers change notification if the property doesn't - * already exist. - */ -function set (target, key, val) { - if (Array.isArray(target) && isValidArrayIndex(key)) { - target.length = Math.max(target.length, key); - target.splice(key, 1, val); - return val - } - if (key in target && !(key in Object.prototype)) { - target[key] = val; - return val - } - var ob = (target).__ob__; - if (target._isVue || (ob && ob.vmCount)) { - process.env.NODE_ENV !== 'production' && warn( - 'Avoid adding reactive properties to a Vue instance or its root $data ' + - 'at runtime - declare it upfront in the data option.' - ); - return val - } - if (!ob) { - target[key] = val; - return val - } - defineReactive(ob.value, key, val); - ob.dep.notify(); - return val -} - -/** - * Delete a property and trigger change if necessary. - */ -function del (target, key) { - if (Array.isArray(target) && isValidArrayIndex(key)) { - target.splice(key, 1); - return - } - var ob = (target).__ob__; - if (target._isVue || (ob && ob.vmCount)) { - process.env.NODE_ENV !== 'production' && warn( - 'Avoid deleting properties on a Vue instance or its root $data ' + - '- just set it to null.' - ); - return - } - if (!hasOwn(target, key)) { - return - } - delete target[key]; - if (!ob) { - return - } - ob.dep.notify(); -} - -/** - * Collect dependencies on array elements when the array is touched, since - * we cannot intercept array element access like property getters. - */ -function dependArray (value) { - for (var e = (void 0), i = 0, l = value.length; i < l; i++) { - e = value[i]; - e && e.__ob__ && e.__ob__.dep.depend(); - if (Array.isArray(e)) { - dependArray(e); - } - } -} - -/* */ - -/** - * Option overwriting strategies are functions that handle - * how to merge a parent option value and a child option - * value into the final value. - */ -var strats = config.optionMergeStrategies; - -/** - * Options with restrictions - */ -if (process.env.NODE_ENV !== 'production') { - strats.el = strats.propsData = function (parent, child, vm, key) { - if (!vm) { - warn( - "option \"" + key + "\" can only be used during instance " + - 'creation with the `new` keyword.' - ); - } - return defaultStrat(parent, child) - }; -} - -/** - * Helper that recursively merges two data objects together. - */ -function mergeData (to, from) { - if (!from) { return to } - var key, toVal, fromVal; - var keys = Object.keys(from); - for (var i = 0; i < keys.length; i++) { - key = keys[i]; - toVal = to[key]; - fromVal = from[key]; - if (!hasOwn(to, key)) { - set(to, key, fromVal); - } else if (isPlainObject(toVal) && isPlainObject(fromVal)) { - mergeData(toVal, fromVal); - } - } - return to -} - -/** - * Data - */ -function mergeDataOrFn ( - parentVal, - childVal, - vm -) { - if (!vm) { - // in a Vue.extend merge, both should be functions - if (!childVal) { - return parentVal - } - if (!parentVal) { - return childVal - } - // when parentVal & childVal are both present, - // we need to return a function that returns the - // merged result of both functions... no need to - // check if parentVal is a function here because - // it has to be a function to pass previous merges. - return function mergedDataFn () { - return mergeData( - typeof childVal === 'function' ? childVal.call(this) : childVal, - typeof parentVal === 'function' ? parentVal.call(this) : parentVal - ) - } - } else { - return function mergedInstanceDataFn () { - // instance merge - var instanceData = typeof childVal === 'function' - ? childVal.call(vm) - : childVal; - var defaultData = typeof parentVal === 'function' - ? parentVal.call(vm) - : parentVal; - if (instanceData) { - return mergeData(instanceData, defaultData) - } else { - return defaultData - } - } - } -} - -strats.data = function ( - parentVal, - childVal, - vm -) { - if (!vm) { - if (childVal && typeof childVal !== 'function') { - process.env.NODE_ENV !== 'production' && warn( - 'The "data" option should be a function ' + - 'that returns a per-instance value in component ' + - 'definitions.', - vm - ); - - return parentVal - } - return mergeDataOrFn(parentVal, childVal) - } - - return mergeDataOrFn(parentVal, childVal, vm) -}; - -/** - * Hooks and props are merged as arrays. - */ -function mergeHook ( - parentVal, - childVal -) { - return childVal - ? parentVal - ? parentVal.concat(childVal) - : Array.isArray(childVal) - ? childVal - : [childVal] - : parentVal -} - -LIFECYCLE_HOOKS.forEach(function (hook) { - strats[hook] = mergeHook; -}); - -/** - * Assets - * - * When a vm is present (instance creation), we need to do - * a three-way merge between constructor options, instance - * options and parent options. - */ -function mergeAssets ( - parentVal, - childVal, - vm, - key -) { - var res = Object.create(parentVal || null); - if (childVal) { - process.env.NODE_ENV !== 'production' && assertObjectType(key, childVal, vm); - return extend(res, childVal) - } else { - return res - } -} - -ASSET_TYPES.forEach(function (type) { - strats[type + 's'] = mergeAssets; -}); - -/** - * Watchers. - * - * Watchers hashes should not overwrite one - * another, so we merge them as arrays. - */ -strats.watch = function ( - parentVal, - childVal, - vm, - key -) { - // work around Firefox's Object.prototype.watch... - if (parentVal === nativeWatch) { parentVal = undefined; } - if (childVal === nativeWatch) { childVal = undefined; } - /* istanbul ignore if */ - if (!childVal) { return Object.create(parentVal || null) } - if (process.env.NODE_ENV !== 'production') { - assertObjectType(key, childVal, vm); - } - if (!parentVal) { return childVal } - var ret = {}; - extend(ret, parentVal); - for (var key$1 in childVal) { - var parent = ret[key$1]; - var child = childVal[key$1]; - if (parent && !Array.isArray(parent)) { - parent = [parent]; - } - ret[key$1] = parent - ? parent.concat(child) - : Array.isArray(child) ? child : [child]; - } - return ret -}; - -/** - * Other object hashes. - */ -strats.props = -strats.methods = -strats.inject = -strats.computed = function ( - parentVal, - childVal, - vm, - key -) { - if (childVal && process.env.NODE_ENV !== 'production') { - assertObjectType(key, childVal, vm); - } - if (!parentVal) { return childVal } - var ret = Object.create(null); - extend(ret, parentVal); - if (childVal) { extend(ret, childVal); } - return ret -}; -strats.provide = mergeDataOrFn; - -/** - * Default strategy. - */ -var defaultStrat = function (parentVal, childVal) { - return childVal === undefined - ? parentVal - : childVal -}; - -/** - * Validate component names - */ -function checkComponents (options) { - for (var key in options.components) { - var lower = key.toLowerCase(); - if (isBuiltInTag(lower) || config.isReservedTag(lower)) { - warn( - 'Do not use built-in or reserved HTML elements as component ' + - 'id: ' + key - ); - } - } -} - -/** - * Ensure all props option syntax are normalized into the - * Object-based format. - */ -function normalizeProps (options, vm) { - var props = options.props; - if (!props) { return } - var res = {}; - var i, val, name; - if (Array.isArray(props)) { - i = props.length; - while (i--) { - val = props[i]; - if (typeof val === 'string') { - name = camelize(val); - res[name] = { type: null }; - } else if (process.env.NODE_ENV !== 'production') { - warn('props must be strings when using array syntax.'); - } - } - } else if (isPlainObject(props)) { - for (var key in props) { - val = props[key]; - name = camelize(key); - res[name] = isPlainObject(val) - ? val - : { type: val }; - } - } else if (process.env.NODE_ENV !== 'production') { - warn( - "Invalid value for option \"props\": expected an Array or an Object, " + - "but got " + (toRawType(props)) + ".", - vm - ); - } - options.props = res; -} - -/** - * Normalize all injections into Object-based format - */ -function normalizeInject (options, vm) { - var inject = options.inject; - var normalized = options.inject = {}; - if (Array.isArray(inject)) { - for (var i = 0; i < inject.length; i++) { - normalized[inject[i]] = { from: inject[i] }; - } - } else if (isPlainObject(inject)) { - for (var key in inject) { - var val = inject[key]; - normalized[key] = isPlainObject(val) - ? extend({ from: key }, val) - : { from: val }; - } - } else if (process.env.NODE_ENV !== 'production' && inject) { - warn( - "Invalid value for option \"inject\": expected an Array or an Object, " + - "but got " + (toRawType(inject)) + ".", - vm - ); - } -} - -/** - * Normalize raw function directives into object format. - */ -function normalizeDirectives (options) { - var dirs = options.directives; - if (dirs) { - for (var key in dirs) { - var def = dirs[key]; - if (typeof def === 'function') { - dirs[key] = { bind: def, update: def }; - } - } - } -} - -function assertObjectType (name, value, vm) { - if (!isPlainObject(value)) { - warn( - "Invalid value for option \"" + name + "\": expected an Object, " + - "but got " + (toRawType(value)) + ".", - vm - ); - } -} - -/** - * Merge two option objects into a new one. - * Core utility used in both instantiation and inheritance. - */ -function mergeOptions ( - parent, - child, - vm -) { - if (process.env.NODE_ENV !== 'production') { - checkComponents(child); - } - - if (typeof child === 'function') { - child = child.options; - } - - normalizeProps(child, vm); - normalizeInject(child, vm); - normalizeDirectives(child); - var extendsFrom = child.extends; - if (extendsFrom) { - parent = mergeOptions(parent, extendsFrom, vm); - } - if (child.mixins) { - for (var i = 0, l = child.mixins.length; i < l; i++) { - parent = mergeOptions(parent, child.mixins[i], vm); - } - } - var options = {}; - var key; - for (key in parent) { - mergeField(key); - } - for (key in child) { - if (!hasOwn(parent, key)) { - mergeField(key); - } - } - function mergeField (key) { - var strat = strats[key] || defaultStrat; - options[key] = strat(parent[key], child[key], vm, key); - } - return options -} - -/** - * Resolve an asset. - * This function is used because child instances need access - * to assets defined in its ancestor chain. - */ -function resolveAsset ( - options, - type, - id, - warnMissing -) { - /* istanbul ignore if */ - if (typeof id !== 'string') { - return - } - var assets = options[type]; - // check local registration variations first - if (hasOwn(assets, id)) { return assets[id] } - var camelizedId = camelize(id); - if (hasOwn(assets, camelizedId)) { return assets[camelizedId] } - var PascalCaseId = capitalize(camelizedId); - if (hasOwn(assets, PascalCaseId)) { return assets[PascalCaseId] } - // fallback to prototype chain - var res = assets[id] || assets[camelizedId] || assets[PascalCaseId]; - if (process.env.NODE_ENV !== 'production' && warnMissing && !res) { - warn( - 'Failed to resolve ' + type.slice(0, -1) + ': ' + id, - options - ); - } - return res -} - -/* */ - -function validateProp ( - key, - propOptions, - propsData, - vm -) { - var prop = propOptions[key]; - var absent = !hasOwn(propsData, key); - var value = propsData[key]; - // handle boolean props - if (isType(Boolean, prop.type)) { - if (absent && !hasOwn(prop, 'default')) { - value = false; - } else if (!isType(String, prop.type) && (value === '' || value === hyphenate(key))) { - value = true; - } - } - // check default value - if (value === undefined) { - value = getPropDefaultValue(vm, prop, key); - // since the default value is a fresh copy, - // make sure to observe it. - var prevShouldConvert = observerState.shouldConvert; - observerState.shouldConvert = true; - observe(value); - observerState.shouldConvert = prevShouldConvert; - } - if (process.env.NODE_ENV !== 'production') { - assertProp(prop, key, value, vm, absent); - } - return value -} - -/** - * Get the default value of a prop. - */ -function getPropDefaultValue (vm, prop, key) { - // no default, return undefined - if (!hasOwn(prop, 'default')) { - return undefined - } - var def = prop.default; - // warn against non-factory defaults for Object & Array - if (process.env.NODE_ENV !== 'production' && isObject(def)) { - warn( - 'Invalid default value for prop "' + key + '": ' + - 'Props with type Object/Array must use a factory function ' + - 'to return the default value.', - vm - ); - } - // the raw prop value was also undefined from previous render, - // return previous default value to avoid unnecessary watcher trigger - if (vm && vm.$options.propsData && - vm.$options.propsData[key] === undefined && - vm._props[key] !== undefined - ) { - return vm._props[key] - } - // call factory function for non-Function types - // a value is Function if its prototype is function even across different execution context - return typeof def === 'function' && getType(prop.type) !== 'Function' - ? def.call(vm) - : def -} - -/** - * Assert whether a prop is valid. - */ -function assertProp ( - prop, - name, - value, - vm, - absent -) { - if (prop.required && absent) { - warn( - 'Missing required prop: "' + name + '"', - vm - ); - return - } - if (value == null && !prop.required) { - return - } - var type = prop.type; - var valid = !type || type === true; - var expectedTypes = []; - if (type) { - if (!Array.isArray(type)) { - type = [type]; - } - for (var i = 0; i < type.length && !valid; i++) { - var assertedType = assertType(value, type[i]); - expectedTypes.push(assertedType.expectedType || ''); - valid = assertedType.valid; - } - } - if (!valid) { - warn( - "Invalid prop: type check failed for prop \"" + name + "\"." + - " Expected " + (expectedTypes.map(capitalize).join(', ')) + - ", got " + (toRawType(value)) + ".", - vm - ); - return - } - var validator = prop.validator; - if (validator) { - if (!validator(value)) { - warn( - 'Invalid prop: custom validator check failed for prop "' + name + '".', - vm - ); - } - } -} - -var simpleCheckRE = /^(String|Number|Boolean|Function|Symbol)$/; - -function assertType (value, type) { - var valid; - var expectedType = getType(type); - if (simpleCheckRE.test(expectedType)) { - var t = typeof value; - valid = t === expectedType.toLowerCase(); - // for primitive wrapper objects - if (!valid && t === 'object') { - valid = value instanceof type; - } - } else if (expectedType === 'Object') { - valid = isPlainObject(value); - } else if (expectedType === 'Array') { - valid = Array.isArray(value); - } else { - valid = value instanceof type; - } - return { - valid: valid, - expectedType: expectedType - } -} - -/** - * Use function string name to check built-in types, - * because a simple equality check will fail when running - * across different vms / iframes. - */ -function getType (fn) { - var match = fn && fn.toString().match(/^\s*function (\w+)/); - return match ? match[1] : '' -} - -function isType (type, fn) { - if (!Array.isArray(fn)) { - return getType(fn) === getType(type) - } - for (var i = 0, len = fn.length; i < len; i++) { - if (getType(fn[i]) === getType(type)) { - return true - } - } - /* istanbul ignore next */ - return false -} - -/* */ - -function handleError (err, vm, info) { - if (vm) { - var cur = vm; - while ((cur = cur.$parent)) { - var hooks = cur.$options.errorCaptured; - if (hooks) { - for (var i = 0; i < hooks.length; i++) { - try { - var capture = hooks[i].call(cur, err, vm, info) === false; - if (capture) { return } - } catch (e) { - globalHandleError(e, cur, 'errorCaptured hook'); - } - } - } - } - } - globalHandleError(err, vm, info); -} - -function globalHandleError (err, vm, info) { - if (config.errorHandler) { - try { - return config.errorHandler.call(null, err, vm, info) - } catch (e) { - logError(e, null, 'config.errorHandler'); - } - } - logError(err, vm, info); -} - -function logError (err, vm, info) { - if (process.env.NODE_ENV !== 'production') { - warn(("Error in " + info + ": \"" + (err.toString()) + "\""), vm); - } - /* istanbul ignore else */ - if ((inBrowser || inWeex) && typeof console !== 'undefined') { - console.error(err); - } else { - throw err - } -} - -/* */ -/* globals MessageChannel */ - -var callbacks = []; -var pending = false; - -function flushCallbacks () { - pending = false; - var copies = callbacks.slice(0); - callbacks.length = 0; - for (var i = 0; i < copies.length; i++) { - copies[i](); - } -} - -// Here we have async deferring wrappers using both micro and macro tasks. -// In < 2.4 we used micro tasks everywhere, but there are some scenarios where -// micro tasks have too high a priority and fires in between supposedly -// sequential events (e.g. #4521, #6690) or even between bubbling of the same -// event (#6566). However, using macro tasks everywhere also has subtle problems -// when state is changed right before repaint (e.g. #6813, out-in transitions). -// Here we use micro task by default, but expose a way to force macro task when -// needed (e.g. in event handlers attached by v-on). -var microTimerFunc; -var macroTimerFunc; -var useMacroTask = false; - -// Determine (macro) Task defer implementation. -// Technically setImmediate should be the ideal choice, but it's only available -// in IE. The only polyfill that consistently queues the callback after all DOM -// events triggered in the same loop is by using MessageChannel. -/* istanbul ignore if */ -if (typeof setImmediate !== 'undefined' && isNative(setImmediate)) { - macroTimerFunc = function () { - setImmediate(flushCallbacks); - }; -} else if (typeof MessageChannel !== 'undefined' && ( - isNative(MessageChannel) || - // PhantomJS - MessageChannel.toString() === '[object MessageChannelConstructor]' -)) { - var channel = new MessageChannel(); - var port = channel.port2; - channel.port1.onmessage = flushCallbacks; - macroTimerFunc = function () { - port.postMessage(1); - }; -} else { - /* istanbul ignore next */ - macroTimerFunc = function () { - setTimeout(flushCallbacks, 0); - }; -} - -// Determine MicroTask defer implementation. -/* istanbul ignore next, $flow-disable-line */ -if (typeof Promise !== 'undefined' && isNative(Promise)) { - var p = Promise.resolve(); - microTimerFunc = function () { - p.then(flushCallbacks); - // in problematic UIWebViews, Promise.then doesn't completely break, but - // it can get stuck in a weird state where callbacks are pushed into the - // microtask queue but the queue isn't being flushed, until the browser - // needs to do some other work, e.g. handle a timer. Therefore we can - // "force" the microtask queue to be flushed by adding an empty timer. - if (isIOS) { setTimeout(noop); } - }; -} else { - // fallback to macro - microTimerFunc = macroTimerFunc; -} - -/** - * Wrap a function so that if any code inside triggers state change, - * the changes are queued using a Task instead of a MicroTask. - */ -function withMacroTask (fn) { - return fn._withTask || (fn._withTask = function () { - useMacroTask = true; - var res = fn.apply(null, arguments); - useMacroTask = false; - return res - }) -} - -function nextTick (cb, ctx) { - var _resolve; - callbacks.push(function () { - if (cb) { - try { - cb.call(ctx); - } catch (e) { - handleError(e, ctx, 'nextTick'); - } - } else if (_resolve) { - _resolve(ctx); - } - }); - if (!pending) { - pending = true; - if (useMacroTask) { - macroTimerFunc(); - } else { - microTimerFunc(); - } - } - // $flow-disable-line - if (!cb && typeof Promise !== 'undefined') { - return new Promise(function (resolve) { - _resolve = resolve; - }) - } -} - -/* */ - -var mark; -var measure; - -if (process.env.NODE_ENV !== 'production') { - var perf = inBrowser && window.performance; - /* istanbul ignore if */ - if ( - perf && - perf.mark && - perf.measure && - perf.clearMarks && - perf.clearMeasures - ) { - mark = function (tag) { return perf.mark(tag); }; - measure = function (name, startTag, endTag) { - perf.measure(name, startTag, endTag); - perf.clearMarks(startTag); - perf.clearMarks(endTag); - perf.clearMeasures(name); - }; - } -} - -/* not type checking this file because flow doesn't play well with Proxy */ - -var initProxy; - -if (process.env.NODE_ENV !== 'production') { - var allowedGlobals = makeMap( - 'Infinity,undefined,NaN,isFinite,isNaN,' + - 'parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,' + - 'Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,' + - 'require' // for Webpack/Browserify - ); - - var warnNonPresent = function (target, key) { - warn( - "Property or method \"" + key + "\" is not defined on the instance but " + - 'referenced during render. Make sure that this property is reactive, ' + - 'either in the data option, or for class-based components, by ' + - 'initializing the property. ' + - 'See: https://vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties.', - target - ); - }; - - var hasProxy = - typeof Proxy !== 'undefined' && - Proxy.toString().match(/native code/); - - if (hasProxy) { - var isBuiltInModifier = makeMap('stop,prevent,self,ctrl,shift,alt,meta,exact'); - config.keyCodes = new Proxy(config.keyCodes, { - set: function set (target, key, value) { - if (isBuiltInModifier(key)) { - warn(("Avoid overwriting built-in modifier in config.keyCodes: ." + key)); - return false - } else { - target[key] = value; - return true - } - } - }); - } - - var hasHandler = { - has: function has (target, key) { - var has = key in target; - var isAllowed = allowedGlobals(key) || key.charAt(0) === '_'; - if (!has && !isAllowed) { - warnNonPresent(target, key); - } - return has || !isAllowed - } - }; - - var getHandler = { - get: function get (target, key) { - if (typeof key === 'string' && !(key in target)) { - warnNonPresent(target, key); - } - return target[key] - } - }; - - initProxy = function initProxy (vm) { - if (hasProxy) { - // determine which proxy handler to use - var options = vm.$options; - var handlers = options.render && options.render._withStripped - ? getHandler - : hasHandler; - vm._renderProxy = new Proxy(vm, handlers); - } else { - vm._renderProxy = vm; - } - }; -} - -/* */ - -var seenObjects = new _Set(); - -/** - * Recursively traverse an object to evoke all converted - * getters, so that every nested property inside the object - * is collected as a "deep" dependency. - */ -function traverse (val) { - _traverse(val, seenObjects); - seenObjects.clear(); -} - -function _traverse (val, seen) { - var i, keys; - var isA = Array.isArray(val); - if ((!isA && !isObject(val)) || Object.isFrozen(val)) { - return - } - if (val.__ob__) { - var depId = val.__ob__.dep.id; - if (seen.has(depId)) { - return - } - seen.add(depId); - } - if (isA) { - i = val.length; - while (i--) { _traverse(val[i], seen); } - } else { - keys = Object.keys(val); - i = keys.length; - while (i--) { _traverse(val[keys[i]], seen); } - } -} - -/* */ - -var normalizeEvent = cached(function (name) { - var passive = name.charAt(0) === '&'; - name = passive ? name.slice(1) : name; - var once$$1 = name.charAt(0) === '~'; // Prefixed last, checked first - name = once$$1 ? name.slice(1) : name; - var capture = name.charAt(0) === '!'; - name = capture ? name.slice(1) : name; - return { - name: name, - once: once$$1, - capture: capture, - passive: passive - } -}); - -function createFnInvoker (fns) { - function invoker () { - var arguments$1 = arguments; - - var fns = invoker.fns; - if (Array.isArray(fns)) { - var cloned = fns.slice(); - for (var i = 0; i < cloned.length; i++) { - cloned[i].apply(null, arguments$1); - } - } else { - // return handler return value for single handlers - return fns.apply(null, arguments) - } - } - invoker.fns = fns; - return invoker -} - -function updateListeners ( - on, - oldOn, - add, - remove$$1, - vm -) { - var name, cur, old, event; - for (name in on) { - cur = on[name]; - old = oldOn[name]; - event = normalizeEvent(name); - if (isUndef(cur)) { - process.env.NODE_ENV !== 'production' && warn( - "Invalid handler for event \"" + (event.name) + "\": got " + String(cur), - vm - ); - } else if (isUndef(old)) { - if (isUndef(cur.fns)) { - cur = on[name] = createFnInvoker(cur); - } - add(event.name, cur, event.once, event.capture, event.passive); - } else if (cur !== old) { - old.fns = cur; - on[name] = old; - } - } - for (name in oldOn) { - if (isUndef(on[name])) { - event = normalizeEvent(name); - remove$$1(event.name, oldOn[name], event.capture); - } - } -} - -/* */ - -function mergeVNodeHook (def, hookKey, hook) { - if (def instanceof VNode) { - def = def.data.hook || (def.data.hook = {}); - } - var invoker; - var oldHook = def[hookKey]; - - function wrappedHook () { - hook.apply(this, arguments); - // important: remove merged hook to ensure it's called only once - // and prevent memory leak - remove(invoker.fns, wrappedHook); - } - - if (isUndef(oldHook)) { - // no existing hook - invoker = createFnInvoker([wrappedHook]); - } else { - /* istanbul ignore if */ - if (isDef(oldHook.fns) && isTrue(oldHook.merged)) { - // already a merged invoker - invoker = oldHook; - invoker.fns.push(wrappedHook); - } else { - // existing plain hook - invoker = createFnInvoker([oldHook, wrappedHook]); - } - } - - invoker.merged = true; - def[hookKey] = invoker; -} - -/* */ - -function extractPropsFromVNodeData ( - data, - Ctor, - tag -) { - // we are only extracting raw values here. - // validation and default values are handled in the child - // component itself. - var propOptions = Ctor.options.props; - if (isUndef(propOptions)) { - return - } - var res = {}; - var attrs = data.attrs; - var props = data.props; - if (isDef(attrs) || isDef(props)) { - for (var key in propOptions) { - var altKey = hyphenate(key); - if (process.env.NODE_ENV !== 'production') { - var keyInLowerCase = key.toLowerCase(); - if ( - key !== keyInLowerCase && - attrs && hasOwn(attrs, keyInLowerCase) - ) { - tip( - "Prop \"" + keyInLowerCase + "\" is passed to component " + - (formatComponentName(tag || Ctor)) + ", but the declared prop name is" + - " \"" + key + "\". " + - "Note that HTML attributes are case-insensitive and camelCased " + - "props need to use their kebab-case equivalents when using in-DOM " + - "templates. You should probably use \"" + altKey + "\" instead of \"" + key + "\"." - ); - } - } - checkProp(res, props, key, altKey, true) || - checkProp(res, attrs, key, altKey, false); - } - } - return res -} - -function checkProp ( - res, - hash, - key, - altKey, - preserve -) { - if (isDef(hash)) { - if (hasOwn(hash, key)) { - res[key] = hash[key]; - if (!preserve) { - delete hash[key]; - } - return true - } else if (hasOwn(hash, altKey)) { - res[key] = hash[altKey]; - if (!preserve) { - delete hash[altKey]; - } - return true - } - } - return false -} - -/* */ - -// The template compiler attempts to minimize the need for normalization by -// statically analyzing the template at compile time. -// -// For plain HTML markup, normalization can be completely skipped because the -// generated render function is guaranteed to return Array. There are -// two cases where extra normalization is needed: - -// 1. When the children contains components - because a functional component -// may return an Array instead of a single root. In this case, just a simple -// normalization is needed - if any child is an Array, we flatten the whole -// thing with Array.prototype.concat. It is guaranteed to be only 1-level deep -// because functional components already normalize their own children. -function simpleNormalizeChildren (children) { - for (var i = 0; i < children.length; i++) { - if (Array.isArray(children[i])) { - return Array.prototype.concat.apply([], children) - } - } - return children -} - -// 2. When the children contains constructs that always generated nested Arrays, -// e.g.