UNPKG

@insaic/neon

Version:

A Mobile UI Components built on Vue

1,721 lines (1,461 loc) 49.1 kB
module.exports = /******/ (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 = 165); /******/ }) /************************************************************************/ /******/ ([ /* 0 */ /***/ (function(module, exports) { /* globals __VUE_SSR_CONTEXT__ */ // IMPORTANT: Do NOT use ES2015 features in this file. // This module is a runtime utility for cleaner component module output and will // be included in the final webpack user bundle. module.exports = function normalizeComponent ( rawScriptExports, compiledTemplate, functionalTemplate, injectStyles, scopeId, moduleIdentifier /* server only */ ) { var esModule var scriptExports = rawScriptExports = rawScriptExports || {} // ES6 modules interop var type = typeof rawScriptExports.default if (type === 'object' || type === 'function') { esModule = rawScriptExports scriptExports = rawScriptExports.default } // Vue.extend constructor export interop var options = typeof scriptExports === 'function' ? scriptExports.options : scriptExports // render functions if (compiledTemplate) { options.render = compiledTemplate.render options.staticRenderFns = compiledTemplate.staticRenderFns options._compiled = true } // functional template if (functionalTemplate) { options.functional = true } // scopedId if (scopeId) { options._scopeId = scopeId } var hook if (moduleIdentifier) { // server build hook = function (context) { // 2.3 injection context = context || // cached call (this.$vnode && this.$vnode.ssrContext) || // stateful (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional // 2.2 with runInNewContext: true if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') { context = __VUE_SSR_CONTEXT__ } // inject component styles if (injectStyles) { injectStyles.call(this, context) } // register component module identifier for async chunk inferrence if (context && context._registeredComponents) { context._registeredComponents.add(moduleIdentifier) } } // used by ssr in case component is cached and beforeCreate // never gets called options._ssrRegister = hook } else if (injectStyles) { hook = injectStyles } if (hook) { var functional = options.functional var existing = functional ? options.render : options.beforeCreate if (!functional) { // inject component registration as beforeCreate hook options.beforeCreate = existing ? [].concat(existing, hook) : [hook] } else { // for template-only hot-reload because in that case the render fn doesn't // go through the normalizer options._injectStyles = hook // register for functioal component in vue file options.render = function renderWithStyleInjection (h, context) { hook.call(context) return existing(h, context) } } } return { esModule: esModule, exports: scriptExports, options: options } } /***/ }), /* 1 */ /***/ (function(module, exports) { var core = module.exports = { version: '2.5.7' }; if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef /***/ }), /* 2 */ /***/ (function(module, exports) { // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 var global = module.exports = typeof window != 'undefined' && window.Math == Math ? window : typeof self != 'undefined' && self.Math == Math ? self // eslint-disable-next-line no-new-func : Function('return this')(); if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef /***/ }), /* 3 */ /***/ (function(module, exports, __webpack_require__) { // Thank's IE8 for his funny defineProperty module.exports = !__webpack_require__(5)(function () { return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7; }); /***/ }), /* 4 */ /***/ (function(module, exports) { module.exports = function (it) { return typeof it === 'object' ? it !== null : typeof it === 'function'; }; /***/ }), /* 5 */ /***/ (function(module, exports) { module.exports = function (exec) { try { return !!exec(); } catch (e) { return true; } }; /***/ }), /* 6 */ /***/ (function(module, exports) { var hasOwnProperty = {}.hasOwnProperty; module.exports = function (it, key) { return hasOwnProperty.call(it, key); }; /***/ }), /* 7 */ /***/ (function(module, exports, __webpack_require__) { var dP = __webpack_require__(8); var createDesc = __webpack_require__(16); module.exports = __webpack_require__(3) ? function (object, key, value) { return dP.f(object, key, createDesc(1, value)); } : function (object, key, value) { object[key] = value; return object; }; /***/ }), /* 8 */ /***/ (function(module, exports, __webpack_require__) { var anObject = __webpack_require__(9); var IE8_DOM_DEFINE = __webpack_require__(26); var toPrimitive = __webpack_require__(27); var dP = Object.defineProperty; exports.f = __webpack_require__(3) ? Object.defineProperty : function defineProperty(O, P, Attributes) { anObject(O); P = toPrimitive(P, true); anObject(Attributes); if (IE8_DOM_DEFINE) try { return dP(O, P, Attributes); } catch (e) { /* empty */ } if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!'); if ('value' in Attributes) O[P] = Attributes.value; return O; }; /***/ }), /* 9 */ /***/ (function(module, exports, __webpack_require__) { var isObject = __webpack_require__(4); module.exports = function (it) { if (!isObject(it)) throw TypeError(it + ' is not an object!'); return it; }; /***/ }), /* 10 */, /* 11 */ /***/ (function(module, exports) { // 7.2.1 RequireObjectCoercible(argument) module.exports = function (it) { if (it == undefined) throw TypeError("Can't call method on " + it); return it; }; /***/ }), /* 12 */ /***/ (function(module, exports, __webpack_require__) { // to indexed object, toObject with fallback for non-array-like ES3 strings var IObject = __webpack_require__(21); var defined = __webpack_require__(11); module.exports = function (it) { return IObject(defined(it)); }; /***/ }), /* 13 */ /***/ (function(module, exports) { // 7.1.4 ToInteger var ceil = Math.ceil; var floor = Math.floor; module.exports = function (it) { return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it); }; /***/ }), /* 14 */ /***/ (function(module, exports, __webpack_require__) { var global = __webpack_require__(2); var core = __webpack_require__(1); var ctx = __webpack_require__(18); var hide = __webpack_require__(7); var has = __webpack_require__(6); var PROTOTYPE = 'prototype'; var $export = function (type, name, source) { var IS_FORCED = type & $export.F; var IS_GLOBAL = type & $export.G; var IS_STATIC = type & $export.S; var IS_PROTO = type & $export.P; var IS_BIND = type & $export.B; var IS_WRAP = type & $export.W; var exports = IS_GLOBAL ? core : core[name] || (core[name] = {}); var expProto = exports[PROTOTYPE]; var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE]; var key, own, out; if (IS_GLOBAL) source = name; for (key in source) { // contains in native own = !IS_FORCED && target && target[key] !== undefined; if (own && has(exports, key)) continue; // export native or passed out = own ? target[key] : source[key]; // prevent global pollution for namespaces exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key] // bind timers to global for call from export context : IS_BIND && own ? ctx(out, global) // wrap global constructors for prevent change them in library : IS_WRAP && target[key] == out ? (function (C) { var F = function (a, b, c) { if (this instanceof C) { switch (arguments.length) { case 0: return new C(); case 1: return new C(a); case 2: return new C(a, b); } return new C(a, b, c); } return C.apply(this, arguments); }; F[PROTOTYPE] = C[PROTOTYPE]; return F; // make static versions for prototype methods })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out; // export proto methods to core.%CONSTRUCTOR%.methods.%NAME% if (IS_PROTO) { (exports.virtual || (exports.virtual = {}))[key] = out; // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME% if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out); } } }; // type bitmap $export.F = 1; // forced $export.G = 2; // global $export.S = 4; // static $export.P = 8; // proto $export.B = 16; // bind $export.W = 32; // wrap $export.U = 64; // safe $export.R = 128; // real proto method for `library` module.exports = $export; /***/ }), /* 15 */ /***/ (function(module, exports, __webpack_require__) { var isObject = __webpack_require__(4); var document = __webpack_require__(2).document; // typeof document.createElement is 'object' in old IE var is = isObject(document) && isObject(document.createElement); module.exports = function (it) { return is ? document.createElement(it) : {}; }; /***/ }), /* 16 */ /***/ (function(module, exports) { module.exports = function (bitmap, value) { return { enumerable: !(bitmap & 1), configurable: !(bitmap & 2), writable: !(bitmap & 4), value: value }; }; /***/ }), /* 17 */ /***/ (function(module, exports, __webpack_require__) { var shared = __webpack_require__(23)('keys'); var uid = __webpack_require__(24); module.exports = function (key) { return shared[key] || (shared[key] = uid(key)); }; /***/ }), /* 18 */ /***/ (function(module, exports, __webpack_require__) { // optional / simple context binding var aFunction = __webpack_require__(19); module.exports = function (fn, that, length) { aFunction(fn); if (that === undefined) return fn; switch (length) { case 1: return function (a) { return fn.call(that, a); }; case 2: return function (a, b) { return fn.call(that, a, b); }; case 3: return function (a, b, c) { return fn.call(that, a, b, c); }; } return function (/* ...args */) { return fn.apply(that, arguments); }; }; /***/ }), /* 19 */ /***/ (function(module, exports) { module.exports = function (it) { if (typeof it != 'function') throw TypeError(it + ' is not a function!'); return it; }; /***/ }), /* 20 */ /***/ (function(module, exports) { var toString = {}.toString; module.exports = function (it) { return toString.call(it).slice(8, -1); }; /***/ }), /* 21 */ /***/ (function(module, exports, __webpack_require__) { // fallback for non-array-like ES3 and non-enumerable old V8 strings var cof = __webpack_require__(20); // eslint-disable-next-line no-prototype-builtins module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) { return cof(it) == 'String' ? it.split('') : Object(it); }; /***/ }), /* 22 */ /***/ (function(module, exports) { module.exports = true; /***/ }), /* 23 */ /***/ (function(module, exports, __webpack_require__) { var core = __webpack_require__(1); var global = __webpack_require__(2); var SHARED = '__core-js_shared__'; var store = global[SHARED] || (global[SHARED] = {}); (module.exports = function (key, value) { return store[key] || (store[key] = value !== undefined ? value : {}); })('versions', []).push({ version: core.version, mode: __webpack_require__(22) ? 'pure' : 'global', copyright: '© 2018 Denis Pushkarev (zloirock.ru)' }); /***/ }), /* 24 */ /***/ (function(module, exports) { var id = 0; var px = Math.random(); module.exports = function (key) { return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36)); }; /***/ }), /* 25 */ /***/ (function(module, exports) { // IE 8- don't enum bug keys module.exports = ( 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf' ).split(','); /***/ }), /* 26 */ /***/ (function(module, exports, __webpack_require__) { module.exports = !__webpack_require__(3) && !__webpack_require__(5)(function () { return Object.defineProperty(__webpack_require__(15)('div'), 'a', { get: function () { return 7; } }).a != 7; }); /***/ }), /* 27 */ /***/ (function(module, exports, __webpack_require__) { // 7.1.1 ToPrimitive(input [, PreferredType]) var isObject = __webpack_require__(4); // instead of the ES6 spec version, we didn't implement @@toPrimitive case // and the second argument - flag - preferred type is a string module.exports = function (it, S) { if (!isObject(it)) return it; var fn, val; if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val; if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val; if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val; throw TypeError("Can't convert object to primitive value"); }; /***/ }), /* 28 */ /***/ (function(module, exports, __webpack_require__) { // 7.1.13 ToObject(argument) var defined = __webpack_require__(11); module.exports = function (it) { return Object(defined(it)); }; /***/ }), /* 29 */ /***/ (function(module, exports, __webpack_require__) { // 19.1.2.14 / 15.2.3.14 Object.keys(O) var $keys = __webpack_require__(32); var enumBugKeys = __webpack_require__(25); module.exports = Object.keys || function keys(O) { return $keys(O, enumBugKeys); }; /***/ }), /* 30 */ /***/ (function(module, exports, __webpack_require__) { // 7.1.15 ToLength var toInteger = __webpack_require__(13); var min = Math.min; module.exports = function (it) { return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991 }; /***/ }), /* 31 */, /* 32 */ /***/ (function(module, exports, __webpack_require__) { var has = __webpack_require__(6); var toIObject = __webpack_require__(12); var arrayIndexOf = __webpack_require__(33)(false); var IE_PROTO = __webpack_require__(17)('IE_PROTO'); module.exports = function (object, names) { var O = toIObject(object); var i = 0; var result = []; var key; for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key); // Don't enum bug & hidden keys while (names.length > i) if (has(O, key = names[i++])) { ~arrayIndexOf(result, key) || result.push(key); } return result; }; /***/ }), /* 33 */ /***/ (function(module, exports, __webpack_require__) { // false -> Array#indexOf // true -> Array#includes var toIObject = __webpack_require__(12); var toLength = __webpack_require__(30); var toAbsoluteIndex = __webpack_require__(34); module.exports = function (IS_INCLUDES) { return function ($this, el, fromIndex) { var O = toIObject($this); var length = toLength(O.length); var index = toAbsoluteIndex(fromIndex, length); var value; // Array#includes uses SameValueZero equality algorithm // eslint-disable-next-line no-self-compare if (IS_INCLUDES && el != el) while (length > index) { value = O[index++]; // eslint-disable-next-line no-self-compare if (value != value) return true; // Array#indexOf ignores holes, Array#includes - not } else for (;length > index; index++) if (IS_INCLUDES || index in O) { if (O[index] === el) return IS_INCLUDES || index || 0; } return !IS_INCLUDES && -1; }; }; /***/ }), /* 34 */ /***/ (function(module, exports, __webpack_require__) { var toInteger = __webpack_require__(13); var max = Math.max; var min = Math.min; module.exports = function (index, length) { index = toInteger(index); return index < 0 ? max(index + length, 0) : min(index, length); }; /***/ }), /* 35 */, /* 36 */, /* 37 */ /***/ (function(module, exports) { exports.f = {}.propertyIsEnumerable; /***/ }), /* 38 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_json_stringify__ = __webpack_require__(46); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_json_stringify___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_json_stringify__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__pickerItem__ = __webpack_require__(62); // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // /* harmony default export */ __webpack_exports__["a"] = ({ name: 'sq-picker', components: { PickerItem: __WEBPACK_IMPORTED_MODULE_1__pickerItem__["a" /* default */] }, props: { formatValueFun: Function, format: Array, cancelButtonText: { type: String, default: '取消' }, confirmButtonText: { type: String, default: '确认' }, loading: { type: Boolean, default: false }, title: { type: String, default: '' }, showToolbar: { type: Boolean, default: false }, columns: { type: Array, default: function _default() { return []; } }, valueKey: String, hideEmptyColumn: { type: Boolean, default: false }, rowHeight: { type: Number, default: 48 }, rowCount: { type: Number, default: 5 } }, computed: { bodyStyles: function bodyStyles() { return { height: this.rowHeight * this.rowCount + 'px' }; }, bodyMaskStyles: function bodyMaskStyles() { return { height: this.rowHeight * parseInt(this.rowCount / 2) + 'px' }; } }, data: function data() { return { children: [] }; }, watch: { columns: function columns(val) { this.setColumns(val); } }, methods: { formatColumns: function formatColumns(columns) { if (columns.length && Array.isArray(columns[0])) { return columns; } else if (Object.prototype.toString.call(columns[0]) === '[object Object]' && columns[0].values) { return columns.map(function (column) { return column.values; }); } else { return [columns]; } }, $_cancel: function $_cancel() { this.$emit('cancel'); }, $_confirm: function $_confirm() { this.$emit('confirm', this.getValues()); }, $_onChange: function $_onChange(valueInColumnIndex, columnInColumnsIndex) { this.$emit('on-change', this.getValues(), this, { valueInColumnIndex: valueInColumnIndex, columnInColumnsIndex: columnInColumnsIndex }); }, getValues: function getValues() { return this.children.map(function (child) { return child.getValue(); }); }, setValues: function setValues(values) { var _this = this; values.forEach(function (value, index) { _this.children[index] && _this.children[index].setValue(value); }); }, setColumnValues: function setColumnValues(index, dataList) { var column = this.children[index]; if (column && __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_json_stringify___default()(column.list) !== __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_json_stringify___default()(dataList)) { column.list = dataList; column.setIndex(0); } }, setColumns: function setColumns(val) { var _this2 = this; var columns = this.formatColumns(val || this.columns); columns.forEach(function (dataList, index) { _this2.setColumnValues(index, dataList); }); } } }); /***/ }), /* 39 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // // // // // // // // // // // // // // // // // // /* harmony default export */ __webpack_exports__["a"] = ({ name: 'sq-picker-item', props: { dataList: { type: Array, default: function _default() { return []; } }, valueKey: { type: String }, format: { type: String }, formatValueFun: { type: Function }, defaultIndex: { type: Number, default: 0 }, hideEmptyColumn: { type: Boolean, default: false }, // 每行列的高度 rowHeight: Number, // 每列显示数量 rowCount: Number }, computed: { itemStyles: function itemStyles() { return { transform: 'translate3d(0px, ' + this.translateY + 'px, 0px)', transition: 'transform ' + this.transitionTime + 's' }; }, rowStyles: function rowStyles() { return { height: this.rowHeight + 'px', lineHeight: this.rowHeight + 'px' }; }, isShowPickerItem: function isShowPickerItem() { return { display: this.hideEmptyColumn && !this.list.length ? 'none' : '' }; }, // 列表初始偏移量 offset: function offset() { return parseInt(this.rowCount / 2); } }, data: function data() { return { list: this.dataList, temp: null, // 容器 translateY: parseInt(this.rowCount / 2) * this.rowHeight, transitionTime: 0, startY: 0, // 起始值 moveY: 0, // 移动的距离 saveY: parseInt(this.rowCount / 2) * this.rowHeight, // 缓存偏移量 currentIndex: this.defaultIndex, // 选中的下标 startTime: undefined, points: [] }; }, methods: { init: function init() { this.temp.addEventListener('touchstart', this.onTouchStart, false); this.temp.addEventListener('touchmove', this.onTouchMove, false); this.temp.addEventListener('touchend', this.onTouchEnd, false); this.temp.addEventListener('touchcancel', this.onTouchEnd, false); }, onTouchStart: function onTouchStart(event) { if (this.loading) return; this.startY = event.changedTouches[0].pageY; this.moveY = 0; this.startTime = +new Date(); event.preventDefault(); }, onTouchMove: function onTouchMove(event) { if (this.loading) return; if (this.transitionTime) { this.transitionTime = 0; } this.moveY = event.changedTouches[0].pageY - this.startY; this.translateY = this.saveY + this.moveY; this.startTime = +new Date(); this.points.push({ time: this.startTime, y: event.changedTouches[0].pageY }); if (this.points.length > 40) { this.points.shift(); } event.preventDefault(); }, onTouchEnd: function onTouchEnd(event) { if (!this.startY || this.loading) return; var endY = event.changedTouches[0].pageY; var endTime = +new Date(); // 如果最后次move时间与end时间超过100ms,不添加惯性滑动 if (endTime - this.startTime > 100) { this.onStop(); } else { if (Math.abs(endY - this.startY) > 10) { var endPos = this.points.length - 1; var startPos = endPos; for (var i = endPos; i > 0 && this.startTime - this.points[i].time < 100; i--) { startPos = i; } if (startPos !== endPos) { var ep = this.points[endPos]; var sp = this.points[startPos]; var t = ep.time - sp.time; var s = ep.y - sp.y; var v = s / t; // 出手时的速度 var diff = v * 150; // 滑行 150ms,这里直接影响“灵敏度” this.onStop(diff); } else { this.onStop(); } } else { this.onStop(); } } event.preventDefault(); }, onStop: function onStop() { var diff = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0; // 缓存上次translateY的值 this.saveY = this.translateY; var offset = this.offset, rowHeight = this.rowHeight, list = this.list, currentIndex = this.currentIndex; var _saveY = this.saveY; var count = list.length; // 获得list 下标 var _index = parseInt((offset * rowHeight - _saveY - diff) / rowHeight); if (_index < 0) { _index = 0; } else if (_index >= count) { _index = count - 1; } // 当前位置与 标准情况下 下标距离值 进行对比, 不相同情况下,进行手动设置位置 if (_saveY !== (offset - currentIndex) * rowHeight) { this.transitionTime = 0.3; // 向下拉 超过显示情况下 if (_saveY > 0 && _saveY > offset * rowHeight) { this.setIndex(0, true); // 向上拉 超过显示情况下 } else if (_saveY < 0 && _saveY < (offset - count + 1) * rowHeight) { this.setIndex(count - 1, true); } else { this.setIndex(_index, true); } } }, setIndex: function setIndex(index, userAction) { this.saveY = this.translateY = (this.offset - index) * this.rowHeight; if (index !== this.currentIndex) { this.currentIndex = index; userAction && this.$emit('on-change', index, this.$parent.children.indexOf(this)); } }, getValue: function getValue() { return this.list[this.currentIndex]; }, setValue: function setValue(value) { var _this = this; var list = this.list; var selectIndex = 0; if (Object.prototype.toString.call(value) === '[object Object]' && this.valueKey) { list.forEach(function (item, i) { if (item[_this.valueKey] === value[_this.valueKey]) { selectIndex = i; } }); } else { selectIndex = list.indexOf(value) > -1 ? list.indexOf(value) : 0; } this.setIndex(selectIndex); } }, created: function created() { this.$parent.children && this.$parent.children.push(this); }, mounted: function mounted() { var _this2 = this; this.$nextTick(function () { _this2.temp = _this2.$el; _this2.init(); }); }, beforeDestroy: function beforeDestroy() { this.temp.removeEventListener('touchstart', this.onTouchStart); this.temp.removeEventListener('touchmove', this.onTouchMove); this.temp.removeEventListener('touchend', this.onTouchEnd); this.temp.removeEventListener('touchcancel', this.onTouchEnd); }, destroyed: function destroyed() { this.$parent.children && this.$parent.children.splice(this.$parent.children.indexOf(this), 1); } }); /***/ }), /* 40 */, /* 41 */, /* 42 */, /* 43 */, /* 44 */, /* 45 */, /* 46 */ /***/ (function(module, exports, __webpack_require__) { module.exports = { "default": __webpack_require__(47), __esModule: true }; /***/ }), /* 47 */ /***/ (function(module, exports, __webpack_require__) { var core = __webpack_require__(1); var $JSON = core.JSON || (core.JSON = { stringify: JSON.stringify }); module.exports = function stringify(it) { // eslint-disable-line no-unused-vars return $JSON.stringify.apply($JSON, arguments); }; /***/ }), /* 48 */, /* 49 */, /* 50 */, /* 51 */, /* 52 */, /* 53 */, /* 54 */, /* 55 */, /* 56 */, /* 57 */, /* 58 */, /* 59 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__src_index_vue__ = __webpack_require__(60); __WEBPACK_IMPORTED_MODULE_0__src_index_vue__["a" /* default */].install = function (Vue) { Vue.component(__WEBPACK_IMPORTED_MODULE_0__src_index_vue__["a" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__src_index_vue__["a" /* default */]); }; /* harmony default export */ __webpack_exports__["default"] = (__WEBPACK_IMPORTED_MODULE_0__src_index_vue__["a" /* default */]); /***/ }), /* 60 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_index_vue__ = __webpack_require__(38); /* unused harmony namespace reexport */ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_3d6e5dc8_hasScoped_false_transformToRequire_video_src_poster_source_src_img_src_image_xlink_href_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_index_vue__ = __webpack_require__(65); function injectStyle (ssrContext) { __webpack_require__(61) } var normalizeComponent = __webpack_require__(0) /* 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_node_modules_vue_loader_lib_selector_type_script_index_0_index_vue__["a" /* default */], __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_3d6e5dc8_hasScoped_false_transformToRequire_video_src_poster_source_src_img_src_image_xlink_href_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_index_vue__["a" /* default */], __vue_template_functional__, __vue_styles__, __vue_scopeId__, __vue_module_identifier__ ) /* harmony default export */ __webpack_exports__["a"] = (Component.exports); /***/ }), /* 61 */ /***/ (function(module, exports) { // removed by extract-text-webpack-plugin /***/ }), /* 62 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_pickerItem_vue__ = __webpack_require__(39); /* unused harmony namespace reexport */ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_5a050041_hasScoped_false_transformToRequire_video_src_poster_source_src_img_src_image_xlink_href_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_pickerItem_vue__ = __webpack_require__(64); function injectStyle (ssrContext) { __webpack_require__(63) } var normalizeComponent = __webpack_require__(0) /* 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_node_modules_vue_loader_lib_selector_type_script_index_0_pickerItem_vue__["a" /* default */], __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_5a050041_hasScoped_false_transformToRequire_video_src_poster_source_src_img_src_image_xlink_href_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_pickerItem_vue__["a" /* default */], __vue_template_functional__, __vue_styles__, __vue_scopeId__, __vue_module_identifier__ ) /* harmony default export */ __webpack_exports__["a"] = (Component.exports); /***/ }), /* 63 */ /***/ (function(module, exports) { // removed by extract-text-webpack-plugin /***/ }), /* 64 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"sq-picker-item",style:(_vm.isShowPickerItem)},[_c('ul',{staticClass:"sq-picker-item-wrapper",style:(_vm.itemStyles)},_vm._l((_vm.list),function(item,index){return _c('li',{key:index,staticClass:"sq-picker-item-row",style:(_vm.rowStyles),on:{"click":function($event){_vm.setIndex(index, true)}}},[_vm._v("\n "+_vm._s(_vm.valueKey ? (_vm.formatValueFun ? _vm.formatValueFun(item[_vm.valueKey]) : item[_vm.valueKey]) : (_vm.formatValueFun ? _vm.formatValueFun(item) : item))+_vm._s(_vm.format)+"\n ")])}))])} var staticRenderFns = [] var esExports = { render: render, staticRenderFns: staticRenderFns } /* harmony default export */ __webpack_exports__["a"] = (esExports); /***/ }), /* 65 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"sq-picker"},[_c('div',{directives:[{name:"show",rawName:"v-show",value:(_vm.showToolbar),expression:"showToolbar"}],staticClass:"sq-picker-header sq-picker-bottom-line"},[_c('div',{on:{"click":_vm.$_cancel}},[_vm._v(_vm._s(_vm.cancelButtonText))]),_vm._v(" "),_c('div',[_vm._v(_vm._s(_vm.title))]),_vm._v(" "),_c('div',{on:{"click":_vm.$_confirm}},[_vm._v(_vm._s(_vm.confirmButtonText))])]),_vm._v(" "),_c('div',{staticClass:"sq-picker-body",on:{"touchmove":function($event){$event.preventDefault();}}},[_c('div',{staticClass:"sq-picker-body-mask top",style:(_vm.bodyMaskStyles)}),_vm._v(" "),_c('div',{staticClass:"sq-picker-body-mask bottom",style:(_vm.bodyMaskStyles)}),_vm._v(" "),_c('div',{staticClass:"sq-picker-body-wrapper",style:(_vm.bodyStyles)},_vm._l((_vm.formatColumns(_vm.columns)),function(item,index){return _c('picker-item',{key:index,attrs:{"data-list":item,"format":_vm.format && _vm.format.length ? _vm.format[index] : '',"format-value-fun":_vm.formatValueFun,"value-key":_vm.valueKey,"row-height":_vm.rowHeight,"row-count":_vm.rowCount,"hide-empty-column":_vm.hideEmptyColumn},on:{"on-change":_vm.$_onChange}})}))]),_vm._v(" "),_c('div',{directives:[{name:"show",rawName:"v-show",value:(_vm.loading),expression:"loading"}],staticClass:"sq-picker-loading-mask"},[_c('div',{staticClass:"sq-picker-loading-icon"})])])} var staticRenderFns = [] var esExports = { render: render, staticRenderFns: staticRenderFns } /* harmony default export */ __webpack_exports__["a"] = (esExports); /***/ }), /* 66 */, /* 67 */, /* 68 */, /* 69 */, /* 70 */, /* 71 */, /* 72 */, /* 73 */, /* 74 */ /***/ (function(module, exports, __webpack_require__) { module.exports = { "default": __webpack_require__(75), __esModule: true }; /***/ }), /* 75 */ /***/ (function(module, exports, __webpack_require__) { __webpack_require__(76); module.exports = __webpack_require__(1).Object.keys; /***/ }), /* 76 */ /***/ (function(module, exports, __webpack_require__) { // 19.1.2.14 Object.keys(O) var toObject = __webpack_require__(28); var $keys = __webpack_require__(29); __webpack_require__(77)('keys', function () { return function keys(it) { return $keys(toObject(it)); }; }); /***/ }), /* 77 */ /***/ (function(module, exports, __webpack_require__) { // most Object methods by ES6 should accept primitives var $export = __webpack_require__(14); var core = __webpack_require__(1); var fails = __webpack_require__(5); module.exports = function (KEY, exec) { var fn = (core.Object || {})[KEY] || Object[KEY]; var exp = {}; exp[KEY] = exec(fn); $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp); }; /***/ }), /* 78 */, /* 79 */, /* 80 */, /* 81 */, /* 82 */, /* 83 */, /* 84 */, /* 85 */, /* 86 */, /* 87 */, /* 88 */, /* 89 */, /* 90 */, /* 91 */, /* 92 */, /* 93 */, /* 94 */, /* 95 */, /* 96 */, /* 97 */, /* 98 */, /* 99 */, /* 100 */, /* 101 */, /* 102 */, /* 103 */, /* 104 */, /* 105 */, /* 106 */, /* 107 */, /* 108 */, /* 109 */, /* 110 */, /* 111 */, /* 112 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_keys__ = __webpack_require__(74); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_keys___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_keys__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_object_entries__ = __webpack_require__(167); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_object_entries___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_object_entries__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__picker__ = __webpack_require__(59); // // // // // // // // // // // // // // // // // // // /* harmony default export */ __webpack_exports__["a"] = ({ name: 'sq-area', components: { picker: __WEBPACK_IMPORTED_MODULE_2__picker__["default"] }, props: { value: {}, areaData: { type: Object, default: function _default() { return {}; } }, cancelButtonText: { type: String, default: '取消' }, confirmButtonText: { type: String, default: '确认' }, loading: { type: Boolean, default: false }, title: String, rowHeight: { type: Number, default: 34 }, rowCount: { type: Number, default: 7 } }, data: function data() { return { code: this.value, columns: [{ values: [] }, { values: [] }, { values: [] }] }; }, watch: { value: function value(val) { this.code = val; this.setValues(); }, areaData: { handler: function handler() { this.setValues(); }, deep: true } }, methods: { format: function format() { var obj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; return __WEBPACK_IMPORTED_MODULE_1_babel_runtime_core_js_object_entries___default()(obj).map(function (item) { return { code: item[0], name: item[1] }; }); }, onConfirm: function onConfirm(value) { this.$emit('on-confirm', value.filter(function (i) { return !!i; })); }, onChange: function onChange(value, picker, _ref) { var _this = this; var columnInColumnsIndex = _ref.columnInColumnsIndex; var areaData = this.areaData, format = this.format; if (columnInColumnsIndex === 0) { var arr = format(areaData[value[columnInColumnsIndex].code]); picker.setColumnValues(++columnInColumnsIndex, arr); this.$nextTick(function () { var _arr = arr[0] ? format(areaData[arr[0].code]) : []; picker.setColumnValues(++columnInColumnsIndex, _arr.length > 0 ? _arr : []); }); } else if (columnInColumnsIndex === 1) { var _arr2 = format(areaData[value[columnInColumnsIndex].code]); picker.setColumnValues(++columnInColumnsIndex, _arr2); } this.$nextTick(function () { _this.$nextTick(function () { var result = picker.getValues().filter(function (i) { return !!i; }); // this.$emit('input', result[result.length - 1].code) _this.$emit('on-change', result); }); }); }, getValues: function getValues() { return this.$refs.pickerRef ? this.$refs.pickerRef.getValues().filter(function (i) { return !!i; }) : []; }, getTrueItem: function getTrueItem(obj, code) { var _obj = {}; obj.forEach(function (p) { if (p.code === code) { _obj = p; } }); return _obj; }, setValues: function setValues() { var areaData = this.areaData, format = this.format, getTrueItem = this.getTrueItem; var pickerRef = this.$refs.pickerRef; var defaultCode = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_keys___default()(areaData)[0] ? __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_keys___default()(areaData[__WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_keys___default()(areaData)[0]])[0] : ''; var code = this.code || defaultCode || ''; if (!code) {} var provKey = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_core_js_object_keys___default()(areaData)[0]; // '100000' var provObj = areaData[provKey]; // {'110000': '北京市'} var province = format(provObj); // [{code: '110000', name: '北京市'}] if (code.indexOf('00') === 2) { // 省 110000 var city = format(areaData[code]); var county = format(areaData[city[0].code]); pickerRef.setColumns([province, city, county]); this.$nextTick(function () { pickerRef.setValues([getTrueItem(province, code)]); }); } else if (code.indexOf('00') === 4) { // 市 110100 var provCode = code.slice(0, 2) + '0000'; var _city = format(areaData[provCode]); var _county = format(areaData[_city[0].code]); pickerRef.setColumns([province, _city, _county]); this.$nextTick(function () { pickerRef.setValues([getTrueItem(province, provCode), getTrueItem(_city, code)]); }); } else if (code.indexOf('00') === -1) { // 区 var _provCode = code.slice(0, 2) + '0000'; var cityCode = code.slice(0, 4) + '00'; var _city2 = format(areaData[_provCode]); var _county2 = format(areaData[cityCode]); if (_city2.length > 0) { pickerRef.setColumns([province, _city2, _county2]); if (_provCode === '110000' || _provCode === '120000' || _provCode === '310000' || _provCode === '500000') { this.$nextTick(function () { pickerRef.setValues([getTrueItem(province, _provCode), getTrueItem(_city2, code), getTrueItem(_county2, code)]); }); } else { this.$nextTick(function () { pickerRef.setValues([getTrueItem(province, _provCode), getTrueItem(_city2, cityCode), getTrueItem(_county2, code)]); }); } } else { pickerRef.setColumns([province, _county2, _city2]); this.$nextTick(function () { pickerRef.setValues([getTrueItem(province, _provCode), getTrueItem(_county2, code), getTrueItem(_city2, cityCode)]); }); } } } }, mounted: function mounted() { this.setValues(); } }); /***/ }), /* 113 */, /* 114 */, /* 115 */, /* 116 */, /* 117 */, /* 118 */, /* 119 */, /* 120 */, /* 121 */, /* 122 */, /* 123 */, /* 124 */, /* 125 */, /* 126 */, /* 127 */, /* 128 */, /* 129 */, /* 130 */, /* 131 */, /* 132 */, /* 133 */, /* 134 */, /* 135 */, /* 136 */, /* 137 */, /* 138 */, /* 139 */, /* 140 */, /* 141 */, /* 142 */, /* 143 */, /* 144 */, /* 145 */, /* 146 */, /* 147 */, /* 148 */, /* 149 */, /* 150 */, /* 151 */, /* 152 */, /* 153 */, /* 154 */, /* 155 */, /* 156 */, /* 157 */, /* 158 */, /* 159 */, /* 160 */, /* 161 */, /* 162 */, /* 163 */, /* 164 */, /* 165 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__src_index_vue__ = __webpack_require__(166); __WEBPACK_IMPORTED_MODULE_0__src_index_vue__["a" /* default */].install = function (Vue) { Vue.component(__WEBPACK_IMPORTED_MODULE_0__src_index_vue__["a" /* default */].name, __WEBPACK_IMPORTED_MODULE_0__src_index_vue__["a" /* default */]); }; /* harmony default export */ __webpack_exports__["default"] = (__WEBPACK_IMPORTED_MODULE_0__src_index_vue__["a" /* default */]); /***/ }), /* 166 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_index_vue__ = __webpack_require__(112); /* unused harmony namespace reexport */ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_45a9376c_hasScoped_false_transformToRequire_video_src_poster_source_src_img_src_image_xlink_href_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_index_vue__ = __webpack_require__(171); var normalizeComponent = __webpack_require__(0) /* script */ /* template */ /* template functional */ var __vue_template_functional__ = false /* styles */ var __vue_styles__ = null /* scopeId */ var __vue_scopeId__ = null /* moduleIdentifier (server only) */ var __vue_module_identifier__ = null var Component = normalizeComponent( __WEBPACK_IMPORTED_MODULE_0__babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_index_vue__["a" /* default */], __WEBPACK_IMPORTED_MODULE_1__node_modules_vue_loader_lib_template_compiler_index_id_data_v_45a9376c_hasScoped_false_transformToRequire_video_src_poster_source_src_img_src_image_xlink_href_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_index_vue__["a" /* default */], __vue_template_functional__, __vue_styles__, __vue_scopeId__, __vue_module_identifier__ ) /* harmony default export */ __webpack_exports__["a"] = (Component.exports); /***/ }), /* 167 */ /***/ (function(module, exports, __webpack_require__) { module.exports = { "default": __webpack_require__(168), __esModule: true }; /***/ }), /* 168 */ /***/ (function(module, exports, __webpack_require__) { __webpack_require__(169); module.exports = __webpack_require__(1).Object.entries; /***/ }), /* 169 */ /***/ (function(module, exports, __webpack_require__) { // https://github.com/tc39/proposal-object-values-entries var $export = __webpack_require__(14); var $entries = __webpack_require__(170)(true); $export($export.S, 'Object', { entries: function entries(it) { return $entries(it); } }); /***/ }), /* 170 */ /***/ (function(module, exports, __webpack_require__) { var getKeys = __webpack_require__(29); var toIObject = __webpack_require__(12); var isEnum = __webpack_require__(37).f; module.exports = function (isEntries) { return function (it) { var O = toIObject(it); var keys = getKeys(O); var length = keys.length; var i = 0; var result = []; var key; while (length > i) if (isEnum.call(O, key = keys[i++])) { result.push(isEntries ? [key, O[key]] : O[key]); } return result; }; }; /***/ }), /* 171 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('picker',{ref:"pickerRef",attrs:{"show-toolbar":"","value-key":"name","columns":_vm.columns,"title":_vm.title,"cancel-button-text":_vm.cancelButtonText,"confirm-button-text":_vm.confirmButtonText,"loading":_vm.loading,"hideEmptyColumn":"","row-height":_vm.rowHeight,"row-count":_vm.rowCount},on:{"confirm":_vm.onConfirm,"cancel":function($event){_vm.$emit('on-cancel')},"on-change":_vm.onChange}})} var staticRenderFns = [] var esExports = { render: render, staticRenderFns: staticRenderFns } /* harmony default export */ __webpack_exports__["a"] = (esExports); /***/ }) /******/ ]);