UNPKG

vimo-dt

Version:

A Vue2.x UI Project For Mobile & HyBrid

125 lines (113 loc) 2.88 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; var hasTouch = 'ontouchstart' in window; var DEFAULT = { startX: 0, startY: 0, scrollX: false, scrollY: true, freeScroll: false, directionLockThreshold: 5, eventPassthrough: '', click: false, tap: false, bounce: true, bounceTime: 700, momentum: true, momentumLimitTime: 300, momentumLimitDistance: 15, swipeTime: 2500, swipeBounceTime: 500, deceleration: 0.001, flickLimitTime: 200, flickLimitDistance: 100, resizePolling: 60, probeType: 0, preventDefault: true, preventDefaultException: { tagName: /^(INPUT|TEXTAREA|BUTTON|SELECT)$/ }, HWCompositing: true, useTransition: true, useTransform: true, bindToWrapper: false, disableMouse: hasTouch, disableTouch: !hasTouch, wheel: false, snap: false, scrollbar: false, pullDownRefresh: false, pullUpLoad: false }; function defaultDataToProps(defaults) { var props = {}; var _loop = function _loop(key) { var value = defaults[key]; var valueType = typeof value === 'undefined' ? 'undefined' : _typeof(value); var tmp = null; switch (valueType) { case 'number': tmp = { type: [Number, String], default: value }; break; case 'string': tmp = { type: String, default: value }; break; case 'boolean': tmp = { type: [Boolean, Number], default: value }; break; case 'object': if (value) { tmp = { type: Object, default: function _default() { return JSON.parse(JSON.stringify(value)); } }; } else { tmp = { type: [Object, Number, String, Function, Array], default: function _default() { return null; } }; } break; case 'function': tmp = { type: Function, default: function _default() { return value; } }; break; case 'undefined': tmp = [Object]; break; default: tmp = [Object]; console.debug('这个属性未找到::props.js::defaultDataToProps()'); console.debug('key: ' + key); console.debug('value: ' + value); console.debug('valueType: ' + valueType); break; } props[key] = tmp; }; for (var key in defaults) { _loop(key); } return props; } exports.default = defaultDataToProps(DEFAULT);